Multi-host defragmentation channel operation example

The defragmentation channel supports operating in a setup where multiple hosts share the same defragmentation database. In such setups, the routing of message fragments to and between defragment channels on a multi-host setup (when multiple hosts are  sharing the same defragment database) is as follows:



 " " arrives on   host 1, and is routed to the defragment channel on host 1 due to the      keyword being present on what would otherwise    be the destination/outbound channel. 

 The defragment channel on host 1 runs, checks the defragment   database for whether any other parts of this message have yet arrived. None have, so the defragment channel (on host 1) enters this part into   the defragment database marking the part as being on host 1. 

 " " arrives on   host 2, and is routed to the defragment channel on host 2 due to the      keyword being present on what would otherwise    be the destination/outbound channel. 

 The defragment channel on host 2 runs, checks the defragment   database, sees that part x of this message is already present and    stored on host 1. So the host 2 defragment channel redirects the   message over to host 1 (source routes the address with     ). 

 " " arrives on   host 1, is routed to the defragment channel, the host 1 defragment    channel runs and enters it into the database, etc. 

 Eventually, the "final" fragment of the message gets to   host 1 (possibly having first gone through another host such as host 2,    which then routed the message to host 1). The defragment channel runs   and now sees that it has all the fragments of the message, reassembles    them all into the original message, and sends the message onwards to    the intended recipient. 



See also:
 * Defragmentation channel
 * Multi-host defragmentation channel operation