计算机网络实验报告1数据链路层协议设计与实现

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

南昌航空大学实验报告

2019年 4月 18日

课程名称:计算机网络与通信实验名称:数据链路层协议设计与实现

班级:学生姓名:学号:

指导教师评定:签名:

一.实验目的

1)掌握Visual C++网络编程的基本方法和客户机/服务器架构的工作原理。

2)设计数据链路层协议,并通过试验仿真测试协议算法。

二.实验内容

1)根据提供的参考程序和连续ARQ协议的伪代码,设计数据链路层通信协议-带有滑动窗口的选择性重传ARQ协议和回退N重传ARQ协议,由“发送端程序”和“接收端程序”实现。

2)要求能检测差错和丢失,判断重复帧,实现重传,确保数据可靠传输。

3)发送端和接收端窗口能正确反映客户端和服务器端数据通信过程。

4)总结实验过程(实验报告),方案、编码、调试、结果、分析和结论。

三.实验过程

1.“发送端程序”、“信道仿真程序”和“接收端程序”采用UDP协议(TCP/IP)进行通信;

2.若单机实验:“发送端程序“、“信道仿真程序”和“接收端程序”的IP地址设置尾127.0.0.1(本机)。

3.“发送端程序“的端口=6666,“信道仿真程序”的端口=7777,“接收端程序”的端口=8888,端口号也可自行定义;

4.用户程序(“发送端程序”和“接收端程序”)的信息发送到信道(“信道仿真程序”),信道经过处理产生丢失、差错和时延,然后发送到对方。

5.仿真过程中可通过对信道仿真程序软件的环境进行设定,来模拟链路特性。四.实验结果

1.发送的数字1为81H,它的确认信号为9FH,由于第一次发送1确认丢失,所以再次发

送.(次序2丢失)

2.发送数字1为81H,但接受的是80H出现差错,所以不予确认,A继续重发81H(次序1

差错).

3.发送的数字3为12H,它的确认信号为0FH,由于第一次发送3延时1000ms,所以再次发送4:12H,1000ms后3:12H到达,但已经之前接收并确认,所以3:12H不被受理.(次序3时延1000ms)

4.发送的数字2为9FH,它的确认信号为9FH,由于发送2确认丢失,所以再次发送;发送数字3为81H,但接受的是80H出现差错,所以不予确认,A继续重发81H.

(2丢失,3差错)

5.当前为A发送丢失,B并未收到结果,A未收到B发回的反馈,A重新发送,B并未收到结果,A未收到B发回的反馈,A重新发送,B接收到正确数据后,B返送反馈,B发送的反馈延迟。A未收到B发来的反馈,A从新发送,B接收到正确数据后,B返送反馈,A受到正确反馈后,发送下一个值。

6.当前为A发送丢失,B并未收到结果,A未收到B发回的反馈,A重新发送,B收到A发送的数据,B发送反馈,B发聩出错,A收到错误反馈,A重新发送。

五.实验体会

初步掌握了协议算法并通过试验仿真测试。利用程序,了解了帧发送的各种错误情况,并能成功分析错误发生后产生的结果。对链路层帧打包发送有了更深的理解.

相关文档
最新文档