當然有問老師的好像才會知道答案= =(我問了不過寫錯了)
以下我解釋一下我的答案,有錯請跟我聯絡討論~謝謝!
(本內容的圖片有著名來源的為逢甲大學專題報告中的圖片,其餘為自己製作)
以下為小考問題題目
4.How does the CSMA/CA solve the “hidden terminals” problem? “Exposed terminals” problem?
答:
假使黃色是A的傳訊範圍,藍色是C的傳訊範圍,B則位於中間交集部分,如圖一所示。
圖片一
但是A和C彼此不在對方收訊範圍。因此現在A欲傳給B然而C並不知道,因為他不在接收範圍內,則C也在這時傳送給B時,那麼就會造成了collision,這就是hidden terminal problem(終端隱匿問題),如圖二.
圖片二(本圖來自逢甲大學專題報告中)
因為hidden terminal problem 很嚴重,所以加入了RTS/CTS的機制。
(註: 傳送要求RTS:Request To Send, 允許傳送CTS:Clear To Send)
當A要送DATA給B時會先傳送RTS,若B允許了,則傳CTS用broadcast方式傳遞給在範圍內的所有node(節點),因此在B範圍中的C就會知道。別人正在和B做傳輸動作,而C則會採取backoff random time的方式做等待,這樣一來,就不會造成大量DATA都白白浪費時間,頂多浪費一開始的RTS小小packet
如果要防止hidden terminal 而把transmission range 變大的話,則會造成exposed Terminal 。
譬如ABCD都在彼此的收訊範圍內,若D給C傳送RTS,而C傳遞broadcast CTS則ABD都會接收到,按照原本規則,現在AB都要做backoff 的等待動作,然而如果A是要和B互傳,照理說是應該可以傳,但現在卻變成不能傳了,這就是exposed Terminal(終端機暴露),如圖三a。
圖片三(本圖來自逢甲大學專題報告中)
而要怎麼解決這個問題呢?
解決的原因如下(轉貼至維基百科)
IEEE 802.11 RTS/CTS mechanism helps to solve this problem only if the nodes are synchronized. When a node hears an RTS from a neighboring node, but not the corresponding CTS, that node can deduce that it is an exposed node and is permitted to transmit to other neighboring nodes.If the nodes are not synchronised the problem may occur that the sender will not hear the CTS or the ACK during the transmission of data of the second sender |
簡單的解釋就是:
因為會發生exposed Terminal 這個問題,所以IEEE 802.11就定義:
ABCD都在彼此的收訊範圍內,當一個節點A接收到一個附近的節點C傳送的CTS時(注意此CTS主要是要傳送給D的),則該節點A、B可以推斷,自己是一個暴露節點而允許自己還可以向其他鄰國節點傳送RTS,如圖三(b)。
以上是我的解釋、翻譯,有問題請聯絡我一同討論~!
沒有留言:
張貼留言
俗話說
凡走過必留下痕跡,凡住過必留下鄰居
凡爬過必留下樓梯,凡來過必留下IP
看過文章之後歡迎留下您寶貴的意見喔!