CSEP 561 Internetworking. David Wetherall

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

Network Layer: Internet Protocol

Where we are in the Course

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

Network layer: Overview. Network Layer Functions

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

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

Network Layer Chapter 5

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca

internet technologies and standards

CSCD58 WINTER 2018 WEEK 6 - NETWORK LAYER PART 1. Brian Harrington. February 13, University of Toronto Scarborough

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

CSCI-1680 Network Layer: IP & Forwarding John Jannotti

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca

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

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

IPv6: An Introduction

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

Master Course Computer Networks IN2097

IPv4. Christian Grothoff.

Internet Technology 3/23/2016

Chapter 4 Network Layer

Different Layers Lecture 20

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

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

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

Router Architecture Overview

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

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

Last time. Wireless link-layer. Introduction. Characteristics of wireless links wireless LANs networking. Cellular Internet access

Inter-networking. Problem. 3&4-Internetworking.key - September 20, LAN s are great but. We want to connect them together. ...

Administrivia CSC458 Lecture 4 Bridging LANs and IP. Last Time. This Time -- Switching (a.k.a. Bridging)

Operating Systems and Networks

TDTS06: computer Networks

Operating Systems and Networks. Network Lecture 5: Network Layer 1. Adrian Perrig Network Security Group ETH Zürich

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

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

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

Introduction to Internetworking

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca Instructor: Nicholas DeMarinis

Computer Network Fundamentals Spring Week 4 Network Layer Andreas Terzis

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

Computer Networking Introduction

internet technologies and standards

Network Layer (4): ICMP

Internetworking Part 2

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

Internet Protocols (chapter 18)

Lecture 18 Overview. Last Lecture. This Lecture. Next Lecture. Internet Protocol (1) Internet Protocol (2)

Networking Potpourri: Plug-n-Play, Next Gen

Lecture 4 The Network Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Chapter 4: Network Layer

CS 457 Lecture 11 More IP Networking. Fall 2011

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

Outline. SC/CSE 3213 Winter Sebastian Magierowski York University. ICMP ARP DHCP NAT (not a control protocol) L9: Control Protocols

Announcements. I am not Kurtis. CSE 461 University of Washington 2

Information Network Systems The network layer. Stephan Sigg

Lecture 10: Addressing

IPv6 Protocols and Networks Hadassah College Spring 2018 Wireless Dr. Martin Land

IP - The Internet Protocol

ICS 451: Today's plan

CS 348 Computer Networks. IP and Routing. Indian Institute of Technology, Bombay

The Internetworking Problem. Internetworking. A Translation-based Solution

Data Communication & Networks G Session 7 - Main Theme Networks: Part I Circuit Switching, Packet Switching, The Network Layer

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

Network Layer Overview. Star8ng the Network Layer! Builds on the link layer. Routers send packets over mul8ple networks

Introduc3on to Computer Networks

EEC-684/584 Computer Networks

On Distributed Communications, Rand Report RM-3420-PR, Paul Baran, August 1964

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

ETSF05/ETSF10 Internet Protocols Network Layer Protocols

Internet Control Message Protocol

Network layer Network Layer 4-1

CSC 4900 Computer Networks: Network Layer

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

CSC 401 Data and Computer Communications Networks

IPv6. IPv4 & IPv6 Header Comparison. Types of IPv6 Addresses. IPv6 Address Scope. IPv6 Header. IPv4 Header. Link-Local

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

Vorlesung Kommunikationsnetze

Network Layer: DHCP, ICMP, NAT, IPv6

CSCI-1680 Network Layer:

Topics for This Week

CS 43: Computer Networks The Network Layer. Kevin Webb Swarthmore College November 2, 2017

C14a: Internetworks and The Internet

ET4254 Communications and Networking 1

CMPE 80N: Introduction to Networking and the Internet

Chapter 4 Network Layer

Recap. Recap. Internetworking. First mile problem. Internet. End Users. Last mile problem. Direct link networks Packet switching.

COSC4377. TCP vs UDP Example Statistics

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

Network Layer (Routing)

Networking: Network layer

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

Chapter 4: network layer

Internet Control Message Protocol (ICMP)

Integrated Services. Integrated Services. RSVP Resource reservation Protocol. Expedited Forwarding. Assured Forwarding.

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

Internetworking Part 2

Chapter 19 Network Layer: Logical Addressing

Transcription:

CSEP 561 Internetworking David Wetherall djw@cs.washington.edu

Internetworking t Focus: Joining multiple, different networks into one larger network Forwarding models Application Heterogeneity Transport IPv4 and IPv6 formats Link layer glue: DHCP, ARP ICMP for error reporting Fragmentation and Path MTU discovery Network Link Physical djw // CSEP 561, Winter 2012 2

Store-and-Forward Packet Switching Hosts send packets into the network; ;packets are forwarded by routers ISP s equipment djw // CSEP 561, Winter 2012

Connectionless Service Datagrams Packet is forwarded using destination address inside it Different packets may take different paths ISP s equipment A s table (initially) A s table (later) C s Table E s Table Dest. Line djw // CSEP 561, Winter 2012 4

Connection-Oriented Virtual Circuits Packet is forwarded along a virtual circuit using tag inside it Virtual circuit (VC) is set up ahead of time ISP s equipment A s table C s Table E s Table In: Line Tag Line Tag: Out djw // CSEP 561, Winter 2012 5

Comparison of Virtual-Circuits & Datagrams djw // CSEP 561, Winter 2012 6

Internetworking t Issues of heterogeneity and scale djw // CSEP 561, Winter 2012 7

Scale (mostly routing issue) Use hierarchy by routing to: IP prefixes = groups of related addresses Autonomous systems = entire (ISP) networks We will explore as part of inter-domain routing Route scaling methods also affect forwarding: Longest Matching Prefix (LMP) rule Network Address Translation (NAT) boxes djw // CSEP 561, Winter 2012 8

Heterogeneity (mostly forwarding issue) How might networks differ? Service model (datagrams vs. connections) Quality of service / priorities Security Maximum packet length How can we deal with these differences? Service model: not easily QOS: we re screwed, or we overprovision Security: add what we can end-to-end Packet lengths: path MTU discovery djw // CSEP 561, Winter 2012 9

Sample issue: differing i service models Datagram (connectionless, best-effort) dli delivery: postal service Network can t guarantee delivery of the packet Each packet from a host is routed independently Example: IP, switched Ethernet Virtual circuit (connection-oriented) delivery: telephone Signaling: connection establishment, data transfer, teardown All packets from a host are routed the same way (router state) Example: MPLS, ATM, Frame Relay, X.25 Q: How do we combine them? A: Not easily! djw // CSEP 561, Winter 2012 10

Internetworking t with IP IP enables communication over different networks Defines function of lowest common denominator Includes necessary glue Allows innovation of link technologies and apps Protocols with IP as the narrow waist djw // CSEP 561, Winter 2012 11

IPv4 Packet Format Version is 4; addresses are 32 bit addresses Header length in 32 bit words, limits size of options DiffServ field used to be TOS djw // CSEP 561, Winter 2012 12

IP Version 6 (1) Major upgrade in the 1990s due to impending address exhaustion, with various other goals: Support billions of hosts Reduce routing table size Simplify protocol Better security Attention to type of service Aid multicasting Roaming host without changing address Allow future protocol evolution Permit coexistence of old, new protocols, Deployment has been slow & painful, but may pick up pace now that addresses are all but exhausted djw // CSEP 561, Winter 2012

IP Version 6 (2 ) IPv6 protocol header has much longer addresses (128 vs. 32 bits) and is simpler to process djw // CSEP 561, Winter 2012

IP Version 6 (3) Additions: Longer addresses (128 bits) Flow label is added (grouping hint to network) Simplifications: Header checksum is gone Weird stuff moved to optional extensions (e.g., fragments and identification) (Upper) Protocol combined with Next Header Header length is now fixed TTL renamed Hop Limit djw // CSEP 561, Winter 2012

IP Version 6 (3) IPv6 extension headers handles other functionality djw // CSEP 561, Winter 2012

IPv4 Exhaustion IANA allocated last /8s to RIRs in 2/2011 APNIC ran out in 4/2011, other RIRs following soon Uh oh, no more IPv4 addresses! djw // CSEP 561, Winter 2012

IPv6 Deployment Time for some growth! djw // CSEP 561, Winter 2012

IPv6 Deployment Strategies Dual stacks Host reachable via IPv4 and IPv6 connectivity DNS can return both IPv6 and IPv4 addresses Tunneling, e.g., join IPv6 islands over IPv4 core Want to configure tunnels automatically Many schemes, e.g., 6to4, 6rd, IPv6 IPv6 IPv4 IPv4 header IPv6 packet (IP protocol 41) djw // CSEP 561, Winter 2012

Link layer glue Binds network (IP) and link (Ethernet) layers together In the Internet: t Host getting an IP address: DHCP Host getting IP address of the default gateway: DHCP Host getting local Ethernet address given an IP host: ARP djw // CSEP 561, Winter 2012 20

Dynamic Host Configuration Protocol (DHCP) Q: How does a host get an IP address? A: DHCP, designed in 1993 DHCP is widespread for the dynamic assignment of IP addresses, e.g., CSE, your cable company, Host broadcasts request; DHCP server responds with IP Example of a local discovery protocol Extensions: Supports temporary allocation ( leases ) of IP addresses DHCP client can acquire all IP configuration parameters djw // CSEP 561, Winter 2012 21

DHCP protocol stack Runs on top of UDP/IP Port 67 and 68 Ethernet / IP destination of broadcast (ff:ff:ff:ff:ff:ff and 255.255.255.255) are used for discovery / coordination Everyone on LAN sees them Host (li (client) uses IP address of 0.0.0.0 meaning this host on this network until DHCP server gives it another IP DHCP UDP IP Ethernet djw // CSEP 561, Winter 2012 22

DHCP operation (DORA) Discovers finds DHCP server, requests address and more Offer advertises lease to client Request asks for a given lease Ack grants it and more info Client then switches to new IP Client can send a release message to relinquish IP djw // CSEP 561, Winter 2012 23

Address Resolution Protocol (ARP) Problem: We want to send to an IP address, but how do we find the right link layer address to put in the frame? Solution: ARP maps next IP to local Ethernet address ARP Request: Who has 192.168.1.1? ARP Reply: Ethernet address: 00:FE:2B:54:39:A1 djw // CSEP 561, Winter 2012 24

IP/Ethernet Addressing Example ARP (Address Resolution Protocol) lets nodes find target Ethernet addresses [pink] from their IP addresses djw // CSEP 561, Winter 2012 25

IP/Ethernet Addressing Example ARP (Address Resolution Protocol) lets nodes find target Ethernet addresses [pink] from their IP addresses djw // CSEP 561, Winter 2012 26

Internet Control Protocols (1) IP works with the help of several control protocols: ICMP is a companion to IP that returns error info Required, and used in many ways, e.g., for traceroute ARP finds Ethernet address of a local IP address Glue that is needed to send any IP packets Host queries an address and the owner replies DHCP assigns a local IP address to a host Gets host started by automatically configuring it Host sends request to server, which grants a lease djw // CSEP 561, Winter 2012

ICMP Generation IP packet source Error during forwarding! dest ICMP IP packet djw // CSEP 561, Winter 2012 28

Common ICMP Messages Destination unreachable Destination can be host, network, port or protocol Redirect To shortcut circuitous routing TTL Expired Used by the traceroute program Echo request/reply Used by the ping program ICMP messages include portion of IP packet that triggered the error (if applicable) in their payload djw // CSEP 561, Winter 2012 29

Fragmentation Issue Sending small packets is wasteful, but don t know a priori how large a packet will fit through the network One solution: network fragmentation (IPv4 only) Network breaks large packets that are too large Reassemble at destination (Why?) Turns out to be bad (Why?) Better solution: discover largest packet for each a path (the path MTU ) and tell the sender. (Downsides?) djw // CSEP 561, Winter 2012 30

Path thmtu Discovery with ithicmp Path MTU is the smallest MTU along path Packets less than this size don t get fragmented djw // CSEP 561, Winter 2012 31

Path MTU Discovery Hosts send packets, routers return error to host if packet too large Use DF (Don t Fragment) header flag Hosts discover limits, can fragment at source Reassembly at destination as before Even better: Host IP tells higher layer the right MTU to use; no fragmentation At the cost of a layering violation djw // CSEP 561, Winter 2012 32