📄 rfc760.txt
字号:
A summary of the contents of the internet header follows: 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Version| IHL |Type of Service| Total Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Identification |Flags| Fragment Offset | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Time to Live | Protocol | Header Checksum | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Source Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Destination Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Options | Padding | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Example Internet Datagram Header Figure 3. Note that each tick mark represents one bit position. Version: 4 bits The Version field indicates the format of the internet header. This document describes version 4. IHL: 4 bits Internet Header Length is the length of the internet header in 32 bit words, and thus points to the beginning of the data. Note that the minimum value for a correct header is 5. [Page 11] January 1980Internet ProtocolSpecification Type of Service: 8 bits The Type of Service provides an indication of the abstract parameters of the quality of service desired. These parameters are to be used to guide the selection of the actual service parameters when transmitting a datagram through a particular network. Several networks offer service precedence, which somehow treats high precedence traffic as more important than other traffic. A few networks offer a Stream service, whereby one can achieve a smoother service at some cost. Typically this involves the reservation of resources within the network. Another choice involves a low-delay vs. high-reliability trade off. Typically networks invoke more complex (and delay producing) mechanisms as the need for reliability increases. Bits 0-2: Precedence. Bit 3: Stream or Datagram. Bits 4-5: Reliability. Bit 6: Speed over Reliability. Bits 7: Speed. 0 1 2 3 4 5 6 7 +-----+-----+-----+-----+-----+-----+-----+-----+ | | | | | | | PRECEDENCE | STRM|RELIABILITY| S/R |SPEED| | | | | | | +-----+-----+-----+-----+-----+-----+-----+-----+ PRECEDENCE STRM RELIABILITY S/R SPEED 111-Flash Override 1-STREAM 11-highest 1-speed 1-high 110-Flash 0-DTGRM 10-higher 0-rlblt 0-low 11X-Immediate 01-lower 01X-Priority 00-lowest 00X-Routine The type of service is used to specify the treatment of the datagram during its transmission through the internet system. In the discussion (section 3.2) below, a chart shows the relationship of the internet type of service to the actual service provided on the ARPANET, the SATNET, and the PRNET. Total Length: 16 bits Total Length is the length of the datagram, measured in octets, including internet header and data. This field allows the length of a datagram to be up to 65,535 octets. Such long datagrams are impractical for most hosts and networks. All hosts must be prepared to accept datagrams of up to 576 octets (whether they arrive whole[Page 12] January 1980 Internet Protocol Specification or in fragments). It is recommended that hosts only send datagrams larger than 576 octets if they have assurance that the destination is prepared to accept the larger datagrams. The number 576 is selected to allow a reasonable sized data block to be transmitted in addition to the required header information. For example, this size allows a data block of 512 octets plus 64 header octets to fit in a datagram. The maximal internet header is 60 octets, and a typical internet header is 20 octets, allowing a margin for headers of higher level protocols. Identification: 16 bits An identifying value assigned by the sender to aid in assembling the fragments of a datagram. Flags: 3 bits Various Control Flags. Bit 0: reserved, must be zero Bit 1: Don't Fragment This Datagram (DF). Bit 2: More Fragments Flag (MF). 0 1 2 +---+---+---+ | | D | M | | 0 | F | F | +---+---+---+ Fragment Offset: 13 bits This field indicates where in the datagram this fragment belongs. The fragment offset is measured in units of 8 octets (64 bits). The first fragment has offset zero. Time to Live: 8 bits This field indicates the maximum time the datagram is allowed to remain the internet system. If this field contains the value zero, then the datagram should be destroyed. This field is modified in internet header processing. The time is measured in units of seconds. The intention is to cause undeliverable datagrams to be discarded. [Page 13] January 1980Internet ProtocolSpecification Protocol: 8 bits This field indicates the next level protocol used in the data portion of the internet datagram. The values for various protocols are specified in reference [6]. Header Checksum: 16 bits A checksum on the header only. Since some header fields may change (e.g., time to live), this is recomputed and verified at each point that the internet header is processed. The checksum algorithm is: The checksum field is the 16 bit one's complement of the one's complement sum of all 16 bit words in the header. For purposes of computing the checksum, the value of the checksum field is zero. This is a simple to compute checksum and experimental evidence indicates it is adequate, but it is provisional and may be replaced by a CRC procedure, depending on further experience. Source Address: 32 bits The source address. The first octet is the Source Network, and the following three octets are the Source Local Address. Destination Address: 32 bits The destination address. The first octet is the Destination Network, and the following three octets are the Destination Local Address.[Page 14] January 1980 Internet Protocol Specification Options: variable The option field is variable in length. There may be zero or more options. There are two cases for the format of an option: Case 1: A single octet of option-type. Case 2: An option-type octet, an option-length octet, and the actual option-data octets. The option-length octet counts the option-type octet and the option-length octet as well as the option-data octets. The option-type octet is viewed as having 3 fields: 1 bit reserved, must be zero 2 bits option class, 5 bits option number. The option classes are: 0 = control 1 = internet error 2 = experimental debugging and measurement 3 = reserved for future use [Page 15] January 1980Internet ProtocolSpecification The following internet options are defined: CLASS NUMBER LENGTH DESCRIPTION ----- ------ ------ ----------- 0 0 - End of Option list. This option occupies only 1 octet; it has no length octet. 0 1 - No Operation. This option occupies only 1 octet; it has no length octet. 0 2 4 Security. Used to carry Security, and user group (TCC) information compatible with DOD requirements. 0 3 var. Source Routing. Used to route the internet datagram based on information supplied by the source. 0 7 var. Return Route. Used to record the route an internet datagram takes. 0 8 4 Stream ID. Used to carry the stream identifier. 1 1 var. General Error Report. Used to report errors in internet datagram processing. 2 4 6 Internet Timestamp. 2 5 6 Satellite Timestamp. Specific Option Definitions End of Option List +--------+ |00000000| +--------+ Type=0 This option indicates the end of the option list. This might not coincide with the end of the internet header according to the internet header length. This is used at the end of all options, not the end of each option, and need only be used if the end of the options would not otherwise coincide with the end of the internet header. May be copied, introduced, or deleted on fragmentation.[Page 16] January 1980 Internet Protocol Specification No Operation +--------+ |00000001| +--------+ Type=1 This option may be used between options, for example, to align the beginning of a subsequent option on a 32 bit boundary. May be copied, introduced, or deleted on fragmentation. Security This option provides a way for DOD hosts to send security and TCC (closed user groups) parameters through networks whose transport leader does not contain fields for this information. The format for this option is as follows: +--------+--------+---------+--------+ |00000010|00000100|000000SS | TCC | +--------+--------+---------+--------+ Type=2 Length=4 Security: 2 bits Specifies one of 4 levels of security 11-top secret 10-secret 01-confidential 00-unclassified Transmission Control Code: 8 bits Provides a means to compartmentalize traffic and define controlled communities of interest among subscribers. Note that this option does not require processing by the internet module but does require that this information be passed to higher level protocol modules. The security and TCC information might be used to supply class level and compartment information for transmitting datagrams into or through AUTODIN II. Must be copied on fragmentation. [Page 17] January 1980Internet ProtocolSpecification Source Route +--------+--------+--------+---------//--------+
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -