[Spread-users] Basic question about communication between daemons

John Lane Schultz jschultz at spreadconcepts.com
Mon Aug 18 08:05:55 EDT 2008


When each daemon is in their own segment, then they communicate using unicast UDP.  Each SP_multicast then translates to N-1 UDP unicasts at the daemon level: one unicast for each "downstream" daemon.  As the # of daemons increases, this approach gets expensive.

The fact that you can ping your broadcast address and get responses indicates that your system has the *capability* to do broadcast at least, but it has been somehow disabled for Spread.  

I would talk to whomever administers the switch or router that controls this subnet and make sure that it is setup to allow broadcast and multicast on your ports.  That person would probably also be aware of any kind of filtering / firewalls going on at the network level.  You should also look into the machines themselves and make sure they don't have their own firewalls that would disallow incoming UDP multicasts or broadcasts.  

I'd bet the problem is in your network though.

Cheers!
John

---
John Lane Schultz
Spread Concepts LLC
Phn: 443 838 2200 
Fax: 301 560 8875

Monday, August 18, 2008, 7:11:06 AM, you wrote:


> Yes, putting each daemon on their own segment can communicate. Ok,
> now I know that is a broadcast/multicast problem on my network. But,
> to clear my mind, with this configuration, each daemon on its
> segment, how is done the communication, Unicast?

> Thanks for your help John and John  

> On Mon, Aug 18, 2008 at 10:25 AM, John Lane Schultz
> <jschultz at spreadconcepts.com> wrote:
> Just because ping traffic is allowed doesn't necessarily mean that
> traffic on other ports is not blocked.

> One thing to make sure of is that you send some client generated
> traffic after the daemons are started.  You can do this using
> sp_user or another Spread client program.

> You can also try putting each of your daemons in their own
> Spread_Segment and see if they can then communicate.  If they can,
> then something is most likely amiss with your network
> broadcast/multicast, or the way you are using it.  If they can't,
> then a firewall is likely blocking (incoming) UDP traffic on unrecognized ports.

> Spread_Segment 127.0.0.1:4803 {
>  host1     10.113.101.165
> }

> Spread_Segment 127.0.0.1:4803 {
>  host2     10.113.101.164
> }

> Cheers!
> John

> ---
> John Lane Schultz
> Spread Concepts LLC
> Phn: 443 838 2200
> Fax: 301 560 8875


> Monday, August 18, 2008, 3:52:03 AM, you wrote:

>> Hi again,

>> I still have not resolved the problem. I have tested with the
>> multicast address 224.0.0.1, with 227.227.227.227 and with the
>> broadcast address 10.113.101.255 with the same result.

>> When I execute

>> $ ping -b 10.113.101.255
>> WARNING: pinging broadcast address
>> PING 10.113.101.255 (10.113.101.255) 56(84) bytes of data.
>> 64 bytes from 10.113.101.165: icmp_seq=1 ttl=64 time=0.115 ms
>> 64 bytes from 10.113.101.164: icmp_seq=1 ttl=64 time=0.263 ms (DUP!)

>> $ ping -b 224.0.0.1
>> PING 224.0.0.1 (224.0.0.1) 56(84) bytes of data.
>> 64 bytes from 10.113.101.165: icmp_seq=1 ttl=64 time=0.125 ms
>> 64 bytes from 10.113.101.164: icmp_seq=1 ttl=64 time=0.298 ms (DUP!)

>> I see that the ping is working so no firewall is blocking the requests.

>> Any idea? I'm stuck

>> On Fri, Aug 8, 2008 at 6:23 PM, John Robinson <jr at vertica.com> wrote:
>> Another thing to check is that the broadcast address and mask are
>> correct for the attached network.  Check with route or netstat -r or
>> ifconfig or ipconfig (depending on you platform).

>> /jr
>> ---
>> John Lane Schultz wrote:

>> No, they should hear each others' traffic.  More than likely your daemons
>> are not finding one another.  The most likely reason I can think of for that
>> is that your network isn't allowing broadcast.  Try a multicast address
>> instead:

>> Spread_Segment  227.227.227.227:4803 {
>>  host1     10.113.101.165  host2     10.113.101.164
>> }

>> Cheers!

>> ---
>> John Lane Schultz
>> Spread Concepts LLC
>> Phn: 443 838 2200 ________________________________________
>> From: spread-users-bounces at lists.spread.org
>> [mailto:spread-users-bounces at lists.spread.org] On Behalf Of Mr antback
>> Sent: Friday, August 08, 2008 8:09 AM
>> To: spread-users at lists.spread.org
>> Subject: [Spread-users] Basic question about communication between daemons

>> Hi all,
>> I have some doubts about how spread works. I have two machines
>> spread.conf (same on both nodes):
>> Spread_Segment  10.113.101.255:4803 {
>>  host1     10.113.101.165  host2     10.113.101.164
>> }

>> Trying to comunicate both, I run this command on host2:
goodfood at host2>>>  ./spuser -s 4803
>> Spread library version is 4.0.0
>> User: connected to 4803 with private group #user#host2

>> and join the group "monitor". Now here is the doubt. If on the host1 I
>> connect like this:

goodfood at host1>>> ./spuser -s 4803

>> joining the group "monitor" and sending a message, host2 doesn't receive the
>> message.
>> but instead if I connect like this:
goodfood at host1>>> ./spuser -s 4803 at host2

>> It works. Is this the expected behaviour? I supposed that every daemon
>> communicates with each others. Where could it be the problem?
>> Thanks



>> _______________________________________________
>> Spread-users mailing list
>> Spread-users at lists.spread.org
>> http://lists.spread.org/mailman/listinfo/spread-users











More information about the Spread-users mailing list