TCP协议分析

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TCP协议分析相关的知识,希望对你有一定的参考价值。

一,实验目的

1.掌握TCP协议的首部格式。

2.掌握TCP协议的序号确认机制。

3.掌握TCP协议的流量控制机制。

4.学会协议分析软件发送自定义数据包的方法。

二,实验原理

1.TCP协议是面向连接服务和提供可靠数据传输的协议,通过抓包分析TCP如何建立连接,数据传输,释放连接来分析TCP协议。

2.TCP协议是通过三次握手来建立连接,通过序列号和确认号来维护双方的通信,通过发送窗口的大小来控制流量。

3.通过多台电脑建立一台电脑的TCP连接,可以分析流量控制的实质。

三,实验步骤


1.在IP地址为 192.168.0.250的主机A的命令行窗口里输入telnet 218.65.113.46 会发现连接不上,因为23号端口没有打开。打开IP地址为218.65.113.46的主机B的浏览器和主机A的抓包软件Irris,然后在主机A命令行输入telnet 218.65.113.46 80,过滤TCP及80,23端口,捕获TCP协议数据包,并分析。  


(1)

技术分享



 

这是第一次握手: IP地址为192.168.0.250的主机A向IP地址为218.65.113.46的主机B发送连接请求,A随机初始化自己的序列号50596762,确认号为0,初始化A的接收窗口大小为16384,发送SYN=1,此时ACK=0。

 (2)

技术分享

  

这是第二次握手: B 随机初始化自己的序列号804733534,确认号为A第一次握手的序号加1(期望对方发送的下一个数据的第一个字节的编号)做确认,为50596763,初始化B的接收窗口大小,发送SYN=1,ACK。

(3)


 


技术分享



第三次握手:  主机A对主机B做确认,SYN=0,ACK=1,序列号为上一帧的确认号,确认号为B第二次握手的序号加1。

  (4)第4至9帧。


第四帧为IP地址为192.168.0.250的主机A向IP地址为218.65.113.46的主机B发送的帧


 


技术分享




(5)第五帧为B向A发送的:


 


技术分享


(7)第7帧还是B向A发送的:

技术分享




 


技术分享


(11)由于有条件的抓包,有些特殊情况不特别列出来分析。

TCP协议有正常断开连接和非正常断开连接。RST为1表示为异常断开连接。RST复位重置标记,表示TCP连接中出现严重错误,必须强行释放连接。

注意:在TCP中,特殊报文(SYN=1,FIN=1,RST=1)的确认号加1。


以上是关于TCP协议分析的主要内容,如果未能解决你的问题,请参考以下文章

TCP协议分析

网络协议分析课程设计:基于TCP协议网上聊天程序

TCP源码分析 - 三次握手之 connect 过程

TCP协议学习笔记报文分析

TCP/IP协议栈概述及各层包头分析

使用Wireshark分析-以太网帧与ARP协议-IP协议-ICMP-UDP协议-TCP协议-协议HTTP-DNS协议