哈工大计算机网络ii实验tcp.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
哈工大计算机网络ii实验tcp

实验 4 TCP 验证实验 1130320211 万松渤 一、实验前的准备工作 下载 : ns3 /release/ns-allinone-3.21.tar.bz2 解压,得到文件夹,放入虚拟机中。 为成功安装,先行安装g++ 安装: 将 basic1.cc 拷贝到 /home/wan/ns-allinone-3.21/ns-3.21/scratch/下 添加指令代码: 执行. .bashrc,添加环境变量 安装绘图工具: 新建文件夹,运行waff –run basic1,会得到 basic1.cwnd 等文件 用gnuplot 绘图 结果如下: 现在已经做好了实验的准备工作。 二、实验过程 (一)RTT 与 cwnd 1.要求: 运行 Basic1.cc 观察 RTT 与 cwnd 间的关系。运行多次模拟实验,每次采用不同的链路延 迟 (delayRB 参数),绘图比较,给出分析 2.过程: 修改 delayRB 参数,分别设置为:50,100,150,200,250。修改 runtime = 50 以获取更多的数 据。分别保存。 得到保存的文件: 绘图: 3.分析: 分析图中结果,可以发现:5 次不同链路延迟都经历了慢启动,拥塞避免,快速恢复的 过程。在此之后在快速恢复和拥塞避免之间循环。 当 cwndssthresh 时使用慢启动算法,每收到一个 ACK 则 cwnd 增加一个数据报的字 节,每过一个 RTT 则 cwnd=cwnd*2,所以在慢启动阶段 cwnd 是指数增长的; 当 cwndssthresh 时使用拥塞避免算法,进行快速重传,此时 ssthresh = cwnd/2,同时 连续收到 3 个重复的 ACK,进行快速恢复,令 cwnd = ssthresh,相当于让 cwnd 减半; 当 cwnd=ssthresh 时,发送端既可以使用慢启动也可以使用拥塞避免,每收到一个 ACK 则 cwnd 增加 1/cwnd 倍的一个数据报的字节,每过一个 RTT 则 cwnd 增加一个数据报字 节,所以拥塞避免阶段 cwnd 是线性增长的。 (二) 带宽与 cwnd 1.要求:参考 4.1,分析不同带宽下 cwnd 的变化,需要修改 Basic1.cc, 使得可以设置带宽(bottleneckBW) 2.过程: 修改 bottleneckBW 带宽参数,分别改为为 0.5,1.5,2.5,3.5,4.5,每个都单独保存 保存的文件: 绘图: 3.分析: 从图中可以看出:慢启动、拥塞避免、快速恢复过程和上个实验一样。除此之外可以知道: RTT 越大,cwnd 的最大值越大;快速恢复后的拥塞避免过程中,cwnd 线性增长,每过一 个RTT 则cwnd 增加一个数据报字节,所以直线斜率与 1/RTT 有关,RRT 越大斜率就越小。 (三)TCP 格斗赛 1.要求: 通过模拟实验,分析各种 TCP 算法的 cwnd: Tahoe vs. Reno, Reno vs. Reno, 采用以下网络拓扑 A\ /B R1R2 C/ \D A,C--R1 : 10 Mbps/ 10 ms delay R1--R2 : 500Kbps / 50 ms delay R2--B,D : 10 Mbps / 10 ms delay queue at R1: size 10 queue at R2: size 10 执行两个 TCP 流,A 和 B 之间,C 和 D 之间,共享同一个瓶颈R1R2,绘制两个流 cwnd 的时间序列图,并分析。 2.过程: 1)Reno vs. Reno 创建节点: 配置参数; 建立点对点通道: 节点上安装协议栈: 分配IP 地址: 创建sink: 设置跟踪窗口: 其他需要改动和添加的地方类似; 保存并生成文件: 绘图: 结果: 分析: 两个 Reno 流共享同一个路径时,无论先后顺序,最后会平分带宽。 拥塞导致两个流同时丢包,Reno 采用了快速恢复,ssthresh 变为cwnd 的一半, cwnd=ssthresh,之后是拥塞避免的过程,然后再丢包再快速恢复。 2)Tahoe vs. Reno 令 A、B 之间执行 Reno,C、D 之间执行 Tahoe,其他地方与之前的类似 生成文件: 绘图: 结果: 分析: 上图为

文档评论(0)

561190791 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档