延续上篇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则会丢包。