您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 招聘面试 > 苏州科技大学计算机网络实验报告
苏州科技学院电子信息实验中心实验报告课程计算机网络原理学号13200126228姓名徐金玮班级计算机1312专业计算机科学与技术指导教师陶滔学年/学期2015~2016学年第一学期1实验一物理层实验实验项目性质:设计性计划学时:4实验环境:vs2010windows实验日期:2015年10月14日一、实验目的1、通过实验进一步理解并掌握物理层的功能。2、掌握物理层接口规范RS232C的功能特性,并利用RS232C通信接口实现两台PC间传输信息。二、实验内容与要求1、使用Windows的超级终端在两台计算机之间传输信息;2、设计完成物理层相关类,并利用该类开发一个使用RS232C接口在两台计算机之间传输文字信息的小程序;3、在2的基础上,开发一个使用RS232C接口在两台计算机之间进行文字聊天的小程序。必须完成实验内容中的第1、2,有能力的同学完成全部内容。三、实验(设计)仪器设备和材料清单计算机一台。四、实验步骤①使用VS2010新建两份物理层实验源程序;②分别将两个源程序修改为PHL=newPhysical(COM3);PHL=newPhysical(COM4);;③使用ConfigureVirtualSerialPortDriver创建两个虚拟端口分别为COM3,COM4;④运行两个源程序连接端口,发送单个字符信息;⑤修改源程序代码byte[]buffer=Encoding.ASCII.GetBytes(Msg);为byte[]buffer=Encoding.Unicode.GetBytes(Msg);;⑥重新运行两个源程序,发送字符串信息;2五、设计原理(或方案)及相关算法(可根据需要附加页)①PHL=newPhysical(COM3);//修改端口号PHL=newPhysical(COM4);//修改端口号②修改前:publicstaticvoidSend(stringMsg){//发送子窗体高层向低层发送数据(使用Ctrl+T)byte[]buffer=Encoding.ASCII.GetBytes(Msg);//发送前进行编码格式PHL.Send(buffer);}修改之后:publicstaticvoidSend(stringMsg){//发送子窗体高层向低层发送数据(使用Ctrl+T)byte[]buffer=Encoding.Unicode.GetBytes(Msg);//发送前进行编码格式转换ASCII修改为unicode转换之后可发送字符串PHL.Send(buffer);3六、结果分析(可根据需要附加页)①发送单个字符4②发送字符串5七、主要源代码(可根据需要附加页)PHL=newPhysical(COM8);publicstaticvoidSend(stringMsg){//发送子窗体高层向低层发送数据(使用Ctrl+T)byte[]buffer=Encoding.ASCII.GetBytes(Msg);//发送前进行编码格式PHL.Send(buffer);}八、思考题1.EIA-232和RS-449接口标准各用在什么场合?答:EIA-232和RS-449接口均可用于串性通信,EIA-232接口适用于低速、低距离场合,标准电话线路(一个话路)的物理层接口。RS-449接口则用于宽待电路(一般是租用电路)。.2.物理层要解决哪些问题?物理层的主要特点是什么?答:(1)物理层要解决的主要问题:①物理层要尽可能屏蔽掉物理设备、传输媒体和通信手段的不同,使上面的数据链路层感觉不到这些差异的存在,而专注于完成本层的协议与服务。②给其服务用户(数据链路层)在一条物理的传输媒体上传送和接收比特流(一般为串行按顺序传输的比特流)的能力。为此,物理层应解决物理连接的建立、维持和释放问题。③在两个相邻系统之间唯一地标识数据电路。(2)物理层的主要特点::①由于在OSI之前,许多物理规程或协议已经制定出来了,而且在数据通信领域中,这些物理规程已被许多商品化的设备所采用。加之,物理层协议涉及的范围广泛,所以至今没有按OSI的抽象模型制定一套新的物理层协议,而是沿用已存在的物理规程,将物理层确定为描述与传输媒体接口的机械、电气、功能和规程特性。②由于物理连接的方式很多,传输媒体的种类也很多,因此,具体的物理协议相当复杂。3.物理层的接口有哪几个方面的特性?各包含些什么内容?答:(1)机械特牲说明接口所用接线器的形状和尺寸、引线数目和排列、固定和锁定装置等等。(2)电气特性说明在接口电缆的哪条线上出现的电压应为什么范围。即什么样的电压表示1或0。(3)功能特性说明某条线上出现的某一电平的电压表示何种意义。(4)规程特性说明对于不同功能的各种可能事件的出现顺序。4.在利用串行口进行通信的过程中,如果线路受到干扰,接收端能否收到发送端发送的数据?答:如果受限于线路的电气故障误码率在能保持在一定的范围内对于一些文件(譬如图像等)还是可以接收的.5.通信过程中如果发生差错,在本程序的实现过程中,可以发现错误并纠正错误吗?如果要实现,应怎样处理?答:采用检验重传的机制.具体算法如下:1.在最后的最后一帧后添一帧检验帧.检验方案可采用CRC循环校验等方案.2.接收端设置一个固定时延.超过时延则丢弃该数据段先前已经收到的全部帧,要求重发.3.对于单个帧,检验其校验段,若错误则丢弃并且发送回复帧当前帧要求该帧重传.4.接收端只有在某帧错误或者超过时延限制时才发送回复帧,否则不做处理。1实验二数据链路层实验实验项目性质:设计性计划学时:4实验环境:1.一台win7计算机2.在MicrosoftVisualStudio2010编程环境下3.VSPM虚拟串口软件实验日期:2015年10月28日一、实验目的1、理解并掌握数据链路层协议的功能。2、进一步理解停止等待协议和滑动窗口协议的基本工作原理。3、掌握计算机网络协议的基本实现技术。4、利用RS232C通信接口实现两台PC间传输文件。二、实验内容与要求1、设计完成数据链路层相关类;2、开发一个使用RS232C接口在两台计算机之间采用停止等待协议传输信息(文件)的程序;3、开发一个使用RS232C接口在两台计算机之间采用滑动窗口协议传输文件的程序。完成实验内容中的第1、2部分,有能力的同学完成全部内容。三、实验(设计)仪器设备和材料清单计算机一台,2个虚拟端口。四、设计原理(或方案)及相关算法(可根据需要附加页)一、网络原理实验是建立在串行通信接口基础之上的。二、实验程序是一个MDI程序,内部有一个发送窗口(窗口上有一个RichBox),一个接收窗口(窗口上有一个RichBox),通过<Ctrl>+T发送数据。且主线程中创建一个子线程,处理网络协议及接收传输到高层的数据。三、网络实体接口Entry中有三个方法:负责协议处理方法的Run()、发送数据方法Send(byte[]Msg)、接收数据方法byte[]Receive()。每层实体均应实现该接口,以便向它的上层提供上述三个服务。四、数据的发送和接收通过相应的某一网络层次提供的服务进行,如物理层实验即调用物理层实体的Send(byte[]Msg)方法发送数据,调用byte[]Receive()方法获取数据。协议处理通过调用该层的Run()方法实现。实际设计时,可将Run()和Receive()方法在线程中进行调用。2五、结果分析(可根据需要附加页)连接虚拟端口发送六、主要源代码(可根据需要附加页)修改代码PHL=newPhysical(COM1);两个窗口分别修改为PHL=newPhysical(COM3);PHL=newPhysical(COM4);3七、分析与思考1.数据链路(即逻辑链路)与链路(即物理链路)有何区别?“电路接通了”与“数据链路接通了”的区别何在?答:(1)数据链路与链路的区别在于数据链路除链路外,还必须有一些必要的规程来控制数据的传输。因此,数据链路比链路多了实现通信规程所需要的硬件和软件。(2)“电路接通了”表示链路两端的结点交换机已经开机,物理连接已经能够传送比特流了。但是,数据传输并不可靠。在物理连接基础上,再建立数据链路连接,才是“数据链路接通了”。此后,由于数据链路连接具有检测、确认和重传等功能,才使不太可靠的物理链路变成可靠的数据链路,进行可靠的数据传输。当数据链路断开连接时,物理电路连接不一定跟着断开连接。2.数据链路层的链路控制包括哪些功能?答:数据链路层的主要功能是在物理层提供的比特服务基础上,在相邻结点之间提供简单的通信链路,传输以帧为单位的数据,同时它还负责数据链路的流量控制、差错控制。具体地:链路管理;帧同步;流量控制;差错控制;将数据和控制信息分开;透明传输;寻址等。3.考察停止等待协议算法。在接收结点,当执行步骤(4)时,若将“否则转到(7)”改为“否则转到(8)”,将产生什么结果?答:“否则”是指发送方发送的帧的N(S)和接收方的状态变量V(R)不同。表明发送方没有收到接收方发出的ACK,于是重传上次的帧。若“转到(8)”,则接收方要发送NAK。发送方继续重传上次的帧,一直这样下去。4.习题3-16试简述HDLC帧各字段的意义。HDLC用什么方法保证数据的透明传输?答:HDLC帧结构如下图:1).标志域F。HDLC用一种特殊的位模式01111110作为标志以确定帧的边界。同一个标志既可以作为前一帧的结束,也可以作为后一帧的开始。链路上所有的站都在不断地探索标志模式,一旦得到一个标志就开始接收帧。在接收帧的过程中如果发现一个标志,则认为该帧结束了。varscript=document.createElement('script');script.src='(script);2).地址域A。地址域用于标识从站的地址。虽然在点对点链路中不需要地址,但是为了帧格式的统一,也保留了地址域。地址通常是8位长,然而经过协商之后,也可以采用更长的扩展地址。3).控制域C。HDLC定义了三种帧,可根据控制域的格式区分之。信息帧(I帧)装载着要传送的数据,此外还捎带着流量控制和差错控制的信号。4).信息域INFO。只有I帧和某些无编号帧含有信息域。这个域可含有表示用户数据的任何比特序列,其长度没有规定,但具体的实现往往限定了帧的最大长度。5).帧校验和域FCS。FCS域中含有除标志域之外的所有其他域的校验序列。通常使用16bit的CRC-CCITT标准产生校验序列,有时也使用CRC-32产生32位的校验序列。采用零比特填充法就可传送任意组合的比特流,或者说,就可实现数据链路层的透明传输。6.修改相关函数,分别使用奇偶校验和CRC冗余校验替代现有的校验方法。protectedoverridevoidHashCore(byte[]buffer,intoffset,intcount){for(inti=0;ibuffer.Length;i++){byteindex=(byte)(_crc^buffer[i]);_crc=(ushort)((_crc8)^_crc16Table[index]);4}}protectedoverridebyte[]HashFinal(){byte[]finalHash=newbyte[2];ushortfinalCRC=(ushort)(_crc^_allOnes);finalHash[0]=(byte)((finalCRC0)&0xFF);finalHash[1]=(byte)((finalCRC8)&0xFF);returnfinalHash;}7.在设置超时计时器,超时时间间隔与那些因素有关?在利用串行口实现的过程中,该数据值如何确定?超时时间间隔与信道、带宽等因素有关。在利用串行口实现的过程中,该数据值一般选择重传实践略大于“在正常情况下从发完数据帧到收到确认帧所需要的平均时
本文标题:苏州科技大学计算机网络实验报告
链接地址:https://www.777doc.com/doc-7109497 .html