On real-time delay monitoring in software-defined networks Victor S. Altukhov Lomonosov Moscow State University Moscow, Russia victoralt@lvk.cs.msu.su Eugene V. Chemeritskiy Applied Research Center for Computer Networks Moscow, Russia tyz@lvk.cs.msu.su
Motivation Huge number of network applications and services request advanced end-to-end requirements for the connection; Network hardware doesn t support necessary functionality to allow QoS issues; Most QoS metrics can t be easily calculated. IPTV VoIP File transfer Gaming
Motivation VoIP Delay sensitive Many network services and applications are delay sensitive; Delay measurement in asynchronous distributed system is hard. IPTV Delay sensitive Gaming Delay sensitive
Rationale Packet switch fabric F Output port queue Switch packet analyzer А F А Queuing delay can t be accurately measured without a regard to network load
Rationale Measured value consist of two parts: Real end-to-end delay for target route (effective part); Transmission delay between controller and switch (measurement overhead). SDN Controller Measurement will be accurate if: effective part overhead Target route
Loop-based method Allow to measure average target route RTT over n iterations; Measurement results include switch to controller jitter. SDN Controller Problems: Huge number of rules; Measure RTT, not one-way delay. Target route
Header loops Use header fields to decrease number of rules; Require to install modification rules; 1000 iterations cycles and 3 header fields require 30 modification rules. Iteration First field Second field Third field 0 0 0 0 1 0 0 1 10 0 1 0 11 0 1 1 100 1 0 0 999 9 9 9
Weighted method of RTT separation Allow to derive one-way delay from RTT; Can be used with one-hop RTT; Requires switch statistics. For a given RTT and time interval T, one-way delay can be estimated as following: (RRRRRR + max XX CC TT, 0 max (YY CC TT, 0) )/2 X, Y number of bytes, transmitted through switches output queues. T measurement time interval, C link bandwidth.
Delay map Network delay map structure, that contains all one-hop delays. Delay for a random route can be calculated as sum of one hop delays; Delay map can be construct with weighted method of RTT separation, but this approach generates big controller load;
Loops aggregation Number of PacketIn messages depend on number of iterations and loop s length; Bigger loops decrease controller load. 2 3 2 3 1 4 5 2 loops 2 PacketIn per 1 period 1 4 5 1 loop 1 PacketIn per 2 periods Weighted method of RTT separation can be used only with one-hop loops
How to obtain one-way delays without weighted method?
Network delay map construction algorithm Idea: Construct a system of linear equations from a set of aggregated loops. Constraints: Loops in the aggregated set must be independent; Each one-way link must be include in at least one loop; Number of loops must be equal to number of one-way links.
Network delay map construction algorithm 1 Start from basic set of network cycles. 2 3 4 5 1 2 1 2 3 2 2 4 2 3 5 3 4 5 4 2 3 5 4 2 Number of cycles in basic is equal to cyclomatic number; Basic set is linear independent; Set of aggregated cycles from basic set is independent; But this is not enough
Network delay map construction algorithm Extend set of aggregated cycles to number of one-way links Find missing one-way links in set of aggregated cycles; Use weighted method of RTT separation to obtain missing one-way delays. 1 Use measurement results to solve system of linear equations and create network delay map 2 3 5 4 8 8 1 16 16 20 2 36 3 36 20 14 14 5 4
Experiments results Tested on hybrid SDN switch NEC PF5200 POX controller User traffic generation delay vary from 0 to 10 µs User traffic packet size vary from 64 to 1500 byte 2 3 1 5 4
Experiments results User traffic generation delay vary from 1 to 10 µs User traffic packet size vary from 64 to 250 bytes 1 8 8 16 16 20 2 36 3 36 20 14 14 5 4
Experiments results User traffic generation delay vary from 100 ns to 1 µs User traffic packet size vary from 250 to 750 bytes 1 24 24 63 37 41 2 36 3 36 57 61 56 5 4
Experiments results User traffic generation delay less then 100 ns User traffic packet size vary from 1000 bytes 1 91 83 35 118 80 2 98 3 70 30 31 86 5 4
Experiments results Tested on network, simulated by Mininet POX controller 1 2 3 4 5 With weighted method of RTT separation: 5 one-hop loops 5 PacketIn messages in a second
Experiments results Tested on network, simulated by Mininet POX controller 1 2 3 4 5 With set of aggregated cycles: 7 cycles with 36 hops 3,78 PacketIn messages in second.
Result Out method of end-to-end delay measurement has the following features: Per-flow delay measurement; Precise enough to cover the mutual flow influence; Work in SDN with general switching hardware; Update results up to several times in a second.
Questions?