Section: ipv4
Protocols
Family Number
802 2048
PCAP DLT_RAW
GRE 2048
PPP 0x21
IPV4 4
IPV4 94

Endian: endian_big
Protocol description
Reference: RFC-791

The Internet Protocol is designed for use in interconnected systems of packet-switched computer communication networks. The internet protocol provides for transmitting blocks of data called datagrams from sources to destinations, where sources and destinations are hosts identified by fixed length addresses. The internet protocol also provides for fragmentation and reassembly of long datagrams, if necessary, for transmission through "small packet" networks.

The internet protocol is specifically limited in scope to provide the functions necessary to deliver a package of bits (an internet datagram) from a source to a destination over an interconnected system of networks. There are no mechanisms to augment end-to-end data reliability, flow control, sequencing, or other services commonly found in host-to-host protocols. The internet protocol can capitalize on the services of its supporting networks to provide various types and qualities of service.

This protocol is called on by host-to-host protocols in an internet environment. This protocol calls on local network protocols to carry the internet datagram to the next gateway or destination host.

The internet protocol implements two basic functions: addressing and fragmentation. The internet modules use the addresses carried in the internet header to transmit internet datagrams toward their destinations. The selection of a path for transmission is called routing. The internet modules use fields in the internet header to fragment and reassemble internet datagrams when necessary for transmission through "small packet" networks.


Sections:
Name: Hdr
Name: Hdr
Field name Field type Field size Field description
version Integer 4
header_length Integer 4
tos Integer 8
length Integer 16
id Integer 16
flags_offset Integer 16
ttl Integer 8
protocol Integer 8
checksum Integer 16
source ipv4_addr -
destination ipv4_addr -
payload Binary Large Object - Payload data.
Name: flags_offset
Name: flags_offset
Field name Field type Field size Field description
flags_offset Integer 16
Name: class_one_option
Name: class_one_option
Field name Field type Field size Field description
option Integer 8
Name: security_option
Name: security_option
Field name Field type Field size Field description
type Integer 8
length Integer 8
security Integer 16
compartments Integer 16
handling_restrictions Integer 16
tcc_field Integer 24
unused Integer 8
Name: loose_source_and_record_route_option
Name: loose_source_and_record_route_option
Field name Field type Field size Field description
type Integer 8
length Integer 8
pointer Integer 8
Name: strict_source_and_record_route_option
Name: strict_source_and_record_route_option
Field name Field type Field size Field description
type Integer 8
length Integer 8
pointer Integer 8
Name: record_route_option
Name: record_route_option
Field name Field type Field size Field description
type Integer 8
length Integer 8
pointer Integer 8
Name: internet_timestamp_option
Name: internet_timestamp_option
Field name Field type Field size Field description
type Integer 8
length Integer 8
pointer Integer 8
overflow Integer 4
flag Integer 4
Name: stream_identifier_option
Name: stream_identifier_option
Field name Field type Field size Field description
type Integer 8
length Integer 8
stream_id Integer 16

RCS ID: "$Id: ipv4.xml,v 1.5 2001/10/31 21:21:05 tlewis Exp $"