关于TCP MSS值

中低端路由器tcp mss 的实现原理 为何经常要在内网口和外网口都要配置tcp mss 值呢

PC1(192.168.0.1)―――Router――――Internet―――-www server(238.135.1.1)

建立tcp连接的两端在三次握手时会协商tcp mss大小,具体如下:
pc1发出syn报文,其中option选项填充的mss字段一般为1460,同样www server收到syn报文后,会发送synack报文应答,option选项填充的mss字段也为1460;协商双方会比较synsyn+ack报文中mss字段大小,选择较小的mss作为发送tcp分片的大小。通过比较,协商双方的tcp mss都是1460

对于涉及mpls l3vpnpppoenatipsecl2tpgre等组网,通常由于报文太大需要分片,一般可以通过设置tcp mss解决。

针对上例说明tcp mss如何实现
1、
假设在路由器内网口配置tcp mss 1200
a)
路由器收到www serversynack报文时会修改option选项中的mss字段为1200,然后再转发给PC1PC1收到报文后认为对端的tcp mss1200,这样PC1发送数据给www server时会以1200作为分片大小;但路由器修改tcp mss1200的操作www server是不知道的,因此www server还会以1460作为分片大小发送报文。

2、
假设再路由器外网口配置tcp mss 1200
a)
路由器收到PC1syn报文时会修改option选项中的mss字段为1200,然后再转发给www server,同样www server发送数据给PC1时会以1200作为分片大小;同样PC1不知道路由器修改tcp mss1200,因为PC1还会以1460作为分片大小发送报文。

3、
因此在实现双向大包传输时需要在内外网同时修改tcp mss

综上所述:在路由器接口上配置的 tcp mss命令仅对出接口方向的syn报文和synack报文有效,对于入接口方向的synsynack报文无效。
 
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值