230 likes | 365 Views
Ripple: A Distributed Medium Access Protocol for Wireless Mesh Network. Presented at the IEEE802.11, 802.15, 802.18, 802.19, 802.20, 802.21 & 802.22 Interim Meeting , May 2004 by Ray-Guang Cheng ( crg@mail.ntust.edu.tw ), Cun-Yi Wang (M9202226@mail.ntust.edu.tw),
E N D
Ripple: A Distributed Medium Access Protocol for Wireless Mesh Network Presented at the IEEE802.11, 802.15, 802.18, 802.19,802.20, 802.21 & 802.22 Interim Meeting, May 2004 by Ray-Guang Cheng (crg@mail.ntust.edu.tw), Cun-Yi Wang (M9202226@mail.ntust.edu.tw), Jen-Shun Yang (jsyang@itri.org.tw)
Outline • Motivation • Lessons Learned from the Nature • Our Solution • Algorithm of Ripple Protocol • An Example • Appendix Slide 2
Motivation:Collision due to Hidden Node Multi-hop Forwarding Slide 3
Motivation:Optimal forwarding Source: IEEE P802.11 TGs 11-04/0709r2 n n+1 Spatial Reuse Distance n+2 n+3 n+4 Multi-hop Forwarding Slide 4
Observations • Existing MAC mechanisms • Random access mechanism • Performance degradation caused by • Hidden/exposed nodes • exponential backoff • Performance is severely degraded when the network is heavy loaded • Could we have better solutions? • Prerequisites • Distributed protocol Slide 5
Lessons Learned from the Nature Optimum duration Spatial reuse distance Ripple Effect Slide 6
Our Solution: Ripple Protocol • Approaches • Adopts controlled access mechanism • To prevent from unintentional frame collisions • To eliminate exponential backoff • Uses RTS/CTS to prevent from hidden node problem • Utilizes spatial reuse to improve utilization Slide 7
1 3 Spatial reuse distance … RX RX TX TX Our Solution: Ripple Protocol (cont.) • Q: What is the optimum network utilization if spatial reuse is utilized? • A: Slide 8
System Model • Targeted Application Environment • Wireless backbone (backhaul) system • high data rate is provided by mesh links • Basic assumption • Tree Topology • Non-mobile Mesh Points and Mesh AP • routing path has been determined • One-hop radio coverage • Separate channels are assigned for downlink and uplink paths • Unidirectional data-frame delivery Slide 9
Network Topology:Tree Slide 10
Frame Formats • DATA frame: DATA frame carries user information. The time required to transmit the DATA frame is a constant. • NULL frame: NULL frame is a DATA frame but carries no information. • RTS frame: a node, which has the right to send a DATA frame, will send an RTS frame. • CTS frame: the target node that receives an RTS frame will responses a CTS frame. • Ready-to-send (RTR) frame: a node, which has the right to receive a DATA frame, will send an RTR frame to the sender if the expected RTS frame is not received. • ACK frame: a node receives a DATA frame correctly will response an ACK frame. Slide 11
Operational States • Transmit (TX) state: a node which is ready to send a DATA frame will enter this state. • Receive (RX) state: a node which is ready to receive a DATA frame will enter this state. • Listen state: a node which is a hidden node (i.e., CTS frame is overheard) or an exposed node (i.e., RTS frame is overheard) or both will enter this state. • Idle state: a node which has interrupted by unexpected conditions during TX, RX, and Listen states will return to this state. The idle state is also the initial state for all nodes. Slide 12
Algorithm of Ripple Protocol • Basic concept: • Sender: send RTS • Receiver: send RTR if RTS is not received • Child nodes of a cross node are forbidden to send RTS or RTR • Downlink: • State transition: • RX mode TX mode Listen mode RX mode … • Current state next frame behavior • RX mode send RTS • Listen mode send RTR if RTS is not received • Child nodes of a cross node cannot send RTR • Uplink: • State transition: • TX mode RX mode Listen mode TX mode … • Current state next frame behavior • TX mode send RTR if RTS is not received • Listen mode send RTS • Child nodes of a cross node cannot send RTS Slide 13
Em … E2 E1 A1 A2 Bj B2 B1 C1 Ai … … Internet D1 Dk … D2 Topology of an Example C1: could be a super node Cross Mode Chain Mode Root Node Slide 14
DATA DATA DATA DATA DATA DATA DATA DATA Node RTS RTR RTR ACK ACK RTS RTS ACK ACK CTS RTS ACK CTS RTS CTS ACK ACK CTS RTS CTS Listen Listen Listen Listen Listen Listen Listen Listen A2 Idle A3 TX Spatial reuse distance “ripple effect” Trigger A4 RX TX TX TX TX TX TX TX TX RX RX RX RX RX RX RX Idle C1 Idle B1 TX B2 RX B3 … Time Downlink transmission- Chain Mode Slide 15
Thank you for you attention! crg@ieee.org Slide 16
Receive RTR or CTS, and wait for SIFS TX Overhear RTS, CTS, RTR Receive DATA RX Listen Receive DATA Receive RTR or CTS, and wait for SIFS Overhear RTS, CTS, RTR DATA Timeout Idle CTS or RTR Timeout Overhear CTS or RTR Timeout State Transition Diagram: Downlink Slide 18
Receive DATA RX Overhear RTS, CTS, RTR Receive RTR or CTS, and wait for SIFS TX Listen Receive DATA Receive RTR or CTS, and wait for SIFS Overhear RTS, CTS, RTR DATA Timeout Idle CTS or RTR Timeout Overhear CTS or RTR Timeout State Transition Diagram: Uplink Slide 19
DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA DATA RX TX RX RX TX RX TX RX TX TX TX RX RX TX TX RX TX RX TX TX RX RX TX TX RX RX TX TX RX RX TX RX TX TX RX RX TX RX RX TX RX TX TX TX RX TX RX Idle Idle Idle Idle Idle Idle Idle Idle Idle Idle Idle Idle ACK RTS CTS ACK RTS CTS ACK CTS ACK RTS ACK RTS CTS ACK RTR CTS CTS RTS CTS CTS RTS RTS ACK RTS CTS RTR ACK ACK RTS ACK CTS ACK RTS ACK RTS RTS CTS CTS ACK RTS CTS ACK RTS RTS ACK CTS ACK RTS CTS ACK ACK ACK RTR CTS ACK ACK RTS ACK RTS CTS ACK RTS RTR CTS RTS RTR CTS ACK RTS CTS RTS RTS ACK CTS ACK RTS ACK Listen Listen Listen Listen Listen Listen Listen Listen Listen Listen Listen Listen Listen Listen Listen Listen Listen Listen Listen Listen Node A1 A2 A3 A4 A5 A6 A7 “ripple effect” A8 A9 A10 A11 A12 A13 A14 Slide 20 time
DATA DATA DATA DATA DATA DATA DATA Node RTS RTR CTS ACK RTS ACK CTS ACK ACK RTR CTS RTS RTR ACK CTS ACK ACK RTS “ripple effect” Listen Listen Listen Listen Listen Listen A2 A3 A4 Trigger TX TX TX TX TX TX TX RX RX RX RX RX RX C1 Idle Idle B1 B2 B37 Time Timing Diagram of an Example: Uplink Slide 21
Achievements of Ripple Protocol • Mitigate performance degradation caused by hidden and/or exposed nodes • Flow Control over Multi-hop paths to avoid performance degradation and/or meet QoS goals • Coordinating channel access across multiple nodes to avoid performance degradation and/or meet QoS goals in the multi-hop network • Traffic prioritization within a WLAN Mesh • Mesh link communication coordination • Support for admission control • Support for multiple classes of traffic • Improving Spatial Reuse in a mesh network Slide 22
Ripples Conflict in Cross Node • Solution • Apply Scheduling Algorithm in cross node to determine the precedence of the cross paths. To root gateway Slide 23