|
|
1.1 root 1: /* Copyright (c) University of British Columbia, 1984 */
2:
3: /*
4: *
5: * X.25 HDLC DATA LINK LEVEL:
6: *
7: *
8: * This module implements the Link Level of the Open Systems Interconnect
9: * Model. The implementation is based on the ISO High-Level Data Link
10: * Control (HDLC). These procedures subscribe to the principles of the
11: * ISO-Class of Procedures for point-to-point. These procedures implement
12: * two-way asynchronous balanced mode (LAPB) as recommented by the CCITT.
13: *
14: * The HDLC protocol layer interface consists of the following procedures:
15: * Hd_init (pr_init)
16: * Hd_ouput (pr_output)
17: * Hd_input (pr_input)
18: * Hd_timer (pr_slowtimo)
19: *
20: * Note: Supervisory commands RR, RNR and REJ are not transmitted by this
21: * station.
22: *
23: * This station never enters a busy (RNR) condition.
24: *
25: * The "Generate_rr" variable can be set to FALSE. This means that
26: * we NEVER send an RR. This works just fine if the network level
27: * is X.25 packet protocol -- which it is.
28: *
29: * Currently, this is only a DTE implementation.
30: *
31: * Think about:
32: * If the remote is busy, no iframes are sent. The remote sends a RR
33: * to clear this condition. However, this RR may be damaged, causing
34: * a possible deadlock. A solution is to poll with iframe (P(S)==P(R)
35: * of RNR) indefinitly.
36: *
37: *
38: * Date: February 1984
39: *
40: * Author: Gerald W. Neufeld
41: *
42: * Installation: Department of Computer Science
43: * University of British Columbia
44: * Vancouver, BC, CANADA.
45: *
46: * History:
47: *
48: *
49: */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.