问题描述
工程师在配置QOS功能时,对数据单板如何计算CAR和Shaping的速率存在疑问。
是仅计算报文净荷,还是要综合考虑以太网包间隙以及VCG侧的GFP封装帧头等。
处理过程
目前实现情况如下:
CAR速率计算公式说明:
按照速率计算规范,从以太网口进入的报文进行CAR功能计算时要把以太网报文的前导码(8个字节)和最小帧间隙(12个字节)作为净荷的一部分进行计算;从VCG侧进入的报文计算CAR时只计算报文净荷,不考虑以太网报文的前导码和帧间隙。但EMS4/EGS4单板没有区分报文是从以太来的还是从VCG侧来的,使用统一的计算公式计算CAR的速率。EMS4/EGS4的CAR速率计算公式是:
速率(bps) = 帧速率 × (平均帧长 + 8byte preamble + 12byte interframe gap)×8
Shaping速率计算公式说明:
按照速率计算规范,在作shaping计算时只根据以太网净荷进行计算,不考虑前导码和帧间隙。EMS4/EGS4单板也是按照这个规范进行计算的,即EMS4/EGS4单板的shaping速率计算公式为:
速率(bps) =帧速率 × 平均帧长 × 8
根因
我司对CAR和Shaping速率的计算规范如下:
规则1:从以太网口进入的报文进行CAR功能计算时要把以太网报文的前导码(8个字节)和最小帧间隙(12个字节)作为净荷的一部分进行计算。
规则2:在作shaping计算时只根据以太网净荷进行计算,不考虑前导码和帧间隙。
规则3:从VCG侧进入的报文计算CAR时只计算报文净荷,不考虑以太网报文的前导码和帧间隙。
建议与总结
数据单板CAR和Shaping速率计算规则说明也适用于其他的MSTP数据单板,而不仅仅是EGS4/EMS4单板。