ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:714.15KB ,
资源ID:12162956      下载积分:6 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-12162956.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(《计算机网络原理》实验高凯.docx)为本站会员(b****8)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

《计算机网络原理》实验高凯.docx

1、计算机网络原理实验高凯计算机网络原理实验指导书陕西理工学院数学与计算机科学学院高凯2016年3月实验一 认识网络体系结构实验目的:理解网络拓扑结构的概念。了解校园网、计算机系网络实验室快速交换以太网,绘制出网络体系结构和网络拓扑图。实验器材:多媒体计算机,Visio 2003,学时分配:2学时实验类型:验证实验地点:软件实验室 实验内容:一.网络拓扑结构的概念网络拓扑结构是指用传输媒体互连各种设备的物理布局。将参与LAN工作的各种设备用媒体互连在一起有多种方法,实际上只有几种方式能适合LAN的工作。 目前大多数LAN使用的拓扑结构有3种: 星行拓扑结构 环行拓扑结构 总线型拓扑结构 星型结构是

2、最古老的一种连接方式,大家每天都使用的电话都属于这种结构。 环行结构的特点是,每个端用户都与两个相临的端用户相连,因而存在着点到点链路,但总是以单向方式操作。于是,便有上游端用户和下游端用户之称。 总线拓扑结构具有费用低、数据端用户入网灵活、站点或某个端用户失效不影响其它站点或端用户通信的优点。缺点是一次仅能一个端用户发送数据,其它端用户必须等待到获得发送权。媒体访问获取机制较复杂。尽管有上述一些缺点,但由于布线要求简单,扩充容易,端用户失效、增删不影响全网工作,所以是LAN技术中使用最普遍的一种。参阅实验一素材:visio说明书.CHM二.学会使用Visio软件绘制网络拓扑结构图。图1.1打

3、开Visio软件图1.2利用Visio软件选择建立的类别三.参考(实验一素材中的BNetwork.vsd,DNetwork.vsd)绘制自己定义的一个网络拓扑结构图。四. 参考素材中(网吧网络拓扑结构图)绘制某网吧的网络拓扑结构。五.参考陕西理工学院网络拓扑结构图绘制某学校的网络拓扑结构。(实验一素材)六.按照要求书写实验报告。实验二 物理层接口RS-232通信实验实验目的:理解串口通信的原理,制作零调制解调器、编制串口通讯程序、实现PC互连。实验器材:需要带有RS232接口的计算机,一条RS232连接线(双机互联或一台计算机的两个串口互联)。学时分配:2学时实验类型:验证实验地点:软件实验室

4、实验内容:一. 串口通信的概念:串口是计算机上一种非常通用设备通信的协议。大多数计算机包含两个基于RS232的串口。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232口。同时,串口通信协议也可以用于获取远程采集设备的数据。串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义并行通行状态时,规定设备线总常不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。典型地,串口用于AS

5、CII码字符的传输。通信使用3根线完成:(1)地线,(2)发送,(3)接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但是不是必须的。串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。对于两个进行通行的端口,这些参数必须匹配:a,波特率:这是一个衡量通信速度的参数。它表示每秒钟传送的bit的个数。例如300波特表示每秒钟发送300个bit。当我们提到时钟周期时,我们就是指波特率例如如果协议需要4800波特率,那么时钟是4800Hz。这意味着串口通信在数据线上的采样率为4800Hz。通常电话线的波特率为14400,28800和36600。波特

6、率可以远远大于这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的仪器间的通信,典型的例子就是GPIB设备的通信。b,数据位:这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际的数据不会是8位的,标准的值是5、7和8位。如何设置取决于你想传送的信息。比如,标准的ASCII码是0127(7位)。扩展的ASCII码是0255(8位)。如果数据使用简单的文本(标准 ASCII码),那么每个数据包使用7位数据。每个包是指一个字节,包括开始/停止位,数据位和奇偶校验位。由于实际数据位取决于通信协议的选取,术语“包”指任何通信的情况。c,停止位:用于表示单个包的最后一位。典型的值为1,1

7、.5和2位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。适用于停止位的位数越多,不同时钟同步的容忍程度越大,但是数据传输率同时也越慢。d,奇偶校验位:在串口通信中一种简单的检错方式。有四种检错方式:偶、奇、高和低。当然没有校验位也是可以的。对于偶和奇校验的情况,串口会设置校验位(数据位后面的一位),用一个值确保传输的数据有偶个或者奇个逻辑高位。例如,如果数据是011,那么对于偶校验,校验位为0,保证逻辑高的位数是偶数个。如果是奇校验,校验位位1,这样就有3个逻辑高位。高

8、位和低位不真正的检查数据,简单置位逻辑高或者逻辑低校验。这样使得接收设备能够知道一个位的状态,有机会判断是否有噪声干扰了通信或者是否传输和接收数据是否不同步。RS-232(ANSI/EIA-232标准)是IBM-PC及其兼容机上的串行连接标准。可用于许多用途,比如连接鼠标、打印机或者Modem,同时也可以接工业仪器仪表。用于驱动和连线的改进,实际应用中RS-232的传输长度或者速度常常超过标准的值。RS-232只限于PC串口和设备间点对点的通信。RS-232串口通信最远距离是50英尺。二. 串口通信基本接线方法目前较为常用的串口有9针串口(DB9)和25针串口(DB25),通信距离较近时(12

9、m),可以用电缆线直接连接标准RS232端口(RS422,RS485较远),若距离较远,需附加调制解调器(MODEM)。最为简单且常用的是三线制接法,即地、接收数据和发送数据三脚相连,本文只涉及到最为基本的接法,且直接用RS232相连。2.RS232C串口通信接线方法(三线制) 首先,串口传输数据只要有接收数据针脚和发送针脚就能实现:同一个串口的接收脚和发送脚直接用线相连,两个串口相连或一个串口和多个串口相连 同一个串口的接收脚和发送脚直接用线相连 对9针串口和25针串口,均是2与3直接相连; 两个不同串口(不论是同一台计算机的两个串口或分别是不同计算机的串口) 上面表格是对微机标准串行口而言

10、的,还有许多非标准设备,如接收GPS数据或电子罗盘数据,只要记住一个原则:接收数据针脚(或线)与发送数据针脚(或线)相连,彼些交叉,信号地对应相接,就能百战百胜。3.串口调试中要注意的几点: 不同编码机制不能混接,如RS232C不能直接与RS422接口相连,市面上专门的各种转换器卖,必须通过转换器才能连接; 线路焊接要牢固,不然程序没问题,却因为接线问题误事; 串口调试时,准备一个好用的调试工具,如串口调试助手、串口精灵等,有事半功倍之效果; 强烈建议不要带电插拨串口,插拨时至少有一端是断电的,否则串口易损坏。(参考实验二素材:串口通信编程大全.pdf)二.实验过程一:使用Win32创建串口通

11、讯程序(参考实验二素材:使用Win32创建串口通讯程序)介绍:这里介绍如何在Win32中处理串口。串口通讯可以通过多种技术实现,例如:ActiveX,I/O存取和文件操作。这里介绍Win32平台下通过文件操作技术使用串口。程序员可以使用 Microsoft Visual C+ Version 6.0所提供的kernel32.lib。在Microsoft Windows(2000,Me,XP and 95/98)中,串口作为文件处理。因此可以通过Windows文件创建函数打开串口。 这里不仅介绍了串口通讯,也介绍了在串口通讯应用程序中实现多任务,多任务可以使串口通讯应用程序在同一时间处理更多的任

12、务,例如:读数据任务,发送数据任务,GUI任务等。以下主题描述了Win32中基本的串口操作:初始化/打开串口通讯 创建端口句柄 获取配置(DCB) 修改配置 保存配置 设置通讯超时 接收/发送数据 发送数据 接收数据 关闭串口 设计步骤:初始化/打开串口打开串口的第一步是初始化或设置串口配置,目的是创建串口代理,整个过程我们都将用文件句柄作为串口代理。创建端口句柄串口句柄是可以被用来存取的串口对象句柄,创建串口句柄的函数是CreateFile,如下代码所示: handlePort_ = CreateFile(portName, / 端口设备: 默认 COM1GENERIC_READ | GEN

13、ERIC_WRITE, / 设备打开模式: 允许读写0, / 不共享NULL, / 默认安全设置OPEN_EXISTING, / 打开方式:打开已经存在的端口0, / 默认NULL); / 默认如图2所示,portName = COM1: portName 示一个const char*变量,它指定想创建串口句柄的端口名称。图2:CreateFile函数获取配置在控制设备中获取当前配置,配置中包含了用于设置串口通讯设备的参数。可以用 GetCommState函数得到当前设备配置并用指定通讯设备的当前配置填充设备控制块(DCB结构),如下代码所示: / 获取串口当前配置if (GetCommSta

14、te(handlePort_,&config_) = 0) AfxMessageBox(Get configuration port has problem.); return FALSE;修改配置当你已经在DCB结构中获取串口配置,你应该修改其中的参数,如下代码所示:/ 指定用户参数config_.BaudRate = dcb.BaudRate; / 波特率config_.StopBits = dcb.StopBits; / 停止位config_.Parity = dcb.Parity; / 奇偶校验config_.ByteSize = dcb.ByteSize; / 数据位 DWORD B

15、audRate : 波特率 (默认 = 9600) BYTE StopBits : 0,1,2 = 1, 1.5, 2 (默认 = 0) BYTE Parity : 0-4= 无, 奇, 偶, 标志, 空格 (默认 = 0) BYTE ByteSize : 数据位, 4-8 (默认 = 8) 对于典型的通讯,建议程序员使用默认值。图3所示,Watch对话框显示了典型通讯使用的默认值。图3:串口配置保存配置下一步是将已经修改的配置保存到设备控制中。调用SetCommState API函数保存配置。SetCommState函数设备控制块(DCB结构)配置通讯设备。该函数重新初始化所有的硬件控制设定

16、,但不清空输入输出队列。代码如下所示: if (SetCommState(handlePort_,&config_) = 0) AfxMessageBox(Set configuration port has problem.); return FALSE;设置通讯超时开启端口的最后一步是通过使用COMMTIMEOUTS数据结构和调用SetCommTimeouts函数进行通讯超时设置。如下代码所示: / COMMTIMEOUTS对象COMMTIMEOUTS comTimeOut; / 接收时,两字符间最大的时延comTimeOut.ReadIntervalTimeout = 3;/ 读取每字节

17、的超时comTimeOut.ReadTotalTimeoutMultiplier = 3;/ 读串口数据的固定超时/ 总超时 = ReadTotalTimeoutMultiplier * 字节数 + ReadTotalTimeoutConstantcomTimeOut.ReadTotalTimeoutConstant = 2;/ 写每字节的超时comTimeOut.WriteTotalTimeoutMultiplier = 3;/ 写串口数据的固定超时comTimeOut.WriteTotalTimeoutConstant = 2;/ 将超时参数写入设备控制SetCommTimeouts(ha

18、ndlePort_,&comTimeOut);ReadIntervalTimeout指定通讯线上两个字符到达的最大时延,以毫秒为单位。在ReadFile操作期间,时间周期从第一个字符接收到算起。如果收到的两个字符之间的间隔超过该值,ReadFile操作完毕并返回所有缓冲数据。如果ReadIntervalTimeout为0,则该值不起作用。如果值为MAXDWORD, 并且ReadTotalTimeoutConstant和ReadTotalTimeoutMultiplier两个值都为0, 则指定读操作携带已经收到的字符立即返回,即使没有收到任何字符。ReadTotalTimeoutMultipli

19、er指定以毫秒为单位的累积值。用于计算读操作时的超时总数。对于每次读操作,该值与所要读的字节数相乘。ReadTotalTimeoutConstant 指定以毫秒为单位的常数。用于计算读操作时的超时总数。对于每次读操作,ReadTotalTimeoutMultiplier与所要读的字节数相乘后与该值相加。如果ReadTotalTimeoutMultiplier和ReadTotalTimeoutConstant都为0,则在读操作时忽略总超时数。WriteTotalTimeoutMultiplier 指定以毫秒为单位的累积值。用于计算写操作时的超时总数。对于每次写操作,该值与所要写的字节数相乘。Wr

20、iteTotalTimeoutConstant指定以毫秒为单位的常数。用于计算写操作时的超时总数。对于每次写操作, WriteTotalTimeoutMultiplier与所要写的字节数相乘后与该值相加。如果 WriteTotalTimeoutMultiplier 和 WriteTotalTimeoutConstant都为0,则在写操作时忽略总超时数。提示:用户设置通讯超时后,如没有出错,串口已经被打开。发送数据串口数据发送多作为写文件处理的,程序员可以应用文件操作函数发送数据到串口。采用WriteFile函数发送数据到串口。if (WriteFile(handlePort_, / 文件句柄

21、outputData, / 数据缓冲区指针 sizeBuffer, / 字节数&length,NULL) = 0) / 接收成功发送数据长度的指针 AfxMessageBox(Reading of serial communication has problem.); return FALSE;提示:如果函数成功,返回非0值接收数据串口数据接收多作为读文件处理。程序员可以应用文件操作函数从串口接收数据。用ReadFile函数接收串口的数据。if (ReadFile(handlePort_, / 句柄 inputData, / 数据缓冲区指针 sizeBuffer, / 字节数 &length,

22、 / 指向已经读入的字节数 NULL) = 0) / 重叠I/O结构体 AfxMessageBox(Reading of serial communication has problem.); return FALSE;提示:如果函数成功,返回非0值关闭串口可以调用CloseHandle API函数关闭串口if(CloseHandle(handlePort_) = 0) / 调用该函数关闭串口 AfxMessageBox(Port Closeing isnt successed.); return FALSE;提示:如果函数成功,返回非0值。三实验过程二:VB 编写的串口程序(选作,不写实验报

23、告)(参考实验二素材:VB 写的串口程序)四.实验过程三:(硬件可作为参考,选作,不写实验报告)(参考实验二素材:硬件实现RS232通信实验.rm)利用单片机的TXD、RXD 口,使用户学会单片机串行口的使用。实验设备及器件:IBM PC 机 一台DP-51PROC 单片机综合仿真实验仪 一台(本实验不需要导线)实验内容1 编写一段程序,利用单片机的串行口向PC 机发送0X55。2 编写一段程序,接收PC 机串行口发送的0X55(ASCII 码为字母U),在单片机接收到0X55 的时候返回一个0X41(ASCII 码为字母A)。在PC 机一端,以接收到0X41(ASCII 码为字母A)为完成。

24、实验要求深刻理解MAX232 芯片的作用,学会使用单片机的的串行口,如果有时间用户可以做一下单片机之间的串行通讯。实验步骤1 用串口线连接PC 机和DP-51PROC 单片机综合仿真实验仪。图3.18 RS232 串行口电路图2 编写一段程序,利用单片机的串行口发送0X55,波特率为9600 Bps。(该程序不能在DP-51PROC 上进行仿真,所以只能下载,下载的操作可以参考本书的2.6 节)3 程序下载运行后可以在PC 的接收软件上看见接收到“UUUUUUU”。4 编写一段程序,在单片机接收到0X55(U)的时候返回一个0X41(A)。在PC 机一端,以接收到0X41(A)为完成,波特率为

25、9600 Bps。(该程序不能在DP-51PROC 上进行仿真,所以只能下载,下载的操作可以参考本书的2.6 节)。5 下载程序运行后,先从PC 机发送一个0X55(A),这时可以在PC 的接收软件看见接收到“A”。实验要求理解硬件结构,还可以先把程序编好,然后在Keil C51环境下进行软件仿真。还要学会PC 机上的串口调试软件的使用(DPFLASH 也内嵌一个串口调试器)。实验参考程序程序1:ORG 0000HLJMP MainORG 00F0HMain:MOV SP,#60H ;给堆栈指针赋初值MOV TMOD,#20H ;设置T1 为方式2MOV TH1,#0FDH ;设置波特率为96

26、00MOV TL1,#0FDHMOV SCON,#50H ;设置串口位方式1MOV PCON,#00HSETB TR1 ;定时器1 开始计数Mainloop:MOV SBUF,#55H ;开始发送SENDWT:JBC TI,MainloopAJMP SENDWT;End程序2:ORG 0000HLJMP MainORG 00F0HMain:MOV SP,#60H ;给堆栈指针赋初值MOV TMOD,#20H ;设置T1 为方式2MOV TH1,#0FDH ;设置波特率为9600MOV TL1,#0FDHMOV SCON,#50H ;设置串口位方式1MOV PCON,#00HSETB TR1 ;

27、定时器1 开始计数REC:JBC RI,SENDWTAJMP RECSENDWT:MOV A,SBUFCLR RICJNE A,#55H,RECMOV SBUF,#41H ;开始发送AJMP $;End实验三 小型局域网建设与基本路由配置实验实验目的:通过演示软件,验证距离矢量路由选择算法的功能和性能,了解动态路由算法的运行机制;通过设置不同的网络拓扑结构和线路延迟,掌握路由表的计算方法;了解路由器的基本配置方法,能够对路由器进行静态路由和动态路由的配置。学会使用PacketTracer软件。实验器材:多媒体计算机,以太局域网,TCP/IP协议,距离矢量路由选择算法实验程序,PacketTra

28、cer5 学时分配:4学时实验类型:综合实验地点:软件实验室实验原理:距离矢量路由基本原理 每个路由器通过测取与相邻路由器的距离,再依据与其相邻路由器交换的距离信息,间接地求出路由表;各路由器周期性地测取相邻路由器的距离; 向相邻路由器发送它到每个目的路由器的距离表; 同时,它也接收每个邻居路由器发来的距离表; 路由器中的老路由表在计算中不被使用。 计算示例距离矢量路由算法演示软件(试验三素材:Router.rar)实验内容:一通过演示程序,理解路由通过演示软件(试验三素材:RouterSY.rar):(注:RouterSY程序是距离取自线路往返时延的路由算法) 要求完成以下内容:(写入试验报

29、告) 理解距离理由算法 验证网络的路由功能; 改变线路延迟,验证该算法的自适应能力; 验证各路由器的路由表计算结果; 该算法存在什么问题?如何改进? 设置不同的网络拓扑结构,验证网络的路由功能。二距离矢量路由选择算法(在局域网中仿真)(写入试验报告)每4人一组,在局域网环境中,形成如图所示的逻辑结构。要求完成以下内容:1.每个主机模拟一个路由器,并获取4台主机的IP地址,以供路由选择。 辅助工具:获得本地主机的IP地址(软件实验三素材: getip.exe)2.思考路由选择算法程序。(实验三素材:RouterU1 文件夹内软件)算法:基本算法 (请求回送距离表计算路由表)3.虚拟设定线路延迟量

30、(即,距离取自输出队列长度)。 4.4台主机同时运行(也可单机运行,参看 使用说明.txt)。 5.通过每台主机的运行,验证各自的路由表和路由选择功能。三.学会使用PacketTrace软件(写入试验报告)(实验三素材中的 PacketTrace程序 文件夹里有软件安装包,大家可以拷贝)1.打开PacketTrace软件图3.1打开PacketTrace5.02.可以选择将软件汉化(选作,适合英语水平一般者)方法:将实验三素材languages文件夹 中的文件拷贝到PacketTrace安装目录下的languages文件夹中。在PacketTrace的选项中,语言包中选择: chinese.ptl,即可完成软件汉化。重新打开软件即可汉化。图3.2PacketTrace的选项图3.3语言包中选择: chinese.ptl3.练习使用PacketTracer5软件。(参考实验三素材:PacketTrace使用手册 文件夹)4.利用PacketTracer5软件构建设计的

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2