说起自动协商(a),我想很多人都不会陌生。当你把你c机器上的卡通过一段双绞线连接到某个交换机的某个端口的时候,如果你的卡和交换机都支持自动协商功能的话,一件有趣的事情就会发生了,卡和交换机似乎能够互相告知对方自己可以工作的方式包括速,双工状态。然后自动选择一个大家都能接受的最佳工作状态!nvme转接卡
首先给大家说说为什么会出现自动协商!它为解决什么问题而来!
众所周知,早期的以太工作在低速的10m,半双工状态,后来随着络不断发展的,又出现了交换机支持全双工,100m,1000m,甚至最新的万兆以太。为了保护以前的投资,新的标准一般都向下兼容比如100m的系统能够支持就的10m,半双工。但是这样同时又产生了一个新的问题,如果没有某种机制能够让两台互联的以太设备之间能够协商获得两者都能接受的最佳工作方式的话,你只能通过手工设置来保证通讯双方工作状态的一致性!
这对于有少量这种问题的络也许是个小问题,但是对于存在大量这种问题的络而言就是一个头疼的问题。幸好,以太的标准制定者推出了自动协商(an)这种机制,来解决这个问题。
说完这个自动协商机制用来解决什么问题,我们再讲讲自动协商机制是如何协商的an实际上我们可以把它看作成一种主动地协商方式,具有这种功能的设备会主动与对方协商,并且等待对端返回协商结果,它不仅能够协商两端的工作速度是10m,还是100m还是1000m,而且还可以协商两端工作的双工方式是半双工还是全双工
an通过和对端交换一种fl(fl)的特殊f,里面包含了自己这端可以支持的工作组合方式(速度双工方式),对端收到之后和自己可以支持的工作组合方式相比较选择一种最佳的工作方式
简单介绍完自动协商an这种机制,我们在说说一个类似的解决方案
as,自动适应这是一种被动的方式,它通过对比从对端收到的信号的时间间隔来计算对端的工作速度是10m还是100m这种方式有个很明显的缺陷就是无法s双工状态
现在大部分的络设备对an和as都支持,当自动协商失败的时候,它可以
通过as确定和对端一致的工作速度
需要再给大家提醒的就是自动协商并不能百分之一百的可靠。也就是说因为各种各样的原因可能造成速度不匹配或者双工不匹配。速度不匹配的情况下,我们通常可以很容易的感觉的到,因为速度不匹配的情况下通讯双方是无法正常通讯的。而双工不匹配的情况下,双方能够互相正常通讯但是会造成接口错误包数量的不断增加,特别在接口流量较大的情况下会造成性能下降的问题!往往因为这个问题比较隐蔽不易查找!
由于以太的历史悠久而且像自动协商这种机制并不是和以太一起诞生的而是随着一台的不断发展而出现的。所以在使用自动协商机制的时候可能会因为对端不支持自动协商或者被手工指定工作方式而导致协商失败或者协商不匹配。
所以我们在一般的应用的时候遵循以下原则
1对于重要设备之间的互联,我们一般不起用自动协商机制我们一般通过强制指定两端设备的工作速度和双工状态,比如核心交换机之间互联,核心交换机和核心路由器互联
2对于一般的主机和交换机之间的互联我们起用自动协商机制
3对于那些无法协商或者协商失败的设备互联的时候,手工强制指定合适的工作状态
unicaca 首推发行双口40g通道光纤卡 an710qf2 就具有支持 an( 自动协商 )的功能, 能够协商多端的工作速度是10m,还是100m还是1000m,还可以协商两端工作的双工方式是半双工还是全双工, 然后自动选择一个最佳工作状态 。极大的提高了络的稳定及性能最优情况下的效率。
文章材料来自于csdn博客