370 likes | 543 Views
Fast Broadcast in High-Speed Networks. Ajei Gopal, Inder Gopal and Shay Kutten. Presented By Nuthan M. Sarpangala Divya Rajesh Urmil Shah. Why Flooding protocols are unsuitable for High-Speed Networks ?. Each node - Maintains a software history of prior messages it received.
E N D
Fast Broadcast in High-Speed Networks Ajei Gopal, Inder Gopal and Shay Kutten Presented By Nuthan M. Sarpangala Divya Rajesh Urmil Shah
Why Flooding protocols are unsuitable for High-Speed Networks ? • Each node - • Maintains a software history of prior messages it received. • Performs a software search to determine whether or not to forward the message it received. -With increasing network speeds, software search becomes a bottleneck. Fast Broadcast in High-Speed Networks
Getting around the bottleneck • Implement the search directly in very high-speed hardware. • Devise a new broadcast protocol that does not require a software search. Fast Broadcast in High-Speed Networks
Objectives • Design fast distributed Broadcast protocols for a • high-speed arbitrary-topology point to point network which • Broadcasts control messages at hardware speed. • Is tolerant of failure involving loss of message. Fast Broadcast in High-Speed Networks
Problem Rationale • Links are typically reliable. • Nodes have instantaneous knowledge of the state and loading conditions of links in the network. • Events like link failure, recovery & congestion occur relatively infrequently. • Dissemination time is critical in ensuring a stable network. Fast Broadcast in High-Speed Networks
Assumptions • No conflicting Broadcasts. • Upper bound on the link delay is τ. • Failures are due to transient network conditions and not due to permanent removal of a node or link. • Links are FIFO and cannot generate or reorder messages. Fast Broadcast in High-Speed Networks
Problem Formalization • Reliable Broadcasts: Ensures that all messages are delivered reliably and that the message traffic caused by every broadcast rapidly quiesces even under circumstances of failure. • Control Broadcasts: Weaker than reliable broadcasting, as it ensures reliable message delivery only in the absence of failure. Fast Broadcast in High-Speed Networks
Reliable Broadcast • Reliable-Delivery: If a node broadcasts a message m at some time t, then all nodes deliver m by time t + L, where L is a constant called the delivery bound. • Quiescence: If m is the last message broadcast, m is broadcast at time t, then no node sends a message after time t + Q, where Q is a constant called the quiescence bound. Fast Broadcast in High-Speed Networks
Control Broadcast • Delivery: If a node broadcasts a message m at some time t, and there are no failures between t and t + L, then all nodes deliver m by time t + L, where L is a constant called the delivery bound. • It also satisfies the quiescence property under all conditions. • If delivery is critical to a higher layer, it is ensured by a higher layer protocol. Fast Broadcast in High-Speed Networks
Network Model Node U Node V Network Control Unit - NCUU Network Control Unit - NCUV Switching Subsystem - SSU Switching Subsystem - SS V Bi-directional Communication Links Fast Broadcast in High-Speed Networks
What do SS & NCU do? SS • Message forward function is implemented in hardware. When SSu forwards m at time t, it does the following: • For all nodes v ε Neighbor(u), SSu sends m to SSv at time t. • SSusends m to NCUu at time t. • SS maintains a hardware clock and a boolean register state that can take two values – normal or exception NCU • On a request from higher level S/W to broadcast it send m to SS. • On receipt of m from SS delivers it to higher level S/W Fast Broadcast in High-Speed Networks
Higher-level Software Network Control Unit (NCU) Broadcast a message Deliver a message Switching Subsystem (SS) Communication within a node and between nodes Fast Broadcast in High-Speed Networks
Protocols • BASIC Protocol: -Hardware implemented • -Ensures rapid delivery and quiescence in absence of failure. • TIMER Protocol: A Control Broadcast that • - behaves like BASIC in absence of failure • - rapidly quiesces under conditions of failure. • RESPONSE Protocol: A Reliable Broadcast that guarantees • Quiescence property in case of failure & conflicting broadcasts • Ensures rapid delivery in all cases, provided network is connected. Fast Broadcast in High-Speed Networks
Protocol BASIC Part executed by NCU To broadcast a message m: NCU sends m to SS On receipt of a message m´: NCU delivers m´ Part executed by SS On receipt of broadcast message m and state = normal SS forwards m state := exception SS sets timeout to expire in 2 time On expiration of the timeout state := normal Fast Broadcast in High-Speed Networks
v1 v2 v3 v4 0 2 3 4 5 6 7 8 9 10 Fast Broadcast in High-Speed Networks
NOTE: • Under failure free conditions protocol BASIC works because it ensures a wave of exception state nodes is created from the source outwards, preventing a broadcast message from looping back and reentering a previously visited node. • In the non terminating broadcast , SS forwards m a second time breaking the “wave” of exception state nodes, and a broadcast message is permitted to re-enter a previously visited node • If each node stays in the exception state for long enough - until every one of its neighbors has entered the exception state - the “wave” is preserved and the broadcast quiesces. • Protocol TIMER and Protocol RESPONSE both implement this intuition. Fast Broadcast in High-Speed Networks
Lemma 3: Protocol BASIC does not ensure the quiescence property when processes may fail u4 u2 u1 u3 Fast Broadcast in High-Speed Networks
Lemma1: Suppose there are no failures and no conflicting broadcasts, Protocol BASIC guarantees that no node forwards the same message twice Theorem 2: Suppose there are no failures and no conflicting broadcasts, Protocol BASIC guarantees both quiescence and delivery within (D+2) time Fast Broadcast in High-Speed Networks
Protocol TIMER • Addresses the problem of non terminating broadcasts by forcing each node to remain in the exception state for a period of time that is larger than c where c is the number of nodes in the largest simple cycle that contains the node • c depends on a specific execution and hence is a priori unknown to each node. • Problem: node should find a appropriate approximation to c. • optimal solution : • first guess 2 and let each subsequent guess be twice as large as the previous one, for a total cost less than 2c units (in log c guesses) Fast Broadcast in High-Speed Networks
Part executed by NCU To broadcast a message m: NCU sends (m,t) to SS, where t is the current clock value On receipt of a message (m,t*): T = {t´/(m,t´) was received earlier} if (T = ) NCU delivers m set a timeout to expire in the SS at time(t* +2) else t´ = max{T} set a timeout to expire in the SS at time (t* +2(t*-t´)) Fast Broadcast in High-Speed Networks
Part executed by SS On receipt of broadcast message(m,-)at t and (state = normal): SS forwards (m,t) state := exception On expiration of the timeout: state := normal Fast Broadcast in High-Speed Networks
Lemma 4: Suppose SS forwards m for the ith time, i>0 at time t. Then SS enters the exception state at time t and reverts to the normal state no sooner than t+2 Theorem 5: Suppose there are no failures and no conflicting broadcasts, Protocol TIMER guarantees both quiescence and delivery within(D+2) time. Fast Broadcast in High-Speed Networks
Theorem 6: Protocol TIMER always quiesces Fast Broadcast in High-Speed Networks
v1 v2 v3 v4 0 2 3 4 5 6 7 8 9 10 Fast Broadcast in High-Speed Networks
PERFORMANCE OF TIMER Lemma 7: For any broadcast, v V such that: 1) The maximum number of times this node is visited during the broadcast is O (log2(n)); 2) The maximum possible time interval between the first visit by the broadcast to that node and the end of the broadcast is O(nτ) Lemma 11: The maximum number of times a broadcast may visit a particular node is O(nlogn).The time for the longest broadcast is O(nτlogn) Fast Broadcast in High-Speed Networks
Conflicting Broadcasts: Protocol TIMER cannot handle conflicting broadcasts. The concept of protocol Timer is extended to handle conflicting broadcasts as follows: 1. Each node maintains a set of Boolean Control Registers, ‘state-set’ instead of single register and it recognizes a set of message headers ‘fwd-set’ where |state-set| = |fwd-set| Thus by associating fwd[i] with the ith element of the fwd-set with state[i], permitting up to |state-set| conflicting broadcasts. 2. There are some context bits stored in the SS and in the header of the message ‘m’. Fast Broadcast in High-Speed Networks
cont. • Now when the SS is in ‘Exception’ state,and it receives a new message, it checks for the context bits. • If the context bits were different then it would alert the software. • SS instead of rejecting this message it forwards it to the NCU • NCU checks whether this was a duplicate message or it is a new broadcast and instructs the SS to forward or rebroadcast in the case of a new message. • Thus duplicate message is never broadcast again. Fast Broadcast in High-Speed Networks
FUNCTION Of NCU: To broadcast a message m: NCUu sends m to SSu On First Receipt of a message m' State’u’:= Exception NCUu delivers m' NCUu sends m' to all neighbors using a reliable data link protocol On receipt of a message m' from NCUv, v Neighbour(u); if for all w Neighbour(u), NCUu received m' from NCUw by the data link protocol State’u’:= Normal Fast Broadcast in High-Speed Networks
Function of SS: On receipt of broadcast message m and state’u’= Normal: SSu forwards m State’u’ := Exception Fast Broadcast in High-Speed Networks
NODE NCU SS Fast Broadcast in High-Speed Networks
PROTOCOL RESPONSE • More Reliable protocol.It guarantees quiescence in the case of failure or conflicting broadcasts. • It has a stronger model than the protocol BASIC and TIMER • NCU has more CONTROL on the State Registers in this protocol and dictates when the timer expires and state should change. • When the SSu first receives a message m from its neighbor and it is in the normal state , then it FORWARDS ‘m’ to its neighbors and also to its NCUu. Fast Broadcast in High-Speed Networks
Cont. • when NCUu receives the first copy of the broadcast message it too sends a copy of this to all its neighbors using a reliable data link protocol. • NCUu now waits for all its neighbors to give the copy of the message it had previously sent. • Here all the nodes sends the RECEIPT of ‘m’ instead of the complete message they received. • Only when the NCUu does not receive a RECEIPT from a particular node in a given TIME FRAME, it sends a copy of ‘m’ to that PARTICULAR NODE ONLY. • When it RECEIVES all the RECEIPT then it tells the SSu to go in a ‘normal’ State. Fast Broadcast in High-Speed Networks
Cont. • Here the SSu forwards the message ‘m’ at hardware speed and the involvement of NCU comes in picture after the message has been forwarded. • Thus the primary objective of sending message at hardware speed is accomplished. Although there is an overhead required during normal flooding algorithm. • Theorem 14: If there are no failures and no conflicting broadcasts, protocol RESPONSE guarantees delivery within (D+2)τ time Fast Broadcast in High-Speed Networks
CONCLUSION: • Protocol BASIC: • guarantees quiescence and delivery under failure free conditions • Protocol TIMER: • guarantees quiescence and delivery under failure free conditions • guarantees quiescence under failure conditions • handles non-terminating broadcast. • Both the above protocols can not handle conflicting broadcasts. Fast Broadcast in High-Speed Networks
CONCLUSION: • Protocol RESPONSE: • It has a more stronger model as compared to BASIC and TIMER • It guarantees quiescence and delivery in failure conditions and even in conflicting broadcasts. Fast Broadcast in High-Speed Networks
LIMITATIONS: * Many ASSUMPTIONS at the start make this as a weak model and is not practical to implement in the present network. * For Protocol RESPONSE, though the paper mentions about dealing with the conflicting broadcasts, it has not explained how it deals with such broadcasts. * After all such models, RESPONSE protocol looks good and stronger but then again we come to the point from where we started. - NCU has to maintain the history of all its neighboring nodes. Fast Broadcast in High-Speed Networks
- It has to set an individual timer for all the nodes to which it is sending the message, so after time out if it does not receive a copy it will transmit again -NCU has to process all the details and this involves lot of time and overhead. Fast Broadcast in High-Speed Networks