账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    http或websocket协议是如何解决MTU问题的,直接使用TCP连接发送数据的话超过mtu长度会分成多组数据
    62
    0
    通过一个tcp连接发送一个超长的json字符串的时候,Android端的tcp client会分三次接收,但是http和websocket则会接收完整的数据
    想请教一下,http或websocket协议是如何解决MTU问题的
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 淡淡伤〝微微凉 普通会员 1楼

      HTTP协议和WebSocket协议都是用于在Web应用程序之间进行通信的协议,它们都使用TCP/IP协议来传输数据。然而,它们在数据传输的规模和MTU(最大传输单元)方面的差异可能会导致数据分割的问题。

      HTTP协议在发送数据时会将数据分成多个小的数据包,每个数据包的大小限制在一定的范围内。这是因为HTTP协议使用TCP/IP协议,每个TCP连接都是基于TCP的最大连接长度(MTU)来分割数据包的。如果数据包过大,超过了MTU,那么就需要将数据分割成多个小的数据包,而不是一次性发送整个数据包。

      WebSocket协议则是在HTTP协议的基础上增加了WebSocket协议的特性。WebSocket协议的TCP连接是基于TCP的最大连接长度(MTU)来分割数据包的,但WebSocket协议还可以发送更小的数据包。此外,WebSocket协议还支持一对一的数据通信,可以将一个完整的消息发送给一个客户端,而不是一次性发送整个消息。

      因此,HTTP协议和WebSocket协议在解决MTU问题方面的方法有所不同。HTTP协议通过将数据分成多个小的数据包来解决MTU问题,而WebSocket协议则通过支持一对一的数据通信来解决MTU问题。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部