3.2.2 利用协议分析器分析TCP/IP的工作原理
TCP/IP是Transmission Control Protocol/Internet Protocol的简写,中文可翻译为"传输控制协议/因特网互联协议"。这个协议是Internet最基本的协议,是Internet(国际互联网)的基础。简单地说,它是由网络层的IP协议和传输层的TCP协议组成的,或者说TCP/IP是一个协议集。本小节主要讨论TCP协议和它的可靠传输原理。
所谓可靠传输,就是指在数据正式传输之前,利用一种触发和认定的方式来保证发送方与接收方之间的可靠性,以防止数据在传输的过程中出现丢包及其他传输不可达的现象。这好比人类世界在交换价值产品之前,必须保证接收的人能真正地收到发出的产品,接收方在收到产品之后用一种回应的方式告诉并确认发送方,产品已经成功到达。而在网络世界中的TCP协议,就是利用这样的确认过程来保障数据报文的可靠性,并利用"TCP三次握手"的方式体现出来的。这就是网络世界中著名的"TCP三次握手"。
注意:TCP实际上是"四次握手",为什么人们却叫"TCP三次握手"?
TCP协议是一个相互触发、相互确认的过程。客户机要触发服务器,服务器也要触发客户机。建立握手状态的标记syn=1表示开始触发,ack=1表示对触发的回应确认。并且在TCP建立可靠连接时只会使用这两个标记。正确的TCP握手过程如图3.14所示。
客户机要触发服务器,向服务器发出syn=1的信号。
服务器向客户机发送ack=1的确认信号。
服务器再向客户机发送syn=1的触发信号,以达到相互触发的效果。
客户机再回应服务器的触发信号ack=1。
图3.14 正确的TCP握手过程上述为TCP握手过程,但是以上过程就是四次握手了,而并非所谓的"TCP三次握手"那么为什么也会叫"TCP三次握手"呢?这是因为服务器与其把给客户机的ack=1确认信息和触发客户机的syn=1分成两次发送,倒不如将其两次合并成一个信号:syn=1,ack=1。其实syn=1是触发客户机的,而ack=1是响应客户机触发的消息。所以将四次握手变三次,这是"TCP三次握手"的得名,也是对TCP正确的理解,如图3.15所示。
(点击查看大图)图3.15 TCP三次握手
演示:分析与取证"TCP三次握手"工作原理
演示目标:利用协议分析器,捕获一个访问HTTP的TCP三次握手的帧,并理解TCP三次握手的标记字段。理解TCP理论上四次握手变三次握手的原因。使用微软服务器系统集成的协议分析器完成捕获的帧和分析任务。
演示环境:如图3.15所示。
演示步骤:
***步:在192.168.0.100的计算机上安装Windows 2003 Server操作系统。
第二步:在192.168.0.100的计算机上安装操作系统集成的网络协议分析器。
第三步:在服务器上捕获的帧TCP的***次握手,如图3.16所示。
(点击查看大图)图3.16 服务器上捕获的帧TCP的***次握手在服务器上捕获的帧TCP的第二次握手,如图3.17所示。
图3.17 服务器上捕获的帧TCP的第二次握手在服务器上捕获的帧TCP的第三次握手,如图3.18所示。
(点击查看大图)图3.18 服务器上捕获的帧TCP的第三次握手演示:利用协议分析器分析TCP/IP的工作原理。
【责任编辑:云霞 TEL:(010)68476606】
点赞 0