📄 rfc1795.txt
字号:
ICANREACH_ex I Can Reach Station-explorer 0x04 SSPex ICANREACH_cs I Can Reach Station-circuit start 0x04 REACH_ACK Reach Acknowledgment 0x05 DGRMFRAME Datagram Frame 0x06 (note 1) XIDFRAME XID Frame 0x07 CONTACT Contact Remote Station 0x08 CONTACTED Remote Station Contacted 0x09 RESTART_DL Restart Data Link 0x10 DL_RESTARTED Data Link Restarted 0x11 ENTER_BUSY Enter Busy 0x0C (note 2) EXIT_BUSY Exit Busy 0x0D (note 2) INFOFRAME Information (I) Frame 0x0A HALT_DL Halt Data Link 0x0E DL_HALTED Data Link Halted 0x0F NETBIOS_NQ_ex NETBIOS Name Query-explorer 0x12 SSPex NETBIOS_NQ_cs NETBIOS Name Query-circuit setup 0x12 (note 3) NETBIOS_NR_ex NETBIOS Name Recognized-explorer 0x13 SSPex NETBIOS_NR_cs NETBIOS Name Recog-circuit setup 0x13 (note 3) DATAFRAME Data Frame 0x14 (note 1) HALT_DL_NOACK Halt Data Link with no Ack 0x19 NETBIOS_ANQ NETBIOS Add Name Query 0x1A NETBIOS_ANR NETBIOS Add Name Response 0x1B KEEPALIVE Transport Keepalive Message 0x1D (note 4) CAP_EXCHANGE Capabilities Exchange 0x20 IFCM Independent Flow Control Message 0x21 TEST_CIRCUIT_REQ Test Circuit Request 0x7A TEST_CIRCUIT_RSP Test Circuit Response 0x7B Note 1: Both the DGRMFRAME and DATAFRAME messages are used to carry information received by the DLC entity within UI frames. The DGRMFRAME message is addressed according to a pair of Circuit IDs, while the DATAFRAME message is addressed according to a Data Link ID, being composed of a pair of MAC addresses and a pair of link SAP addresses. The latter is employed prior to the establishment of an end-to-end circuit when Circuit IDs have yet to be established or during circuit restart when Data Links are reset. Note 2: These messages are not used for the DLSw Standard but may be used by older DLSw implementations. They are listed here for informational purposes. These messages were added after publication of RFC 1434 and were deleted in this standard (adaptive pacing is now used instead).Wells & Bartky [Page 17]RFC 1795 Data Link Switching April 1995 Note 3: These messages are not normally issued by a Standard DLSw, which uses the NB_*_ex messages as shown in section 5.4. However if a Standard DLSw attempts to interoperate with older DLSw implementations, these messages correspond to the NETBIOS_NQ and NETBIOS_NR messages used in RFC1434 both to locate the resource and to setup a circuit. This document does not attempt to provide a complete specification of the use of these messages. Note 4: A KEEPALIVE message may be sent by a DLSw to a partner DLSw in order to verify the TCP connection (or other future SSP carrying protocol) is still functioning. If received by a DLSw, this message is discarded and ignored. Use of this message is optional. For the exchange of NetBIOS control messages, the entire DLC header is carried as part of the message unit. This includes the MAC header, with the routing information field padded to 18 bytes, and the LLC header. The following message types are affected: NETBIOS_NQ, NETBIOS_NR, NETBIOS_ANQ, NETBIOS_ANR, and DATAFRAME when being used by NetBIOS systems. The routing information in the DLC header is not used by the remote Data Link Switch upon receiving the above five messages. Any SSP message types not defined above if received by a DLSw are to be ignored (i.e., no error action is to be performed). A Data Link Switch should quietly drop any SSP message with a Message Type that is not recognized or not supported. Receipt of such a message should not cause the termination of the transport connection to the message sender.4. Circuit Priority At circuit start time, each circuit end point will provide priority information to its circuit partner. The initiator of the circuit will choose which circuit priority will be effective for the life of the circuit. If Priority is not implemented by the Data Link Switch, then "Unsupported" priority is used.4.1 Frame format Circuit priority will be valid in the CANUREACH_cs, ICANREACH_cs, and REACH_ACK frames only. The relevant header field is shown below. The Circuit Priority value is a byte value at offset 22 in an SSP Control Message.Wells & Bartky [Page 18]RFC 1795 Data Link Switching April 1995 The following describes the format of the Circuit Priority byte. 7 6 5 4 3 2 1 0 +-------------------+-----------+ | reserved | CP | +-------------------+-----------+ CP: Circuit Priority bits 000 - Unsupported (note 1) 001 - Low Priority 010 - Medium Priority 011 - High Priority 100 - Highest Priority 101 to 111 are reserved for future use Note 1: Unsupported means that the Data Link Switch that originates the circuit does not implement priority. Actions taken on Unsupported priority are vendor specific.4.2 Circuit Startup The sender of a CANUREACH_cs is responsible for setting the CP bits to reflect the priority it would like to use for the circuit being requested. The mechanism for choosing an appropriate value is implementation dependent. The sender of an ICANREACH_cs frame will set the CP bits to reflect the priority it would like to use for the circuit being requested, with the mechanism for choosing the appropriate value being implementation dependent. The receiver of the ICANREACH_cs will select from the priorities in the CANUREACH_cs and ICANREACH_cs frames, and will set the value in the CP field of the REACH_ACK frame that follows to the value to be used for this circuit. This priority will be used for the life of the circuit. A CANUREACH_cs or ICANREACH_cs with the circuit priority value set to Unsupported (CP=000) indicates that the sender does not support the circuit priority function.Wells & Bartky [Page 19]RFC 1795 Data Link Switching April 1995 Flow: DLSw A DLSw B CANUREACH_cs (CP=011) -----> Circuit initiator requests high Priority. <--------- ICANREACH_cs (CP=010) Circuit target requests medium priority. REACH_ACK (CP=010) --------> Circuit initiator sets the priority for this circuit to medium. The circuit initiator could choose either high or medium in this example.5. DLSw State Machine The following state tables describe the states for a single circuit through the Data Link Switch. State information is kept for each connection. The initial state for a connection is DISCONNECTED. The steady state is either CIRCUIT_ESTABLISHED or CONNECTED. In the former state, an end-to-end circuit has been established allowing the support of Type 1 LLC between the end systems. The latter state exists when an end-to-end connection has been established for the support of Type 2 LLC services between the end systems. For SNA, LLC type 2 connection establishment is via the use of IEEE 802.2 Test or XID frames. SNA devices send these frames to the null SAP in order to determine the source route information in support of bridging. Normally SNA devices use SAP 0x04, 0x08, or 0x0C (most SNA LLC2 devices that have a single PU per MAC address use a default of 0x04). Typically the SAP would be used to determine if the Test frames should be sent to the DLSw code in the router. If both bridging and DLSw are enabled, this allows the product to ensure that SNA frames are not both bridged and switched. Note that although typically SNA uses a DSAP and SSAP of 0x04, it allows for other SAPs to be configured and supports unequal SAPs. This allows multiple PUs to share connections between two given MAC addresses (each PU to PU session uses one LLC2 connection). For NetBIOS, LLC type 2 connection establishment is via the Name Query and Name Recognized frames. These frames are used for both address resolution and source route determination. NetBIOS devices use SAP 0xF0.Wells & Bartky [Page 20]RFC 1795 Data Link Switching April 19955.1 Data Link Switch States The Switch-to-Switch Protocol is formally defined through the state machines described in this chapter. The following table lists the thirteen possible states for the main circuit FSM. A separate state machine instance is employed for each end-to-end circuit that is maintained by the Data Link Switch. State Name Description ---------- ----------- CIRCUIT_ESTABLISHED The end-to-end circuit has been established. At this time LLC Type 1 services are available from end-to-end. CIRCUIT_PENDING The target DLSw is awaiting a REACH_ACK response to an ICANREACH_cs message. CIRCUIT_RESTART The DLSw that originated the reset is awaiting the restart of the data link and the DL_RESTARTED response to a RESTART_DL message. CIRCUIT_START The origin DLSw is awaiting a ICANREACH_cs in response to a CANUREACH_cs message. CONNECTED The end-to-end connection has been established thereby allowing LLC Type 2 services from end-to-end in addition to LLC Type 1 services. CONNECT_PENDING The origin DLSw is awaiting the CONTACTED response to a CONTACT message. CONTACT_PENDING The target DLSw is awaiting the DLC_CONTACTED confirmation to a DLC_CONTACT signal (i.e., DLC is waiting for a UA response to an SABME command). DISCONNECTED The initial state with no circuit or connection established, the DLSw is awaiting either a CANUREACH_cs, or an ICANREACH_cs. DISCONNECT_PENDING The DLSw that originated the disconnect is awaiting the DL_HALTEDWells & Bartky [Page 21]RFC 1795 Data Link Switching April 1995 response to a HALT_DL message. HALT_PENDING The remote DLSw is awaiting the DLC_DL_HALTED indication following the DLC_HALT_DL request (i.e., DLC is waiting for a UA response to a DISC command), due to receiving a HALT_DL message. HALT_PENDING_NOACK The remote DLSw is awaiting the DLC_DL_HALTED indication following the DLC_HALT_DL request (i.e., DLC is waiting for a UA response to a DISC command), due to receiving a HALT_DL_NOACK message. RESTART_PENDING The remote DLSw is awaiting the DLC_DL_HALTED indication following the DLC_HALT_DL request (i.e., DLC is waiting for a UA response to a DISC command), and the restart of the data link. RESOLVE_PENDING The target DLSw is awaiting the DLC_DL_STARTED indication following the DLC_START_DL request
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -