Download Presentation
## title text

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -

**Networked Real-Time Systems: Routing and Scheduling**title text title text Sathish Gopalakrishnan Real-Time Systems Lab University of Illinois**Introduction**• Bus structures provide better guarantees for timely delivery and pre-planned strategies for error recovery in avionics systems. • Not all hosts are directly connected to each other so some messages must be routed. • Message routing impacts timely delivery of messages and execution of tasks. [Need to meet deadlines!] • Automated methods are required to route and schedule periodic message traffic for real-time systems that use bus structures.**Outline of the talk**System model Route determination Route allocation**Interconnection Network**CONTROL PROCESSORS DISPLAY BUS BIU BIU BUS FORCE SENSOR VIDEO-1 GPS TEMP. SENSOR VIDEO-2**Assumptions**• Traffic patterns are well-known at system design time. • Each message stream has a source and several destinations [producer-consumer model]. • For each message stream i, there is known period (pi) and data transfer time (ci, based on message size), hence the utilization of each message stream is known (on a canonical bus). • If the deadline of a message stream is D and period P, the maximum number of hops that it takes to reach the destination is D/P. • Allows us to use RM or EDF schedulers. Analysis is made easy. • The network topology is fixed.**cockpit**Path Selection audio/video signals temperature sensors digital signal processors We need to select a path for a stream from multiple possibilities. Paths should be selected such that all streams are schedulable.**System Topologybipartite interconnection network**h1 h2 h3 hn b1 b2 b3 bm**Path EnumerationPaths (or more generally trees) can be**selected by a depth-first search. h1 h2 h3 h4 b1 b2 b3 example network system paths**Characterizing Traffic Loads**• Let M be the number of message streams. • Assume every bus has the same characteristics: bandwidth etc. If all are not the same, we can scale the capacities appropriately. • For i M, let ui (= ci/pi) be the utilization of message stream i on a canonical bus. • If A is the path chosen for message i, then each bus on A can schedule the periodic task with utilization ui. • Pi is the set of all paths that connect the source of message stream i to its destination.**Per-Hop Utilization**MAP DATABASE ui ui BIU BIU DISPLAY ui GPS**cockpit**Mathematical Programming Formulation audio/video signals temperature sensors 60% [fab,1] A B This is a relaxation of the actual problem; we would like to use a few paths for one message stream. After obtaining a fractional solution, we can perform a rounding to restrict the number of paths. 40% [fab,2] digital signal processors If data needs to be sent from A to B, it is possible to split the data among the two paths between A and B via LP [FRAGMENTATION]**Resource Constraints**• If p Pi, let fp be the portion of ui that is routed on p. • All fps must be non-negative. • Sum of all fps must be equal to 1. • No bus should be overloaded, i.e., all message streams routed on a bus should be schedulable. (Satisfy utilization bounds.) • All the constraints are linear.**Objective Functions and Optimization**• We would like to distribute slack evenly across all buses. • Since we will be rounding the fractional solution, this objective function will improve the behavior of the path selection algorithm. • At each iteration we fix the route for at least one message and then update constraints before running the optimization again.**Utilization Bounds**• Dynamic Priority Scheduling (EDF) • EDF achieves a utilization of 1. Therefore, at each step we need not adjust the utilization bound per bus. • Static Priority Scheduling [RM) • The Liu-Layland bound depends on the number of streams allocated to a bus. This would imply that we need to tighten the utilization bounds after each iteration of the optimization algorithm. • We can avoid this by pre-computing the periods at which messages might be sent on a bus. This will allow us to fix utilization bound for a bus using the online admission bounds (Lee-Sha).**Results and Discussion**• Preliminary experiments • 150 hosts, 20 buses, 600 messages; average degree of a host is 3 • LP solver (CPLEX 8) requires 780ms • Acceptable for offline design; can be improved • Fragmentation improves slack distribution and computation • In experiments, we allowed messages to have up to three fragments • The unsplittable flow problem is MAX-SNP hard • However, it should be easier when fragmentation is allowed • No known bounds when fragmentation is permitted**Conclusions**• Need further work on bounds for such routing • Online algorithms for dynamic traffic • How do we determine the multiple paths to use? • Minimize the number of messages that miss deadlines • Analyze stochastic traffic patterns • Real-Time Queuing Theory? • Can we map it into a framework for route computation?**Sathish GopalakrishnanReal-Time Systems LabUniversity of**Illinoissgopalak@uiuc.edu the end