NS3
NS3
NS3是一個離散事件模擬器,旨在滿足學術研究和教學的需求。NS3項目是一個始於2006年的開源項目,負責開發ns3軟體。 NS-3並不是NS-2的擴展,而是一個全新的模擬器。
“NS3項目”的主要文檔由四部份組成:
l NS3Doxygen/Manual:模擬器公共API的說明文檔
l Tutorial(本教程)
l Reference Manual:參考手冊
l NS3 wiki (NS-3維基百科)
(1) NS-3並不是NS-2的擴展,而是一個全新的模擬器。雖然二者都由C++編寫的,但是NS-3並不支持NS-2的API,而是一個全新的模擬器。NS-2的一些模塊已經被移植到了NS-3。在NS-3開發過程時,“NS-3項目”會繼續維護NS-2,同時也會研究從NS-2到NS-3的過渡和整合機制。
(2)對於熟悉NS2的使用者來說,當他轉入使用NS3時,NS3和NS2最明顯的變化是腳本語言選擇。NS2使用OTcl腳本語言,模擬的結果可以利用網路動畫模擬器nam(Network Animator nam)來演示。在NS3中,僅僅使用C++語言而不使用OTcl語言,運行模擬是不可能的(例如,在main()函數中沒有任何OTcl語言)。另外,NS2的許多模塊由C++編寫,還有一部分是用OTcl語言編寫。而在NS3中,模擬器全部是由C++編寫,僅僅帶有選擇性的Python語言綁定。因此,在NS3中模擬腳本可以由C++或者Python語言來編寫。許多模擬結果可以通過nam來演示,但是新的動畫演示器也正在開發之中。由於NS3可以生成pcap包trace文件,也可以用其他工具通過trace文件來分析模擬過程。
(3) NS3和NS2有一些相似之處(比如二者都是基於C++對象,一些NS2的模塊已經移植到了NS3上)。
(4)我們經常聽到一個疑問:“我到底是要繼續使用NS-2,還是轉向NS-3呢?”答案是視情況而定。雖然NS-3現在還沒有包含所有的NS-2模塊,但是另一方面,NS-3也有一些新的功能(比如,能正確地處理節點上的多重介面,使用IP地址,與網際網路協議和設計更一致,和更加詳細的802.11模塊等)。Ns-2的模塊可以被移植到NS-3中(移植幫助文件正在開發之中)。NS3的多個方面都在積極開發之中。同時,ns3開發者也相信(部分早期使用者也已證明)NS3已經可以充分被使用,也是用戶進行新模擬項目時的一個富有吸引力的選擇。