28.2. Fragmentation (FRAG2)

This protocol fragments messages that are larger than a certain size, and reassembles them at the receiver's side. It works for both unicast and multicast messages. It is configured with the FRAG2 sub-element in the JGroups config element. Here is an example configuration:
  
      <FRAG2 frag_size="60000"/>
The configurable attributes in the FRAG2 element are as follows.
  • frag_size specifies the maximum message size (in bytes) before fragmentation occurs. Messages larger than this size are fragmented. For stacks that use the UDP transport, this value must be lower than 64 kilobytes (the maximum UDP datagram size). For TCP-based stacks, it must be lower than the value of max_credits in the FC protocol.

Note

TCP protocol already provides fragmentation, but a JGroups fragmentation protocol is still required if FC is used. The reason for this is that if you send a message larger than FC.max_credits, the FC protocol will block forever. So, frag_size within FRAG2 must always be set to a value lower than that of FC.max_credits.