[Spread-users] Problem with segement in spread

John Schultz jschultz at spreadconcepts.com
Sun Nov 16 14:51:33 EST 2003


Hi Akezyt,

Most of the recent papers (within the last couple of years) that talk 
about the design of Spread itself are referring to the WAN research 
version of Spread, which is not publicly available by default.  If you 
have interest in getting a copy of that version, you should contact the 
CNDS folks to discuss it.

The open source version of Spread (v 3.*.*) uses the Ring protocol for 
communicating control traffic amongst ALL of the daemons.  Spread 
attempts to form one Ring that includes all of the daemons and then uses 
unicast token passing for its control traffic.

Data messages are sent on segments using broad/multicast and data 
messages are forwarded between segments using a unicast UDP protocol. 
In the open source version of Spread a data message sent in the system 
propagates to all of the segments.  An optimization could be made (but 
currently isn't) where the headers propagate everywhere but the data 
payload only propagates to segments where there are subscribed members.

In that sense Spread 3 does not provide traffic isolation between 
segments.  So, unless you modify Spread's source to make that 
optimization you will have unnecessary data traffic going to uninvolved 
segments no matter what.

Your configuration strikes me as wrong in the sense that you are 
attempting to have multiple segments exist within the same broadcast 
medium (a hubbed ethernet subnet).  The main purpose of segments is for 
the system to be configured to exploit such broadcast medium as much as 
possible.

The fact that you have two segments within a single unswitched broadcast 
medium probably causes there to be two to three times the amount of 
traffic there should be.  For example, a msg is sent by a member in Seg1 
so it is broadcasted there, the repr. of Seg1 forwards the msg to Seg2, 
the repr. of Seg2 broadcasts it for its segment.  So in an unswitched 
environment the message is effectively broadcasted 3 times, at a 
minimum, on the same medium. This is obviously not what you want.

To minimize your traffic, all the daemons that sit on the same broadcast 
medium should be in the same segment.  If you want to experiment with 
multiple segments they really should be on different broadcast mediums 
(Spread will still work, it will just generate lots of unnecessary 
traffic).

If have a switch with good multicast support, then you could experiment 
with multiple segments even within the same broadcast medium, as the 
switch can block unnecessary MULTICAST traffic from getting to the 
different segments.

--
John Lane Schultz
Spread Concepts LLP
Phn: 443 838 2200






More information about the Spread-users mailing list