异网络厂商对接BGP,MTU惹的祸

本文讨论了在异厂商网络中BGP对接时遇到的MTU问题,导致Update报文无法正常交互。介绍了MTU的概念,指出当路径中存在不同MTU值时可能导致数据包分片甚至丢失。提出了通过traceroute和ping测试方法来确定路径MTU,并解释了BGP协议中TCP MSS的关联,以及TCP分段和重传机制。强调MTU配置不当不仅影响BGP,还可能引发TCP和HTTP层面的故障。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

大部分异厂商,BGP故障,查看BGP报文交互,经常看到UPdate报文0更新,都是MTU惹的祸

        MTU 以太网MTU1500 ,IP数据包16位最大为65535,传输当然需要分片
        网络是比较复杂的,每个网络的MTU值是不同的。我们假设,如果接受/发送端都是以太网1500,我们假设发送的时候,数据包会以1500来封装,然而,不幸的是,传输中有一段X.25网,它的MTU是576,这会发生什么呢?这个数据包会被再次分片,如果IP包被设置了“不允许分片标志”,那数据包将被丢弃,然后收到一份ICMP不可达差错,告诉你,需要分片!
           测试方法
这个网络中最小的MTU值,被称为路径MTU,我们应该有一种有效的手段,来发现这个值,最笨的方法或许是用traceroute查看所有节点,然后一个节点一个节点ping 大字段1500  即根据所有传输列出的节点ping  *.*.*.*  size 1500  以下回到BGP

BGP协议是传输层TCP协议,TCP协议有一个最大报文段长度MSS,最大值的限制,BGP建立连接双方都要告知各自的MSS,也就是说,它说是与TCP的SYN标志在一起的。当然,对于传输来讲,总是希望MSS越大越好,但是MSS最气吗有个限制,以太网就是  MTU-IP头-TCP头=1500-20-20,也就是为什么bgp最常见的MSS为1460了,为了避免分片,IP层本身没有超时重传机制------由更高层(比如TCP)来负责超时和重传。当来自TCP报文段的某一片丢失后,TCP在超时后会重发整个TCP报文段,该报文段对应于一份IP数据报(而不是一个分片),没有办法只重传数据报中的一个数据分片。即:即使只丢失一片数据也要重新传整个数据报!---------
bgp 的tcp 重传,一旦UPdate报文数据过大,超过了MSS,则

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值