Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
High-Level Data Link Control
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===U-Frames=== Unnumbered frames, or '''U-frames''', are primarily used for link management, although a few are used to transfer user data. They exchange session management and control information between connected devices, and some U-frames contain an information field, used for system management information or user data. The first 2 bits (11) mean it is a U-frame. The five type bits (2 before P/F bit and 3 bit after P/F bit) can create 32 different types of U-frame. In a few cases, the same encoding is used for different things as a command and a response. ====Mode setting==== The various modes are described in {{slink||Link configurations}}. Briefly, there are two non-operational modes (initialization mode and disconnected mode) and three operational modes (normal response, asynchronous response, and asynchronous balanced modes) with 3-bit or 7-bit (extended) sequence numbers. ; Disconnected mode (DM) response : When the secondary is disconnected (the default state on power-up), it sends this generic response to any poll (command frame with the poll flag set) except an acceptable mode setting command. It may alternatively give a FRMR response to an unacceptable mode set command. ; Unnumbered acknowledge (UA) response : This is the secondary's response to an acceptable mode set command, indicating that it is now in the requested mode. ; Set ... mode (SNRM, SARM, SABM) command : Place the secondary in the specified mode, with 3-bit sequence numbers (1-byte control field). The secondary acknowledges with UA. If the secondary does not implement the mode, it responds with DM or FRMR. ; Set ... mode extended (SNRME, SARME, SABME) command : Place the secondary in the specified mode, with 7-bit sequence numbers (2-byte control field). ; Set mode (SM) command : Generic mode set, new in ISO/IEC 13239, using an information field to select parameters. ISO/IEC 13239 added many additional options to HDLC, including 15- and 31-bit sequence numbers, which can only be selected with this command. ; Disconnect (DISC) command : This command causes the secondary to acknowledge with UA and disconnect (enter disconnected mode). Any unacknowledged frames are lost. ; Request disconnect (RD) response : This response requests the primary to send a DISC command. The primary should do so promptly, but may delay long enough to ensure all pending frames are acknowledged. ; Set initialization mode (SIM) command : This rarely-implemented command is used to perform some secondary-specific initialization, such as downloading [[firmware]]. What happens in initialization mode is not otherwise specified in the HDLC standard. ; Request initialization mode (RIM) response : This requests the primary to send SIM and initialize the secondary. It sent in lieu of DM if the secondary requires initialization. ====Information transfer==== These frames may be used as part of normal information transfer. ; Unnumbered information (UI) : This frame (command or response) communicates user data, but without acknowledgement or retransmission in case of error. ; UI with header check (UIH) : This frame (command or response), a ISO/IEC 13239 addition and rarely used, is like UI but also excludes CRC protection. Only a configurable-length prefix ("header") of the frame is covered by the CRC polynomial; errors in the rest of the frame are not detected. ; Unnumbered poll (UP) command : This command solicits a response from the secondary. With the poll bit set, it acts like any other poll frame, without the acknowledgement that must be included in I or S frame. With the poll bit clear, it has a special meaning in normal response mode: the secondary ''may'' respond, even though it has not received the poll bit. This is rarely used in HDLC, but was used in the original IBM SDLC as a substitute for the lack of asynchronous response mode; where the communication channel could handle simultaneous responses, the primary would periodically send UP to the broadcast address to collect any pending responses. ====Error Recovery==== ; Frame reject (FRMR) response : The FRMR response contains a description of the unacceptable frame, in a standardized format. The first 1 or 2 bytes are a copy of the rejected control field, the next 1 or 2 contain the secondary's current send and receive sequence numbers (and a flag indicating that the frame was a response, applicable only in balanced mode), and the following 4 or 5 bits are error flags indicating the reason for the rejection. The secondary repeats the same FRMR response to every poll until the error is cleared by a mode set command or RSET. The error flags are: :* W: the frame type (control field) is not understood or not implemented. :* X: the frame type is not understood with a non-empty information field, but one was present. :* Y: the frame included an information field that is larger than the secondary can accept. :* Z: the frame included an invalid receive sequence number N(R), one which is not between the previously received value and the highest sequence number transmitted. (This error cannot be cleared by receiving RSET, but can be cleared by ''sending'' RSET.) :* V: the frame included an invalid send sequence number N(S), greater than the last number acknowledged plus the transmit window size. This error is only possible if a transmit window size smaller than the maximum has been negotiated. :* The error flags are normally padded with 0 bits to an 8-bit boundary, but HDLC permits frames which are not a multiple of a byte long. ; Reset (RSET) command : The RSET command causes a secondary to reset its receive sequence number so the next expected frame is sequence number 0. This is a possible alternative to sending a new mode set command, which resets both sequence numbers. It is acknowledged with UA, like a mode set command. ====Peer discovery==== ; Exchange identification (XID) : An XID command includes an information field specifying the primary's capabilities; the secondary responds with an XID response specifying its capabilities. This is normally done before sending a mode set command. [[Systems Network Architecture]] defined one format for the information field, in which the most significant bit of the first byte is clear (0), but HDLC implementations normally implement the variant defined in ISO 8885, which has the most significant bit of the first byte set (1). ; TEST : A TEST command is simply a [[Ping (networking utility)|ping command]] for debugging purposes. The payload of the TEST command is returned in the TEST response. ====Defined in other standards==== {{Further|Synchronous Data Link Control#SLDC features not in HDLC}} There are several U frames which are not part of HDLC, but defined in other related standards. ; Nonreserved (NR0, NR1, NR2, NR3) : The "nonreserved" commands and responses are guaranteed by the HDLC standard to be available for other uses. ; Ack connectionless (AC0, AC1) : These are defined in the [[IEEE 802.2]] logical link control standard. ; Configure (CFGR) : This command was defined in SDLC for debugging. It had a 1-byte payload which specified a non-standard test mode for the secondary. Even numbers disabled the mode, while odd numbers enabled it. A payload of 0 disabled all test modes. The secondary normally acknowledged a configure command by echoing it in response. ; Beacon (BCN) response : This response was defined in SDLC to indicate a communications failure. A secondary which received no frames at all for a long time would begin sending a stream of beacon responses, allowing a unidirectional fault to be located. Note that ISO/IEC 13239 assigns UIH the same encoding as BCN.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)