2014-03-04 26 views

回答

0

你的問題不清楚。基於我的理解,我編輯了你的問題。

我假設你想實現多個路由協議來評估他們在各種情況下的性能。

如果您在ad hoc中一次運行多個路由算法,它會使用路由請求和回覆數據包來洪泛網絡。在特別情況下,帶寬和能量是有限的。數據包丟失將增加並且需要重新傳輸。因此不建議運行多種算法。請逐個記錄算法的詳細信息並比較這些值。

0

如果我正確理解你的問題,你想同時測試兩個路由協議(例如AODV和DSR)。如果是這樣,並且如果部署兩個ns-2實例不適合您,則可以嘗試將ns-2內容複製到其他位置並同時運行兩個相同版本的ns-2,每個對應一個路由協議。另一方面,如果你想要在同一個網絡中部署兩個路由協議,由於上一個答案中給出的原因,它將不能很好地工作。

0

如果您有兩組節點,每組有5個節點,第一組運行AODV協議,第二組運行DSDV,您可以按照以下方式進行操作。

for {set i 0} {$i < 5} {icnr i}{ 
$ns_ node-config -adhocRouting AODV 
set node_($i) [$ns_ node] 
} 

for {set i 5} {$i < $val(nn)} {icnr i}{ 
$ns_ node-config -adhocRouting DSDV 
set node_($i) [$ns_ node] 
} 
0

在一個平面上運行多個協議的主要目的是實現異構路由協議之間互操作性的一個步驟。爲此,我創建了一個網關節點,它將提供不同路由協議之間的互操作性,以實現它們之間的通信。 阿里感謝您的代碼片段,它非常有用。