290 likes | 419 Views
課程參與度之評估方式. 上課時必須專心聽講,跟上進度,參與討論 扣分項目 玩線上遊戲一次扣 1 分 玩手機一次扣 1 分 睡覺一次扣 1 分 聊天一次扣 1 分 無法回答老師提出的問題一次扣 1 分 加分項目 主動回答老師的問題一次加 2 分 找出老師程式中的錯誤一次加 1 分 修正老師程式中的錯誤一次加 4 分. 無線通訊網路 CH09 無線隨意網路廣播問題. 鄧姚文. 大綱. 廣播風暴問題 Broadcast Storm Problem 應用 於移動無線隨意網路的廣播技術. 概述. 廣播 Broadcast 將 一個訊息傳送網路裡的每一個節點
E N D
課程參與度之評估方式 • 上課時必須專心聽講,跟上進度,參與討論 • 扣分項目 • 玩線上遊戲一次扣1分 • 玩手機一次扣1分 • 睡覺一次扣1分 • 聊天一次扣1分 • 無法回答老師提出的問題一次扣1分 • 加分項目 • 主動回答老師的問題一次加2分 • 找出老師程式中的錯誤一次加1分 • 修正老師程式中的錯誤一次加4分
大綱 廣播風暴問題 Broadcast Storm Problem 應用於移動無線隨意網路的廣播技術
概述 • 廣播 Broadcast • 將一個訊息傳送網路裡的每一個節點 • 例如 • 廣播 RREQ 探索路由 • 氾濫 Flooding • 像洪水一般… • 重播 Rebroadcast
9.2 廣播風暴問題 • 在無線隨意網路中,節點使用 Flooding 氾濫式傳輸讓網路上所有節點皆能收到廣播訊息 • 若收到之前沒收過的封包,將此封包重播出去 • 若網路裡有 n 個節點,一個封包將被傳輸 n 次 • 泛濫式傳輸的缺點: • 冗餘重播(Redundant Rebroadcast) • 媒介競爭(Medium Contention) • 封包碰撞(Packet Collision)
9.2 廣播風暴問題 Flooding 要送 7 次 5 次 是多餘的 Flooding 要送 4 次 2 次 是多餘的 9.2.1 冗餘重播
9.2 廣播風暴問題 9.2.1 冗餘重播
9.2 廣播風暴問題 額外的訊號覆蓋區域 9.2.1 冗餘重播
9.2 廣播風暴問題 • 9.2.2 媒介競爭 • 因為無線隨意網路中沒有基地台或接取點,網路上的節點,在 IEEE 802.11 DCF 機制運作下,媒介的競爭及封包的碰撞都是常常有機會發生的。
9.2 廣播風暴問題 • 9.2.3 封包碰撞 • 一個節點傳送廣播封包,多個節點聽到廣播 • 如果節點周圍沒有其它節點在傳輸,且鄰居節點也都隨機後退。當鄰居節點收廣播封包後,立即重播訊息,造成碰撞。 • 廣播訊息沒有 RTS/CTS,碰撞造成的封包遺失問題很嚴重。 • 沒有碰撞偵測機制,碰撞後持續送完封包,浪費網路資源,損壞的封包可能再與其它封包碰撞
9.3 應用於移動無線隨意網路的廣播技術 氾濫式 Flooding 基於機率的方式 Probability Based 基於區域的方式 Area Based 鄰居資訊方法 Neighbor Knowledge 基於叢集的方式 Cluster Based
氾濫式 Flooding • 簡單氾濫式 (Simple Flooding) • 最容易造成廣播風暴 • 若節點密度稀疏或節點移動快速,氾濫式廣播反而可以讓每一個節點都收到訊息 • 簡單,有效
基於機率的方式 Probability Based • 機率方案(Probabilistic Scheme) • 以一個機率值 P 決定是否重播 • P=1: Flooding • 重播前隨機延遲 Random Delay • 錯開時間 • 避免碰撞 • 隨機減少冗餘封包
基於機率的方式 Probability Based • 計數基礎方案(Counter-Based Scheme) • 接收到愈多次同樣的廣播,越不需要重播 • 額外訊號覆蓋區域比較小 • 重播前等一下,聽聽其他節點在送什麼? • 計數值 C • C >= 門檻值,不重播
基於區域的方式 Area Based • 靠近廣播源頭的節點,重播封包的額外覆蓋區域比較小 • 比較可能造成多餘的重播 • 重播效益比較小
基於區域的方式 Area Based • 距離基礎方案(Distance-Based Scheme) • 兩個節點之間的相對距離愈短,額外訊號覆蓋區域越小 • 以鄰近節點的訊號強度判斷距離 • 不重播 • , Q rebroadcasts the same message
基於區域的方式 Area Based • 位置基礎方案(Location-Based Scheme) • 精確估計重播訊息的額外訊號覆蓋區域大小 • 節點是否位於發出相同廣播訊息節點所形成的凸多邊形之中?
鄰居資訊方法 Neighbor Knowledge 利用節點的鄰居資訊,決定哪些節點可以不參與廣播 減少重播的節點數目 可以加入延遲傳輸,減少封包碰撞的問題
鄰居資訊方法 Neighbor Knowledge • 自我修剪泛濫式方法(Flooding with Self-Pruning) • 每個節點有一個節點跳躍距離(1-Hop)內的鄰居節點資訊 • 傳送廣播封包時,將鄰居資訊存放於廣播封包的標頭內 • 接收到廣播封包的節點,從鄰居資訊判斷重播封包是否可以傳送資訊給額外的節點 • 如果不行,就不重播;反之,則重播廣播封包
鄰居資訊方法 Neighbor Knowledge • 可變動廣播演算法(Scalable Broadcast Algorithm, SBA) • 延伸上一個方法,每個節點需要知道兩個節點跳躍距離(Two Hop)的鄰居資訊 • 不在封包的標頭加入鄰居資訊 • 1-Hop 距離內的鄰居以 HELLO 封包彼此交換訊息 • 在 HELLO 內加入目前已知的鄰居資訊 • R和S的共同鄰居們全部都已經收到廣播封包 • 重播的判斷:R是否還有鄰居沒有收到?
鄰居資訊方法 Neighbor Knowledge • 多點傳達方法(Multipoint Relaying) • 由傳送端選擇哪些鄰居節點要負責重播廣播訊息 • 被指定的節點稱為多點傳達點 • 只有多點傳達點允許重播 • 選擇資訊放在 HELLO 裡 • 挑選多點傳達點: • 找尋只能藉由某些個特定鄰居節點才能到達的兩個節點跳躍鄰居,將這些特定鄰居設定為多點傳達點。 • 利用目前的多點傳達點能到達的鄰居資訊,產生一個覆蓋集合(Cover Set)。 • 在剩下未選為多點傳達點的鄰居中,選擇一個能夠覆蓋最多不屬於覆蓋集合之兩個節點跳躍的鄰居節點。 • 回到步驟 2 繼續執行,直到所有兩個節點跳躍鄰居都被覆蓋為止。
鄰居資訊方法 Neighbor Knowledge • 隨意廣播協定(Ad Hoc Broadcast Protocol, AHBP) • 類似 Multipoint Relaying • 被指定重播的節點稱為廣播傳達閘門(Broadcast Relay Gateway) • 不同:兩節點跳躍距離內的鄰居資訊位於廣播封包中,每個收到廣播的廣播傳達閘門,可以知道此廣播訊息有哪些鄰居也接收到,之後在選擇傳達閘門時不必將這些點納入考慮
群集基礎方法 Cluster Based 假設每個節點會定期傳送封包讓周圍的鄰居知道他的存在。 每個節點可以知道與哪些節點之間有連結、可以直接傳輸資料。 每個節點都有一個唯一的身份辨識值(ID) 區域內最小 ID 的節點選為群集首(Cluster Head) 群集首及其周圍的鄰居形成一個群集,這些鄰居的節點稱為群集成員 在一個群集中可以和其它群集溝通、傳輸資料的節點稱為閘道(Gateway)節點。
群集基礎方法 Cluster Based 群集首重播訊息的範圍包含群集中的其它所有成員 若要將廣播訊息傳遞給其它的群集,由閘道成員重播此訊息給其它群集。 非閘道成員的節點不需要參與廣播 可以減少廣播風暴的問題
綜合比較 • 不使用媒體存取控制 • 若節點密集:所有的方法皆OK • 若節點稀疏: • Location Based成功率只有 87% • Probabilistic Scheme 優於 Counter-Based • 使用媒體存取控制 • 網路狀況不佳時 Counter-Based 表現較差 • 簡單的演算法比較有優勢