COMP680E by M. Hamdi 1 Course Exam: Review April 17 (in-Class)

Slides:



Advertisements
Similar presentations
1 Outline  Why Maximal and not Maximum  Definition and properties of Maximal Match  Parallel Iterative Matching (PIM)  iSLIP  Wavefront Arbiter (WFA)
Advertisements

1 CNPA B Nasser S. Abouzakhar Queuing Disciplines Week 8 – Lecture 2 16 th November, 2009.
CSIT560 Internet Infrastructure: Switches and Routers Active Queue Management Presented By: Gary Po, Henry Hui and Kenny Chong.
Courtesy: Nick McKeown, Stanford 1 Intro to Quality of Service Tahir Azim.
CS 268: Lecture 8 Router Support for Congestion Control Ion Stoica Computer Science Division Department of Electrical Engineering and Computer Sciences.
CS 4700 / CS 5700 Network Fundamentals Lecture 12: Router-Aided Congestion Control (Drop it like it’s hot) Revised 3/18/13.
Analysis and Simulation of a Fair Queueing Algorithm A. Demers, S. keshav, and S. Shenker Wireless/Mobile Network Lab 임상택.
COMP680E by M. Hamdi 1 Can we make these scheduling algorithms simpler? Using a Simpler Architecture.
Router Architecture : Building high-performance routers Ian Pratt
QoS in The Internet: Scheduling Algorithms and Active Queue Management
Nick McKeown CS244 Lecture 6 Packet Switches. What you said The very premise of the paper was a bit of an eye- opener for me, for previously I had never.
Routers with a Single Stage of Buffering Sundar Iyer, Rui Zhang, Nick McKeown High Performance Networking Group, Stanford University,
Algorithm Orals Algorithm Qualifying Examination Orals Achieving 100% Throughput in IQ/CIOQ Switches using Maximum Size and Maximal Matching Algorithms.
UCB Switches Jean Walrand U.C. Berkeley
April 10, HOL Blocking analysis based on: Broadband Integrated Networks by Mischa Schwartz.
COMP680E by M. Hamdi 1 Traffic Managers: Active Queue Management Algorithms.
1 Comnet 2006 Communication Networks Recitation 5 Input Queuing Scheduling & Combined Switches.
EE689 Lecture 5 Review of last lecture More on HPF RED.
CSIT560 by M. Hamdi 1 Course Exam: Review April 18/19 (in-Class)
CSIT560 by M. Hamdi 1 QoS Algorithms. CSIT560 by M. Hamdi 2 Principles for QOS Guarantees Consider a phone application at 1Mbps and an FTP application.
CS 268: Lecture 8 (Router Support for Congestion Control) Ion Stoica February 19, 2002.
CSIT560 By M. Hamdi 1 Packet Scheduling/Arbitration in Virtual Output Queues and Others.
Computer Networking Lecture 17 – Queue Management As usual: Thanks to Srini Seshan and Dave Anderson.
CIST560 by M. Hamdi 1 Packet Scheduling/Arbitration in Virtual Output Queues: Maximal Matching Algorithms (Part II)
Lecture 4#-1 Scheduling: Buffer Management. Lecture 4#-2 The setting.
1 Achieving 100% throughput Where we are in the course… 1. Switch model 2. Uniform traffic  Technique: Uniform schedule (easy) 3. Non-uniform traffic,
1 Netcomm 2005 Communication Networks Recitation 4.
CSIT560 by M. Hamdi 1 Packet Scheduling/Arbitration in Virtual Output Queues and Others.
1 Netcomm 2005 Communication Networks Recitation 5.
048866: Packet Switch Architectures Dr. Isaac Keslassy Electrical Engineering, Technion Maximal.
CS144, Stanford University Error in Q3-7. CS144, Stanford University Using longest prefix matching, the IP address will match which entry? a /8.
Pipelined Two Step Iterative Matching Algorithms for CIOQ Crossbar Switches Deng Pan and Yuanyuan Yang State University of New York, Stony Brook.
Localized Asynchronous Packet Scheduling for Buffered Crossbar Switches Deng Pan and Yuanyuan Yang State University of New York Stony Brook.
1 IP routers with memory that runs slower than the line rate Nick McKeown Assistant Professor of Electrical Engineering and Computer Science, Stanford.
Load Balanced Birkhoff-von Neumann Switches
CS640: Introduction to Computer Networks Aditya Akella Lecture 20 - Queuing and Basics of QoS.
CS 552 Computer Networks IP forwarding Fall 2005 Rich Martin (Slides from D. Culler and N. McKeown)
High Speed Stable Packet Switches Shivendra S. Panwar Joint work with: Yihan Li, Yanming Shen and H. Jonathan Chao New York State Center for Advanced Technology.
Enabling Class of Service for CIOQ Switches with Maximal Weighted Algorithms Thursday, October 08, 2015 Feng Wang Siu Hong Yuen.
The Router SC 504 Project Gardar Hauksson Allen Liu.
Routers. These high-end, carrier-grade 7600 models process up to 30 million packets per second (pps).
March 29 Scheduling ?. What is Packet Scheduling? Decide when and what packet to send on output link 1 2 Scheduler flow 1 flow 2 flow n Buffer management.
ISLIP Switch Scheduler Ali Mohammad Zareh Bidoki April 2002.
Packet Forwarding. A router has several input/output lines. From an input line, it receives a packet. It will check the header of the packet to determine.
CSE 561 – Congestion Control with Network Support David Wetherall Spring 2000.
Packet Scheduling and Buffer Management Switches S.Keshav: “ An Engineering Approach to Networking”
1 Performance Guarantees for Internet Routers ISL Affiliates Meeting April 4 th 2002 Nick McKeown Professor of Electrical Engineering and Computer Science,
Crossbar Switch Project
Stress Resistant Scheduling Algorithms for CIOQ Switches Prashanth Pappu Applied Research Laboratory Washington University in St Louis “Stress Resistant.
CS640: Introduction to Computer Networks Aditya Akella Lecture 20 - Queuing and Basics of QoS.
Nick McKeown Spring 2012 Lecture 2,3 Output Queueing EE384x Packet Switch Architectures.
Belgrade University Aleksandra Smiljanić: High-Capacity Switching Switches with Input Buffers (Cisco)
048866: Packet Switch Architectures
CSIT560 By M. Hamdi 1 Packet Arbitration in VoQ switches and Others and QoS.
Buffered Crossbars With Performance Guarantees Shang-Tse (Da) Chuang Cisco Systems EE384Y Thursday, April 27, 2006.
1 Fair Queuing Hamed Khanmirza Principles of Network University of Tehran.
Improving Matching algorithms for IQ switches Abhishek Das John J Kim.
Input buffered switches (1)
Providing QoS in IP Networks
Tel Hai Academic College Department of Computer Science Prof. Reuven Aviv Markov Models for data flow In Computer Networks Resource: Fayez Gebali, Analysis.
04/02/08 1 Packet Scheduling IT610 Prof. A. Sahoo KReSIT.
scheduling for local-area networks”
Topics discussed in this section:
Buffer Management in a Switch
Packet Forwarding.
EE 122: Router Support for Congestion Control: RED and Fair Queueing
Packet Scheduling/Arbitration in Virtual Output Queues and Others
Outline Why Maximal and not Maximum
EE384x: Packet Switch Architectures
EE 122: Lecture 7 Ion Stoica September 18, 2001.
Presentation transcript:

COMP680E by M. Hamdi 1 Course Exam: Review April 17 (in-Class)

COMP680E by M. Hamdi 2 Exam Format 5 questions –One general question (True or False) – or short questions. –4 Calculation-type questions Targeted towards topics that are extremely important in the area of networkingTargeted towards topics that are extremely important in the area of networking

COMP680E by M. Hamdi 3 Question 2: Memory Bandwidth Limitations Understand the memory bandwidth requirement as a function of the queue placement Understand the relationship between queue placement and switch fabric speedup –Input-Queued Switches –Output-Queued Switches –Shared-Queued Switches –Combined I/O Queued Switches Is a given architecture feasible for given configuration?

COMP680E by M. Hamdi 4 Question 3: Memory Bandwidth Limitations Memory-BW (IQ) = 2 R bits/sec Memory-BW (OQ) = (N + 1)xR bits/sec Memory-BW (SQ) = 2NR Bits/sec Memory-BW (CIOQ) = (S + 1)x R bits/sec Access time per packet = Packet size / Memory-BW

COMP680E by M. Hamdi 5 Example: A Comparison Memory speeds for 32x32 switch Cell size = 64 bytes Line RateMemory BW Access Time Per cell Memory BW Access Time Shared-Memory Input-queued 100 Mb/s6.4 Gb/s80 ns200 Mb/s2.56  s 1 Gb/s64 Gb/s8 ns2 Gb/s256 ns 2.5 Gb/s160 Gb/s3.2 ns5 Gb/s102.4 ns 10 Gb/s640 Gb/s 0.8 ns 20 Gb/s25.6 ns

COMP680E by M. Hamdi 6 Question 3: Example Give you the access time using SRAM and DRAM Give you a line rate Give you an architecture and size of switch (e.g., OQ or CIOQ switch of size 128x128) Give you size of packets Find the memory bandwidth required, and the access time per packet Can this be feasible using current technology

COMP680E by M. Hamdi 7 Question 4: VOQ Switch Scheduling/Arbitration The most practical scheduling algorithms are maximal matching algorithms – try to approximate maximum size matching These algorithms are based on Request-Grant- Accept scheme The Request-Grant-Accept scheme are based on pointer positions at the input and output arbiters Understand how iSLIP, FIRM, and RRM

COMP680E by M. Hamdi 8 RRM Maximum Size Matching Algorithm: Performance and Properties Round Robin Matching (RRM) is easier to implement that PIM (in terms of designing the I/O arbiters). The pointers of the arbiters move in straightforward way It iterates the following steps until no more requests can be accepted (or for a given number of iterations): Request. Each input sends a request to every output for which it has a queued cell. Grant. If an output receives any requests, it chooses the one that appears next in a fixed, round-robin schedule starting from the highest priority element. The output notifies each input whether or not its request was granted. The pointer g i to the highest priority element of the round-robin schedule is incremented (modulo N) to one location beyond the granted input. If no request is received, the pointer stays unchanged.

COMP680E by M. Hamdi 9 RRM Maximum Size Matching Algorithm: Performance and Properties Accept. If an input receives a grant, it accepts the one that appears next in a fixed, round-robin schedule starting from the highest priority element. The pointer a i to the highest priority element of the round-robin schedule is incremented (modulo N) to one location beyond the accepted output. If no grant is received, the pointer stays unchanged.

COMP680E by M. Hamdi 10 RRM Maximal Matching Algorithm (1) Step 1: Request

COMP680E by M. Hamdi 11 RRM Maximal Matching Algorithm (2) Step 2: Grant

COMP680E by M. Hamdi 12 RRM Maximal Matching Algorithm (2) Step 2: Grant

COMP680E by M. Hamdi 13 RRM Maximal Matching Algorithm (2) Step 2: Grant

COMP680E by M. Hamdi 14 RRM Maximal Matching Algorithm (2) Step 2: Grant

COMP680E by M. Hamdi 15 RRM Maximal Matching Algorithm (3) Step 3: Accept

COMP680E by M. Hamdi 16 iSLIP Maximum Size Matching Algorithm: Performance and Properties It is a scheduler used in most VOQ switches (e.g., Cisco). It is exactly like RRM algorithm with the following change: Grant. If an output receives any requests, it chooses the one that appears next in a fixed, round-robin schedule starting from the highest priority element. The output notifies each input whether or not its request was granted. The pointer g i to the highest priority element of the round-robin schedule is incremented (modulo N) to one location beyond the granted input if and only if the grant is accepted in (Accept phase).

COMP680E by M. Hamdi Step 2: Grant Step 3: Accept iSlip: 1 st Iteration Step 1: Request Original pointer Selected one Updated pointer iSLIP Maximum Size Matching Algorithm

COMP680E by M. Hamdi Step 2: Grant Step 3: Accept iSlip: 2 nd Iteration Step 1: Request No change Original pointer Selected one Updated pointer iSLIP Maximum Size Matching Algorithm

COMP680E by M. Hamdi 19 Simple Iterative Algorithms: iSlip Step 1: Request

COMP680E by M. Hamdi 20 Simple Iterative Algorithms: iSlip Step 2: Grant

COMP680E by M. Hamdi Step 2: Grant Simple Iterative Algorithms: iSlip

COMP680E by M. Hamdi Step 3: Accept Simple Iterative Algorithms: iSlip

COMP680E by M. Hamdi Step 3: Accept Simple Iterative Algorithms: iSlip

COMP680E by M. Hamdi 24 Simple Iterative Algorithms: iSlip Step 3: Accept

COMP680E by M. Hamdi 25 Simple Iterative Algorithms: iSlip Step 3: Accept

COMP680E by M. Hamdi 26 Simple Iterative Algorithms: iSlip Step 3: Accept

COMP680E by M. Hamdi 27 FIRM Maximum Size Matching Algorithm: Performance and Properties It is exactly like iSLIP with a very small – yet significant modification. Grant (outputs): If an unmatched output receives a request, it grants the one that appears next in a fixed, round-robin schedule starting from the highest priority element. The output notifies each input whether or not its request is granted. The pointer to the highest priority element of the round-robin schedule is incremented beyond the granted input. If input does not accept the pointer is set at the granted one.

COMP680E by M. Hamdi Step 3: Accept Simple Iterative Algorithms: FIRM

COMP680E by M. Hamdi 29 Differences between RRM, iSlip & FIRM RRMiSlipFIRM Input Aribiters No grantunchanged Grantedone location beyond the accepted one Output Arbiters No requestunchanged Grant accepted one location beyond the granted one Grant not accepted one location beyond the previously granted one unchangedthe granted one

COMP680E by M. Hamdi 30 Question 4 Example You will be given the status of the VOQs, and the position of the pointers, find the scheduling using iSLIP, FIRM or RRM in 2 to 3 time slots

COMP680E by M. Hamdi 31 Question 5: Output Scheduling Algorithms for QoS We looked at output scheduling algorithms for per flow queueing Understand the notion of fairness as defined by max- min fairness Understand Weighted Fair Queueing (WFQ) which is the most famous algorithm for fair queueing –Bit-by-bit WFQ

COMP680E by M. Hamdi 32 Max-Min Fairness A common way to allocate flows N flows share a link of rate C. Flow f wishes to send at rate W(f), and is allocated rate R(f). 1.Pick the flow, f, with the smallest requested rate. 2.If W(f) < C/N, then set R(f) = W(f). 3.If W(f) > C/N, then set R(f) = C/N. 4.Set N = N – 1. C = C – R(f). 5.If N>0 goto 1.

COMP680E by M. Hamdi 33 1 W(f 1 ) = 0.1 W(f 3 ) = 10 R1R1 C W(f 4 ) = 5 W(f 2 ) = 0.5 Question 5 Example: Max-Min Fairness Round 1: Set R(f 1 ) = 0.1 Round 2: Set R(f 2 ) = 0.9/3 = 0.3 Round 3: Set R(f 4 ) = 0.6/2 = 0.3 Round 4: Set R(f 3 ) = 0.3/1 = 0.3

COMP680E by M. Hamdi 34 Weighted Bit-by-Bit Fair Queueing Flows can be allocated different rates by servicing a different number of bits for each flow during each round. 1 R(f 1 ) = 0.1 R(f 3 ) = 0.3 R1R1 C R(f 4 ) = 0.3 R(f 2 ) = 0.3 Order of service for the four queues: … f 1, f 2, f 2, f 2, f 3, f 3, f 3, f 4, f 4, f 4, f 1,…

COMP680E by M. Hamdi 35 Understanding bit by bit WFQ 4 queues, sharing 4 bits/sec of bandwidth, Weights 3:2:2:1 Weights : 3:2:2: B1 = 3 A1 = 4 D2 = 2 D1 = 1 C2 = 1C1 = 1 Time B1 = 3 A1 = 4 D2 = 2 D1 = 1 C2 = 1C1 = 1 A1 B1 A2 = 2 C3 = 2 Time Weights : 3:2:2:1 Round B1 = 3 A1 = 4 D2 = 2 D1 = 1 C2 = 1C1 = 1 A1 B1 A2 = 2 C3 = 2 D1, C2, C1 Depart at R=1 Time B1C1C2D1 Weights : 3:2:2:1 Round 1

COMP680E by M. Hamdi 36 Understanding bit by bit WFQ 4 queues, sharing 4 bits/sec of bandwidth, Weights 3:2:2:1 Weights : 3:2:2: B1 = 3 A1 = 4 D2 = 2 D1 = 1 C2 = 1C1 = 1 A2 = 2 C3 = 2 B1, A2 A1 Depart at R=2 Time A1 B1 C1C2D1A1A2 B1 Round 1Round 2 Weights : 3:2:2: B1 = 3 A1 = 4 D2 = 2 D1 = 1 C2 = 1C1 = 1 A2 = 2 C3 = 2 D2, C3 Depart at R=2 Time A1 B1 C1C2D1A1A2 B1C3 D2 Round 1Round 2 3

COMP680E by M. Hamdi 37 Question 4 Example You are given a number of flows. What is the rate allocated for each flow using bit-by-bit WFQ. You are given packets in each flow. What is the order of the departure of packets using packet-by-packet WFQ.

COMP680E by M. Hamdi 38 RED (Random Early Detection) FIFO scheduling Buffer management: –Probabilistically discard packets –Probability is computed as a function of average queue length Discard Probability Average Queue Length 0 1 min_thmax_th queue_len

COMP680E by M. Hamdi 39 Question 5: Random Early Detection (RED)

COMP680E by M. Hamdi 40 RED operation Min thresh Max thresh Average queue length minthreshmaxthresh MaxP 1.0 Avg length P(drop)

COMP680E by M. Hamdi 41 Define Two Threshold Values RED (Random Early Detection) FIFO scheduling Min thresh Max thresh Average queue length Make Use of Average Queue Length Case 1: Average Queue Length < Min. Thresh Value Admit the New Packet

COMP680E by M. Hamdi 42 RED (Cont’d) Min thresh Max thresh Average queue length Case 2: Average Queue Length between Min. and Max. Threshold Value p 1-p Admit the New Packet With Probability p … p 1-p Or Drop the New Packet With Probability 1-p

COMP680E by M. Hamdi 43 Random Early Detection Algorithm ave = (1 – w q )ave + w q q P = max_P*(avg_len – min_th)/(max_th – min_th) for each packet arrival: calculate the average queue size ave if ave ≤ min th do nothing else if min th ≤ ave ≤ max th calculate drop probability p drop arriving packet with probability p else if max th ≤ ave arriving packetd drop the arriving packetd

COMP680E by M. Hamdi 44 Question 5 Example You are given the status of a queue using RED, and all needed parameter (Max. threshold, Min. threshold, average queue length, etc.) For an arriving packet, determine whether the packet will accepted, dropped, or accepted with a certain probability.