On Jan 4, 2006, at 11:14 AM, Ed Howland wrote:
> Maybe it starts counting time from the beginning of the DNS lookup.

My thinking, too.  So I ran an strace on both.  The edited output  
from both is below.

$ strace ping -f -c 3 10.4.0.4 2>&1 | grep -e ^....msg -e ^open

sendmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0),  
sin_addr=inet_addr("10.4.0.4")}, msg_iov(1)=[{"\10\0I\317Pd\0\1\232\t 
\274C\26{\6\0\10\t\n\v\f\r\16\17"..., 64}], msg_controllen=0,  
msg_flags=0}, 0) = 64
recvmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0),  
sin_addr=inet_addr("10.4.0.4")}, msg_iov(1)=[{"E\0\0T;[EMAIL PROTECTED] 
\n\4\0\4\n\4\0(\0\0Q\317Pd\0\1\232"..., 192}], msg_controllen=20,  
msg_control=0xbfffd5d0, , msg_flags=0}, 0) = 84
sendmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0),  
sin_addr=inet_addr("10.4.0.4")}, msg_iov(1)=[{"\10\0\221\310Pd\0\2\232 
\t\274C\316\200\6\0\10\t\n\v\f\r"..., 64}], msg_controllen=0,  
msg_flags=0}, MSG_CONFIRM) = 64
recvmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(8762),  
sin_addr=inet_addr("10.4.0.4")}, msg_iov(1)=[{"E\0\0T;[EMAIL PROTECTED] 
\n\4\0\4\n\4\0(\0\0\231\310Pd\0"..., 192}], msg_controllen=20,  
msg_control=0xbfffd5d0, , msg_flags=0}, 0) = 84
sendmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0),  
sin_addr=inet_addr("10.4.0.4")}, msg_iov(1)=[{"\10\0\312\302Pd\0\3\232 
\t\274C\225\205\6\0\10\t\n\v\f\r"..., 64}], msg_controllen=0,  
msg_flags=0}, MSG_CONFIRM) = 64
recvmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(8762),  
sin_addr=inet_addr("10.4.0.4")}, msg_iov(1)=[{"E\0\0T;[EMAIL PROTECTED] 
\n\4\0\4\n\4\0(\0\0\322\302Pd\0"..., 192}], msg_controllen=20,  
msg_control=0xbfffd5d0, , msg_flags=0}, 0) = 84

$ sudo strace ping -f -c 3 foo 2>&1 | grep -e ^....msg -e ^open

open("/etc/hosts", O_RDONLY)            = 4
sendmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0),  
sin_addr=inet_addr("10.4.0.4")}, msg_iov(1)=[{"\10\0p\342\24d\0\1\211 
\10\274C>i\4\0\10\t\n\v\f\r\16\17"..., 64}], msg_controllen=0,  
msg_flags=0}, 0) = 64
recvmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(5178),  
sin_addr=inet_addr("10.4.0.4")}, msg_iov(1)=[{"E\0\0T;[EMAIL PROTECTED] 
\n\4\0\4\n\4\0(\0\0x\342\24d\0\1"..., 192}], msg_controllen=20,  
msg_control=0xbfffd1e0, , msg_flags=0}, 0) = 84
open("/etc/hosts", O_RDONLY)            = 4
sendmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0),  
sin_addr=inet_addr("10.4.0.4")}, msg_iov(1)=[{"\10\0\7\272\24d\0\2\211 
\10\274C\247\220\4\0\10\t\n\v\f"..., 64}], msg_controllen=0,  
msg_flags=0}, MSG_CONFIRM) = 64
recvmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0),  
sin_addr=inet_addr("10.4.0.4")}, msg_iov(1)=[{"E\0\0T;[EMAIL PROTECTED] 
\n\4\0\4\n\4\0(\0\0\17\272\24d\0"..., 192}], msg_controllen=20,  
msg_control=0xbfffd1e0, , msg_flags=0}, 0) = 84
open("/etc/hosts", O_RDONLY)            = 4
sendmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0),  
sin_addr=inet_addr("10.4.0.4")}, msg_iov(1)=[{"\10\0\326\246\24d\0\3 
\211\10\274C\330\242\4\0\10\t\n\v"..., 64}], msg_controllen=0,  
msg_flags=0}, MSG_CONFIRM) = 64
recvmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0),  
sin_addr=inet_addr("10.4.0.4")}, msg_iov(1)=[{"E\0\0T;[EMAIL PROTECTED] 
\n\4\0\4\n\4\0(\0\0\336\246\24d"..., 192}], msg_controllen=20,  
msg_control=0xbfffd1e0, , msg_flags=0}, 0) = 84
open("/etc/hosts", O_RDONLY)            = 4

Notice that with the IP, ping simply does a send/receive.  Whereas  
with the name, ping looks up the IP before each send, in this case  
in /etc/hosts.  I would have thought the hostnames and IPs would have  
been cached.  That is, lookup once and ping many.

Regards,
- Robert
http://www.cwelug.org/downloads
Help others get OpenSource software.  Distribute FLOSS
for Windows, Linux, *BSD, and MacOS X with BitTorrent

 
_______________________________________________
CWE-LUG mailing list
[email protected]
http://www.cwelug.org/
http://www.cwelug.org/archives/
http://www.cwelug.org/mailinglist/

Reply via email to