Computer Networks CS 552

Size: px
Start display at page:

Download "Computer Networks CS 552"

Transcription

1 Computer Networks CS 552 Routers Badri Nath Rutgers University High Speed Routers 2. Route lookups Cisco 26: 8 Gbps Cisco 246: 32 Gbps Cisco 286: 28 Gbps Power: 4.2 KW Cost: $5K Juniper M Gbps Power 3.2 KW 2 What do routers do? Basic Components of a Traditional High Speed router Routing Decide the next hop based on Destination address Cost varies as Table size Header modification Decrement TTL, Link layer address for next hop, etc Requires rewriting Forwarding Byte movement Move bytes from input interface to output interface Need to keep up with line card speed Routing Protocols Routing Table Forwarding Table Switching Control Plane Datapath per-packet processing 3 4

2 Forwarding Engine Need for high speed routers payload Packet header Router B/W keeps increasing Need to keep line cards fully utilized Destination Address Routing Lookup Data Structure Forwarding Table Dest-network Port 65.../ / /9 3 Outgoing Port Line Linerate (Gbps) 4B (MPP S) Lookupspeed (nano sec) 84B (MPPS ) 354B (MPPS ) OC OC OC OC OC Hardware First-Generation IP routers DRAM access times 5 nsec Pricing: DRAM Yr 22 Retail Price 4GB is $32; 2GB is $2 In [Gupta 98] 6 MB for $5 was the price in 998 SRAM access times 5 to nsec Pricing: SRAM is 4 to 5 times more expensive than DRAM GB $ 5; 6 MB $8 CPU DMA Line Card MAC DMA Line Card MAC Buffer Memory DMA Line Card MAC 7 8 2

3 First-generation IP routers Second-Generation IP routers Shared memory Bus is the bottleneck Memory r/w speeds is also bottleneck Every packet needs two transfers between line cards and memory Crosses the bus twice Route table stored in DRAM Does not scale to too many line cards Suffices for Low speed routers < Gbps speed Cache update CPU DMA Route Cache MAC DMA Route Cache MAC Buffer Memory DMA Route Cache MAC 9 Fast Path Slow Path Second-generation IP routers Third -Generation IP routers Each line card has a route table cache On a hit, forward directly Fast path Switching interface On a miss, via CPU bus, memory Slow path Copy only header, then reconstruct packet on outbound link Buffer packets on cards < 5Gbps speed buffer MAC TSU Forwarding Engine FSU TSU Forwarding Engine FSU buffer MAC Mckeown 97, Partridge

4 Third generation IP routers Three types of switching fabrics Multiple forwarding engines IP header stripped and given to FEs Header processed separately from body FE determines outbound header Packet reconstructed and moved from Source buffer to destination buffer Exploit Parallelism Have a separate Data transfer path 3 4 Crossbar arbitration Virtual queues FIFO at the input Request for any of the N outputs What about fairness Rotating priority Top priority given to the next line following the line which was last serviced HOL blocking in simple FIFO Complex arbitration N 2 input possibilities M output possibilities Lots of arbiter schemes Decide which of the request from the input queues wins 5 6 4

5 High Speed routers Juniper Networks M-Series Routers Two multi-gigabit routers. A 5-Gbps IP router by Craig Partridge et.al, in ACM TON, 997 Specialized Hardware 3 rd Gen IP Router Way ahead of its time 2. A 4- Gbps IP router by Sangjin Han et.al., in SIGCOMM 2 PacketShader Software router on commodity hardware (CPU + GPU) What has changed in 3 years? 7 8 MultiGigibit Router (MGR) MGR Separate Switching Back plane fabric Distributed architecture Multiple forwarding engines Forwarding engines determine output line based on header Each FE has its own forwarding table and buffer Routing and forwarding separation FE determines which outbound line to send the packet Only header moves between line card and FE Packet construction and deconstruction done by line cards Line card uses the switching fabric to forward the packet Network Processor, FE processor, Packet Processor Only header moves around Data is transferred from Input to output lone card via switching backplane Two memory banks to handle route updates Routing table handled by NP (maintains several routes to D) Routing Information for various destinations Determine active routes based on policy Forwarding table handled by FEP (maintains only active route to D) Install active routes for each destination FE cache 6 MB, divided into 8-MB banks (used in active-standby modes) 9 2 5

6 Packet Processing Packet processing Line card: Packet Buffered in FIFO queue Header is removed, passed onto FE FE: Read header, lookup, write modified header Modified header, with forwarding instructions sent back to line card Line card: buffer entire packet for delivery to output line Fast path code Header check, lookup, update TTL update header 42 cycles (each cycle 2.4 nanosec 45 MHz alpha processor) Fast path time:.2 nsec Packet forwarding rate 9.8 MPPS 2 22 Packet Processing MGR Features Slow path Cache miss Header errors Headers with IP options Fragments Multicast FE associated with each line card (but separate) Has its own 45 Mhz Alpha processor and memory FEs keep entire routing table as opposed to cache Switched backplane as opposed to shared bus Switch transfer cycle.38 microsec Max 5 simultaneous transfer of K bits (approx 5 Gbps) Network Processor 233Mhz Alpha processor Used for writing router updates to the routing table in FEs Control plane function

7 Switch arbitration Switch arbitration Cross bar with FIFO Each head of line packet contends for bus For fairness priority of input line rotated Multiple input buffers Row and column arbiter Diagonal arbiter Wrapped Diagonal arbiter Wave front arbiter On a N x N cross bar, grant request along the diagonal Priority given to higher level diagonals Rotate priority of diagonals Forwarding speeds Lots of H/W Specialized H/W Network Processor Switching fabric Smart Forwarding (copy only header) 3 rd generation can match line card speeds MGR router: [Partridge 998] Some observations H/W units FE Processor Network Processor Mhz 233 Mhz 2.66 GHZ ( Intel xeon x555) Level 2 cache (on-chip) 96KB 256 KB or 52 KB L Cache I-Cache D-Cache 8KB 8KB 64KB 64 KB Registers Switch Cores 32 Registers 5 Port Single 6 or 32 registers? Dual to multi core

8 What s happening now Silicon Budget in CPU and GPU Then -Specialized hardware -- MGR (997) Now- General purpose hardware (PacketShader 2-SIGCOMM) - GPU Software based high speed router Software Defined Networking (SDN) Trend towards programmability Use commodity H/W Parallel Computing available in GPUs ShaderPrograms manipulate pixel values for scenes Xeon X555: 4 cores 73M transistors ALU GTX48: 48 cores 3,2M transistors Per-Packet CPU Cycles for G Our Approach 2: GPU Offloading IPv4,2 + 6 =,8 cycles + 6 Cycles needed IPv6 Packet I/O IPv4 lookup,2 +,6 Packet I/O IPv6 lookup = 2,8 Packet I/O Packet I/O IPv4 lookup +,6 IPv6 lookup IPsec,2 + 5,4 = 6,6 + 5,4 Packet I/O Encryption and hashing Packet I/O Encryption and hashing Available budget,4 cycles G, min-sized packets, dual quad-core 2.66GHz CPUs GPU Offloading for Memory-intensive or Compute-intensive operations

9 Throughput (Gbps) PacketShader [SIGCOMM 2] A 4 Gbps router that uses commodity PCs Exploit parallelism feature of GPUs by doing lookups on a batch of packets E.g., Xeon CPU has 4 cores E.g., GTX48 GPU has 48 cores Basic routing operations offloaded to GPUs Rendering a scene is a parallel operation (operations on pixels) How is packer routing parallel workload? Key Idea Process packets in batches from a large input buffer Each packet processing handled by a separate core Avoid H/W bottlenecks by partitioning Run packet processing operations on independent cores Parallelism in Packet Processing The key insight Stateless packet processing = parallelizable RX queue. Batching 2. Parallel Processing in GPU Scaling with a Multi-Core CPU Results (w/ 64B packets) Master core CPU-only CPU+GPU Device driver Shader Preshader Postshader Device driver Worker cores GPU speedup IPv4 IPv6 OpenFlow IPsec.4x 4.8x 2.x 3.5x

10 Take away Packet Processing in Routers is a parallel work load! Batch Packets Same idea can be applied to other CPU intensive networking operations Connection processing Https (SSL Shader- NSDI 2) Computer Networks CS 552. Route lookups Badri Nath Rutgers University badri@cs.rutgers.edu Why high speed lookups? Classless Addressing IPv entries - 4* 9 IPv entries * 36 Naïve lookup : have a table entry for each IP address IP address: output port IPv4 requires 4G entries Memory cost in today s $: 6$/G.. 24 $ Speed: 5 ns for DRAM, 5 ns for SRAM But Routes are advertised as prefixes Every prefix needs to be unwound Class-based: Update cost of the table [Gupta 98] Classless:... A 62.23/6 B /8 9.23/6 23/8 9/8 C /

11 Number of active BGP prefixes Number Prefixes, speed Routing Lookups in Hardware [gupta98] Routing table contains prefixes How many prefixes? Size of table is proportional to prefixes Is it small? Prefixes are increasing Size of Routing table is increasing Lookup algorithms Software-based approaches Trie-based algorithms Binary-search on tries, prefixes Hardware-based approaches Route-lookup memory Content-addressable memory 4 April, 2 Prefix length MAE-EAST routing table (source: 42 Size of the Routing Table 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 /24 Date 28.8./ / Source:

12 Linear Search Tree search Keep N prefixes in a linked list O(N) storage, O(N) lookup time, O() update complexity add at Head of list Arbitrary insertion and deletion O(N) Keep N prefixes in a list sorted on prefix length Improve average time for operations 45 Binary tree Simple binary tree Each left subtree has key values <= root Each right subtree has key values >=root Full key comparison Digital Search tree Branch according to selected bits of the key Left branch bit value, right branch bit value At each level I, check MSB i Example C 3 E A S R 9 A C E R S 46 Trie Radix trie Trie node next-hop-ptr (if prefix) left-ptr right-ptr Same as Digital search tree Only leaves store data Left to right ordered Leaf Node has Next Hop information (if prefix found) Dept first search; each step compare a bit of the Key Fixed length Prefixes P: P2: P3: O(W) lookup W is the length of Prefix (height of the trie) Storage O(N) leaves + O(N) for internal nodes N is the number of prefixes P P2 P3 Store Variable length prefixes (keys) Use internal nodes to store prefixes A concatenation of all the bits in the path Compare bit i at level i Look up Keep track of prefix seen so far P P * L P2 * L2 P3 * L3 P4 L4 B D F P2 A C P3 E P4 G

13 Trie search Radix trie At each level, search left subtree or right subtree based on the next bit in the address On visiting a node with a prefix P, mark BPM=prefix P Search ends when there are no more branches ; make LPM = BPM N prefixes, each W-bits: O(W) lookup, O(NW) storage and O(W) update complexity Wastage of storage space in chains Idea: Compress branches with one child Patricia tree 49 5 Patricia tree Patricia trie bit-position left-ptr right-ptr parent-ptr 3 Prefix/cidr-mask parent-ptr Next-hop Leaf node Lookup Longest prefix P4 Lookup Longest prefix P3 Need to backtrack from P4 P P * L P2 * L2 P3 * L3 B A 3 D P2 F P3 C 5 G E P4 P4 L4 Practical Algorithm To Retrieve Information Coded in Alphanumeric

14 Pat tree features Multi-bit Tries Pat tree is a complete binary tree (node has degree or 2) W-bit prefixes: Worst case O(W 2 ) lookup, O(W) update complexity N leaves and N- internal nodes Less storage Backtrack complexity Can be improved W W/k Binary trie Depth = W Degree = 2 Stride = bit Multi-ary trie Depth = W/k Degree = 2 k Stride = k bits Prefix Expansion with Multi-bit Tries Four-ary Trie (k=2) If stride = k bits, prefix lengths that are not a multiple of k need to be expanded E.g., k = 2: Prefix * *, * * * Expanded prefixes Maximum number of expanded prefixes P * H P2 * H2 P3 * H3 P4 H4 corresponding to one non-expanded prefix = 2 k A B P2 A four-ary trie node next-hop-ptr (if prefix) ptr ptr D E F P3 P P 2 G ptr ptr P4 C P4 2 H Lookup 4

15 Luleå algorithm: Motivation Degermark et al., Small forwarding tables for fast routing lookups in Proc. of SIGCOMM 97 Luleå algorithm Large routing tables Patricia (NetBSD), radix (4.4 BSD) trees 24 bytes for leaves Size: 2 Mbytes 2 Mbytes Naïve binary tree is huge, won t fit in fast CPU cache memory Year Median routing table size 997 4, entries 2 65, 22, 28 25, 24 5, Memory accesses are the bottleneck of lookup Goal: minimize memory accesses, size of data structure Design for 2 4 6K different next-hops Method for compressing the radix tree using bit-vectors 57 CIDR longest prefix match rule: e 2 supersedes e Divide a complete binary tree into three levels Level : one big node representing entire tree depth 6 bits Levels 2 and 3: chunks describe portions of the tree The binary tree is sparse, and most accesses fall into levels and/or Level e e 2 IP address space: 2 32 possible addresses Level 2 Level 3 58 Luleå algorithm: Level Covers all prefixes of length 6 Cut across tree at depth 6 bit vector of length 2 6 Root head =, genuine head =, member of genuine head = Divide bit vector into 2 2 bit masks, each 6 bits long Genuine head One bit mask: Root head depth 6 59 de word array: se index array: Luleå algorithm: Level One bit mask: depth Head information stored in pointer array: 2 4 Next-hop table: r r2 3 r3 r4 r L2 chunk One 6-bit pointer per bit set (=) in bit-mask Pointer composed of 2 bits of type info; 4 bits of indexing info Genuine heads: index into next-hop table Root heads: index into array of Level 2 (L2) chunks Problem: given an IP address, find the index into the pointer array 6 5

16 Luleå: Finding pointer group Luleå: Finding pointer group Group pointers by 6-bit bit masks; how many bit masks to skip? Recall: Bit vector is 2 6 total length Code word array code (2 2 entries) One entry/6-bit bit mask, so indexed by top 2 bits of IP address 6-bit offset : num/ptrs to skip to find st ptr for that bit mask in ptr array Four bit masks, max 4 6 = 48 bits set, 63, so value may be too big Base index array base (2 entries) One base index per four code words: num/ptrs to skip for those four bit masks Indexed by top bits of IP address : e.g. bit vector: 6 : base: 3 IP address bix ix code: bit codeword six ten maptable: pix := + + ; Extract top bits from IP address: bix Extract top 2 bits from IP address: ix Skip code[ix].six + base[bix] pointer groups in the pointer table 62 Luleå: Finding pointer in pointer group Luleå: Summary of finding ptr index a(n) number of possible bit masks of length 2 n a() = ; a(n) = + a(n ) 2 a(4) + = 678 So maptable can be indexed with bits ten field of code indexes maptable maptable entries are 4-bit offsets structure: pre-computed and constant For each pattern of the bit mask, the values in each cell is fixed 3 ten IP value address varies depending on tree maptable: bix bit ix : code: codeword six ten base: 3 IP address bix ix code: bit codeword six ten pix := + + ; maptable: base: 2 pix := + + ;

17 Luleå algorithm: Levels 2 and 3 Luleå: Summary Consist of chunks, pointed to by root heads Chunk covers subtree of height 8, so 256 heads Three types of chunk: Sparse: -8 heads, array of 8-bit indices of the heads Dense: 9-64 heads, like Level but only one base index Very dense: heads, same format as Level 2 4 Tradeoff mutability and table construction time for speed Adding a routing entry requires rebuilding entire table Routing tables don t often change Bottom line Lookup: 8 memory references touching 4 bytes Table: 5 Kbytes for 4, entries; 4 5 bytes/entry Current state of the art in router IP lookup Open issue: scaling to IPv6 (28 bit address) L2 chunk Hash tables [Waldvogel 98] Binary Search on Trie Levels [waldvogel98] Store prefixes of different lengths Chain prefixes of same length Array Size is O(distinct string lengths) Search: Extract the largest number of bits Try match: If match return nexthop else decrease to the next length and repeat L H Define recursive search order Search top table If match, search longer prefixes If No match, search shorter prefixes Add markers to guide search Markers are longest subprefix found in longer prefix length bins At most log 2 (W) lookups Scales for IPv P 68 7

18 Route lookup in Hardware Route Lookups in Hardware Store all prefixes in memory/high speed cache IPv4 4G entries Store 24 bit prefixes (most route entries) 6 M 998 Prices 5$ - today G can be had for $ Store 24-bit prefixes with next hop information in memory For longer prefixes use secondary table Two-level page table idea One memory access time of 5 nsec Prefixes up to 24-bits Next Hop 2 24 = 6M entries Next Hop 69 Gupta 98- Infocom 7 Routing Lookups in Hardware Prefixes up to 24-bits Routing lookups in H/W Next Hop Pointer 4 8 offset base Prefixes above 24-bits Next Hop Next Hop Memory is cheap Can achieve nsec lookup times Can improve technique to fit in SRAM Depends on prefix length distribution Update complexity Two memory banks (switch after each update) Update every entry Update ranges but tag entry with prefix length Need to delete a lot of entries for each prefix delete /6 256 entries, /8 64K entries

19 Content-addressable Memory (CAM) Research Fully associative memory TCAM ternary CAM (,,*) Exact match operation in a single clock cycle: parallel compare Content (Destination address) is the key, address where content is stored is returned X more expensive than DRAM CAM: Good for fixed length data Variable length prefixes (TCAM) 2-4 MB Power consumption ( W) Dest Address ADDR Prefix CAM Prefix Next hop Technology trends Multicore Processors Energy, work schedule, parallelization Slow path on one core, fast path on another core DVFS Virtualization Run more than one OS (rtos, linux or BSD) RTOS for fast path, linux for slow path Solid state drives Low energy memory SDR More or less work for routers? More updates, more communication Papers [NSDI3] Wirespeed name lookup : A GPU based approach [NSDI] SSL shader [CoNext ] Multilayer packet classification using GPU

PacketShader: A GPU-Accelerated Software Router

PacketShader: A GPU-Accelerated Software Router PacketShader: A GPU-Accelerated Software Router Sangjin Han In collaboration with: Keon Jang, KyoungSoo Park, Sue Moon Advanced Networking Lab, CS, KAIST Networked and Distributed Computing Systems Lab,

More information

Inside Internet Routers

Inside Internet Routers Inside Internet Routers 3035/GZ0 Networked Systems Kyle Jamieson Lecture 9 Department of Computer Science University College London Today Inside internet routers Longest- prefix lookup The Luleå algorithm

More information

Growth of the Internet Network capacity: A scarce resource Good Service

Growth of the Internet Network capacity: A scarce resource Good Service IP Route Lookups 1 Introduction Growth of the Internet Network capacity: A scarce resource Good Service Large-bandwidth links -> Readily handled (Fiber optic links) High router data throughput -> Readily

More information

Last Lecture: Network Layer

Last Lecture: Network Layer Last Lecture: Network Layer 1. Design goals and issues 2. Basic Routing Algorithms & Protocols 3. Addressing, Fragmentation and reassembly 4. Internet Routing Protocols and Inter-networking 5. Router design

More information

Switch and Router Design. Packet Processing Examples. Packet Processing Examples. Packet Processing Rate 12/14/2011

Switch and Router Design. Packet Processing Examples. Packet Processing Examples. Packet Processing Rate 12/14/2011 // Bottlenecks Memory, memory, 88 - Switch and Router Design Dr. David Hay Ross 8b dhay@cs.huji.ac.il Source: Nick Mckeown, Isaac Keslassy Packet Processing Examples Address Lookup (IP/Ethernet) Where

More information

GPGPU introduction and network applications. PacketShaders, SSLShader

GPGPU introduction and network applications. PacketShaders, SSLShader GPGPU introduction and network applications PacketShaders, SSLShader Agenda GPGPU Introduction Computer graphics background GPGPUs past, present and future PacketShader A GPU-Accelerated Software Router

More information

ECE697AA Lecture 20. Forwarding Tables

ECE697AA Lecture 20. Forwarding Tables ECE697AA Lecture 20 Routers: Prefix Lookup Algorithms Tilman Wolf Department of Electrical and Computer Engineering 11/14/08 Forwarding Tables Routing protocols involve a lot of information Path choices,

More information

Topics for Today. Network Layer. Readings. Introduction Addressing Address Resolution. Sections 5.1,

Topics for Today. Network Layer. Readings. Introduction Addressing Address Resolution. Sections 5.1, Topics for Today Network Layer Introduction Addressing Address Resolution Readings Sections 5.1, 5.6.1-5.6.2 1 Network Layer: Introduction A network-wide concern! Transport layer Between two end hosts

More information

CS419: Computer Networks. Lecture 6: March 7, 2005 Fast Address Lookup:

CS419: Computer Networks. Lecture 6: March 7, 2005 Fast Address Lookup: : Computer Networks Lecture 6: March 7, 2005 Fast Address Lookup: Forwarding/Routing Revisited Best-match Longest-prefix forwarding table lookup We looked at the semantics of bestmatch longest-prefix address

More information

Message Switch. Processor(s) 0* 1 100* 6 1* 2 Forwarding Table

Message Switch. Processor(s) 0* 1 100* 6 1* 2 Forwarding Table Recent Results in Best Matching Prex George Varghese October 16, 2001 Router Model InputLink i 100100 B2 Message Switch B3 OutputLink 6 100100 Processor(s) B1 Prefix Output Link 0* 1 100* 6 1* 2 Forwarding

More information

Recent Advances in Software Router Technologies

Recent Advances in Software Router Technologies Recent Advances in Software Router Technologies KRNET 2013 2013.6.24-25 COEX Sue Moon In collaboration with: Sangjin Han 1, Seungyeop Han 2, Seonggu Huh 3, Keon Jang 4, Joongi Kim, KyoungSoo Park 5 Advanced

More information

CS 268: Route Lookup and Packet Classification

CS 268: Route Lookup and Packet Classification Overview CS 268: Route Lookup and Packet Classification Packet Lookup Packet Classification Ion Stoica March 3, 24 istoica@cs.berkeley.edu 2 Lookup Problem Identify the output interface to forward an incoming

More information

Router Architectures

Router Architectures Router Architectures Venkat Padmanabhan Microsoft Research 13 April 2001 Venkat Padmanabhan 1 Outline Router architecture overview 50 Gbps multi-gigabit router (Partridge et al.) Technology trends Venkat

More information

Forwarding and Routers : Computer Networking. Original IP Route Lookup. Outline

Forwarding and Routers : Computer Networking. Original IP Route Lookup. Outline Forwarding and Routers 15-744: Computer Networking L-9 Router Algorithms IP lookup Longest prefix matching Classification Flow monitoring Readings [EVF3] Bitmap Algorithms for Active Flows on High Speed

More information

PacketShader as a Future Internet Platform

PacketShader as a Future Internet Platform PacketShader as a Future Internet Platform AsiaFI Summer School 2011.8.11. Sue Moon in collaboration with: Joongi Kim, Seonggu Huh, Sangjin Han, Keon Jang, KyoungSoo Park Advanced Networking Lab, CS, KAIST

More information

Introduction. Router Architectures. Introduction. Introduction. Recent advances in routing architecture including

Introduction. Router Architectures. Introduction. Introduction. Recent advances in routing architecture including Introduction Router Architectures Recent advances in routing architecture including specialized hardware switching fabrics efficient and faster lookup algorithms have created routers that are capable of

More information

IP Forwarding. CSU CS557, Spring 2018 Instructor: Lorenzo De Carli

IP Forwarding. CSU CS557, Spring 2018 Instructor: Lorenzo De Carli IP Forwarding CSU CS557, Spring 2018 Instructor: Lorenzo De Carli 1 Sources George Varghese, Network Algorithmics, Morgan Kauffmann, December 2004 L. De Carli, Y. Pan, A. Kumar, C. Estan, K. Sankaralingam,

More information

Problem Statement. Algorithm MinDPQ (contd.) Algorithm MinDPQ. Summary of Algorithm MinDPQ. Algorithm MinDPQ: Experimental Results.

Problem Statement. Algorithm MinDPQ (contd.) Algorithm MinDPQ. Summary of Algorithm MinDPQ. Algorithm MinDPQ: Experimental Results. Algorithms for Routing Lookups and Packet Classification October 3, 2000 High Level Outline Part I. Routing Lookups - Two lookup algorithms Part II. Packet Classification - One classification algorithm

More information

Introduction. Introduction. Router Architectures. Introduction. Recent advances in routing architecture including

Introduction. Introduction. Router Architectures. Introduction. Recent advances in routing architecture including Router Architectures By the end of this lecture, you should be able to. Explain the different generations of router architectures Describe the route lookup process Explain the operation of PATRICIA algorithm

More information

15-744: Computer Networking. Routers

15-744: Computer Networking. Routers 15-744: Computer Networking outers Forwarding and outers Forwarding IP lookup High-speed router architecture eadings [McK97] A Fast Switched Backplane for a Gigabit Switched outer Optional [D+97] Small

More information

Network Layer: Control/data plane, addressing, routers

Network Layer: Control/data plane, addressing, routers 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)

More information

Multi-gigabit Switching and Routing

Multi-gigabit Switching and Routing Multi-gigabit Switching and Routing Gignet 97 Europe: June 12, 1997. Nick McKeown Assistant Professor of Electrical Engineering and Computer Science nickm@ee.stanford.edu http://ee.stanford.edu/~nickm

More information

Routers: Forwarding EECS 122: Lecture 13

Routers: Forwarding EECS 122: Lecture 13 Routers: Forwarding EECS 122: Lecture 13 epartment of Electrical Engineering and Computer Sciences University of California Berkeley Router Architecture Overview Two key router functions: run routing algorithms/protocol

More information

Master Course Computer Networks IN2097

Master Course Computer Networks IN2097 Chair for Network Architectures and Services Prof. Carle Department for Computer Science TU München Master Course Computer Networks IN2097 Prof. Dr.-Ing. Georg Carle Christian Grothoff, Ph.D. Chair for

More information

Master Course Computer Networks IN2097

Master Course Computer Networks IN2097 Chair for Network Architectures and Services Prof. Carle Department for Computer Science TU München Chair for Network Architectures and Services Prof. Carle Department for Computer Science TU München Master

More information

Routers Technologies & Evolution for High-Speed Networks

Routers Technologies & Evolution for High-Speed Networks Routers Technologies & Evolution for High-Speed Networks C. Pham Université de Pau et des Pays de l Adour http://www.univ-pau.fr/~cpham Congduc.Pham@univ-pau.fr Router Evolution slides from Nick McKeown,

More information

Routers: Forwarding EECS 122: Lecture 13

Routers: Forwarding EECS 122: Lecture 13 Input Port Functions Routers: Forwarding EECS 22: Lecture 3 epartment of Electrical Engineering and Computer Sciences University of California Berkeley Physical layer: bit-level reception ata link layer:

More information

CSE 123A Computer Networks

CSE 123A Computer Networks CSE 123A Computer Networks Winter 2005 Lecture 8: IP Router Design Many portions courtesy Nick McKeown Overview Router basics Interconnection architecture Input Queuing Output Queuing Virtual output Queuing

More information

CS 552 Computer Networks

CS 552 Computer Networks CS 55 Computer Networks IP forwarding Fall 00 Rich Martin (Slides from D. Culler and N. McKeown) Position Paper Goals: Practice writing to convince others Research an interesting topic related to networking.

More information

Lecture 5: Router Architecture. CS 598: Advanced Internetworking Matthew Caesar February 8, 2011

Lecture 5: Router Architecture. CS 598: Advanced Internetworking Matthew Caesar February 8, 2011 Lecture 5: Router Architecture CS 598: Advanced Internetworking Matthew Caesar February 8, 2011 1 IP Router... A router consists A set of input interfaces at which packets arrive A se of output interfaces

More information

LONGEST prefix matching (LPM) techniques have received

LONGEST prefix matching (LPM) techniques have received IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 14, NO. 2, APRIL 2006 397 Longest Prefix Matching Using Bloom Filters Sarang Dharmapurikar, Praveen Krishnamurthy, and David E. Taylor, Member, IEEE Abstract We

More information

Overview. Implementing Gigabit Routers with NetFPGA. Basic Architectural Components of an IP Router. Per-packet processing in an IP Router

Overview. Implementing Gigabit Routers with NetFPGA. Basic Architectural Components of an IP Router. Per-packet processing in an IP Router Overview Implementing Gigabit Routers with NetFPGA Prof. Sasu Tarkoma The NetFPGA is a low-cost platform for teaching networking hardware and router design, and a tool for networking researchers. The NetFPGA

More information

Fast IP Routing Lookup with Configurable Processor and Compressed Routing Table

Fast IP Routing Lookup with Configurable Processor and Compressed Routing Table Fast IP Routing Lookup with Configurable Processor and Compressed Routing Table H. Michael Ji, and Ranga Srinivasan Tensilica, Inc. 3255-6 Scott Blvd Santa Clara, CA 95054 Abstract--In this paper we examine

More information

Routing architecture and forwarding

Routing architecture and forwarding DD2490 p4 2011 Routing architecture and forwarding & Intro to Homework 4 Olof Hagsand KTH /CSC 1 Connecting devices Connecting devices Networking devices Internetworking devices Hub/ Hub/ Repeater Bridge/

More information

Binary Search Schemes for Fast IP Lookups

Binary Search Schemes for Fast IP Lookups 1 Schemes for Fast IP Lookups Pronita Mehrotra, Paul D. Franzon Abstract IP route look up is the most time consuming operation of a router. Route lookup is becoming a very challenging problem due to the

More information

Scalable IP Routing Lookup in Next Generation Network

Scalable IP Routing Lookup in Next Generation Network Scalable IP Routing Lookup in Next Generation Network Chia-Tai Chan 1, Pi-Chung Wang 1,Shuo-ChengHu 2, Chung-Liang Lee 1, and Rong-Chang Chen 3 1 Telecommunication Laboratories, Chunghwa Telecom Co., Ltd.

More information

CSC 401 Data and Computer Communications Networks

CSC 401 Data and Computer Communications Networks CSC 401 Data and Computer Communications Networks Network Layer Overview, Router Design, IP Sec 4.1. 4.2 and 4.3 Prof. Lina Battestilli Fall 2017 Chapter 4: Network Layer, Data Plane chapter goals: understand

More information

Data Structures for Packet Classification

Data Structures for Packet Classification Presenter: Patrick Nicholson Department of Computer Science CS840 Topics in Data Structures Outline 1 The Problem 2 Hardware Solutions 3 Data Structures: 1D 4 Trie-Based Solutions Packet Classification

More information

Router Construction. Workstation-Based. Switching Hardware Design Goals throughput (depends on traffic model) scalability (a function of n) Outline

Router Construction. Workstation-Based. Switching Hardware Design Goals throughput (depends on traffic model) scalability (a function of n) Outline Router Construction Outline Switched Fabrics IP Routers Tag Switching Spring 2002 CS 461 1 Workstation-Based Aggregate bandwidth 1/2 of the I/O bus bandwidth capacity shared among all hosts connected to

More information

ITTC High-Performance Networking The University of Kansas EECS 881 Packet Switch I/O Processing

ITTC High-Performance Networking The University of Kansas EECS 881 Packet Switch I/O Processing High-Performance Networking The University of Kansas EECS 881 Packet Switch I/O Processing James P.G. Sterbenz Department of Electrical Engineering & Computer Science Information Technology & Telecommunications

More information

ADDRESS LOOKUP SOLUTIONS FOR GIGABIT SWITCH/ROUTER

ADDRESS LOOKUP SOLUTIONS FOR GIGABIT SWITCH/ROUTER ADDRESS LOOKUP SOLUTIONS FOR GIGABIT SWITCH/ROUTER E. Filippi, V. Innocenti and V. Vercellone CSELT (Centro Studi e Laboratori Telecomunicazioni) Via Reiss Romoli 274 Torino, 10148 ITALY ABSTRACT The Internet

More information

CS 268: Computer Networking

CS 268: Computer Networking CS 268: Computer Networking L-8 outers Forwarding and outers Forwarding IP lookup High-speed router architecture eadings [McK97] A Fast Switched Backplane for a Gigabit Switched outer [KCY03] Scaling ternet

More information

Frugal IP Lookup Based on a Parallel Search

Frugal IP Lookup Based on a Parallel Search Frugal IP Lookup Based on a Parallel Search Zoran Čiča and Aleksandra Smiljanić School of Electrical Engineering, Belgrade University, Serbia Email: cicasyl@etf.rs, aleksandra@etf.rs Abstract Lookup function

More information

Professor Yashar Ganjali Department of Computer Science University of Toronto.

Professor Yashar Ganjali Department of Computer Science University of Toronto. Professor Yashar Ganjali Department of Computer Science University of Toronto yganjali@cs.toronto.edu http://www.cs.toronto.edu/~yganjali Today Outline What this course is about Logistics Course structure,

More information

Parallel-Search Trie-based Scheme for Fast IP Lookup

Parallel-Search Trie-based Scheme for Fast IP Lookup Parallel-Search Trie-based Scheme for Fast IP Lookup Roberto Rojas-Cessa, Lakshmi Ramesh, Ziqian Dong, Lin Cai, and Nirwan Ansari Department of Electrical and Computer Engineering, New Jersey Institute

More information

TOC: Switching & Forwarding

TOC: Switching & Forwarding TOC: Switching & Forwarding Why? Switching Techniques Switch Characteristics Switch Examples Switch Architectures Summary TOC Switching Why? Direct vs. Switched Networks: n links Single link Direct Network

More information

PUSHING THE LIMITS, A PERSPECTIVE ON ROUTER ARCHITECTURE CHALLENGES

PUSHING THE LIMITS, A PERSPECTIVE ON ROUTER ARCHITECTURE CHALLENGES PUSHING THE LIMITS, A PERSPECTIVE ON ROUTER ARCHITECTURE CHALLENGES Greg Hankins APRICOT 2012 2012 Brocade Communications Systems, Inc. 2012/02/28 Lookup Capacity and Forwarding

More information

Chapter 4 Network Layer: The Data Plane

Chapter 4 Network Layer: The Data Plane Chapter 4 Network Layer: The Data Plane A note on the use of these Powerpoint slides: We re making these slides freely available to all (faculty, students, readers). They re in PowerPoint form so you see

More information

Midterm Review. Congestion Mgt, CIDR addresses,tcp processing, TCP close. Routing. hierarchical networks. Routing with OSPF, IS-IS, BGP-4

Midterm Review. Congestion Mgt, CIDR addresses,tcp processing, TCP close. Routing. hierarchical networks. Routing with OSPF, IS-IS, BGP-4 Midterm Review Week 1 Congestion Mgt, CIDR addresses,tcp processing, TCP close Week 2 Routing. hierarchical networks Week 3 Routing with OSPF, IS-IS, BGP-4 Week 4 IBGP, Prefix lookup, Tries, Non-stop routers,

More information

Novel Hardware Architecture for Fast Address Lookups

Novel Hardware Architecture for Fast Address Lookups Novel Hardware Architecture for Fast Address Lookups Pronita Mehrotra Paul D. Franzon Department of Electrical and Computer Engineering North Carolina State University {pmehrot,paulf}@eos.ncsu.edu This

More information

PARALLEL ALGORITHMS FOR IP SWITCHERS/ROUTERS

PARALLEL ALGORITHMS FOR IP SWITCHERS/ROUTERS THE UNIVERSITY OF NAIROBI DEPARTMENT OF ELECTRICAL AND INFORMATION ENGINEERING FINAL YEAR PROJECT. PROJECT NO. 60 PARALLEL ALGORITHMS FOR IP SWITCHERS/ROUTERS OMARI JAPHETH N. F17/2157/2004 SUPERVISOR:

More information

Router Design: Table Lookups and Packet Scheduling EECS 122: Lecture 13

Router Design: Table Lookups and Packet Scheduling EECS 122: Lecture 13 Router Design: Table Lookups and Packet Scheduling EECS 122: Lecture 13 Department of Electrical Engineering and Computer Sciences University of California Berkeley Review: Switch Architectures Input Queued

More information

Decision Forest: A Scalable Architecture for Flexible Flow Matching on FPGA

Decision Forest: A Scalable Architecture for Flexible Flow Matching on FPGA Decision Forest: A Scalable Architecture for Flexible Flow Matching on FPGA Weirong Jiang, Viktor K. Prasanna University of Southern California Norio Yamagaki NEC Corporation September 1, 2010 Outline

More information

NetFPGA Hardware Architecture

NetFPGA Hardware Architecture NetFPGA Hardware Architecture Jeffrey Shafer Some slides adapted from Stanford NetFPGA tutorials NetFPGA http://netfpga.org 2 NetFPGA Components Virtex-II Pro 5 FPGA 53,136 logic cells 4,176 Kbit block

More information

INF5050 Protocols and Routing in Internet (Friday ) Subject: IP-router architecture. Presented by Tor Skeie

INF5050 Protocols and Routing in Internet (Friday ) Subject: IP-router architecture. Presented by Tor Skeie INF5050 Protocols and Routing in Internet (Friday 9.2.2018) Subject: IP-router architecture Presented by Tor Skeie High Performance Switching and Routing Telecom Center Workshop: Sept 4, 1997. This presentation

More information

The iflow Address Processor Forwarding Table Lookups using Fast, Wide Embedded DRAM

The iflow Address Processor Forwarding Table Lookups using Fast, Wide Embedded DRAM Enabling the Future of the Internet The iflow Address Processor Forwarding Table Lookups using Fast, Wide Embedded DRAM Mike O Connor - Director, Advanced Architecture www.siliconaccess.com Hot Chips 12

More information

Chapter 12 Digital Search Structures

Chapter 12 Digital Search Structures Chapter Digital Search Structures Digital Search Trees Binary Tries and Patricia Multiway Tries C-C Tsai P. Digital Search Tree A digital search tree is a binary tree in which each node contains one element.

More information

Network Superhighway CSCD 330. Network Programming Winter Lecture 13 Network Layer. Reading: Chapter 4

Network Superhighway CSCD 330. Network Programming Winter Lecture 13 Network Layer. Reading: Chapter 4 CSCD 330 Network Superhighway Network Programming Winter 2015 Lecture 13 Network Layer Reading: Chapter 4 Some slides provided courtesy of J.F Kurose and K.W. Ross, All Rights Reserved, copyright 1996-2007

More information

Network Processors. Nevin Heintze Agere Systems

Network Processors. Nevin Heintze Agere Systems Network Processors Nevin Heintze Agere Systems Network Processors What are the packaging challenges for NPs? Caveat: I know very little about packaging. Network Processors What are the packaging challenges

More information

Reliably Scalable Name Prefix Lookup! Haowei Yuan and Patrick Crowley! Washington University in St. Louis!! ANCS 2015! 5/8/2015!

Reliably Scalable Name Prefix Lookup! Haowei Yuan and Patrick Crowley! Washington University in St. Louis!! ANCS 2015! 5/8/2015! Reliably Scalable Name Prefix Lookup! Haowei Yuan and Patrick Crowley! Washington University in St. Louis!! ANCS 2015! 5/8/2015! ! My Topic for Today! Goal: a reliable longest name prefix lookup performance

More information

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

Chapter 4: network layer. Network service model. Two key network-layer functions. Network layer. Input port functions. Router architecture overview Chapter 4: chapter goals: understand principles behind services service models forwarding versus routing how a router works generalized forwarding instantiation, implementation in the Internet 4- Network

More information

COMP211 Chapter 4 Network Layer: The Data Plane

COMP211 Chapter 4 Network Layer: The Data Plane COMP211 Chapter 4 Network Layer: The Data Plane All material copyright 1996-2016 J.F Kurose and K.W. Ross, All Rights Reserved Computer Networking: A Top Down Approach 7 th edition Jim Kurose, Keith Ross

More information

The Network Layer and Routers

The Network Layer and Routers The Network Layer and Routers Daniel Zappala CS 460 Computer Networking Brigham Young University 2/18 Network Layer deliver packets from sending host to receiving host must be on every host, router in

More information

Routers. Session 12 INST 346 Technologies, Infrastructure and Architecture

Routers. Session 12 INST 346 Technologies, Infrastructure and Architecture Routers Session 12 INST 346 Technologies, Infrastructure and Architecture Goals for Today Finish up TCP Flow control, timeout selection, close connection Network layer overview Structure of a router Getahead:

More information

Multiway Range Trees: Scalable IP Lookup with Fast Updates

Multiway Range Trees: Scalable IP Lookup with Fast Updates Multiway Range Trees: Scalable IP Lookup with Fast Updates Subhash Suri George Varghese Priyank Ramesh Warkhede Department of Computer Science Washington University St. Louis, MO 63130. Abstract In this

More information

TOC: Switching & Forwarding

TOC: Switching & Forwarding TOC: Switching & Forwarding Why? Switching Techniques Switch Characteristics Switch Examples Switch Architectures Summary Why? Direct vs. Switched Networks: Single link Switches Direct Network Limitations:

More information

Lecture 16: Router Design

Lecture 16: Router Design Lecture 16: Router Design CSE 123: Computer Networks Alex C. Snoeren Eample courtesy Mike Freedman Lecture 16 Overview End-to-end lookup and forwarding example Router internals Buffering Scheduling 2 Example:

More information

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

Lecture 12: Aggregation. CSE 123: Computer Networks Alex C. Snoeren Lecture 12: Aggregation CSE 123: Computer Networks Alex C. Snoeren Lecture 12 Overview Subnetting Classless addressing Route aggregation 2 Class-based Addressing Most significant bits determines class

More information

Efficient IP-Address Lookup with a Shared Forwarding Table for Multiple Virtual Routers

Efficient IP-Address Lookup with a Shared Forwarding Table for Multiple Virtual Routers Efficient IP-Address Lookup with a Shared Forwarding Table for Multiple Virtual Routers ABSTRACT Jing Fu KTH, Royal Institute of Technology Stockholm, Sweden jing@kth.se Virtual routers are a promising

More information

P51: High Performance Networking

P51: High Performance Networking P51: High Performance Networking Lecture 6: Programmable network devices Dr Noa Zilberman noa.zilberman@cl.cam.ac.uk Lent 2017/18 High Throughput Interfaces Performance Limitations So far we discussed

More information

FPGA Implementation of Lookup Algorithms

FPGA Implementation of Lookup Algorithms 2011 IEEE 12th International Conference on High Performance Switching and Routing FPGA Implementation of Lookup Algorithms Zoran Chicha, Luka Milinkovic, Aleksandra Smiljanic Department of Telecommunications

More information

Scalable Enterprise Networks with Inexpensive Switches

Scalable Enterprise Networks with Inexpensive Switches Scalable Enterprise Networks with Inexpensive Switches Minlan Yu minlanyu@cs.princeton.edu Princeton University Joint work with Alex Fabrikant, Mike Freedman, Jennifer Rexford and Jia Wang 1 Enterprises

More information

MPLS MULTI PROTOCOL LABEL SWITCHING OVERVIEW OF MPLS, A TECHNOLOGY THAT COMBINES LAYER 3 ROUTING WITH LAYER 2 SWITCHING FOR OPTIMIZED NETWORK USAGE

MPLS MULTI PROTOCOL LABEL SWITCHING OVERVIEW OF MPLS, A TECHNOLOGY THAT COMBINES LAYER 3 ROUTING WITH LAYER 2 SWITCHING FOR OPTIMIZED NETWORK USAGE MPLS Multiprotocol MPLS Label Switching MULTI PROTOCOL LABEL SWITCHING OVERVIEW OF MPLS, A TECHNOLOGY THAT COMBINES LAYER 3 ROUTING WITH LAYER 2 SWITCHING FOR OPTIMIZED NETWORK USAGE Peter R. Egli 1/21

More information

Themes. The Network 1. Energy in the DC: ~15% network? Energy by Technology

Themes. The Network 1. Energy in the DC: ~15% network? Energy by Technology Themes The Network 1 Low Power Computing David Andersen Carnegie Mellon University Last two classes: Saving power by running more slowly and sleeping more. This time: Network intro; saving power by architecting

More information

High-Speed Network Processors. EZchip Presentation - 1

High-Speed Network Processors. EZchip Presentation - 1 High-Speed Network Processors EZchip Presentation - 1 NP-1c Interfaces Switch Fabric 10GE / N x1ge or Switch Fabric or Lookup Tables Counters SDRAM/FCRAM 64 x166/175mhz SRAM DDR NBT CSIX c XGMII HiGig

More information

IP Address Lookup in Hardware for High-Speed Routing

IP Address Lookup in Hardware for High-Speed Routing IP Address Lookup in Hardware for High-Speed Routing Andreas Moestedt and Peter Sjödin am@sics.se, peter@sics.se Swedish Institute of Computer Science P.O. Box 1263, SE-164 29 KISTA, Sweden Abstract This

More information

IP ROUTING LOOKUP: HARDWARE AND SOFTWARE APPROACH. A Thesis RAVIKUMAR V. CHAKARAVARTHY

IP ROUTING LOOKUP: HARDWARE AND SOFTWARE APPROACH. A Thesis RAVIKUMAR V. CHAKARAVARTHY IP ROUTING LOOKUP: HARDWARE AND SOFTWARE APPROACH A Thesis by RAVIKUMAR V. CHAKARAVARTHY Submitted to the Office of Graduate Studies of Texas A&M University in partial fulfillment of the requirements for

More information

Outline. The demand The San Jose NAP. What s the Problem? Most things. Time. Part I AN OVERVIEW OF HARDWARE ISSUES FOR IP AND ATM.

Outline. The demand The San Jose NAP. What s the Problem? Most things. Time. Part I AN OVERVIEW OF HARDWARE ISSUES FOR IP AND ATM. Outline AN OVERVIEW OF HARDWARE ISSUES FOR IP AND ATM Name one thing you could achieve with ATM that you couldn t with IP! Nick McKeown Assistant Professor of Electrical Engineering and Computer Science

More information

Packet Switch Architectures Part 2

Packet Switch Architectures Part 2 Packet Switch Architectures Part Adopted from: Sigcomm 99 Tutorial, by Nick McKeown and Balaji Prabhakar, Stanford University Slides used with permission from authors. 999-000. All rights reserved by authors.

More information

Topic 4a Router Operation and Scheduling. Ch4: Network Layer: The Data Plane. Computer Networking: A Top Down Approach

Topic 4a Router Operation and Scheduling. Ch4: Network Layer: The Data Plane. Computer Networking: A Top Down Approach Topic 4a Router Operation and Scheduling Ch4: Network Layer: The Data Plane Computer Networking: A Top Down Approach 7 th edition Jim Kurose, Keith Ross Pearson/Addison Wesley April 2016 4-1 Chapter 4:

More information

EECS 122: Introduction to Computer Networks Switch and Router Architectures. Today s Lecture

EECS 122: Introduction to Computer Networks Switch and Router Architectures. Today s Lecture EECS : Introduction to Computer Networks Switch and Router Architectures Computer Science Division Department of Electrical Engineering and Computer Sciences University of California, Berkeley Berkeley,

More information

CSCE 463/612 Networks and Distributed Processing Spring 2018

CSCE 463/612 Networks and Distributed Processing Spring 2018 CSCE 463/612 Networks and Distributed Processing Spring 2018 Network Layer II Dmitri Loguinov Texas A&M University April 3, 2018 Original slides copyright 1996-2004 J.F Kurose and K.W. Ross 1 Chapter 4:

More information

CS244a: An Introduction to Computer Networks

CS244a: An Introduction to Computer Networks CS244a: An Introduction to Computer Networks Handout 4: Layer 3 and the Internet Protocol (IP) Nick McKeown Professor of Electrical Engineering and Computer Science, Stanford University nickm@stanford.edu

More information

Multi-core Implementation of Decomposition-based Packet Classification Algorithms 1

Multi-core Implementation of Decomposition-based Packet Classification Algorithms 1 Multi-core Implementation of Decomposition-based Packet Classification Algorithms 1 Shijie Zhou, Yun R. Qu, and Viktor K. Prasanna Ming Hsieh Department of Electrical Engineering, University of Southern

More information

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

1-1. Switching Networks (Fall 2010) EE 586 Communication and. October 25, Lecture 24 EE 586 Communication and Switching Networks (Fall 2010) Lecture 24 October 25, 2010 1-1 Announcements Midterm 1: Mean = 92.2 Stdev = 8 Still grading your programs (sorry about the delay) Network Layer

More information

IV. PACKET SWITCH ARCHITECTURES

IV. PACKET SWITCH ARCHITECTURES IV. PACKET SWITCH ARCHITECTURES (a) General Concept - as packet arrives at switch, destination (and possibly source) field in packet header is used as index into routing tables specifying next switch in

More information

Forwarding Architecture

Forwarding Architecture Forwarding Architecture Brighten Godfrey CS 538 February 14 2018 slides 2010-2018 by Brighten Godfrey unless otherwise noted Building a fast router Partridge: 50 Gb/sec router A fast IP router well, fast

More information

CSCD 330 Network Programming

CSCD 330 Network Programming CSCD 330 Network Programming Network Superhighway Spring 2018 Lecture 13 Network Layer Reading: Chapter 4 Some slides provided courtesy of J.F Kurose and K.W. Ross, All Rights Reserved, copyright 1996-2007

More information

A 400Gbps Multi-Core Network Processor

A 400Gbps Multi-Core Network Processor A 400Gbps Multi-Core Network Processor James Markevitch, Srinivasa Malladi Cisco Systems August 22, 2017 Legal THE INFORMATION HEREIN IS PROVIDED ON AN AS IS BASIS, WITHOUT ANY WARRANTIES OR REPRESENTATIONS,

More information

Chapter 4 Network Layer: The Data Plane

Chapter 4 Network Layer: The Data Plane Chapter 4 Network Layer: The Data Plane Chapter 4: outline 4.1 Overview of Network layer data plane control plane 4.2 What s inside a router 4.3 IP: Internet Protocol datagram format fragmentation IPv4

More information

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

Network layer: Overview. Network layer functions IP Routing and forwarding NAT ARP IPv6 Routing Network layer: Overview Network layer functions IP Routing and forwarding NAT ARP IPv6 Routing 1 Network Layer Functions Transport packet from sending to receiving hosts Network layer protocols in every

More information

Network layer: Overview. Network Layer Functions

Network layer: Overview. Network Layer Functions Network layer: Overview Network layer functions IP Routing and forwarding NAT ARP IPv6 Routing 1 Network Layer Functions Transport packet from sending to receiving hosts Network layer protocols in every

More information

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

Lecture 12: Addressing. CSE 123: Computer Networks Alex C. Snoeren Lecture 12: Addressing CSE 123: Computer Networks Alex C. Snoeren Lecture 12 Overview IP Addresses Class-based addressing Subnetting Classless addressing Route aggregation 2 Addressing Considerations Fixed

More information

소프트웨어기반고성능침입탐지시스템설계및구현

소프트웨어기반고성능침입탐지시스템설계및구현 소프트웨어기반고성능침입탐지시스템설계및구현 KyoungSoo Park Department of Electrical Engineering, KAIST M. Asim Jamshed *, Jihyung Lee*, Sangwoo Moon*, Insu Yun *, Deokjin Kim, Sungryoul Lee, Yung Yi* Department of Electrical

More information

The IP Data Plane: Packets and Routers

The IP Data Plane: Packets and Routers The IP Data Plane: Packets and Routers EE 122, Fall 2013 Sylvia Ratnasamy http://inst.eecs.berkeley.edu/~ee122/ Material thanks to Ion Stoica, Scott Shenker, Jennifer Rexford, Nick McKeown, and many other

More information

Scalable Packet Classification for IPv6 by Using Limited TCAMs

Scalable Packet Classification for IPv6 by Using Limited TCAMs Scalable Packet Classification for IPv6 by Using Limited TCAMs Chia-Tai Chan 1, Pi-Chung Wang 1,Shuo-ChengHu 2, Chung-Liang Lee 1,and Rong-Chang Chen 3 1 Telecommunication Laboratories, Chunghwa Telecom

More information

Efficient hardware architecture for fast IP address lookup. Citation Proceedings - IEEE INFOCOM, 2002, v. 2, p

Efficient hardware architecture for fast IP address lookup. Citation Proceedings - IEEE INFOCOM, 2002, v. 2, p Title Efficient hardware architecture for fast IP address lookup Author(s) Pao, D; Liu, C; Wu, A; Yeung, L; Chan, KS Citation Proceedings - IEEE INFOCOM, 2002, v 2, p 555-56 Issued Date 2002 URL http://hdlhandlenet/0722/48458

More information

Virtual to physical address translation

Virtual to physical address translation Virtual to physical address translation Virtual memory with paging Page table per process Page table entry includes present bit frame number modify bit flags for protection and sharing. Page tables can

More information

Router Architecture Overview

Router Architecture Overview Chapter 4: r Introduction (forwarding and routing) r Review of queueing theory r Router design and operation r IP: Internet Protocol m IPv4 (datagram format, addressing, ICMP, NAT) m Ipv6 r Generalized

More information

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

Lecture 3. The Network Layer (cont d) Network Layer 1-1 Lecture 3 The Network Layer (cont d) Network Layer 1-1 Agenda The Network Layer (cont d) What is inside a router? Internet Protocol (IP) IPv4 fragmentation and addressing IP Address Classes and Subnets

More information