? how cisco router handle the out-of-order ICMP echo-reply packets
Hi, Does someone happen to know how the Cisco IOS handle the out-of-order ICMP echo-reply packets? print it as success or lose? Thanks, Zhao Ping
Considering that Ciscos wait for a response before sending the next echo-request, you should never end up in a situation where replys are received out of order. That is going by my knowledge of traditional IOS. Ive not yet had any experience with IOS XE or XR to be able to quote any other experience. Tom On 06/01/2009, at 9:56 PM, Zhao Ping wrote:
Hi,
Does someone happen to know how the Cisco IOS handle the out-of- order ICMP echo-reply packets? print it as success or lose?
Thanks,
Zhao Ping
There aren't sequence numbers with ICMP. And the timeout value is watched/triggered before the next ICMP is sent, so there shouldn't really be any ordering problem/interpretation anyway. HTH, Scott -----Original Message----- From: Zhao Ping [mailto:pzhao.cn@gmail.com] Sent: Tuesday, January 06, 2009 6:26 AM To: nanog@merit.edu Subject: ? how cisco router handle the out-of-order ICMP echo-reply packets Hi, Does someone happen to know how the Cisco IOS handle the out-of-order ICMP echo-reply packets? print it as success or lose? Thanks, Zhao Ping
On Tue, 6 Jan 2009, Scott Morris wrote:
There aren't sequence numbers with ICMP. And the timeout value is watched/triggered before the next ICMP is sent, so there shouldn't really be any ordering problem/interpretation anyway.
Linux ping command does sequencing (so that part of your statement isn't accurate), and you can get out of order packets. It'll say a sequence number and ping time, and there really isn't any "timeout", an ICMP packet can come back 60 seconds later and it'll be counted, even though there were 59 other packets send and returned in the meantime. $ ping localhost PING localhost (127.0.0.1) 56(84) bytes of data. 64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.023 ms 64 bytes from localhost (127.0.0.1): icmp_seq=2 ttl=64 time=0.020 ms In IOS, my interpretation anyway, is that the timeout value (2 seconds) mean that it really considers this packet as dropped, so no, in IOS you cannot get out of order packets, at least not that the CLI will show. If the ICMP response packet comes back after timeout value has triggered, it's considered lost. -- Mikael Abrahamsson email: swmike@swm.pp.se
Scott Morris wrote:
There aren't sequence numbers with ICMP. And the timeout value is watched/triggered before the next ICMP is sent, so there shouldn't really be any ordering problem/interpretation anyway.
FYI, from RFC 792: Sequence Number Description The data received in the echo message must be returned in the echo reply message. The identifier and sequence number may be used by the echo sender to aid in matching the replies with the echo requests. For example, the identifier might be used like a port in TCP or UDP to identify a session, and the sequence number might be incremented on each echo request sent. The echoer returns these same values in the echo reply. Steve
Steve Bertrand wrote:
Scott Morris wrote:
There aren't sequence numbers with ICMP. And the timeout value is watched/triggered before the next ICMP is sent, so there shouldn't really be any ordering problem/interpretation anyway.
FYI, from RFC 792:
My apologies. I should have actually used the subject to scope what you were saying. Steve
Guess I'll have to go back and look at wireshark output again... I didn't recall seeing sequence number used in pings between Cisco devices, although that may just be the implementation ('may be used') part. I'll stand corrected. ;) Scott -----Original Message----- From: Steve Bertrand [mailto:steve@ibctech.ca] Sent: Tuesday, January 06, 2009 8:52 AM To: swm@emanon.com Cc: 'Zhao Ping'; nanog@merit.edu Subject: Re: ? how cisco router handle the out-of-order ICMP echo-reply packets Scott Morris wrote:
There aren't sequence numbers with ICMP. And the timeout value is watched/triggered before the next ICMP is sent, so there shouldn't really be any ordering problem/interpretation anyway.
FYI, from RFC 792: Sequence Number Description The data received in the echo message must be returned in the echo reply message. The identifier and sequence number may be used by the echo sender to aid in matching the replies with the echo requests. For example, the identifier might be used like a port in TCP or UDP to identify a session, and the sequence number might be incremented on each echo request sent. The echoer returns these same values in the echo reply. Steve
participants (5)
-
Mikael Abrahamsson
-
Scott Morris
-
Steve Bertrand
-
Tom Storey
-
Zhao Ping