Networking :: Multicast UDP Packets Lost In Kernel
Jul 29, 2010
We have a high speed udp multicast connection. There are about 37 multicast groups and average incoming rate via the connection is about 20000 pkt/sec and peak 40000+ pkt/sec. Each packet is about 100-300 bytes. And there are 6 busiest multicast groups generating 80% of the traffic. No significant outgoing traffic via that interface. The problem is that, if our heavy-weight application create 37 sockets for all the groups, the packet loss become quite frequent. but if we create the 6 sockets for the busiest groups, the packet loss drops to 1/10 of the original level. We can confirm that the lost packets DO arrive in our box because a light-weight recorder on another box on the same ethernet segment can see the lost packets when listening to the same groups. If we start another heavy-weight application for the rest groups (31 groups ) on the same box, the packet loss just come back to the original level.
The packet loss happens not only to the heavy-weight application but also the light-weight recorder running on the same system. that is, the loss is system wide. The socket kernel buffer are all 4MB max and did not observe system buffer overflow. It seems the number of sockets listening to the same multicast group have the most negative impact on packet loss. And the higher traffic have a far less impact on packet loss than the number of sockets. It also seems that there is some limit in the kernel that when socket number are reduced under, the packet loss can significantly ease. How can I further diagnose the problem? Our system is RHEL 5.3 32bit i386, Xeon 2.9GHZ 16 Processors, 32GB memory. Two broadcom giga netowrk card and 6 Intel GIGA NIC, and only one interface card has so much traffic.
View 3 Replies
ADVERTISEMENT
Dec 10, 2008
I've got an application that compiles in Windows and Linux and is using UDP multicast to communicate. I'm running it on a Windows machine, a Linux machine and a small board (Gumstix) that is running Linux as well. The Windows and Linux machines have no problems sending/receiving packets with each other. The Gumstix and Linux machines have no problems sending/receiving packets with each other. The Gumstix can also send/receive packets with two instances of the application both running on the Gumstix.
But when running on the Gumstix I can send udp multicast packets to Windows, but cannot receive them. (It works if I do point to point with a known IP port#, but not multicast.) I can run tcpdump on the Gumstix and see the packets, but they are not being received on my socket. Here's what tcpdump (running on the Gumstix) outputs when sending the same packet from different sources. Notice the IP header ID and flags (don't fragment) are different when coming from Windows.
WINDOWS to Gumstix
-7:-45:-2.015784 IP (tos 0x0, ttl 15, id 35331, offset 0, flags [none], proto: UDP (17), length: 444) 172.30.42.3.1165 > 239.255.183.180.47028: UDP, length 416
LINUX to GUMSTIX
-7:-43:-38.451991 IP (tos 0x0, ttl 15, id 0, offset 0, flags [DF], proto: UDP (17), length: 444) 172.30.42.13.32771 > 239.255.183.180.47028: UDP, length 416
GUMSTIX to GUMSTIX
-7:-33:-10.955608 IP (tos 0x0, ttl 15, id 0, offset 0, flags [DF], proto: UDP (17), length: 444) 172.30.42.110.1025 > 239.255.183.180.47028: UDP, length 416
I've tried everything I can think of to get this to work but am not getting anywhere. Also I'm pretty inexperienced when it comes to Linux. Anything I could try to be able to receive udp multicast packets from Windows?
View 1 Replies
View Related
Sep 27, 2010
I have a hardware device with two ethernet ports, eth0 and eth1 running Centos 5. Basically my goal is to forward packets from eth0->eth1 and eth1->eth0 as well as get a copy of these packets for analysis. If I set IP routing to do the forwarding then I won't get a copy of the packets for analysis.
View 3 Replies
View Related
Jun 20, 2011
I'm trying to create and send my own ETH packets from inside the kernel.My objective to send the packages from layer 2 by building my own skbuffand sending itusingdev_queue_xmit().anyone did it or have examples of how to do it ?I tried to build my own skbuff without success.
View 1 Replies
View Related
Sep 15, 2010
As is known, there is a queue lies between the kernel subsystem and the network driver for incoming data. And if data come when this queue has no space for it, the data got dropped by kernel. Is there some way to see how many packets are dropped due to this buff penury? I tried netstat -s but could not find something useful. On the other hand, I found this 12176 packets collapsed in receive queue due to low socket buffer from netstat -s. I think this is something related to the per-socket buffer, but not the incoming queue between the network driver and kernel. Is this right?
View 1 Replies
View Related
Feb 8, 2010
i have a linux server runnig oracle applications. i need to access this server from putty using ssh through internet. i did by registering my static ip with the dnydns.org and i am able to connect to the server. but now there is no security to authenticate any user as any one knowing the password can login to it.
i thought of configuring the firewall of linux server but the client ip`s are not static and they change continiously. so thought of keeping one more pc between the server and the router which will do the work of authenticating. but i am confuse as how to configure it to allow the packets coming from the internet after authenticating and to by pass the packets generated from internal LAN?
View 8 Replies
View Related
Aug 30, 2010
i need to write a program in c that can sniff packets from Ethernet and distinguish RTP packets from Non-RTP packets, i have no idea what should i do
View 9 Replies
View Related
Sep 1, 2010
I have several multicast data feeds that I'm trying to connect to using a minimal server install of Ubuntu as a VM on a VMWare ESXi server.I have another VM on the same server running Solaris that can connect with no issues to the incoming multicast stream.
View 1 Replies
View Related
Mar 5, 2010
This is not a linux specific question more of a general network issue with the hope that someone may have already done this under linux.My problem:I have a red hat linux machine transmitting IP multicast packets onto an ethernet gigabit network (cisco switch).Wireshark (running on a different red hat linux box confirms packets on network.
View 4 Replies
View Related
Jul 30, 2010
If I have set up 2 network interfaces on a box, if I started sending multicast traffic, it will go out through both interfaces? Or is there a way to control through which interface it will go out?
View 1 Replies
View Related
Jun 23, 2011
For the last couple of days, I've been unsuccesfully trying to receive multicast packets on Ubuntu Server 11.04, and seen some strange things along the way. The program i use to test this, is basically http://www.scribd.com/doc/38224328/mcreceive-c.Now the network has been configured to forward me the multicast packets, regardless of the joins. So tcpdump shows me:
Code:
15:16:11.308952 IP 10.164.130.2.61417 > 224.16.17.23.47806: UDP, length 1400
...
[code]....
View 2 Replies
View Related
Apr 1, 2010
I have 4 interfaces, dvb0_0 - dvb0_3. Each one has a multicast stream coming in on it. The program I am using to decode these streams only accepts one interface though. How can I "combine" so that the program, listening on 1 ip can get all 4 streams? they are on groups 224.0.1.1-4
View 1 Replies
View Related
Jul 29, 2011
In the ipv4 code i was using "ip_mc_join_group()" to join the multicast group. but i cannot find a similar function for ipv6 i have found one ipv6_sock_mc_join() but this function is not available for use with my module as it is not exported.
View 1 Replies
View Related
Nov 23, 2010
have a doubt about the multicast address.I have read that IP and ethernet multicast address have the same last 23 bits. While an ethernet multicast address always starts with 01:00:5E. Changing the last 23 bits of the IP address into hexadecimal form and "adding" them to the first 24 bits we find the ethernet address but what about the missing bit??? For istance I have: 230.11.111.10 = 11100110.00001011.01101111.00001010 So converting the last 23 bits I have b:6f:a The final ethernet address will be 01:00:5E:b:6f:a . And what about the missing bit?
View 1 Replies
View Related
Jul 9, 2010
I am trying to run some benchmark tests for multicast. What I want to do is have one system send multicast packets and another receive it on all it's interfaces (eth0-eth3). Whenever I run receiver on more than one interface I get echo effect (if I receive on x interfaces then I get same packet x number of times). Is this how it is supposed to behave? It does not make any difference whether I use loop-back or not. I have set SO_REUSEADDR to yes. I run separate instance of receiver on each interface. I am doing this on RHEL5 systems.
# uname -r
2.6.18-164.20.1.el5
View 3 Replies
View Related
Mar 27, 2009
I'm trying to receive data that is being broadcast on address 224.0.1.1, 224.0.1.2, 224.0.1.3, 224.0.1.4. ports are 1201, 1202, 1203, 1204 respectively. I can see the data using wireshark but can not get my program to receive the data. all firewalls are shutdown. iptables is not running, i've set net.ipv4_icmp_ignore_broadcasts = 0 and still no luck.
View 1 Replies
View Related
Jun 13, 2010
I have just set up an FC 13 box for a small network application. At the core, the application is supposed to receive some data over a multicast on my local network. However, for some reason, I am not being able to receive any multicast data on this machine. Other machines, on the same network (connected on the same layer 2 switch) are receiving the multicast just fine. I have tried the following things:
1. ensure that I am joining the multicast on the correct interface: the machine has only one ethernet card. Also, after starting my application, I use netstat -g to check for group membership. The multicast subscription shows up fine.
2. ensure there is no error in the program: the program works fine on my person linux machine
3. ensure that the multicast is actually available: it is available on all other local machines. I also wrote my own small broadcaster. data from this broadcaster (running on the same box) is available to other machines but not to my own listener program.
4. no firewall/filtering settings on the layer2 switch
5. TTL setting on the broadcast: have tried changing it from 1 through 5 with no effect. Note that even if the broadcast is coming from the same machine, my machine does not pick it up while other machines on the network do so.
I suspect this has to do with some settings on the network card itself. Below is the output of /sbin/ifconfig on the card:
eth0 Link encap:Ethernet HWaddr 00:08:A1:67:BBA
inet addr:192.200.20.32 Bcast:192.200.20.255 Mask:255.255.255.0
inet6 addr: fe80::208:a1ff:fe67:bbca/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
[code]....
View 3 Replies
View Related
Jan 7, 2011
How can I find out list of multicast addresses and port in use?"netstat -ng" only gives list of multicast addresses that have been joined, it does not give port number.I have several hundred servers running application that listens to several multicast addresses on different ports. I want to write an audit script and get the list of multicast address and port numbers.
View 2 Replies
View Related
Nov 3, 2009
I have a PC connected by ethernet to a Galil motion controller card.I recently installed Centos 5.The Galil software for communicating with the card is reporting that it can't join a multicast socket group.The software used to work with another version of Linux.
View 6 Replies
View Related
May 16, 2010
I've just set up an LTSP server, with all its clients on a separate subnet to my main network - the main network is 192.168.1.x, and the LTSP clients are all 192.168.2.x. My LTSP server has 2 NICs, one on each network, and is merrily forwarding normal IP traffic from the clients to the rest of the network. I have a client/server application that has a server on one machine, and clients locate and attach to it using multicast protocols. The server is on the main network, and any other machines on the network can locate and talk to the server quite happily. The LTSP clients, however, cannot - I assume because the multicast communications aren't being forwarded by the LTSP server. How I can get this working?
View 2 Replies
View Related
Jan 23, 2011
I got a server setup with three nics
eth0 = wan
eth1 = lan
eth2 = iptv (multicast)
When I have my IPTV inserted in the computer I am either having problems connecting to the internet or recieve the multicast streams from the iptv. I do get a valid ip on both the WAN and IPTV, but I am having problems getting them both to work at the same time.
eth0:
eth0 Link encap:Ethernet HWaddr 00:14:d1:1d:72:39
inet addr:94.xx.xx.63 Bcast:255.255.255.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2180753 errors:0 dropped:0 overruns:0 frame:0
[Code]...
View 1 Replies
View Related
Feb 12, 2009
I make an application on GNU/Linux which listening on a MULTICAST stream, so I open my unconnected socket, bind it on a MULTICAST address and a port, join the multicast group with the "setsockopt (IP_ADD_MEMBERSHIP)", then I receive datagram on my socket.
Now I've two different instances of the same application that run with their own MULTICAST address and port. And what I found strange is that, after a misconfiguration, I switch the ports, for example:
Emitting on 225.0.0.1/23451 and 225.0.0.2/23452
Receiving on 225.0.0.1/23452 and 225.0.0.2/23451
And my receiving part doesn't care about the MULTICAST address, it looks like the socket is listening on the port number only! I mean that the receiver [225.0.0.1/23452] take its datagrams from emitter [225.0.0.2/23452] and vice-versa!
View 2 Replies
View Related
Sep 6, 2010
My setup is...I have a wireless access point using laptop as a gateway. The AP is also connected to a switch as is the laptop. So the laptop has two interfaces one wireless and one wired. A third device is using the AP to connect to a server on the internet. The AP sends the packets to my laptop where they are dropped. I've been looking for a solution to this problem without success. Basically is there a way for my laptop to forward all packets it sees from a certain IP address to whatever destination address they have?To clarify, my laptop is just the gateway of the AP and none of the packets are addressed to it at all, it just picks them up using a sniffer or similar tool.
View 1 Replies
View Related
Dec 3, 2010
using layer 7 filtering how to block the ftp packets?..
In My router i am going to add a below rule.... iptables -A OUTPUT -m layer7 --l7proto tcp --dport 20 -j DROP
above statement will it work in my router?.
View 1 Replies
View Related
Oct 17, 2010
1) i have to find the source and destination address in the ip and ethernet headers of a packet that go from my machine to the router.2) Then i have to do the same for the packet that goes from the router to my partner's machine.Then I have to answer the above questions but now for the echo replay.How could i see these address?The result could be found in the output of a tcpdump?
[guest@shakti guest]$ sudo tcpdump -en host 128.238.62.101 and 128.238.61.101
tcpdump: listening on eth0
20:27:36.662737 0:4:75:b5:20:bc 0:3:e3:2a:4a:60 ip 42: 128.238.61.101 > 128.238.62.101: icmp: echo request
[code]....
View 2 Replies
View Related
Feb 15, 2010
I've a ssh server on FEDORA 12. It was going well but now it's overloaded with ARP traffic and is unable to run ssh. normally i'm getting about 150 packets in just 3 second
View 1 Replies
View Related
Jun 7, 2011
we are using Red hat enterprise 5.4 for our internet connection with following ip's
eth0: 192.168.1.2 (local lan)
eth1: 114.143.28.240 (static ip address for 1st isp)
eth2: 192.168.100.149 (2nd isp modem connected with lan cable)
first isp i.e tata internet connected to the internet and working very well
now i want 2nd isp to work when the first isp goes down, i had configured all dns in the resolve.conf and squid.conf, when i switch off the 1st isp for checking that failover is working or not i cannot get internet packets from the second isp.
View 5 Replies
View Related
Jun 10, 2010
my Linux does not workDoes not accept incoming connectionsiptable disabledping is a network but cannot nor at 22 nor at any other connectsHow do I check what is blocking the connection
thnx alot.OS Ubuntu 9.4
View 4 Replies
View Related
Oct 1, 2010
One of our RHEL 5.3 servers has trouble about 30% of the time with TCP-based communications, but it does not seem to be firewall issues. From another computer on the same switch, you can SSH to the server sometimes and other times the SSH command will just hang. When it hangs, you can often just Ctrl+C and try it again and it works. Same with HTTP connections. You'll get part of a web page and then FireFox will just hang waiting for the rest and eventually time out. Same goes for communication initiated FROM the server. SSH'ing from the server to any outside server or connecting to any web site works sometimes, but most times not. iptables if off. No other firewalls are running. Tcpdump shows communication gets so far and then stops. It does not matter whether tou run tcpdump on that server or the client connecting to it. Either way you see the connection stops working. MEANWHILE, pinging with small or large packets works flawlessly. 10,000 packets, zero drops.
View 5 Replies
View Related
Jan 11, 2010
I've recently installed Ubunter 9.10 Server Edition to use as a NAT firewall for the lab I run. I'm using iptables to do NAT forwarding and everything works great except that, occasionally, connections seem to break. Ssh connections close with "Connection reset by peer" and HTTP connections just stall out.I believe this has to do with the firewall's internal network interface occasionally dropping packets.
View 2 Replies
View Related