Hello. Thanks for developing udpcast. It almost compiles on my mac. But I have to make a few small changes.
1.) the linker doesn't support the -Wl,-warn-common option 2.) what is malloc.h? It isn't needed. 3.) struct ifreq is variable size, so we must use _SIZEOF_ADDR_IFREQ (), not pointer arithemetic 4.) some endian issues
Thanks, Devin Bayer
Devin Bayer wrote:
Hello. Thanks for developing udpcast. It almost compiles on my mac. But I have to make a few small changes.
1.) the linker doesn't support the -Wl,-warn-common option 2.) what is malloc.h? It isn't needed. 3.) struct ifreq is variable size, so we must use _SIZEOF_ADDR_IFREQ(), not pointer arithemetic 4.) some endian issues
Thanks, Devin Bayer
This patches are now in today's version (20070129)
Regards,
Alain
Hello everybody,
udpcast works very fine on all of my switches, without one. udpcast worked also always very fine on that "special" switch (cisco 3560), but only on the last time it works not. That means: some time earlier, it worked on that switch without any problems , but only on last time it works not. i am only a "switchuser", that means that i am not be able to administrate the switches. the administrator of the switches said, that all switches have got the same configuration.
let me illustrate the network: all workgroup-switches (cisco 2950, 3560 - which being used with udpcast) are connected (cascaded) to a cisco 6509 switching-factory with fibre-channel cables. all these components constitute a layer 2 network (ethernet). behind the cisco 6509 stands a cisco router (the next layer 3 instance, also connected with fibre channel, i don't know the type of this router), which manages the network- routing-protocolls, that means it should be also interesting for udpcast mc-routing.
udpcast does not work on the one cisco 3560. if i use 2 nodes (1 sender , 1 receiver -- unicast) on that switch it works very well, but with more than 2 reciever-nodes (multicast) it doesn't work. every modern cisco switch has got a so called "Multicast Forwarding Table" which binds all multicast ports (all systems from the "udp-receiver/sender-Multicastgroup" ) via igmp-snooping (some thing that can be done from the switch from layer 3) on one "Multicast-Mac-Address". this Multicast-Mac-Address would be anounced through the cisco switching-factory 6509 until the next cisco-router (layer 3 instance) is reached. now the udp-sender establishes a connection to this MC-group (mac-adresses, binded ports on the switch) and begins to send the multcast-data. now the clients do not answer -- i think: maybe, it is a broadcast issue on that switch (vlan -- configuration), the udp-sender needs a message that a mc-packet is arrived correctly to the receiver (broadcast control sender<-->receiver from the program itself can't work correctly). the udp-reciever stalles and the sender prints all the timouts from the receivers) -- could this be the issue here? Or the routing itself on the next layer 3 instance -- i mean, that the layer 3 could not route the mc-pakets to the given mc-adress? or the "Multicast Forwarding Table" can only register 1 port (receiver) for multicasting?
Here is the output from the sender:
(two receivers, it works not):
Udp-sender 2003-08-31 Using mcast address 237.48.205.71 UDP sender for (stdin) at 141.48.205.71 on eth0 Broadcasting control to 141.48.205.255 New connection from 141.48.205.132 (#0) 00000019 Ready. Press any key to start sending data. New connection from 141.48.205.131 (#1) 00000019 Ready. Press any key to start sending data. Starting transfer: 00000019 bytes= 570 752 re-xmits=000000 ( 0.0%) slice=0056 73 709 551 615 - 1 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815 Timeout notAnswered=[0,1] notReady=[0,1] nrAns=0 nrRead=0 nrPart=2 avg=7815
---------------------------------------------------------------------------
(one receiver, it works):
Udp-sender 2003-08-31 Using mcast address 237.48.205.71 UDP sender for (stdin) at 141.48.205.71 on eth0 Broadcasting control to 141.48.205.255 New connection from 141.48.205.131 (#0) 00000019 Ready. Press any key to start sending data. Starting transfer: 00000019 bytes= 88 042 864 re-xmits=000000 ( 0.0%) slice=0056 73 709 551 615 - 0 ------------------------------------------------------------------------------------
I hope someone can help me out or give me a hint -- and sorry for my bad english!
Best Greatings
Stefan Jäckel