美文网首页
TCP的三次握手和四次挥手

TCP的三次握手和四次挥手

作者: ss酱 | 来源:发表于2019-01-13 16:16 被阅读30次

复习到网络协议的时候,对这个有点模糊,整理一下。

基础知识

1、TCP是一个面向连接、可靠的、基于字节流的传输层协议。TCP层是位于IP层之上,应用层之下的中间层
2、报文解释
SYN:同步序列号,请求建立连接,在其序列号字段进行序列号初始值设定
ACK:确认标识,当ACK=1时,确认字段才有效。
FIN:用来释放一个连接,FIN=1时,标识报文段的发送方数据已经发送完毕,要求释放连接。
seq:数据包本身的序列号,4个字节
ack:对收到数据包的确认,4个字节,值=等待接收的数据包的序列号。
连接的请求

建立连接

三次握手

Q1:为什么连接需要3次,而不是2次、4次?
A1:为防止失效的请求报文又传送到服务端导致错误。如果只有2次握手,失效的请求被服务端接收后,服务端建立连接状态,会一直等待发送数据,浪费资源。3次则可以确保连接的可靠,不需要4次握手。

终止连接

四次挥手

Q2:为什么关闭需要四次
A2:客户端发送fin请求关闭时,服务端收到报文,但是不会立即关闭,先回复一个ACK报文告诉客户端“你发的FIN报文已经收到”,为了等待服务端的所有报文都发送完毕再发送FIN报文,所以需要四次握手。
Q3:为什么需要等待时间
A3:为了防止服务端的释放连接请求丢失,等待服务端超时重传。另一种情况是客户端发生故障的话,服务端在等待时间过后会再次发送探测信息,决定是否释放连接

TCP vs UDP

顺带复习一下两者的区别

TCP(Transmission Control Protocol ) UDP(User Datagram Protocol)
连接 面向连接,端到端(一对一)。传输数据之前,三次握手。传输完要断开连接 面向无连接,可实现广播发送(一对多、多对一、多对多)
机制 确认、窗口、重传、拥塞控制机制。 无。不保证数据正确性、顺序
传输数据模式 面向字节流 面向报文
特点 比UDP慢、效率低,占用系统资源高,多重机制消耗时间长 请求资源少,所以快。
应用 http、https、ftp、POP、smtp 查询应答服务、即时语音、视频、NFS
逻辑通信信道 全双工(任意一段可以发送/接收数据)的可靠信道 不可靠信道

相关文章

  • 不积跬步--TCP三次握手和四次挥手过程

    本文来至转载TCP三次握手和四次挥手过程 TCP三次握手和四次挥手过程 1、三次握手 (1)三次握手的详述 首先C...

  • TCP的三次握手和四次挥手

    参考资料:[1].【TCP】详解TCP 三次握手和四次挥手[2]. iOS:为什么TCP连接要三次握手,四次挥手[...

  • 2、tcpdump抓包分析三次握手和四次挥手

    TCP为什么需要三次握手、四次挥手 三次握手 三次握手 四次挥手 SYN flood攻击

  • TCP连接的建立和终止

    目录(1)三次握手(2)四次挥手(3)TCP状态转换图(4)TCP连接三次握手+四次挥手+状态转换 一:三次握手 ...

  • 知识点总结1-计算机网络

    1.TCP的三次握手和四次握手 建立TCP的话,需要三次握手才能建立,而断开连接则需要四次挥手 三次握手:通俗描述...

  • tcp/ip

    TCP/IP--理解TCP三次握手和四次挥手 - 简书

  • 三次握手和四次挥手

    三次握手是TCP建立连接时进行的,四次挥手是TCP断开连接是进行的,要弄明白三次握手和四次挥手,需要了解TCP的协...

  • TCP三次握手和四次挥手小结

    最近又在看TCP三次握手和四次挥手了,真的是每次看都会有新的体会啊。 通讯的动作 TCP三次握手和四次挥手看似复杂...

  • TCP连接管理(三次握手,四次挥手)

    TCP连接管理(三次握手,四次挥手) 三次握手 四次挥手 client和server的连接状态变化 主动发起关闭的...

  • tcp

    报文结构、三次握手、四次挥手 Tcp--三次握手,四次挥手[https://www.jianshu.com/p/a...

网友评论

      本文标题:TCP的三次握手和四次挥手

      本文链接:https://www.haomeiwen.com/subject/hwfldqtx.html