- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验7TCP数据包及连接建立过程分析
实验6 TCP数据包及连接建立过程分析
1.实验目的
1. 学习并分析TCP数据包的结构、含义
2.分析TCP连接的建立过程和数据传输过程。
2.实验设备与环境
1.Ethereal网络分析软件
2.实验文件“网络协议的层次观察.cap”
3.相关知识
3.1 TCP 数据报结构
一个 TCP 数据报由首部和数据两部分组成。
首部的前一部分是固定长度,共 20 字节,是所有TCP数据报必须具有的。
在首部的固定部分的后面是一些可选字段,其长度是可变的。
3.2 TCP 连接的建立过程
A 的 TCP 向 B 发出连接请求报文段,其首部中的同步比特 SYN 应置为 1,并选择序号 x,表明传送数据时的第一个数据字节的序号是 x。
B 的 TCP 收到连接请求报文段后,如同意,则发回确认。
B 在确认报文段中应将 SYN 置为 1,其确认号应为 x ( 1,同时也为自己选择序号 y。
A 收到此报文段后,向 B 给出确认,其确认号应为 y ( 1。
A 的 TCP 通知上层应用进程,连接已经建立。
当运行服务器进程的主机 B 的 TCP 收到主机 A 的确认后,也通知其上层应用进程,连接已经建立。
4.实验内容
4.1 TCP数据包的结构和含义分析
打开文件“网络协议的层次观察.cap”,这是一个包括100个分组的网络通信记录,详细记录了分组的序号、相对时间、源地址、目标地址、协议类型、内容,如图1是对第14个分组的详细信息。
图1 TCP数据包的解析
观察文件内第14个分组的IP数据包详细信息,见图1。
它的前16位是0050(H)=80,表示源端口是80,是HTTP协议
它的目的端口是1222,是客户端的一般端口。
当前发送的数据首字节是0(相对值),表示为首发字节。它携带的(HTTP)数据包长度是154字节,194(IP包全长)-20(IP首部长度)-20(TCP首部长度)=154字节,因此下一个携带数据包的序号该是154。
确认号是558,是对第13个分组的确认。
TCP首部长度是20字节; 5018(H)=0101 0000 0001 1000 (B),其中表示TCP首部长度长度.是前4位,即0101(B)=5,因此该TCP首部长度是5×4字节=20字节。
确认比特 ACK —— 只有当 ACK ( 1 时确认号字段才有效。当 ACK ( 0 时,确认号无效。
推送比特 PSH (PuSH) —— 接收 TCP 收到推送比特置 1 的报文段,就尽快地交付给接收应用进程,而不再等到整个缓存都填满了后再向上交付。
窗口字段大小32768
4.2 TCP连接的建立过程
选择“flow graph” 观察TCP连接的建立过程。
图2 选择“flow graph” 观察TCP连接的建立过程
图3 选择“flow graph”参数 观察TCP流
图4 TCP流
客户端进程(IP地址:6,端口1222)与服务器端进程(IP地址:20 端口80)建立连接的3次握手过程,对应的分别是第10、11、12数据分组。它们分别完成的是:
第10数据分组:客户端 的 TCP( SYN 应置为 1)向 服务器端 发出连接请求报文段;注意该分组的Option字段内容,给出了MSS=1460字节,Sack Permitted 等协商内容。该连接请求报文不携带数据(Len=0),但消耗一个序号。
第11数据分组:服务器端 的 TCP收到连接请求报文段后,同意,发回确认(确认报文段中将 SYN 置为 1,ACK=1);注意该分组的Option字段内容,给出了MSS=1408字节. 该连接请求确认报文不携带数据(Len=0),但消耗一个序号。同时初始窗口值为32768字节.
第12数据分组:客户端收到此报文段后,向服务器端 给出确认(ACK=1)。连接建立完成。
5.实验问题
问题一:什么是TCP协议?TCP数据包的结构和含义是怎样的?
问题二: TCP协议建立连接的过程是怎样的?
TCP 连接的建立过程
A 的 TCP 向 B 发出连接请求报文段,其首部中的同步比特 SYN 应置为 1,并选择序号 x,表明传送数据时的第一个数据字节的序号是 x。
B 的 TCP 收到连接请求报文段后,如同意,则发回确认。
B 在确认报文段中应将 SYN 置为 1,其确认号应为 x ( 1,同时也为自己选择序号 y。
A 收到此报文段后,向 B 给出确认,其确认号应为 y ( 1。
A 的 TCP 通知上层应用进程,连接已经建立。
当运行服务器进程的主机 B 的 TCP 收到主机 A 的确认后,也通知其上层应用进程,连接已经建立。
文档评论(0)