计算机通信网络实验书,武汉理工大学计算机网络与通信实验指导书.doc

41528d3028836879cd698677c3999917.gif武汉理工大学计算机网络与通信实验指导书.doc

1计算机网络与通信实验指导书武汉理工大学教材中心2009年7月2目录实验一协议分析1传输层协议3实验二协议分析2应用层协议9实验三基于网络通信协议的设计(设计性)143实验一协议分析1传输层协议一、实验目的1、了解传输层协议的基本工作原理、了解传输层协议的分类、熟悉传输层协议的工作过程二、实验原理在因特网上,传输层协议负责将数据从一个应用程序传递到另一个应用程序。它即不关心所传输的具体数据,也不关心能否正确识别目标主机。TCP(传输控制协议)和UDP(数据报协议)是目前的两个主要的传输层协议。传输层协议指定了用于正确定位应用程序发送端和接收端的源端口号和目的端口号。这一过程称为多路复用和多路分解。同一因特网主机上的应用程序所产生的多个数据流复用一个输出连接。同一因特网主机上不同应用程序的多个数据流可能也会通过一个输入连接传输,但是他们最终将会被分解并传输到各自的应用程序中去。1、TCP是因特网中最主要的传输层协议。它能够在两个应用程序间提供可靠地有序数据流传输,即使这两个程序运行在不同的主机上并且被一个会丢失、重排序或者破坏分组的网络所隔开。TCP能够检测传输过程中分组是否丢失、延迟和改变,如是则重传这些分组,从而提供了可靠地数据流传输。实现可靠传输借助TCP报文段的首部,如图所示目的端口数据偏移检验和选项和填充源端口序号紧急指针窗口确认号保留FIN32BITTCP首部数据20字节SYNRSTPSHACKURGTCP报文段首部TCP报文段首部源端口和目的端口各占2个字节,是运输层与应用层的服务接口。4序号占4个字节。TCP连接传送的数据流中的每一个字节都被编上一个序号。首部中序号字段的值指的是本报文段所发送的数据的第一个字节的序号。确认号占4个字节,是期望收到对方下一个报文段的数据的第一个字节的序号。数据偏移占4BIT,它指出报文段的数据起始处距离TCP报文段的起始处有多远。实际上就是TCP报文段首部的长度。保留占6BIT,保留为今后使用。紧急比特URG当URG1时,表明紧急指针有效。它告诉系统报文段中有紧急数据,应尽快传送。确认比特ACKACK1时确认号字段才有效,ACK0时确认号字段无效。推送比特PUSH接收方接收到PUSH1的报文段时会尽快的将其交付给接收应用进程,而不再等到整个接收缓存都填满后再向上交付。复位比特RST当RST1时,表明TCP连接中出现严重差错,必须释放连接。复位比特还用来拒绝一个非法的报文段或拒绝打开一个连接。同步比特SYN在连接建立时用来同步序号。当SYN1而ACK0时,表明这是一个连接请求报文段。对方若同意建立连接,应在响应的报文段中使SYN1和ACK1。因此,SYN1就表示这是一个连接请求或连接接收报文。终止比特FIN当FIN1时,表明此报文段的发送端的数据已发送完毕,并要求释放运输连接。窗口占2个字节,用来控制对方发送的数据量,单位是字节,指明对方发送窗口的上限。校验和占2个字节,校验的范围包括首部和数据两个部分,计算校验和时需要在报文段前加上12字节的伪首部。紧急指针占2个字节,指出本报文段中紧急数据最后一个字节的序号。只有当紧急比特URG1时才有效。选项长度可变。TCP只规定了一种选项,即最大报文段长度MSSMAXIMUMSEGMENTSIZE。TCP连接建立的过程如下图所示5SYN,SEQX主机BSYN,SEQY,ACKX1ACKY1被动打开主动打开确认确认主机ATCP三次握手TCP连接释放的过程如下图所示FIN,SEQXACKX1ACKY1FIN,SEQY,ACKX1应用进程释放连接通知主机应用进程应用进程释放连接主机B主机ATCP释放2、UDPUDP与TCP比较,不提供可靠的有序报文传输。UDP首部字段由4个部分组成,其中两个是可选的。各16BIT的源端口和目的端口用来标记发送和接受的应用进程。因为UDP不需要应答,所以源端口是可选的,如果源端口不用,那么置为零。在目的端口后面是长度固定的以字节为单位的长度域,用来指定UDP数据报包括数据部分的长度,长度最小值为8OCTETS。首部剩下地16BIT是用来对首部和数据部分一起做校验和的,这部分是可选的,但在实际应用中一般都使用这一功能。由于缺乏可靠性,UDP应用一般必须允许一定量的丢包、出错和复制。6三、实验内容1、分析TCP报文段的结构,熟悉各个字段的内容、功能、格式和取值范围;2、TCP连接建立与释放3、TCP与UDP的比较四、实验说明为方便获取实验用数据流,借助PCATTCP调试工具和数据包捕获软件。1、PCATTCP调试工具PCATTCP是一个简单、实用的TCP和UDP调试工具,使用这个工具产生TCP或UDP数据流进行实验,可以避免应用层协议数据的复杂性干扰传输层的协议分析,而且这个工具可以通过不同的参数组合可控制地产生各种传输层的情形。参数说明格式PCATTCP–参数参数R接受端T发送端LX表示缓冲区大小(X设置缓冲区)NX表示一共发送X个数据包U表示UDP协议PPORT号设置通信端口号2、数据包捕获软件1)主界面72)捕获界面捕获界面分为列表框、协议框、原始框列表框显示的是捕获的所有分组信息。包括分组发送的时间,源地址、目的地址、协议等信息。协议框显示所选分组的各层协议。包括物理层帧、以太网帧、用户数据报协议、超文本传输协议等。原始框显示分组中包含的数据的每个字节。从中可以观察最原始的传输数据。其中方框左边显示的是十六进制的数据,右边显示的是ASCII码。通过以上界面分析捕获的数据分组,了解传输层协议的工作过程。3、实验方法说明1)TCP连接建立与释放TCP是因特网中最主要的传输层协议。它能够在两个应用程序间提供可靠的有序数据流传输。TCP报文段源端口、目的端口、序号、确认号、标志位等信息。标志位PSH位表示发送端应用程序要求数据立刻发送。8SYN位同步序号,用来建立连接。FIN位表示传送结束。ACK位应答标志。查看TCP三次握手电脑两台分别配置IP地址;开始运行进入DOS命令界面;其中一台为接收端,配置命令为C\PCATTCP–R通信双方启动捕获软件;另一台为发送端,配置配置命令为C\PCATTCP–T–N1接收端电脑IP地址通信结束后停止捕获,查看捕获信息。2)TCP与UDP比较UDP实验方法与TCP类似,只需要在配置命令后增加一个参数“U”就可以了。五、实验报告要求1、简述实验目的、原理;2、简述TCP连接建立与释放的过程;3、比较TCP与UDP的特点。9实验二协议分析2应用层协议一、实验目的1、了解应用层协议的基本工作原理、了解应用层协议的分类、熟悉应用层协议的工作过程二、实验原理在因特网上,应用层协议直接支持网络应用软件,如WEB浏览器、FTP、电子邮件等等。应用层协议定义了一种语言,使网络应用程序能够相互“交谈”,满足用户需求。应用程序员使用称为套接字的高级对象通过网络进行数据的读写。套接字的行为相当于文件操作向该文件中写的数据被发送到网络,从该文件中读的数据则来自于网络某处运行着的另一应用程序。套接字极大地隐藏了在网络中实际发送数据的复杂性,它允许应用程序员及应用层协议编写者,集中精力去开发由应用程序功能所要求的简单且自然的数据交换的方法。HTTP协

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值