cisc 7332x t6 c15a: congestion control and quality of service€¦ · c15a: congestion control and...

37
CISC 7332X T6 C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn College 12/4/2018 1 CUNY | Brooklyn College

Upload: others

Post on 25-Jun-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

CISC 7332X T6

C15a: Congestion Control and Quality of Service

Hui Chen

Department of Computer & Information Science

CUNY Brooklyn College

12/4/2018 1CUNY | Brooklyn College

Page 2: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

The Network Layer

• Responsible for delivering packets between endpoints over multiple links

12/4/2018 CUNY | Brooklyn College 2

Physical

Link

Network

Transport

Application

Page 3: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Congestion

• Overloading of network (when too much traffic is offered)

• Packet switching: store-and-forward

• Need memory to store packets

• Need processing power to forward packets

• e.g., too many packets arriving at a router,exceed its capacity, result in lost of packets (no memory to store the packets) or packet delay

12/4/2018 CUNY | Brooklyn College 3

Page 4: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Performance Degradation

• Performance degrades due to loss or retransmissions

• Goodput (=useful packets) trails offered load

12/4/2018 CUNY | Brooklyn College 4

Page 5: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Handling Congestion: Layered Approach• Effectively handling congestion requires that

the Network and upper (e.g., Transport) layers work together

• Congestion control approaches in Network Layer

• Traffic-aware routing

• Admission control

• Traffic throttling

• Load shedding

12/4/2018 CUNY | Brooklyn College 5

Page 6: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Congestion Control Approaches

• Network must do its best with the offered load

• Different approaches at different timescales

• Nodes should also reduce offered load (Transport)

12/4/2018 CUNY | Brooklyn College 6

Page 7: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Traffic-Aware Routing

• Choose routes depending on traffic, not just topology

12/4/2018 CUNY | Brooklyn College 7

Page 8: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Traffic-Aware Routing: Example

• e.g., use EI for West-to-East traffic if CF is loaded

12/4/2018 CUNY | Brooklyn College 8

Page 9: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Traffic-Aware Routing: Challenges• Favorable routes changing quickly, results in

wild oscillation in routing tables.

12/4/2018 CUNY | Brooklyn College 9

Page 10: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Admission Control

• Admission control allows a new traffic load only if the network has sufficient capacity, e.g., with virtual circuits

• Can combine with looking for an uncongested route

12/4/2018 CUNY | Brooklyn College 10

Page 11: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Admission Control: Example

12/4/2018 CUNY | Brooklyn College 11

Network with some congested nodes

Uncongested portion and route AB around congestion

Page 12: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Traffic Throttling

• Congested routers signal hosts to slow down traffic

• ECN (Explicit Congestion Notification) marks packets and receiver returns signal to sender

12/4/2018 CUNY | Brooklyn College 12

Page 13: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Traffic Throttling

• Example: using the Exponentially Weighted Moving Average on queuing delay inside routers

• dnew = dold + (1 - ) s

• where d is delay and s is queue length

12/4/2018 CUNY | Brooklyn College 13

Page 14: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Load Shedding

• When all else fails, network will drop packets (shed load)

• Can be done end-to-end or link-by-link

• But which packet to drop?

12/4/2018 CUNY | Brooklyn College 14

Page 15: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Link-by-Link Load Shedding

• Link-by-link produces rapid relief

12/4/2018 CUNY | Brooklyn College 15

1

3

2

4

5

Page 16: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

End-to-end Load Shedding

• End-to-end takes longer to have an effect, but can better target the cause of congestion

12/4/2018 CUNY | Brooklyn College 16

1

3

2

7

5

6

4

Page 17: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Questions?

• Concept of congestion and congestion control

• Network layer approaches

• Traffic-aware routing

• Admission control

• Traffic throttling

• Load shedding

12/4/2018 CUNY | Brooklyn College 17

Page 18: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Quality of Service

• Application requirements

• Traffic shaping

• Packet scheduling

• Admission control

• Integrated services

• Differentiated services

12/4/2018 CUNY | Brooklyn College 18

Page 19: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Application Requirements

• Different applications care about different properties

12/4/2018 CUNY | Brooklyn College 19

“High” means a demanding requirement, e.g., low delay

Page 20: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

QoS on Network Layer

• Network provides service with different kinds of QoS (Quality of Service) to meet application requirements

12/4/2018 CUNY | Brooklyn College 20

Network Service Application

Constant bit rate Telephony

Real-time variable bit rate Videoconferencing

Non-real-time variable bit rate Streaming a movie

Available bit rate File transfer

Example of QoS categories from ATM networks

Page 21: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Traffic Shaping

• Traffic shaping regulates the average rate and burstiness of data entering the network

• Lets users make guarantees: “my transmission pattern will look like this, can you handle it?”

12/4/2018 CUNY | Brooklyn College 21

Shape traffic here

Page 22: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Token/Leaky Bucket

• Token/Leaky bucket limits both the average rate (R) and short-term burst (B) of traffic

• For token, bucket size is B, water enters at rate R and is removed to send; opposite for leaky.

12/4/2018 CUNY | Brooklyn College 22

Leaky bucket(need not full to send)

Token bucket(need some water to send)

to send

to send

Page 23: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Effect of Token Bucket

12/4/2018 CUNY | Brooklyn College 23

Shaped by R=200 Mbps B=9600 KB

Shaped by R=200 Mbps B=0 KB

Host trafficR=200 Mbps B=16000 KB

Smaller bucket size delays traffic and reduces burstiness

Page 24: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Packet Scheduling

• Without packet scheduling, packets are handled in the FIFO (first in first out) manner

• Packet scheduling divides router/link resources among traffic flows other than FIFO

• Different queueing discipline

12/4/2018 CUNY | Brooklyn College 24

Page 25: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Round-Robin Fair Queueing

12/4/2018 CUNY | Brooklyn College 25

111

22

333

Page 26: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Weighted-Fair Queueing

• Fair Queueing approximates bit-level fairness with different packet sizes; weights change target levels

12/4/2018 CUNY | Brooklyn College 26

Page 27: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Weighted-Fair Queueing: Example

12/4/2018 CUNY | Brooklyn College 27

Packets may be sent out of arrival order

Finish virtual times determine transmission order

Fi = max(Ai, Fi-1) + Li/W

Page 28: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Admission Control

• Admission control takes a traffic flow specification and decides whether the network can carry it

• Sets up packet scheduling to meet QoS

12/4/2018 CUNY | Brooklyn College 28

Example flow specification

Page 29: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Admission Control: Example

12/4/2018 CUNY | Brooklyn College 29

Page 30: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Admission Control: Example

• Construction to guarantee bandwidth B and delay D:

• Shape traffic source to a (R, B) token bucket

• Run WFQ with weight W / all weights > R/capacity

• Holds for all traffic patterns, all topologies

12/4/2018 CUNY | Brooklyn College 30

Page 31: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Integrated Services

• Design with QoS for each flow

• Handle multicast traffic.

• Admission with RSVP (Resource reSerVationProtocol):

• Receiver sends a request back to the sender

• Each router along the way reserves resources

• Routers merge multiple requests for same flow

• Entire path is set up, or reservation not made

• Require advanced setup to establish each flow

12/4/2018 CUNY | Brooklyn College 31

Page 32: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Integrated Services: Example

12/4/2018 CUNY | Brooklyn College 32

R3 reserves flow from S1

R3 reserves flow from S2

R5 reserves flow from S1; merged with R3 at H

Merge

Page 33: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Differentiated Services

• Design with classes of QoS

• Customers buy what they want

• Expedited class is sent in preference to regular class

• Less expedited traffic but better quality for applications

• No requirement on setting up path. Each router implements it indepedently

12/4/2018 CUNY | Brooklyn College 33

Page 34: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Differentiated Services: Example

12/4/2018 CUNY | Brooklyn College 34

Page 35: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Differentiated Services: Implementation• Customers mark desired class on packet

• ISP shapes traffic to ensure markings are paid for

• Routers use WFQ to give different service levels

12/4/2018 CUNY | Brooklyn College 35

Page 36: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Differentiated Services: Implementation

12/4/2018 CUNY | Brooklyn College 36

Page 37: CISC 7332X T6 C15a: Congestion Control and Quality of Service€¦ · C15a: Congestion Control and Quality of Service Hui Chen Department of Computer & Information Science CUNY Brooklyn

Questions?

• Application requirements

• Quality of Services (QoS) provisioning

• Traffic shaping

• Packet scheduling

• Admission control

• Integrated services

• Differentiated services

12/4/2018 CUNY | Brooklyn College 37