Network Layer: Control/data plane, addressing, routers

Similar documents
Network Layer PREPARED BY AHMED ABDEL-RAOUF

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

CSCI Computer Networks Fall 2016

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

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

CS 3516: Advanced Computer Networks

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

COMP211 Chapter 4 Network Layer: The Data Plane

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

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

Master Course Computer Networks IN2097

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

CS 3516: Computer Networks

CSCE 463/612 Networks and Distributed Processing Spring 2018

CSC 401 Data and Computer Communications Networks

Network Layer: Internet Protocol

CSC 401 Data and Computer Communications Networks

Chapter 4: network layer

Chapter 4 Network Layer: The Data Plane

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

internet technologies and standards

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

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

Network layer: Overview. Network Layer Functions

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

Lecture 16: Network Layer Overview, Internet Protocol

Chapter 4: Network Layer

internet technologies and standards

Network Layer: Data Plane 4-2

Routers. Session 12 INST 346 Technologies, Infrastructure and Architecture

Chapter 4 Network Layer: The Data Plane

Router Architecture Overview

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

The Network Layer Forwarding Tables and Switching Fabric

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

Chapter 4 Network Layer

Network Layer: Router Architecture, IP Addressing

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

Chapter 4 Network Layer: The Data Plane

Chapter 4 Network Layer: The Data Plane

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

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

TDTS06: computer Networks

The Network Layer Forwarding Tables and Switching Fabric

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

Computer Network Fundamentals Spring Week 4 Network Layer Andreas Terzis

Chapter 4 Network Layer: The Data Plane

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

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

ECE 158A: Lecture 7. Fall 2015

Chapter 4 Network Layer: The Data Plane

Chapter 4 Network Layer: The Data Plane

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

NETWORK LAYER DATA PLANE

Network Layer: outline

Chapter 4 Network Layer

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

CMPE 80N: Introduction to Networking and the Internet

Chapter 4 Network Layer

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

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

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

Chapter 4 Network Layer

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

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

Internet Protocol (IP)

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

CSC 4900 Computer Networks: Network Layer

Chapter 4 Network Layer: The Data Plane

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

ECE 4450:427/527 - Computer Networks Spring 2017

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

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

Network Layer/IP Protocols

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

CSC 4900 Computer Networks: Network Layer

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

COMP/ELEC 429/556 Introduction to Computer Networks

EP2120 Internetworking/Internetteknik IK2218 Internets Protokoll och Principer

Internetworking Part 2

Introduction to Internetworking

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

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

Network Layer: DHCP, ICMP, NAT, IPv6

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

Tutorial 9. SOLUTION Since the number of supported interfaces is different for each subnet, this is a Variable- Length Subnet Masking (VLSM) problem.

IPv4. Christian Grothoff.

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

CS 3516: Advanced Computer Networks

Chapter 4 Network Layer

Introduction to Networks and the Internet

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

Chapter 4 Network Layer

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

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

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

Transcription:

Network Layer: Control/data plane, addressing, routers CS 352, Lecture 10 http://www.cs.rutgers.edu/~sn624/352-s19 Srinivas Narayana (heavily adapted from slides by Prof. Badri Nath and the textbook authors) 1

Next: Network layer Application HTTPS FTP HTTP SMTP DNS Transport TCP UDP Network Host-to-Net IP 802.11 X.25 ATM

Network layer transport segment from sending to receiving host on sending side encapsulates segments into datagrams on receiving side, delivers segments to transport layer network layer protocols in every host, router router examines header fields in all IP datagrams passing through it application transport network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical network data link physical application transport network data link physical 3

Two key network-layer functions network-layer functions: forwarding: move packets from router s input to appropriate router output routing: determine route taken by packets from source to destination routing algorithms analogy: taking a trip forwarding: process of getting through single interchange routing: process of planning trip from source to destination 4

Network layer: data plane, control plane Data plane local, per-router function determines how datagram arriving on router input port is forwarded to router output port forwarding function values in arriving packet header Control plane network-wide logic determines how datagram is routed among routers along end-end path from source host to destination host two control-plane approaches: traditional routing algorithms: implemented in routers software-defined networking (SDN): implemented in (remote) servers 0111 3 1 2 5

IP Addressing

IPv4 Addresses 32 bits long Identifier for host, router interface Notation: Each byte is written in decimal in MSB order, separated by dots Example: 128.195.1.80 stands for the 32-bit IP address 10000000 11000011 00000001 01010000 7

Types of IPv4 Addresses Unicast Address Destination is a single host Multicast address Destination is a group of hosts Broadcast address 255.255.255.255 Destination is all hosts 8

IPv4 Address Classes (old) Class 32 bits A 0 Net Type of Serv. Host B 10 Net Host C 110 Net Host D 1110 Multicast address E 1111 Reserved 9

IP Address Classes Class A: For very large organizations 16 million hosts allowed Class B: For large organizations 65 thousand hosts allowed Class C For small organizations 255 hosts allowed Class D Multicast addresses No network/host hierarchy 10

Problems with Class-based Routing Too many small networks requiring multiple class C addresses Running out of class B addresses, not enough nets in class A Addressing strategy must allow for greater diversity of network sizes 11

IP addressing: CIDR CIDR: Classless InterDomain Routing subnet portion of address of arbitrary length address format: a.b.c.d/x, where x is # bits in subnet portion of address subnet part 11001000 00010111 00010000 00000000 200.23.16.0/23 host part 12

CIDR An ISP can obtain a block of addresses and partition this further to its customers Say an ISP has 200.8.0.0/16 address (65K addresses). He has another customer who needs only 64 addresses starting from 200.8.4.128 Then that block can be specified as 200.8.4.128/26 13

Subnetting Example: Class B address with 8-bit subnetting 16 bits 8 bits 8 bits Network id Subnet id Host id Example Address: 165.230.24.8 14

Subnet Masks Subnet masks allow hosts to determine if another IP address is on the same subnet or the same network 16 bits 8 bits 8 bits Network id Subnet id Host id Mask: 1111111111111111 11111111 00000000 255.255.255.0 15

Subnet Masks (cont d) Assume IP addresses A and B share subnet mask M. Are IP addresses A and B on the same subnet? 1. Compute logical AND (A & M). 2. Compute logical AND (B & M). 3. If (A & M) == (B & M) then A and B are on the same subnet. Example: A and B are class B addresses A = 165.230.82.52 Same (classful) network? B = 165.230.24.93 Same subnet? M = 255.255.255.0 16

Example of IP Addressing in a network 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.27 223.1.2.2 223.1.3.1 223.1.3.2 17

What s inside a router?

What do routers look like? Access routers Core router Data center top-of-rack switch 19

Basic components: Control & Data Planes Control plane per route-change processing (~ a few seconds) Data plane per-packet processing (~ tens of nanoseconds) 0111 Routing Algorithm Local forwarding table header 0100 0110 0111 1001 output 3 2 2 1 1 control plane data plane Traditionally: Individual routing algorithm components in each and every router interact in the control plane values in arriving packet header 3 2 20

Router architecture overview routing processor Control plane Data plane high-speed switching fabric router input ports router output ports

Input port functions physical layer: bit-level reception data link layer: e.g., Ethernet (We ll see this later in the course) line termination link layer protocol (receive) Switching: lookup, forwarding queueing switch fabric using header field values, lookup output port using forwarding table in input port memory ( match plus action ) goal: complete input port processing at line speed queuing: if datagrams arrive faster than forwarding rate into switch fabric

Destination-based Forwarding in the Internet payload Packet header Router Destination Address Routing Lookup Data Structure Outgoing Port Forwarding Table Dest-network 65.0.0.0/8 128.9.0.0/16 Port 3 1 149.12.0.0/19 7 23

Three types of switching fabrics

Output Ports switch fabric datagram buffer queueing link layer protocol (send) line termination Buffering required when datagrams arrive from fabric faster than the transmission rate Important implication: if buffers filled up, packets are dropped! Scheduling discipline chooses among queued datagrams for transmission Important implication: Who gets priority is chosen by the scheduler 25

Prefixes and IP lookup

Example Forwarding Table Destination IP Prefix Outgoing Port 65.0.0.0/8 3 Prefix length 128.9.0.0/16 1 65.0.0.128/25 4 142.12.0.0/19 7 IP prefix: 0-32 bits Longest prefix match 65.0.0.0/8 128.9.0.0/16 142.12.0.0/19 0 2 24 128.9.16.14 232-1 65.0.0.0 65.255.255.255 27

Prefixes can Overlap Longest matching prefix 65.0.0.0/8 128.9.16.0/24 128.9.176.0/24 128.9.0.0/16 142.12.0.0/19 0 128.9.16.14 2 32-1 Routing lookup: Find the longest matching prefix (the most specific route) among all prefixes that match the destination address. 28

Reducing Routing Table Size Without CIDR: 200.71.0.0 200.71.1.0 200.71.2.0.. 200.71.255.0 service provider 200.71.0.0 200.71.1.0 200.71.2.0.. 200.71.255.0 Routing table With CIDR: 200.71.0.0 200.71.1.0 200.71.2.0.. 200.71.255.0 service provider 200.71.0.0/16 Routing table 29

Hierarchical addressing: Route aggregation 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 30

LPM: Announcing more specific routes ISPs-R-Us has a more specific route to Organization 1 Longest prefix match will be used to route IP packets 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 31

The Internet Protocol (IP)

IP datagram format IP protocol version number header length (bytes) type of data max number remaining hops (decremented at each router) upper layer protocol to deliver payload to how much overhead with TCP? q 20 bytes of TCP q 20 bytes of IP q = 40 bytes + app layer overhead ver head. len 16-bit identifier time to live type of service upper layer 32 bits flgs length fragment offset header 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. 33

IP Fragmentation & Reassembly network 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 34

IP Fragmentation and Reassembly Example q 4000 byte datagram q MTU = 1500 bytes length =4000 ID =x fragflag =0 offset =0 One large datagram becomes several smaller datagrams 1480 bytes in data field offset = 1480/8 length =1500 length =1500 length =1040 ID =x ID =x ID =x fragflag =1 fragflag =1 fragflag =0 offset =0 offset =185 offset =370 35

IP Address Hierarchy Class A, B, C addresses support two levels of hierarchy However, the host portion can be further split into subnets by the address class owner more than 2 levels of hierarchy 38

Basic Components Routing Protocols Routing Table Control Plane Forwarding Table Switching Data plane per-packet processing 39

Router Architecture Overview 40

Input Port Functions Physical layer: bit-level reception Data link layer: e.g., Ethernet see chapter 5 Decentralized switching: queuing: if datagrams arrive faster than forwarding rate into switch fabric 41

Three types of switching fabrics 42

Longest prefix match With CIDR, route entries are prefixes <prefix, CIDR mask> Can be aggregated We need to find the longest matching prefix that matches the destination address Need to search all prefixes of all length (in order) and among prefixes of the same length 128.8.2/24 128.8.0/16 128.8.0.24 128.8.2.128 192.2.0/16 192.2.2.128 43

The Internet Protocol (IP) Provides delivery of packets from one host to any other host in the Internet Internet packets are called datagrams and may be up to 64 kilobytes in length although they are typically much smaller 45