./src/tap-bridge/examples/tap-wifi-dumbbell.cc目录下的这个文件,
其拓扑图为:

默认为 ConfigureLocal 模式

1) 程序编译运行之后在得到的shell中ping某个与AP在同一个WIFI网络的节点 10.1.1.3

$ ./waf --run tap-wifi-dumbbell&
$ ping 10.1.1.3

我是说怎么能在代码编译之后用ping 10.1.1.3呢,原来是在编译成功之后得到的一个shell中就配置好了一个名叫thetap的网卡设备,IP为 10.1.1.1,相当于它是AP,然后就可以通过它来ping与它同网段的10.1.1.3了。
这些结果就是想表明,
一个实际的linux主机可以ping一个在ns-3中的节点!!!
注意这里的编译运行的时候,要用sudo,因为涉及到操作网卡,要用高权限的sudo

这次之所以无法ping通是因为之前已经用那个源文件里的第四步配置了一个bridge。

2) 在linux主机上配置一条路由,以便使AP(10.1.1.1)ping得通CSMA网络的10.1.3.4

$ ./waf --run tap-wifi-dumbbell&
$  sudo route add -net 10.1.3.0 netmask 255.255.255.0 dev thetap gw 10.1.1.2
$  ping 10.1.3.4

发现,当ping一个CSMA节点(即通过P2P连接之后的节点)时,延迟非常大,达到了几百ms。
这里是AP(10.1.1.1)将10.1.1.2设置为其ping 10.1.3.4时的临时『网关』,从这里(10.1.1.2)路由到10.1.3.4 这里的10.1.1.2是与AP同一个节点n0的另外一个网卡。

The Tap Bridge lives in a kind of a gray world somewhere between a Linux host and an ns-3 bridge device. From the Linux perspective, this code appears as the user mode handler for a TAP net device. In ConfigureLocal mode, this Tap device is automatically created by the ns-3 simulation. When the Linux host writes to one of these automatically created /dev/tap devices, the write is redirected into the TapBridge that lives in the ns-3 world; and from this perspective, the packet write on Linux becomes a packet read in the Tap Bridge. In other words, a Linux process writes a packet to a tap device and this packet is redirected by the network tap mechanism toan ns-3 process where it is received by the TapBridge as a result of a read operation there. The TapBridge then writes the packet to the ns-3 net device to which it is bridged; and therefore it appears as if the Linux host sent a packet directly through an ns-3 net device onto an ns-3 network.

Tap Bridge存在于某个在Linux主机与ns-3的Bridge Device之间的灰色空间。从Linux角度看,代码看起来像Tap NetDevice的处理器。在ConfigureLocal模式下,这个Tap NetDevice是由ns-3模拟器自动创建的。。。。(未完待续)
参考:
https://www.nsnam.org/docs/release/3.17/models/singlehtml/index.html#emulation-overview
tunctl添加虚拟网卡TUN/TAP与brctl添加网桥

ns3--TapBridge, TapNetDevice,FdNetDevice等相关推荐

  1. NS-3网络仿真平台搭建及可视化

    面向5G车联网仿真平台的搭建 本博客是基于SRTP(面向5G车联网仿真平台设计与开发)而搭建的"面向5G车联网的网络仿真平台",以供大家学习使用. 目录 前言概述 准备工作 下载n ...

  2. Linux安装NS3

    我写的内容多是重复NS3官方文档里面的内容,如果看不懂我写的东西或我的内容与官方文档有冲突,以官方文档为准.建议大家多看看文档(程序员的必备技能). 下载NS3 有多种下载NS3方式,最简单的是直接从 ...

  3. NS3的下载安装运行简易教程

    博主这学期选修了NS3仿真器这门课,第一堂课作业首先下载安装NS3,以下是详细地安装流程: 首先博主用的是centos7系统在VMware虚拟机下进行的安装,然后通过Xshell5连接虚拟机进行操作. ...

  4. 在NS3中添加新的VANET模块

    本文主要参考http://blog.csdn.net/barcodegun/article/details/6898193此博主的学习笔记,但由于版本过老,很多小细节不适用于ns-3.26,特来更新自 ...

  5. 【NS3】NS3安装 visualizer模块安装 (Windows+VMware+Kali) 2022.2

    NS3安装(Windows+VMware+Kali) 2022.2 文章目录 NS3安装(Windows+VMware+Kali) 2022.2 VMware安装 导入kali 换源 环境搭建 NS3 ...

  6. Ubuntu系统下NS-3安装与工具配置

    持1.NS3介绍 官网:https://www.nsnam.org/ 引用官网的介绍: ns-3是用于因特网系统的离散事件网络模拟器,主要用于研究和教育用途.ns-3是免费软件,根据GNU GPLv2 ...

  7. NS-3学习笔记 1

    NS-3 是一个主要由C++编写并兼容python脚本的网络模拟工具.学习它的目的在于模拟那些不容易在物理网络中实现的过程. 我参考的资料是NS3的官方tutorial,主要内容包括: 介绍 学习资源 ...

  8. ns-3 NetAnim遇到了一个问题

    安装好了 NetAnim 之后,使用NS3原有例子 third.cc ,在 Simulator::run() 前面添加如下语句: AnimationInterface anim("third ...

  9. ubuntu——安装和NS3

    本周的事情比较丰富,除了沒有看課本,其他的事情做了很多. 昨天和今天在奋战安装了ubuntu双系统,并且完成了NS3作业.下面打算把这两天踩到的坑讲一下.都是涉及工具,环境的问题,浪费了一天半的时间, ...

最新文章

  1. Ethernet IP TCP UDP 协议头部格式
  2. 数据结构折半查找算法C语言,数据结构C语言实现----折半查找
  3. BZOJ3833 : [Poi2014]Solar lamps
  4. sql查询每科成绩的最高分_数据分析SQL查询:一文带你入门到掌握
  5. 数据治理是开展数据分析的前提
  6. android与rn混合开发,RN 混合开发项目调用安卓原生解决方案
  7. MAC OS下使用JAVE将amr转mp3的坑
  8. 【Appdata】appdata文件夹太大,移动到D盘。
  9. 充电IC驱动调试----移植充电IC bq25601
  10. 肠道细菌四大“门派”——拟杆菌门,厚壁菌门,变形菌门,放线菌门
  11. GWAS计算BLUE值4--联合方差分析演示
  12. LTE下行物理层传输机制(3)-PHICH信道
  13. 2023年2月《中国数据库行业分析报告》正式发布(含精彩内容概览)
  14. 第152章 SQL函数 $TSQL_NEWID
  15. 汽车导航中,导航引擎与导航地图的关系
  16. WKT、SRID、EPSG概念
  17. android flutter 混合开发,Flutter(六)Android与Flutter混合开发(Hybird)
  18. 叮咚谁呀我是送信的邮递员呀_幼师必备|幼儿园冬季室内游戏
  19. [学习Qt:出现问题 1]程序异常结束。The process was ended forcefully.
  20. python 实现聊天室

热门文章

  1. CC3200 TI RTOS LPDS模式
  2. Linux--信号signal、父子进程、SIGCHLD信号相关命令
  3. python windows10 安装 tensorrt、torch2trt
  4. 远程连接内网路由器下的电脑
  5. 写bat文件for循环批量创建文件夹
  6. 小菊的语义分割3——数据预处理及像素级分类实现原理
  7. 【微服务】VirtualBox + Vagrant 快速配置虚拟机
  8. 树木根际微生物、树木-真菌互作研究方向博后和出站博后
  9. 学堂在线数据结构上6
  10. JVM - 双亲委派机制的优势和劣势