计算机网络课程设计模拟Ethernet帧的发送过程.docVIP

  • 138
  • 0
  • 约6.26千字
  • 约 14页
  • 2016-10-21 发布于陕西
  • 举报

计算机网络课程设计模拟Ethernet帧的发送过程.doc

题目二: 模拟Ethernet帧的发送过程 初始条件: (1)学习相关知识 (2)C/C++/VC/VB/JAVA语言 (3)PC机一台 要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) 编写程序模拟Ethernet节点的数据发送流程。具体要求: 1)用两个线程a和b来模拟Ethernet上的两台主机。 2)用一个双字类型变量Bus来模拟总线(将其初始化为“\0”,并且总线等于“\0”时表示总线空闲)。 3)两个子线程向总线发送自己的数据。数据用该线程的线程号进行模拟,发送数据用线程号和Bus的“或”操作进行模拟(即Bus=Bus|ID,ID为该线程的线程号)。 4)每台主机需向总线上成功发送10次数据,如果其中某次数据发送失败,则该线程结束。 5)发送流程必须遵循CSMA/CD。随即延迟算法中的冲突窗口取0.005。在数据发送成功(即Bus==ID)后,报告“ID send success”,产生冲突(即Bus!=ID)后报告“ID send conllision”,发送失败(即冲突计数值为0)后报告“ID send failure”。随着主机发送成功次数增加,报告其已发送成功的次数,如“主机A发送成功数=3”。 时间安排: 第一、二天:查阅资料,学习算法 第三、四天:编程调试 第五天:书写报告 指导教师签名: 年 月 日 系主任(或责任教师)签名: 年 月 日 目 录 1.课程设计概述 1 2.以太网的CSMA/CD协议 1 2.1 Ethernet帧的发送流程 1 2.2 Ethernet帧的接收流程 2 2.3截断二进制指数退避算法 2 2.4 Ethernet帧的发送流程图 3 3系统平台、语言和工具 3 4.设计思想 4 5.完整代码 4 6.结果截图 9 7.课程设计总结 10 本科生课程设计成绩评定表 11 1.课程设计概述 局域网技术的发展非常迅速,在企业、机关、学校的信息管理与服务领域得到广泛的应用。在早期,人们将局域网归为一种数据通信网络。随着局域网体系结构和协议标准研究的进展、操作系统的发展以及光纤技术的引入,局域网技术得到了快速发展。 目前,应用最广泛的局域网是总线型局域网,即以太网(Ethernet)。总线型局域网的核心技术是随机争用型介质访问控制方法,即带有冲突检测的载波侦听多路访问(CSMA/CD,Carrier Sense Multiple Access with Collision Detection)方法。 CSMA/CD方法用来解决多个结点共享公用总线的问题。在Ethernet中,任何结点都没有可预约的发送时间,这种介质访问控制属于随机争用型方法。 学习Ethernet技术对深入掌握局域网知识是非常重要的。本课程设计的目的是模拟Ethernet帧的发送过程,熟悉Ethernet帧的数据发送流程,即CSMA/CD工作流程。 2.以太网的CSMA/CD协议 以太网总线上只要有一台计算机在发生数据,总线传输资源就被占用,因此,在同一时间只能允许一台计算机在发生数据。Ethernet的核心技术是随机争用型介质访问方法,即带有冲突检测的载波侦听多路访问(CSMA/CD)方法。 2.1 Ethernet帧的发送流程 1)载波侦听过程。Ethernet中每个结点利用总线发送数据,总线是每个结点共享的公共传输介质。所以结点在发送一个帧前,必须侦听总线是否空闲。由于Ethernet的数据采用曼彻斯特编码方式,所以可以通过判断总线电平是否跳变来确定总线是否空闲。若总线空闲,就可以启动发送,否则继续侦听。 2)冲突检测。在数据发送过程中,可能会产生冲突(冲突是指总线上同时出现两个或两个以上的发送信号,他们叠加后的信号波形与任何发送结点的输出波形都不相同)。因为可能有多个主机都在侦听总线,当它们侦听到总线空闲时,就会往总线上发送数据。所以在发送数据的过程中,也应该进行冲突检测,只要发现冲突就应该立即停止发送数据。 发生碰撞 3)随即延迟后重发。在检测到冲突、停止发送后,结点进行随机延迟后重发。若发16次后还没成功,则宣告发送失败,取消该帧的发送。随机延迟的算法一般采用截断二进制指数退避算法。 2.2 Ethernet帧的接收流程 帧的接收流程大致可以分为以下三个步骤: 1)检查是否发生冲突,若发生冲突,则丢弃该帧;若没有冲突,进入下一步。 2)检查该帧的目的地址看是否可以接收该帧,若可以接收,则进入下一步。 检查CRC检验和LLC数据

文档评论(0)

1亿VIP精品文档

相关文档