[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