ECE 158A: Lecture 7. Fall 2015

Similar documents
The IP Data Plane: Packets and Routers

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

Network Layer: Control/data plane, addressing, routers

Network Layer: Internet Protocol

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

CSCE 463/612 Networks and Distributed Processing Spring 2018

Network Layer PREPARED BY AHMED ABDEL-RAOUF

Lecture 8. 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.

1-1. Switching Networks (Fall 2010) EE 586 Communication and. October 25, Lecture 24

ECE 4450:427/527 - Computer Networks Spring 2017

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

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

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

Network layer: Overview. Network Layer Functions

Router Architecture Overview

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

Quiz. Segment structure and fields Flow control (rwnd) Timeout interval. Phases transition ssthresh setting Cwnd setting

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

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

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

Master Course Computer Networks IN2097

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca

CSC 401 Data and Computer Communications Networks

Chapter 4: Network Layer

COMP211 Chapter 4 Network Layer: The Data Plane

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

Computer Network Fundamentals Spring Week 4 Network Layer Andreas Terzis

COMP/ELEC 429/556 Introduction to Computer Networks

internet technologies and standards

Network Layer/IP Protocols

Lecture 9: Internetworking

IPv4. Christian Grothoff.

Introduction to Internetworking

Communication Networks

CSCI-1680 Network Layer: IP & Forwarding John Jannotti

EITF25 Internet Techniques and Applications L7: Internet. Stefan Höst

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

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca

EEC-684/584 Computer Networks

Chapter 5 Network Layer

Communications Software. CSE 123b. CSE 123b. Spring Lecture 2: Internet architecture and. Internetworking. Stefan Savage

Chapter 4: network layer

End-to-End Communication

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

Networking: Network layer

CSCI Computer Networks Fall 2016

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

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

CS 457 Networking and the Internet. Problems. Mechanisms 9/21/16. Fall 2016 Indrajit Ray

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

OSI Network Layer. Network Fundamentals Chapter 5. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1

Network Layer. IP Protocol Stack: Key AbstracHons. Best- Effort Global Packet Delivery. Circuit Switching (e.g., Phone Network)

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

Lecture 16: Network Layer Overview, Internet Protocol

CSC 4900 Computer Networks: Network Layer

Internet Protocol (IP)

Lecture 3: Packet Forwarding

Network Layer: outline

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

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

Topics for This Week

Internetworking Part 2

EP2120 Internetworking/Internetteknik IK2218 Internets Protokoll och Principer

Lecture 12: Aggregation. CSE 123: Computer Networks Alex C. Snoeren

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

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

CSC 401 Data and Computer Communications Networks

Ref: A. Leon Garcia and I. Widjaja, Communication Networks, 2 nd Ed. McGraw Hill, 2006 Latest update of this lecture was on

Network Layer: Router Architecture, IP Addressing

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

CSC358 Week 6. Adapted from slides by J.F. Kurose and K. W. Ross. All material copyright J.F Kurose and K.W. Ross, All Rights Reserved

CMPE 80N: Introduction to Networking and the Internet

LOGICAL ADDRESSING. Faisal Karim Shaikh.

EEC-484/584 Computer Networks

The Network Layer Forwarding Tables and Switching Fabric

internet technologies and standards

ECE 461 Internetworking Fall Quiz 1

IP - The Internet Protocol

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

Vorlesung Kommunikationsnetze

Chapter 4 Network Layer

Lecture 17 Overview. Last Lecture. Wide Area Networking (2) This Lecture. Internet Protocol (1) Source: chapters 2.2, 2.3,18.4, 19.1, 9.

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

Networks. an overview. dr. C. P. J. Koymans. Informatics Institute University of Amsterdam. February 4, 2008

IP Protocols. ALTTC/Oct

Internet Technology 3/23/2016

The Internet Protocol (IP)

The Interconnection Structure of. The Internet. EECC694 - Shaaban

Goal of Today s Lecture. EE 122: Designing IP. The Internet Hourglass. Our Story So Far (Context) Our Story So Far (Context), Con t

CH. 3 IP FORWARDING AND ROUTING

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

Lecture 12: Addressing. CSE 123: Computer Networks Alex C. Snoeren

The Internet. 9.1 Introduction. The Internet is a global network that supports a variety of interpersonal and interactive multimedia applications.

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

Chapter 4 Network Layer

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

OSI Network Layer. Chapter 5

CC231 Introduction to Networks Dr. Ayman A. Abdel-Hamid. Internet Protocol Suite

Transcription:

ECE 158A: Lecture 7 Fall 2015

Outline We have discussed IP shortest path routing Now we have a closer look at the IP addressing mechanism We are still at the networking layer, we will examine: IP Headers IP Addressing Routers

Encapsulation IP, like any other protocol, adds control information as a packet header User A User B application transport network link

IP Header IP packet is divided in header and payload Header Payload Payload contains TCP/UDP header IP routers only read the IP packet header IP header must contain all information needed to perform tasks of routing layer

Routing Layer Tasks Routing layer is responsible for Reading packet correctly Getting packet to the destination; getting responses back to the source Carrying data Telling host what to do with packet once arrived Specifying any special network handling of the packet Dealing with problems that arise along the path All the control information needed to achieve these tasks is contained in the IP header

General philosophy Smart edge DUMB Core If something goes wrong don t deal with it, just drop the packet! TPC will take care of it

IPv4 Header Structure 4-bit Version 4-bit Header Length 8-bit Type of Service (TOS) 16-bit Total Length (Bytes) 16-bit Identification 3-bit Flags 13-bit Fragment Offset 8-bit Time to Live (TTL) 8-bit Protocol 16-bit Header Checksum 32-bit Source IP Address 32-bit Destination IP Address Options (if any) Payload

Reading Packet Correctly 4-bit Version 4-bit Header Length 8-bit Type of Service (TOS) 16-bit Total Length (Bytes) 16-bit Identification 3-bit Flags 13-bit Fragment Offset 8-bit Time to Live (TTL) 8-bit Protocol 16-bit Header Checksum 32-bit Source IP Address 32-bit Destination IP Address Options (if any) Payload

Reading Packet Correctly Version number (4 bits) Indicates the version of the IP protocol Necessary to know what other fields to expect Typically 4 (for IPv4), and sometimes 6 (for IPv6) Header length (4 bits) Number of 32-bit words in the header Typically 5 (for a 20-byte IPv4 header) Can be more when IP options are used Total length (16 bits) Number of bytes in the packet Maximum size is 65,535 bytes though underlying links may impose smaller limits

Get to the Destination (and Back) 4-bit Version 4-bit Header Length 8-bit Type of Service (TOS) 16-bit Total Length (Bytes) 16-bit Identification 3-bit Flags 13-bit Fragment Offset 8-bit Time to Live (TTL) 8-bit Protocol 16-bit Header Checksum 32-bit Source IP Address 32-bit Destination IP Address Options (if any) Payload

How to Handle Packet 4-bit Version 4-bit Header Length 8-bit Type of Service (TOS) 16-bit Total Length (Bytes) 16-bit Identification 3-bit Flags 13-bit Fragment Offset 8-bit Time to Live (TTL) 8-bit Protocol 16-bit Header Checksum 32-bit Source IP Address 32-bit Destination IP Address Options (if any) Payload

How to Handle Packet Protocol (8 bits) Identifies the higher-level protocol Important for demultiplexing at receiving host L7 Application SMTP HTTP DNS NTP L4 Transport TCP UDP L3 Network IP L2 Data link Ethernet FDDI PPP L1 Physical optical copper radio PSTN Most common examples E.g., 6 for the Transmission Control Protocol (TCP) E.g., 17 for the User Datagram Protocol (UDP)

Potential Problems 4-bit Version 4-bit Header Length 8-bit Type of Service (TOS) 16-bit Total Length (Bytes) 16-bit Identification 3-bit Flags 13-bit Fragment Offset 8-bit Time to Live (TTL) 8-bit Protocol 16-bit Header Checksum 32-bit Source IP Address 32-bit Destination IP Address Options (if any) Payload

Potential Problems Three potential problems Header Corrupted: Checksum, 16 bits Checksum over packet header If not correct, router discards packets Recalculated at every router Packet in a Loop: Time-to-Live (TTL), 8 bits Decremented at each hop, packet discarded if reaches 0 and time exceeded message is sent to the source Used to avoid infinite loops Packet too large: Fragmentation

Potential Problems When forwarding a packet, an Internet router can fragment it into multiple pieces ( fragments ) if the packet is too big for next hop link too big = exceeds the link s Max Transmission Unit (MTU) Must reassemble to recover original packet Need fragmentation information (32 bits) Packet identifier, flags, and fragment offset

IP Fragmentation: Example router! MTU = 2000! router! Length = 3820, M=0! IP! Header! IP! Data! Length = 2000, M=1, Offset = 0! IP! Header! IP! Data! 3800 bytes! 1980 bytes! Length = 1840, M=0, Offset = 1980! IP! Header! IP! Data! 1820 bytes!

Special Handling Not often used 4-bit Version 4-bit Header Length 8-bit Type of Service (TOS) 16-bit Total Length (Bytes) 16-bit Identification 3-bit Flags 13-bit Fragment Offset 8-bit Time to Live (TTL) 8-bit Protocol 16-bit Header Checksum 32-bit Source IP Address 32-bit Destination IP Address Options (if any) Payload

IP Addresses!

IP Addresses (IPv4) Unique 32-bit, e.g., 12.34.158.5: 12 34 158 5 00001100 00100010 10011110 00000101 Bits are partitioned into a prefix and suffix components Prefix is the network component; suffix is host component 12 34 158 5 00001100 00100010 10011110 00000101 Network (23 bits) Host (9 bits) Notation: 12.34.158.0/23 represents a slash 23 network with a 23 bit prefix and 2 9 host addresses

History of IP Addressing First design: network 8 bits and host 24 bits Can only index 256 networks! Next design: Partition addresses in classes Can only support three sizes of networks 0 8 0 network host Class A 126 nets ~16M hosts Class B 0 1 0 network 16 host ~16K nets ~65K hosts Class C 0 1 1 0 network 24 host ~2M nets 254 hosts Class D and E used for multicast and experiments

IP Address Utilization ( 97) http://www.caida.org/research/traffic-analysis/fixwest-1998/ipv4space/ Map of available IPv4 address space with traffic activity superimposed (in yellow),

Current IP Addressing To offer a better tradeoff between size of the routing table and efficient use of the IP address space, today we use CIDR CIDR = Classless Inter-Domain Routing Idea: Flexible division between network and host addresses Boundary between network and host must be explicitly specified Informally, slash 26, i.e., 128.23.9/26 Formally, represent length of prefix with a 32-bit mask: 255.255.255.192 where all network prefix bits set to 1 and host suffix bits to 0

Subnets via IP Masks Subnet masks add another variable-length layer to hierarchy Subnet a class B into several chunks Network Host Network Subnet Host 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 Subnet Mask Example: An organization needs 500 addresses. A single class C address not enough (254 hosts). Instead a class B address is allocated. (~65K hosts) CIDR allows an arbitrary prefix-suffix boundary Hence, organization allocated a single /23 address

Hierarchical Allocation of Addresses Internet Corporation for Assigned Names and Numbers (ICANN) gives large blocks to Regional Internet Registries (e.g., ARIN), which give blocks to ARIN = American Registry for Internet Numbers Large institutions (ISPs), which give addresses to Individuals and smaller institutions Example: ICANNARINAT&TUCSDECE

Allocation of IP Addresses http://en.wikipedia.org/wiki/list_of_assigned_/ 8_IPv4_address_blocks

Example in More Detail ICANN gives ARIN several /8s ARIN gives AT&T one /8, 12.0/8 Network Prefix: 00001100 AT&T gives UCSD a /16, 12.197/16 Network Prefix: 0000110011000101 UCSD gives ECE a /24, 12.197.45/24 Network Prefix: 000011001100010100101101 ECE gives me a specific address 12.197.45.23 Address: 00001100110001010010110100010111

How to Get and IP Address In practice, there are two ways network administrators use to assign IP addresses Hard-code assignments 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 IP address: DHCP request msg DHCP server sends address: DHCP ack msg

Summary of Addressing Hierarchical addressing Critical for scalable system Do not require everyone to know everyone else Reduces amount of updating when something changes Non-uniform hierarchy Useful for heterogeneous networks of different sizes Class-based addressing was far too coarse Classless InterDomain Routing (CIDR) more flexible

IP Routers!

IP Routers Core building block of the Internet infrastructure $120B+ industry Vendors: Cisco, Huawei, Juniper, Alcatel-Lucent (account for >90%) Definitions: N N-1 1 2 3 N = number of external router ports R = speed ( line rate ) of a port Router capacity = N x R 5 R bits/sec 4

Networks and routers UCSD home, small business AT&T core edge (enterprise) BBN edge (ISP) core NYU

Examples of routers (core) Juniper T4000 R= 10/40 Gbps NR = 4 Tbps Cisco CRS R=10/40/100 Gbps NR = 322 Tbps 72 racks, 1MW

Examples of routers (edge) Cisco ASR 1006 R=1/10 Gbps NR = 40 Gbps Juniper M120 R= 2.5/10 Gbps NR = 120 Gbps

Examples of routers (small business) Cisco 3945E R = 10/100/1000 Mbps NR < 10 Gbps

What s inside a router? Input and Output for the same port are on one physical linecard Processes packets on their way in Route/Control Processor Linecards (input) 1 Processes packets Linecards before (output) they leave 1 2 N Interconnect (Switching) Fabric 2 Transfers packets from input to output ports N

What s inside a router? Route/Control Processor (1) Implement IGP and (2) Push BGP forwarding protocols; compute tables to routing the line tables cards Linecards (input) 1 Linecards (output) 1 2 Interconnect (Switching) Fabric 2 N N

What s inside a router? Constitutes the control plane Linecards (input) 1 Route/Control Processor Linecards (output) 1 Constitutes the data plane 2 Interconnect Fabric 2 N N

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