CSCE 515: Computer Network Programming Chin-Tser Huang University of South Carolina
2/8/20052 Internet Control Message Protocol (ICMP) Utilized by either IP or higher layer (TCP or UDP) to communicate conditions that require attention Two main categories Query message Error message Usage of an ICMP message is determined by type and code fields
2/8/20053 ICMP Message Format typecodechecksum payload
2/8/20054 ICMP Address Mask Request and Reply type(17 or 18)code(0) checksum subnet mask sequence numberidentifier
2/8/20055 ICMP Timestamp Request and Reply type(13 or 14)code(0) checksum originate timestamp sequence numberidentifier receive timestamp transmit timestamp
2/8/20056 ICMP Unreachable Error type(3)code(0-15) checksum IP header + first 8 bytes of original datagram data unused (must be 0)
2/8/20057 ICMP Time Exceeded type(11)code(0 or 1) checksum IP header + first 8 bytes of original datagram data unused (must be 0)
2/8/20058 ping Program Available at /usr/sbin/ping Test whether another host is reachable -n option to set number of echo request to send -i option to set TTL -r option to record route -s option to set timestamp -w option to set timeout to wait for each reply
2/8/20059 ICMP Echo Request and Reply type(0 or 8)code(0) checksum optional data sequence numberidentifier
2/8/ IP Record Route Option code 1 lenptrIP addr #1IP addr #2…IP addr # bytes
2/8/ traceroute Program Available at /usr/sbin/traceroute Display the route that IP datagrams follow from one host to another Can use IP source route option -g option to specify intermediate routers to be used with loose source routing (up to 8 times) -G option to specify intermediate routers to be used with strict source routing (up to 8 times)
2/8/ IP Source Routing S dest = D {#R1,R2,R3} R1 dest = R1 {#R2,R3,D} R2 dest = R2 {R1,#R3,D} R3 dest = R3 {R1,R2,#D} D dest = D {R1,R2,R3#}
2/8/ IP Source Route Option code 1 lenptrIP addr #1IP addr #2…IP addr # bytes
2/8/ An Internet Map
2/8/ Next Class Routing principles Routing protocols Read TI Ch. 9, 10 Project 2 will be passed out