Cài đặt Network Simulator 2 (NS2) trên Ubuntu 14.04

theanh

Administrator
Nhân viên

1 Giới thiệu​

Trình mô phỏng mạng là công cụ được sử dụng để mô phỏng các sự kiện rời rạc trong mạng và giúp dự đoán hành vi của mạng máy tính. Nhìn chung, các mạng được mô phỏng có các thực thể như liên kết, bộ chuyển mạch, trung tâm, ứng dụng, v.v. Sau khi mô hình mô phỏng hoàn tất, nó được thực thi để phân tích hiệu suất. Sau đó, người quản trị có thể tùy chỉnh trình mô phỏng để phù hợp với nhu cầu của họ. Trình mô phỏng mạng thường hỗ trợ các giao thức và mạng phổ biến nhất hiện nay, chẳng hạn như WLAN, UDP, TCP, IP, WAN, v.v.

Hầu hết các trình mô phỏng hiện có đều dựa trên ứng dụng GUI như NCTUNS trong khi một số trình khác bao gồm NS2 dựa trên CLI. Mô phỏng mạng bao gồm việc cấu hình các thành phần trạng thái như liên kết, công tắc, trung tâm, thiết bị đầu cuối, v.v. và cả các sự kiện như tỷ lệ loại bỏ gói tin, trạng thái phân phối, v.v. Đầu ra quan trọng nhất của mô phỏng là các tệp theo dõi. Tệp theo dõi ghi lại mọi gói tin, mọi sự kiện xảy ra trong mô phỏng và được sử dụng để phân tích. Các trình mô phỏng mạng cũng có thể cung cấp các công cụ khác để tạo điều kiện phân tích trực quan các xu hướng và các điểm có sự cố tiềm ẩn. Hầu hết các mô phỏng được thực hiện theo các khoảng thời gian rời rạc, trong đó các sự kiện trong hàng đợi được xử lý lần lượt theo thứ tự.

Vì mô phỏng là một nhiệm vụ phức tạp, chúng tôi không thể đảm bảo rằng tất cả các trình mô phỏng có thể cung cấp kết quả chính xác hoặc đúng cho tất cả các loại thông tin khác nhau. Ví dụ về trình mô phỏng mạng là: ns, NCTUNS, NetSim, v.v.

ns2 là tên của một loạt trình mô phỏng mạng sự kiện rời rạc như ns-1, ns-2 và ns-3. Tất cả chúng đều là trình mô phỏng mạng sự kiện rời rạc, chủ yếu được sử dụng trong nghiên cứu và giảng dạy. ns2 là phần mềm miễn phí, được cung cấp công khai theo giấy phép GNU GPLv2 để nghiên cứu, phát triển và sử dụng.

Bài đăng này đề cập đến việc cài đặt "ns2" còn được gọi là "network simulator 2" trong Ubuntu 14.04.


2 Tải xuống và giải nén ns2​

Tải xuống gói tất cả trong một cho ns2 từ tại đây

Gói đã tải xuống sẽ có tên là "ns-allinone-2.35.tar.gz". Sao chép nó vào thư mục home. Sau đó, trong một thiết bị đầu cuối, hãy sử dụng hai lệnh sau để trích xuất nội dung của gói.:
Mã:
cd ~/[B]tar -xvzf ns-allinone-2.35.tar.gz
Tất cả các tệp sẽ được trích xuất vào một thư mục có tên là "ns-allinone-2.35".


3 Xây dựng các phụ thuộc​

Ns2 yêu cầu một số gói phải được cài đặt sẵn. Nó cũng yêu cầu GCC phiên bản 4.3 để hoạt động chính xác. Vì vậy, hãy cài đặt tất cả chúng bằng cách sử dụng lệnh sau:
Mã:
sudo apt-get install build-essential autoconf automake libxmu-dev
Một trong những phụ thuộc được đề cập là trình biên dịch GCC-4.3, hiện không còn khả dụng nữa và do đó chúng ta phải cài đặt phiên bản GCC-4.4. Phiên bản 4.4 là phiên bản cũ nhất mà chúng ta có thể tải xuống. Để thực hiện điều đó, hãy sử dụng lệnh sau:
Mã:
sudo apt-get install gcc-4.4
Hình ảnh bên dưới hiển thị đầu ra của cả hai lệnh trên. Nếu bạn đã cài đặt sẵn tất cả các phụ thuộc, như tôi đã làm, đầu ra sẽ trông giống như hình ảnh bên dưới:



Sau khi quá trình cài đặt hoàn tất, chúng ta phải thực hiện thay đổi trong tệp "ls.h". Sử dụng các bước sau để thực hiện thay đổi:

Điều hướng đến thư mục "linkstate", sử dụng lệnh sau. Ở đây, giả sử rằng thư mục ns được giải nén nằm trong thư mục home của hệ thống.
Mã:
cd ~/ns-allinone-2.35/ns-2.35/linkstate
Bây giờ hãy mở tệp có tên "ls.h" và cuộn đến dòng thứ 137. Trong đó, hãy thay đổi từ "error"[/b] thành "this->error". Hình ảnh bên dưới hiển thị dòng 137 (được tô sáng trong hình bên dưới) sau khi thực hiện các thay đổi đối với tệp ls.h. Để mở tệp, hãy sử dụng lệnh sau:
Mã:
gedit ls.h


Lưu tệp đó và đóng tệp.



Bây giờ, còn một bước nữa phải thực hiện. Chúng ta phải cho ns biết phiên bản GCC nào sẽ được sử dụng. Để thực hiện việc này, hãy vào thư mục ns của bạn và nhập lệnh sau:
Mã:
Sudo gedit ns-allinone-2.34/otcl-1.13/Makefile.in


Trong tệp, hãy thay đổi Change CC= @CC@ thành CC=gcc-4.4, như hiển thị trong hình bên dưới.




4 Cài đặt​

Bây giờ chúng ta đã sẵn sàng để cài đặt ns2. Để làm như vậy, trước tiên chúng ta cần quyền root và sau đó chúng ta có thể chạy tập lệnh cài đặt. Sử dụng hai lệnh sau:
Mã:
sudo su cd ~/ns-allinone-2.35/./install
Sau đây là ảnh chụp nhanh của các lệnh này:



Hình ảnh bên dưới cho thấy giao diện của nó khi thực hiện thành công



Mất gần 6 phút để xây dựng và cài đặt ns2 trên hệ thống của tôi. Nhưng trước khi chạy, chúng ta cần thêm đường dẫn xây dựng vào đường dẫn môi trường.


5 Thiết lập Đường dẫn Môi trường​

Bước cuối cùng là cho hệ thống biết các tệp cho ns2 được cài đặt hoặc hiện diện ở đâu. Để thực hiện việc đó, chúng ta phải thiết lập đường dẫn môi trường bằng tệp ".bashrc". Trong tệp đó, chúng ta cần thêm một vài dòng ở cuối. Những thứ cần thêm được đưa ra bên dưới. Nhưng đối với đường dẫn được chỉ ra bên dưới, nhiều dòng trong số đó có "/home/akshay/ns-allinone-2.35/...." , nhưng đó là nơi tôi có thư mục đã giải nén của mình. Hãy đảm bảo rằng bạn thay thế chúng bằng đường dẫn của mình. Ví dụ, nếu bạn đã cài đặt nó trong thư mục "/home/abc", hãy thay thế "/home/akshay/ns-allinone-2.35/otcl-1.14" bằng "/home/abc/ns-allinone-2.35/otcl-1.14".

Thực hiện thao tác này cho tất cả các dòng bắt buộc.
Mã:
sudo gedit ~/.bashrc
Các dòng cần thêm:
Mã:
# LD_LIBRARY_PATHOTCL_LIB=/home/akshay/ns-allinone-2.35/otcl-1.14NS2_LIB=/home/akshay/ns-allinone-2.35/libX11_LIB=/usr/X11R6/libUSR_LOCAL_LIB=/usr/local/libexport LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$OTCL_LIB:$NS2_LIB:$X11_LIB:$USR_LOCAL_LIB# TCL_LIBRARYTCL_LIB=/home/akshay/ns-allinone-2.35/tcl8.5.10/libraryUSR_LIB=/usr/libexport TCL_LIBRARY=$TCL_LIB:$USR_LIB# PATHXGRAPH=/home/akshay/ns-allinone-2.35/bin:/home/akshay/ns-allinone-2.35/tcl8.5.10/unix:/home/akshay/ns-allinone-2.35/tk8.5.10/unix#hai dòng trên bắt đầu từ xgraph và kết thúc bằng unix phải nằm trên cùng một dòngNS=/home/akshay/ns-allinone-2.35/ns-2.35/NAM=/home/akshay/ns-allinone-2.35/nam-1.15/PATH=$PATH:$XGRAPH:$NS:$NAM
Sau khi thực hiện các thay đổi, hãy lưu tệp và khởi động lại hệ thống.


6 Chạy ns2​

Sau khi hệ thống khởi động lại, hãy mở terminal và khởi động ns2 bằng cách sử dụng lệnh sau:
Mã:
ns
Nếu cài đặt đúng thì terminal sẽ trông giống như hình bên dưới:




7 Liên kết​

 
Back
Bên trên