220 likes | 389 Views
Priority Assignment for Real-Time Flows in WirelessHART Networks. Abusayeed Saifullah, You Xu, Chenyang Lu, Yixin Chen. Motivation. Process control. Challenges in process monitoring and control Harsh environment Real-time and reliability requirements WirelessHART
E N D
Priority Assignment for Real-Time Flows in WirelessHART Networks Abusayeed Saifullah, You Xu, Chenyang Lu, Yixin Chen
Motivation Process control • Challenges in process monitoring and control • Harsh environment • Real-time and reliability requirements • WirelessHART • Open wireless sensor-actuator network standard for process industries • Fixed-priority transmission scheduling for real-time flows in WirelessHART networks • Priority assignment has major impact on schedulability Wireless Sensor-Actuator Network Controller
WirelessHART Network Model • Components • A gateway, field devices (sensors and actuators) • A network manager: creates and distributes the schedule • Time Division Multiple Access • Spectrum diversity • Multi-channel (defined in IEEE 802.15.4) • Every transmission happens on a different channel in a time slot • Route diversity 3
Real-Time Flows • Sensor-controller-actuator flow through multiple routes • Considered an individual flow through each route • The set of n flows is denoted by F • Each flow is characterized by • A source (a sensor node), a destination (an actuator), route through the gateway (where controllers are located) • Aperiod Tb • A deadline Db ( ≤ Tb) • Total number of transmissionsCb along the route • F is schedulable by an algorithm: if end-to-end delay
Priority Assignment • Priority assignment • A one-to-one function: • Priority is higher than iff • Acceptable priority assignment for schedulability test S • If F is deemed schedulable by S under • A priority assignment algorithm is optimal for a schedulability test if it can find an acceptable assignment whenever one exists • Goal: Optimal and efficient priority assignment for a schedulability test based on worst-case delay analysis
Search Space for Priority Assignment Search space can be pruned by exploiting some properties of schedulability tests The search space for an optimal assignment is of exponential size n options … Priority: n n-1 options n-1 options … … … Priority: n-1 1 option 1 option 1 option 1 option 1 option … Priority: 1
Priority Assignment Approach • Priority assignment ffrom lower to higher levels • Assign priority nto some flow others have higher-priority (hp) • Level n assignment is valid if flow f(n) can meet deadline • Repeat for subsequent higher priority levels • Approach is similar to Audsley [1] on CPU scheduling • Optimal priority assignment for a schedulability test • Can be found if we can estimate the end-to-end delay of a flow based on its hp flows • Question: How can we estimate the worst-case end-to-end delay of a flow if we know its hp flows? [1] Audsley., N. C. On priority assignment in fixed priority scheduling Inf. Proc. Letters, 79(1)
Existing Schedulability Test • [RTAS 2011] End-to-end delay bound of a flow consists of • Transmission conflict delay: does not depend on delays of higher priority (hp) flows, and can be determined if hp flows are known • Channel contention delay:determined based on response-time analysis for global multiprocessor scheduling • Schedulability tests can be categorized into 2 classes • Class-1 test: Worst-case delay of a flow is different for different ordering of hp flows • Class-2 test: Worst-case delay of a flow can be determined if hp flows are known In these 2 priority assignments, flow b has different delays even though its hp flows are the same. 1 2 …priority… 8 9
Class-1 Test • Example: when channel contention delay is determined based on response time analysis in [Guan et al. RTSS ’09] • Monotonically non-decreases with worst-case delays of hp flows • Priority Assignment: search space is pruned using upper/lower bounds of end-to-end delays of the flows • Determining lower/upper bound of a flow’s end-to-end delay • When hp flows are known, we can precisely determine conflict delay • Upper/lower bounds of hp flows are initialized using their deadline, number of transmissions , and conflict delay • Upper/lower bound is determined from the bounds of its hp flows • Conflict delay is a dominating term in end-to-end delay tightness
Class-2 Test • Example: when channel contention delay is determined using response time analysis in [Bertogna et al. TPDS 20(4)] • Priority Assignment • Worst-case delay of a flow can be determined if hp flows are known • Priority assignment is a lot simpler • Starting from the lowest priority, if any flow can meet deadline at some priority level, then that priority can be assigned to that flow
Priority Assignment Based on Branch & Bound (B&B) • Now we generalize the idea into a B&B framework for both Class-1 and Class-2 tests • Optimal and complete algorithm for any test based on worst-case delay • Search starts assignment from the lowest priority level • A node at level l in the search tree assigns priority l
Branch & Bound (B&B) • Branching: l-1 ways to assign priority l-1 there may be l-1 branches from a node at level l • Bounding and pruning for Class-1 test • Sufficient branch: at a node at level l, if upper bounds for flows f(l) and its lower-priority (lp) flows do not exceed deadline • Unnecessary branch: at a node at level l, if lower bound for f(l) or some of its lp flows exceeds deadline • Bounding and pruning for Class-2 test • Class-2 is handled as a special case • Lower bound and upper bound are the same necessary and sufficient branches are the same one root-to-leaf path
Selecting a Sufficient Branch in B&B Priority: n • At any time, priority assignment from • level n to k+1 is final, where variable k • is updated as the tree branches down • There are necessary branches in the • tree from level k to level l priority • assignment from level k to l is not final • In any branch, if upper bounds of • worst-case delays of flows f(k), f(k-1), • … f(l+1), f(l) do not exceed deadline, • discard all other branches Priority: n-1 guaranteed Priority: k+1 Priority: k k-1 not guaranteed Test at this node ?? ?? ?? undecided
Discard Unnecessary Branch in B&B Priority: n Priority: n+1 • Priority level n to k+1 is final • There are necessary branches from • level k to level l • At a node at level l, if lower bound • of worst-case delays of any of f(k), • f(k-1), … f(l+1), f(l) exceeds deadline, • discard the branch guaranteed Priority: k+1 Priority: k not guaranteed k-1 Test at this node ?? ?? ?? undecided
Heuristic Search (HS) • B&B can take a long time if a sufficient branch is not found quickly • HS uses the same search strategy but relaxes the condition for picking a “sufficient” branch • At a node at level l, if upper bound of worst-case delay of f(l) does not exceed deadline, discard all other branches • Does not guarantee that all lp flows of f(l) meet deadlines • Yet can produce an effective priority assignment • Runs in pseudo-polynomial time in optimal cases • Number of channels ≥ number of flows • Schedulability test is of Class-2
Evaluation • Real network topologies • Testbed of 48 TelosB motes • Random topologies • Baselines • Deadline monotonic (DM) • Simulations • Metrics • Acceptance ratio • Execution time Testbed topology
Simulation with Testbed Topology Number of nodes: 48 Number of channels: 12 Schedulability test: Class-1
Acceptance Ratio in Random Topology 80% of total nodes are sources/destinations Number of channels=12
Execution Time in Random Topology 80% of total nodes are sources/destinations Number of channels=12
Conclusion • WirelessHART is an important standard in process industry • Priority assignment is required for enhanced schedulability of real-time flows • Contributions towards priority assignment for real-time flows in WirelessHART networks • Classification of schedulability tests • Lower/upper bounding the delays • Optimal priority assignment based on branch & bound • Heuristic search • Evaluation on testbed topology and random topologies • HS achieved near-optimal performance in practice • HS is efficient in large WirelessHART networks