Computer Networking. IP Packets, IPv6 & NAT. Some Slides from Internet

Similar documents
2/22/2008. Outline Computer Networking Lecture 9 IP Protocol. Hop-by-Hop Packet Forwarding in the Internet. Internetworking.

Aside: Interaction with Link Layer Computer Networking. Caching ARP Entries. ARP Cache Example

Lecture 14 IP Wrap up. Outline

Network Layer: Internet Protocol

Layering and Addressing CS551. Bill Cheng. Layer Encapsulation. OSI Model: 7 Protocol Layers.

Lecture 3. The Network Layer (cont d) Network Layer 1-1

Network layer: Overview. Network layer functions IP Routing and forwarding NAT ARP IPv6 Routing

Network layer: Overview. Network Layer Functions

COMP/ELEC 429/556 Introduction to Computer Networks

EC441 Fall 2018 Introduction to Computer Networking Chapter4: Network Layer Data Plane

Computer Network Fundamentals Spring Week 4 Network Layer Andreas Terzis

Internet Technology 3/23/2016

CPSC 826 Internetworking. The Network Layer: Routing & Addressing Outline. The Network Layer

RMIT University. Data Communication and Net-Centric Computing COSC 1111/2061. Lecture 2. Internetworking IPv4, IPv6

Lecture 8. Network Layer (cont d) Network Layer 1-1

TCP/IP Protocol Suite

IP - The Internet Protocol. Based on the slides of Dr. Jorg Liebeherr, University of Virginia

IPv4 addressing, NAT. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley.

CS 43: Computer Networks. 21: The Network Layer & IP November 7, 2018

Lecture 8. Basic Internetworking (IP) Outline. Basic Internetworking (IP) Basic Internetworking (IP) Service Model

Lecture 8. Reminder: Homework 3, Programming Project 2 due on Thursday. Questions? Tuesday, September 20 CS 475 Networks - Lecture 8 1

Internet Control Message Protocol

CSE/EE 461 The Network Layer. Application Presentation Session Transport Network Data Link Physical

ECE 158A: Lecture 7. Fall 2015

CS 356: Computer Network Architectures. Lecture 10: IP Fragmentation, ARP, and ICMP. Xiaowei Yang

Internetworking Part 2

internet technologies and standards

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca

Hierarchical Routing. Our routing study thus far - idealization all routers identical network flat no true in practice. administrative autonomy

CSEP 561 Internetworking. David Wetherall

Master Course Computer Networks IN2097

Lecture 4 - Network Layer. Transport Layer. Outline. Introduction. Notes. Notes. Notes. Notes. Networks and Security. Jacob Aae Mikkelsen

Router Architecture Overview

Design Considerations : Computer Networking. Outline. Challenge 1: Address Formats. Challenge. How to determine split of functionality

Introduction to TCP/IP networking

Chapter 7: IP Addressing CCENT Routing and Switching Introduction to Networks v6.0

Network Layer: Control/data plane, addressing, routers

IPv6: An Introduction

Computer Networks. Course Reference Model. Topic. Error Handling with ICMP. ICMP Errors. Internet Control Message Protocol 12/2/2014.

Vorlesung Kommunikationsnetze

Chapter 4 Network Layer

Introduction to Internetworking

Networking Potpourri: Plug-n-Play, Next Gen

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

Networking: Network layer

IPv4. Christian Grothoff.

Internet Protocol (IP) Computer Networking. What is an Internetwork? Logical Structure of Internet. Lecture 8 IP Addressing and Forwarding

CSCE 463/612 Networks and Distributed Processing Spring 2018

Computer Networks. Background Material 1: Getting stuff from here to there

Guide to Networking Essentials, 6 th Edition. Chapter 5: Network Protocols

CS475 Networks Lecture 8 Chapter 3 Internetworking. Ethernet or Wi-Fi).

Network Layer PREPARED BY AHMED ABDEL-RAOUF

Department of Computer and IT Engineering University of Kurdistan. Network Layer. By: Dr. Alireza Abdollahpouri

Chapter 4: Network Layer

9/5 9/13 9/14 9/25 (CKPT) 10/6 (P1.A) 10/16 (P1.B) 10/2 10/12 9/12 9/23. All of these dates are tentative! 10/18. Real-world systems

CSC 401 Data and Computer Communications Networks

CS4700/5700: Network fundamentals

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca

LOGICAL ADDRESSING. Faisal Karim Shaikh.

Outline. IP Address. IP Address. The Internet Protocol. o Hostname & IP Address. o The Address

University of Toronto Faculty of Applied Science and Engineering. Final Exam, December ECE 461: Internetworking Examiner: J.

Lecture 11: Fragmentation & Addressing. CSE 123: Computer Networks Stefan Savage

CSCI-1680 Network Layer: IP & Forwarding John Jannotti

Last time. Network layer. Introduction. Virtual circuit vs. datagram details. IP: the Internet Protocol. forwarding vs. routing

Internet Protocol. Outline Introduction to Internet Protocol Header and address formats ICMP Tools CS 640 1

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 12

Internet Protocol (IP) Computer Networking. What is an Internetwork? Designing an Internetwork. Lecture 8 IP Addressing and Forwarding

COMP211 Chapter 4 Network Layer: The Data Plane

Introduction to Internetworking

Communication Systems DHCP

Information Network Systems The network layer. Stephan Sigg

Communication Networks ( ) / Fall 2013 The Blavatnik School of Computer Science, Tel-Aviv University. Allon Wagner

ETSF05/ETSF10 Internet Protocols Network Layer Protocols

Chapter 4: network layer

CS4450. Computer Networks: Architecture and Protocols. Lecture 13 THE Internet Protocol. Spring 2018 Rachit Agarwal

Chapter 4: network layer. Network service model. Two key network-layer functions. Network layer. Input port functions. Router architecture overview

Lecture 3: Packet Forwarding

ELEC / COMP 177 Fall Some slides from Kurose and Ross, Computer Networking, 5 th Edition

Chapter 4 Network Layer

Network Layer. The Network Layer. Contents Connection-Oriented and Connectionless Service. Recall:

Network Layer. Recall: The network layer is responsible for the routing of packets The network layer is responsible for congestion control

TSIN02 - Internetworking

HY 335 Φροντιστήριο 8 ο

CSCI-GA Operating Systems. Networking. Hubertus Franke

The Internetworking Problem. Internetworking. A Translation-based Solution

The Internet Protocol. IP Addresses Address Resolution Protocol: IP datagram format and forwarding: IP fragmentation and reassembly

CHAPTER-2 IP CONCEPTS

Internet Protocol (IP)

Computer Networking Introduction

internet technologies and standards

Design Considerations : Computer Networking. Outline

Chapter 4: outline. 4.5 routing algorithms link state distance vector hierarchical routing. 4.6 routing in the Internet RIP OSPF BGP

Internet Protocols (chapter 18)

Lecture 10: Addressing

Network Layer (4): ICMP

ICS 451: Today's plan

Subnets. IP datagram format. The Internet Network layer. IP Fragmentation and Reassembly. IP Fragmentation & Reassembly. IP Addressing: introduction

Internet Control Message Protocol (ICMP)

OSI Data Link & Network Layer

Advanced Computer Networking. CYBR 230 Jeff Shafer University of the Pacific. IPv6

Transcription:

Computer Networking Packets, v6 & NAT Some Slides from Internet

Outline Packet Format v6 NAT 2

Service Model Low-level communication model provided by Internet Datagram Each packet self-contained All information needed to get to destination No advance setup or connection maintenance Analogous to letter or telegram 0 4 8 12 16 19 24 28 31 version HLen TOS Length v4 Packet Format Identifier Flag Offset TTL Protocol Checksum Source Address Destination Address Options (if any) Header Data 3

v4 Header Fields 0 4 8 12 16 19 24 28 31 version HLen TOS Length Identifier Flags Offset TTL Protocol Checksum Source Address Destination Address Options (if any) Data Version: Version 4 for v4 HLen: Header Length 32-bit words (typically 5) TOS: Type of Service Priority information Length: Packet Length Bytes (including header) Header format can change with versions First byte identifies version Length field limits packets to 65,535 bytes In practice, break into much smaller packets for network performance considerations 4

v4 Header Fields Identifier, flags, fragment offset à used primarily for fragmentation Time to live 0 4 8 12 16 19 24 28 versio Must be decremented at each router HLe n TOS Length n Fl Identifier ag Offset Packets with TTL=0 are thrown away s TTL Protocol Checksum Ensure packets exit the network Source Address Destination Address Protocol Options (if any) Demultiplexing to higher layer protocols Data TCP = 6, ICMP = 1, UDP = 17 Header checksum Ensures some degree of header integrity Relatively weak 16 bit Options E.g. Source routing, record route, etc. Performance issues Poorly supported 3 1 5

v4 Header Fields 0 4 8 12 16 19 24 28 31 version HLen TOS Length Identifier Fla gs Offset TTL Protocol Checksum Source Address Destination Address Options (if any) Data Source Address 32-bit address of sender Destination Address 32-bit address of destination Like the addresses on an envelope Globally unique identification of sender & receiver 6

ADDRESS CLASSES 7

Address Classes (Some are Obsolete) Network ID Host ID Class A 0 Network ID 8 16 Host ID 24 32 Class B 10 Class C 110 Class D 1110 Class E 1111 Multicast Addresses Reserved for experiments 8

Address Utilization ( 97) http://www.caida.org/outreach/resources/learn/ipv4space/ --broken 9

Address Problem (1991) Address space depletion In danger of running out of classes A and B Why? Class C too small for most domains Very few class A very careful about giving them out Class B greatest problem Class B sparsely populated But people refuse to give it back Large forwarding tables 2 Million possible class C groups 10

Classless Inter-Domain Routing (CIDR) RFC1338 Allows arbitrary split between network & host part of address Do not use classes to determine network ID Use common part of address as network number E.g., addresses 192.4.16-192.4.31 have the first 20 bits in common. Thus, we use these 20 bits as the network number à 192.4.16/20 Enables more efficient usage of address space (and router tables) à How? Use single entry for range in forwarding tables Combined forwarding entries when possible 11

Aggregation with CIDR Original Use: Aggregate Class C Addresses One organization assigned contiguous range of class C s e.g., Microsoft given all addresses 207.46.192.X -- 207.46.255.X Specify as CIDR address 207.46.192.0/18 0 8 16 24 31 207 46 192 0 cf 2e c0 00 1100 1111 0010 1110 11xx xxxx xxxx xxxx Decimal Hexadecimal Binary Upper 18 bits frozen Represents 2 6 = 64 class C networks Use single entry in routing table Just as if were single network address Lower 14 bits arbitrary 12

CIDR Example Network is allocated 8 class C chunks, 200.10.0.0 to 200.10.7.255 Allocation uses 3 bits of class C space Remaining 21 bits are network number, written as 201.10.0.0/21 Replaces 8 class C routing entries with 1 combined entry Routing protocols carry prefix with destination network address Longest prefix match for forwarding 13

CIDR Illustration Provider is given 201.10.0.0/21 Provider 201.10.0.0/22 201.10.4.0/24 201.10.5.0/24 201.10.6.0/23 14

CIDR Implications Longest prefix match!! 201.10.0.0/21 201.10.6.0/23 Provider 1 Provider 2 201.10.0.0/22 201.10.4.0/24 201.10.5.0/24 201.10.6.0/23 or Provider 2 address 15

Size of Complete Routing Table Source: www.cidrreport.org Shows that CIDR has kept # table entries in check Currently require 124,894 entries for a complete table Only required by backbone routers 16

Addresses: How to Get One? Network (network portion): Get allocated portion of ISP s address space: ISP's block 11001000 00010111 00010000 00000000 200.23.16.0/20 Organization 0 11001000 00010111 00010000 00000000 200.23.16.0/23 Organization 1 11001000 00010111 00010010 00000000 200.23.18.0/23 Organization 2 11001000 00010111 00010100 00000000 200.23.20.0/23....... Organization 7 11001000 00010111 00011110 00000000 200.23.30.0/23 17

Addresses: How to Get One? How does an ISP get block of addresses? From Regional Internet Registries (RIRs) ARIN (North America, Southern Africa), APNIC (Asia-Pacific), RE (Europe, Northern Africa), LACNIC (South America) How about a single host? Hard-coded by system admin in a file DHCP: Dynamic Host Configuration Protocol: dynamically get address: plug-and-play Host broadcasts DHCP discover msg DHCP server responds with DHCP offer msg Host requests address: DHCP request msg DHCP server sends address: DHCP ack msg 18

Delivery Model Best effort service Network will do its best to get packet to destination Does NOT guarantee: Any maximum latency or even ultimate success Sender will be informed if packet doesn t make it Packets will arrive in same order sent Just one copy of packet will arrive Implications Scales very well Higher level protocols must make up for shortcomings Reliably delivering ordered sequence of bytes à TCP Some services not feasible Latency or bandwidth guarantees 19

Fragmentation jokes... are always told in parts host router MTU = 2000 router MTU = 1500 host MTU = 4000 Every network has own Maximum Transmission Unit (MTU) Largest datagram it can carry within its own packet frame E.g., Ethernet is 1500 bytes Don t know MTUs of all intermediate networks in advance Solution When hit network with small MTU, fragment packets 20

Reassembly Where to do reassembly? End nodes or at routers? End nodes Avoids unnecessary work where large packets are fragmented multiple times If any fragment missing, delete entire packet Dangerous to do at intermediate nodes How much buffer space required at routers? What if routes in network change? Multiple paths through network All fragments only required to go through destination 21

Fragmentation Related Fields Length Length of fragment Identification To match up with other fragments Flags Don t fragment flag More fragments flag Fragment offset Where this fragment lies in entire datagram Measured in 8 octet units (13 bit field) 22

Fragmentation Example #1 host MTU = 4000 router Length = 3820, M=0 Header Data 23

Fragmentation Example #2 router MTU = 2000 router Length = 3820, M=0 Header Data Length = 2000, M=1, Offset = 0 Header Data 3800 bytes 1980 bytes Length = 1840, M=0, Offset = 1980 Header Data 1820 bytes 24

Fragmentation Example #3 Length = 1500, M=1, Offset = 0 router MTU = 1500 host Header Data Length = 2000, M=1, Offset = 0 Header Header Data 1980 bytes Length = 1840, M=0, Offset = 1980 Data 1480 bytes Length = 1500, M=1, Offset = 1980 Header Data 1480 bytes Length = 520, M=1, Offset = 1480 Header Data 500 bytes Length = 360, M=0, Offset = 3460 Header Data 1820 bytes 340 bytes 25

Reassembly Length = 1500, M=1, Offset = 0 Header Data Length = 520, M=1, Offset = 1480 Header Data Length = 1500, M=1, Offset = 1980 Header Data Length = 360, M=0, Offset = 3460 Fragments might arrive out-oforder Don t know how much memory required until receive final fragment Some fragments may be duplicated Keep only one copy Some fragments may never arrive After a while, give up entire process Header Data Data Data Data Data 26

Fragmentation and Reassembly Concepts Demonstrates many Internet concepts Decentralized Every network can choose MTU Connectionless Each (fragment of) packet contains full routing information Fragments can proceed independently and along different routes Best effort Fail by dropping packet Destination can give up on reassembly No need to signal sender that failure occurred Complex endpoints and simple routers Reassembly at endpoints 27

Fragmentation is Harmful Uses resources poorly Forwarding costs per packet Best if we can send large chunks of data Worst case: packet just bigger than MTU Poor end-to-end performance Loss of a fragment Path MTU discovery protocol à determines minimum MTU along route Uses ICMP error messages Common theme in system design Assure correctness by implementing complete protocol Optimize common cases to avoid full complexity 28

Internet Control Message Protocol (ICMP) Short messages used to send error & other control information Examples Ping request / response Can use to check whether remote host reachable Destination unreachable Indicates how packet got & why couldn t go further Flow control Slow down packet delivery rate Redirect Suggest alternate routing path for future messages Router solicitation / advertisement Helps newly connected host discover local router Timeout Packet exceeded maximum hop limit 29

MTU Discovery with ICMP host MTU = 4000 router MTU = 2000 Typically send series of packets from one host to another Typically, all will follow same route Routes remain stable for minutes at a time Makes sense to determine path MTU before sending real packets Operation Send max-sized packet with do not fragment flag set If encounters problem, ICMP message will be returned Destination unreachable: Fragmentation needed Usually indicates MTU encountered router MTU = 1500 host 30

MTU Discovery with ICMP ICMP Frag. Needed MTU = 2000 host MTU = 4000 router MTU = 2000 router MTU = 1500 host Length = 4000, Don t Fragment Packet 31

MTU Discovery with ICMP ICMP Frag. Needed MTU = 1500 host MTU = 4000 router MTU = 2000 router MTU = 1500 host Length = 2000, Don t Fragment Packet 32

MTU Discovery with ICMP host MTU = 4000 router MTU = 2000 router MTU = 1500 host Length = 1500, Don t Fragment Packet When successful, no reply at level No news is good news Higher level protocol might have some form of acknowledgement 33

Outline Packet Format v6 NAT 34

v6 Next generation. Most urgent issue: increasing address space. 128 bit addresses Simplified header for faster processing: No checksum (why not?) No fragmentation (?) Support for guaranteed services: priority and flow id Options handled as next header reduces overhead of handling options V/Pr Flow label Length Next Hop L Source address Destination address 35

v6 Addressing Do we need more addresses? Probably, long term Big panic in 90s: We re running out of addresses! Big worry: Devices. Small devices. Cell phones, toasters, everything. 128 bit addresses provide space for structure (good!) Hierarchical addressing is much easier Assign an entire 48-bit sized chunk per LAN use Ethernet addresses Different chunks for geographical addressing, the v4 address space, Perhaps help clean up the routing tables - just use one huge chunk per ISP and one huge chunk per customer. Sub 010 Registry Provider Subscriber Host Net 36

v6 Autoconfiguration Serverless ( Stateless ). No manual config at all. Only configures addressing items, NOT other host things If you want that, use DHCP. Link-local address 1111 1110 10 :: 64 bit interface ID (usually from Ethernet addr) (fe80::/64 prefix) Uniqueness test ( anyone using this address? ) Router contact (solicit, or wait for announcement) Contains globally unique prefix Usually: Concatenate this prefix with local ID à globally unique v6 ID DHCP took some of the wind out of this, but nice for zero-conf (many OSes now do this for both v4 and v6) 37

v6 Cleanup - Router-friendly Common case: Switched in silicon ( fast path ) Weird cases: Handed to CPU ( slow path, or process switched ) Typical division: Fast path: Almost everything Slow path: Fragmentation TTL expiration (traceroute) option handling Slow path is evil in today s environment Christmas Tree attack sets weird options, bits, and overloads router. Developers can t (really) use things on the slow path for data flow. If it became popular, they d be in the soup! Other speed issue: Touching data is expensive. Designers would like to minimize accesses to packet during forwarding. 38

v6 Header Cleanup Different options handling v4 options: Variable length header field. 32 different options. Rarely used No development / many hosts/routers do not support Worse than useless: Packets w/options often even get dropped! Processed in slow path. v6 options: Next header pointer Combines protocol and options handling Next header: TCP, UDP, etc. Extensions header: Chained together Makes it easy to implement host-based options One value hop-by-hop examined by intermediate routers Things like source route implemented only at intermediate hops 39

v6 Header Cleanup No checksum Why checksum just the header? Efficiency: If packet corrupted at hop 1, don t waste b/w transmitting on hops 2..N. Useful when corruption frequent, b/w expensive Today: Corruption rare, b/w cheap 40

v6 Fragmentation Cleanup v4: Large MTU Small MTU Router must fragment v6: Discard packets, send ICMP Packet Too Big Similar to v4 Don t Fragment bit handling Sender must support Path MTU discovery Receive Packet too Big messages and send smaller packets Increased minimum packet size Link must support 1280 bytes; 1500 bytes if link supports variable sizes Reduced packet processing and network complexity. Increased MTU a boon to application writers Hosts can still fragment - using fragmentation header. Routers don t deal with it any more. 41

Migration from v4 to v6 Interoperability with v4 is necessary for gradual deployment. Alternative mechanisms: Dual stack operation: v6 nodes support both address types Translation: Use form of NAT to connect to the outside world NAT must not only translate addresses but also translate between v4 and v6 protocols Tunneling: tunnel v6 packets through v4 clouds 42

Outline Packet Format v6 NAT 43

Altering the Addressing Model Original Model Every host has a unique address Implications Any host can find any other host Any host can communicate with any other host Any host can act as a server Just need to know host ID and port number No Secrecy or Authentication Packet traffic observable by routers and by LANconnected hosts Possible to forge packets Use invalid source address 44

Private Network Accessing Public Internet W: Workstation S: Server Machine W W S Corporation X W NAT Internet Don t have enough addresses for every host in organization Security Don t want every machine in organization known to outside world Want to control or monitor traffic in / out of organization 45

Reducing Addresses W: Workstation S: Server Machine W W S Corporation X W NAT Internet Most machines within organization are used by individuals Workstations For most applications, act as clients Small number of machines act as servers for entire organization E.g., mail server All traffic to outside passes through firewall (Most) machines within organization don t need actual addresses! 46

Network Address Translation (NAT) W: Workstation 10.1.1.1 W NAT W 10.2.2.2 Corporation X 10.3.3.3 W Within Organization Assign every host an unregistered address addresses 10/8 & 192.168/16 unassigned Route within organization by protocol Firewall Doesn t let any packets from internal node escape Outside world doesn t need to know about internal addresses 47

NAT: Opening Client Connection W: Workstation S: Server Machine W Corporation X 10.2.2.2:1000 Firewall has valid address NAT 243.4.4.4 Internet 198.2.4.5:80 S Client 10.2.2.2 wants to connect to server 198.2.4.5:80 OS assigns ephemeral port (1000) Connection request intercepted by firewall Maps client to port of firewall (5000) Creates NAT table entry Int Addr Int Port NAT Port 10.2.2.2 1000 5000 48

NAT: Client Request W: Workstation S: Server Machine 10.5.5.5 243.4.4.4 Corporation X NAT Internet 198.2.4.5:80 W 10.2.2.2:1000 S source: 10.2.2.2 dest: 198.2.4.5 src port: 1000 dest port: 80 source: 243.4.4.4 dest: 198.2.4.5 src port: 5000 dest port: 80 Firewall acts as proxy for client Int Addr Int Port NAT Port 10.2.2.2 1000 5000 Intercepts message from client and marks itself as sender 49

NAT: Server Response W: Workstation S: Server Machine 10.5.5.5 243.4.4.4 Corporation X NAT Internet 198.2.4.5:80 W 10.2.2.2:1000 S source: 198.2.4.5 dest: 10.2.2.2 src port: 80 dest port: 1000 source: 198.2.4.5 dest: 243.4.4.4 src port: 80 dest port: 5000 Firewall acts as proxy for client Acts as destination for server messages Relabels destination to local addresses Int Addr Int Port NAT Port 10.2.2.2 1000 5000 50

NAT: Enabling Servers C: Remote Client S: Server Firewall has valid address 10.3.3.3 S 243.4.4.4 Corporation X NAT Internet 198.2.4.5 C Use port mapping to make servers available Int Addr Int Port NAT Port 10.3.3.3 80 80 Manually configure NAT table to include entry for well-known port External users give address 243.4.4.4:80 Requests forwarded to server 51

NAT address classes A :10.0.0.0~10.255.255.255 B :172.16.0.0~172.31.255.255 C :192.168.0.0~192.168.255.255 52

Properties of Firewalls with NAT Advantages Hides addresses used in internal network Easy to change ISP: only NAT box needs to have address Fewer registered addresses required Basic protection against remote attack Does not expose internal structure to outside world Can control what packets come in and out of system Can reliably determine whether packet from inside or outside Disadvantages Contrary to the open addressing scheme envisioned for addressing Hard to support peer-to-peer applications Why do so many machines want to serve port 1214? 53

NAT Considerations NAT has to be consistent during a session. Set up mapping at the beginning of a session and maintain it during the session Recall 2nd level goal 1 of Internet: Continue despite loss of networks or gateways What happens if your NAT reboots? Recycle the mapping that the end of the session May be hard to detect NAT only works for certain applications. Some applications (e.g. ftp) pass information in payload Need application level gateways to do a matching translation Breaks a lot of applications. Example: Let s look at FTP NAT is loved and hated - Breaks many apps (FTP) - Inhibits deployment of new applications like p2p (but so do firewalls!) + Little NAT boxes make home networking simple. + Saves addresses. Makes allocation simple. 54

Important Concepts Base-level protocol () provides minimal service level Allows highly decentralized implementation Each step involves determining next hop Most of the work at the endpoints ICMP provides low-level error reporting forwarding à global addressing, alternatives, lookup tables addressing à hierarchical, CIDR service à best effort, simplicity of routers packets à header fields, fragmentation, ICMP 55

Next Lecture How do forwarding tables get built? Routing protocols Distance vector routing Link state routing 56