打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
【以太网硬件十一】以太网端口自协商过程解密之一

目录

自协商的目的

自协商的原理

协商脉冲

协商码字

自协商的目的

最早的以太网都是10M半双工的,所以需要CSMA/CD等一系列机制保证系统的稳定性。随着技术的发展,出现了全双工,接着又出现了100M,以太网的性能大大改善。但是随之而来的问题是:如何保证原有以太网络和新以太网的兼容?

于是,提出了自动协商技术来解决这种矛盾。自动协商的主要功能就是使物理链路两端的设备通过交互信息自动选择同样的工作参数。自动协商的内容主要包括双工模式、运行速率以及流控等参数。一旦协商通过,链路两端的设备就锁定在同样的双工模式和运行速率。

以太网速率双工自协商在如下标准中定义:

IEEE 802.3 clause 28双绞线10/100/1000M自协商功能描述,针对1000base-T的扩展要求描述在clause 40.5,1000base-X的自协商描述在clause 37,1000base-KX在clause 73。

自协商的原理

协商脉冲

Auto-Negotiation的主要机制是通过链路脉冲和握手机制来实现信息的交互,在Auto-Negotiation机制中,链路脉冲称之为LTP(link_test_pulse),将间隔为16ms ± 8ms的LTP称为NLP,NLP也是10BASE-T中的链路脉冲信号(用于检测链路状态是否正常),而将一整簇间隔 62.5us ± 7us,簇之间间隔等同于NLP的脉冲簇,称为FLP,一簇FLPs一般称为FLP_burst。如下图所示:

FLP_burst由时钟脉冲和数据脉冲交互构成,共16个数据脉冲和17时钟脉冲,如下图所示:

在具备自协商能力的端口没有Link的情况下,端口一直发送FLP,在FLP中包含着自己的连接能力信息,包括支持的速率能力、双工能力、流控能力等。这个连接能力是从自协商能力寄存器中得到的(PHY标准寄存器地址4),依靠脉冲位置编码携带数据。

一个FLP突发包含33个脉冲位置。17个奇数位置脉冲为时钟脉冲,时钟脉冲总是存在的;16个偶数位置脉冲用来表示数据:此位置有脉冲表示1,此位置没有脉冲表示0。这样1 个FLP的突发就可以传输16bit的数据。自协商交互数据就这样通过物理线路被传输。

如果两端都支持自协商,则都会接收到对方的FLP,并且把FLP中的信息解码出来。得到对方的连接能力。并且把对端的自协商能力值记录在自协商对端能力寄存器中(Auto-Negotiation Link Partner Ability Register,PHY标准寄存器地址5)。同时把状态寄存器(PHY标准寄存器地址1)的自协商完成bit(bit5)置成1。在自协商未完成的情况下,这个bit一直为0。

然后各自根据自己和对方的最大连接能力,选择最好的连接方式。比如,如果双方都即支持10M也支持100M,则速率按照100M连接;双方都即支持全双工也支持半双工,则按照全双工连接。一旦连接建立后,FLP就停止发送。直到链路中断,或者得到自协商Restart命令时,才会再次发送FLP。

协商码字

802.3对FLP的数据脉冲内容做了规定,我将它称为协商码字,码字分为Base Page和Next Page,Next Page又包括Message Page、Unformatted Page、Extended Message Page、Extended Unformatted Page。

Base Page:

Selector Field:消息类型,如下表所示,以太网固定位00001。

Technology Ability Field:端口能力,如下表所示,根据端口实际能力情况,将相应比特置为1,若是0则表示不支持此能力。这里的端口能力只有十兆和百兆的部分端口形态,其他速率更高的端口能力信息在Next Page中进行定义。这是因为技术在不断发展,新技术要兼容老技术就得不断在原来的消息页上再新增下一页。

XNP: Extended Next Page,1表示支持扩展下一页,描述见802.3 28.2.3.4;

RF: Remote Fault ,1表示远端错误,描述见802.3 28.2.3.5;

ACK: 1表示收到了本页信息;

NP: Next Page ,1表示支持下一页,描述见802.3 28.2.3.4。

举个例子,如果是百兆100base-TX全双工端口,则发送的base page内容为00001 0001000 0000,没有next page。

Next Page:

Message page

Unformatted Page

NP: Next Page ,1表示还有下一页

ACK: 表示收到本页信息

MP: 1表示本页是message page,0表示本页是Unformatted Page

ACK2: 1表示接收方可以对消息中定义的信息采取行动,0表示不能执行

T: 切换位,其值与前一页的T值相反,用于确保页面信息交换期间的两端同步

Message code field:这部分定义在802.3 附录28C,大家可以自行查阅。

Extended Message Page:

Extended Unformatted Page:

这两种page就是前两种page的扩展,能携带更多接口的能力信息,每一种接口使用的page不太一样,这个等遇到具体接口问题再针对详细说明。

下面针对我们常用的千兆电口1000base-T的自协商码字做举例说明:

不同端口类型的协商码字不同,如100base-TX和10Base-T只需要一页base page即可,而1000base-T则需要一页base page + 一页1000base-T的格式化next page + 两页非格式化next page ,如果要支持节能以太网,还要再增加两页。详见clause 40.5,如下图:

1、base page中没有千兆的能力信息,所以要添加下一页,也就是D15=1,其他位按定义要求设置;

2、page0的message next page需将M10:M0填写为8,表明1000base-T能力;

3、page1 unformatted next page填写双工模式、端口类型、手动主从模式;

4、page2 unformatted next page填写主从选举的种子值,这个值是phy芯片上电后随机生成,自动主从选举时,哪个端口的种子值大,哪个端口就是主。

5、若要支持节能以太网,则再增加page3的message next page, 将M10:M0填写为10,表明EEE能力。

6、最后按要求填写page4 unformatted next page,U2=1表明1000base-T支持EEE。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
网口自协商
ANEG 自协商学习
以太网自协商的详细过程
接口自动协商与双工原理
自动协商 Auto-negotiation
以太网工作原理(二)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服