2000年前后开始接触网络的人应该还记得,用网线(双绞线)把计算机连接到以太网hub时,有的网线可以建立连接,有的则不行。如果一条双绞线可以在计算机和hub之间建立连接,那么用它来连接两台电脑时,就无法建立连接。

为什么会有什么这样的差别呢?这要从双绞线的线序说起。用来连接PChub的双绞线两端的线序是完全一样的,这种双绞线称为“直连线”。另一种双绞线两端的线序不同,按特定的方式有交叉,这种双绞线称为“交叉线”。交叉线可以用来连接两台电脑。

什么是MDIMDI-X

双绞线内部由8根线组成,8根线分为4对,白橙和橙色线相互缠绕组成一对、白绿和绿色、白蓝和蓝色、白棕和棕色各组成一对。双绞线的两端各使用一个RJ45水晶头固定。

双绞线用RJ45水晶头固定之后,如下图所示:

230853136.png

RJ45水晶头中的8个槽位按上图所示的方式进行编号,每个槽位连接双绞线的一根线。直连线上,8根线并不是按照“白橙->->白绿->绿->白蓝->->白棕->棕”的方式排列的,正确的排列方式如下:

RJ45

的槽位

1

2

3

4

5

6

7

8

线的

颜色

白橙

白绿

白蓝

绿

白棕

交叉线的一端和直连线的线序一样,另一端则把1-2线对和3-6线对换了位置。这样,交叉线另一端的线序如下:

RJ45

的槽位

1

2

3

4

5

6

7

8

线的

颜色

白绿

绿

白橙

白蓝

白棕

直连线的线序是TIA/EIA-568A线序;而交叉线一端是TIA/EIA-568A线序,另一端则是TIA/EIA-568B线序。

早期的以太网hub和计算机可以使用直连线建立连接,这是因为hub端口和计算机网卡的端口是不一样的。计算机网卡上,12线用来发送信号,36线用来接收信号。Hub端口上,情况恰好相反,12线用来接收信号,而36线用来发送。计算机网卡端口属于MDI端口,而hub端口则属于MDI-X端口。

早期的以太网hub上,通常有2类端口,即多个连接计算机的端口和一个uplink端口。用来连接计算机的端口是MDI-X端口,而uplink端口则是MDI端口。MDIMDI-X端口之间,需要使用直连线;而相同类型的端口之间需要使用交叉线。

IEEEStd802.3i-199010Base-T标准提出了MDIMDI-X的概念。后来IEEEStd802.3u-1995标准定义的100Base-T4100Base-TX都继承了这个概念。10BASE-T100BASE-TX以太网中,4578线没有使用。千兆以太网之后,MDIMDI-X的含义发生了变化千兆以太网会用到全部8根线,每根线上都同时进行收发

AutomaticMDI/MDI-X

199811月和200010月,HP公司先后获得两项HPAuto-MDIX专利:U.S.Patents6,175,865和6,460,078

U.S.Patents6,175,865

Apparatusforautomaticallyconfiguringnetworkmediaconnections

Nov12th,1998

U.S.Patents6,460,078

Apparatusforautomaticallyconfiguringmediaconnectorsofanodeinterfacedevice

Oct20th,2000

HPAuto-MDIX解决了双绞线线序匹配的问题,用户不必再关心双绞线的线序问题。HPAuto-MDIX可以自动检测并配置PHY内部的线序。这样,无论使用直连线还是交叉线,以太网端口都可以对接成功。

1999年,HPAuto-MDIXIEEEStd802.3ab采用,应用在1000BASE-T中。IEEEStd802.340.4.4章节中,这个功能被AutomaticMDI/MDI-X

10BASE-T100BASE-TXMDI/MDI-X

现在,绝大多数以太网设备都支持AutomaticMDI/MDI-X,但是在IEEE802.3标准的百兆以太网章节中,并没有看到关于AutomaticMDI/MDI-X的描述。

IEEEStd802.310M和百兆以太网的章节中,对线序的交叉(crossover)进行了说明。终端设备和中继设备对接时,建议在中继设备上实现crossover。如果对接双方都实现了内部的crossover,那么就需要在双绞线上作crossover

千兆以上的MDIMDI-X

千兆以太网标准引入了AutomaticMDI/MDI-X功能,该功能对于1000BASE-T以太网是可选项。

1000BASE-T和早期的MDI/MDI-X是不兼容的,实现方式也不一样。1000BASE-T使用了双绞线的全部4对线(8根线),每对线上既有收又有发。IEEEStd802.3标准的原文如下:

Thecrossoverfunctionspecifiedhereisnotcompatiblewiththecrossoverfunctionspecifiedin14.5.2forpairsTDandRD.(Clause40,40.8.2CrossoverFunction)