A Linux Real-Time Packet Scheduler for Reliable Static SDN Routing

In a distributed computing environment, guaranteeing the hard deadline for real-time messages is essential to ensure schedulability of real-time tasks. Since capabilities of the shared resources for transmission are limited, e.g., the buffer size is limited on network devices, it becomes a challenge to design an effective and feasible resource sharing policy based on both the demand of real-time packet transmissions and the limitation of resource capabilities. We address this challenge in two cooperative mechanisms. First, we design a static routing algorithm to find forwarding paths for packets to guarantee their hard deadlines. The routing algorithm employs a validation-based backtracking procedure capable of deriving the demand of a set of real-time packets on each shared network device, and it checks whether this demand can be met on the device. Second, we design a packet scheduler that runs on network devices to transmit messages according to our routing requirements. We implement these mechanisms on virtual software-defined network (SDN) switches and evaluate them on real hardware in a local cluster to demonstrate the feasibility and effectiveness of our routing algorithm and packet scheduler.

[1]  Lui Sha,et al.  Memory Access Control in Multiprocessor for Real-Time Systems with Mixed Criticality , 2012, 2012 24th Euromicro Conference on Real-Time Systems.

[2]  Martín Casado,et al.  Extending Networking into the Virtualization Layer , 2009, HotNets.

[3]  Frank Mueller,et al.  Hybrid EDF Packet Scheduling for Real-Time Distributed Systems , 2015, 2015 27th Euromicro Conference on Real-Time Systems.

[4]  Frank Mueller,et al.  A real-time distributed storage system for multi-resolution virtual synchrophasor , 2014, 2014 IEEE PES General Meeting | Conference & Exposition.

[5]  Domenico Ferrari,et al.  Rate-Controlled Service Disciplines , 1994, J. High Speed Networks.

[6]  Roch Guérin,et al.  Efficient network QoS provisioning based on per node traffic shaping , 1996, TNET.

[7]  Jianhua Zhang,et al.  Distributed Optimization Algorithms for Wide-Area Oscillation Monitoring in Power Systems Using Interregional PMU-PDC Architectures , 2015, IEEE Transactions on Smart Grid.

[8]  Nageswara S. V. Rao,et al.  QoS routing via multiple paths using bandwidth reservation , 1998 .

[9]  Martín Casado,et al.  Rethinking Packet Forwarding Hardware , 2008, HotNets.

[10]  Petru Eles,et al.  Bus Access Optimization for Predictable Implementation of Real-Time Applications on Multiprocessor Systems-on-Chip , 2007, RTSS.

[11]  Gonzalo Carvajal,et al.  Integrating Dynamic-TDMA Communication Channels into COTS Ethernet Networks , 2016, IEEE Transactions on Industrial Informatics.

[12]  Frank Slomka,et al.  An event stream driven approximation for the analysis of real-time systems , 2004, Proceedings. 16th Euromicro Conference on Real-Time Systems, 2004. ECRTS 2004..

[13]  David L. Mills,et al.  Internet time synchronization: the network time protocol , 1991, IEEE Trans. Commun..

[14]  Frank Mueller,et al.  A real-time distributed hash table , 2014, 2014 IEEE 20th International Conference on Embedded and Real-Time Computing Systems and Applications.

[15]  Torsten Hoefler,et al.  Multistage switches are not crossbars: Effects of static routing in high-performance networks , 2008, 2008 IEEE International Conference on Cluster Computing.

[16]  Sebastien Lagrange,et al.  Optimal routing for end-to-end guarantees using Network Calculus , 2008, Perform. Evaluation.

[17]  J. Loeser,et al.  Low-latency hard real-time communication over switched Ethernet , 2004 .

[18]  Thomas Nolte,et al.  Multi-level hierarchical scheduling in Ethernet switches , 2011, 2011 Proceedings of the Ninth ACM International Conference on Embedded Software (EMSOFT).

[19]  Robert E. Tarjan,et al.  A quick method for finding shortest pairs of disjoint paths , 1984, Networks.

[20]  Christo Wilson,et al.  Better never than late , 2011, SIGCOMM 2011.

[21]  Hermann Kopetz,et al.  TTP - A time-triggered protocol for fault-tolerant real-time systems , 1993, FTCS-23 The Twenty-Third International Symposium on Fault-Tolerant Computing.

[22]  Kees G. W. Goossens,et al.  Predator: A predictable SDRAM memory controller , 2007, 2007 5th IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[23]  Magnus Jonsson,et al.  Switched real-time ethernet with earliest deadline first scheduling protocols and traffic handling , 2002, Proceedings 16th International Parallel and Distributed Processing Symposium.

[24]  Kang G. Shin,et al.  Real-Time Communication in Multihop Networks , 1994, IEEE Trans. Parallel Distributed Syst..

[25]  Chunming Qiao,et al.  On finding disjoint paths in single and dual link cost networks , 2004, IEEE INFOCOM 2004.

[26]  Dinesh C. Verma,et al.  A Scheme for Real-Time Channel Establishment in Wide-Area Networks , 1990, IEEE J. Sel. Areas Commun..

[27]  Rabin K. Patra,et al.  Routing in a delay tolerant network , 2004, SIGCOMM '04.

[28]  Kai Zhu,et al.  Achieving end-to-end delay bounds by EDF scheduling without traffic shaping , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

[29]  Charles U. Martel,et al.  On non-preemptive scheduling of period and sporadic tasks , 1991, [1991] Proceedings Twelfth Real-Time Systems Symposium.

[30]  Fernando A. Kuipers,et al.  An overview of constraint-based path selection algorithms for QoS routing , 2002 .

[31]  Lui Sha,et al.  MemGuard: Memory bandwidth reservation system for efficient performance isolation in multi-core platforms , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[32]  T. N. Vijaykumar,et al.  Deadline-aware datacenter tcp (D2TCP) , 2012, CCRV.