RoCEv2网络部署实践

延续上篇RoCE网络的介绍,我们知道承载ROCEv2流量必须有一张无损网络。
本章主要介绍在以太网环境部署无损网络的关键点。
首先是QoS,包含流分类和队列调度两部分。
流分类:在网络接入设备(TOR)配置if-match类的语句,根据报文的特征(五元组、vlan等)打上相应的标记(802.1p、DSCP)。当然如果也可以事先规划好终端侧在发送特定流量时打上相应标记,这样在网络接入侧就省去了流分类环节。

队列调度:出向时,将不同标记的流量放到不同队列,通常信令类流量绝对优先,ROCEv2和普通流量加权重轮询调度,也就是SP+WRR。
以上做完可以保证ROCEv2流量可以和普通流量区分开。
如下图:ROCEv2放在Q5,普通流放在Q1,权重各是50%,这样在信令优先转发后,ROCEv2和普通流会按1:1比例轮询转发。
在这里插入图片描述

然后是PFC
可以在接收方拥塞时基于队列做反压。我们一般会在ROCEv2的队列配置PFC,普通流量的队列默认不设置。
这样在链路拥塞时,ROCEv2的队列上游受到反压降低流速不会丢包,而普通流量队列则会丢包。
下图中Spine接口的Q5队列是启用了PFC的,
在这里插入图片描述
当链路拥塞时,Spine反压Leaf减少发包量避免Q5队列丢包,Q1因为没有FPC则会丢包。
在这里插入图片描述

最后是ECN
发送端发送ECN标记的包,中间网络设备触发拥塞阈值时会将ECN置位,接收端收到置位ECN时会发送CNP通知发送端 , 发送端根据DCQCN等算法调整发送速率。
ECN部署时也可以基于队列只在ROCEv2队列部署,
在这里插入图片描述

另外在VxLAN这样的overlay的网络中,我们必须还要考虑到内外层报文ECN的一致性,例如:Spine链路拥塞时ECN置位也只是在外层报文, 这就要求Leaf到接收端时先要将外层的ECN状态同步到内层报文,然后再剥离外层报文送到接收端侧。这样接收端才能感知到网络中链路拥塞。
如下图,拥塞时内外层的ECN是一致的。
在这里插入图片描述
最后,很多时候无损网络部署时会将PFC和ECN同时部署,考虑到PFC可能的死锁等问题,一般发生拥塞时会首先触发ECN,使终端主动降速。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值