Project Home
Project Home
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - ping with large packets: (2 Items)
   
ping with large packets  
I am writing a new devnp network driver. When doing ping with large packets (ping -s 1600) I was getting messages about 
over-sized packets in the system log. I read another forum post and it suggested removing the CRC bytes. Upon further 
inspection, the device I am using does indeed include the CRC bytes and when they are removed (changing the packet 
length by subtracting 4) then the large packets sort of work.

Before removing the CRC bytes, the ping did not work. Probably because the bad packets were being thrown out. 

Now, the packets are received and the ping technically works, but there is a large delay between the packets. There are 
2 commands below, one with regular sized packets, and one with size of 1600.

Any ideas as to why the times are so large with the large packets? I can do the same ping with large packets  from a 
different target to the same host(10.0.102.18) and the times are consistently 2-3ms instead of several hundred. (i.e. it
 is probably not the host at 10.0.102.18 that is causing the slowness). The target with the problem is actually faster 
than the target without the slowness. For regular size packets, it sees 0-1ms as shown below. The other target usually 
sees 2-3ms regardless of packet size.

# ping -c 3 10.0.102.18; ping -s 1600 -c 3 10.0.102.18
PING 10.0.102.18 (10.0.102.18): 56 data bytes
64 bytes from 10.0.102.18: icmp_seq=0 ttl=128 time=1 ms
64 bytes from 10.0.102.18: icmp_seq=1 ttl=128 time=0 ms
64 bytes from 10.0.102.18: icmp_seq=2 ttl=128 time=0 ms

----10.0.102.18 PING Statistics----
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 0/0/1 ms   variance = 0 ms^2
PING 10.0.102.18 (10.0.102.18): 1600 data bytes
1608 bytes from 10.0.102.18: icmp_seq=0 ttl=128 time=758 ms
1608 bytes from 10.0.102.18: icmp_seq=1 ttl=128 time=258 ms
1608 bytes from 10.0.102.18: icmp_seq=2 ttl=128 time=787 ms

----10.0.102.18 PING Statistics----
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 258/601/787 ms   variance = 88447 ms^2
Re: ping with large packets  
i am just guessing...

could it be that new driver is doing some extra copy (or copies) on the
packet buffer in transmission or reception? that may be a reason for
performance impact in case of large packets...


On Tue, Mar 8, 2011 at 8:06 PM, John Pruitt <community-noreply@qnx.com>wrote:

> I am writing a new devnp network driver. When doing ping with large packets
> (ping -s 1600) I was getting messages about over-sized packets in the system
> log. I read another forum post and it suggested removing the CRC bytes. Upon
> further inspection, the device I am using does indeed include the CRC bytes
> and when they are removed (changing the packet length by subtracting 4) then
> the large packets sort of work.
>
> Before removing the CRC bytes, the ping did not work. Probably because the
> bad packets were being thrown out.
>
> Now, the packets are received and the ping technically works, but there is
> a large delay between the packets. There are 2 commands below, one with
> regular sized packets, and one with size of 1600.
>
> Any ideas as to why the times are so large with the large packets? I can do
> the same ping with large packets  from a different target to the same
> host(10.0.102.18) and the times are consistently 2-3ms instead of several
> hundred. (i.e. it is probably not the host at 10.0.102.18 that is causing
> the slowness). The target with the problem is actually faster than the
> target without the slowness. For regular size packets, it sees 0-1ms as
> shown below. The other target usually sees 2-3ms regardless of packet size.
>
> # ping -c 3 10.0.102.18; ping -s 1600 -c 3 10.0.102.18
> PING 10.0.102.18 (10.0.102.18): 56 data bytes
> 64 bytes from 10.0.102.18: icmp_seq=0 ttl=128 time=1 ms
> 64 bytes from 10.0.102.18: icmp_seq=1 ttl=128 time=0 ms
> 64 bytes from 10.0.102.18: icmp_seq=2 ttl=128 time=0 ms
>
> ----10.0.102.18 PING Statistics----
> 3 packets transmitted, 3 packets received, 0% packet loss
> round-trip min/avg/max = 0/0/1 ms   variance = 0 ms^2
> PING 10.0.102.18 (10.0.102.18): 1600 data bytes
> 1608 bytes from 10.0.102.18: icmp_seq=0 ttl=128 time=758 ms
> 1608 bytes from 10.0.102.18: icmp_seq=1 ttl=128 time=258 ms
> 1608 bytes from 10.0.102.18: icmp_seq=2 ttl=128 time=787 ms
>
> ----10.0.102.18 PING Statistics----
> 3 packets transmitted, 3 packets received, 0% packet loss
> round-trip min/avg/max = 258/601/787 ms   variance = 88447 ms^2
>
>
>
> _______________________________________________
>
> Networking Drivers
> http://community.qnx.com/sf/go/post83822
>
>