推導純ALOHA協議的效率
在日語中,“Aloha”通常表示“你好”。它工作在OSI模型的MAC層。多路訪問協議是一組用於避免串擾並實現高效傳輸的協議。當資料在沒有特定通道的主機之間傳輸時,可能會存在資料衝突和串擾的較高可能性。在這種情況下,使用ALOHA(一種隨機訪問協議)可以提高效率。
計算機系統中的ALOHA
ALOHA是一種多路訪問協議。使用此協議,來自不同節點的任意數量的資料流都可透過傳輸通道傳送。在ALOHA協議中,每個資料都在不檢查傳輸介質是否繁忙的情況下發送。如果兩個以上的資料嘗試佔用相同的通道,則會發生衝突,並且過程停止並重新傳輸到主機。
ALOHA協議指南
任何主機站都可以隨時將資料傳送到傳輸通道。透過使用多個通道,資料包的衝突和丟失很容易發生。資料啟動(即載波偵聽)所需的時間為零,因為資料是在沒有任何檢查過程的情況下傳輸的。此協議中也不提供衝突檢測,並且幀在特定時間段後重新傳輸。
ALOHA的型別
ALOHA協議主要有兩種型別:
1. 分時ALOHA
與ALOHA協議類似,任何站點都可以在傳輸通道上傳送資料,但僅限於分配的時間段內。因此,它遵循離散時間並全域性同步。
2. 純ALOHA
當主機需要在站點進行資料傳輸時,它可以在任何時間進行。資料傳輸一次後,站點等待一段時間以獲取接收端發來的確認。此方法用於避免資料衝突。在資料傳輸過程中可能存在兩種情況:
資料已接收 - 它在給定時間內等待接收方響應,如果未收到,則再次等待隨機時間(稱為回退時間)以獲取響應。
資料丟失 - 如果仍然未收到確認,則站點認為資料包可能已丟失,並再次重新傳輸資料包。
純ALOHA的回退時間
此策略在純ALOHA協議中起著至關重要的作用。當未收到資料包確認時,站點會等待更長一段隨機時間,或者等待時間稱為回退策略。
回退時間 (Tb) = k * RTT(往返時間)
其中k是站點選擇的數字,一個RTT等於一個時隙。
純ALOHA的易損時間
易損時間是發生資料包衝突的時間。如果第一個幀“A”在任何特定時間t傳送,在資料完全傳輸之前,並且其他幀“B”在幀“A”完成之前開始,則會導致衝突。
發生衝突時的易損時間 (Vt) = 2 * Tt
其中Tt是幀的傳輸時間。
易損時間也稱為傳播時間或從站點傳輸完整資料包所花費的總時間。
$$\mathrm{易損時間\:=\:\frac{(訊息長度)}{(傳輸通道頻寬)}}$$
純ALOHA的通道吞吐量
這裡“G”是幀傳輸時間段內透過通道傳輸的平均幀數。當資料包成功或完整地傳輸到接收端時,資料包的機率如下所示:
最大效率
為了找到站點在資料包傳輸期間的最大效率,讓我們取傳輸的平均幀數為1和1/2。
成功純ALOHA的吞吐量或效率,$\mathrm{S\:=\:G\:*e^{-2G}}$
要消除指數,對兩邊關於G進行微分:
$$\mathrm{\frac{\partial\:S}{\partial\:G}\:=1.(0)(e^{-2G})}$$
$$\mathrm{\frac{\partial\:S}{\partial\:G}\:=\:0}$$
因此,當G=1/2時出現最大效率,並將G值代入吞吐量方程。
$$\mathrm{S\:=\:\frac{1}{2}\:*e^{-2(\frac{1}{2})}}$$ [因為e^(-1)的值為0.367879]
$$\mathrm{S\:=\:\frac{1}{2}\:*e^{(-1)}}$$
$$\mathrm{S\:=\:\frac{1}{2}\:*\:0.367879}$$
$$\mathrm{S= 0.1839395}$$
純ALOHA的效率百分比為18.39%,由於衝突次數過多,因此非常低。
結論
在計算機網路中,訪問控制是在傳輸過程中控制站點的過程。ALOHA是一種隨機訪問協議,由兩種型別組成。其中,由於純ALOHA的簡單性和易於實現,因此比分時ALOHA具有更多優勢。分時ALOHA中的資料包衝突次數少,而純ALOHA中的衝突次數多。
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP