`
javafan_303
  • 浏览: 957176 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

TCP三次握手分析

 
阅读更多

TCP(Transmission Control Protocol) 传输控制协议

TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:

位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish结束) RST(reset重置) URG(urgent紧急)

Sequence number(顺序号码) Acknowledge number(确认号码)

第一次握手:主机A发送位码为syn=1,随机产生seq number=1234567的数据包到服务器,主机B由SYN=1知道,A要求建立联机;

第二次握手:主机B收到请求后要确认联机信息,向A发送ack number=(主机A的seq+1),syn=1,ack=1,随机产生seq=7654321的包

第三次握手:主机A收到后检查ack number是否正确,即第一次发送的seq number+1,以及位码ack是否为1,若正确,主机A会再发送ack number=(主机B的seq+1),ack=1,主机B收到后确认seq值与ack=1则连接建立成功。

完成三次握手,主机A与主机B开始传送数据。


在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。
第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;
第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态; 第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。 完成三次握手,客户端与服务器开始传送数据.

实例:

IP 192.168.1.116.3337 > 192.168.1.123.7788: S 3626544836:3626544836
IP 192.168.1.123.7788 > 192.168.1.116.3337: S 1739326486:1739326486 ack 3626544837
IP 192.168.1.116.3337 > 192.168.1.123.7788: ack 1739326487,ack 1

第一次握手:192.168.1.116发送位码syn=1,随机产生seq number=3626544836的数据包到192.168.1.123,192.168.1.123由SYN=1知道192.168.1.116要求建立联机;

第二次握手:192.168.1.123收到请求后要确认联机信息,向192.168.1.116发送ack number=3626544837,syn=1,ack=1,随机产生seq=1739326486的包;

第三次握手:192.168.1.116收到后检查ack number是否正确,即第一次发送的seq number+1,以及位码ack是否为1,若正确,192.168.1.116会再发送ack number=1739326487,ack=1,192.168.1.123收到后确认seq=seq+1,ack=1则连接建立成功。

 

图解:
一个三次握手的过程(图1,图2)

 

(图1)

(图2)

 

第一次握手的标志位(图3)
我们可以看到标志位里面只有个同步位,也就是在做请求(SYN)
3
(图3)

第二次握手的标志位(图4)
我们可以看到标志位里面有个确认位和同步位,也就是在做应答(SYN + ACK)
4
(图4)

第三次握手的标志位(图5)
我们可以看到标志位里面只有个确认位,也就是再做再次确认(ACK)
5

(图5)

一个完整的三次握手也就是 请求---应答---再次确认

分享到:
评论

相关推荐

    TCP三次握手PPT课件.ppt

    标题中的“TCP三次握手PPT”指的是TCP协议在建立连接时执行的三次握手过程,这一过程是TCP可靠传输的基础。TCP是一种面向连接的传输层协议,确保数据在传输前双方已建立可靠的通信链路。 描述中提到的“TCP三次握手...

    Wireshark入门 tcp三次握手

    为了更好地理解TCP三次握手的过程,我们可以通过Wireshark来进行实际的观察与分析。 ##### 4.1 准备工作 - **安装Wireshark**:首先确保您的计算机上已经安装了最新版本的Wireshark。 - **选择捕获接口**:启动...

    wireshark抓包分析tcp三次握手四次挥手

    在TCP/IP通信中,TCP连接的建立和关闭过程分别称为三次握手和四次挥手,这两个过程对于理解TCP连接的工作原理至关重要。 首先,我们来详细讲解TCP的三次握手过程: 1. **第一次握手**:客户端(Client)发送一个...

    TCP三次握手.docx

    TCP 三次握手机制详解 TCP 三次握手机制是TCP/IP协议中的一种面向连接的可靠传输机制,它是传输层中的核心机制。在网络通信中,TCP 三次握手机制保证了数据的可靠传输和面向连接的通信。 什么是 TCP 三次握手机制...

    TCP三次握手

    TCP三次握手,TCP三次握手是TCP连接建立过程的可靠性保证

    wireshark抓包分析tcp三次握手四次挥手详解及网络命令

    ### Wireshark抓包分析TCP三次握手四次挥手详解及网络命令 #### 一、OSI与TCP/IP体系结构模型 在深入理解Wireshark抓包分析TCP三次握手及四次挥手之前,我们首先需要了解OSI七层模型与TCP/IP四层/五层模型的基础...

    TCP三次握手与四次挥手.pdf

    首先,来详细介绍TCP三次握手的过程: 1. 第一次握手:客户端发送一个带有SYN(同步序列编号)标志的数据包给服务器端,进入SYN_SEND状态,表示客户端希望与服务器建立连接。这个包中同时也会包含客户端的初始...

    TCP协议三次握手过程分析

    ### TCP协议三次握手过程分析 #### 一、TCP协议简介 传输控制协议(Transmission Control Protocol,简称TCP)是互联网中最核心的协议之一,它属于传输层协议,主要负责在网络环境中提供可靠的、面向连接的数据...

    使用wireshark抓包分析TCP三次握手

    用wireshark实际操作来分析tcp三次握手的整个过程,看完会对三次握手有更深入了解

    模拟TCP三次握手

    通过以上分析可以看出,这段代码尝试模拟TCP三次握手过程中的数据包构建与发送,但由于代码存在一些错误和缺失部分,实际运行时可能会遇到问题。理解TCP三次握手的过程对于深入学习网络编程和协议设计具有重要意义。

    Wireshark抓包分析TCP“三次握手,四次挥手”.doc

    Wireshark 抓包分析 TCP“三次握手,四次挥手” Wireshark 是一个功能强大的网络抓包工具,通过它我们可以抓包并分析 TCP/IP 传输过程。在本文中,我们将通过 Wireshark 来抓包和分析 TCP“三次握手,四次挥手”...

    tcp三次握手与四次握手及SOCKE函数对应

    首先,我们来看“TCP三次握手”。当两个设备想要建立一个TCP连接时,它们必须经过以下三个步骤: 1. 第一次握手:客户端发送一个带有SYN(同步序列号)标志的数据段,请求建立连接。这个数据段中包含了客户端选择的...

    tcp3次握手实验报告

    捕获TCP连接的过程的数据包。 2)分析三次握手建立TCP连接的过程,描述数据包序列图。(包括 SYN标志和SEQ值) 1)检查FTP交互数据报文中用户名和密码是否用明文传送

    flash作品:tcp三次握手动画演示

    flash作品:tcp三次握手动画演示 计算机网络、多媒体通信课堂大作业、课程设计等。

    TCP三次握手和四次挥手面试题详解.pdf

    TCP三次握手和四次挥手是互联网中最重要的基础知识点之一,尤其在面试中,它们是检验应聘者是否具备扎实网络基础知识的常用问题。面试官通常会考察应聘者对这些过程的理解程度,以及能否准确描述其细节。以下是关于...

    tcp三次握手协议

    TCP的三次握手是建立可靠连接的重要过程,它确保了两个通信端点都能正确理解对方的意图,避免了数据丢失或重复发送的问题。 首次握手:在TCP连接建立之初,客户端会发送一个带有SYN(同步序列编号)标志的数据包给...

    TCP三次握手及原理

    TCP三次握手及原理,以MITNICK攻击为例,进行说明

    TCP三次握手及原理PPT教案.pptx

    TCP三次握手及原理PPT教案.pptx

Global site tag (gtag.js) - Google Analytics