IP Fragmentation

Why
IP fragmentation is important because it is the consequence of our underlying capabilities and more importantly, it is important because it puts a performance overhead on our end systems

What
IP fragmentation occurs when the IP datagram we are trying to transmit across our communcation link exceed's the link's maximum transmission unit (MTU). Therefore, we need to break up our datagram into multiple link layer frames in order to successfully transmit the datagram

Jolt2 Attack
IP fragmentation makes the network very weak to certain types of DDoS attacks in which we send a server a random set of unexpected fragments in which none of them have a flag set to 0 and the system will never cease because it believes that we have not yet received the last packet

How

 * 1) We have a IP datagram that exceeds our MTU
 * 2) We split up our datagram into multiple link layer frames that will fit inside the MTU
 * 3) We set the identification field in the IPv4 datagram to the original identification field of the datagram
 * 4) We set the flag field to be 1 if the frame is not the last frame and 0 if the frame is the last frame
 * 5) We set the offset field to specify where the datagram fits according to the original datagram because we must preserve the message order