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

Size: px
Start display at page:

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

Transcription

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

2 IP Router... A router consists A set of input interfaces at which packets arrive A se of output interfaces from which packets depart Router implements two main functions Forward packet to corresponding output interface Manage congestion 2

3 Generic Router Architecture Input and output interfaces are connected through a backplane A backplane can be implemented by Shared memory Low capacity routers (e.g., PCbased routers) Shared bus Medium capacity routers Point-to-point (switched) bus High capacity routers input interface Interconnection Medium (Backplane) output interface 3

4 Speedup C input/output link capacity R I maximum rate at which an input interface can send data into backplane R O maximum rate at which an output can read data from backplane B maximum aggregate backplane transfer rate Back-plane speedup: B/C Input speedup: R I /C Output speedup: R O /C C input interface Interconnection Medium (Backplane) R I B output interface R O C 4

5 Function division Input interfaces: Must perform packet forwarding need to know to which output interface to send packets May enqueue packets and perform scheduling Output interfaces: May enqueue packets and perform scheduling C input interface Interconnection Medium (Backplane) R I B output interface R O C 5

6 Three Router Architectures Output queued Input queued Combined Input-Output queued 6

7 Output Queued (OQ) Routers Only output interfaces store packets Advantages Easy to design algorithms: only one congestion point Disadvantages Requires an output speedup of N, where N is the number of interfaces not feasible input interface output interface Backplane R O C 7

8 Input Queueing (IQ) Routers Only input interfaces store packets Advantages Easy to built Store packets at inputs if contention at outputs Relatively easy to design algorithms Only one congestion point, but not output need to implement backpressure Disadvantages Hard to achieve utilization 1 (due to output contention, head-of-line blocking) However, theoretical and simulation results show that for realistic traffic an input/output speedup of 2 is enough to achieve utilizations close to 1 input interface output interface Backplane R O C 8

9 Combined Input-Output Queueing (CIOQ) Routers Both input and output interfaces store packets Advantages Easy to built Utilization 1 can be achieved with limited input/output speedup (<= 2) Disadvantages Harder to design algorithms Two congestion points Need to design flow control Note: results show that with a input/output speedup of 2, a CIOQ can emulate any workconserving OQ [G+98,SZ98] input interface output interface Backplane R O C 9

10 Generic Architecture of a High Speed Router Today Combined Input-Output Queued Architecture Input/output speedup <= 2 Input interface Perform packet forwarding (and classification) Output interface Perform packet (classification and) scheduling Backplane Point-to-point (switched) bus; speedup N Schedule packet transfer from input to output 10

11 Backplane Point-to-point switch allows to simultaneously transfer a packet between any two disjoint pairs of input-output interfaces Goal: come-up with a schedule that Meet flow QoS requirements Maximize router throughput Challenges: Address head-of-line blocking at inputs Resolve input/output speedups contention Avoid packet dropping at output if possible Note: packets are fragmented in fix sized cells (why?) at inputs and reassembled at outputs In Partridge et al, a cell is 64 B (what are the trade-offs?) 11

12 Head-of-line Blocking The cell at the head of an input queue cannot be transferred, thus blocking the following cells Cannot be transferred because is blocked by red cell Input 1 Input 2 Input 3 Cannot be transferred because output buffer full Output 1 Output 2 Output 3 12

13 Solution to Avoid Head-of-line Blocking Maintain at each input N virtual queues, i.e., one per output Input 1 Input 2 Output 1 Output 2 Output 3 Input 3 13

14 Cell transfer Schedule: Ideally: find the maximum number of input-output pairs such that: Example Resolve input/output contentions Avoid packet drops at outputs Packets meet their time constraints (e.g., deadlines), if any Assign cell preferences at inputs, e.g., their position in the input queue Assign cell preferences at outputs, e.g., based on packet deadlines, or the order in which cells would depart in a OQ router Match inputs and outputs based on their preferences Problem: Achieving a high quality matching complex, i.e., hard to do in constant time 14

15 Routing vs. Forwarding Routing: control plane Computing paths the packets will follow Routers talking amongst themselves Individual router creating a forwarding table Forwarding: data plane Directing a data packet to an outgoing link Individual router using a forwarding table 15

16 How the control and data planes work together (logical view) Update /8 Protocol daemon RIB /8 IF 2 Control Plane IF 1 IF 2 FIB /8 IF 2 Data Plane /8 Data packet

17 Physical layout of a high-end router data plane Route Processor control plane Line card Line card Line card Switching Fabric Line card Line card Line card 17

18 Routing vs. Forwarding Control plane s jobs include Route calculation Maintenance of routing table Execution of routing protocols On commercial routers, handled by special-purpose processor called route processor IP forwarding is per-packet processing 18 On high-end commercial routers, IP forwarding is distributed Most work is done by interface cards data plane Route Processor Switching Fabric control plane

19 Router Components On a PC router: Interconnection network is the PCI bus Interface cards are the NICs (e.g., Ethernet cards) All forwarding and routing is done on a commodity CPU On commercial routers: Interconnection network and interface cards are sophisticated, special-purpose hardware Packet forwarding oftend implemented in a custom ASIC Only routing (control plane) is done on the commodity CPU (route processor)

20 Slotted Chassis Large routers are built as a slotted chassis Interface cards are inserted in the slots Route processor is also inserted as a slot This simplifies repairs and upgrades of components E.g., hot-swapping of components

21 Evolution of router architectures Early routers were just general-purpose computers Today, high-performance routers resemble mini data centers Exploit parallelism Specialized hardware Until 1980s (1 st generation): standard computer Early 1990s (2 nd generation): delegate packet processing to interfaces Late 1990s (3 rd generation): distributed architecture Today: distributed across multiple racks 21

22 First generation routers This architecture is still used in low-end routers Arriving packets are copied to main memory via direct memory access (DMA) Interconnection network is a backplane (shared bus) All IP forwarding functions are performed by a commodity CPU Routing cache at processor can accelerate the routing table lookup Drawbacks: Forwarding performance is limited by the CPU Capacity of shared bus limits the number of interface cards that can be connected CPU Buffer Memory DMA DMA DMA Line Interface MAC Line Interface MAC Typically <0.5Gb/s aggregate capacity Off-chip buffer memory Line Interface MAC Shared bus 22

23 Second generation routers Bypasses memory bus with direct transfer over bus between line cards CPU Buffer Memory Moves forwarding decisions local to card to reduce CPU utilization DMA DMA DMA Line Card Local Buffer Memory Line Card Local Buffer Memory Line Card Local Buffer Memory Trap to CPU for slow operations MAC MAC MAC Typically <5Gb/s aggregate capacity 23

24 Speeding up the common case with a Fast path IP packet forwarding is complex But, vast majority of packets can be forwarded with simple algorithm Main idea: put common-case forwarding in hardware, trap to software on exceptions Example: BBN router had 85 instructions for fast-path code, which fits entirely in L1 cache Non-common cases handled by slow path: Route cache misses Errors (e.g., ICMP time exceeded) IP options Fragmented packets Multicast packets 24

25 Improving upon secondgeneration routers Control plane must remember lots of information (BGP attributes, etc.) But data plane only needs to know FIB Smaller, fixed-length attributes Idea: store FIB in hardware Going over the bus adds delay Idea: Cache FIB in line cards Send directly over bus to outbound line card 25

26 Improving upon secondgeneration routers Shared bus is a big bottleneck E.g., modern PCI bus (PCIx16) is only 32Gbit/sec (in theory) Almost-modern Cisco (XR 12416) is 320 Gbit/sec Ow! How do we get there? Idea: put a network inside the router Switched backplane for larger cross-section bandwidths 26

27 Third generation routers Replace bus with interconnection network (e.g., a crossbar switch) Distributed architecture: Line cards operate independently of one another independently of one another Line CPU Line Card Card Card No centralized processing for IP forwarding These routers can be scaled to many hundreds of interface cards and capacity of > 1 Tbit/sec Local Buffer Memory MAC Local Buffer Memory MAC 27

28 Switch Fabric: From Input to Output Data Hdr Header Processing Lookup Address Update Header 1 1 Queue Packet Address Table Buffer Memory Data Hdr Header Processing Lookup Update Address Header 2 2 Queue Packet Address Table Buffer Memory Header Processing Data Hdr N N Lookup Address Update Header Queue Packet Address Table Buffer Memory

29 Crossbars N input ports, N output ports One per line card, usually Every line card has its own forwarding table/classifier/etc --- removes CPU bottleneck Scheduler Decides which input/output port pairs to connect in a given time slot Often forward fixed-sized cells to avoid variable-length time slots Crossbar constraint If input i is connected to output j, no other input connected to j, no other output connected to i Scheduling is a bipartite matching 29

30 Data Plane Details: Checksum Takes too much time to verify checksum Increases forwarding time by 21% Take an optimistic approach: just incrementally update it Safe operation: if checksum was correct it remains correct If checksum bad, it will be anyway caught by endhost Note: IPv6 does not include a header checksum anyway! 30

31 Multi-chassis routers Multi-chassis router A single router that is a distributed collection of racks Scales to 322 Tbps, can replace an entire PoP 31

32 Why multi-chassis routers? ~ 40 routers per PoP (easily) in today s Intra-PoP architectures Connections between these routers require the same expensive line cards as inter-pop connections 32 Support forwarding tables, QoS, monitoring, configuration, MPLS Line cards are dominant cost of router, and racks often limited to sixteen 40 Gbps line cards Each connection appears as an adjacency in the routing protocol Increases IGP/iBGP control-plane overhead Increases complexity of scaling techniques such as route reflectors and summarization

33 Multi-chassis routers to the rescue Multi-chassis design: each line-card chassis has some fabric interface cards 33 Do not use line-card slots: instead uses a separate, smaller connection Do not need complex packet processing logic much cheaper than line cards Multi-chassis router acts as one router to the outside world Simplifies administration Reduces number of ibgp adjacencies and IGP nodes/links without resorting to complex scaling techniques However, now the multi-chassis router becomes a distributed system Interesting research topics Needs rethinking of router software (distributed and parallel) Needs high resilience (no external backup routers)

34 Matching Algorithms

35 Administrivia Lecture topics+outlines due today Next step: slide-based outline by 2/16 Put down the text for your slides (no graphics) Project topics due on 2/10 Send me a 1 paragraph description of your project, names of people in your group 35

36 What s so hard about IP packet forwarding? Back-of-the-envelope numbers Line cards can be 40 Gbps today (OC-768) Getting faster every year! To handle minimum-sized packets (~40b) 125 Mpps, or 8ns per packet Can use parallelism, but need to be careful about reordering For each packet, you must Do a routing lookup (where to send it) Schedule the crossbar Maybe buffer, maybe QoS, maybe ACLs, 36

37 Routing lookups Routing tables: 200,000 to 1M entries Router must be able to handle routing table loads 5-10 years hence How can we store routing state? What kind of memory to use? How can we quickly lookup with increasingly large routing tables? 37

38 Memory technologies Technology Single chip density $/MByte Access speed Watts/ chip Dynamic RAM (DRAM) cheap, slow Static RAM (SRAM) expensive, fast, a bit higher heat/power Ternary Content Addressable Memory (TCAM) very expensive, very high heat/power, very fast (does parallel lookups in hardware) 64 MB $0.50- $ ns 0.5-2W 4 MB $5-$8 4-8ns 1-3W 1 MB $200-$ ns 15-30W Vendors moved from DRAM (1980s) to SRAM (1990s) to TCAM (2000s) Vendors are now moving back to SRAM and parallel banks of DRAM due to power/heat 38

39 Fixed-Length Matching Algorithms

40 Ethernet Switch Lookup frame DA in forwarding table. If known, forward to correct port. If unknown, broadcast to all ports. Learn SA of incoming frame. Forward frame to outgoing interface. Transmit frame onto link. How to do this quickly? Need to determine next hop quickly Would like to do so without reducing line rates 40

41 Why Ethernet needs wire-speed forwarding Scenario: Bridge has a 500 packet buffer Link rate: 1 packet/ms Lookup rate: 0.5 packet/ms A sends 1000 packets to B A sends 10 packets to C What happens to C s packets? What would happen if this Bridge was a Router? Need wirespeed forwarding A C Bridge A B C 41

42 Inside a switch Ethernet chip Ethernet 1 Processor Lookup engine Ethernet 2 Packet/lookup memory Ethernet chip Packet received from upper Ethernet Ethernet chip extracts source address S, stored in shared memory, in receive queue Ethernet chips set in promiscuous mode Extracts destination address D, given to lookup engine 42

43 F0:4D:A2:3A:31:9C Eth 1 00:21:9B:77:F2:65 Eth 2 8B:01:54:A2:78:9C Eth 1 00:0C:F1:56:98:AD Eth 1 00:B0:D0:86:BB:F7 Eth 2 00:A0:C9:14:C8:29 Eth 2 90:03:BA:26:01:B0 Eth 2 00:0C:29:A8:D0:FA Eth 1 00:10:7F:00:0D:B7 Lookup Processor Eth 2 engine Inside a switch Ethernet chip Packet/lookup memory Ethernet 1 Ethernet 2 Ethernet chip Lookup engine looks up D in database stored in memory If destination is on upper Ethernet: set packet buffer pointer to free queue If destination is on lower Ethernet: set packet buffer pointer to transmit queue of the lower Ethernet How to do the lookup quickly? 43

44 Problem overview 90:03:BA:26:01:B0 F0:4D:A2:3A:31:9C Eth 1 00:21:9B:77:F2:65 Eth 2 8B:01:54:A2:78:9C Eth 1 00:0C:F1:56:98:AD Eth 1 00:B0:D0:86:BB:F7 Eth 2 Eth 2 00:A0:C9:14:C8:29 Eth 2 90:03:BA:26:01:B0 Eth 2 00:0C:29:A8:D0:FA Eth 1 00:10:7F:00:0D:B7 Eth 2 Goal: given address, look up outbound interface Do this quickly (few instructions/low circuit complexity) Linear search too low 44

45 Idea #1: binary search 90:03:BA:26:01:B0 F0:4D:A2:3A:31:9C 00:0C:F1:56:98:AD Eth 1 00:10:7F:00:0D:B7 00:21:9B:77:F2:65 Eth 2 8B:01:54:A2:78:9C 00:21:9B:77:F2:65 Eth 21 00:B0:D0:86:BB:F7 00:0C:F1:56:98:AD Eth 12 00:B0:D0:86:BB:F7 00:A0:C9:14:C8:29 Eth 2 Eth 2 00:0C:29:A8:D0:FA 00:A0:C9:14:C8:29 Eth 21 8B:01:54:A2:78:9C 90:03:BA:26:01:B0 Eth 21 00:0C:29:A8:D0:FA 90:03:BA:26:01:B0 Eth 21 F0:4D:A2:3A:31:9C 00:10:7F:00:0D:B7 Eth 21 Put all destinations in a list, sort them, binary search Problem: logarithmic time 45

46 8B:01:54:A2:78:9C F0:4D:A2:3A:31:9C 00:10:7F:00:0D:B7 Improvement: Parallel Binary search 00:A0:C9:14:C8:29 00:21:9B:77:F2:65 8B:01:54:A2:78:9C 00:10:7F:00:0D:B7 00:B0:D0:86:BB:F7 00:0C:29:A8:D0:FA 90:03:BA:26:01:B0 00:0C:F1:56:98:AD 00:10:7F:00:0D:B7 00:21:9B:77:F2:65 00:B0:D0:86:BB:F7 00:A0:C9:14:C8:29 00:0C:29:A8:D0:FA 8B:01:54:A2:78:9C 90:03:BA:26:01:B0 F0:4D:A2:3A:31:9C Packets still have O(log n) delay, but can process O(log n) packets in parallel O(1) 46

47 8B:01:54:A2:78:9C F0:4D:A2:3A:31:9C 00:10:7F:00:0D:B7 Improvement: Parallel Binary search 00:A0:C9:14:C8:29 00:21:9B:77:F2:65 8B:01:54:A2:78:9C 00:10:7F:00:0D:B7 00:B0:D0:86:BB:F7 00:0C:29:A8:D0:FA 90:03:BA:26:01:B0 00:0C:F1:56:98:AD 00:10:7F:00:0D:B7 00:21:9B:77:F2:65 00:B0:D0:86:BB:F7 00:A0:C9:14:C8:29 00:0C:29:A8:D0:FA 8B:01:54:A2:78:9C 90:03:BA:26:01:B0 F0:4D:A2:3A:31:9C Packets still have O(log n) delay, but can process O(log n) packets in parallel O(1) 47

48 Idea #2: hashing keys F0:4D:A2:3A:31:9C 00:21:9B:77:F2:65 8B:01:54:A2:78:9C 00:0C:F1:56:98:AD 00:B0:D0:86:BB:F7 00:A0:C9:14:C8:29 90:03:BA:26:01:B0 00:0C:29:A8:D0:FA 00:10:7F:00:0D:B7 function hashes bins 8B:01:54:A2:78:9C F0:4D:A2:3A:31:9C 00:0C:29:A8:D0:FA 90:03:BA:26:01:B0 00:10:7F:00:0D:B7 00:21:9B:77:F2:65 90:03:BA:26:01:B0 00:B0:D0:86:BB:F7 00:A0:C9:14:C8:29 00:0C:F1:56:98:AD Hash key=destination, value=interface pairs Lookup in O(1) with hash Problem: chaining (not really O(1))

49 Improvement: Perfect hashing keys F0:4D:A2:3A:31:9C 00:21:9B:77:F2:65 8B:01:54:A2:78:9C 00:0C:F1:56:98:AD 00:B0:D0:86:BB:F7 00:A0:C9:14:C8:29 parameter hashes bins 8B:01:54:A2:78:9C F0:4D:A2:3A:31:9C 00:0C:29:A8:D0:FA 90:03:BA:26:01:B0 00:10:7F:00:0D:B :03:BA:26:01:B0 90:03:BA:26:01:B0 00:B0:D0:86:BB:F7 00:0C:29:A8:D0:FA 00:A0:C9:14:C8: :0C:F1:56:98:AD 00:10:7F:00:0D:B7 Perfect hashing: find a hash function that maps perfectly with no collisions Gigaswitch approach Use a parameterized hash function Precompute hash function to bound worst case number of collisions :21:9B:77:F2:65 49

50 Variable-Length Matching Algorithms

51 Longest Prefix Match Not just one entry that matches a destination /24 and /16 Which one to use for ? By convention, Internet routers choose the longest (most-specific) match Need variable prefix match algorithms Several methods 51

52 Method 1: Trie Sample Database P1=10* P2=111* P3=11001* P4=1* P5=0* P6=1000* P7=100000* P8= * Trie Tree of (left ptr, right ptr) data structures May be stored in SRAM/DRAM Lookup performed by traversing sequence of pointers Lookup time O(log N) where N is # prefixes 52

53 Improvement 1: Skip Counts and Path Compression Removing one-way branches ensures # of trie nodes is at most twice # of prefixes Using a skip count requires exact match at end and backtracking on failure path compression is simpler Main idea behind Patricia Tries 53

54 Improvement 2: Multi-way tree 16-ary Search Trie 0000, ptr 1111, ptr 0000, , ptr 0000, , ptr Doing multiple comparisons per cycle accelerates lookup Can do this for free to the width of CPU word (modern CPUs process multiple bits per cycle) But increases wasted space (more unused pointers) 54

55 Improvement 2: Multi-way tree E w = D L N D + D i (( 1 D i 1 ) N ( 1 D 1 i ) N ) D L L 1 i = 1 L 1 E n = 1 + D L N D + D i D i 1 ( 1 D i 1 ) N D L i = 1 Where: D = Degree of tree L = Number of layers/references N = Number of entries in table E n = Expected number of nodes E w = Expected amount of wasted memory Degree of # Mem # Nodes Total Memory Fraction Tree References (x10 6 ) (Mbytes) Wasted (%) Table produced from 2 15 randomly generated 48-bit addresses 55

56 Method 2: Lookups in Hardware Num mber Prefix length Observation: most prefixes are /24 or shorter So, just store a big 2^24 table with next hop for each prefix Nonexistant prefixes just leave that entry empty 56

57 Method 2: Lookups in Hardware Prefixes up to 24-bits 2 24 = 16M entries Next Hop Next Hop

58 Method 2: Lookups in Hardware Prefixes up to 24-bits Next Hop Pointer 8 offset base Prefixes above 24-bits Next Hop Next Hop 58

59 Method 2: Lookups in Hardware Advantages Very fast lookups 20 Mpps with 50ns DRAM Easy to implement in hardware Disadvantages Large memory required Performance depends on prefix length distribution 59

60 Method 3: Ternary CAMs Associative Memory Value Mask Next hop Lookup Value IF IF IF 4 Next Hop IF IF 2 Selector Content Addressable Hardware searches entire memory to find supplied value Similar interface to hash table Ternary : memory can be in three states True, false, don t care Hardware to treat don t care as wildcard match

61 Classification Algorithms

62 Providing Value-Added Services Differentiated services Regard traffic from AS#33 as `platinum-grade Access Control Lists Deny udp host eq snmp Committed Access Rate Rate limit WWW traffic from sub-interface#739 to 10Mbps Policy-based Routing Route all voice traffic through the ATM network Peering Arrangements Restrict the total amount of traffic of precedence 7 from MAC address N to 20 Mbps between 10 am and 5pm Accounting and Billing Generate hourly reports of traffic from MAC address M Need to address the Flow Classification problem 62

63 Flow Classification H E A D E R Incoming Packet Forwarding Engine Flow Classification Policy Database Predicate Action Flow Index 63

64 A Packet Classifier Field 1 Field 2 Field k Action Rule / /32 Rule / /16 Udp A1 Tcp A2 Rule N / /32 Any An Given a classifier, find the action associated with the highest priority rule (here, the lowest numbered rule) matching an incoming packet. 64

65 Geometric Interpretation in 2D Field #1 Field #2 Data R7 R6 P2 P1 Field #2 R3 e.g. (144.24/16, 64/24) e.g. ( , *) R5 R4 R2 R1 Field #1 65

66 Approach #1: Linear search Build linked list of all classification rules Possibly sorted in order of decreasing priorities For each arriving packet, evaluate each rule until match is found Pros: simple and storage efficient Cons: classification time grows linearly with number of rules Variant: build FSM of rules (pattern matching) 66

67 Approach #2: Ternary CAMs Similar to TCAM use in prefix matching Need wider than 32-bit array, typically bits Ranges expressed as don t cares below a particular bit Done for each field Pros: O(1) lookup time, simple Cons: heat, power, cost, etc. Power for a TCAM row increases proportionally to 67 its width

68 Approach #3: Hierarchical trie F2 F1 Recursively build d-dimensional radix trie Trie for first field, attach sub-tries to trie s leaves for subfield, repeat For N-bit rules, d dimensions, W-bit wide dimensions: Storage complexity: O(NdW) Lookup complexity: O(W^d) 68

69 Approach #4: Set-pruning tries F2 F1 Push rules down the hierarchical trie Eliminates need for recursive lookups For N-bit rules, d dimensions, W-bit wide dimensions: Storage complexity: O(dWN^d) Lookup complexity: O(dW) 69

70 Approach #5: Crossproducting Compute separate 1-dimensional range lookups for each dimension For N-bit rules, d dimensions, W-bit wide dimensions: Storage complexity: O(N^d) Lookup complexity: O(dW) 70

71 Other proposed schemes 71

Lecture 4: Device Security and Router Mechanisms. CS 598: Network Security Matthew Caesar February 7, 2011

Lecture 4: Device Security and Router Mechanisms. CS 598: Network Security Matthew Caesar February 7, 2011 Lecture 4: Device Security and Router Mechanisms CS 598: Network Security Matthew Caesar February 7, 2011 1 This lecture Network devices Their internals and how they work Network connections How to plug

More information

Cycle 3: Equipment and Devices. CS 436: Spring 2018 Matthew Caesar

Cycle 3: Equipment and Devices. CS 436: Spring 2018 Matthew Caesar Cycle 3: Equipment and Devices CS 436: Spring 2018 Matthew Caesar http://www.cs.illinois.edu/~caesar/cs436 From devices to a network A network has goals Connect enterprise users to Internet Filter bad

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

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

Generic Architecture. EECS 122: Introduction to Computer Networks Switch and Router Architectures. Shared Memory (1 st Generation) Today s Lecture

Generic Architecture. EECS 122: Introduction to Computer Networks Switch and Router Architectures. Shared Memory (1 st Generation) Today s Lecture Generic Architecture EECS : Introduction to Computer Networks Switch and Router Architectures Computer Science Division Department of Electrical Engineering and Computer Sciences University of California,

More information

Network layer (addendum) Slides adapted from material by Nick McKeown and Kevin Lai

Network layer (addendum) Slides adapted from material by Nick McKeown and Kevin Lai Network layer (addendum) Slides adapted from material by Nick McKeown and Kevin Lai Routers.. A router consists - A set of input interfaces at which packets arrive - A set of output interfaces from which

More information

EE 122: Router Design

EE 122: Router Design Routers EE 22: Router Design Kevin Lai September 25, 2002.. A router consists - A set of input interfaces at which packets arrive - A set of output interfaces from which packets depart - Some form of interconnect

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

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

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

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

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

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

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

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

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

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

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

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

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

Sample Routers and Switches. High Capacity Router Cisco CRS-1 up to 46 Tb/s thruput. Routers in a Network. Router Design

Sample Routers and Switches. High Capacity Router Cisco CRS-1 up to 46 Tb/s thruput. Routers in a Network. Router Design outer Design outers in a Network Overview of Generic outer Architecture Input-d Switches (outers) IP Look-up Algorithms Packet Classification Algorithms Sample outers and Switches Cisco 46 outer up to

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

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

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 11 CMPE 150/L : Introduction to Computer Networks Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 11 1 Midterm exam Midterm this Thursday Close book but one-side 8.5"x11" note is allowed (must

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

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

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

Switching. An Engineering Approach to Computer Networking

Switching. An Engineering Approach to Computer Networking Switching An Engineering Approach to Computer Networking What is it all about? How do we move traffic from one part of the network to another? Connect end-systems to switches, and switches to each other

More information

Introduction to Routers and LAN Switches

Introduction to Routers and LAN Switches Introduction to Routers and LAN Switches Session 3048_05_2001_c1 2001, Cisco Systems, Inc. All rights reserved. 3 Prerequisites OSI Model Networking Fundamentals 3048_05_2001_c1 2001, Cisco Systems, Inc.

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

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

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

Lecture 17: Router Design

Lecture 17: Router Design Lecture 17: Router Design CSE 123: Computer Networks Alex C. Snoeren Eample courtesy Mike Freedman Lecture 17 Overview Finish up BGP relationships Router internals Buffering Scheduling 2 Peer-to-Peer Relationship

More information

Homework 1 Solutions:

Homework 1 Solutions: Homework 1 Solutions: If we expand the square in the statistic, we get three terms that have to be summed for each i: (ExpectedFrequency[i]), (2ObservedFrequency[i]) and (ObservedFrequency[i])2 / Expected

More information

100 GBE AND BEYOND. Diagram courtesy of the CFP MSA Brocade Communications Systems, Inc. v /11/21

100 GBE AND BEYOND. Diagram courtesy of the CFP MSA Brocade Communications Systems, Inc. v /11/21 100 GBE AND BEYOND 2011 Brocade Communications Systems, Inc. Diagram courtesy of the CFP MSA. v1.4 2011/11/21 Current State of the Industry 10 Electrical Fundamental 1 st generation technology constraints

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

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

CSE398: Network Systems Design

CSE398: Network Systems Design CSE398: Network Systems Design Instructor: Dr. Liang Cheng Department of Computer Science and Engineering P.C. Rossin College of Engineering & Applied Science Lehigh University March 14, 2005 Outline Classification

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

ECE697AA Lecture 21. Packet Classification

ECE697AA Lecture 21. Packet Classification ECE697AA Lecture 21 Routers: Flow Classification Algorithms Tilman Wolf Department of Electrical and Computer Engineering 11/20/08 Packet Classification What is packet classification? Categorization of

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

CSE 3214: Computer Network Protocols and Applications Network Layer

CSE 3214: Computer Network Protocols and Applications Network Layer CSE 314: Computer Network Protocols and Applications Network Layer Dr. Peter Lian, Professor Department of Computer Science and Engineering York University Email: peterlian@cse.yorku.ca Office: 101C Lassonde

More information

Lecture 11: Packet forwarding

Lecture 11: Packet forwarding Lecture 11: Packet forwarding Anirudh Sivaraman 2017/10/23 This week we ll talk about the data plane. Recall that the routing layer broadly consists of two parts: (1) the control plane that computes routes

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

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

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

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

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

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

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

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

ECE 697J Advanced Topics in Computer Networks

ECE 697J Advanced Topics in Computer Networks ECE 697J Advanced Topics in Computer Networks Switching Fabrics 10/02/03 Tilman Wolf 1 Router Data Path Last class: Single CPU is not fast enough for processing packets Multiple advanced processors in

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

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

How to Choose the Best Router Switching Path for

How to Choose the Best Router Switching Path for How to Choose the Best Router Switching Path for Your Network Contents Introduction Process Switching Interrupt Context Switching Fast Switching Optimum Switching Cisco Express Forwarding Which Switching

More information

Network Layer: outline

Network Layer: outline Network Layer: outline 1 introduction 2 virtual circuit and datagram networks 3 what s inside a router 4 IP: Internet Protocol datagram format IPv4 addressing ICMP IPv6 5 routing algorithms link state

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

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

How to Choose the Best Router Switching Path for Your Network

How to Choose the Best Router Switching Path for Your Network How to Choose the Best Router Switching Path for Your Network Document ID: 13706 Contents Introduction Process Switching Interrupt Context Switching Fast Switching Optimum Switching Cisco Express Forwarding

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

Computer Networks CS 552

Computer Networks CS 552 Computer Networks CS 552 Routers Badri Nath Rutgers University badri@cs.rutgers.edu. 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

More information

LS Example 5 3 C 5 A 1 D

LS Example 5 3 C 5 A 1 D Lecture 10 LS Example 5 2 B 3 C 5 1 A 1 D 2 3 1 1 E 2 F G Itrn M B Path C Path D Path E Path F Path G Path 1 {A} 2 A-B 5 A-C 1 A-D Inf. Inf. 1 A-G 2 {A,D} 2 A-B 4 A-D-C 1 A-D 2 A-D-E Inf. 1 A-G 3 {A,D,G}

More information

Internetworking Part 1

Internetworking Part 1 CMPE 344 Computer Networks Spring 2012 Internetworking Part 1 Reading: Peterson and Davie, 3.1 22/03/2012 1 Not all networks are directly connected Limit to how many hosts can be attached Point-to-point:

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

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

Networking hierarchy Internet architecture

Networking hierarchy Internet architecture Networking hierarchy Internet architecture Physical layer lasers, fibers, RF, antennas, modulation, demodulation Datalink layer Ethernet, SONET Network layer IP Transport layer TCP, UDP LANs (ACES building)

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

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

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

Lecture 17: Router Design

Lecture 17: Router Design Lecture 17: Router Design CSE 123: Computer Networks Alex C. Snoeren HW 3 due WEDNESDAY Eample courtesy Mike Freedman Lecture 17 Overview BGP relationships Router internals Buffering Scheduling 2 Business

More information

Ethernet Hub. Campus Network Design. Hubs. Sending and receiving Ethernet frames via a hub

Ethernet Hub. Campus Network Design. Hubs. Sending and receiving Ethernet frames via a hub Campus Network Design Thana Hongsuwan Ethernet Hub 2003, Cisco Systems, Inc. All rights reserved. 1-1 2003, Cisco Systems, Inc. All rights reserved. BCMSN v2.0 1-2 Sending and receiving Ethernet frames

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

Chapter 1. Introduction

Chapter 1. Introduction Chapter 1 Introduction In a packet-switched network, packets are buffered when they cannot be processed or transmitted at the rate they arrive. There are three main reasons that a router, with generic

More information

Cisco Series Internet Router Architecture: Packet Switching

Cisco Series Internet Router Architecture: Packet Switching Cisco 12000 Series Internet Router Architecture: Packet Switching Document ID: 47320 Contents Introduction Prerequisites Requirements Components Used Conventions Background Information Packet Switching:

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

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

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

Lecture 16: Network Layer Overview, Internet Protocol

Lecture 16: Network Layer Overview, Internet Protocol Lecture 16: Network Layer Overview, Internet Protocol COMP 332, Spring 2018 Victoria Manfredi Acknowledgements: materials adapted from Computer Networking: A Top Down Approach 7 th edition: 1996-2016,

More information

CMSC 332 Computer Networks Network Layer

CMSC 332 Computer Networks Network Layer CMSC 332 Computer Networks Network Layer Professor Szajda CMSC 332: Computer Networks Where in the Stack... CMSC 332: Computer Network 2 Where in the Stack... Application CMSC 332: Computer Network 2 Where

More information

CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca

CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Administrivia Homework I out later today, due next Thursday Today: Link Layer (cont.)

More information

A B C D E Total / 24 / 23 / 12 / 18 / 3 / 80

A B C D E Total / 24 / 23 / 12 / 18 / 3 / 80 Carnegie Mellon Computer Science Department. 15-441 Spring 2010 Midterm Name: Andrew ID: INSTRUCTIONS: There are 10 pages (numbered at the bottom). Make sure you have all of them. Please write your name

More information

A Hybrid Approach to CAM-Based Longest Prefix Matching for IP Route Lookup

A Hybrid Approach to CAM-Based Longest Prefix Matching for IP Route Lookup A Hybrid Approach to CAM-Based Longest Prefix Matching for IP Route Lookup Yan Sun and Min Sik Kim School of Electrical Engineering and Computer Science Washington State University Pullman, Washington

More information

Cisco IOS Switching Paths Overview

Cisco IOS Switching Paths Overview This chapter describes switching paths that can be configured on Cisco IOS devices. It contains the following sections: Basic Router Platform Architecture and Processes Basic Switching Paths Features That

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

Computer Networks LECTURE 10 ICMP, SNMP, Inside a Router, Link Layer Protocols. Assignments INTERNET CONTROL MESSAGE PROTOCOL

Computer Networks LECTURE 10 ICMP, SNMP, Inside a Router, Link Layer Protocols. Assignments INTERNET CONTROL MESSAGE PROTOCOL Computer Networks LECTURE 10 ICMP, SNMP, Inside a Router, Link Layer Protocols Sandhya Dwarkadas Department of Computer Science University of Rochester Assignments Lab 3: IP DUE Friday, October 7 th Assignment

More information

Recursive Flow Classification: An Algorithm for Packet Classification on Multiple Fields

Recursive Flow Classification: An Algorithm for Packet Classification on Multiple Fields 5 CHAPTER 4 Recursive Flow Classification: An Algorithm for Packet Classification on Multiple Fields Introduction Chapters 2 and 3 described algorithms for routing lookups. In this chapter and the next

More information

cs144 Midterm Review Fall 2010

cs144 Midterm Review Fall 2010 cs144 Midterm Review Fall 2010 Administrivia Lab 3 in flight. Due: Thursday, Oct 28 Midterm is this Thursday, Oct 21 (during class) Remember Grading Policy: - Exam grade = max (final, (final + midterm)/2)

More information

internet technologies and standards

internet technologies and standards Institute of Telecommunications Warsaw University of Technology 2015 internet technologies and standards Piotr Gajowniczek Andrzej Bąk Michał Jarociński Network Layer The majority of slides presented in

More information

TOC: Switching & Forwarding

TOC: Switching & Forwarding Walrand Lecture TO: Switching & Forwarding Lecture Switching & Forwarding EES University of alifornia Berkeley Why? Switching Techniques Switch haracteristics Switch Examples Switch rchitectures Summary

More information

CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca

CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Jannotti Today: Link Layer (cont.) Framing Reliability Error correction Sliding window Medium

More information

CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca

CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca Based partly on lecture notes by David Mazières, Phil Levis, John Janno< Administrivia Homework I out later today, due next Thursday, Sep 25th Today: Link Layer

More information

Network Performance: Queuing

Network Performance: Queuing Network Performance: Queuing EE 122: Intro to Communication Networks Fall 2007 (WF 4-5:30 in Cory 277) Vern Paxson TAs: Lisa Fowler, Daniel Killebrew & Jorge Ortiz http://inst.eecs.berkeley.edu/~ee122/

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

CS 5114 Network Programming Languages Data Plane. Nate Foster Cornell University Spring 2013

CS 5114 Network Programming Languages Data Plane. Nate Foster Cornell University Spring 2013 CS 5114 Network Programming Languages Data Plane http://www.flickr.com/photos/rofi/2097239111/ Nate Foster Cornell University Spring 2013 Based on lecture notes by Jennifer Rexford and Michael Freedman

More information

ECE 158A: Lecture 7. Fall 2015

ECE 158A: Lecture 7. Fall 2015 ECE 158A: Lecture 7 Fall 2015 Outline We have discussed IP shortest path routing Now we have a closer look at the IP addressing mechanism We are still at the networking layer, we will examine: IP Headers

More information

Where we are in the Course

Where we are in the Course Network Layer Where we are in the Course Moving on up to the Network Layer! Application Transport Network Link Physical CSE 461 University of Washington 2 Network Layer How to connect different link layer

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

Communications Software. CSE 123b. CSE 123b. Spring Lecture 2: Internet architecture and. Internetworking. Stefan Savage

Communications Software. CSE 123b. CSE 123b. Spring Lecture 2: Internet architecture and. Internetworking. Stefan Savage CSE 123b CSE 123b Communications Software Spring 2003 Lecture 2: Internet architecture and Internetworking Stefan Savage Some history 1968: DARPANET (precursor to Internet) Bob Taylor, Larry Roberts create

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