RDT实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
实验日期: 2013 年05月 11 日学号:姓名:
实验名称:rdt 总分:
一、实验目的
熟悉并掌握各种不同rdt协议的运行环境和协议性能。
二、实验步骤
①.将simulator中的文件拷贝到操作系统的相应目录
下,编译并安装模拟器。
②.运行协议,完成sinulator文件夹中的exercises
文件中的作业
1.根据说明文档,可以使用以下方法运行程序。
./protocol-program events timeout pct_loss pct_cksum debug_flags datafile_flag
where
* events tells how long to run the simulation
* timeout gives the timeout interval in ticks
* pct_loss gives the percentage of frames that are lost (0-99)
* pct_cksum gives the percentage of arriving frames that are bad (0-99)
* debug_flags enables various tracing flags:
1 frames sent
2 frames received
4 timeouts
8 periodic printout for use with long runs
* datafile_flag enables output of summary data to a data file
for later processing with a script (including
the GUI). The output file will be "totdata.txt".
Values of this flag are 0 or 1:
0 do not append data to totdata.txt
0 append data to totdata.txt
For example
./protocol6 100000 40 20 10 3 1
结果:
1.运行protocol2 参数为./protocol2 100 50 20 10 1 1
protocol2是一个无措信道上的单工停等协议。其基本原理是发送方以高于接收方处理能力的速度发送帧,导致接收方被淹没。我们假设通信信道不会出错,并且数据流量是单工的。
发送方发送一帧,等待确认到达后才能继续发送。
其中100表示他将以50个tick的时间间隔运行100个协议实体进程。20%的丢包率,10%的校验和错误率(的80%通过),它会打印出每帧的行发送或接收。汇总数据也将被追加到totdata.txt。
运行结果如下:
Simulating Protocol 2
从运行结果之中可以看出,有两个进程,分别指明了发送和接受的情况,丢包律、误码率等等都和事先设定好的参数一致。
2.运行protocol3 参数设定为./protocol3 500 50 20 10 2 1
protocol3是一个有错信道上的单工停等协议。帧可能会损坏,也可能会完全丢失。如果一帧在传输过程之中被破坏,则接收方硬件在计算校验和时会检测出来,如果一帧在被破坏之后校验和仍然是正确的,则这个协议将会失败。发送方在他送法送的每一个帧的头部放上一个序号。
发送方发送一帧,等待确认到达后才能继续发送。
其中100表示他将以50个tick的时间间隔运行100个协议实体进程。20%的丢包率,10%的校验和错误率(的80%通过),它会打印出每帧的行发送或接收。汇总数据也将被追加到totdata.txt。
运行结果:
Simulating Protocol 3
Events: 500 Parameters: 50 20 10
Tick 0. Proc 0 sent frame: type=Data seq=0 ack=0 payload=0
Tick 1. Proc 1 got good frame: type=Data seq=0 ack=0 payload=0 Tick 1. Proc 1 sent frame: type=Ack seq=1 ack=0 payload=0
Tick 7. Proc 0 got good frame: type=Ack seq=1 ack=0 payload=0 Tick 7. Proc 0 sent frame that got lost: type=Data seq=1 ack=0 payload=1
Tick 50. Proc 0 sent frame that got lost: type=Data seq=1 ack=0 payload=1
Tick 102. Proc 0 sent frame that got lost: type=Data seq=1 ack=0 payload=1
Tick 153. Proc 0 sent frame: type=Data seq=1 ack=0 payload=1
Tick 158. Proc 1 got good frame: type=Data seq=1 ack=0 payload=1
Tick 158. Proc 1 sent frame that got lost: type=Ack seq=1 ack=1 payload=0
Tick 206. Proc 0 sent frame that got lost: type=Data seq=1 ack=0 payload=1
Tick 257. Proc 0 sent frame: type=Data seq=1 ack=0 payload=1