0

我们目前正在考虑 ns3 是否满足我们的要求,我们正在寻找一种方便的工具来在真实网络中的分布式设备中运行(各种可能的连接)并捕获网络性能数据(如嗅探器)。我意识到 ns3 的主要目的是在单台机器上模拟网络拓扑,但它的 emu 模块听起来很有前途,而且流量监视器可以节省我们在数据捕获上的精力。

在以下链接中

http://www.nsnam.org/wiki/HOWTO_make_ns-3_interact_with_the_real_world

声明NS-3 EMU可用于注入模拟节点与真实网络交互,并给出了3种测试平台。然而第一个解决方案,虚拟机 vmware 测试平台仍在 LAN 内工作——在混杂模式下,虚拟机网卡正在监听所有 LAN 广播,以便 emu-udp-echo 服务器和客户端可以找到彼此。

我的问题是,emu-udp-echo 服务器/客户端是否有可能在广泛网络中不同位置的不同物理系统中运行?

例如,在不同的城市或来自不同的网络提供商,给定运行其他 ns-3 节点的硬件的 IP 地址?如果可能的话,我如何指定节点的“真实”IP 地址和端口,而不是分配虚拟 ipv4 地址?

非常感谢。

4

1 回答 1

1

是的,虽然文档描述了如何使用虚拟机执行此操作,但这通常可以在真实硬件上完成。自从编写了 HOWTO 以来,已经有额外的工作来提供帮助来运行这种类型的实验,包括在 PlanetLab 测试台机器上运行。本文档描述了添加到 ns-3.17 版本的通用文件描述符 NetDevice: http ://www.nsnam.org/docs/release/3.19/models/html/fd-net-device.html 。在文件 fd-emu-udp-echo.cc 中可以找到与该 HOWTO 中描述的示例类似的示例。

在实际网络中使用仿真模式时,必须仔细配置 MAC 地址和 IP 地址。首先,设备必须能够进入混杂模式。其次,MAC 地址需要不同于网卡的硬件地址。如果您打算使用现有 IP 地址(用于其他 Internet 流量)的活动 NIC 顶部,则需要在正确的链接子网内为 ns-3 提供另一个 IP 地址。如果您想将 NIC 专用于 ns-3 使用,则不要将 IP 地址分配给主机 NIC,而只需将其分配给 ns-3 配置。

PlanetLab 示例还显示了另一种配置,该配置使用 Tap 设备向/从 PlanetLab 测试台节点发送数据。此配置中的某些特定于 PlanetLab 的工作方式,但使用桥接至 ns-3 设备的 Tap 设备也可能有助于仿真。

于 2014-02-14T21:47:57.803 回答