Classful IP Addressing. Classless Addressing: CIDR. Routing & Forwarding: Logical View of a Router. IP Addressing: Basics

Similar documents
IP addressing and forwarding Network layer

Network layer: Overview. Network layer functions IP Routing and forwarding

CS 43: Computer Networks IP. Kevin Webb Swarthmore College November 5, 2013

Chapter 4 Network Layer

Network layer" 1DT066! Distributed Information Systems!! Chapter 4" Network Layer!! goals: "

IP addressing. Interface: Connection between host, router and physical link. IP address: 32-bit identifier for host, router interface

Internet Protocols Fall Lectures 7-8 Andreas Terzis

Internet Protocols Fall Outline

CS 457 Lecture 19 Global Internet - BGP. Fall 2011

Internet Control Protocols Reading: Chapter 3

Chapter 4 Network Layer

8.2 The Internet Protocol

Internetworking. Problem: There is more than one network (heterogeneity & scale)

RARP: Reverse Address Resolution Protocol

IP - The Internet Protocol

Internet Packets. Forwarding Datagrams

Internet Protocols. Addressing & Services. Updated:

IP address format: Dotted decimal notation:

Internet Protocol: IP packet headers. vendredi 18 octobre 13

Network Layer: Network Layer and IP Protocol

04 Internet Protocol (IP)

Interconnection of Heterogeneous Networks. Internetworking. Service model. Addressing Address mapping Automatic host configuration

Компјутерски Мрежи NAT & ICMP

Lecture Computer Networks

Future Internet Technologies

Overview Computer Networking. IP Address Classes (Some are Obsolete) Outline. Lecture 9 IP Packets. CIDR IP addressing. Forwarding examples

Lecture 15. IP address space managed by Internet Assigned Numbers Authority (IANA)

Unix System Administration

Course Overview: Learn the essential skills needed to set up, configure, support, and troubleshoot your TCP/IP-based network.

IP Network Layer. Datagram ID FLAG Fragment Offset. IP Datagrams. IP Addresses. IP Addresses. CSCE 515: Computer Network Programming TCP/IP

Scaling the Network: Subnetting and Other Protocols. Networking CS 3470, Section 1

Computer Networks. Lecture 3: IP Protocol. Marcin Bieńkowski. Institute of Computer Science University of Wrocław

TCP/IP Fundamentals. OSI Seven Layer Model & Seminar Outline

Transport and Network Layer

Chapter 3: Review of Important Networking Concepts. Magda El Zarki Dept. of CS UC Irvine

- IPv4 Addressing and Subnetting -

DHCP, ICMP, IPv6. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley DHCP. DHCP UDP IP Eth Phy

Network layer. Assignment 3

NETWORK LAYER/INTERNET PROTOCOLS

Subnetting,Supernetting, VLSM & CIDR

Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme. Auxiliary Protocols

IP Addressing Introductory material.

Efficient Addressing. Outline. Addressing Subnetting Supernetting CS 640 1

Network Layer IPv4. Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS. School of Computing, UNF

IP Address Classes (Some are Obsolete) Computer Networking. Important Concepts. Subnetting Lecture 8 IP Addressing & Packets

Internetworking and Internet-1. Global Addresses

Savera Tanwir. Internet Protocol

Guide to Network Defense and Countermeasures Third Edition. Chapter 2 TCP/IP

Technical Support Information Belkin internal use only

Internet Protocol (IP) IP - Network Layer. IP Routing. Advantages of Connectionless. CSCE 515: Computer Network Programming IP routing

IP Addressing. IP Addresses. Introductory material.

IP Routing Features. Contents

Guide to TCP/IP, Third Edition. Chapter 3: Data Link and Network Layer TCP/IP Protocols

Introduction to TCP/IP

The internetworking solution of the Internet. Single networks. The Internet approach to internetworking. Protocol stacks in the Internet

Ethernet. Ethernet. Network Devices

PPS Internet-Praktikum. Prof. Bernhard Plattner Institut für Technische Informatik und Kommunikationsnetze (TIK)

Themen der Praktikumsnachmittage. PPS Internet-Praktikum. Zielsetzung. Infrastruktur im ETF B5

Networking Test 4 Study Guide

IP Subnetting and Addressing

COMP 631: COMPUTER NETWORKS. IP Addressing. Jasleen Kaur. Fall How to Deal With Heterogeneity & Scale?

CS 348: Computer Networks. - IP addressing; 21 st Aug Instructor: Sridhar Iyer IIT Bombay

Introduction to Network Operating Systems

Instructor Notes for Lab 3

2. IP Networks, IP Hosts and IP Ports

Transport Layer Protocols

Gary Hecht Computer Networking (IP Addressing, Subnet Masks, and Packets)

Overview. Lecture 16: IP variations: IPv6, multicast, anycast. I think we have a problem. IPv6. IPv6 Key Features

EITF25 Internet Techniques and Applications L5: Wide Area Networks (WAN) Stefan Höst

Classful IP Addressing (cont.)

Note! The problem set consists of two parts: Part I: The problem specifications pages Part II: The answer pages

How do I get to

Network Layer: Address Mapping, Error Reporting, and Multicasting

Network-Oriented Software Development. Course: CSc4360/CSc6360 Instructor: Dr. Beyah Sessions: M-W, 3:00 4:40pm Lecture 2

Procedure: You can find the problem sheet on Drive D: of the lab PCs. 1. IP address for this host computer 2. Subnet mask 3. Default gateway address

Mobile IP Network Layer Lesson 02 TCP/IP Suite and IP Protocol

Lecture 8. IP Fundamentals

Troubleshooting Tools

Chapter 11. User Datagram Protocol (UDP)

What is a DoS attack?

Dynamic Host Configuration Protocol (DHCP) 02 NAT and DHCP Tópicos Avançados de Redes

VLAN und MPLS, Firewall und NAT,

iseries TCP/IP routing and workload balancing

Internet Firewall CSIS Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS net15 1. Routers can implement packet filtering

Variable length subnetting

Chapter 3. TCP/IP Networks. 3.1 Internet Protocol version 4 (IPv4)

The Internet. Internet Technologies and Applications

Datagram-based network layer: forwarding; routing. Additional function of VCbased network layer: call setup.

Internet Architecture and Philosophy

Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ

Final for ECE374 05/06/13 Solution!!

(Refer Slide Time: 02:17)

SUPPORT DE COURS. Dr. Omari Mohammed Maître de Conférences Classe A Université d Adrar Courriel : omarinmt@gmail.com

Introduction to IP networking

Outline. CSc 466/566. Computer Security. 18 : Network Security Introduction. Network Topology. Network Topology. Christian Collberg

IPv6 Associated Protocols

Internet Protocol Address

Network Layer 4- density - A Top Down Approach

Internetworking and IP Address

Transcription:

Switching and Forwarding Switching and Forwarding Generic Router rchitecture Forwarding Tables: ridges/layer Switches; VLN Routers and Layer 3 Switches Forwarding in Layer 3 (Network Layer) Network Layer Functions Network Service Models: VC vs. Datagram TM and IP Datagram Forwarding IP ddressing Network vs. host: address blocks, longest prefix matching ddress allocation and DHCP IP Datagram Forwarding Model and RP Protocol IP and ICMP Protocols, IP Fragmentation and Re-assembly 5 D 3 3 C E Routing & Forwarding: Logical View of a Router 5 F Readings: Textbook: Chapter 4: Section 4.; IP ddressing: asics Globally unique (for public IP addresses) IP address: 3-bit identifier for host, router interface Interface: connection between host/router and physical link router s typically have multiple interfaces host may have multiple interfaces IP addresses associated with each interface Dot notation (for ease of human reading) 3... = 0 0000000 0000000 0000000 3 IP ddressing: Network vs. Host Two-level hierarchy network part (high order bits) host part (low order bits) What s a network? (from IP address perspective) 3... 3..9. 3...3 device interfaces with same network part of IP 3..9. address 3..8. can physically reach each 3...6 other without intervening router 3... 3... 3...4 multi-access LN 3..7.0 point-to-point link 3..8.0 3..7. 7 3 4 class C D Classful IP ddressing 0network 7 5 3 3 host 0 network host 0 network host 0 multicast address.0.0.0 to 7.55.55.55 8.0.0.0 to 9.55.55.55 9.0.0.0 to 3.55.55.55 4.0.0.0 to 39.55.55.55 3 bits Disadvantage: inefficient use of address space; address space exhaustion e.g., class net allocated enough addresses for 65K hosts, even if only K hosts in that network Classless ddressing: CIDR CIDR: Classless InterDomain Routing Network portion of address is of arbitrary ddresses allocated in contiguous blocks Number of addresses assigned always power of ddress format: a.b.c.d/x x is number of bits in network portion of address network host part part 00000 0000 0000000 00000000 00.3.6.0/3 5 6

Representation of ddress locks Human Readable address format: a.b.c.d/x x is number of bits in network portion of address, the network portion is also called the network prefix machine representation of a network (addr block): using a combination of first IP of address blocks of the network network mask ( x s followed by 3-x 0 s network w/ address block: 00.3.6.0/3 first IP address of address block: 00000 0000 0000000 00000000 network mask: 0 00000000 More Examples Three ddress locks: First IP address: 00000 0000 0000000 00000000 Network mask: 000 00000000 First IP address: 00000 0000 000000 00000000 Last IP address: 00000 0000 000000 what is the network prefix? 00000 0000 000000 First IP address: 00000 0000 00000 00000000 Last IP address: 00000 0000 000 what is the network prefix? 00000 0000 000 Given an IP address, which network (or address block) does it belong to? Example : 00000 0000 00000 00000 Example : 00000 0000 000000 0000 Use longest prefix matching! 7 8 nother Example Consider a datagram network using 3-bit host addresses, suppose a router has four links, numbered 0 through 3, and packets are to be forwarded to the link interfaces as follows: Destination ddr Range Link Interface 00000 00000000 00000000 00000000 through 0 00000 0000 00000000 00000000 00000000 through 0000 00000000 0000 0000000 00000000 00000000 through 0000 O.W. 3 Provide the forwarding table a table containing the network prefix and the outgoing interface. IP ddresses: How to Get One? Q: How does host get IP address? static assigned: i.e., hard-coded in a file Wintel: control-panel->network->configuration->tcp/ip- >properties UNIX: /etc/rc.config Dynamically assigned: using DHCP (Dynamic Host Configuration Protocol) dynamically get address from a server plug-and-play 9 0 DHCP: Dynamic Host Configuration Protocol Goal: allow host to dynamically obtain its IP address from network DHCP server when it joins network Can renew its lease on address in use llows reuse of addresses (only hold address while connected as on ) Support for mobile users who want to join network (more shortly) DHCP overview: host broadcasts DHCP discover msg DHCP server responds with DHCP offer msg host requests IP address: DHCP request msg DHCP server sends address: DHCP ack msg DHCP Client-Server Scenario 3... DHCP server 3...4 3...9 3...3 3... 3 3... 7 E arriving ii DHCP client needs address in this network

DHCP Client-Server Scenario DHCP server: 3...5 time DHCP request DHCP discover src: 0.0.0.0, 68 dest:: 55.55.55.55, 67 yiaddrr: 3...4 transaction ID: 655 Lifetime: 3600 secs src : 0.0.0.0, 68 dest.: 55.55.55.55,67 yiaddr: 0.0.0.0 transaction ID: 654 DHCP offer src: 3...5, 67 dest: 55.55.55.55, 68 yiaddrr: 3...4 transaction ID: 654 Lifetime: 3600 secs DHCP CK src: 3...5, 67 dest: 55.55.55.55, 68 yiaddrr: 3...4 transaction ID: 655 Lifetime: 3600 secs arriving client IP ddresses: How to Get One? Q: How does a network get network part of IP addr? : gets an allocated portion of its provider ISP s address space ISP's block 00000 0000 0000000 00000000 00.3.6.0/0 Organization 0 00000 0000 0000000 00000000 00.3.6.0/3 Organization 00000 0000 000000 00000000 00.3.8.0/3 Organization 00000 0000 000000 00000000 00.3.0.0/3....... Organization 7 00000 0000 0000 00000000 00.3.30.0/3 3 4 IP ddressing: the Last Word... Q: How does an ISP get block of addresses? : ICNN: Internet Corporation for ssigned Names and Numbers allocates addresses manages DNS assigns domain names, resolves disputes NT: Network ddress Translation rest of Internet 387697 38.76.9.7 ll datagrams leaving local network have same single source NT IP address: 38.76.9.7, different source port numbers 0.0.0.4 local network (e.g., home network) 0.0.0/4 Datagrams with source or destination in this network have 0.0.0/4 address for source, destination (as usual) 0.0.0. 0.0.0. 0.0.0.3 0.0.0.0/8 has been reserved for private networks! 5 6 NT: Network ddress Translation Motivation: local network uses just one IP address as far as outside world is concerned: no need to be allocated range of addresses from ISP: - just one IP address is used for all devices can change addresses of devices in local network without notifying outside world can change ISP without changing addresses of devices in local network devices inside local net not explicitly addressable, visible by outside world (a security plus). NT: Network ddress Translation Implementation: NT router must: outgoing datagrams: replace (source IP address, port #) of every outgoing datagram to (NT IP address, new port #)... remote clients/servers will respond using (NT IP address, new port #) as destination addr. remember (in NT translation table) every (source IP address, port #) to (NT IP address, new port #) translation pair incoming datagrams: replace (NT IP address, new port #) in dest fields of every incoming datagram with corresponding (source IP address, port #) stored in NT table 7 8 3

: NT router changes datagram source addr from 0.0.0., 3345 to 38.76.9.7, 500, updates table NT: Network ddress Translation NT translation table WN side addr LN side addr 38.76.9.7, 500 0.0.0., 3345 S: 38.76.9.7, 500 D: 8.9.40.86, 80 S: 8.9.40.86, 80 D: 38.76.9.7, 500 3 3: Reply arrives dest. address: 38.76.9.7, 500 0.0.0.4 S: 0.0.0., 3345 D: 8.9.40.86, 80 38.76.9.7 S: 8.9.40.86, 80 4 D: 0.0.0., 3345 : host 0.0.0. sends datagram to 8.9.40, 80 000 0.0.0. 0.0.0. 0.0.0.3 4: NT router changes datagram dest addr from 38.76.9.7, 500 to 0.0.0., 3345 NT: Network ddress Translation 6-bit port-number field: 60,000 simultaneous connections with a single LN-side address! NT is controversial: routers should only process up to layer 3 violates end-to-end argument NT possibility must be taken into account by app designers, eg, PP applications address shortage should instead be solved by IPv6 9 0 IP Forwarding & IP/ICMP Protocol Nt Network layer Routing protocols path selection RIP, OSPF, GP Transport layer: TCP, UDP routing table IP protocol addressing conventions packet handling conventions ICMP protocol error reporting router signaling Data Link layer (Ethernet, WiFi, PPP, ) Physical Layer (SONET, ) IP Service Model and Datagram Forwarding Connectionless (datagram-based) Each datagram carries source and destination est-effort delivery (unreliable service) packets may be lost packets can be delivered out of order duplicate copies of a packet may be delivered packets can be delayed for a long time Forwarding rdin and IP address forwarding based on network id Delivers packet to the appropriate network Once on destination network, direct delivery using host id IP destination-based next-hop forwarding paradigm Each host/router has IP forwarding table Entries like <network prefix, next-hop, output interface> IP protocol version number header (3-bit words) type of data max number remaining hops (decremented at each router) upper layer protocol to deliver payload to how much overhead with TCP? 0 bytes of TCP 0 bytes of IP = 40 bytes + app layer overhead IP Datagram Format 3 bits ver head. type of len service fragment 6-bit identifier flgs time to upper Internet live layer checksum 3 bit source IP address 3 bit destination IP address Options (if any) data (variable, typically a TCP or UDP segment) total datagram (bytes) for fragmentation/ reassembly E.g. timestamp, record route taken, specify list of routers to visit. IP Datagram Forwarding Model IP datagram: misc source dest fields IP addr IP addr data datagram remains unchanged, as it travels source to destination addr fields of interest here forwarding table in Dest. Net. next router Nhops 3.. 3.. 3...4 3..3 3...4 3... 3... 3...4 3...9 3...3 7 3... E 3 4 4

IP Forwarding Table 4 billion possible entries! (in reality, far less, but can still have millions of routes ) forwarding table entry format destination network next-hop (IP address) link interface ( st IP address, network mask ) 00000 0000 0000000 00000000, 00.3.6. 0 000 00000000 00000 0000 000000 00000000, - (direct) 00000000 Forwarding Table Lookup using Longest Prefix Matching Prefix Match Next Hop Link Interface 00000 0000 0000 00.3.6. 0 00000 0000 000000-00000 0000 000 00.3.5.6 otherwise 8.30.0. 3 Examples D: 00000 0000 00000 00000 Which interface? 00000 0000 00000 00000000, 00.3.5.6 000 00000000 otherwise 8.30.0. 3 D: 00000 0000 000000 0000 Which interface? 5 6 IP Forwarding: Destination in Same Net Dest. misc fields 3... 3...3 data Starting at, send IP datagram addressed to : look up net. address of in forwarding table find is on same net. as link layer will send datagram directly to inside link-layer frame and are directly connected forwarding table in Net. next router Nhops 3.. 3.. 3...4 3..3 3...4 3... 3... 3...4 3...9 3...3 7 3... E IP Datagram Forwarding on Same LN: Interaction of IP and data link layers Starting at, given IP datagram addressed to : look up net. address of, find on same net. as link layer send datagram to inside link-layer frame frame source, dest address s MC addr s MC addr frame s IP addr s IP addr datagram source, dest address datagram 3... 3... 3...4 3...9 3... 3...3 7 E IP payload 7 8 MC (Physical) ddresses -- Revisited used to get frames from one interface to another physicallyconnected interface (same physical network, i.e., pp or LN) 48 bit MC address (for most LNs) fixed for each adaptor, burned in the adapter ROM MC address allocation administered by IEEE st bit: 0 unicast, multicast. all s : broadcast MC flat address -> portability can move LN card from one LN to another MC addressing operations on a LN: each adaptor on the LN sees all frames accept a frame if dest. MC address matches its own MC address accept all broadcast (MC= all s) frames accept all frames if set in promiscuous mode can configure to accept certain multicast addresses (first bit = ) MC vs. IP ddresses 3-bit IP address: network-layer address, logical i.e., not bound to any physical device, can be re-assigned IP hierarchical address NOT portable depends on IP network to which an interface is attached when move to another IP network, IP address re-assigned used to get IP packets to destination IP network Recall how IP datagram forwarding is performed IP network is virtual, actually packet delivery done by the underlying physical networks from source host to destination host, hop-by-hop via IP routers over each link, different link layer protocol used, with its own frame headers, and source and destination MC addresses Underlying physical networks do not understand IP protocol and datagram format! 9 30 5

RP: ddress Resolution Protocol RP Protocol Question: how to determine MC address of knowing s IP address? Each IP node (host, router) on LN has RP table RP Table: IP/MC address mappings for some LN nodes < IP address; MC address; timer> timer: time after which address mapping will be forgotten (typically 5 min) wants to send datagram to, and knows s IP address. looks up s MC address in its RP table Suppose s MC address is not in s RP table. broadcasts (why?) RP query packet, containing 's IP address all machines on LN receive RP query receives RP packet, replies to with its ('s) MC address frame sent to s MC address (unicast) caches (saves) IP-to-MC address pair in its RP table until information becomes old (times out) soft state: information that times out (goes away) unless refreshed RP is plug-and-play : nodes create their RP tables without intervention from net administrator 3 3 RP Messages Hardware ddress Type: e.g., Ethernet Protocol address Type: e.g., IP Operation: RP request or RP response RP Request & Response Processing The requester broadcasts RP request The target node unicasts (why?) RP reply to requester With its physical address dds the requester into its RP table (why?) On receiving the response, requester updates its table, sets timer Other nodes upon receiving the RP request Refresh the requester entry if already there No action otherwise (why?) Some questions to think about: Shall requester buffer IP datagram while performing RP? What shall requester do if never receive any RP response? 33 34 RP Operation Illustration IP Forwarding: Destination in Diff. Net misc fields 3... 3...3 data forwarding table in Dest. Net. next router Nhops Starting at, dest. E: look up network address of E in forwarding table E on different network, E not directly attached routing table: next hop router to E is 3...4 link layer sends datagram to router 3...4 inside linklayer frame datagram arrives at 3...4 continued.. 3.. 3.. 3...4 3..3 3...4 3... 3... 3...4 3...9 3... 3...3 7 E 35 36 6

IP Forwarding: Destination in Diff. Net misc forwarding table in router fields 3... 3...3 data Dest. Net router Nhops interface rriving at 3..4, destined for 3... look up network address of E in router s forwarding table E on same network as router s interface 3...9 router, E directly attached link layer sends datagram to 3... inside link-layer frame via interface 3...9 datagram arrives at 3...!!! (hooray!) 3.. - 3...4 3.. - 3...9 3..3-7 3... 3... 3...4 3...9 3...3 7 3... E Forwarding to nother LN: Interaction of IP and Data Link Layer walkthrough: send datagram from to via R assume knows IP address R Two RP tables in router R, one for each IP network (LN) In routing table at source host, find router...0 In RP table at source, find MC address E6-E9-00-7--4, etc 37 38 R creates datagram with source, destination uses RP to get R s MC address for...0 creates link-layer frame with R's MC address as dest, frame contains -to- IP datagram s data link layer sends frame R s data link layer receives frame R removes IP datagram from Ethernet frame, sees its destined to R uses RP to get s physical layer address R creates frame containing -to- IP datagram sends to IP protocol version number header (bytes) type of data max number remaining hops (decremented at each router) upper layer protocol to deliver payload to how much overhead with TCP? 0 bytes of TCP 0 bytes of IP = 40 bytes + app layer overhead IP Datagram Format gain 3 bits ver head. type of len service fragment 6-bit identifier flgs time to upper Internet live layer checksum 3 bit source IP address 3 bit destination IP address Options (if any) data (variable, typically a TCP or UDP segment) total datagram (bytes) for fragmentation/ reassembly E.g. timestamp, record route taken, specify list of routers to visit. 39 40 Fields in IP Datagram IP protocol version: current version is 4, IPv4, new: IPv6 Header : number of 3-bit words in the header Type of Service: 3-bit priority,e.g, delay, throughput, reliability bits, Total : including header (maximum 65535 bytes) Identification: all fragments of a packet have same identification Flags: don t fragment, more fragments Fragment : where in the original packet (count in 8 byte units) Time to live: maximum life time of a packet Protocol Type: e.g., ICMP, TCP, UDP etc IP Option: non-default processing, e.g., IP source routing option, etc. IP Fragmentation & Reassembly: Why network links have MTU (maximum transmission unit) - largest possible data gram. different link types, different MTUs large IP datagram divided ( fragmented ) within net one datagram becomes several datagrams reassembled only at final destination IP header bits used to identify, order related fragments reassembly fragmentation: in: one large datagram out: 3 smaller datagrams 4 4 7

IP Fragmentation & Reassembly: How n IP datagram is chopped by a router into smaller pieces if datagram size is greater than network MTU Don t fragment option is not set Each datagram has unique datagram identification Generated by source hosts ll fragments of a packet carry original datagram id ll fragments except the last have more flag set Fragment and Length fields are modified appropriately Fragments of IP packet can be further fragmented by other routers along the way to destination! Reassembly only done at destination host (why?) Use IP datagram id, fragment, fragment flags. Length IP Fragmentation and Reassembly: Exp Example 4000 byte datagram MTU = 500 bytes =4000 ID =x fragflag =0 =0 One large datagram becomes several smaller datagrams ID fragflag =500 =x = =0 =500 =040 ID =x ID =x fragflag = fragflag =0 =85 =370 43 44 ICMP: Internet Control Message Protocol used by hosts, routers, gateways to communicate network-level information error reporting: unreachable host, network, port, protocol echo request/reply (used by ping) network-layer above IP: ICMP msgs carried in IP datagrams ICMP message: type, code plus first 8 bytes of IP datagram causing error Type Code description 0 0 echo reply (ping) 3 0 dest. network unreachable 3 dest host unreachable 3 dest protocol unreachable 3 3 dest port unreachable 3 6 dest network unknown 3 7 dest host unknown 4 0 source quench (congestion control - not used) 8 0 echo request (ping) 9 0 route advertisement 0 0 router discovery 0 TTL expired 0 bad IP header ICMP Message Transport & Usage ICMP messages carried in IP datagrams Treated like any other datagrams ut no error message sent if ICMP message causes error Message sent to the source 8 bytes of the original header included ICMP Usage (non-error, informational): Examples Testing reachability: ICMP echo request/reply ping Tracing route to a destination: Time-to-live field traceroute Path MTU discovery Don t fragment bit IP direct (for hosts only): inform hosts of better routes 45 46 8