Lecture 8: The Network Layer.

Slides:



Advertisements
Similar presentations
Chapter 18 Introduction to Network Layer 18.# 1
Advertisements

Introduction 1-1 1DT066 Distributed Information System Chapter 4 Network Layer.
4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side, delivers.
Chapter 4 Network Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 14.
10 - Network Layer. Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving.
Network Layer Overview and IP
Chapter 4 Network Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 13.
1 Lecture 11: The Network Layer Slides adapted from: Congestion slides for Computer Networks: A Systems Approach (Peterson and Davis) Chapter 3 slides.
Network Layer4-1 Data Communication and Networks Lecture 6 Networks: Part 1 Circuit Switching, Packet Switching, The Network Layer October 13, 2005.
ECE 526 – Network Processing Systems Design Packet Processing II: algorithms and data structures Chapter 5: D. E. Comer.
7/3/2015 Unit-3 : Network Layer 1 CS 1302 Computer Networks — Unit - 3 — — Network Layer — Text Book Behrouz.A. Forouzan, “Data communication and Networking”,
Network Layer4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side,
Chapter 4 Network Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 15.
IP-UDP-RTP Computer Networking (In Chap 3, 4, 7) 건국대학교 인터넷미디어공학부 임 창 훈.
Fall 2006Computer Networks19-1 Chapter 19. Host-to-Host Delivery: Internetworking, Addressing, and Routing 19.1 Internetworks 19.2 Addressing 19.3 Routing.
Adapted from: Computer Networking, Kurose/Ross 1DT066 Distributed Information Systems Chapter 4 Network Layer.
G64INC Introduction to Network Communications Ho Sooi Hock Internet Protocol.
Network Technologies essentials Week 4: Internetworking Compilation made by Tim Moors, UNSW Australia Original slides by David Wetherall, University of.
Data Communications and Computer Networks Chapter 4 CS 3830 Lecture 18 Omar Meqdadi Department of Computer Science and Software Engineering University.
Network Layer4-1 Chapter 4: Network Layer Chapter goals: r understand principles behind network layer services: m network layer service models m forwarding.
1DT066 Distributed Information System Chapter 4 Network Layer.
Virtual Circuit Network. Network Layer 2 Network layer r transport segment from sending to receiving host r network layer protocols in every host, router.
Network Layer 4-1 Chapter 4 Network Layer. Network Layer 4-2 Chapter 4: Network Layer 4. 1 Introduction 4.2 Virtual circuit and datagram networks 4.3.
7-1 Last time □ Wireless link-layer ♦ Introduction Wireless hosts, base stations, wireless links ♦ Characteristics of wireless links Signal strength, interference,
1 CSE3213 Computer Network I Network Layer (7.1, 7.3, ) Course page: Slides modified from Alberto Leon-Garcia.
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Network Layer introduction.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
1 Network Layer Lecture 13 Imran Ahmed University of Management & Technology.
Internetworking Internet: A network among networks, or a network of networks Allows accommodation of multiple network technologies Universal Service Routers.
COP 5611 Operating Systems Spring 2010 Dan C. Marinescu Office: HEC 439 B Office hours: M-Wd 2:00-3:00 PM.
Network Layer4-1 Datagram networks r no call setup at network layer r routers: no state about end-to-end connections m no network-level concept of “connection”
McGraw-Hill©The McGraw-Hill Companies, Inc., 2004 Network Layer PART IV.
Network Layer4-1 Chapter 4: Network Layer Chapter goals: r Understand principles behind network layer services: m Routing (path selection) m dealing with.
Data Communications and Computer Networks Chapter 4 CS 3830 Lecture 19 Omar Meqdadi Department of Computer Science and Software Engineering University.
1 Lecture, November 20, 2002 Message Delivery to Processes Internet Addressing Address resolution protocol (ARP) Dynamic host reconfiguration protocol.
Network Layer4-1 Chapter 4 Network Layer All material copyright J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down.
Network Layer4-1 Chapter 4: Network Layer Chapter goals: r understand principles behind network layer services: m network layer service models m forwarding.
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 A note on the use of these.
1 COMP 431 Internet Services & Protocols The IP Internet Protocol Jasleen Kaur April 21, 2016.
Network Layer/IP Protocols 1. Outline IP Datagram (IPv4) NAT Connection less and connection oriented service 2.
UNIT 4 NETWORK LAYER. Position of network layer 7/8/2016 UNIT-3 : NETWORK LAYER 2.
Introduction to Networks
Chapter 4: Network Layer
INTRODUCTION NETWORKING CONCEPTS AND ADMINISTRATION CSIS 3723
Data Communication and Networks
Chapter 18 Introduction to Network Layer
Chapter 4 Network Layer All material copyright
Networking CS 3470, Section 1 Sarah Diesburg
Chapter 4: Network Layer
Scaling the Network: The Internet Protocol
PART IV Network Layer.
Chapter 22 Q and A Victor Norman CS332 Fall 2017.
IP Forwarding Covers the principles of end-to-end datagram delivery in IP networks.
CS4470 Computer Networking Protocols
Chapter 3 Switching.
IP Forwarding Relates to Lab 3.
IP Forwarding Relates to Lab 3.
Network Layer I have learned from life no matter how far you go
Networking CS 3470 Sarah Diesburg
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 A note on the use of these.
Network Layer: Control/data plane, addressing, routers
Scaling the Network: The Internet Protocol
Introduction to Networks
Chapter 4: Network Layer
Networking and Network Protocols (Part2)
COMPUTER NETWORKS CS610 Lecture-29 Hammad Khalid Khan.
IP Forwarding Relates to Lab 3.
Networking CS 3470 Sarah Diesburg
Review of Internet Protocols Network Layer
Chapter 4: outline 4.1 Overview of Network layer data plane
Presentation transcript:

Lecture 8: The Network Layer

IP routers Alice Bob

application transport network link physical router Alice’s machine message transport Ht network Hn link Hl physical router Alice’s machine

application transport network link physical router Bob’s machine Hn link Hl physical Hl Hn Ht message router Bob’s machine

application transport network link physical Bob’s machine Hl Hn Ht message Bob’s machine

Outline Network-layer functions Network-layer services IP forwarding ++

Outline Network-layer functions Network-layer services IP forwarding ++

Alice router router Bob h.v.=1 Alice router router Bob

forwarding table forwarding table

header value output link header value output link 1 3 1 2 1 1 2 2 2 2 3 1 3 4 1 1 h.v. =1 3 2 4 2 3

Forwarding Local router process that determines output link for each packet How: read value from packet’s network-layer header search forwarding table

1 1 3 2 4 2 3 routing manually connection setup 1 3 1 2 1 1 2 2 2 2 3 header value output link header value output link 1 3 1 2 1 1 2 2 2 2 3 3 3 4 1 1 3 2 4 2 3

routing algorithm

routing algorithm routing algorithm

Routing Network-wide process that determines end-to-end path for each packet How: centralized routing algorithm distributed routing algorithm

Connection setup Path-wide process that sets up connection state in routers How: will see in a moment

Network-layer functions Forwarding = determines output link for each packet Routing = determines end-to-end path for each packet Connection setup = sets up connection state in routers

Network-layer functions Forwarding table populated by routing or connection setup ...depending on the type of network layer

Outline Network-layer functions Network-layer services IP forwarding ++

Possible network-layer services Guaranteed (in-order) delivery Guaranteed maximum delay Guaranteed minimum throughput Security (confidentiality, authenticity)

Possible network-layer services Guaranteed (in-order) delivery Guaranteed maximum delay Guaranteed minimum throughput Security (confidentiality, authenticity)

1 1 3 2 4 2 3 1 3 2 1 4 1 setup Alice - Bob 100 Mbps Alice - Bob VC input link output link VC input link output link 1 3 2 1 4 1 1 1 setup 3 2 4 2 Alice - Bob 100 Mbps Alice - Bob 100 Mbps 3 VC #1 VC #1

1 1 3 2 4 2 3 1 3 2 1 4 1 done Alice - Bob 100 Mbps VC #1 VC input link output link VC input link output link 1 3 2 1 4 1 1 1 3 2 4 done 2 Alice - Bob 100 Mbps 3 VC #1

1 1 3 2 4 2 3 1 3 2 1 4 1 VC=1 VC #1 VC #1 VC input link output link

millions of concurrent connections 2 10 5 3 3 24 4 4 2 5 1 7 6 16 7 7 VC input link output link 1 3 2 millions of concurrent connections 2 10 5 3 3 24 4 4 2 5 1 7 6 16 7 7 16 3

Virtual-circuit networks Useful for network-layer guarantees Forwarding state: per connection VC #, input link, output link populated by connection setup

Internet network-layer services Best-effort delivery

dest. address output link dest. address output link 1 3 1 2 1 1 2 2 2 2 3 3 3 4 1 1 dest=1 3 2 4 1 2 3

dest. address output link dest. address output link 0 - 1000 2 0 - 255 1 1001 - 1500 1 256 - 46780 2 1501 - 1502 3 46781 - ... 3 otherwise 1 otherwise 4 1 1 dest=1 3 2 4 1 2 3

dest. address range output link 0 - 3 0000 - 0011 00** 1 4 - 7 0100 - 0111 01** 2 8 - 11 1000 - 1011 10** 3 12 - 15 1100 - 1111 11** 4 1110 0100

dest. address range output link 0 - 2 0000 - 0010 00** 1 3 0011 0011 2 4, 6, 7 01** 0100, 0110, 0111 3 5 0101 0101 2 8 - 15 1000 - 1111 1*** 4 0011 0101 0010

dest. address range output link 0 - 1 0000 - 0001 000* 1 2 - 3 0010 - 0011 001* 2 4 - 7 01** 0100 - 0111 3 8 1000 1000 2 9 - 15 1001 - 1111 1*** 4 prefixes 1000 1010

Datagram networks Appropriate for best-effort service Forwarding state: per destination prefix destination prefix, output link populated by routing process

Why the datagram approach? It scales better no per-connection state in routers It keeps the network simpler no support for connection setup and teardown in routers

dest. address range output link 0 - 3 0000 - 0011 00** 1 4 - 7 0100 - 0111 01** 2 8 - 11 1000 - 1011 10** 3 12 - 15 1100 - 1111 11** 4

dest. address range output link 0 - 2 0000 - 0010 00** 1 3 0011 0011 2 4, 6, 7 01** 0100, 0110, 0111 3 5 0101 0101 2 8 - 15 1000 - 1111 1*** 4

dest. address range output link 0 - 1 0000 - 0001 000* 1 2 0010 0010 2 3 0011 0011 3 4, 6, 7 01** 0100, 0110, 0111 2 4 5 0101 0101 8 - 15 1000 - 1111 1*** 1 10 1010 1010 3

Location-dependent addresses Address embeds location information address proximity implies location proximity Significantly reduces forwarding state per destination prefix (otherwise, it would be per destination)

Outline Network-layer functions Network-layer services IP forwarding ++

IP address format IP address = number from 0 to 232-1 11011111 00000001 00000001 00000001 223 . 1 . 1 . 1

IP prefix format IP prefix = range of IP addresses 223.1.1.0 / 24 mask 223.1.1.0 / 24 mask 11011111 00000001 00000001 00000000 11011111 00000001 00000001 ******** 223.1.1.*

IP prefix format IP prefix = range of IP addresses 223.1.1.74 / 24 223.1.1.74 / 24 mask 11011111 00000001 00000001 01001010 11011111 00000001 00000001 ******** 223.1.1.*

IP prefix format IP prefix = range of IP addresses 223.1.1.74 / 24 223.1.1.74 / 24 mask 223.1.1.0 / 24 223.1.1.113 / 24 223.1.1.*

IP prefix format IP prefix = range of IP addresses 223.1.1.0 / 8 mask 223.1.1.0 / 8 mask 11011111 00000001 00000001 00000000 11011111 ******** ******** ******** 223.*.*.*

IP prefix format IP prefix = range of IP addresses 223.1.1.0 / 12 mask 223.1.1.0 / 12 mask 11011111 00000001 00000001 00000000 11011111 0000**** ******** ******** from: 11011111 00000000 00000000 00000000 from: 223.0.0.0 to: 223.15.255.255 to: 11011111 00001111 11111111 11111111

223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.0/24 IP subnet 223.1.1.4 223.1.9.0/24 223.1.7.0/24 223.1.9.1 223.1.9.2 223.1.7.0 223.1.7.1 223.1.8.0/24 223.1.8.1 223.1.8.0 223.1.2.6 223.1.3.1 223.1.2.0/24 223.1.3.0/24 223.1.2.12 223.1.2.57 223.1.3.121 223.1.3.8

223.1.1.0/24 dest=223.1.2.16 dest=223.1.1.1 223.1.2.0/24 223.1.3.0/24

IP subnet (Informal) Contiguous network area that does not “include” any routers All its end-systems and incident routers have IP addresses from the same IP prefix

223.1.1.1 223.1.1.2 223.1.1.3 223.1.1.0/24 IP subnet 223.1.1.4 223.1.9.0/24 223.1.7.0/24 223.1.9.1 223.1.9.2 223.1.7.0 223.1.7.1 223.1.8.0/24 223.1.8.1 223.1.8.0 223.1.2.6 223.1.3.1 223.1.2.0/24 223.1.3.0/24 223.1.2.12 223.1.2.57 223.1.3.121 223.1.3.8

IP address assignment Each organization obtains IP prefixes from its ISP or from regulatory body Network operator assigns IP addresses to router interfaces: manually to end-systems: manually or through DHCP

223.1.1.0/24 10.0.0.0/24 private address space IP dst=223.1.9.2 223.1.1.4 223.1.9.1 223.1.1.16 IP dst=223.1.9.2 IP src=223.1.1.16 IP dst=223.1.1.16 IP src=223.1.9.2 223.1.9.2 10.0.0.1 10.0.0.0/24 private address space IP dst=223.1.1.16 IP src=10.0.0.11 10.0.0.11

Network Address Translation (NAT) IP address origin TCP port 10.0.0.11 756 954 new TCP port 223.1.1.0/24 223.1.1.4 223.1.9.1 223.1.1.16 IP dst=223.1.9.2 IP src=223.1.1.16 TCP dst port=954 IP dst=10.0.0.11 IP src=223.1.1.16 TCP dst port=756 IP dst=223.1.1.16 IP src=223.1.9.2 TCP src port=954 223.1.9.2 NAT gateway 10.0.0.1 10.0.0.0/24 Network Address Translation (NAT) IP dst=223.1.1.16 IP src=10.0.0.11 TCP src port=756 10.0.0.11

Network Address Translation IP subnet uses private address space Attached to NAT gateway with public IP rewrites private source IP address with its own encodes original source into source port

Network Address Translation Resolves IP address depletion problem Requires per-connection state

IP fragmentation & reassembly When packet size exceeds MTU router fragments it adds an identifier to each fragment The end-system reassembles the fragments before passing the packet to the transport layer

IP forwarding Choose the output link Perform IP fragmentation look up destination IP address in forwarding table perform longest prefix matching Perform IP fragmentation when packet size exceeds MTU reassembly happens at the destination end-system

Network Address Translation IP subnet uses private address space Attached to NAT gateway with public IP rewrites private source IP address with its own encodes original source into source port