`

简述TCP三次握手过程,并说明为什么要3次握手

 
阅读更多
简述TCP三次握手过程,并说明为什么要3次握手
TCP 三次握手
TCP 连接是通过三次握手进行初始化的。三次握手的目的是同步连接双方的序列号和确认号并交换 TCP 窗口大小信息。以下步骤概述了通常情况下客户端计算机联系服务器计算机的过程:
1. 客户端向服务器发送一个SYN置位的TCP报文,其中包含连接的初始序列号x和一个窗口大小(表示客户端上用来存储从服务器发送来的传入段的缓冲区的大小)。
2. 服务器收到客户端发送过来的SYN报文后,向客户端发送一个SYN和ACK都置位的TCP报文,其中包含它选择的初始序列号y、对客户端的序列号的确认x+1和一个窗口大小(表示服务器上用来存储从客户端发送来的传入段的缓冲区的大小)。
3. .客户端接收到服务器端返回的SYN+ACK报文后,向服务器端返回一个确认号y+1和序号x+1的ACK报文,一个标准的TCP连接完成。
TCP 使用类似的握手过程来结束连接。这可确保两个主机均能完成传输并确保所有的数据均得以接收
TCP Client

Flags

TCP Server
1 Send SYN (seq=x)

----SYN--->

SYN Received
2 SYN/ACK Received

<---SYN/ACK----

Send SYN (seq=y), ACK (x+1)
3 Send ACK (y+1)

----ACK--->

ACK Received, Connection Established
w: ISN (Initial Sequence Number) of the Client
x: ISN of the Server




三次握手的目的是建立双向的连接,第一次握手是客户端向服务器端发出请求
第二次握手是服务器端告诉客户端,第一次握手是成功的,即可以从客户端发送到客户端,
第三次握手是客户端告诉服务器端,第二次握手是成功的,即可以从客户端到服务器端
这样就保证了客户端和服务器端的双向通信
分享到:
评论

相关推荐

    TCP协议三次握手示意图

    1. 第一次握手(SYN):客户端想要与服务器建立连接,它会生成一个随机的序列号seq(Sequence Number),并将此序列号和SYN(Synchronize Sequence Numbers)标志位设置在TCP报文中发送给服务器。此时,客户端进入...

    【Linux】TCP三次握手,四次挥手的过程

    握手为什么是3次? 2次可以吗? 为什么不是4次呢? 你能不能详细的介绍一下TCP三次握手的详细过程? 能不能说一下服务端和客户端在三次握手建立连接中的状态和行为? 挥手为什么是4次? 3次可以吗 ? (因为分开总比...

    计算机网络常见面试题

    为什么会采用三次握手,若采用二次握手可以吗? 5、请简述一下TCP的三次握手和四次挥手协议? 6、TCP和UDP相关的协议分别有哪些? 7、TCP和UDP有什么区别? 8、Post和Get有什么区别? 9、在浏览器中输入...

    TCP协议和UDP协议的异同点是什么

    TCP 需要经过三次握手才能建立一个安全连接,虽然效率比较低,但是安全性高。TCP 协议适用于那些对数据完整性和可靠性要求高的应用环境,例如文件传输、电子邮件等。 相比之下,UDP 协议是一种不可靠的、无连接的...

    测试工程师实操代码部分,简述分布的技术点,用于自动化测试中

    ------tcp三次握手过程、最后一次的状态,英文;为什么是四次挥手,不是三次 Python ------ unittest 和 pytest 的区别? ------使用 Python+Locusts 做性能测试 MySQL ------mysql左连接和右链接的区别 Linux ------...

    开放式通讯指令-基于博图V16 TCP通讯测试实例

    第一章 开放式用户通信简介 ...第七章 TCP建立连接三次握手 第八章 TCON (V≥4.0) 的新调用行为握手信号处理 第九章 TCP断开连接四次挥手 第十章 TCP长连接与短连接/保活 第十一章 TCP-Scoke缓冲区/Shadow Buffer

    tcp.rar_TCP通信

    1. 三次握手:TCP连接的建立需要经过三次消息交换,确保双方都准备好进行通信。 2. 序号和确认应答:TCP通过序列号跟踪每个数据段,并用确认应答确保接收方正确接收了数据。 3. 流量控制:TCP通过滑动窗口机制来控制...

    NS2-TCP.rar_TCP NS2_ns tcp_ns-2 tcp_ns2 tcp

    1. **TCP的基础知识**:介绍TCP的基本原理,如三次握手、四次挥手、滑动窗口机制、拥塞控制算法(如慢启动、拥塞避免、快速重传和快速恢复等)。 2. **NS-2简介**:简述NS-2的安装、配置和使用,以及其在网络模拟中...

    TCPI/P协议族及OSI模型

    它通过建立三次握手连接,并使用序列号和确认机制来保证数据的正确性。 UDP(User Datagram Protocol)则是一个无连接的协议,适用于对实时性要求高但对数据完整性不那么敏感的应用,如视频流或在线游戏。它不保证...

    2011华农网络编程试卷(含答案)[归类].pdf

    简述TCP三次握手建立连接的过程,并解释其目的。(10分) TCP三次握手的过程如下: 1. 第一次握手:客户端发送一个带有SYN(同步序列编号)标志的数据包给服务器,请求建立连接,此时客户端进入SYN_SENT状态。 2....

    用TCP/IP进行网际互联第三卷_客户——服务器(含全部配套源代码)

    1. **TCP连接与断开**:详细解释TCP的三次握手和四次挥手过程,以及它们在客户端和服务器之间的交互。 2. **套接字编程**:介绍如何使用套接字API在客户端和服务器之间建立连接,发送和接收数据。 3. **服务器端...

    Java网络编程--编写T/TCP应用程序

    1) 避免了TCP的三次握手过程,这对于短暂的连接来说可以节省时间。 2) 减少了连接时间短于MSL(Maximum Segment Lifetime)时,连接停留在TIME_WAIT状态的时间,减轻了网络资源的占用。 要利用T/TCP,应用程序需要...

    计算机网络英汉互译题及历年简答题.doc

    31. 请解释什么是TCP/IP的三次握手过程,并简述其作用。(10分) TCP/IP的三次握手是建立TCP连接时的过程,确保双方都有能力并愿意进行通信。具体过程如下: (1) 第一次握手:客户端发送一个带有SYN(同步序列编号)...

    参考2-视频-综合整理面试题-运维面试题笔记详细总结

    4. 简述 TCP 三次握手的过程 TCP 三次握手是指在建立连接时,客户端和服务器端之间的三次交互过程。第一次握手客户端发送 SYN 报文,服务器端响应 SYN+ACK 报文,第三次握手客户端响应 ACK 报文,确认连接的建立。 ...

    网安面试必考题合集及答案(PDF资料)

    9、TCP 三次握手的过程以及对应的状态转换 10、TCP和UDP协议区别 11、多线程、多进程区别 12、NTLM原理 13、什么是由间人攻击 14、防御中间人攻击的方案 15、描述 tcp/udp的区别及优劣,及其发展前景 16、公司网络...

    TCPIP协议的FLash讲解动画(共15节)

    8. **TCP连接建立与关闭**:详述三次握手和四次挥手的过程,确保数据传输的可靠性。 9. **TCP流量控制与拥塞控制**:介绍滑动窗口机制,如何防止数据丢失和拥塞。 10. **IP路由**:讨论路由器的工作原理,以及IP...

    TCP/IP 详解卷一:协议

    3. **TCP协议详解**:TCP协议的三次握手和四次挥手过程是重点,书中会详细解析这两个过程以及其背后的可靠性机制。TCP的流量控制、拥塞控制、滑动窗口机制、确认与重传策略等也会有详尽的阐述。 4. **UDP协议简述**...

    计算机网络实验三运输层

    2. **理论基础**:深入讲解TCP和UDP的工作原理,包括三次握手、四次挥手、滑动窗口机制、UDP的无连接特性等。 3. **分析方法**:如何通过数据包来分析连接状态、传输速率、丢包情况等,以验证协议的正确性和性能。 ...

Global site tag (gtag.js) - Google Analytics