一.序当我们聊到TCP协议的时候,聊的最多的就是三次握手与四次挥手。但是大部分资料和文章,写的都是正常的情况下的流程。但是你有没有想过,三次握手或者四次挥手时,如果发生异常了,是如何处理的?又是由谁来处理?TCP作为一个靠谱的协议,在传输数据的前后,需要在双端之间建立连接,并在双端各自维护连接的状态。TCP并没有什么特别之处,在面对多变的网络情况,也只能通过不断的重传和各种算法来保证可靠性。建立连
分类:
其他好文 时间:
2020-02-15 11:39:11
阅读次数:
84
序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生;给字节编上序号后,就给每一个报文段指派一个序号;序列号seq就是这个报文段中的第一个字节的数据编号。 确认号ack:占4个字节,期待收到对方下一个报文段的第一个数据字节的序 ...
分类:
其他好文 时间:
2020-02-13 23:07:44
阅读次数:
64
加密过程具体TCP实现 步骤 1 : 客户端通过发送Client Hello报文开始SSL通信(这里是在TCP的三次握手已经完成的基础上进行的)。报文中包含客户端支持的SSL的指定版本、加密组件列表(所使用的加密算法及密钥长度等)。 步骤 2 : 服务器可进行SSL通信时,会以Server Hell ...
分类:
Web程序 时间:
2020-02-13 21:13:52
阅读次数:
134
44 TCP 协议详解 TCP 协议 传输控制协议, Transmission Control Protocol,其功能包括:传输;控制 传输包括:建立连接、关闭连接、保证可靠 建立连接:三次握手 三次握手(Three-Way Handshake)即建立TCP连接,就是指建立一个TCP连接时,需要客 ...
分类:
其他好文 时间:
2020-02-13 16:55:35
阅读次数:
78
传输层实现可靠会话的协议TCP协议 Q:如何建立连接?为什么要这样 建立连接? A:通过发送TCP报文的方式实现建立连接,其中共需要三次“握手” 为什么需要三次握手来建立连接:这和TCP报文的设计有关 每个报文只能包含一个ACK一个SYN和一个FIN标志位, (1)A给B发送 {SYN=1(我想建立 ...
分类:
其他好文 时间:
2020-02-07 22:38:52
阅读次数:
83
一、三次握手图 第一次握手 客户端向服务器发出连接请求报文,这时报文首部中的同部位SYN=1,同时随机生成初始序列号 seq=x,此时,TCP客户端进程进入了 SYN-SENT(同步已发送状态)状 态。TCP规定,SYN报文段(SYN=1的报文段)不能携带数据,但需要消耗掉一个序号。这个三次握手中的 ...
分类:
其他好文 时间:
2020-02-06 10:42:48
阅读次数:
90
网络分层: 位码 建立连接 –> TCP/IP 三次握手 HTTP 请求 – 应答 –> HTTP的报文 关闭连接 –> TCP四次挥手 TCP UDP区别 Socket 建立Socket链接 HTTP与Socket HTTPS网络分层:从底往上依次是:物理层->数据链路层->网络层->传输层->会... ...
分类:
其他好文 时间:
2020-02-05 10:20:16
阅读次数:
75
为什么tcp连接需要三次握手才能建立连接 主要是为了初始化sequence number的初始值,通信的双方要互相通知双方的sequence number,这个要作为以后数据通信的序号,保证以后不会因为网络上的传输问题而乱序,tcp会使用这个序号来拼接数据。因此,在服务器回发它的sequence n ...
分类:
其他好文 时间:
2020-02-04 23:58:58
阅读次数:
135
HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,和 TCP/IP 协议族内的其他众多的协议相同, 用于客户端和服务器之间的通信,请求访问文本或图像等资源的一端称为客户端, 而提供资源响应的一端称为服务器端。 HTTP协议交互的典型描述 为什么要“三次握 ...
分类:
Web程序 时间:
2020-02-02 01:16:53
阅读次数:
114
TCP Fast Open (TFO/TCP快速打开) TCP快速打开(TCP Fast Open,TFO)是什么? TCP快速打开(TCP Fast Open,TFO)是对TCP的一种简化握手手续的拓展,用于提高两端点间连接的打开速度。简而言之,就是在TCP的三次握手过程中传输实际有用的数据。这个 ...
分类:
其他好文 时间:
2020-02-01 19:11:31
阅读次数:
98