【计算机网络经典面试题】简述 TCP 三次握手和四次挥手的过程

这篇具有很好参考价值的文章主要介绍了【计算机网络经典面试题】简述 TCP 三次握手和四次挥手的过程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.三次挥手

【计算机网络经典面试题】简述 TCP 三次握手和四次挥手的过程,计算机网络,tcp/ip,计算机网络,网络
1)第一次握手:建立连接时,客户端向服务器发送SYN包(seq=x),请求建立连接,等待确认
2)第二次握手:服务端收到客户端的SYN包,回一个ACK包(ACK=x+1)确认收到,同时发送一个SYN包(seq=y)给客户端
3)第三次握手:客户端收到SYN+ACK包,再回一个ACK包(ACK=y+1)告诉服务端已经收到
4)三次握手完成,成功建立连接,开始传输数据
【计算机网络经典面试题】简述 TCP 三次握手和四次挥手的过程,计算机网络,tcp/ip,计算机网络,网络
开始数据传输…

2.四次挥手

【计算机网络经典面试题】简述 TCP 三次握手和四次挥手的过程,计算机网络,tcp/ip,计算机网络,网络
1)客户端发送FIN包(FIN=1)给服务端,告诉它自己的数据已经发送完毕,请求终止连接,此时客户端不发送数据,但还能接收数据
2)服务端收到FIN包,回一个ACK包给客户端告诉它已经收到包了,此时还没有断开socket连接,而是等待剩下的数据传输完毕(此时客户端进入FIN-WAIT1状态)
3)服务端等待数据传输完毕后,向客户端发送FIN包,表明可以断开连接(客户端进入FIN-WAIT2状态)
4)客户端收到后,回一个ACK包表明确认收到,等待一段时间(2MSL),确保服务端不再有数据发过来,然后彻底断开连接文章来源地址https://www.toymoban.com/news/detail-844782.html

3.拓展

说说 TCP 2次握手行不行?为什么要3次

  1. 为了实现可靠数据传输, TCP 协议的通信双方, 都必须维护一个序列号, 以标识发送出去的数据包中, 哪些是已经被对方收到的。 三次握手的过程即是通信双方相互告知序列号起始值, 并确认对方已经收到了序列号起始值的必经步骤
  2. 如果只是两次握手, 至多只有连接发起方的起始序列号能被确认, 另一方选择的序列号则得不到确认

到了这里,关于【计算机网络经典面试题】简述 TCP 三次握手和四次挥手的过程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 计算机网络—TCP

    源端口号和目标端口号:16位字段,用于标识TCP连接的源和目标端口号。 序列号(Sequence Number):32位字段,用于标识发送的数据字节流中的第一个字节的序号。 确认号(Acknowledgment Number):32位字段,确认收到的字节序号,即期望接收的下一个字节的序号。 数据偏移:4位字

    2024年02月13日
    浏览(37)
  • 【计算机网络】TCP协议

    实验目的 应用所学知识: 1. 熟悉 TCP 的协议格式。 2. 理解 TCP 对序列号和确认号的使用。 3. 理解 TCP 的流量控制算法和拥塞控制算法。 实验步骤与结果 1.任务一: 将Alice.txt上传到服务器: 使用wireshark捕获数据包,看到计算机和gaia.cs.umass.edu之间的一系列 TCP 和 HTTP 通信,包

    2023年04月20日
    浏览(37)
  • 计算机网络-TCP协议

    TCP被称为面向连接的,因为在应用程序开始互传数据之前,TCP会先建立一个连接,该连接的建立涉及到 三次“握手 ”。 TCP的连接不是一条真实存在的电路,而是一条逻辑链接 ,其共同状态仅保留在两个通信端系统的TCP程序中。 TCP连接也是点对点的,即TCP连接只能存在于一

    2024年02月08日
    浏览(37)
  • 【计算机网络】简易TCP网络小程序

    1.1.1 服务端创建套接字 我们将TCP服务器封装成一个类,当我们定义出一个服务器对象后需要马上对服务器进行初始化,而初始化TCP服务器要做的第一件事就是创建套接字。 TCP服务器在调用socket函数创建套接字时,参数设置如下: 协议家族选择 AF_INET ,因为我们要进行的是网

    2024年02月16日
    浏览(62)
  • 05.计算机网络——TCP协议

    TCP协议——TCP全称为 “ 传输控制协议 (Transmission Control Protocol)”,对数据的传输进行一个详细的控制。 源/目的端口号: 表示数据是从哪个进程来, 到哪个进程去; 32位序号/32位确认号: 用来支持确认应答和按序到达 4位TCP报头长度: 表示该TCP报头有多少个4字节大小; 6位标志位

    2024年02月16日
    浏览(30)
  • 【计算机网络篇】TCP协议

    ✅作者简介:大家好,我是小杨 📃个人主页:「小杨」的csdn博客 🐳希望大家多多支持🥰一起进步呀! TCP(Transmission Control Protocol)是一种在计算机网络中广泛使用的传输层协议,用于在网络上可靠地传输数据。 TCP 提供了可靠的、面向连接的通信,并负责数据的划分、排

    2024年02月11日
    浏览(32)
  • 【计算机网络】TCP协议详解

    目录 1. TCP协议头部格式 2. TCP协议原理  2.1 可靠传输机制 2.1.1 确认应答机制 2.1.2 超时重传机制 2.1.3 连接管理机制(三次握手,四次挥手) 2.1.4 流量控制 2.1.5 拥塞控制  2.2 效率机制  2.2.1 滑动窗口  2.2.2 延迟应答  2.2.3 捎带应答  3. 粘包问题  4. TCP的异常情况  5. TCP协议特

    2024年01月18日
    浏览(30)
  • 计算机网络——TCP/IP网络层次模型

    我们上一次了解了OSI的网络层次模型,如果还没有看过上一次OSI网络模型的可以点击这里: https://blog.csdn.net/qq_67693066/article/details/136597950 我们今天来看实际在生活中使用更广的 TCP/IP网络模型 : TCP/IP网络模型的起源可以追溯到20世纪60年代末和70年代初,当时美国国防部的高级

    2024年03月17日
    浏览(35)
  • 计算机网络(3) --- 网络套接字TCP

    计算机网络(2) --- 网络套接字UDP_哈里沃克的博客-CSDN博客 https://blog.csdn.net/m0_63488627/article/details/131977544?spm=1001.2014.3001.5501 目录 1.TCP 1.服务端接口介绍 1.listen状态 2.accept获取链接 2.客户端接口介绍 2.TCP的服务器和客户端接口实现 1.服务端 1.成员函数 2.接口 start()实现方式 1.单

    2024年02月14日
    浏览(39)
  • 计算机网络技术与JAVA网络编程URL编程-----JAVA入门基础教程-----计算机网络经典

    import org.junit.jupiter.api.Test; import java.io.*; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; public class URLTest { public static void main(String[] args) { //URL:统一资源定位符(种子),一个URL就定位着互联网上某个资源的地址 //http:应用层协议,IP地址,端口号,资源地址,参数

    2024年02月15日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包