`RFC: 791
`
`INTERNET PROTOCOL
` INTERNET PROTOCOL
`
`DARPA INTERNET PROGRAM
` DARPA INTERNET PROGRAM
`
`PROTOCOL SPECIFICATION
` PROTOCOL SPECIFICATION
`
` September 1981
`September 1981
`
`prepared for
` prepared for
`
` Defense Advanced Research Projects Agency
`Defense Advanced Research Projects Agency
` Information Processing Techniques Office
`Information Processing Techniques Office
`1400 Wilson Boulevard
` 1400 Wilson Boulevard
`Arlington, Virginia 22209
` Arlington, Virginia 22209
`
` by
`by
`
`Information Sciences Institute
` Information Sciences Institute
`University of Southern California
` University of Southern California
`4676 Admiralty Way
` 4676 Admiralty Way
`Marina del Rey, California 90291
` Marina del Rey, California 90291
`
`NFLE Ex. 1010
`
`NFLE 1010 - Page 1
`
`
`
`NFLE1010 - Page 2
`NFLE Ex. 1010
`
`NFLE 1010 - Page 2
`
`
`
`
`
`September 1981
`September 1981
`Internet Protocol
` Internet Protocol
`
`TABLE OF CONTENTS
` TABLE OF CONTENTS
`
`PREFACE
` PREFACE ........................................................ iii
` iii
`
` 1
`1. INTRODUCTION
`1. INTRODUCTION ..................................................... 1
`
` 1
`1.1 Motivation
` 1.1 Motivation .................................................... 1
` 1.2 Scope ......................................................... 1
`1.2 Scope
` 1
`1.3 Interfaces
` 1
` 1.3 Interfaces .................................................... 1
`1.4 Operation
` 2
` 1.4 Operation ..................................................... 2
`
`2. OVERVIEW
` 5
`2. OVERVIEW ......................................................... 5
`
`2.1 Relation to Other Protocols
` 2.1 Relation to Other Protocols ................................... 9
` 9
`2.2 Model of Operation
` 2.2 Model of Operation ............................................ 5
` 5
` 2.3 Function Description .......................................... 7
`2.3 Function Description
` 7
`2.4 Gateways
` 2.4 Gateways ...................................................... 9
` 9
`
` 11
`3. SPECIFICATION
`3. SPECIFICATION ................................................... 11
`
` 11
`3.1 Internet Header Format
` 3.1 Internet Header Format ....................................... 11
` 3.2 Discussion ................................................... 23
`3.2 Discussion
` 23
` 3.3 Interfaces ................................................... 31
` 31
`3.3 Interfaces
`
`APPENDIX A: Examples & Scenarios
`APPENDIX A: Examples & Scenarios ................................... 34
` 34
`APPENDIX B: Data Transmission Order ................................ 39
`APPENDIX B: Data Transmission Order
` 39
`
`GLOSSARY ............................................................ 41
`GLOSSARY
` 41
`
`REFERENCES
`REFERENCES .......................................................... 45
` 45
`
`[Page i]
` [Page i]
`
`NFLE Ex. 1010
`
`NFLE 1010 - Page 3
`
`
`
`
`September 1981
` September 1981
`Internet Protocol
`Internet Protocol
`
`[Page ii]
`[Page ii]
`
`NFLE Ex. 1010
`
`NFLE 1010 - Page 4
`
`
`
`
`September 1981
`September 1981
` Internet Protocol
`Internet Protocol
`
`PREFACE
` PREFACE
`
`This document specifies the DoD Standard Internet Protocol. This
`This document specifies the DoD Standard Internet Protocol. This
`document is based on six earlier editions of the ARPA Internet Protocol
`document is based on six earlier editions of the ARPA Internet Protocol
`Specification, and the present text draws heavily from them. There have
`Specification, and the present text draws heavily from them. There have
`been many contributors to this work both in terms of concepts and in
`been many contributors to this work both in terms of concepts and in
`terms of text. This edition revises aspects of addressing, error
`terms of text. This edition revises aspects of addressing, error
`handling, option codes, and the security, precedence, compartments, and
`handling, option codes, and the security, precedence, compartments, and
`handling restriction features of the internet protocol.
`handling restriction features of the internet protocol.
`
` Jon Postel
`Jon Postel
`
` Editor
`Editor
`
`[Page iii]
` [Page iii]
`
`NFLE Ex. 1010
`
`NFLE 1010 - Page 5
`
`
`
`
` September 1981
`September 1981
`
`RFC: 791
`RFC: 791
`Replaces: RFC 760
`Replaces: RFC 760
`IENs 128, 123, 111,
`IENs 128, 123, 111,
`80, 54, 44, 41, 28, 26
`80, 54, 44, 41, 28, 26
`
`INTERNET PROTOCOL
` INTERNET PROTOCOL
`
`DARPA INTERNET PROGRAM
` DARPA INTERNET PROGRAM
` PROTOCOL SPECIFICATION
`PROTOCOL SPECIFICATION
`
`1. INTRODUCTION
` 1. INTRODUCTION
`
`1.1. Motivation
`1.1. Motivation
`
`The Internet Protocol is designed for use in interconnected systems of
` The Internet Protocol is designed for use in interconnected systems of
` packet-switched computer communication networks. Such a system has
`packet-switched computer communication networks. Such a system has
` been called a "catenet" [1]. The internet protocol provides for
`been called a "catenet" [1]. The internet protocol provides for
` transmitting blocks of data called datagrams from sources to
`transmitting blocks of data called datagrams from sources to
` destinations, where sources and destinations are hosts identified by
`destinations, where sources and destinations are hosts identified by
` fixed length addresses. The internet protocol also provides for
`fixed length addresses. The internet protocol also provides for
` fragmentation and reassembly of long datagrams, if necessary, for
`fragmentation and reassembly of long datagrams, if necessary, for
` transmission through "small packet" networks.
`transmission through "small packet" networks.
`
`1.2. Scope
`1.2. Scope
`
`The internet protocol is specifically limited in scope to provide the
` The internet protocol is specifically limited in scope to provide the
` functions necessary to deliver a package of bits (an internet
`functions necessary to deliver a package of bits (an internet
` datagram) from a source to a destination over an interconnected system
`datagram) from a source to a destination over an interconnected system
` of networks. There are no mechanisms to augment end-to-end data
`of networks. There are no mechanisms to augment end-to-end data
`reliability, flow control, sequencing, or other services commonly
` reliability, flow control, sequencing, or other services commonly
` found in host-to-host protocols. The internet protocol can capitalize
`found in host-to-host protocols. The internet protocol can capitalize
` on the services of its supporting networks to provide various types
`on the services of its supporting networks to provide various types
` and qualities of service.
`and qualities of service.
`
`1.3. Interfaces
`1.3. Interfaces
`
` This protocol is called on by host-to-host protocols in an internet
`This protocol is called on by host-to-host protocols in an internet
`environment. This protocol calls on local network protocols to carry
` environment. This protocol calls on local network protocols to carry
` the internet datagram to the next gateway or destination host.
`the internet datagram to the next gateway or destination host.
`
`For example, a TCP module would call on the internet module to take a
` For example, a TCP module would call on the internet module to take a
`TCP segment (including the TCP header and user data) as the data
` TCP segment (including the TCP header and user data) as the data
` portion of an internet datagram. The TCP module would provide the
`portion of an internet datagram. The TCP module would provide the
` addresses and other parameters in the internet header to the internet
`addresses and other parameters in the internet header to the internet
` module as arguments of the call. The internet module would then
`module as arguments of the call. The internet module would then
` create an internet datagram and call on the local network interface to
`create an internet datagram and call on the local network interface to
` transmit the internet datagram.
`transmit the internet datagram.
`
` In the ARPANET case, for example, the internet module would call on a
`In the ARPANET case, for example, the internet module would call on a
`
`[Page 1]
` [Page 1]
`
`NFLE Ex. 1010 - Page 1
`
`NFLE 1010 - Page 6
`
`
`
`
` September 1981
`September 1981
`Internet Protocol
`Internet Protocol
`Introduction
`Introduction
`
` local net module which would add the 1822 leader [2] to the internet
`local net module which would add the 1822 leader [2] to the internet
`datagram creating an ARPANET message to transmit to the IMP. The
` datagram creating an ARPANET message to transmit to the IMP. The
`ARPANET address would be derived from the internet address by the
` ARPANET address would be derived from the internet address by the
` local network interface and would be the address of some host in the
`local network interface and would be the address of some host in the
`ARPANET, that host might be a gateway to other networks.
` ARPANET, that host might be a gateway to other networks.
`
`1.4. Operation
`1.4. Operation
`
`The internet protocol implements two basic functions: addressing and
` The internet protocol implements two basic functions: addressing and
` fragmentation.
`fragmentation.
`
` The internet modules use the addresses carried in the internet header
`The internet modules use the addresses carried in the internet header
` to transmit internet datagrams toward their destinations. The
`to transmit internet datagrams toward their destinations. The
`selection of a path for transmission is called routing.
` selection of a path for transmission is called routing.
`
` The internet modules use fields in the internet header to fragment and
`The internet modules use fields in the internet header to fragment and
`reassemble internet datagrams when necessary for transmission through
` reassemble internet datagrams when necessary for transmission through
` "small packet" networks.
`"small packet" networks.
`
` The model of operation is that an internet module resides in each host
`The model of operation is that an internet module resides in each host
`engaged in internet communication and in each gateway that
` engaged in internet communication and in each gateway that
` interconnects networks. These modules share common rules for
`interconnects networks. These modules share common rules for
` interpreting address fields and for fragmenting and assembling
`interpreting address fields and for fragmenting and assembling
` internet datagrams. In addition, these modules (especially in
`internet datagrams. In addition, these modules (especially in
` gateways) have procedures for making routing decisions and other
`gateways) have procedures for making routing decisions and other
` functions.
`functions.
`
` The internet protocol treats each internet datagram as an independent
`The internet protocol treats each internet datagram as an independent
` entity unrelated to any other internet datagram. There are no
`entity unrelated to any other internet datagram. There are no
` connections or logical circuits (virtual or otherwise).
`connections or logical circuits (virtual or otherwise).
`
`The internet protocol uses four key mechanisms in providing its
` The internet protocol uses four key mechanisms in providing its
` service: Type of Service, Time to Live, Options, and Header Checksum.
`service: Type of Service, Time to Live, Options, and Header Checksum.
`
` The Type of Service is used to indicate the quality of the service
`The Type of Service is used to indicate the quality of the service
` desired. The type of service is an abstract or generalized set of
`desired. The type of service is an abstract or generalized set of
` parameters which characterize the service choices provided in the
`parameters which characterize the service choices provided in the
` networks that make up the internet. This type of service indication
`networks that make up the internet. This type of service indication
` is to be used by gateways to select the actual transmission parameters
`is to be used by gateways to select the actual transmission parameters
` for a particular network, the network to be used for the next hop, or
`for a particular network, the network to be used for the next hop, or
` the next gateway when routing an internet datagram.
`the next gateway when routing an internet datagram.
`
`The Time to Live is an indication of an upper bound on the lifetime of
` The Time to Live is an indication of an upper bound on the lifetime of
` an internet datagram. It is set by the sender of the datagram and
`an internet datagram. It is set by the sender of the datagram and
` reduced at the points along the route where it is processed. If the
`reduced at the points along the route where it is processed. If the
` time to live reaches zero before the internet datagram reaches its
`time to live reaches zero before the internet datagram reaches its
` destination, the internet datagram is destroyed. The time to live can
`destination, the internet datagram is destroyed. The time to live can
` be thought of as a self destruct time limit.
`be thought of as a self destruct time limit.
`
`[Page 2]
`[Page 2]
`
`NFLE Ex. 1010 - Page 2
`
`NFLE 1010 - Page 7
`
`
`
`
`September 1981
`September 1981
` Internet Protocol
`Internet Protocol
` Introduction
`Introduction
`
` The Options provide for control functions needed or useful in some
`The Options provide for control functions needed or useful in some
`situations but unnecessary for the most common communications. The
` situations but unnecessary for the most common communications. The
` options include provisions for timestamps, security, and special
`options include provisions for timestamps, security, and special
`routing.
` routing.
`
` The Header Checksum provides a verification that the information used
`The Header Checksum provides a verification that the information used
` in processing internet datagram has been transmitted correctly. The
`in processing internet datagram has been transmitted correctly. The
` data may contain errors. If the header checksum fails, the internet
`data may contain errors. If the header checksum fails, the internet
` datagram is discarded at once by the entity which detects the error.
`datagram is discarded at once by the entity which detects the error.
`
` The internet protocol does not provide a reliable communication
`The internet protocol does not provide a reliable communication
`facility. There are no acknowledgments either end-to-end or
` facility. There are no acknowledgments either end-to-end or
`hop-by-hop. There is no error control for data, only a header
` hop-by-hop. There is no error control for data, only a header
`checksum. There are no retransmissions. There is no flow control.
` checksum. There are no retransmissions. There is no flow control.
`
` Errors detected may be reported via the Internet Control Message
`Errors detected may be reported via the Internet Control Message
`Protocol (ICMP) [3] which is implemented in the internet protocol
` Protocol (ICMP) [3] which is implemented in the internet protocol
` module.
`module.
`
` [Page 3]
`[Page 3]
`
`NFLE Ex. 1010 - Page 3
`
`NFLE 1010 - Page 8
`
`
`
`
`September 1981
` September 1981
`Internet Protocol
`Internet Protocol
`
`[Page 4]
`[Page 4]
`
`NFLE Ex. 1010 - Page 4
`
`NFLE 1010 - Page 9
`
`
`
`
`September 1981
`September 1981
` Internet Protocol
`Internet Protocol
`
`2. OVERVIEW
` 2. OVERVIEW
`
`2.1. Relation to Other Protocols
`2.1. Relation to Other Protocols
`
`The following diagram illustrates the place of the internet protocol
` The following diagram illustrates the place of the internet protocol
`in the protocol hierarchy:
` in the protocol hierarchy:
`
` +------+ +-----+ +-----+ +-----+
`+ +
`+
`+ +
`+
`+
`+
`ITelnet1 I FTP 1
` |Telnet| | FTP | | TFTP| ... | ... |
`1 TEM
`I
`I
`+
`+ +
`+ +
` +------+ +-----+ +-----+ +-----+
`+
`+
`+
` | | | |
`1
`1
`1
`1
`+
`+
`+
`+
`+
`+
` +-----+ +-----+ +-----+
` | TCP | | UDP | ... | ... |
`1 TCP I
`1 UDP I ... I ... I
`+
`+
`+
`+
`+
`+
` +-----+ +-----+ +-----+
` | | |
`1
`1
`1
`+----+
`+
` +--------------------------+----+
`Internet Protocol & ICMP
` | Internet Protocol & ICMP |
`I
`I
`+
`+----+
` +--------------------------+----+
` |
`1
`+
`+
` +---------------------------+
`Local Network Protocol I
` | Local Network Protocol |
`I
`+
`+
` +---------------------------+
`
` Protocol Relationships
`Protocol Relationships
`
` Figure 1.
`Figure 1.
`
` Internet protocol interfaces on one side to the higher level
`Internet protocol interfaces on one side to the higher level
` host-to-host protocols and on the other side to the local network
`host-to-host protocols and on the other side to the local network
`protocol. In this context a "local network" may be a small network in
` protocol. In this context a "local network" may be a small network in
`a building or a large network such as the ARPANET.
` a building or a large network such as the ARPANET.
`
`2.2. Model of Operation
`2.2. Model of Operation
`
` The model of operation for transmitting a datagram from one
`The model of operation for transmitting a datagram from one
` application program to another is illustrated by the following
`application program to another is illustrated by the following
` scenario:
`scenario:
`
`We suppose that this transmission will involve one intermediate
` We suppose that this transmission will involve one intermediate
` gateway.
`gateway.
`
`The sending application program prepares its data and calls on its
` The sending application program prepares its data and calls on its
` local internet module to send that data as a datagram and passes the
`local internet module to send that data as a datagram and passes the
` destination address and other parameters as arguments of the call.
`destination address and other parameters as arguments of the call.
`
` The internet module prepares a datagram header and attaches the data
`The internet module prepares a datagram header and attaches the data
` to it. The internet module determines a local network address for
`to it. The internet module determines a local network address for
` this internet address, in this case it is the address of a gateway.
`this internet address, in this case it is the address of a gateway.
`
` [Page 5]
`[Page 5]
`
`NFLE Ex. 1010 - Page 5
`
`NFLE 1010 - Page 10
`
`
`
`
` September 1981
`September 1981
`Internet Protocol
`Internet Protocol
`Overview
`Overview
`
` It sends this datagram and the local network address to the local
`It sends this datagram and the local network address to the local
`network interface.
` network interface.
`
`The local network interface creates a local network header, and
` The local network interface creates a local network header, and
` attaches the datagram to it, then sends the result via the local
`attaches the datagram to it, then sends the result via the local
` network.
`network.
`
` The datagram arrives at a gateway host wrapped in the local network
`The datagram arrives at a gateway host wrapped in the local network
` header, the local network interface strips off this header, and
`header, the local network interface strips off this header, and
` turns the datagram over to the internet module. The internet module
`turns the datagram over to the internet module. The internet module
` determines from the internet address that the datagram is to be
`determines from the internet address that the datagram is to be
` forwarded to another host in a second network. The internet module
`forwarded to another host in a second network. The internet module
` determines a local net address for the destination host. It calls
`determines a local net address for the destination host. It calls
`on the local network interface for that network to send the
` on the local network interface for that network to send the
` datagram.
`datagram.
`
`This local network interface creates a local network header and
` This local network interface creates a local network header and
` attaches the datagram sending the result to the destination host.
`attaches the datagram sending the result to the destination host.
`
` At this destination host the datagram is stripped of the local net
`At this destination host the datagram is stripped of the local net
` header by the local network interface and handed to the internet
`header by the local network interface and handed to the internet
` module.
`module.
`
` The internet module determines that the datagram is for an
`The internet module determines that the datagram is for an
`application program in this host. It passes the data to the
` application program in this host. It passes the data to the
` application program in response to a system call, passing the source
`application program in response to a system call, passing the source
` address and other parameters as results of the call.
`address and other parameters as results of the call.
`
`Application
`Application
` Application Application
`Program
`Program
` Program Program
` \ /
`\
`/
`Internet Module
`Internet Module
`Internet Module
` Internet Module Internet Module Internet Module
`/
` \ / \ /
`\
`\
`/
`LNI-1
`LNI-1
`LNI-2
`LNI-2
` LNI-1 LNI-1 LNI-2 LNI-2
` \ / \ /
`\
`/
`\
`/
`Local Network 1
`Local Network 2
` Local Network 1 Local Network 2
`
`Transmission Path
` Transmission Path
`
`Figure 2
` Figure 2
`
`[Page 6]
`[Page 6]
`
`NFLE Ex. 1010 - Page 6
`
`NFLE 1010 - Page 11
`
`
`
`
`September 1981
`September 1981
` Internet Protocol
`Internet Protocol
`Overview
` Overview
`
`2.3. Function Description
`2.3. Function Description
`
`The function or purpose of Internet Protocol is to move datagrams
` The function or purpose of Internet Protocol is to move datagrams
` through an interconnected set of networks. This is done by passing
`through an interconnected set of networks. This is done by passing
` the datagrams from one internet module to another until the
`the datagrams from one internet module to another until the
` destination is reached. The internet modules reside in hosts and
`destination is reached. The internet modules reside in hosts and
` gateways in the internet system. The datagrams are routed from one
`gateways in the internet system. The datagrams are routed from one
` internet module to another through individual networks based on the
`internet module to another through individual networks based on the
` interpretation of an internet address. Thus, one important mechanism
`interpretation of an internet address. Thus, one important mechanism
`of the internet protocol is the internet address.
` of the internet protocol is the internet address.
`
`In the routing of messages from one internet module to another,
` In the routing of messages from one internet module to another,
`datagrams may need to traverse a network whose maximum packet size is
` datagrams may need to traverse a network whose maximum packet size is
` smaller than the size of the datagram. To overcome this difficulty, a
`smaller than the size of the datagram. To overcome this difficulty, a
`fragmentation mechanism is provided in the internet protocol.
` fragmentation mechanism is provided in the internet protocol.
`
` Addressing
`Addressing
`
`A distinction is made between names, addresses, and routes [4]. A
` A distinction is made between names, addresses, and routes [4]. A
` name indicates what we seek. An address indicates where it is. A
`name indicates what we seek. An address indicates where it is. A
` route indicates how to get there. The internet protocol deals
`route indicates how to get there. The internet protocol deals
`primarily with addresses. It is the task of higher level (i.e.,
` primarily with addresses. It is the task of higher level (i.e.,
`host-to-host or application) protocols to make the mapping from
` host-to-host or application) protocols to make the mapping from
`names to addresses. The internet module maps internet addresses to
` names to addresses. The internet module maps internet addresses to
` local net addresses. It is the task of lower level (i.e., local net
`local net addresses. It is the task of lower level (i.e., local net
` or gateways) procedures to make the mapping from local net addresses
`or gateways) procedures to make the mapping from local net addresses
` to routes.
`to routes.
`
` Addresses are fixed length of four octets (32 bits). An address
`Addresses are fixed length of four octets (32 bits). An address
`begins with a network number, followed by local address (called the
` begins with a network number, followed by local address (called the
` "rest" field). There are three formats or classes of internet
`"rest" field). There are three formats or classes of internet
` addresses: in class a, the high order bit is zero, the next 7 bits
`addresses: in class a, the high order bit is zero, the next 7 bits
` are the network, and the last 24 bits are the local address; in
`are the network, and the last 24 bits are the local address; in
` class b, the high order two bits are one-zero, the next 14 bits are
`class b, the high order two bits are one-zero, the next 14 bits are
` the network and the last 16 bits are the local address; in class c,
`the network and the last 16 bits are the local address; in class c,
` the high order three bits are one-one-zero, the next 21 bits are the
`the high order three bits are one-one-zero, the next 21 bits are the
` network and the last 8 bits are the local address.
`network and the last 8 bits are the local address.
`
` Care must be taken in mapping internet addresses to local net
`Care must be taken in mapping internet addresses to local net
` addresses; a single physical host must be able to act as if it were
`addresses; a single physical host must be able to act as if it were
` several distinct hosts to the extent of using several distinct
`several distinct hosts to the extent of using several distinct
` internet addresses. Some hosts will also have several physical
`internet addresses. Some hosts will also have several physical
`interfaces (multi-homing).
` interfaces (multi-homing).
`
` That is, provision must be made for a host to have several physical
`That is, provision must be made for a host to have several physical
` interfaces to the network with each having several logical internet
`interfaces to the network with each having several logical internet
` addresses.
`addresses.
`
` [Page 7]
`[Page 7]
`
`NFLE Ex. 1010 - Page 7
`
`NFLE 1010 - Page 12
`
`
`
`
` September 1981
`September 1981
`Internet Protocol
`Internet Protocol
`Overview
`Overview
`
` Examples of address mappings may be found in "Address Mappings" [5].
`Examples of address mappings may be found in "Address Mappings" [5].
`
` Fragmentation
`Fragmentation
`
` Fragmentation of an internet datagram is necessary when it
`Fragmentation of an internet datagram is necessary when it
` originates in a local net that allows a large packet size and must
`originates in a local net that allows a large packet size and must
` traverse a local net that limits packets to a smaller size to reach
`traverse a local net that limits packets to a smaller size to reach
` its destination.
`its destination.
`
`An internet datagram can be marked "don't fragment." Any internet
` An internet datagram can be marked "don’t fragment." Any internet
` datagram so marked is not to be internet fragmented under any
`datagram so marked is not to be internet fragmented under any
` circumstances. If internet datagram marked don’t fragment cannot be
`circumstances. If internet datagram marked don't fragment cannot be
` delivered to its destination without fragmenting it, it is to be
`delivered to its destination without fragmenting it, it is to be
` discarded instead.
`discarded instead.
`
` Fragmentation, transmission and reassembly across a local network
`Fragmentation, transmission and reassembly across a local network
`which is invisible to the internet protocol module is called
` which is invisible to the internet protocol module is called
` intranet fragmentation and may be used [6].
`intranet fragmentation and may be used [6].
`
`The internet fragmentation and reassembly procedure needs to be able
` The internet fragmentation and reassembly procedure needs to be able
` to break a datagram into an almost arbitrary number of pieces that
`to break a datagram into an almost arbitrary number of pieces that
` can be later reassembled. The receiver of the fragments uses the
`can be later reassembled. The receiver of the fragments uses the
` identification field to ensure that fragments of different datagrams
`identification field to ensure that fragments of different datagrams
`are not mixed. The fragment offset field tells the receiver the
` are not mixed. The fragment offset field tells the receiver the
`position of a fragment in the original datagram. The fragment
` position of a fragment in the original datagram. The fragment
` offset and length determine the portion of the original datagram
`offset and length determine the portion of the original datagram
` covered by this fragment. The more-fragments flag indicates (by
`covered by this fragment. The more-fragments flag indicates (by
` being reset) the last fragment. These fields provide sufficient
`being reset) the last fragment. These fields provide sufficient
`information to reassemble datagrams.
` information to reassemble datagrams.
`
`The identification field is used to distinguish the fragments of one
` The identification field is used to distinguish the fragments of one
` datagram from those of another. The originating protocol module of
`datagram from those of another. The originating protocol module of
` an internet datagram sets the identification field to a value that
`an internet datagram sets the identification field to a value that
` must be unique for that source-destination pair and protocol for the
`must be unique for that source-destination pair and protocol for the
` time the datagram will be active in the internet system. The
`time the datagram will be active in the internet system. The
` originating protocol module of a complete datagram set