一种MSS协商方法、装置、电子设备及存储介质制造方法及图纸

技术编号:38387664 阅读:24 留言:0更新日期:2023-08-05 17:42
本申请提供一种MSS协商方法、装置、电子设备及存储介质。该方法应用于客户端,且包括:在需要与服务端进行MSS协商时,向与客户端连接的第一转发设备发送携带有第一MSS值的第一SYN报文;在接收到与客户端连接的第二转发设备发送的由服务端发往客户端且携带有第二MSS值和第三MSS值的第二SYN ACK报文时,将第二SYN ACK报文中携带的第二MSS值确定为最终向服务端发送TCP报文时使用的MSS值,并向第一转发设备发送携带有第四MSS值的ACK报文,以使第一转发设备直接将ACK报文转发给服务端,由服务端将第四MSS值确定为最终向客户端发送TCP报文时使用的MSS值。本申请可提高网络体验。本申请可提高网络体验。本申请可提高网络体验。

【技术实现步骤摘要】
一种MSS协商方法、装置、电子设备及存储介质


[0001]本申请涉及通信
,尤其涉及一种MSS协商方法、装置、电子设备及存储介质。

技术介绍

[0002]在传输控制协议(Transmission Control Protocol,TCP)中采用最大报文段长度(Maximum Segment Size,MSS)对TCP报文中数据字段的最大长度进行了限制,同时,传输控制协议/网际协议(Transmission Control Protocol/Internet Protocol,TCP/IP)对数据链路层每次发送的数据帧的最大长度也进行了限制,数据链路层的这个特性称作最大传输单元(Maximum Transmit Unit,MTU)。TCP报文传输到IP层,并在IP层封装成IP报文,当IP报文的长度大于MTU值时,IP层的路由设备就需要对IP报文进行分片处理,把IP报文分成若干分片,每一分片的长度都小于或者等于MTU值。
[0003]目前,需要进行通信的客户端和服务端在建立TCP连接的过程中,会按照通用的MSS协商机制协商出各自向对端本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种最大分段大小MSS协商方法,其特征在于,所述方法应用于客户端,所述方法包括:在需要与服务端进行MSS协商时,向与所述客户端连接的第一转发设备发送由所述客户端发往服务端且携带有第一MSS值的第一同步SYN报文,以使所述第一转发设备根据第一SYN报文和所述第一转发设备支持的最大MSS值确定第二SYN报文,并将所述第二SYN报文转发给下一跳设备,以由下一跳设备在自身为所述服务端时,生成并发出携带有第二MSS值和第三MSS值的第一SYN应答ACK报文,或者在下一跳设备不为所述服务端时,将自身作为所述第一转发设备,将所述第二SYN报文作为所述第一SYN报文,开始执行根据第一SYN报文和所述第一转发设备支持的最大MSS值确定第二SYN报文的步骤,其中,所述第一SYN ACK报文中携带的第二MSS值的取值与所述服务端接收到的第二SYN报文中携带的第一MSS值的取值相同;在接收到与所述客户端连接的第二转发设备发送的由所述服务端发往所述客户端且携带有第二MSS值和第三MSS值的第二SYN ACK报文时,将所述第二SYN ACK报文中携带的第二MSS值确定为最终向所述服务端发送TCP报文时使用的MSS值,并向所述第一转发设备发送携带有第四MSS值的ACK报文,以使所述第一转发设备直接将所述ACK报文转发给所述服务端,由所述服务端将所述第四MSS值确定为最终向所述客户端发送TCP报文时使用的MSS值;其中,第一MSS值用于表征所述客户端在发送方向上使用的最小MSS值,初始时,第一MSS值的取值为所述客户端支持的最大MSS值;第二MSS值用于表征所述服务端回传的所述客户端在发送方向上使用的最小MSS值,且所述第二SYN ACK报文中携带的第二MSS值的取值与所述第一SYN ACK报文中携带的第二MSS值的取值相同;第三MSS值用于表征所述服务端在发送方向上使用的最小MSS值,初始时,第三MSS值的取值为所述服务端支持的最大MSS值;第四MSS值用于表征所述客户端回传的所述服务端在发送方向上使用的最小MSS值,且对应的取值与所述第二SYN ACK报文中携带的第三MSS值的取值相同;所述第二SYN ACK报文为所述第二转发设备在接收到上一跳设备发送的第三SYN ACK报文时,根据所述第三SYN ACK报文和所述第三转发设备支持的最大MSS值确定出所述第二SYN ACK报文后发送给所述客户端的,在上一跳设备为所述服务端时,所述第三SYN ACK报文为所述第一SYN ACK报文;或者,在上一跳设备不为所述服务端时,所述第三SYN ACK报文中携带的第二MSS值的取值与所述第一SYN ACK报文中携带的第二MSS值的取值相同。2.一种最大分段大小MSS协商方法,其特征在于,所述方法应用于位于客户端和服务端之间的任一转发设备,所述方法包括:接收第一同步SYN报文,其中,所述第一SYN报文中携带有第一MSS值,且,在该转发设备为与所述客户端连接的转发设备时,所述第一SYN报文为所述客户端在需要与服务端进行MSS协商时发送过来的,或者在该转发设备不为与所述客户端连接的转发设备时,所述第一SYN报文为该转发设备对应的上一跳设备根据接收到的由所述客户端发往所述服务端的第二SYN报文确定出所述第一SYN报文后发送过来的;根据所述第一SYN报文和自身支持的最大MSS值确定第二SYN报文,并将所述第二SYN报
文转发给下一跳设备,以由下一跳设备在自身为所述服务端时,生成并发出携带有第二MSS值和第三MSS值的第一SYN应答ACK报文,或者在下一跳设备不为所述服务端时,将自身作为该转发设备,将所述第二SYN报文作为所述第一SYN报文,开始执行根据所述第一SYN报文确定第二SYN报文的步骤,其中,所述第一SYN ACK报文中携带的第二MSS值的取值与所述服务端接收到的第二SYN报文中携带的第一MSS值的取值相同;在接收到上一跳设备发送的由所述服务端发往所述客户端且携带有第二MSS值和第三MSS值的第二SYN ACK报文时,根据所述第二SYN ACK报文和自身支持的最大MSS值确定第三SYN ACK报文,并将所述第三SYN ACK报文转发给所述下一跳设备,以由所述下一跳设备在自身为所述客户端时,将所述第三SYN ACK报文中携带的第二MSS值确定为最终向所述服务端发送TCP报文时使用的MSS值,并向该转发设备发送携带有第四MSS值的ACK报文,以由该转发设备将所述ACK报文转发给所述服务端,由所述服务端将所述第四MSS值确定为最终向所述客户端发送TCP报文时使用的MSS值,或者在所述下一跳设备不为所述客户端时,将自身作为该转发设备,将所述第三SYN报文作为所述第二SYN报文,开始执行根据所述第二SYN ACK报文确定第三SYN ACK报文的步骤;其中,第一MSS值用于表征所述客户端在发送方向上使用的最小MSS值,初始时,第一MSS值的取值为所述客户端支持的最大MSS值;第二MSS值用于表征所述服务端回传的所述客户端在发送方向上使用的最小MSS值,且所述第二SYN ACK报文中携带的第二MSS值的取值与所述第一SYN ACK报文中携带的第二MSS值的取值相同;第三MSS值用于表征所述服务端在发送方向上使用的最小MSS值,初始时,第三MSS值的取值为所述服务端支持的最大MSS值;第四MSS值用于表征所述客户端回传的所述服务端在发送方向上使用的最小MSS值,且对应的取值与所述第二SYN ACK报文中携带的第三MSS值的取值相同。3.根据权利要求2所述的方法,其特征在于,根据所述第一SYN报文和自身支持的最大MSS值确定第二SYN报文,具体包括:若所述第一SYN报文中携带的第一MSS值不大于自身支持的最大MSS值,则确定所述第一SYN报文为第二SYN报文;若所述第一SYN报文中携带的第一MSS值大于自身支持的最大MSS值,则将所述第一SYN报文中携带的第一MSS值的取值更改为自身支持的最大MSS值,得到第二SYN报文。4.根据权利要求2所述的方法,其特征在于,根据所述第二SYN ACK报文和自身支持的最大MSS值确定第三SYN ACK报文,具体包括:若所述第二SYN ACK报文中携带的第三MSS值不大于自身支持的最大MSS值,则确定所述第二SYN ACK报文为第三SYN ACK报文;若所述第二SYN ACK报文中携带的第三MSS值大于自身支持的最大MSS值,则将所述第二SYN ACK报文中携带的第三MSS值的取值更改为自身支持的最大MSS值,得到第三SYN ACK报文。5.一种最大分段大小MSS协商方法,其特征在于,所述方法应用于服务端,所述方法包括:接收与自身连接的第一转发设备发送的由客户端发往所述服务端且携带有第一MSS值
的第一同步SYN报文,其中,在所述第一转发设备为与所述客户端连接的转发设备时,所述第一SYN报文为所述客户端在需要与服务端进行MSS协商时发送过来的,或者在该转发设备不为与所述客户端连接的转发设备时,所述第一SYN报文为所述第一转发设备对应的上一跳设备根据接收到的由所述客户端发往所述服务端的第二SYN报文确定出所述第一SYN报文后发送过来的;生成携带有第二MSS值和第三MSS值的第一SYN应答ACK报文,并将所述第一SYN ACK报文发送给与自身连接的第二转发设备,以使所述第二转发设备根据所述第一SYN ACK报文和所述第二转发设备支持的最大MSS值确定第二SYN ACK报文,并将所述第二SYN ACK报文转发给下一跳设备,以由下一跳设备在自身为所述客户端时,将所述第二SYN ACK报文中携带的第二MSS值确定为最终向所述服务端发送TCP报文时使用的MSS值,并向与所述客户端连接的第三转发设备发送携带有第四MSS值的ACK报文,由所述第三转发设备将所述ACK报文发送给所述服务端,或者在下一跳设备不为所述客户端时,将自身作为所述第二转发设备,将所述第二SYN ACK报文作为所述第一SYN ACK报文,开始执行根据第一SYN ACK报文和所述第二转发设备支持的最大MSS值确定第二SYN ACK报文的步骤;在接收到所述第一转发设备发送的所述ACK报文时,将所述第四MSS值确定为最终向所述客户端发送TCP报文时使用的MSS值;其中,第一MSS值用于表征所述客户端在发送方向上使用的最小MSS值,初始时,第一MSS值的取值为所述客户端支持的最大MSS值;第二MSS值用于表征所述服务端回传的所述客户端在发送方向上使用的最小MSS值,且所述第二SYN ACK报文中携带的第二MSS值的取值与所述第一SYN ACK报文中携带的第二MSS值的取值相同;第三MSS值用于表征所述服务端在发送方向上使用的最小MSS值,初始时,第三MSS值的取值为所述服务端支持的最大MSS值;第四MSS值用于表征所述客户端回传的所述服务端在发送方向上使用的最小MSS值,且对应的取值与所述第二SYN ACK报文中携带的第三MSS值的取值相同。6.一种最大分段大小MSS协商装置,其特征在于,所述装置应用于客户端,所述装置包括:发送模块,用于在需要与服务端进行MSS协商时,向与所述客户端连接的第一转发设备发送由所述客户端发往服务端且携带有第一MSS值的第一同步SYN报文,以使所述第一转发设备根...

【专利技术属性】
技术研发人员:雷昭燕常向青秦娟
申请(专利权)人:新华三技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1