DetNet Bounded Latency-02

Slides:



Advertisements
Similar presentations
1 CONGESTION CONTROL. 2 Congestion Control When one part of the subnet (e.g. one or more routers in an area) becomes overloaded, congestion results. Because.
Advertisements

CS640: Introduction to Computer Networks Aditya Akella Lecture 20 – QoS.
Quality of Service Requirements
0 A Short Course on Network Calculus CH-1015 Ecublens Jean-Yves Le Boudec Patrick Thiran ICA, EPFL.
DYNAMIC POWER ALLOCATION AND ROUTING FOR TIME-VARYING WIRELESS NETWORKS Michael J. Neely, Eytan Modiano and Charles E.Rohrs Presented by Ruogu Li Department.
ACN: IntServ and DiffServ1 Integrated Service (IntServ) versus Differentiated Service (Diffserv) Information taken from Kurose and Ross textbook “ Computer.
Integrated Services (RFC 1633) r Architecture for providing QoS guarantees to individual application sessions r Call setup: a session requiring QoS guarantees.
CSE QoS in IP. CSE Improving QOS in IP Networks Thus far: “making the best of best effort”
CS640: Introduction to Computer Networks Aditya Akella Lecture 20 - Queuing and Basics of QoS.
EE 685 presentation Optimization Flow Control, I: Basic Algorithm and Convergence By Steven Low and David Lapsley.
DetNet BoF IETF #93 DetNet Problem Statement Monday, July 20 th, 2015 Norman Finn draft-finn-detnet-problem-statement.
EE 122: Lecture 15 (Quality of Service) Ion Stoica October 25, 2001.
Providing QoS in IP Networks
IETF DetNet and IEEE Time-Sensitive Networking
Goals and objectives Project(s): MBH IA Phase 4 Transport for 5G Networks Purpose of the contribution: Input to MBH IA Phase 4 Abstract: Overview on the.
Internet Quality of Service
Advanced Computer Networks
Congestion Control in Data Networks and Internets
Instructor Materials Chapter 6: Quality of Service
QoS & Queuing Theory CS352.
Topics discussed in this section:
Top-Down Network Design Chapter Thirteen Optimizing Your Network Design Copyright 2010 Cisco Press & Priscilla Oppenheimer.
IEEE Time-Sensitive Networking (TSN)
IEEE Time-Sensitive Networking (TSN)
Buffer Management in a Switch
Queue Management Jennifer Rexford COS 461: Computer Networks
DetNet Service Model draft-varga-detnet-service-model-01
RSVP and Integrated Services in the Internet: A Tutorial
IEEE Time-Sensitive Networking (TSN)
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 6: Quality of Service Connecting Networks.
CONGESTION CONTROL.
Advanced Computer Networks
Computer Network Performance Measures
Queuing and Queue Management
CS223 Advanced Data Structures and Algorithms
Authors Mach Chen (Huawei) Xuesong Geng (Huawei) Zhenqiang Li (CMCC)
DetNet Flow Information Model
Intro to Deterministic Analysis
EE 122: Quality of Service and Resource Allocation
DetNet Bounded Latency
Computer Network Performance Measures
COS 461: Computer Networks
On-time Network On-chip
PRESENTATION COMPUTER NETWORKS
Computer Science Division
Congestion Control, Quality of Service, & Internetworking
Congestion Control (from Chapter 05)
Time-Aware shaping (802.1Qbv) support in the MAC
DetNet Information Model Consideration
EE 122: Lecture 7 Ion Stoica September 18, 2001.
A Short Course on Network Calculus
Congestion Control Reasons:
CIS679: Two Planes and Int-Serv Model
Congestion Control (from Chapter 05)
Quality-of-Service ECE1545.
The Network Layer Congestion Control Algorithms & Quality-of-Service
Congestion Control (from Chapter 05)
DetNet Configuration YANG Model Update
EECS 122: Introduction to Computer Networks Packet Scheduling and QoS
IEEE Time-Sensitive Networking (TSN)
DetNet Bounded Latency-04
Editors: Bala’zs Varga, Jouni Korhonen
DetNet Data Plane Solutions draft-ietf-detnet-dp-sol-ip-02  draft-ietf-detnet-dp-sol-mpls-02  Bala’zs Varga, Jouni Korhonen, Janos Farkas, Lou Berger,
DetNet Bounded Latency-01
کنترل جریان امیدرضا معروضی.
Large-Scale Deterministic Network Update
Wireless + TSN = Part of the Picture
DetNet Architecture Updates
Presentation transcript:

DetNet Bounded Latency-02 draft-finn-detnet-bounded-latency-02 Norman Finn, Jean-Yves Le Boudec, Ehsan Mohammadpour, Huawei           EPFL EPFL Jiayi Zhang, János Farkas, Balázs Varga Huawei Ericsson Ericsson IETF 103 DetNet WG Bangkok, 8 November, 2018 7/16/2018

A reminder to new attendees … DetNet is about an upper bound on end-to-end latency – not low average latency. Bounded latency leads to the ability to compute exactly how many buffers are required to achieve zero congestion loss. Feedback that slows down flows to avoid congestion is not an option for the application space of interest to DetNet. Mathematically sound assurances can be given on latency and congestion loss. 7/16/2018

Major changes from -01 to -02 The intent of the document, abstract and section 1, has been clarified. Clause 5 was reorganized. The queuing model in 7.1, Figure 3, has been expanded to show the regulators, the output queues, and the non-DetNet queues. The detailed descriptions of an 802.1Q bridge’s queuing mechanisms, in Figure 4 and Figure 5 of -01, have been replaced by simple textual descriptions of frame preemption and time scheduled queuing. A mathematical description of IntServ queuing has been added (7.5 in -02). A new section 8 has been added to describe time-based queuing techniques including Cyclic Queuing and Forwarding (8.1) and Time Scheduled Queuing (8.2). 7/16/2018

Two different problems to be solved Any given application may be interested in one, the other, or both of: The Static problem: Given the complete set of DetNet flows to be accommodated by a network, their paths and bandwidth characterizations, compute the worst-case latency that can be experienced by each flow, and the buffer requirements in each relay node to guarantee zero congestion loss. The Dynamic problem: Given a network whose total capacity is limited by some set of configured parameters, and given only one DetNet flow, its path and bandwidth characterization, compute its worst-case latency and the per-relay node buffer requirements that can be guaranteed no matter what other DetNet flows may be subsequently created (subject always to the network capacity). 7/16/2018

At present (bounded-latency-02) The Static problem is described in the mathematical sections of the text (e.g. sections 5.2, 7.4, 7.5). The Dynamic problem is described in the non-mathematical sections of the text (e.g. sections 1, 4.1, 9.2). This will be clarified in version -03. 7/16/2018

4.2. Relay system model [updates] Output delay Link delay Preemption delay Processing delay Regulation delay Queuing subsystem delay 1 Queuing subsystem Regulator DetNet relay node A DetNet relay node B 6 5 4 2,3 7/16/2018

End-to-end latency bound calculation E2E Delay = sum(non-queuing delay) + sum(queuing delay) = sum (1,2,3,4) at each node + sum (5,6) at each node 1 Queuing subsystem Regulator DetNet relay node A DetNet relay node B 6 5 4 2,3 11/8/2018

Non-queuing delay The sum of delays 1,2,3, and 4 at every node. An upper bound on it is technology specific. An upper bound on it is independent of flow specification. 1 Queuing subsystem Regulator DetNet relay node A DetNet relay node B 6 5 4 2,3 11/8/2018

Queuing delay Two queuing strategies: Per-flow Queuing: Each flow is using its own separate queue. Per-class Queuing: Each class of service has its own separate queue. Multiple flows sharing same queue 11/8/2018

Per-flow queuing Separate queue for each flow Example: IntServ Obtain per-flow per-node and end-to-end delay bound using: Abstraction of a node with guaranteed delay and rate Information on traffic specification for the flow Flow 1 Flow 2 Flow 3 Flow 4 11/8/2018

Per-class queuing Separate queue for each class Example: Time-Sensitive Networking (TSN) Flow 1, Class A Flow 2, Class A Flow 3, Class B Flow 4, Class B Class A Class B 11/8/2018

Per-class queuing Key issue: burstiness cascade; Individual flows that share a resource dedicated to a class may see their burstiness increase. Cause increased burstiness to other flows downstream of this resource. Hardness of calculation of end-to-end delay bound. Even if a bound is calculated, it is dependent to all the flows. Addition of a flow requires recalculation of the the delay bounds. Solution: Reshaping at every node, like interleaved regulator Flow 1, Class A Flow 2, Class A Flow 3, Class B Flow 4, Class B Class A Class B 11/8/2018

4.2. Relay system model [updates] Output delay Link delay Preemption delay Processing delay Regulation delay Queuing subsystem delay 1 Queuing subsystem Regulator DetNet relay node A DetNet relay node B 6 5 4 2,3 7/16/2018

Per-flow end-to-end queuing delay calculation (IntServ) Each node 𝑖 guarantees rate 𝑅 𝑖 and delay 𝑇 𝑖 to flow 𝑓. Traffic of flow 𝑓 during time 𝑡 is bounded by 𝛼 𝑡 =𝑟 𝑡+𝑏. End-to-end delay bound for flow 𝑓: 𝐷=𝑇+ 𝑏 𝑅 ; 𝑇= 𝑖=1 𝐾 𝑇 𝑖 , 𝑅= min 1≤𝑖≤𝑘 𝑅 𝑖 1 2 3 4 k-1 k 𝑓 ( 𝑅 1 , 𝑇 1 ) ( 𝑅 2 , 𝑇 2 ) ( 𝑅 3 , 𝑇 3 ) ( 𝑅 4 , 𝑇 4 ) ( 𝑅 𝑘−1 , 𝑇 𝑘−1 ) ( 𝑅 𝑘 , 𝑇 𝑘 ) 11/8/2018

7.5. IntServ In Integrated service (IntServ), reservation is made along a path for flows, only if routers are able to guarantee the required bandwidth and buffer. IntServ is an example of per-flow regulation. Input flow conforms to token bucket regulator (r, b) IntServ node provides rate-latency service (R, T) Delay/buffer bound is the maximum horizontal/vertical distance between arrival curve and service curve, as shown in the figure. Delay bound = 𝑇+𝑏/𝑅 Buffer bound = 𝑏+𝑟𝑇 For end-to-end delay bound, we use concatenated service curve Delay bound = 𝑇 𝑒2𝑒 +𝑏/ 𝑅 𝑒2𝑒 R, T: Influenced by other prioritized flow on this node Buffer bound = 𝑏+𝑟𝑇. Delay bound = 𝑇+𝑏/𝑅 Arrival curve 𝛼(𝑡)=𝑏+𝑟𝑡 Service curve 𝛽(𝑡) = max⁡(0, 𝑅(𝑡−𝑇)) In Integrated service (IntServ), a flow must conform to a traffic specification (T-spec), and reservation is made along a path · For any time period t, the incremental arrival data should be no more than the value given by an arrival curve a(t)=b+rt · For IntServ node, reservation is made for a flow. It guarantee that service rate R, which is a share of link’s bandwidth. R is influenced by the interference of other flows. A node also guarantees that the flow wait no more than T, where the T is related to the specification of all the flows traversing this node. As we can see, other resource-reserved flows traversing the node influence the choice of R and T, thus influence the delay at every hop. Then we can compute the delay and buffer bound, by using the arrival curve and service curves. Delay/buffer bound is the maximum horizontal/vertical distance between arrival curve and service curve, as shown in the figure. So far we get the per-hop delay. For end-to-end delay on a reservation path, we concatenate many per-hop service curves along a routing path. Then we would replace the red line, per-hop service curve, with the concatenated service curve. One can get the end-to-end delay bound. Note that the service curve parameters are influenced by the other flow that reserve bandwidth at this node. Per-hop bound End-to-end bound where 𝑅 𝑒2𝑒 = min 𝑅 1 ,…, 𝑅 𝑁 , 𝑇 𝑒2𝑒 = 𝑇 1 +…+ 𝑇 𝑁 7/16/2018

Per-class end-to-end delay calculation (TSN) End-to-end delay bound for flow 𝑓: 𝐷= 𝐶 1,2 + 𝐶 2,3 +…+ 𝐶 𝑘−2,𝑘−1 + 𝑆 𝑘−1 1 2 3 4 k-1 k 𝐶 1,2 𝐶 2,3 𝐶 3,4 𝐶 4,5 𝐶 𝑘−2,𝑘−1 𝑆 𝑘−1 𝑓 R Q R: Regulator Q: Queuing Subsystem 11/8/2018 Ref: [Mohammadpour, Stai, Mohiuddin, Le boudec, 2018]

Interleaved regulator is for free i. e Interleaved regulator is for free i.e. does not increase worst-case end-to-end latency! Define: 𝐶 𝐴𝐵 = sup ( 6 𝐴 + 1 𝐴 + 2 𝐴 + 3 𝐴 )+ 4 𝐵 + 5 𝐵 𝑆 𝐴 = sup 6 𝐴 + 1 𝐴 + 2 𝐴 + 3 𝐴 Directly From [Le boudec, 2018]: 𝐶 𝐴𝐵 = 𝑆 𝐴 1 Queuing subsystem Regulator DetNet relay node A DetNet relay node B 6 5 4 2,3 𝑆 𝐴 11/8/2018 𝐶 𝐴𝐵

8. Time-based DetNet QoS The calculus used in section 7 does not apply, except perhaps at the edges. Packets are output according to some kind of repeating schedule. Two methods have been standardized in IEEE 802.1: Cyclic Queuing and Forwarding (CQF, IEEE Std 802.1Qch-2017). Scheduled Traffic (IEEE Std 802.1Qbv-2015, called “time- scheduled queuing” in draft-finn-detnet-bounded-latency-02). 7/16/2018

8.1 Cyclic Queuing and Forwarding Two-buffer version: Two buffers per port. Input and output buffers swap at the same moment, once every cycle, period TC. Small guard band to allow for transit and forwarding time. All relay nodes are synchronized and swap buffers at the same moment. Cycle time TC > transit time + forwarding time + clock inaccuracy + max data transmit time. 7/16/2018

8.1 Cyclic Queuing and Forwarding Two-buffer version: Two buffers per port. Input and output buffers swap at the same moment, once every cycle, period TC. Small guard band to allow for transit and forwarding time. All relay nodes are synchronized and swap buffers at the same moment. Cycle time TC > transit time + forwarding time + clock inaccuracy + max data transmit time. TICK! 7/16/2018

8.1 Cyclic Queuing and Forwarding Two-buffer version: Two buffers per port. Input and output buffers swap at the same moment, once every cycle, period TC. Small guard band to allow for transit and forwarding time. All relay nodes are synchronized and swap buffers at the same moment. Cycle time TC > transit time + forwarding time + clock inaccuracy + max data transmit time. TICK! 7/16/2018

8.1 Cyclic Queuing and Forwarding Three-buffer version: Three buffers per port. Same as two- buffer version, but input buffer swap is out-of-phase with output buffer swap to allow for arbitrary link delay. 7/16/2018 7/16/2018 22

8.1 Cyclic Queuing and Forwarding Three-buffer version: Three buffers per port. Same as two- buffer version, but input buffer swap is out-of-phase with output buffer swap to allow for arbitrary link delay. TICK! 7/16/2018 7/16/2018 23

8.1 Cyclic Queuing and Forwarding Three-buffer version: Three buffers per port. Same as two- buffer version, but input buffer swap is out-of-phase with output buffer swap to allow for arbitrary link delay. TICK! 7/16/2018 7/16/2018 24

8.1 Cyclic Queuing and Forwarding Three-buffer version: Three buffers per port. Same as two- buffer version, but input buffer swap is out-of-phase with output buffer swap to allow for arbitrary link delay. TICK! 7/16/2018 7/16/2018 25

8.1 Cyclic Queuing and Forwarding Three-buffer version: Three buffers per port. Same as two- buffer version, but input buffer swap is out-of-phase with output buffer swap to allow for arbitrary link delay. TICK! 7/16/2018 7/16/2018 26

8.1 Cyclic Queuing and Forwarding Three-buffer version: Three buffers per port. Same as two- buffer version, but input buffer swap is out-of-phase with output buffer swap to allow for arbitrary link delay. TICK! 7/16/2018 7/16/2018 27

8.1 Cyclic Queuing and Forwarding Three-buffer version: Three buffers per port. Same as two- buffer version, but input buffer swap is out-of-phase with output buffer swap to allow for arbitrary link delay. TICK! 7/16/2018 7/16/2018 28

8.1 Cyclic Queuing and Forwarding Computing the delay is much simpler than the calculus used in bucket/credit schemes: every packet spends two or three cycles TC at each hop, plus an integral number of cycles TC (maybe 0) in transit and forwarding delay per hop. Resource allocation is trivial: total bandwidth cannot exceed that which can be transmitted in one cycle. Multiple buffer sets with different cycle times can run on a single port to supply different classes of service.

8.2 Time-schedule queuing Every output queue has a gate, controlled by a rotating schedule with (maximum) 1 nanosecond precision, from a synchronized clock. This solution is different from all others in the draft, in that bandwidth can be multiplexed in time. DetNet flows are not assumed to run continuously.

8.2 Time-schedule queuing Good news: Scheduling every transmission with simultaneous optimization for latency, buffer space, jitter, interference with best-effort traffic, and any other QoS parameter you can name. Bad news: 802.1Qbv, at present, supports only 8 scheduled queues. Computing a schedule for the network is an NP-complete problem, although practical algorithms are in use, today.

QUESTION It is the intention of the authors that draft-finn-detnet-bounded- latency be adopted by the Working Group, to become normative text for how one can provide the bounded latency and zero congestion loss using already-published standards. Is this draft headed in the right direction? 7/16/2018

References [1] J.-Y. Le Boudec, “A Theory of Traffic Regulators for Deterministic Networks with Application to Interleaved Regu- lators,” arXiv:1801.08477 [cs], Jan. 2018. [Online]. Available: http://arxiv.org/abs/1801.08477/, (Accessed:09/02/2018). [2] E. Mohammadpour, E. Stai, M. Mohiuddin, and J.-Y. Le Boudec, “ End-to-end Latency and Backlog Bounds in Time-Sensitive Networking with Credit Based Shapers and Asynchronous Traffic Shaping,” arXiv:1804.10608 [cs.NI], 2018. [Online]. Available: https: //arxiv.org/abs/1804.10608/ 7/16/2018

Thank you 7/16/2018