第一部分:仿真工具的特性
1.1 High-Fidelity Simulation Results
NCTUns directly uses the real-life Linux’s TCP/IP protocol stack to generate high-fidelity simulation results
1.2 Reusing All Real-Life Application Programs
In NCTUns, all real-life existing or to-be-developed UNIX application programs (e.g., the P2P BitTorrent application) can be run up on a node in a simulated network.
1.3 ▲Seamless Integration of Emulation and Simulation
In an emulation, nodes in a simulated network can exchange real packets with real-world machines via the simulated network. That is, the simulated network is seamlessly integrated with the real-life network so that simulated nodes and real-life nodes can exchange their packets across the integrated simulated and real-life networks.
1.4 High Simulation Speeds and Repeatable Simulation Results
1.5 Support for Various Important Networks
It simulates IEEE 802.11(a)(b) wireless LAN networks, including both the ad-hoc and infrastructure modes.
It simulates GPRS cellular networks.
It simulates optical networks.
It simulates IEEE 802.11(b) wireless mesh networks, IEEE 802.11(e) QoS networks,
It simulates 802.16(d) WiMAX networks, including the PMP and mesh modes.
It simulates 802.16(e) mobile WiMAX PMP networks.
It simulates 802.16(j) transparent mode and non-transparent mode relay WiMAX networks.
It simulates the DVB-RCS satellite networks for a GEO satellite located 36,000 Km above the earth.
It simulates 802.11(p)/1609 vehicular networks, which is an amendment to the 802.11-2007 standard for highly mobile environment.
Over this platform, one can easily develop and evaluate advanced V2V (vehicle-to-vehicle) and V2I (vehicle-to-infrastructure) applications in the ITS
(Intelligent Transportation Systems) research field.
1.6 Support for Various Network Protocols
NCTUns simulates various protocols such as IEEE 802.3 CSMA/CD MAC, IEEE 802.11 (a)(b)(e)(p) CSMA/CA MAC, the learning bridge protocol used by switches, the spanning tree protocol used by switches, IP, Mobile IP, RIP,OSPF, UDP, TCP, HTTP, FTP, Telnet, etc. It simulates the DiffServ QoS protocol suite, the optical light-path setup protocol, the RTP/RTCP/SDP protocol suite. It simulates the IEEE 802.16(d)(e)(j) WiMAX PMP protocol suites and the 802.16(d) mesh mode protocol suite. It simulates the DVBRCST protocol suite.
1.7 Highly-Integrated and Professional GUI Environment
1.8 Open-System Architecture
A protocol module developer can easily implement his (her) own protocol and integrate it into the simulation engine.
Details about adding a new protocol module to the simulation engine are presented in the “The Protocol Developer Manual “
1.9 Distributed Architecture for Remote and Concurrent Simulations
Because the components of NCTUns use Inter-Process Communication (IPC, that is, sockets) to communicate, they can also be run on the same machine. (This is called the “single-machine” mode.).
第二部分:安装Fedora
1.1 安装Fedora-12-i386-DVD.iso
(注:不要用Fedora-12-x86_64,这个会出现很多错误)
Basic video install(第二行选项进行安装)
磁盘采用Create Custom Layout进行手动分区,采用磁盘格式时均默认,各个分区的大小如下
/boot 1GB ext3
Swap 2GB
/ 剩下的全部 ext4
以下均在Fedora12环境下进行:
登录Fedora12
1.2 把firewall和SELINUX关闭
1.3 更新系统,安装附加安装包
#yum update
#yum install gcc gcc-c++ make mkinitrd
#yum install readline-devel ncurses-devel
1.4 安装其他rpm
到搜索下载以下几个rpm
下载libXaw-1.0.6-4.fc12.i686.rpm后安装(先安装这个再安装下面这个)
下载xterm-248-2.fc12.i686.rpm后安装
第三部分:安装NCTUns
1.1 下载、解压安装包
学习用户可以采用开源的测试版本NCTUns
A user first downloads the package from the web site at .
或者从其它网上资源下载:
http://***/archive/JkOQKPra/nctuns-allinone-linux-26316-f1.html
常用的版本如:NCTUns-allinone-linux-26242-f8.gz、NCTUns-allinone-linux-2.6.31.6-f12.20100113.tar.gz等。
#tar -zxvf NCTUns*.gz
专业的用户可使用商业版本——EstiNet
(Commercial version EstiNet wins the prestigious "Outstanding I.T. Application and Product Award" of Taiwan, R.O.C. government for year 2012. Please visit for more information.)
1.2 进入NCTUns目录,执行
#cd NCTUns*
#sh install.sh (或# ./install.sh)
过程记录:
In the following, this script will begin to install NCTUns. If you want * to abort this installation, you should press "control+C" NOW! * * Otherwise, you can press the "Enter" key to begin. *
** ** Install the NCTUns Kernel ** STATE: install new nctuns kernel or upgrade older nctuns kernel Preparing... ################################################## kernel-nctuns ##################################################
……
REPORT: install BMP for gui ... ok REPORT: install app.xml for gui ... ok REPORT: install ps.cfg for gui ... ok REPORT: install mdf for gui ... ok REPORT: install agp for gui ... ok
** ** Modify the SELinux Configuration ** STATE: modify the SELinux configuration * * By default, the SELinux option is enabled in Fedora. However, * if SELinux option is enabled, it will decline to execute the NCTUns engine or the * NCTUns client program. To run NCTUns correctly, you should disable SELinux. *
** Would you want to disable SELinux? [yes/no](No) > yes
REPORT: modify the SELinux configuration ... ok ** ** Append NCTUns Environment Varables to the Shell Profile ** STATE: append NCTUns environment variables to profile
* To run up NCTUns programs correctly, some NCTUns-related environment variables * must be set up first in each xterm. If you answer "yes" to the following * question, this installation program will append these environment variables * to the shell profile of the account of the installing user. Doing so can save * you much time in the future because you need not set up these environment * variables manually each time when you open a xterm. *
** Would you want this installation program to automatically append some ** NCTUns-related environment variables to the shell profile ** of the account that you use to install NCTUns? [yes/no](No) > yes
REPORT: append NCTUns environment variables to the profile of the installing user's account ... ok
** ** Create the Default Simulation User Account ** STATE: create a new user account (nctuns) as the default simulation user account
* The initial account name/password of this newly created account is nctuns/nctuns. * The GUI program will use this account/password as the default simulation user account/password. * Creating this account here is for a lazy user's convenience because he (she) does not need to * create an account and then use the account/password in the GUI program to run up a simulation. * A prudent user should change the initial password of this account to a new one and then use the * new password in the GUI program to run up a simulation."
** Would you want to create a new user account (nctuns) as the default simulation user account [yes/no](No) >yes
REPORT: create a new user account (ncutns) ... ok
** ** Install Modified qtrc File ** STATE: install modified qtrc file for better looking in the GUI program
* For the best display quality of the GUI program, NCTUns has to modify the QT * library configuration file (the qtrc file) to force the desktop manager, e.g., * KDE and GNOME, to use 10-size font for display. If the original qtrc file * is used, the font size used by the GUI program may be incorrect, resulting in * low display quality. (It is recommended to use the KDE desktop manager with * the version 4.0.5 or higher and our provided qtrc file to achieve the best * GUI display quality. If you answer "yes" to the following question, the modified * qtrc file will be copied to the home directory of the installing user's account, * which is "root."
** Would you want to install the modified qtrc? [yes/no](No) > yes
REPORT: install modified qtrc file for better looking in the GUI program ... ok
** ** Final Check ** ** Results: **
** install the NCTUns kernel ... ok ** install libstdc++.so.6 ... .skip ** install libtcl8.5 ... skip ** install libpcap.so.0.9 ... skip ** build and install nctuns ... ok ** build and install advanced wireless phy library ... ok ** build and install coordinator ... ok ** install coordinator configuration file ... ok ** build and install dispatcher ... ok ** install dispatcher configuration file ... ok ** create rules of udev for nctuns tunnel ... ok ** install Xinetd Internet services daemon ... skip ** install rsh server ... skip ** enable rlogin and rsh ... ok ** skip rlogin authentication for pam.d ... ok ** install xterm ... link ** build and install nctuns-tcsh ... ok ** build and install shell ... ok ** build and install stcp and rtcp ... ok ** build and install ttcp ... ok ** build and install stg and rtg ... ok ** build and install rtp library ... ok ** build and install rtp example tools ... ok ** build tactic network agent ... ok ** install ITS profile ... ok ** build and install printPtr ... ok ** copy package trace format file ... ok ** build and install ripd ... ok ** build and install ospfd ... ok ** build and install agent of mipd... ok ** build and install mnd of mipd... ok ** build and install rod of mipd... ok ** install nctuns.csh and nctuns.bash ... ok ** install route command ... link ** install tcpdump command ... link ** install ping command ... copy ** install ifconfig command ... link ** install nctunsclient.bin ... ok ** install nctunsclient ... skip ** install BMP for gui ... ok ** install app.xml for gui ... ok ** install ps.cfg for gui ... ok ** install mdf for gui ... ok ** install agp for gui ... ok ** modify the SELinux configuration ... ok ** append NCTUns environment variables to the profile of the installing user's account ... ok ** create a new user account (ncutns) ... ok ** install modified qtrc file for better looking in the GUI program ... ok ** ** Please press the "Enter" key to continue
===================================================================== ** Before you start using NCTUns, please check whether you have done ** all of these steps. According to our technical support experiences, ** most problems are caused by not performing all of these steps. ===================================================================== ** ** 0. The NCTUns programs have been successfully compiled and installed. ** 1. You have rebooted your system and is using the newly-built kernel. ** 2. The rlogin and rsh services in /etc/xinetd.d/rlogin and ** /etc/xinetd.d/rsh have been enabled. ** 3. The NCTUNSHOME, NCTUNS_TOOLS, and NCTUNS_BIN environment variables ** have been set properly. ** You can use the following command to do this job: ** [csh/tcsh] # source /usr/local/nctuns/etc/nctuns.csh ** [bash] # source /usr/local/nctuns/etc/nctuns.bash ** 4. You have stopped the iptables service by executing ** "service iptables stop". ** 5. You have set "SELINUX=disabled" in /etc/sysconfig/selinux ** ===================================================================== ** ** If you would like to seek helps or exchange your ideas/questions ** with other NCTUns users, you may check and use the following services: ** ** (1) NCTUns mailing list: http://nsl10.cs.nctu.edu.tw/pipermail/nctuns/ ** (2) NCTUns forum: http://nsl10.cs.nctu.edu.tw/phpBB/ ** ** Thank you.
Important Notice!
If your X-window system adopts KDE as the default desktop manager program, please BE SURE to upgrade your KDE version to 4.0.5 or higher. It is found that KDE 4.0.3 is likely to trigger unexpected signals to the NCTUns simulation engine, which may cause the simulation engine to run abnormally.
Besides, we suggest to upgrade the OpenGL library into the newest version because of the display of the GUI. If you have a video card equipped on your machine, please find the latest driver for your video card.
To upgrade KDE and OpenGL libraries, you can use the following command:
yum update
Although this command will update all programs contained in Fedora 11 (including KDE, OpenGL libraries) and thus may take a long time, it is the easiest way to upgrade KDE. If you just upgrade KDE, some dependency problems may result. |
1.3 安装后重启系统,选择NCTUns内核(登陆界面会多了一个nctuns用户,它的密码是nctuns)
1.4 重启进入系统后,设置环境变量
$ gedit .bashrc
在里面加入下面3行export NCTUNSHOME=/usr/local/nctuns
export NCTUNS_BIN=/usr/local/nctuns/bin
export NCTUNS_TOOLS=/usr/local/nctuns/tools
export LD_LIBRARY_PATH=/usr/local/nctuns/lib
重启系统
或者执行下句使它生效
#source .bashrc
1.5 运行
打开命令行Terminal,切换到root
#/usr/local/nctuns/bin/dispatcher
再打开另一个命令行Terminal,切换到root
#/usr/local/nctuns/bin/coordinator
最后再打开一个新的命令行Terminal(GUI用户不能以root登录)
~/usr/local/nctuns/bin/nctunsclient
成功运行后会出现如下的GUI界面。
1.5.1 注意1
运行/usr/local/nctuns/bin/nctunsclient,如果出现以下错误:
/usr/local/nctuns/bin/nctunsclient.bin: error while loading shared libraries:
libqt-mt.so.3: cannot open shared object file: No such file or directory
下载qt3-3.3.8b-28.fc12.i686.rpm后安装。
1.5.2 注意2
/usr/local/nctuns/bin/nctunsclient,若提示:
Session management error:None of the authentication protocols specified are supported.
原因可能是以root身份运行(不要用root身份运行nctunsclient),或者网卡没连接上网络,或者运行nctunsclient之前没有先启动dispatcher、coordinator。