| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发工具 -> ns3学习(三)——MPTCP -> 正文阅读 |
|
[开发工具]ns3学习(三)——MPTCP |
参考链接:MPTCP github源码一、MPTCP github源码二 源码一ns3版本是3.19,会出现gcc版本的问题,建议更换gcc版本至gcc5.5。运行成功后就可以直接运行mptcp。 在以上源码的运行过程中,可能会涉及以下问题,以下链接亲测可用:
一、源码一进入mptcp,文件中 输入以下语句来运行mptcp。
运行截图: 源码二学习源码二可以理解为一个可运行mptcp的环境,运行mptcp的代码需要自己编写。如果ns3不是很熟悉的话不建议尝试。 我们可以使用如下指令查找包含MPTCP的文件:
解决ns3环境问题后,使用vscode在虚拟机中打开源码二,可以看到有八个cc文件: 二、学习内容1、cryptocrypto意为密码:定义了一些密码,先不看 2、fullmeshfullmesh意为组网:设置组网络 3、mappingmapping意为映射,看到后缀为.h的文件中有两个类 (1)MpTcpMapping类维护一个存放MpTcpMapping的映射表set<MpTcpMapping> MappingList。 MpTcpMapping属性包括m_dataSequenceNumber(0)、m_subflowSequenceNumber(0)、m_dataLevelLength(0)。即:数据序列号,子流序列号,数据级长度 猜测: (2)MpTcpMappingContainer类维护一个存放MpTcpMapping的映射表set<MpTcpMapping> m_mappings。 猜测MpTcpMappingContainer是存放多个子流的映射。 4、ndiffports(1)RttEstimator类被include (2)MpTcpSocketBase类被include const MpTcpSocketBase&这个类型传入create。 MpTcpSocketBase my_sock(); //setAttribute的意思是设置属性,和属性类型。NS3 中Attribute 学习 (3)MpTcpNdiffPorts类主要注意的是CreateSubflows接口
5、socket规定socket的形式 6、subflow
(1)MpTcpSubflow类class MpTcpSubflow : public TcpSocketBase 学习到这里还是一知半解,包括对ns3环境的不熟悉导致无法理解如何去调用这些类。决定放弃源码二进入源码一的学习,后续如果有时间会重新学习源码二。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 2:52:05- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |