模拟simulation和仿真emulation的区别
- 网络模拟器(simulation)试图对现实世界网络建模
- 网络仿真器(emulation)意味着终端系统(例如,计算机)可以被嵌入到emulator上,好像嵌入到真实的网络中。网络仿真器的侧重点是连接终端的网络,而不是终端,典型的例子是NS2
网络模拟器的作用
- 允许网络设计者测试新的网络协议
- 优化网络协议
- 设计不同的网络拓扑,使用不同类型的节点,例如,end-hosts, hubs, network bridges, routers, optical link-layer devices, and mobile units
不同网络模拟器的比较
功能 | 可获得模型 | 网络层次模拟 | 仿真模型 | debug | 模拟速度及规模 | 编程语言 | GUI支持 | 与真实系统通信 | 是否开源 | 流行度 | 缺点 | 特点 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
OPNET | 网络拓扑、设备、协议、应用 | TCP/IP,ATM,Ethenet | 支持 | FSM | 较快 | C++ | 是 | 能 | 否 | ||||
OMNeT++ | 可扩展,不仅仅用于网络模拟,IT系统,排队论,体系结构 | TCP/IP, SCSI and FDDI | 支持 | FSM/Thread | 最丰富 | 最快 | C++ | 是 | 能 | 是 | 流行 | ||
NS2 | 围绕TCP/IP | 不支持 | FSM | 较快 | C++/Tcl | 否 | 能 | 是 | 流行 | 不易修改,嵌入别的模块,描述语言不好,不容易图形, | 始于1989 | ||
NS3 | 模块化,真实模拟协议细节,轻量虚拟机 | FSM | 较快 | C++/Python | 能 | 是 | 流行 | 可信度低 | 2006开始,替代NS2,升级版 | ||||
J-sim | 是 | 类似OMNeT++,但是不如OMNeT++图形界面和特点好,效率低 | |||||||||||