欢迎来到虫虫下载站 | 资源下载 资源专辑 关于我们
虫虫下载站

rfc1841.txt

<VC++网络游戏建摸与实现>源代码
TXT
第 1 页 / 共 5 页
字号:
              LAN Extension Interface Startup Options<------------------------------------------------ 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|      0x01     |               0x03            |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   Option-Type             Option-Length                                  ------------------------------>                                  4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9                                 -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                                               0x01             |                                 -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                                             Option-DataChapman, et al               Informational                     [Page 12]RFC 1841           LAN Extension Interface Protocol       September 1995 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|      0x03     |               0x08            |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   Option-Type             Option-Length        |                                  4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9                                 -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                                    0A  0A  0A  0A  0B  0C      |                                 -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                                 ---------- Option-Data --------| 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|      0x05     |               0x03            |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   Option-Type             Option-Length                                  4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9                                 -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                                                0x01            |                                 -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                                           Option-Data   In Figure 4, the Address field always contains 0xFF, and the Control   field always contains 0x03. The Protocol-Type field value is 0x8041   because the startup options packet is a LAN extension interface   control packet. The Code field value is 0x01 because the LAN   extension interface unit is sending an LCP Configure-Request packet   to configure or negotiate PPP-LEX. The Identifier field contains a   randomly generated number. The Length field gives the total length of   the entire packet.   The first startup option is the MAC Type startup option. The Option-   Type value for MAC Type is 0x01. The Option-Length field value for   the MAC type startup option is 3 octets. The Option-Data field value   is 0x01 because, in this example, the LAN extension interface unit   connects to an Ethernet LAN using 802.3 canonical addresses.   The next startup option transmitted is the MAC Address. Its Option-   Type field value is 0x03, its Option-Length field value is 8 octets,   and its Option-Data field value is the actual MAC address.   Lastly, the LAN Extension startup option is transmitted. Its Option-   Type field value is 0x05, its Option-Length field value is 3 octets,   and its Option-Data field value is the LAN extension interface   protocol version number (0x01).Chapman, et al               Informational                     [Page 13]RFC 1841           LAN Extension Interface Protocol       September 1995   The host router responds to this LCP Configure-Request packet with an   LCP Configure-Ack packet, Configure-Nak packet, or Configure-Rej   packet. For more information on these packets, refer to "The Point-   to-Point Protocol (PPP) for the Transmission of Multi-protocol   Datagrams over Point-to-Point Links" RFC. (References, [1])2.2 Remote Command Options   Once the host router responds to the startup options Configure-   Request packet with a Configure-Ack packet, the PPP-LEX NCP is in an   "opened" state, and the LAN extension interface unit and the host   router freely exchange PPP-LEX data packets and remote command   options packets.   The host router initiates PPP-LEX remote command options packets to   control the configuration of the LAN extension interface unit and to   gather statistics. There are 11 types of remote command options that   the host router can send in a LEX_RCMD_REQUEST packet to the LAN   extension interface unit. The LAN extension interface unit responds   to a LEX_RCMD_REQUEST packet with a LEX_RCMD_ACK, LEX_RCMD_NAK, or   LEX_RCMD_REJ packet.   Frame Format   Figure 5 shows a summary of the frame format for a remote command   options packet. These fields are transmitted from left to right.               Figure 5 Remote Command Options Frame Format                        PPP Header<--------------------------------------------------------------> 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|    Address    |     Control   |          Protocol Type        |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+     (1 octet)          (1)                      (2)                  LAN Extension Interface Protocol Header<--------------------------------------------------------------> 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|     Code      |   Identifier  |             Length            |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+     (1 octet)          (1)                      (2)Chapman, et al               Informational                     [Page 14]RFC 1841           LAN Extension Interface Protocol       September 1995               LAN Extension Interface Remote Command Options<-------------------------------- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|  Option-Type  |  Option-Flags |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+     (1 octet)          (1)                 ---------------------------------------------->                 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9                 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                          Option-Length        |  Option-Data  |                 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                                (2)   Address   This PPP-specified field is a single octet and contains the binary   sequence 11111111 (hexadecimal 0xFF), the All-Stations address. PPP   does not assign individual station addresses. The All-Stations   address must be recognized and received by all devices. For more   information on this field, refer to "The Point-to-Point Protocol   (PPP) for the Transmission of Multi-protocol Datagrams over Point-   to-Point Links." (References, [1])   Control   This PPP-specified field is a single octet and contains the binary   sequence 00000011 (hexadecimal 0x03), the Unnumbered Information (UI)   command with the P/F bit set to zero.   For more information on this field, refer to "The Point-to-Point   Protocol (PPP) for the Transmission of Multi-protocol Datagrams over   Point-to Point Links." (References, [1])   Note:  Hereafter the Address and Control fields will be represented   together as a 2-octet field containing "0xFF03".   Protocol-Type   The Protocol-Type field is two octets and contains the IETF-assigned   protocol type value. Valid LAN extension interface protocol type   values follow:      *  0x8041 (for control packets)      *  0x0041 (for data packets)Chapman, et al               Informational                     [Page 15]RFC 1841           LAN Extension Interface Protocol       September 1995   Because the remote command options packet encapsulates LAN extension   interface control data, the valid value for this field is 0x8041.   Code   The Code field is one octet and identifies the type of PPP-LEX   packet. Valid values are as follows:      *  0x40 - LEX_RCMD_REQUEST packet      *  0x41 - LEX_RCMD_ ACK packet      *  0x42 - LEX_RCMD_NAK packet      *  0x43 - LEX_RCMD_REJ packet   The host router sends the LEX_RCMD_REQUEST packet, and the LAN   extension interface unit sends the LEX_RCMD_ACK, LEX_RCMD_NAK, and   LEX_RCMD_REJ packets.   Identifier   The Identifier field is one octet and contains a randomly generated   value. The value aids matching requests and replies. It is   recommended that a non-zero value be used for the identifier. That   is, zero could be used in the future for unsolicited messages from   the LAN extension interface unit. Valid values are 0x01-0xFF.   Length   The Length field is two octets and indicates the length in octets of   the entire packet, including the Code, Identifier, Length, and remote   command options fields.   Option-Type   The Option-Type field is one octet and identifies the remote command   option being transmitted. Valid values are as follows:      *  0x01 - Filter Protocol Type      *  0x02 - Filter MAC Address      *  0x03 - Set Priority      *  0x04 - Disable LAN Extension Ethernet Interface      *  0x05 - Enable LAN Extension Ethernet Interface      *  0x06 - Reboot LAN Extension Interface Unit      *  0x07 - Request Statistics      *  0x08 - Download Request      *  0x09 - Download Data      *  0x0A - Download Status      *  0x0B- Inventory RequestChapman, et al               Informational                     [Page 16]RFC 1841           LAN Extension Interface Protocol       September 1995   Each remote command option is discussed in detail in its own section   later in this document.   Option-Flags   This field is one octet and further specifies the remote command   option, containing specific actions that must be followed.   Option-Length   The Option-Length field is two octets and specifies the length in   octets of the remote command option fields, including the Option-   Type, Option-Flags, Option-Length, and Option-Data fields.   Option-Data   Option-Data field contains data relating to the remote command option   specified in the Option-Type field.2.3 Conditions for Sending PPP-LEX Packet   This section describes the general conditions under which PPP-LEX   packet types are sent. For specific information by remote command,   refer to the appropriate remote command section later in this   document.   LEX RCMD_REQUEST Packet   The host router sends LEX_RCMD_REQUEST packets to the LAN extension   interface unit to initiate a remote command request. Until the host   router receives a LEX_RCMD_ACK, LEX_RCMD_NAK, or LEX_RCMD_REJ packet   from the LAN extension interface unit, the host router continues to   send the LEX_RCMD_REQUEST packet a default number of times, at which   point the host router times out.   LEX_RCMD_ACK Packet   The LAN extension interface unit responds to a LEX_RCMD_REQUEST   packet with a LEX_RCMD_ACK packet when it correctly receives the   request and is able to perform the request.   LEX RCMD_NAK Packet   The LAN extension interface unit responds to a LEX_RCMD_REQUEST   packet with a LEX_RCMD_NAK packet when the LAN extension interface   unit recognizes all the elements of the remote command option, but   some elements are not acceptable. Upon receipt of a LEX_RCMD_NAK   packet, the host router immediately stops sending the request.Chapman, et al               Informational                     [Page 17]RFC 1841           LAN Extension Interface Protocol       September 1995   LEX RCMD_REJ Packet   The LAN extension interface unit responds to a LEX_RCMD_REQUEST   packet with a LEX_RCMD_REJ packet when the Option-Type value in the   request packet is invalid. Invalid Option-Type values are those less   than 0x01 or greater than 0x0B. Currently, this is the only condition   under which the LAN extension interface unit sends a LEX_RCMD_REJ   packet. Upon receipt of a LEX_RCMD_REJ packet, the host router   immediately stops sending the request.   The following sections detail each of the 11 remote command options.   The sections provide a general description of the option and then   specify the option's Option-Type, Option-Flags, Option-Length, and   Option-Data fields. In addition, the sections describe the return

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -