日志档案

发表于 2008-3-12 15:36:49

1

标签: 无标签

讨论:Auto MDI/MDIX自动翻转功能

    呵呵,时隔一年多,又开始写博啦。还是有些东西可写的。关键是能有一个和大家伙交流的机会,挺好的。

    最近在和一个兄弟单位联调时遇到了一个新鲜东西。也许已经不是什么新鲜东西了,反正我觉得挺新鲜的,拿来和大家讨论一下,呵呵。

    当时,两台设备之间需要连接一条网线,为了方便就直接把两台设备各接出一根网线都插到同一个hub上去了。但是插上以后我才想起来我那根网线是双机互联线(也就是收发跳线的那种线),而连hub的线是要用直通线的。

    正准备去找网线换的时候,竟然发现网络已经通了,而且可以正常互发数据!当时觉得很诧异。后来在hub的包装盒上发现了这样的字样“带有Auto MDI/MDIX自动翻转功能”。看来肯定是这个功能使得无论是交叉线还是直连线都能使用了。

    于是回来在网上搜了一下,首先是“

    什么叫 mdi 端口?是否 mdi 和 mdix 是成对出现的?起什么作用?

MDI口是快速以太网100BASE-T定义的与介质有关接口(Media Dependent Interface)。MDI是指通过收发器发送的100BASE-T信号,即100BASE-TX、FX、T4或T2信号。将集线器连接网络接口卡时,其发送和接收对通常是相互连接的。集线器之间连接时,通常需要一条跨接电缆,其中的发送和接收对是反接的。MDI是正常的UTP或STP连接,而MDI-X连接器的发送和接收对是在内部反接的,这就使得不同的设备(如集线器-集线器或集电器-交换机),可以利用常规的UTP或STP电缆实现背靠背的级联。”

而后又搜“Auto MDI/MDIX ”,有这样一篇文章介绍的比较全面“

有过几年网络管理员经验的读者一定都知道在选择网线的时候需要注意一点的就是线序问题,我们常见的网线也主要分两种,一种是正线,另一种是反线。一般来说正线用于交换机连接路由器,交换机连接PC机;而反线则用于交换机连接交换机,路由器连接路由器,PC机连接PC机以及路由器连接PC机。不过近几年生产网络设备的厂商研发了一种叫做线序自适应的功能,通过这个功能可以自动检测连接到自己接口上的网线类型,能够自动进行调节。但是笔者在实际使用中却因为过分相信这个线序自适应而遭遇了网络故障,在这里笔者将问题的全过程写出来和各位IT168的读者分享,希望各位网管员在以后选择网线连接设备时一定要谨慎。
    故障起因与排除:
    笔者也知道交换机有这种自适应功能,所以平时身边只需要随身携带一根正线网线即可。不过在最近一次网络调试中却着实让我为难了一把。事情是这样的:笔者接到下属部门的电话说发现有两台路由器无法正常通讯。于是拿着设备就赶往下属部门,进入其中一台路由器设置界面发现与另一个路由器连接的以太网端口根本没有激活,就好象没有连接任何网线一样。可是实际中却实实在在的用一根网线连接了两台路由器的LAN1以太接口。为什么会这样呢?笔者知道按照正常情况路由器和路由器之间连接应该使用反线,但是随着技术的发展,端口都具有跳线自适应功能,不管你用反线还是正线连接这些设备都可以工作的。不过为了保险笔者还是找了一根反线将原来的正线进行了替换。没想到问题一下解决了。两个路由器的接口都处于激活连接状态,网络也没有阻断问题了。

    故障分析:
    那么为什么用反线将原来的正线替换后网络就恢复正常了呢?这能说明一点的就是用正线连接两台路由器是行不通的。看来跳线的自适应并不是出现在每个设备上的,笔者使用的华为2621路由器的端口就不支持跳线自适应。所以说各位读者在连接设备时不要想当然的以为所有接口都是自适应正线反线,特别是路由器接口,大部分不支持跳线自适应功能,而对交换机来说则大部分支持这种线序自适应。最后笔者还询问了下属公司的网络管理员是否动过网线,得到的答复是前几天应急把这两台路由器之前的网线拿到别处了,而原来的网线是反线,由于下属公司的网络管理员认为路由器端口可以自适应所以拿了一条正线进行连接。


    什么情况下可以线序自适应:
   也许有的读者会问为什么有的路由器接口支持自适应线序呢?如何来区分自己的设备是否支持此功能呢?下面我们就来介绍这方面的知识。

    所谓跳线自适应或者自适应线序,正确的叫法应该是端口MDI/MDIX自动适应,只有支持端口MDI/MDIX自动适应的端口才允许用户从任何一个端口连接到工作站,服务器或其它路由器交换机,而不需改变通常的双绞线连接方式,正线反线都可以正常工作。如何确认自己的设备端口支持跳线自适应功能呢?主要有以下几个方法。

    查看用户手册:
    看说明书上有哪些端口写明了支持Auto MDI/MDIX自适应,记住只有写明支持Auto MDI/MDIX自适应才说明有此功能。否则我们依然需要按照常规的连接方式来连接不同设备。

    查看面板按钮:
    一般交换机设备上会有一个MDI/MDIX按钮,不过有的路由器也拥有此按钮,我们可以通过按该按钮在MDI和MDIX工作模式之间进行切换。从而实现了同样两个设备可以使用不同线序的网线来连接,正线和反线连接设备只需要通过MDI/MDIX按钮来切换就可以满足需求。当然在实际连接时我们可以先在MDI模式工作,如果网络有问题或者端口不激活再切换到MDIX模式即可。

    查看管理台命令:
    有的设备可以通过内部命令来完成端口在MDI和MDIX之间的切换工作。具体命令如下——[Quidway-Ethernet0/1]mdi {across|normal|auto}

    输入“mdi auto”就是启用Auto MDI/MDIX自适应功能,输入mdi across就是使用mdix连接模式,输入mdi normal就是使用常规的mdi连接模式。当然为了方便我们日常工作维护,笔者建议大家在使用过程中直接输入mdi auto命令,这样不管你的线缆是什么类型路由器都会和传统交换机一样自动适应线序。

    对于大部分交换机来说端口都是支持Auto MDI/MDIX自适应功能的,但是路由器的接口就不一定了,所以我们在按照网络拓扑连接网络设备时最好不要想当然的认为所有设备都支持Auto MDI/MDIX自适应功能,挑选连接网线时也要特别注意,不要正线反线不分的盲目使用。按照标准方法连接可以帮助我们快速解决故障,减少无谓问题的发生。

    为什么路由器不支持自适应:
笔者打电话咨询了华为3COM的工作人员,询问为什么华为3COM 2621路由器不提供线缆线序的自动适应功能。得到的答复是该做法是为了方便用户,因为一般情况下路由器连接对象都是交换机,交换机可以实现线序的自动适应,所以路由器上不用重复添加了。而且添加一个功能就要提高相应的成本,华为3COM公司不在路由器上添加线序自适应的功能也是从用户角度考虑,降低产品成本。另外CISCO公司的路由器也不支持这种线序自适应。不过根据华为3COM工作人员的介绍,目前华为3COM的MSR路由器等新产品已经具备了这种端口线序自适应功能,这样用户在连接网络设备时会更加轻松,更加方便。

    总结:
    本次故障告诉了我们并不是越贵的设备功能越强,按照常理路由器价格要远远高于普通的交换机,所以他的端口应该能够支持线序自适应,然而现实和理论是不相符的,华为3COM的2621路由器两个LAN端口不支持这种线序自适应,我们在连接设备时必须按照常规的线缆连接规则去实施。”

   

    恩,功能上基本弄清楚了。但是还是不甘心。想弄清楚它的实现原理。可是搜了半天,也没有结果。不知道哪位知道这个Auto MDI/MDIX自动翻转功能的原理啊?在这里设个小问题吧,呵呵。

系统分类: 接口电路   |   用户分类: 技术文章   |   来源: 原创   |   【推荐给朋友】

    阅读(760)    回复(7)  

投一票您将和博主都有获奖机会!

  • 彩云

    2008-3-13 14:04:16

    等待答案,呵呵 这么好的文章,投一票先~

  • 皓离

    2008-3-13 17:38:09

    准确的说这个不叫自动适应,这个叫自动交叉。在网络设备当中我们一般是使用带有RJ45接口的非屏蔽5类双绞线,这类线路的有直通线和交叉线两类。MDI和MDIX就是这两种线,在交换机里面一般情况下会集成auto-MDI/MDIX功能,这个是做在主芯片里面的,交换机是二层设备,路由器是三层设备,所针对的用户是完全不一样的。 自适应是指针对不同速率的网络调节自己的速率,现在的用法叫自动协商。例如100M与10/100/1000M兼容交换机的连接。 我们现在设计的交换机全部是自动完成的自动交叉,没有什么需要手动切换这个古老的方式了

  • qiji38324

    2008-3-13 20:49:24

    多谢楼上的指点。虽然是搞电子,但对网络方面的东西还是知之甚少啊。以后要加强学习啊!呵呵 楼上说的是做在主芯片里的,是否是指ARM或DSP等实现算法的芯片中呢?如果如此,那么怎样在电平转换时实现同一路径下的收发双方向都可通过呢?是通过类似模拟开关一样的切换收发通路么?

  • spry97

    2008-3-18 10:26:40

    上面说错了,Auto-MDI/MDIX是自动线序调整,这个功能不是集中在交换机主芯片(MAC芯片)的,而是集中在PHY芯片上,华为的网口不支持Auto-MDI/MDIX是因为它选用了相对便宜的PHY,现在主流PHY芯片都包含了这个功能 MAC芯片--(MII接口)--PHY芯片--Transformer(电平转换芯片)--(网线)--网卡

  • spry97

    2008-3-18 10:32:21

    目前很多交换机芯片都是ASIC专用芯片,并不是ARM芯片,交换机一般是 CPU(高端ARM/低端MCU) + MAC芯片的架构,理论上说是可以把ARM核和MAC芯片做成SoC形式,这样子理论上会成本更低,但目前自己还没见到和听到这样的芯片

  • panhaojie

    2008-3-18 17:17:40

    这个功能是在芯片里面集成的;有的芯片没有集成此功能,所以表现在设备上面当然也就没有了

  • panhaojie

    2008-3-18 17:18:38

    集成在物理芯片里,就是平时我们说的phy芯片;