You are on page 1of 2


Linux kernel provides with the most efficient TCP/IP protocol
stack implementation. In this project we aim at customization of the
protocol stack by introducing a new protocol subsystem in the
transport layer of the TCP/IP stack. The new protocol can be defined
as IP Compression,IP payload compression is a protocol to reduce
the size of IP datagrams. This protocol will increase the overall
communication performance between a pair of communicating
hosts/gateways ("nodes") by compressing the datagrams, provided
the nodes have sufficient computation power, through either CPU
capacity or a compression coprocessor, and the communication is
over slow or congested links.

The IP Payload Compression allows the compression of IP
datagrams by supporting different compression algorithms. In this
project we make use of the DEFLATE compression algorithm.
DEFLATE is a lossless data compression algorithm that uses a
combination of the LZ77 algorithm and Huffman coding.
The project include's the following modules,
1.Netfilter Subsystem Implementation
2.Packet Compression
3.Packet Decompression
4.Embedding of Ipcomp header on to the packet

1.Netfilter Subsystem Implementation

Netfiter is a framework for packet mangling,outside the normal
socket interface. In network computers communicate by
transmitting and receiving digital data packets. It has ability to
redirect, modify or stop these data packets based on where they
come from (the source), or where they are going to (the
destination) or on other criteria - including the actual data
contained in the data packet (the payload).

2.Packet Compression
The compression process entails compressing the data from
the IP datagram and placing the result after the IPComp header. For
example, compressing a TCP datagram;
Before: IP TCP ...
After: IP IPCOMP (TCP ...)
3.Packet Decompression
If the received datagram is compressed, the receiver must
reset the decompression history prior to processing the datagram.
This ensures that each datagram can be decompressed
independently of any other, as is needed when datagrams are
received out of order. Following the reset of the decompression
history, the receiver decompresses the Payload Data field.
4.Embedding of Ipcomp header on to the packet
IPComp header is inserted immediately preceding the
compressed payload. The original IP header is modified to indicate
the usage of the IPComp protocol and the reduced size of the IP