📄 rfc1434.txt
字号:
Dixon & Kushi [Page 21]RFC 1434 DLS: Switch-to-Switch Protocol March 1993 Event Name Description ---------- ----------- DLC_CONTACTED Contact Indication: DLC has received an SABME command and will send a UA response, or DLC has received a UA response as a result of sending an SABME command. DLC_DGRM Datagram Indication: DLC has received a UI frame. DLC_ERROR Error condition indicated by DLC: Such a condition occurs when a DISC command is received or when DLC experiences an unrecoverable error. DLC_INFO Information Indication: DLC has received an Information (I) frame. DLC_DL_HALTED Data Link Halted Indication: DLC has received a UA response to a DISC command. DLC_DL_STARTED Data Link Started Indication: DLC has received a Test response from the null SAP. DLC_RESET Reset Indication: DLC has received an SABME command during the time a connection is currently active and has responded with DM. DLC_RESOLVE_C Resolve Command Indication: DLC has received a Test command addressed to the null SAP, or an XID command addressed to the null SAP. DLC_XID XID Indication: DLC has received an XID command or response to a non-null SAP. Table 3. Local DLC Events Action Name Description ----------- ----------- DLC_CONTACT Contact Station Request: DLC will send a SABME command. DLC_DGRM Datagram Request: DLC will send a UI frame. DLC_ENTER_BUSY Enter Link Station Busy: DLC will send an RNR supervisory frame. DLC_EXIT_BUSY Exit Link Station Busy: DLC will send an RR supervisory frame. DLC_HALT_DL Halt Data Link Request: DLC will send a DISC command. DLC_INFO Information Request: DLC will send an I frame. DLC_RESOLVE_R Resolve Response Request: DLC will send a Test response or XID response from the null SAP. DLC_START_DL Start Data Link Request: DLC will send a Test command to the null SAP. DLC_XID XID Request: DLC will send an XID command or an XID response. Table 4. Local DLC ActionsDixon & Kushi [Page 22]RFC 1434 DLS: Switch-to-Switch Protocol March 1993 The Data Link Switch may be described by a state transition table consisting of eleven states. Each of these states is described below in terms of the events, actions, and next state for each transition. If a particular event is not listed for a given state, no action and no state transition should occur for that event. Any significant comments concerning the transitions within a given state are given immediately following the table representing the state. A separate state machine is maintained by the Data Link Switch for each end-to-end circuit. The number of circuits that may be supported by each Data Link Switch is a local implementation option.4.2.2.1 DISCONNECTED State Event Action(s) Next State ----- --------- ---------- Receive CANUREACH DLC_START_DL RESOLVE_PENDING Receive ICANREACH Send REACH_ACK, CIRCUIT_ESTABLISHED DLC_RESOLVE_R (See note 1) Receive DATAFRAME DLC_DGRM Receive NETBIOS_NQ DLC_DGRM RESOLVE_PENDING Receive NETBIOS_NR Send REACH_ACK, CIRCUIT_ESTABLISHED DLC_DGRM (See note 2) DLC_RESOLVE_C Send CANUREACH DLC_DGRM If NB_Name_Query: Send NETBIOS_NQ, Else: Send DATAFRAME It is assumed that each Data Link Switch will build a set of topology tables giving the identity of each Data Link Switch that can reach a specific MAC address or a specific NetBIOS name. This table can be built based upon the origin address information received within the CANUREACH message or NETBIOS_NQ message and the target address information within the ICANREACH message or NETBIOS_NR message. As a consequence, the amount of search traffic can be kept to a minimum. Upon receipt of a Test command or XID command to the null SAP (i.e., DLC_RESOLVE_C signal from DLC), the Data Link Switch will check the topology table prior to sending the CANUREACH message. If the target MAC address is in the table, the CANUREACH message will be sent to only those Data Link Switches that are known to be able to reach the given MAC address. If the MAC address is not in the table, the CANUREACH message will be sent to all known Data Link Switches. Since the destination link SAP (DSAP) value is null, the Target Link SAP field in the CANUREACH message header is set equal to the OriginDixon & Kushi [Page 23]RFC 1434 DLS: Switch-to-Switch Protocol March 1993 Link SAP value. Upon receipt of a NB_Name_Query the Data Link Switch will check the topology table prior to sending the NETBIOS_NQ message. If the target NetBIOS name is in the table, the NETBIOS_NQ message will be sent to only those Data Link Switches that are known to be able to reach the given NetBIOS name. If the NetBIOS name is not in the table, the NETBIOS_NQ message will be sent to all known Data Link Switches. For SNA, the DISCONNECTED state is exited upon receipt of a CANUREACH message by a prospective target Data Link Switch, or upon receipt of an ICANREACH message by the origin Data Link Switch. In the former case, the Data Link Switch will issue a Test command to the target station (i.e., DLC_START_DL signal is presented to DLC). In the later case, a Test response is sent to the origin station (i.e., DLC_RESOLVE_R will be issued) and a REACH_ACK message will be returned to the target Data Link Switch. Note 1- The IBM 6611 will not send a Test response, but will send a Test command to the station that originated the resolve procedure (i.e., a DLC_START_DL will be issued) in order to start the data link. For NetBIOS, the DISCONNECTED state is exited upon the receipt of a NETBIOS_NQ message by the prospective target Data Link Switch, or upon the receipt of a NETBIOS_NR message by the origin Data Link Switch. In the former case, the Data Link Switch will send a NB_Name_Query frame. In the later case, the Data Link Switch will send a NB_Name_Recognized frame to the origin station and a REACH_ACK message will be returned to the target Data Link Switch. Note 2- The IBM 6611 will also send a Test command (i.e., a DLC_START_DL will be issued) to the station that originated the name resolution in order to start the data link.4.2.2.2 RESOLVE_PENDING State Event Action(s) Next State ----- --------- ---------- Receive DATAFRAME DLC_DGRM DLC_DL_STARTED Send ICANREACH CIRCUIT_PENDING DLC_ERROR DISCONNECTED DLC_DGRM If NB_Name_Recognized: If Send NETBIOS_NR NB_Name_Recognized: (See note), CIRCUIT_PENDING Else: Send DATAFRAMEDixon & Kushi [Page 24]RFC 1434 DLS: Switch-to-Switch Protocol March 1993 The RESOLVE_PENDING state is entered upon receipt of a CANUREACH message or a NETBIOS_NQ message by the target DLS. In the former case, a data link is started, causing a Test command to be sent by the DLC. In the later case, a NB_Name_Query frame is sent. This frame is directed to a group MAC address. Any CANUREACH messages received in the RESOLVE_PENDING state will be responded to if a DLC_DL_STARTED signal is received. The Data Link Switch may also update its topology information based upon the origin MAC address information in each CANUREACH message. Upon the receipt of a DLC_DL_STARTED signal in the RESOLVE_PENDING state, the Data Link Switch may update its topology table base upon the remote MAC address information. The ICANREACH message should be returned to all Data Link Switches that had sent a CANUREACH message. In a similar fashion, the Data Link Switch may update its topology table upon the receipt of a NB_Name_Recognized frame and a NETBIOS_NR message will be returned to all Data Link Switches that have sent a NETBIOS_NQ message. The RESOLVE_PENDING state is exited once the data link has been started (i.e., a DLC_DL_STARTED signal is received as a result of a Test response received by the DLC) or a NB_Name_Recognized frame is received (i.e., a DLC_DGRM signal is received). The target Data Link Switch will then enter the CIRCUIT_PENDING state. Note: The IBM 6611 will also send a Test command in order to start the data link to the station that responded to the Name Query frame (i.e., a DLC_START_DL will be issued).4.2.2.3 CIRCUIT_PENDING State Event Action(s) Next State ----- --------- ---------- Receive CONTACT DLC_CONTACT CONTACT_PENDING Receive HALT_DL DLC_HALT_DL HALT_PENDING Receive REACH_ACK If Connected: If Connected: Send CONTACT CONNECT_PENDING, else: CIRCUIT_ESTABLISHED Receive XIDFRAME DLC_XID Receive DGRMFRAME DLC_DGRM Receive DATAFRAME DLC_DGRM DLC_CONTACTED DLC_ENTER_BUSY DLC_ERROR Send HALT_DL DISCONNECT_PENDING DLC_XID Send XIDFRAME DLC_DGRM Send DGRMFRAMEDixon & Kushi [Page 25]RFC 1434 DLS: Switch-to-Switch Protocol March 1993 The CIRCUIT_PENDING state is entered by the target Data Link Switch following the sending of an ICANREACH message or the sending of a NETBIOS_NR message. In this state it is awaiting the reception of a REACH_ACK message from the origin Data Link Switch. If a connection does not exist with the target station (i.e., the normal case), the Data Link Switch will enter the CIRCUIT_ESTABLISHED state. If the target Data Link Switch happens to receive a SABME command from the target station while in the CIRCUIT_PENDING state (i.e., a DLC_CONTACTED signal received from the DLC), the reception of the REACH_ACK message will cause the Data Link Switch to enter the CONNECT_PENDING state and to send a CONTACT message to the other Data Link Switch. Thus the target Data Link Switch has assumed the role of the origin Data Link Switch.4.2.2.4 CONNECT_PENDING State Event Action(s) Next State ----- --------- ---------- Receive CONTACTED DLC_EXIT_BUSY CONNECTED Receive HALT_DL DLC_HALT_DL HALT_PENDING Receive DGRMFRAME DLC_DGRM Receive DATAFRAME DLC_DGRM DLC_RESET Send RESTART_DL (See note) CIRCUIT_RESTART DLC_ERROR Send HALT_DL DISCONNECT_PENDING DLC_DGRM Send DGRMFRAME The CONNECT_PENDING state is entered by the origin Data Link Switch when a DLC_CONTACTED signal has been received from the DLC (i.e., a SABME command has been received). A CONTACT message is then issued. The state is exited upon the receipt of a CONTACTED message from the target Data Link Switch. If a DLC_RESET signal is received, the local data link is restarted and a RESTART_DL message is sent to the remote DLS. Note: The IBM 6611 will also send a Test command in order to
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -