BCSQ: Bin-based Core Stateless Queueing for Scalable Support of Guaranteed Services

advertisement
BCSQ: Bin-based Core Stateless Queueing for
Scalable Support of Guaranteed Services
Zhenhai Duan
Karthik Parsha
Department of Computer Science
Florida State University
Florida State University
Zhenhai Duan
1
Agenda
• Core stateless networks for per-flow guaranteed services
– Introduction and motivation
• BCSQ: Bin-based Core Stateless Queueing
• Performance analyses and simulation studies
• Summary
Florida State University
Zhenhai Duan
2
Core Stateless Networks for Per-Flow GS
Florida State University
Zhenhai Duan
3
How Core Stateless Networks Work?
• Many core stateless systems
– Core Jitter Virtual Clock (CJVC)
– Virtual Time Reference System (VTRS)
• Core stateless virtual clock (CSVC)
• Core stateless earliest deadline first (CS-EDF)
– Core Stateless Guaranteed Rate (CSGR)
– Coordinated Network Scheduling (CNS)
• All work by emulating corresponding stateful scheduler
– Scheduling packets based on virtual finish times
Florida State University
Zhenhai Duan
4
Why Core Stateless?
• In stateful networks (GPS, WFQ, …), routers
–
–
–
–
Maintain per-flow state for scheduling/admission control
Perform per-flow packet classification
Perform per-flow queueing
Perform per-flow scheduling
• Core stateless networks
– Eliminate needs for per-flow operations and state
– Decouple control plane from data plane
• Routers focusing on data forwarding
• Sophisticated admission control on bandwidth brokers
Florida State University
Zhenhai Duan
5
Core stateless scheduling still expensive
• Sort incoming packets based on virtual finish times
– O(log 2 N )
– Where N is number of packets in scheduler
• How to overcome this problem?
– Coarser grained packet sorting
– Using bins to queue packets with close virtual finish times
• Conceptually simple, however
– Core stateless schedulers emulate stateful ones
• Can we still emulate them using bins?
– Goal is to provide per-flow GS
• Can we still achieve this goal using bins?
– Management issues of bins
• How many bins should we have to avoid overflow?

1
Florida State University

2

3
4


5
6
Zhenhai Duan


7

8
6
BCSQ: Bin-based Core Stateless Queueing
• pkt put in a bin if virtual finish time falls in its range
• bins scheduled according to ranges they represent
• pkts in a bin served in FIFO order
• assuming infinite number of bins for time being
Florida State University
Zhenhai Duan
7
BCSQ Network
•
(dynamic) packet state
– Reservation rate
– Virtual time stamp
– Virtual time adjustment term
•
Edge routers
– Maintain per-flow state
– Perform per-flow operations
– Initialize packet state
•
Core routers
– Schedule pkts based on pkt state
– Update pkt state
•
Admission control
– For example, bandwidth brokers
– For each router
• sum(reservation rate) <= link capacity
Florida State University
Zhenhai Duan
8
Edge Routers
• Maintaining per-flow state
– Flow reservation rate
• Inserting packet state
– Reservation rate
– Virtual time stamp (= departure time at edge)
– Virtual time adjustment term
• Edge conditioner: traffic shaping
– Traffic releasing rate <= flow’s reservation rate
Florida State University
Zhenhai Duan
9
Core Routers
• Upon receiving pkt, computing per-flow virtual delay
virtual _ delay 
packet _ length
 adjust _ term
reservation _ rate
– Adjustment term: removing inter-pkt dependence, computed at edge
• Assigning virtual finish time
– Virtual arrival time = virtual time stamp
Virtual finish time = virtual arrival time + virtual delay
• Packet scheduling
– Pkt put in bin m if virtual finish time falls in its range
– Bins served according to their ranges
– Pkts in a bin served in FIFO order
• Assuming each scheduler has infinite bins for time being
Florida State University
Zhenhai Duan
10
Core Routers (Cont’d)
• Upon departure, virtual time stamp updated
appropriately
– Reality check condition
Virtual Time Stamp(k) >= real arrival time(k)
– Virtual spacing property
VTS(k+1) – VTS(k) >= pkt_length(k+1)/reveration_rate
– They are critical for bounded edge-to-edge delays
• Error term: bound on departure time of pkts
Real departure time <= virtual finish time + error term
Virtual time stamp = virtual finish time + error term + prop daley
Florida State University
Zhenhai Duan
11
Error Term & E2E Delay Bounds
• Error term of BCSQ
Error term = max pkt length of all flows / link capacity + length of bin
– Intuition: pkts served ahead of pkt p with larger virtual finish time
• Edge-to-edge delay bound for H hops
delay  H 
max_packet _length
 sum(error_ terms)  sum(propag ation_dela y)
reservatio n_rate
Florida State University
Zhenhai Duan
12
Finite Number of Bins
• How many bins scheduler needs to avoid pkt overflow?
– Assuming each bin has enough buffer

1

2

3
4


5
6


7

8
• Virtual time window of a scheduler
– Time window that bins can collectively represent
Virtual time window = number of bins * length of bin
• No packet overflow if the following condition holds
Virtual time window >= 2 * worst case e2e delay
• BCSQ with (sufficiently large) finite number of bins
– Rotating bins when VFT does not fit in current window
Florida State University
Zhenhai Duan
13
Simulation Settings
• Network topology
– S0, S1, S2, edge routers
• Link
– capacity: 10Mbps
– Propagation delay: 10ms
• Traffic
– 6 CBR flows from S0 to R0 (1Mbps – 0.5Mbps)
– 6 Exponential on/off flows from S1 to R1, from S2 to R2
• Target network utilization level 90%
– Pkt size: 210B
• Schedulers compared
– BCSQ, FIFO, and CSVC
– Traffic shaped at edge for all, reservation rate = average rate
• Simulated with other settings, similar observations
• End-to-end delay of pkts:
– Delay between N1 and R0
Florida State University
Zhenhai Duan
14
FIFO vs. CSVC
FIFO
CSVC
• Flow differentiation
• all flows receive similar service for FIFO
• flows with higher reservation rate get better service for CSVC
Florida State University
Zhenhai Duan
15
BCSQ
• Controlling flow differentiation by changing bin length
– When bin length sufficient large, BCSQ -> FIFO
– When bin length sufficient small, BCSQ -> CSVC
  0.01s
Florida State University
  0.005s
Zhenhai Duan
  0.0025s
16
Summary
• Proposed and analyzed BCSQ
– A bin-based core stateless queueing mechanism
– Provides per-flow guaranteed service
– Flexibly control GS level by changing bin length
• Trade-off between complexity and GS level
– Derived the end-to-end delay bounds
– Analyzed relationship between number of bins, bin length
and worst-case end-to-end delay to ensure no pkt overflow
– Performed simulation studies
Thank you very much!
Florida State University
Zhenhai Duan
17
Download