Home

Search the web

+Networks

+Networking
+OSI

+Ethernet

+TCP/IP
+Network Cabling
+Token Ring

-Packet Structure

 

 
MAGAZINE
New Issue
Subscribe
 
INFORMATION
Advertising
Contacts

MAX PC NETWORK
About the Network
Join the Network

 

 

PACKET STRUCTURE 

"A packet is the unit of data that is routed between an origin and a destination on the Internet or any other packet-switched network. When any file (e-mail message, HTML file, Graphics Interchange Format file, Uniform Resource Locator request, and so forth) is sent from one place to another on the Internet, the Transmission Control Protocol (TCP) layer of TCP/IP divides the file into "chunks" of an efficient size for routing. Each of these packets is separately numbered and includes the Internet address of the destination. The individual packets for a given file may travel different routes through the Internet. When they have all arrived, they are reassembled into the original file (by the TCP layer at the receiving end).

A packet-switching scheme is an efficient way to handle transmissions on a connectionless network such as the Internet. An alternative scheme, circuit-switched, is used for networks allocated for voice connections. In circuit-switching, lines in the network are shared among many users as with packet-switching, but each connection requires the dedication of a particular path for the duration of the connection.

"Packet" and "datagram" are similar in meaning. A protocol similar to TCP, the User Datagram Protocol(UDP) uses the term datagram. "  WHATIS.COM

 

The contents of a packet is as follows:

 




Version: 4 bits

This field indicates the format of the packet. 

 

Header Length: 4 bits


This is the length of the packet header in 32 bit words (the minimum value for a correct header is 5.) and points to the beginning of the data. Note that

Type of Service: 8 bits

This provides an indication of the abstract parameters of the quality of service desired. When transmitting a datagram through a particular network these are used to guide the selection of the actual service parameters. Some networks offer service precedence, which somehow treats high precedence traffic as more important than other traffic (generally by accepting only traffic above a certain precedence at time of high load). The major choice is a three way tradeoff between low-delay, high-reliability, and high-throughput.

top

 

Bits 0-2:  Precedence. 
Bit 3:  0 = Normal Delay, 1 = Low Delay. 
Bit 4:  0 = Normal Throughput, 1 = High Throughput. 
Bit 5:  0 = Normal Relibility, 1 = High Relibility. 
Bit 6-7:  Reserved for Future Use. 

 

Precedence

111 -  Network Control  011 -  Flash 
110 -  Internet work Control  010 -  Immediate 
101 -  CRITIC/ECP  001 -  Priority 
100 -  Flash Override 000 -  Routine 

  
Delay, Throughput, and Reliability are used to indications may increase the cost of the service. Better performance for one of these parameters is coupled with worse performance on another. Exceptionally for some unusual cases at most two of these three indications should be set. 
  
Each type of service specifies the treatment of the datagram during its transmission through a network system. Each network determines the use and control of that designation. Controls designation is used by gateway control originators only. The access to, and use of, precedence designations are determined by individual networks dependent on how confidence the network has on these precedence designations. 

Total Length: 16 bits 

  
This measured in octets, including the header and data. The length of a datagram can be up to 65,535 octets but impractical for most hosts and networks. All hosts must accept either whole or in fragments, arriving datagrams of up to 576 octets. 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


This is an identifying value assigned by the sender to aid in assembling the fragments of a datagram.

top

Flags: 3 bits 

 

Control Flags. 

 

 

Bit 0:  reserved, must be zero 
Bit 1:  (DF) 0 = May Fragment, 1 = Don't Fragment.
Bit 2:  (MF) 0 = Last Fragment, 1 = More Fragments. 

 

Fragment Offset: 13 bits

 
Identifies the position of the fragment in the datagram and it is measured in units of 8 octets (64 bits). The first fragment has offset zero. 

Time to Live (TTL): 8 bits 

This indicates the maximum time the datagram is allowed to remain in the internet system. datagram is destroyed. if this field contains the value zero. This field is modified in the header processing. The time is measured in units of seconds, every module that processes a datagram decreases the TTL by at least one even if it process the datagram in less than a second, the TTL must be thought of only as an upper bound on the time a datagram may exist. The intention is to cause undeliverable datagrams to be discarded, and to bound the maximum datagram lifetime. 

Header Checksum: 16 bits 

Header checksum is on the header only and is recomputed and verified at each point the header is processed as some header fields are subject to change (e.g., time to live) 
  
The checksum algorithm is 


Source Address: 32 bits 

The source address.

  
Destination Address: 32 bits 


The destination address. 

top


Options: variable 


May or may not appear in datagrams bust be implemented by all IP modules. Transmission in any particular datagram is optional, but not their implementation. Some network environment may require security option in all datagrams. There may be zero or more options (this field's has a variable length).


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.


Option-length octet counts the option-type octet, the option-length octet and option-data octets. 


 The option-type octet has 3 fields: 

  • 1 bit copied flag, 

  • 2 bits option class, 

  • 5 bits option number. 

The copied flag indicates that this option is copied into all fragments on fragmentation.

 
0 = not copied
1 = copied


The option classes are: 


0 = control
1 = reserved for future use
2 = debugging and measurement
3 = reserved for future use

The following options are defined: 

CLASS  NUMBER LENGTH  DESCRIPTION 
End of Option list. This option occupies only 1 octet; it has no length octet. 
No Operation. This option occupies only 1 octet; it has no length octet.
11  Security. Used to carry Security, Compartmentation, User Group (TCC), and Handling Restriction Codes compatible with DOD requirements. 
0 var. Loose Source Routing. Used to route the internet datagram based on information supplied by the source. 
var. Strict Source Routing. Used to route the internet datagram based on information supplied by the source. 
var.  Record Route. Used to trace the route an internet datagram takes. 
Stream ID. Used to carry the stream identifier. 
var.  Internet Timestamp. 

top

 

  •  End of Option List


+---------+
|00000000|
+---------+
Type=0


This option indicates the end of the option list and might not coincide with the end of the header. Used at the end of all options( not the end of each option)
Note only to be used if the end of the options would not coincide with the end of the header. 
This may be copied, introduced, or deleted on fragmentation, or for any other reason.

 

  • 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, or for any other reason.

 

  • Security 

The format for this option is as follows and it provides a way for hosts to send security, compartmentation, handling restrictions, and TCC (closed user group) parameters. 


+---------+----------+----//---+------//-----+-----//------+---//---+ 
|10000010|00001011|SSS SSS| CCC CCC |  HHH HHH |  TCC   | 
+---------+----------+---//----+------//-----+-----//------+---//---+ 
 Type=130 Length=11 

top

Security (S field): 16 bits 


Tthis specifies one of 16 levels of security (eight of which are reserved for future use). 


00000000 00000000 - Unclassified 
11110001 00110101 - Confidential 
01111000 10011010 - EFTO 
10111100 01001101 - MMMM 
01011110 00100110 - PROG 
10101111 00010011 - Restricted 
11010111 10001000 - Secret 
01101011 11000101 - Top Secret 
00110101 11100010 - (Reserved for future use) 
10011010 11110001 - (Reserved for future use) 
01001101 01111000 - (Reserved for future use) 
00100100 10111101 - (Reserved for future use) 
00010011 01011110 - (Reserved for future use) 
10001001 10101111 - (Reserved for future use) 
11000100 11010110 - (Reserved for future use) 
11100010 01101011 - (Reserved for future use)

 

  • Compartments (C field): 16 bits 

  • Handling Restrictions (H field): 16 bits 

  • Transmission Control Code (TCC field): 24 bits


Loose Source and Record Route (LSRR)


+---------+--------+--------+---------//--------+ 
|10000011|  length  |  pointer  |      route data       | 
+---------+--------+--------+---------//--------+ 
Type=131 



Strict Source and Record Route (SSRR) 


+---------+--------+--------+---------//--------+ 
|10001001|  length  |  pointer  |       route data       | 
+---------+--------+--------+---------//--------+ 
Type=137 


Record Route 


+---------+--------+--------+---------//--------+ 
|00000111|   length  |  pointer |       route data      | 
+---------+--------+--------+---------//--------+ 
Type=7 



Stream Identifier 


+---------+----------+--------+--------+ 
|10001000|00000010|     Stream ID       | 
+---------+----------+--------+--------+ 
Type=136 Length=4 



Timestamp  

+---------+--------+--------+--------+ 
|01000100| length   |  pointer  | oflw| flg| 
+---------+--------+--------+--------+ 
| internet address | 
+---------+--------+--------+--------+ 
| timestamp | 
+---------+--------+--------+--------+ 
|                      .                                   | 
                       . 
                       . 
Type = 68

top  

 

Links            

 

InterNIC's home page 
Information on InterNIC's directory and database services, tools and resources for the Internet community.

IPv6: The Future of the Internet Protocols 
Describes the key issues in the work of the IETF IPng working group and attempts to provide a solid overview of IPv6 with reference to IPv4.

Protocols.com 
Comprehensive directory of some 200+ protocols with links to protocol standards and other protocol related Internet sites. Protocols listed include: ATM UNI, ATM signalling, Frame Relay, Ethernet, ISDN, PNNI, PPP, TCP/IP and many more.

Digital audio and IPv6 - thesis

Internet Protocol (IP) Overview
"Teach Yourself TCP/IP in 14 days" from Macmillan Computer Publishing. 

Yahoo!'s IP information and documentation page

Packet Structure   The following figure illustrates a structure of a packet 

IP Packet Structure  IP Packet Structure.

Routing Information Protocol (RIP)

Network Packet Labeling

The IP Address 

IP packet header 

IP Packet Processing

Example Packet Decodes

Operation of an IP Router

Router Overview

Bridge

Repeaters,

Hubs

Network (In)Security Through IP Packet Filtering

Routing Information Protocol (RIP)

UNDERSTANDING PACKET SWITCHING, ATM AND FRAME RELAY (PDF)   

Parallel IP Packet Forwarding for Tomorrow's IP Routers (PDF)  

bluetooth-dev] IP over Bluetooth - current structure

 

Examples of IP address


Topics            

 

IPX packet structure  
PC-TCS Network Interface  
KSnuffle - A KDE Network Sniffer  
TCP/IP Networking Training Courses: Understanding TCP/IP 

Books            

systems integration(amazon.com)

Distributed systems and Networks(amazon.com)

"Understanding Token Ring Protocols and Standards" by James T. Carlo, et.al. (amazon.com)

 
Home News Topics Resources Jobs About Us

Designed by Nwanganga, Chukwuemeka C.

Related Topics

SAP packet structure  
IP Packet Structure  
Network Packet Labeling  
Packet Structure  
IPX packet structur
 

more Topics   

Related Links 

Cisco Catalyst 8500 Series Multiservice Switch Routers ATM Cell  
 

more links

   

Win one of six Canon i865 colour bubblejet printers!

For competition rules and to enter, click here.

 

 

Latest issue