CS 1652 The slides are adapted from the publisher’s material

Slides:



Advertisements
Similar presentations
What's inside a router? We have yet to consider the switching function of a router - the actual transfer of datagrams from a router's incoming links to.
Advertisements

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 Layer4-1 Chapter 4: Network Layer Chapter goals: r understand principles behind network layer services: m network layer service models m forwarding.
Network Layer4-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach Featuring the Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley,
Chapter 4 Network Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 13.
Chapter 4 Network Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 15.
12-1 Last time □ BGP policy □ Broadcast / multicast routing ♦ Spanning trees Source-based, group-shared, center-based ♦ Reverse path forwarding, pruning.
4: Network Layer4b-1 Router Architecture Overview Two key router functions: r run routing algorithms/protocol (RIP, OSPF, BGP) r switching datagrams from.
Chapter 4 Queuing, Datagrams, and Addressing
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 All material copyright
1 Wide Area Networks and Internet CT1403 Lecture-8: Internet Network Layer (Part-3) By : Najla Al-Nabhan.
Network Layer4-1 Chapter 4 Network Layer Part 1: network layer overview datagram networks routers Computer Networking: A Top Down Approach 6 th edition.
CS 1652 The slides are adapted from the publisher’s material All material copyright J.F Kurose and K.W. Ross, All Rights Reserved Jack Lange.
Network Layer4-1 Summary: TCP Congestion Control When CongWin is below Threshold, sender in slow-start phase, window grows exponentially. When CongWin.
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.
Introduction 1-1 EKT355/4 ADVANCED COMPUTER NETWORK MISS HASNAH AHMAD School of Computer & Communication Engineering.
7-1 Last time □ Wireless link-layer ♦ Introduction Wireless hosts, base stations, wireless links ♦ Characteristics of wireless links Signal strength, interference,
Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Network Layer introduction.
1 John Magee 24 February 2014 CS 280: Network Layer: Virtual Circuits / Datagram Networks and What’s inside a Router? Most slides adapted from Kurose and.
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.
Router Architecture Overview
Internet Protocol ECS 152B Ref: slides by J. Kurose and K. Ross.
4: Network Layer4-1 Schedule Today: r Finish Ch3 r Collect 1 st Project r See projects run r Start Ch4 Soon: r HW5 due Monday r Last chance for Qs r First.
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.
Forwarding.
Network Layer4-1 Chapter 4: Network Layer Chapter goals: r Understand principles behind network layer services: m Routing (path selection) m dealing with.
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.
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.
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.
Application Layer 2-1 Chapter 4 Network Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 A.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
Graciela Perera Department of Computer Science and Information Systems Slide 1 of 18 INTRODUCTION NETWORKING CONCEPTS AND ADMINISTRATION CSIS 3723 Graciela.
Chapter 4: Network Layer
INTRODUCTION NETWORKING CONCEPTS AND ADMINISTRATION CSIS 3723
Data Communication and Networks
Chapter 3 Part 3 Switching and Bridging
Chapter 4 Network Layer All material copyright
Data Center Networks and Basic Switching Technologies
QoS & Queuing Theory CS352.
Chapter 4: Network Layer
CS/ECE 438: Communication Networks
EE 122: Lecture 19 (Asynchronous Transfer Mode - ATM)
CS4470 Computer Networking Protocols
Network Layer Goals: Overview:
CS4470 Computer Networking Protocols
EEC-484/584 Computer Networks
Chapter 4: Network Layer
Chapter 3 Part 3 Switching and Bridging
Chapter 4-1 Network layer
Some slides have been adapted from:
Session 12 INST 346 Technologies, Infrastructure and Architecture
What’s “Inside” a Router?
EEC-484/584 Computer Networks
Network Layer I have learned from life no matter how far you go
October 26th, 2010 CS1652/Telcom2310 Jack Lange
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.
EEC-484/584 Computer Networks
EE 122: Lecture 7 Ion Stoica September 18, 2001.
Computer Networking: A Top Down Approach
Chapter 4 Network Layer: The Data Plane
Chapter 4 Network Layer Computer Networking: A Top Down Approach 5th edition. Jim Kurose, Keith Ross Addison-Wesley, April Network Layer.
CS 5565 Network Architecture and Protocols
Chapter 3 Part 3 Switching and Bridging
Network Layer: Control/data plane, addressing, routers
Chapter 4: Network Layer
Chapter 4: Network Layer
Presentation transcript:

CS 1652 The slides are adapted from the publisher’s material All material copyright 1996-2009 J.F Kurose and K.W. Ross, All Rights Reserved

Chapter 4: Network Layer Understand principles behind network layer services: network layer service models forwarding versus routing how a router works routing (path selection) dealing with scale advanced topics: IPv6, mobility Instantiation, implementation in the Internet Network Layer

Network layer transport segment from sending to receiving host application transport network data link physical 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 network data link physical application transport network data link physical Network Layer: Data Plane

Network service model Q: What service model for “channel” transporting datagrams from sender to receiver? Example services for individual datagrams: Guaranteed delivery Guaranteed delivery with less than 40 msec delay Example services for a flow of datagrams: In-order datagram delivery Guaranteed minimum bandwidth to flow Restrictions on changes in inter-packet spacing Network Layer

Network layer service models: Guarantees ? Network Architecture Internet ATM Service Model best effort CBR (Constant) VBR (Variable) ABR (Available) UBR (Unspecified) Congestion feedback no (inferred via loss & delay) no congestion yes Bandwidth none constant rate guaranteed minimum Loss no yes Order no yes Timing no yes Description: http://en.wikipedia.org/wiki/Traffic_contract Network Layer

Two key 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 Network Layer: Data Plane

Network layer: data plane, control plane local, per-router function determines how datagram arriving on router input port is forwarded to router output port forwarding function 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 1 2 3 0111 values in arriving packet header Network Layer: Data Plane

Per-router control plane Individual routing algorithm components in each and every router interact in the control plane Routing Algorithm data plane control values in arriving packet header 0111 1 2 3 Network Layer: Control Plane

Logically centralized control plane A distinct (typically remote) controller interacts with local control agents (CAs) Remote Controller CA data plane control values in arriving packet header 1 2 0111 3 Network Layer: Control Plane

Destination-based forwarding forwarding table Destination Address Range 11001000 00010111 00010000 00000000 through 11001000 00010111 00010111 11111111 11001000 00010111 00011000 00000000 11001000 00010111 00011000 11111111 11001000 00010111 00011001 00000000 11001000 00010111 00011111 11111111 otherwise Link Interface 1 2 3 Q: but what happens if ranges don’t divide up so nicely? Network Layer: Data Plane

Longest prefix matching when looking for forwarding table entry for given destination address, use longest address prefix that matches destination address. Destination Address Range 11001000 00010111 00010*** ********* 11001000 00010111 00011000 ********* 11001000 00010111 00011*** ********* otherwise Link interface 1 2 3 examples: DA: 11001000 00010111 00010110 10100001 which interface? DA: 11001000 00010111 00011000 10101010 which interface? Network Layer: Data Plane

Longest prefix matching we’ll see why longest prefix matching is used shortly, when we study addressing longest prefix matching: often performed using ternary content addressable memories (TCAMs) content addressable: present address to TCAM: retrieve address in one clock cycle, regardless of table size Cisco Catalyst: can up ~1M routing table entries in TCAM Network Layer: Data Plane

What’s Inside a Router?

Router architecture overview high-level view of generic router architecture: routing, management control plane (software) operates in millisecond time frame routing processor forwarding data plane (hardware) operttes in nanosecond timeframe high-seed switching fabric router input ports router output ports Network Layer: Data Plane

Input port functions decentralized switching: lookup, forwarding queueing line termination link layer protocol (receive) switch fabric physical layer: bit-level reception data link layer: e.g., Ethernet see chapter 5 decentralized switching: 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 Network Layer: Data Plane

Input port functions decentralized switching: lookup, forwarding queueing line termination link layer protocol (receive) switch fabric physical layer: bit-level reception decentralized switching: using header field values, lookup output port using forwarding table in input port memory (“match plus action”) destination-based forwarding: forward based only on destination IP address (traditional) generalized forwarding: forward based on any set of header field values data link layer: e.g., Ethernet see chapter 5 Network Layer: Data Plane

Three types of switching fabrics Network Layer

Switching via memory first generation routers: traditional computers with switching under direct control of CPU packet copied to system’s memory speed limited by memory bandwidth (2 bus crossings per datagram) input port (e.g., Ethernet) memory output system bus Network Layer: Data Plane

Switching via a bus datagram from input port memory to output port memory via a shared bus bus contention: switching speed limited by bus bandwidth 32 Gbps bus, Cisco 5600: sufficient speed for access and enterprise routers bus Network Layer: Data Plane

Switching via interconnection network overcome bus bandwidth limitations banyan networks, crossbar, other interconnection nets initially developed to connect processors in multiprocessor advanced design: fragmenting datagram into fixed length cells, switch cells through the fabric. Cisco 12000: switches 60 Gbps through the interconnection network crossbar Network Layer: Data Plane

Output ports This slide in HUGELY important! datagram buffer queueing switch fabric link layer protocol (send) line termination buffering required when datagrams arrive from fabric faster than the transmission rate scheduling discipline chooses among queued datagrams for transmission Datagram (packets) can be lost due to congestion, lack of buffers Priority scheduling – who gets best performance, network neutrality Network Layer: Data Plane

Output port queueing at t, packets more from input to output one packet time later switch fabric buffering when arrival rate via switch exceeds output line speed queueing (delay) and loss due to output port buffer overflow! Network Layer: Data Plane

How much buffering? RFC 3439 rule of thumb: average buffering equal to “typical” RTT (say 250 msec) times link capacity C e.g., C = 10 Gps link: 2.5 Gbit buffer Recent recommendation: with N flows, buffering equal to RTT C . N Network Layer

Input Port Queuing Fabric slower than input ports combined -> queueing may occur at input queues Head-of-the-Line (HOL) blocking: queued datagram at front of queue prevents others in queue from moving forward queueing delay and loss due to input buffer overflow! Network Layer

Scheduling mechanisms scheduling: choose next packet to send on link FIFO (first in first out) scheduling: send in order of arrival to queue real-world example? discard policy: if packet arrives to full queue: who to discard? tail drop: drop arriving packet priority: drop/remove on priority basis random: drop/remove randomly packet arrivals packet departures queue (waiting area) link (server) Network Layer: Data Plane

Traditional Queuing Policies Packet drop policy – which pkt to drop Drop-tail Active Queue Management (AQM) Random Early Detection (RED) – AQM Weighted avg q = (1-w) * q + w * sampleLen q <= min : no drop, q >= max: 100% drop min < Avg q < max : drop with prob p tempP = maxP * (q –min) / (max – min) P = tempP/ (1 – count * tempP) Network Layer

Scheduling policies: priority high priority queue (waiting area) low priority queue arrivals classify departures link (server) priority scheduling: send highest priority queued packet multiple classes, with different priorities class may depend on marking or other header info, e.g. IP source/dest, port numbers, etc. real world example? 2 1 3 4 5 arrivals 1 3 2 4 5 packet in service departures 1 3 2 4 5 Network Layer: Data Plane

Scheduling policies: still more Round Robin (RR) scheduling: multiple classes cyclically scan class queues, sending one complete packet from each class (if available) real world example? 1 2 3 4 5 arrivals departures packet in service Network Layer: Data Plane

Scheduling policies: still more Weighted Fair Queuing (WFQ): generalized Round Robin each class gets weighted amount of service in each cycle real-world example? Network Layer: Data Plane