Network Layer: Internet Protocol

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

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

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

Network layer: Overview. Network Layer Functions

Master Course Computer Networks IN2097

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

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

Chapter 4: Network Layer

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

Router Architecture Overview

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

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

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

Computer Networking Introduction

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

internet technologies and standards

CSC 401 Data and Computer Communications Networks

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

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

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

internet technologies and standards

COMP211 Chapter 4 Network Layer: The Data Plane

Δίκτυα Υπολογιστών ΙΙ. Κώστας Μαγκούτης Επίκουρος Καθηγητής Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων

CMPE 80N: Introduction to Networking and the Internet

Network Layer: Control/data plane, addressing, routers

Network Layer PREPARED BY AHMED ABDEL-RAOUF

Different Layers Lecture 20

Chapter 4: network layer

TDTS06: computer Networks

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

CSCI Computer Networks Fall 2016

CSCE 463/612 Networks and Distributed Processing Spring 2018

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

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

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

Computer Network Fundamentals Spring Week 4 Network Layer Andreas Terzis

Chapter 4 Network Layer

IPv4. Christian Grothoff.

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

CS 3516: Advanced Computer Networks

Chapter 4 Network Layer

CSC 4900 Computer Networks: Network Layer

Chapter 4 Network Layer

Chapter 4 Network Layer

Data Communications & Networks. Session 7 Main Theme Networks: Part I Circuit Switching, Packet Switching, The Network Layer

Chapter 4 Network Layer: The Data Plane

Chapter 4 Network Layer: The Data Plane

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca

ECE 4450:427/527 - Computer Networks Spring 2017

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

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

Network Layer: Router Architecture, IP Addressing

Network Layer: Data Plane 4-2

Vorlesung Kommunikationsnetze

Introduction to Computer Networking. Guy Leduc. Chapter 4 Network Layer: The Data Plane. Chapter 4: Network Layer Data Plane

Lecture 5 The Network Layer part II. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

CSCI-1680 Network Layer: IP & Forwarding John Jannotti

Network layer Network Layer 4-1

Chapter 4 Network Layer: The Data Plane

Chapter 4 Network Layer: The Data Plane

Chapter 4 Network Layer: The Data Plane

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

Computer Networks Principles Network Layer - IP

Internet Protocol (IP)

3.7 TCP congestion. reliable data transfer. sliding window. Lecture 4: Transport layer III: flow control and congestion control & Network layer I: IP

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

CS 3516: Computer Networks

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

ECE 158A: Lecture 7. Fall 2015

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

CS 3516: Advanced Computer Networks

Network layer. Network Layer 4-1. application transport network data link physical. network data link physical. network data link physical

Course on Computer Communication and Networks. Lecture 6 Network Layer part 1: Data Plane Chapter 4 (7/e) (6/e Ch4-first part)

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

CSEP 561 Internetworking. David Wetherall

Chapter 4: Network Layer

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

Internetworking With TCP/IP

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

Lecture 16: Network Layer Overview, Internet Protocol

The Network Layer Forwarding Tables and Switching Fabric

CSCI-1680 Network Layer: IP & Forwarding Rodrigo Fonseca

Chapter 4: Network Layer

RSC Part II: Network Layer 3. IP addressing (2nd part)

Internetworking Part 2

CS 457 Lecture 11 More IP Networking. Fall 2011

NETWORK LAYER DATA PLANE

Distributed Systems. 7. Network Layer. Werner Nutt

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

Network Layer: DHCP, ICMP, NAT, IPv6

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

Chapter 4 Network Layer: The Data Plane

Chapter 4 Network Layer

Chapter 4 Network Layer

Routers. Session 12 INST 346 Technologies, Infrastructure and Architecture

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

Network Layer: Chapter 4. The Data Plane. Computer Networking: A Top Down Approach

Chapter 4 Network Layer: The Data Plane

Chapter 4 Network Layer: The Data Plane

Chapter 4 Network Layer: The Data Plane

Transcription:

Network Layer: Internet Protocol

Motivation Heterogeneity Scale Intering IP is the glue that connects heterogeneous s giving the illusion of a homogenous one. Salient Features Each host is identified by a unique 32 bit identifier. Best Effort Service Model Global Addressing Scheme

Network layer functions transport packet from sending to receiving hosts layer protocols in every host, router three important functions: path determination: route taken by packets from source to dest. Routing algorithms switching: move packets from router s input to appropriate router output call setup: some architectures require router call setup along path before data flows application transport data link physical data link physical data link physical data link physical data link physical data link physical data link physical data link physical data link physical application transport data link physical

The Internet Model no call setup at layer routers: no state about end-to-end connections no -level concept of connection packets typically routed using destination host ID packets between same source-dest pair may take different paths application transport data link physical 1. Send data 2. Receive data application transport data link physical

The Internet: Service Model Connectionless Datagram based Best-effort delivery (unreliable service) packets are lost packets are delivered out of order duplicate copies of a packet may be delivered packets can be delayed for a long time

IP Internet Concatenation of Networks Network 1 (Ethernet) H7 R3 H8 H1 H2 H3 Network 2 (Ethernet) R1 Network 4 (point-to-point) R2 Protocol Stack H4 H5 Network 3 (FDDI) H6 H1 H8 TCP R1 R2 R3 TCP IP IP IP IP IP ETH ETH FDDI FDDI PPP PPP ETH ETH

IP datagram format IP protocol version number header length (32 bit words) type of data max number remaining hops (decremented at each router) upper layer protocol to deliver payload to ver head. len 16-bit identifier time to live type of service upper layer 32 bits flgs length fragment offset Internet checksum 32 bit source IP address 32 bit destination IP address Options (if any) data (variable length, typically a TCP or UDP segment) total datagram length (bytes) for fragmentation/ reassembly E.g. timestamp, record route taken, specify list of routers to visit.

IP Fragmentation & Reassembly links have MTU (max.transfer size) - largest possible link-level frame. 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

IP Fragmentation and Reassembly length =4000 ID =x fragflag =0 offset =0 One large datagram becomes several smaller datagrams length =1500 ID =x fragflag =1 offset =0 length =1500 ID =x fragflag =1 offset =1480 length =1040 ID =x fragflag =0 offset =2960

ICMP: Internet Control Message Protocol used by hosts, routers, gateways to communication -level information error reporting: unreachable host,, port, protocol echo request/reply (used by ping) -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. unreachable 3 1 dest host unreachable 3 2 dest protocol unreachable 3 3 dest port unreachable 3 6 dest unknown 3 7 dest host unknown 4 0 source quench (congestion control - not used) 8 0 echo request (ping) 9 0 route advertisement 10 0 router discovery 11 0 TTL expired 12 0 bad IP header

IP Addressing: Introduction IP address: 32-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 interface, not host, router 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 223.1.3.1 223.1.3.27 223.1.2.2 223.1.3.2 223.1.1.1 = 11011111 00000001 00000001 00000001 223 1 1 1

IP Addressing IP address: part (high order bits) host part (low order bits) What s a? (from IP address perspective) device interfaces with same part of IP address can physically reach each other without intervening router 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 223.1.3.1 223.1.3.27 LAN 223.1.2.2 223.1.3.2 consisting of 3 IP s (for IP addresses starting with 223, first 24 bits are address)

IP Addressing How to find the s? Detach each interface from router, host create islands of isolated s 223.1.1.1 223.1.1.2 223.1.1.4 223.1.1.3 223.1.9.2 223.1.7.0 223.1.9.1 223.1.7.1 223.1.8.1 223.1.8.0 Interconnected system consisting of six s 223.1.2.1 223.1.2.6 223.1.2.2 223.1.3.1 223.1.3.27 223.1.3.2

0 IP Addresses given notion of, let s re-examine IP addresses: class-full addressing: class A B C host 10 host 110 host 1.0.0.0 to 127.255.255.255 128.0.0.0 to 191.255.255.255 192.0.0.0 to 223.255.255.255 D 1110 multicast address 32 bits 224.0.0.0 to 239.255.255.255

IP addressing: CIDR classful addressing: inefficient use of address space, address space exhaustion e.g., class B net allocated enough addresses for 65K hosts, even if only 2K hosts in that CIDR: Classless InterDomain Routing portion of address of arbitrary length address format: a.b.c.d/x, where x is # bits in portion of address part host part 11001000 00010111 00010000 00000000 200.23.16.0/23

IP addresses: how to get one? Hosts (host portion): 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 IP address: DHCP request msg DHCP server sends address: DHCP ack msg

IP addresses: how to get one? 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

Hierarchical addressing: route aggregation Hierarchical addressing allows efficient advertisement of routing information: Organization 0 200.23.16.0/23 Organization 1 200.23.18.0/23 Organization 2 200.23.20.0/23 Organization 7.... Fly-By-Night-ISP Send me anything with addresses beginning 200.23.16.0/20 Internet 200.23.30.0/23 ISPs-R-Us Send me anything with addresses beginning 199.31.0.0/16

Hierarchical addressing: more specific routes ISPs-R-Us has a more specific route to Organization 1 Organization 0 200.23.16.0/23 Organization 2 200.23.20.0/23 Organization 7 200.23.30.0/23.... Organization 1 200.23.18.0/23 Fly-By-Night-ISP ISPs-R-Us Send me anything with addresses beginning 200.23.16.0/20 Send me anything with addresses beginning 199.31.0.0/16 or 200.23.18.0/23 Internet

IP addressing: the last word... Q: How does an ISP get block of addresses? A: ICANN: Internet Corporation for Assigned Names and Numbers allocates addresses manages DNS assigns domain names, resolves disputes

Getting a datagram from source to dest. IP datagram: misc fields source IP addr dest IP addr data datagram remains unchanged, as it travels source to destination addr fields of interest here A B 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 routing table in A Dest. Net. next router Nhops 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 223.1.3.1 223.1.3.27 223.1.2.2 223.1.3.2 E

Getting a datagram from source to dest. misc fields 223.1.1.1 223.1.1.3 data Starting at A, given IP datagram addressed to B: look up net. address of B find B is on same net. as A link layer will send datagram directly to B inside link-layer frame B and A are directly connected A B Dest. Net. next router Nhops 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 223.1.3.1 223.1.3.27 223.1.2.2 223.1.3.2 E

Getting a datagram from source to dest. misc fields 223.1.1.1 223.1.2.3 data Starting at A, dest. E: look up address of E E on different A, E not directly attached routing table: next hop router to E is 223.1.1.4 link layer sends datagram to router 223.1.1.4 inside linklayer frame datagram arrives at 223.1.1.4 continued.. A B Dest. Net. next router Nhops 223.1.1 1 223.1.2 223.1.1.4 2 223.1.3 223.1.1.4 2 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 223.1.3.1 223.1.3.27 223.1.2.2 223.1.3.2 E

Getting a datagram from source to dest. Dest. next misc fields 223.1.1.1 223.1.2.3 data router Nhops interface 223.1.1-1 223.1.1.4 Arriving at 223.1.4, destined for 223.1.2.2 look up address of E E on same as router s interface 223.1.2.9 router, E directly attached link layer sends datagram to 223.1.2.2 inside link-layer frame via interface 223.1.2.9 datagram arrives at 223.1.2.2!!! 223.1.2-1 223.1.2.9 223.1.3-1 223.1.3.27 A B 223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.2.9 223.1.1.3 223.1.3.1 223.1.3.27 223.1.2.2 223.1.3.2 E