计算机网络实验可靠数据传输
计算机网络 可靠数据传输
一、 实验目的
熟悉并掌握各种不同rdt 协议的运行环境和协议性能。
二、 实验内容
1. 搭建linux 运行环境;
2. 运行simulator ,模拟各种不同rdt 协议; 3. 完成exercises 的问题。
三、 实验过程
1. 在本机上安装虚拟机,然后通过虚拟机安装red hat linux 9.0系统,安装成功。 2. 了解simulator 模拟的几种rdt 协议。simulator 中有p2.c —p6,c5个文件是描述
协议的:p2.c 是停等协议,设置有限的buffer 和有限的处理速度;p3.c 在不可靠的信道上允许单向的数据流动;p4.c 是双向的滑窗协议;p5.c 是GBN 协议;p6.c 是重传协议。 3. 几种rdt 协议
1) Rdt1.0:在可靠信道上进行可靠的数据传输
所依赖的信道非常可靠:不可能有位错,不会丢失数据;
分别为发送方和接收方建立FSMs :发送方将数据送入所依赖的信道,接收
方从所依赖的信道读出数据。 2) Rdt2.0:在可能发送位错的信道上传输 问题:如何从错误中恢复
正向确认 (ACKs):由接收方发送报文向发送方进行确认
负向确认 (NAKs):由接收方发送报文向发送方进行否认,说明分组有错 发送方在收到NAK 后进行分组重传 rdt2.0的新机制 (在 rdt1.0基础之上)
错误检测;接收方的反馈:控制信息 (ACK,NAK) 。 Rdt2.0 有一个致命的缺点 若ACK/NAK 报文丢失?
发送方将不会知道接收端发生了什么,假如进行重传:可能发生数据重复。 管理重复的问题
接收方丢弃重复的分组(不向上递交)
如果ACK/NAK丢失,发送方则重传正确的分组,发送方给每个分组加上sequence number (序号)。
3) Rdt2.1:发送方,管理丢失的 ACK/NAK,接收方,管理丢失的 ACK/NAK。 4) 流水线协议
流水作业:发送端允许发送多个分组,等待应答。必须增加顺序号的位数,在发送和接收端增加缓存。两种常用的流水线协议:回退N 重传 (go-Back-N),选择重传(Select Retransmit)。 回退N 重传(GBN:Go-Back-N)
发送方:在分组首部设置k 位 seq #,使用尺寸为N 的“滑动窗口”,允许连续的多个分组不被应答。
“回退n ”协议的基本特点:发送方连续发送许多数据帧,接收方只接收一帧,即只能顺序接收,发送方发送的帧需要不同的编号来区分,发送方要有较大的发送缓冲区来保留可能重发的帧。
优点:连续发送提高了信道利用率,误码率较低时,连续ARQ 优于停等协议。 缺点:要回退n 帧重传(Go-back-n ),导致某些已正确接收帧的重传,因此降低了发送效率。
选择重传(SR :Selective Repeat)
发送方仅对未收到应答的分组进行重发,发送方对每个unACKed 分组设置计时器;发送方的窗口,N 个连续的seq ,同样对已发送的seq #s,unACKed 分组进
行限制;接收方逐个对所有正确收到的分组进行应答,对接收到的(失序)分组进行缓存,以便最后对上层进行有序递交。
优点:避免重传已正确传送的帧,提高了信道利用率。 缺点:在接收端需要占用一定容量的缓存,控制较复杂。 4. 搭建环境并测试用例
我电脑上安装的有Ubuntu 的linux 系统,编译模拟器的时候会有两个警告,但是仍可以运行,不过运行的结果都是不正确的,所发送的包全是得不到确认的,最后的效率都为0%。尝试过之后,就在在虚拟机下安装red hat linux 9.0系统,安装成功。测试用例如下图所示:
四、 Exercises
1) For one or more selected protocols, make a study of protocol
performance,measured in payloads delivered per second, as a function of the checksum error rate, lost packet rate, and timeout interval. For example, provide graphs showing payloads/sec as a function of timeout interval, for various error rates. What can you conclude?
Answers:实验中选择运行的是p5.c 文件,即回退N 步协议。运行图如下: 运行协议5,1000个时间片,超时时间间隔为20个时间片,无丢包,无数据出错,显示发送和接收如下图:
测试多组实验,如下面所示。
测试有效负载和超时时间间隔的关系,运行协议5,1000个时间片,无丢包,无数据出错,结果如下表所示:(由于运行的几组都是1000个时间片,所以可以直接根据payloads 来比较)
结论:由表中的测试数据可以看出,有效负载在超时时间间隔为50的时候最大,为196。因为时间间隔小于50的时候,重传的比较多,导致有效的少,当时间间隔大于50的时候,虽然没有重传,但是时间间隔多大,发送一个数据后等待的时间过长,导致发送的总的数据减少。
测试有效负载和校验和错误率的关系,运行协议5,1000个时间片,设置超时间隔为50,无丢包,结果如下表所示:(由于运行的几组都是1000个时间片,所以可以直接根据payloads 来比较)
结论:由表中数据可以看出,校验和错误率越高,收到的有效的负载越少。 测试有效负载和校验和丢包率的关系,运行协议5,1000个时间片,设置超时间隔为50,无校验和错误,结果如下表所示:(由于运行的几组都是1000个时间片,所以可以直接根据payloads 来比较)
结论:从表中数据可以看出,丢包率越高,收到的有效的负载就越少。
2) Compare the performance of protocols 5 and 6 in detail with respect to
payloads/sec and number of retransmissions for a wide variety of parameters.Under which circumstances is protocol 5 better? protocol 6?
Answers:
运行:./sim 5 1000 50 0 0 0和./sim 6 1000 50 0 0 0
运行:./sim 5 1000 50 10 10 0和./sim 6 1000 50 10 10 0
结论:网络状况越差,协议6的影响相对小,即协议6的性能好,当网络都处于理想状况时,即都没有丢包和错误时,两个协议的性能差不多,但整体协议6的性能更好。
原因:协议5为流水线协议,适合运行在网络状况较好的情况下,丢包率和出错率较小的时候,重传几率较小,传输速率较快。而如果网络状况不佳,会出现大量重传,协议5会丢弃大量无序的且正确的分组,会带来更多的重传。而协议6只需重传丢失的分组,在网络状况较差时,效果会非常显著。
3) The function pick_event() has built-in priorities for events. For example,for
protocol 5, frame arrivals go before timeouts. Experiment with changing these priorities (by reordering the statements in pick_event().What conclusions can you draw?
答:当顺序为数据到达,校验和检验,上层数据准备好,超时处理时: 设置超时间隔为50,结果见下表:
当顺序为上层数据准备好,数据到达,校验和检验,超时处理时: 设置超时间隔为50,结果见下表:
当顺序为超时处理时,数据到达,校验和检验,上层数据准备好: 设置超时间隔为50,结果见下表:
通过上面三个的对比,可以看出在相同的条件下,当设置为上层数据准备好,数据到达,校验和检验,超时处理时,收到的有效负载最大。
4) Investigate the number of retransmitted frames as a function of the timeout interval for various parameters? Can you determine what the optimum setting should be?
答:设置丢包率为0,检验和错误率为0,运行得到如下数据:
结论:从表中数据可以看出,当设置超时间隔为50时,重传帧最少,并且收到的有效负载最多。
五、 实验总结
通过此次实验熟悉并掌握各种不同rdt 协议的协议性能,但是因为由于对linux 操作系统不熟悉,在做实验的过程中遇到了很多的问题,故这次实验,做得比较艰难。但问题也都随着问同学,上网查找,一一的解决了。
相关文章
- 课程教学实施计划
- 精密仪器设计实验教学改革探讨
- 电子产品MTBF的意义及工程化计算方法
- 校园网络工程项目需求分析报告
- 实验室管理学
- 医学实验室质量管理要求
- 东北大学全日制工程硕士研究生培养方案
- 初中物理测量数据处理
- 基于透光率表征的光电式枪口烟检测系统分析研究
编写 审批 解放军理工大学指挥信息系统学院 教 学 实 施 教员姓名: 陈鸣,许博 单 位: 网络工程教研中心 课程名称: 计算机网络原理 授课对象: 本科学员 授课学期: 2013年春季学期 理工大学训练部制表 课 程计 划 2012学年 ...
摘 要:介绍了精密仪器设计课程教学内容及课内实验设置情况,分析了该课程实验教学中存在的主要问题,提出了实验教学改革措施,以提升该课程的教学质量. 关键词:精密仪器设计:实验:教学改革 Reform on experiment teachin ...
电子产品MTBF的意义及工程化计算方法 冯敬东,来萍 (信息产业部电子第五研究所,广东 广州 510610) 摘要:对电子产品平均无故障工作时间(MTBF)的实际意义进行了深入的探讨,旨在使业界能正确理解这 一表征电子产品可靠性的常用概念: ...
校园网络工程项目 需求分析报告 目 录 1.前言................................................................................................ ...
第二章 名解 1.质量:"一组固有特性满足要求的程度" 包括在提供服务过程所涉及的要素中,是各环节质量的总和.(有明示的要求:规定. 隐含期望:惯例. 必须履行的要求:国家或地方法律法规要 求和其它强制规定) 2.质量管 ...
第一节 医学实验室质量管理要求 一.基本概念 1.临床实验室 临床实验室又称"医学实验室".对从人体获得的各种标本进行生物学的微生物学的免疫学的化学的免疫血液学的血液学的生物物理学的细胞学的病理学的检验,或其他的检验,为 ...
全日制工程硕士研究生培养方案 研究生院 二OO 九年七月 前言 为更好地适应国家经济建设和社会发展对高层次应用型人才的迫切需要,积极发展具有中国特色的专业学位教育,教育部自2009年起,扩大招收以应届本科毕业生为主的全日制硕士专业学位范围, ...
初中物理测量数据处理 江苏省泗阳县李口中学 沈正中 初中物理测量涉及误差.估读.平均值.有效数字以及测量结果的处理等问题,我们要分清这几个相关的概念. 1.误差 误差是测量.计算或观察过程中由于某些错误或通常由于某些不可控制的因素的影响而造 ...
兵器装备工程学报 2017-06-07 基于透光率表征的光电式枪口烟检测系统分析研究 潘伟杰,周克栋,赫雷,杜恩武,李茂林,江剑 (南京理工大学 机械工程学院,南京 210094) 作者简介:潘伟杰(1990-),男,硕士研究生,主要从事武 ...