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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(精选修改版实验三EtherealLabTCP协议Word文档格式.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

精选修改版实验三EtherealLabTCP协议Word文档格式.docx

1、TCP报文分为头部和数据区两个部分,头部最小长度为20个字节,TCP报文格式定义如下图:其中序号指该报文段数据区首字节的序号(TCP把数据看作有序的字节流),确认号是期望从对方获得的下一个字节的序号,窗口大小是接收方告知发送方它可用的缓冲区大小。TCP是面向连接的传输层协议,发送数据前必须通过三次“握手”建立连接,首先客户端发送连接请求(此时SYN=1,ACK=0);然后服务器接受请求,分配缓存和变量,返回响应(此时SYN=1,ACK=1);客户端接受响应,分配缓存和变量,返回响应(此时SYN=0, ACK=1),TCP连接建立。TCP发送方每发送一个报文段,就启动一个重传定时器,如果在规定的

2、时间内没有收到接收方返回的确认,重传定时器超时,发送方将重传该报文。从发出数据到接收到确认的往返时间记作RTT(Round Trip Time).在原始算法中,重传定时器的定时宽度为Timeout=*EstimatedRTT,其中EstimatedRTT为估算的从发出数据到接收到确认的往返时间。而EstimatedRTT=* EstimatedRTT+(1-)*SampleRTT(注:本实验取0.875),这里SampleRTT是采样得到的从发出数据到接收到确认的往返时间。TCP采用“慢启动、拥塞避免、 快速重传、快速恢复”的拥塞控制算法,利用拥塞窗口变量(cwnd)控制发送速度。其中慢启动是

3、指TCP刚建立连接时将拥塞窗口变量cwnd设置为1个报文段大小,然后以指数方式放大cwnd,直到大于等于ssthresh(初始为最大拥塞窗口一半),进入拥塞避免阶段,进入拥塞避免阶段后,TCP采用线性增加方式放大cwnd。无论是慢启动阶段还是拥塞避免阶段,如果发生重传定时器超时的现象,就必须回到慢启动阶段,cwnd设置为1个报文段大小, ssthresh设置为上一次拥塞窗口值cwnd的一半。 三、实验步骤与实验问题探讨【注:实验步骤应用(x),问题用x】1.捕捉从你主机到远程服务器的一次大数据量的TCP传输。在开始研究TCP以前,我们需要在你主机与远程服务器之间进行一个文件的TCP传输,并利用

4、Ethereal来获取TCP传输所传递的一系列数据包。你可以访问一个网页去获取一个文件(这个文件包括了艾丽丝仙境历险记的ASCII码文本),存到你的主机上,然后利用HTTP的Post方法将该文件传至Web服务器。既然我们是从你的主机向另一个主机传送大量数据,我们将使用POST方法而不是GET方法。当然,在这一过程中我们将运行Ethereal来获取TCP报文段序列。按如下步骤操作:(1)打开你的浏览器,访问下列网址:http:/gaia.cs.umass.edu/ethereal-labs/alice.txt去获取Alice in Wonderland的ASCII备份,把该文件存到你主机上的某地

5、。(2)然后访问下列网址:/gaia.cs.umass.edu/ethereal-labs/TCP-ethereal-file1.html(3)你将看到如下画面。(4)使用“Browse”按钮输入你主机上含Alice文本的文件名,目前还不要按“Upload Alice.txt file”钮。(5)现在启动Ethereal开始抓包,按“Ethereal Packet Capture Options”界面上的“OK“键(这里我们不需要选任何选项)。(6)返回你的浏览器,按“Upload alice.txt file”键去上传文件至服务器gaia.cs.umass.edu,一旦文件上传成功,将在浏览

6、器窗口显示一个简短的文件提示。(7)停止Ethereal的抓包,你的Ethereal窗口看起来与下图相似。(8)如果你无法上网,你可以下载一个trace文件包,它是遵照上述步骤在作者机器上捕捉的2。尽管你可能已经获取了自己的数据,但是在研究下面的一些问题时你可能会发现下载一个trace文件包是很有价值的。(注释2:下载http:/gaia.cs.umass.edu/ethereal-labs/ethereal-traces.zip文件,解压文件tcp-ethereal-trace-1.文件中的数据是由运行于作者机器上的Ethereal捕获的,机器执行的步骤本文正文所述.一旦你获取了trace文

7、件,利用“File-Open”选择tcp-ethereal-trace-1文件,将它装入Ethereal,即可查看捕获数据内容)2.初探捕获数据包在分析TCP连接的细节之前,让我们先大体看一下trace文件.首先要过滤一下显示在Ethereal窗口的数据包,即在Ethereal窗口上方的显示过滤规则窗口输入”tcp”(小写,无引号,输入完后不要忘记回车),你看到的将是在你主机和gaia.cs.umass.edu之间传送的一系列TCP和HTTP数据包。你应该可以看到包含SYN字段的三次握手过程,可以看到一个HTTP POST数据报和一系列”TCP segment of a reassembled

8、 PDU”数据报被从你的主机发往gaia.cs.umass.edu。这是Ethereal的一种特殊方式:表明使用了多个TCP报文段来携带一个HTTP信息,你还应看到从gaia.cs.umass.edu返回到你主机的TCP确认报文。打开被Ethereal捕获的数据包文件tcp-ethereal-trace-1(参见注释2)。回答如下问题: 1向gaia.cs.umass.edu传送文件的客户端所使用的IP地址和TCP端口号是多少?要回答这个问题,可能最简单的方法是选择一个HTTP信息包,研究携带它的TCP数据包的细节,可以使用details of the selected packet head

9、er window来查看 2gaia.cs.umass.edu的IP地址是什么?采用什么端口号来收发TCP报文段? 若你能创建自己的trace文件,回答下列问题(自己在网络环境下做实验):3你的主机使用什么IP地址和TCP端口号向远程服务器传送文件? 3.TCP基础回答下列关于TCP报文段的问题:4被用于初始化TCP连接的“第一次握手”报文段的序列号是多少?在该报文段中,其标识位SYN、ACK取值为多少?5为了响应客户端主机的“第一次握手”,gaia.cs.umass.edu发送了SYN ACK报文段(即“第二次握手”),SYN ACK的序列号是多少?6包含HTTP POST命令的TCP报文段

10、的序列号是多少?注意:要找到这个POST命令,你需要仔细查看位于Ethereal窗口底部的数据包内容区域,在它的数据域中有一个“POST”字段, 7假定包含HTTP POST命令的TCP报文段是TCP连接中的第一个报文段,在TCP连接中前六个报文段的序列号是多少(包括那个包含HTTP POST命令的报文段在内)?每个报文段在什么时间被发送?对被接收的每个报文段返回的ACK是什么时候收到的?鉴于每个TCP报文段被发送的时间与对它的确认被收到的时间之间的差值,这六个报文段每一个的往返时延是多少(RRT)?每收到一个ACK后,EstimatedRTT的值是多少?假定第一个报文段的Estimated

11、RTT值与被测的RTT值相等,将其他后续报文段的Estimated RTT值根据实验原理部分介绍的公式进行计算。注:Ethereal有一个非常好的特色,它可以帮助你绘制被发送的TCP报文段的RTT图。从“listing of captured packets”窗口选择一个被从你主机发往gaia.cs.umass.edu的TCP报文段,然后选Statistics-TCP Stream Graph-Round Trip Time Graph. 8这六个TCP报文段的长度是多少? 3(注3:在tcp-ethereal-trace-1文件中所有TCP报文段均少于1460字节。这是因为该trace文件的

12、数据是在一台安装了以太网卡的机器上采集的,这种网卡将IP数据包的最大长度限定为1500字节(40字节的TCP/IP报头和1460字节的TCP载荷)。这个1500字节值是被以太网允许的标准最大长度。如果你的trace文件显示一个TCP长度大于1500字节,而你的计算机使用一个以太网连接,那么Ethereal正报告一个错误的TCP报告段长度;也可能它只显示了一个大的TCP报文段而不是多个小的报文段,而你的计算机实际上可能正传递着多个小的报文段,正如它所收到的ACK所显示的那样。这种在报文段长度上的不一致是由于以太网卡驱动和Ethereal软件的交互导致。如果你的主机存在这种不一致,我们推荐你采用下

13、载的trace文件。)9在整个trace文件中,接收方宣布的可用缓冲区空间的最小值是多少?有没有出现由于接收方缓冲区已满而阻碍了发送方发送数据的情况?10在trace文件中,有被重传的报文段吗?为了回答这个问题你将检查什么信息?11在一个ACK包中接收方通常确认几个报文段?你能找到一些例子说明接收方正在确认多个被接收的报文段吗?12TCP连接的吞吐量(每单位时间被传送字节)是多少?解释你是怎么计算这个值的?4.TCP拥塞控制 现在让我们检查一下单位时间从客户端到服务器发送数据量。我们并不是从Ethereal窗口的原始数据来计算,而是使用Ethereal的一项TCP画图功能Time-Sequen

14、ce-Graph(Stevens)来画图表示已得到的数据。选择“listing of captured-packets”窗口中的一个TCP报文段,然后选择菜单Statistics- Time-Sequence-Graph(Stevens),你将看到一幅类似下图的图,这幅图是根据trace文件tcp-ethereal-trace-1中捕获的数据生成。在图中,每一个点代表一个被发送的TCP报文段,每个点对应值分别是报文段的序列号和它被发送出去时的时间,注意:堆在一起的一组点代表被发送方紧挨着发送出的一系列包。根据http:/gaia.cs.umass.edu/ethereal-labs/ether

15、eal-traces.zip上的tcp-ethereal-trace-1分组trace文件回答下列有关于TCP报文段的问题:13使用Time-Sequence-Graph(Stevens)画图工具来观察从客户端发往gaia.cs.umass.edu服务器的报文段的序列号与时间点图,你能确定TCP的慢启动阶段从哪开始到哪结束吗?哪里开始执行拥塞避免?在这个来自于“真实世界”的trace文件中,不是所有数据都象课本上讲的那样整洁有序。14评论一下被测量的数据在哪些方面与我们在课本上研究的TCP的理想化的行为不同?15你从你的主机传送一个文件至gaia.cs.umass.edu服务器上这一过程获得trace文件,依据此文件回答上述13和14两个问题。(附注:下图是在另一个网络环境下的捕获结果) (注:文档可能无法思考全面,请浏览后下载,供参考。可复制、编制,期待你的好评与关注)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1