MAC知识点006:IEEE802.3 Pause帧解析

MAC知识点006:IEEE802.3 Pause帧解析

1、pause帧出处?

在IEEE802.3协议中规定中,pause帧是一种控制帧,用于控制对端设备暂停发送数据一段时间。802.3-2015_SECTION2 附录31B描述的Pause帧是均可以在1GB/s、10GB/s、40GB/s、100GB/s速率下实现,并不区分速率。

具体描述在802.3-2015_SECTION2 附录31B:

Annex 31B  MAC Control PAUSE operation

本章节内容描述了Pause帧的作用,帧格式、以及实现原理,并且提出了一些要求:

2、pause帧格式

帧格式详见地址:MAC学习-基础知识002 pause报文格式

3、Pause帧处理流程

Pause帧使用流程详见:MAC知识点004:pause帧处理流程

4、IEEE802.3-2015对Pause帧的描述重点--限制

  1. Pause帧使得对端暂停发送数据帧(DATA frames)一段时间,不能禁止对端控制帧(control frames)的发送。备注:Pause帧也是控制帧的一种
  2. 全双工模式下才能使用Pause帧,半双工模式是不支持的
  3. 当MAC控制优先级操作使能时,MAC control Pause帧应该被disable
  4. Pause帧的传输并不是必须功能,如果支持此功能则必须实现协议描述的状态机
  5. 当对端接收Pause帧后会将非零的暂停时间(Pause_time)赋值给计数器count,当当前DATA帧发送完成后,开始暂停发送数据,count递减。
  6. 一旦接收到新的Pause帧,则新Pause帧的暂停时间会覆盖旧的暂停时间。备注:也就是会发生这2中情况:当前的Pause time还未结束,接收到新的非零Pause time,继续暂停发数据Pause_time。当前的Pause time还未结束,接收到新的全零Pause time,pause结束,可以立即发送Date frames。
  7. 暂停时间(Pause_time)太大会影响传输效率,因此需要一个上限。备注:建议Pause_time是可配置的,需要考虑上下游流控反压设计,经过计算得出一个合理的值。
  8. 设备接收到Pause帧后需要在一定时间内相应。如40GB/s模式下,接收到到Pause_time非零的Pause帧后,超过394个单位时间后,不可以发送新的数据帧。

协议部分截图如下:

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章