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