FRAGMENTATION - An Internetworking concept Shashwat Shriparv [email protected] InfinitySoft
What is fragmentation? Splitting up things into smaller more manageable entities for incorporating ease in use and flexibility in transport. Where could it possibly come in Networks ?
Each n/w imposes some maximum size on its packets, the reason being; Hardware (frame size) Operating System (buffers size 512 bytes) Protocols (no. of bits in packet length field) Compliance with some standard To reduce error-induced retransmission to some level Prevent packet from choking channel
Problems A large packet wants to travel through a network whose maximum packet size is small. What if the original source packet is too large to be handled by the destination network? Routing algorithms to prevent such situation (not applicable)
Fragmentation in networks Allow gateways to break up packets into fragments, sending each packet as a separate internet packet Breaking up a thing is easy, but fixing it back is not that easy
Types of fragmentation Transparent Non transparent
Transparent Fragmentation Caused by a “small packet” network transparent to any subsequent networks through which the packet may pass on its way to the destination Gateways fragment oversized packets, each addressed to the same exit gateway, where they are recombined The process carries on until destination is reached
Problems Exit gateway should know that it has received all fragments to start combination sequence All packets must exit via the same gateway, else data loss occurs Overhead required to fragment and reassemble at each gateway
Non transparent Fragmentation Refrain from recombining fragments at intermediate gateways Fragments are considered as packets and are passed through the gateways Recombination occurs only at the destination host IP follows this methodology
Problems Requires all hosts to do Reassembly Increases overhead, larger the packet, more the headers An advantage being multiple exit gateways can be employed increasing the efficiency of the transmission
Schemes Fragments should be numbered in a way that aids recombination Trees can be used 0 can be split as 0.1, 0.2, 0.3 ….. These can be again fragmented as 0.0.0, 0.0.1, 0.0.2, …….., 0.1.0, 0.1.1 etc. Only if enough space is reserved in header such terminology can be employed Sufficient to reorder fragments