This is automatically generated documentation. Edit after the "COMMENTS" heading; changes to the main body will be lost.

IPFragmenter Element Documentation


IPFragmenter -- Click element; fragments large IP packets


IPFragmenter(MTU, [keywords HONOR_DF, VERBOSE])

Ports: 1 input, 1-2 outputs
Processing: push
Package: ip (core)


Expects IP packets as input. If the IP packet size is <= MTU, just emits the packet on output 0. If the size is greater than MTU and the don't-fragment bit (DF) isn't set, IPFragmenter splits the packet into fragments emitted on output 0. If DF is set and the packet size is greater than MTU, sends the packet to output 1 (but see HONOR_DF below). Ordinarily output 1 is connected to an ICMPError element with type 3 (UNREACH) and code 4 (NEEDFRAG). Copies all annotations to the fragments. Sends the fragments in order, starting with the first. It is best to Strip() the MAC header from a packet before sending it to IPFragmenter, since any MAC header is not copied to second and subsequent fragments. Keyword arguments are:

Boolean. If HONOR_DF is false, IPFragmenter will ignore the don't-fragment (DF) bit and fragment every packet larger than MTU. Default is true.
Boolean. If true, IPFragmenter will print a message every time it sees a packet with DF; otherwise, it will print a message only the first 5 times. Default is false.
Unsigned. Sets the headroom on the output packets to an explicit value, rather than the default (which is usually about 28 bytes).


 ... -> fr::IPFragmenter(1024) -> Queue(20) -> ...
 fr[1] -> ICMPError(, 3, 4) -> ...


ICMPError, CheckLength

Generated by 'click-elem2man' from '../elements/ip/ipfragmenter.hh:8' on 12/Jul/2011.


elements/ipfragmenter.txt · Last modified: 2011/07/12 11:29 (external edit)
Recent changes RSS feed Driven by DokuWiki