18
2025
04
15:10:27

两个千兆口汇聚成一个2Gbps端口,点对点跑流怎么还只有1Gbps呢?

 

【问题背景】

经常会接到用户反馈使用我们的可支持汇聚的交换机(不管是静态汇聚还是LACP),与NAS对接或者与交换机对接,单终端传输文件或这跑吞吐量都无法实现带宽叠加的效果,只能跑满一个端口的带宽。
如上两种拓扑,使用交换机和交换机汇聚;或者交换机和NAS服务器直接汇聚后,使用电脑从NAS点对点读取/发送文件,会出现只能跑满单个物理端口的速率(1G)无法实现2G的传输,用户就会认为是交换机设备的问题,无法实现带宽的叠加。

【排查思路】

  1. 确认关于汇聚的设置没有问题;

  2. 确认网线质量没有问题;

  3. 确认电脑和电脑跑吞吐量的瓶颈不在电脑;


【基础分析】

一、确认以上几点完全设置正确。并没有因为设置或者物理线路的问题影响本问题的判断;

二、了解交换机汇聚的机制,以及几种汇聚算法的对应交换机的处理行为:

交换机做端口汇聚的算法机制:交换机由于是不支持应用层分析的,因此做汇聚之后是不支持连接数均衡的,因此交换机的算法只是基于每一个进入交换机的数据包经过计算后将其分配到某一个物理端口传递。

交换机的算法有以下几种:

  • 源MAC地址:这种算法是将进入交换机的数据包的源MAC地址进行哈希计算后,然后根据HAS计算后的结果分配一个物理端口传递该数据包;

  • 目的MAC地址:这种算法是将进入交换机的数据包的目的MAC地址进行哈希计算后,然后根据HAS计算后的结果分配一个物理端口传递该数据包;

  • 源目的MAC地址:这种算法是将进入交换机的数据包的源MAC地址和MAC地址进行哈希计算后,然后根据HAS计算后的结果分配一个物理端口传递该数据包;

  • 其余三种源IP,目的IP,源目的IP机制和MAC机制一样,只是用IP来进行HAS计算,然后再匹配端口,当某些流量场景二层数据包较多的情况,需要使用基于MAC的算法来分流。

以源目的MAC地址为例,是以源目的MAC地址为输入条件进行哈希计算,得到转发的端口号,两组不同的源目的MAC地址经过算法处理可能得出的端口号一样,例如两个端口汇聚,很多HAS值最终都会均分到这两个端口上。


【问题总结】

交换机做端口汇聚后,由于是单终端,因此根据交换机的算法得到的HAS值对应匹配一个物理端口,数据只能在一个端口转发,所以只能跑满一个端口的速率。只有在多终端的使用场景下,交换机的汇聚才能体现出带宽叠加的作用。
这类问题根据用户的想法是端口汇聚了就应该跑满所有的端口,但是实际是不能实现的,因为交换机不是基于连接数来匹配的,而是基于每个包的HAS值算法再匹配端口的,了解了这样的一个机制后再来看这个问题就很好理解了。



推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://zblog.hqyman.cn/post/10590.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: