📄 rfc1795.txt
字号:
3.2 Address Parameters A data link is defined as a logical association between the two end stations using Data Link Switching. It is identified by a Data Link ID (14 bytes) consisting of the pair of attachment addresses associated with each end system. Each attachment address is represented by the concatenation of the MAC address (6 bytes) and the LLC address (1 byte). Each attachment address is classified as either "Target" in the context of the Destination MAC/SAP addresses of an explorer frame sent in the first frame used to establish aWells & Bartky [Page 11]RFC 1795 Data Link Switching April 1995 circuit, or "Origin" in the context of the Source MAC/SAP addresses. All MAC addresses are expressed in non-canonical (Token-Ring) format. DATA LINK ID (14 Bytes @ Control message offset 24 decimal) +-----------------------------+-----------------------------+ | Target MAC Address | +- - - - - - - - - - - - - - -+- - - - - - - - - - - - - - -+ | | +- - - - - - - - - - - - - - -+- - - - - - - - - - - - - - -+ | | +-----------------------------+-----------------------------+ | Origin MAC Address | +- - - - - - - - - - - - - - -+- - - - - - - - - - - - - - -+ | | +- - - - - - - - - - - - - - -+- - - - - - - - - - - - - - -+ | | +-----------------------------+-----------------------------+ | Origin Link SAP | Target Link SAP | +-----------------------------+-----------------------------+ An end-to-end circuit is identified by a pair of Circuit ID's. A Circuit ID is a 64 bit number that identifies the DLC circuit within a single DLSw. It consists of a DLC Port ID (4 bytes), and a Data Link Correlator (4 bytes). The Circuit ID must be unique in a single DLSw and is assigned locally. The pair of Circuit ID's along with the Data Link IDs, uniquely identify a single end-to-end circuit. Each DLSw must keep a table of these Circuit ID pairs, one for the local end of the circuit and the other for the remote end of the circuit. In order to identify which Data Link Switch originated the establishment of a circuit, the terms, "Origin" DLSw and "Target" DLSw, will be employed in this document. CIRCUIT ID (8 Bytes) +-----------------------------+-----------------------------+ | DLC Port ID | +- - - - - - - - - - - - - - -+- - - - - - - - - - - - - - -+ | | +-----------------------------+-----------------------------+ | Data Link Correlator | +- - - - - - - - - - - - - - -+- - - - - - - - - - - - - - -+ | | +-----------------------------+-----------------------------+ The Origin Transport ID and the Target Transport ID fields in the message header are used to identify the individual TCP/IP port on a Data Link Switch. The values have only local significance. However, each Data Link Switch is required to reflect the values contained inWells & Bartky [Page 12]RFC 1795 Data Link Switching April 1995 these two fields, along with the associated values for DLC Port ID and the Data Link Correlator, when returning a message to the other Data Link Switch. The following figure shows the use of the addressing parameters during the establishment of an end-to-end connection. The CANUREACH, ICANREACH, and REACH_ACK message types all carry the Data Link ID, consisting of the MAC and Link SAP addresses associated with the two end stations. The CANUREACH and ICANREACH messages are qualified by the SSPex flag into CANUREACH_ex, ICANREACH_ex (explorer messages) and CANUREACH_cs, ICANREACH_cs (circuit start). The CANUREACH_ex is used to find a remote MAC and Link SAP address without establishing an SSP circuit. Upon receipt of a CANUREACH_cs message, the target DLSw starts a data link for each port, thereby obtaining a Data Link Correlator. If the target station can be reached, an ICANREACH_cs message is returned to the origin DLSw containing the Target Circuit ID parameter. Upon receipt, the origin DLSw starts a data link and returns the Origin Circuit ID to the target DLSw within the REACH_ACK message. (Note for a full list of message types, see section 3.5.) +------------+ +------------+ |Disconnected| |Disconnected| +------------+ CANUREACH_cs (Data Link ID) +------------+ -------------------------------------------------> ICANREACH_cs (Data Link ID, Target Circuit ID) <------------------------------------------------ REACH_ACK (Data Link ID, Origin Cir ID, Target Cir ID) -------------------------------------------------> +------------+ +------------+ |Circuit Est.| |Circuit Est.| +------------+ +------------+ XIDFRAME (Data Link ID, Origin Cir ID, Target Cir ID) <------------------------------------------------> CONTACT (Data Link ID, Origin Cir ID, Target Cir ID) -------------------------------------------------> CONTACTED (Data Link ID, Origin Cir ID, Target Cir ID) <------------------------------------------------- +------------+ +------------+ | Connected | | Connected | +------------+ +------------+ INFOFRAME (Remote Circuit ID = Target Circuit ID) -------------------------------------------------> INFOFRAME (Remote Circuit ID = Origin Circuit ID) <------------------------------------------------- During the exchange of the XIDFRAME, CONTACT, and CONTACTED messages, the pair of Circuit ID parameters is included in the message format along with the DATA LINK ID parameter. Once the connection has beenWells & Bartky [Page 13]RFC 1795 Data Link Switching April 1995 established, the INFOFRAME messages are exchanged with the shorter header. This header contains only the Circuit ID associated with the remote DLSw. The Remote Data Link Correlator and the Remote DLC Port ID are set equal to the Data Link Correlator and the DLC Port ID that are associated with the origin or target Data Link Switch, dependent upon the direction of the packet.3.3 Correlators The local use, and contents of the Data Link Correlator, Port ID and Transport ID fields in SSP messages is an implementation choice. These fields have local significance only. The values received from a partner DLSw must not be interpreted by the DLSw that receives them and should be echoed "as is" to a partner DLSw in subsequent messages. All implementations must obey the following rules in this section (3.3) on the assignment and fixing of these correlator fields for each transport connection or circuit: The Transport ID fields are learned from the first SSP message exchanged with a DLSw partner (the Capabilities exchange). This field should not be varied by a DLSw after the capabilities exchange and must be reflected to the partner DLSw in every SSP control message. The Target Data Link Correlator, Target Port ID and Target Transport ID must remain the same once the Target DLSw has sent the ICANREACH_cs for a given circuit. The Origin DLSw must store the values specified in the ICANREACH_cs and use these on all subsequent SSP messages for this circuit. The Origin DLSw must allow these fields to vary until the ICANREACH_cs is received. Each SSP message issued for a circuit must reflect the values specified by the Target DLSw in the last SSP message for this circuit received by the Origin DLSw. Binary zero should be used if no such message has yet been received for a given circuit (apart from the Target Transport ID which will have been learnt as specified above). The Origin Data Link Correlator, Origin Port ID and Origin Transport ID must remain the same once the Origin DLSw has issued the REACH_ACK for a given circuit. The Target DLSw must store the values specified in the REACH_ACK and use these on all subsequent SSP messages for this circuit. The Target DLSw must allow these fields to vary until the REACH_ACK is received. Each SSP message issued for a circuit must reflect the values specified by the Origin DLSw in the last SSP message for this circuit received by the Target DLSw. Binary zero should be used ifWells & Bartky [Page 14]RFC 1795 Data Link Switching April 1995 no such message has yet been received for a given circuit (apart from the Origin Transport ID which will have been learnt as specified above). For the purposes of correlator exchange, explorer messages form a separate circuit. Both DLSw partners must reflect the last received correlator values as specified above. However correlators learned on explorer messages need not be carried over to a subsequent circuit setup attempt. In particular, the Origin DLSw may elect to use the same values for the Origin Data Link Correlator and Origin Port ID when it issues a CANUREACH_cs after receiving an ICANREACH_ex or NETBIOS_NR_ex. However the Target DLSw must not assume that the CANUREACH_cs will specify any of the Target Data Link Correlator or Target Port ID that were exchanged on the explorer messages. Received SSP messages that require a valid Remote Circuit ID but cannot be associated with an existing circuit should be rejected with a HALT_DL_NOACK message. This is done to prevent a situation where one DLSw partner has a circuit defined while the other partner does not. The exception would be a HALT_DL_NOACK message with an invalid Remote Circuit ID. The HALT_DL_NOACK message is typically used in error situations where a response is not appropriate. The SSP messages requiring a valid Remote Circuit ID are all messages except the following: CANUREACH_ex, CANUREACH_cs, ICANREACH_ex, ICANREACH_cs, NETBIOS_NQ_cs, NETBIOS_NR_cs, DATAFRAME, NETBIOS_ANQ, NETBIOS_ANR, KEEPALIVE and CAP_EXCHANGE.3.4 Largest Frame Size Field The Largest Frame Size (LF Size) field in the SSP Control Header is used to carry the LF Size bits across the DLSw connection. This should be used to ensure that the two end-stations always negotiate a frame size to be used on a circuit that does not require the Origin and Target DLSw partners to re-segment frames. This field is valid on CANUREACH_ex, CANUREACH_cs, ICANREACH_ex, ICANREACH_cs, NETBIOS_NQ_ex and NETBIOS_NR_ex messages only. The contents of this field should be ignored on all other frames. Every DLSw forwarding a SSP frame to its DLSw partner must ensure that the contents of this frame reflect the minimum capability of the route to its local end-station or any limit imposed by the DLSw itself. The bit-wise definition of this field is as follows (bit 7 is the most significant bit, bit 0 is the least significant bit):Wells & Bartky [Page 15]RFC 1795 Data Link Switching April 1995 7 6 5 4 3 2 1 0 +-------------------------------+ | c | r | b | b | b | e | e | e | +-------------------------------+ c . . . . . . . LF Size Control flag (significant on messages from Origin to Target DLSw only) 0=fail circuit if route obtained requires a smaller LF size 1=don't fail the circuit but return the LF size obtained even if it is smaller . r . . . . . . Reserved . . b . . . . . Largest Frame Bit Base . . . b . . . . Largest Frame Bit Base . . . . b . . . Largest Frame Bit Base . . . . . e . . Largest Frame Bit Extended . . . . . . e . Largest Frame Bit Extended . . . . . . . e Largest Frame Bit Extended <----- LF Bits -----> Refer to IEEE 802.1D Standard, Annex C for encoding of Largest Frame base and extended bit values. The Origin DLSw "Size Control" flag informs a Target DLSw that chooses to reply to *_cs messages on the basis of cached information that it may safely return a smaller LF Size on the ICANREACH_cs frame if it has had to choose an alternative route on which to initialize the circuit. If this bit is set to 1, the Origin DLSw takes responsibility for ensuring that the end-stations negotiate a suitable frame size for the circuit. If this bit is set to 0, the Target DLSw must not reply to the CANUREACH_cs if it cannot obtain a route to the Target end station that support an LF Size at least as large as that specified in the CANUREACH_cs frame.3.5 Message Types The following table lists the protocol data units that are exchanged between Data Link Switches. All values not listed are reserved for potential use in follow-on releases.Wells & Bartky [Page 16]RFC 1795 Data Link Switching April 1995 Command Description Type flags/notes ------- -------- ------ ----------- CANUREACH_ex Can U Reach Station-explorer 0x03 SSPex CANUREACH_cs Can U Reach Station-circuit start 0x03
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -