0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

深入解析2类常见的双绞线以太网的编码

要长高 来源:泰克科技 作者:泰克科技 2022-05-06 16:57 次阅读

本文以双绞线以太网为分析对象,以混合信号示波器为分析工具,深入探秘了2类常见的双绞线以太网的编码,且实地查看并验证了以太网在物理层的信号传输情况,最后通过一个实战例子来对比了实际网络中软件接收到的数据和示波器捕获信号之间的一致性。本文打通软硬件之间的隔阂,从物理层揭示了以太网数据传输的机制,也充分发挥了现代化混合信号示波器的总线解码能力。

1. 以太网概述

以太网(Ethernet)是一种常见的计算机组网技术,其技术标准在IEEE 802.3中规定 [1]。目前广泛使用的以太网通过双绞线(俗称网线)交换信息,其技术标准主要在TIA/EIA-568中规定 [2]。

本文以最常见的以太网标准为例,利用混合信号示波器的协议解码功能,揭秘以太网上的信号是如何传输的。通常对于网络数据的分析都在软件上进行,例如著名的Wireshark工具可以对指定网卡上传输的数据进行捕获并解析 [3]。但这样的操作屏蔽了物理层的差异,本文将更进一步,揭秘物理层上数据具体是如何转变成电信号并传输的。

以太网(10 Base-T)和快速以太网(100 Base-TX)可以使用同一种双绞线进行数据传输,其引脚定义如图1所示。

poYBAGJ04i2AWssVAAF3KZmnnKU244.png

图1. 网线的引脚定义 [1]

以T568B为例,其中用到了4根线,构成2个差分对(TX和RX)。不失一般性,我们取其中一对(TX)作为分析对象。因此需要引出Pin 1和Pin 2,用于连接示波器探头来抓取信号。这里剪开一根网线,在Pin 1和2上分别引出一根导线,做成分析用的专用跳线,如图2所示。

图2. 在双绞线的Pin 1和2上分别引出一根导线

这一对线上传输的是差分信号,因此最好用差分探头(例如TDP1500)。当然这里用到的跳线比较短,用普通的无源探头也可以,只是信号质量会受到一定的影响。

2. 10 Base-T以太网

10 Base-T的传输速率是10Mbps,使用曼彻斯特编码(相位编码)数据。“0”用下降沿表示,“1”用上升沿表示。如图3所示的是一段由示波器抓取到的差分波形。在确认最小脉宽后,可以通过判断周期性的边沿方向来辨识“0”或“1”。

poYBAGJ04jSAMMWjAAEqFKu0B6U237.png

图3. 10 Base-T的曼彻斯特编码解析

接下来需要将二进制序列组装成数据帧,由于包含多个协议的堆叠(MAC、IP、TCP等),手动解码会比较复杂,可以直接使用示波器的总线解码工具进行解码并显示。如图4所示,将总线设为“Ethernet”,速度设为“10 Base-T”,信号类型设为“差分”,其它选项根据实际情况选择或保持默认就可以了。

pYYBAGJ04jqAWmZJAADNgSQEJk8284.png

图4. 10 Base-T解码设置

解码结果如图5所示,可以看到这是一个IPv4的数据帧,放大后可以看到MAC地址等数据包内的具体内容。

poYBAGJ04k6AI3AvAAF0tBEnTig697.png

图5. 10 Base-T解码结果

3. 100 Base-TX以太网

相比10 Base-T,100 Base-TX带来了10倍的速度提升,达到100Mbps。它的编码协议也变得复杂得多,主要涉及3个关键词:4B5B、MLT-3和NRZ-I。

3.1

4B5B

4B5B表示使用5位二进制编码来表示1组4 bits数据 [4]。这样做的原因是使得传输线上有足够多的跳变用来恢复时钟。4B5B的编码规则是预先定义的,如果仅仅用来解码,只需要查表即可,如图6所示。举例:“0000”或“1111”如果直接传输,会带来4个一样的编码,很有可能引入较强的直流分量,但经过4B5B编码后,分别变成了“11110”和“11101”,就缓解这个问题了。4B5B的缺点是,需要增加额外的25%传输带宽,因此100 Base-TX虽然数据传输率是100MBps,却需要125Mhz的时钟频率。

poYBAGJ04liAagTFAAD0TbbP29k193.png

图6. 4B5B对应关系表

3.2

MLT-3

MLT-3表示“Multi-Level Transmit”,即使用多个电压级别来传输数据 [5]。MLT-3使用3个电压,在差分传输线上,3个电压可以归一化记为“-1”、“0”和“+1”。MLT-3通过切换电压来实现跳变,顺序遵循2个规则:

(1)如果跳变前电压是-1或+1,则跳变后电压是0;

(2)如果跳变前电压是0,则跳变后电压与上一个非0值的电压相反。

因此可简单总结跳变顺序为:-1 → 0 → +1,或+1 → 0 → -1。

3.3

NRZ-I

MLT-3描述了电压跳变的规则,但没有说明电压跳变与数据“0”、“1”的关系。NRZ-I为“Non-Return-to-Zero Inverted”的缩写,即不归零反转码。这种编码规定数据“0”不跳变,数据“1”跳变。

3.4

示例

综合前面3个关键词,可以简单概括100 Base-TX的电信号变化规律如下:

100 Base-TX首先通过4B5B编码将每4位数据编码成5位二进制编码;接着使用3种电压传输数据,如果数据为“0”,电压不跳变,如果数据为“1”,电压跳变1次,且总是往历史电平相反的方向跳变,例如-1 → 0 → +1,或+1 → 0 → -1。

最后,100 Base-TX并不直接传输信号本身,而是传输信号与扰码的异或结果,如图7所示。截取的信号首先通过MLT-3的规则解码,每5位一组,用绿色字体标识。接下来找到解扰码(scrambler key)序列。扰码不是加密,只是用来改善电磁特性,因此加扰和解扰都只需做异或(XOR)操作,使用同一个序列。100 Base-TX使用一个11位的线性反馈移位寄存器(LFSR)来生成2047位长的伪随机数序列。这对于手动找到同步的位置带来了非常大的困难,但是如果是程序自动同步,就非常容易了。解扰后的数据是5 bits一组,反查4B5B的编码表,就可以得到4 bits一组的数据。图7中展示了3个字节的编码分析结果。

pYYBAGJ04l-ACVrPAAEaoj7F3SI177.png

图7. 100 Base-TX的编码解析

虽然100 Base-TX手动解码非常困难,但是借助示波器的总线解码工具,可以非常快速方便地完成解码。示波器的设置如图8所示。由于是标准协议,并没有太多选项,将总线设为“Ethernet”,速度设为“100 Base-TX”,信号类型设为“差分”,其它选项根据实际情况选择或保持默认就可以了。

poYBAGJ04maAA6sCAADNQcAejMo816.png

图8. 100 Base-TX解码设置

解码结果如图9所示。

poYBAGJ04muACLcaAAEzW_TGk5I863.png

图9. 100 Base-TX解码结果

100 Base -TX的解码流程复杂,数据量大,检索不方便,通常需要协议分析软件辅助才可以进一步分析。现在混合信号示波器中已经集成了解码和分析功能,只需要一根特制的网线,就可以完成全部分析工作,彻底将以太网的传输机制展示在屏幕上。

3.5

实战

我们通过2台计算机组成一个小局域网,在局域网之间进行ping操作的实战验证。通过Wireshark捕获,我们可以看到在网口上已经有了若干ping request和reply数据包,如图10所示。在TX差分对上,我们理应找到发出去的ping request数据包,源地址是192.168.0.2,目标地址是192.168.0.1。

在示波器上,我们设置好Ethernet总线解码,并将触发设置为指定的IP。如图11所示,触发位置选为“IP标头”,源地址设为“192.168.0.2”,这样当出现指定源地址的数据包后,示波器就会被触发。

如图12所示,是通过上述设置后示波器捕获并解码的数据包,经过对比,和Wireshark上软件捕获的数据相一致。

pYYBAGJ04nKAHITkAAJ5wODQ3Dc988.png

图10. Wireshark捕获的ping request和reply数据包

pYYBAGJ04niALsEVAAFrTnwmdFk724.png

图11. 触发设置为指定IP

poYBAGJ04n-AGHfcAAHPJu-oc1Y867.png

图12. 示波器捕获并解码的ping request数据包

4. 总结

软件和硬件总是存在一些隔阂。例如在以太网分析上,传统的计算机网络领域主要从软件层面介绍逻辑链路层及更高层的设计和实现,对于物理层的介绍比较简单。而传统的硬件领域对于数字信号往往只介绍简单的串行总线,并不会拿比较复杂的以太网作为例子。

本文深入分析了2类常见的双绞线以太网的编码,并利用混合信号示波器的总线解码功能,查看并验证了以太网在物理层的信号传输情况。最后通过一个实战例子来对比了实际网络中软件接收到的数据和示波器捕获信号之间的一致性,从物理层揭示了以太网数据传输的机制。

参考文献

[1] https://en.wikipedia.org/wiki/Ethernet

[2] https://en.wikipedia.org/wiki/ANSI/TIA-568

[3] https://www.wireshark.org

[4] https://en.wikipedia.org/wiki/4B5B

[5] https://en.wikipedia.org/wiki/MLT-3_encoding

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 以太网
    +关注

    关注

    40

    文章

    5419

    浏览量

    171599
  • 信号示波器
    +关注

    关注

    0

    文章

    63

    浏览量

    11120
  • 混合信号示波器

    关注

    0

    文章

    53

    浏览量

    11625
收藏 人收藏

    评论

    相关推荐

    以太网和TCP/IP的关系解析

    在现代计算机网络中,以太网和TCP/IP协议栈是构建网络通信的基础。以太网定义了局域(LAN)中的数据链路层和物理层的技术标准,而TCP/IP协议栈则涵盖了从网络层到应用层的一系列协议,用于实现
    的头像 发表于 11-08 09:21 551次阅读

    以太网的传输介质和工作模式

    以太网是一种广泛应用的局域(LAN)技术,它通过特定的传输介质和工作模式,在多个设备之间高效地传输数据。本文将从以太网的传输介质和工作模式两个方面进行详细阐述,帮助读者深入了解
    的头像 发表于 10-08 10:07 765次阅读

    以太网端口的类型和特性

    以太网端口,即以太网接口,是网络中用于连接设备并进行数据交换的端口。它基于IEEE 802.3标准,并使用以太网协议进行数据传输。以太网端口在局域
    的头像 发表于 08-07 15:27 1375次阅读

    车载以太网与传统以太网的区别

    车载以太网与传统以太网在多个方面存在显著的差异,这些差异主要体现在传输速率、实时性、可靠性、物理层标准、应用场景以及技术发展等方面。
    的头像 发表于 07-25 11:12 1762次阅读

    工业以太网和普通以太网区别在哪

    工业以太网和普通以太网是两种不同的以太网技术,它们在设计、性能、应用和可靠性等方面存在显著差异。本文将详细介绍这两种以太网技术的区别。 设计差异 工业
    的头像 发表于 06-11 10:30 2617次阅读

    使用VN5620监控记录以太网总线数据#车载以太网 #CANape

    以太网硬件
    北汇信息POLELINK
    发布于 :2024年06月09日 16:45:04

    Profinet与以太网的区别

      在工业自动化和网络通信领域,Profinet和以太网是两种常见的通信协议。尽管它们都基于以太网技术,但在技术规范、应用领域、通信速度和实时性、系统兼容性和互操作性以及数据处理和网络管理等方面存在显著差异。以下将详细阐述Pro
    的头像 发表于 06-06 13:56 4160次阅读

    车载以太网硬件接口VN5620设备展示与介绍#车载以太网

    车载以太网
    北汇信息POLELINK
    发布于 :2024年05月31日 10:27:03

    车载以太网接口VN5650使用场景介绍#车载以太网

    以太网
    北汇信息POLELINK
    发布于 :2024年05月11日 17:58:05

    Cat6A以太网电缆特点

    自从Cat1(一种1985年推出的数据速率为1mbps的非屏蔽双绞线电缆)发布以来,以太网电缆在速度和带宽方面都有了迅速的发展。虽然现在有更快、更先进的电缆用于数据传输,但6A以太网
    的头像 发表于 05-07 10:29 870次阅读

    用示波器分析以太网传输机制

    本文以双绞线以太网为分析对象,以混合信号示波器为分析工具,深入探秘了两常见双绞线
    的头像 发表于 04-12 08:30 779次阅读
    用示波器分析<b class='flag-5'>以太网</b>传输机制

    工业以太网的基本原理及优势

    工业以太网,作为现代工业通信的基石,正逐渐改变着传统工业网络的格局。它以其高效、灵活和可靠的特点,在工业自动化领域得到了广泛应用。本文将从工业以太网的基本原理出发,深入探讨其优势及其在工业领域
    的头像 发表于 03-25 14:40 688次阅读

    基于IEEE Clause 28双绞线以太网自协商机制

    双绞线以太网自协商通过链路双方互相周期发送自协商脉冲群(通过脉冲群携带自己的物理层信息),从而到达彼此互相理解的目的,最终建立正确连接。
    发表于 03-15 09:53 496次阅读
    基于IEEE Clause 28<b class='flag-5'>双绞线</b>的<b class='flag-5'>以太网</b>自协商机制

    万兆以太网规范解读

    802.3aq和 2007 年的IEEE 802.3ap;在规范方面,总共有 10 多个(是一比较庞大的家族,比千兆以太网的 9 个又多了许多)。在这 10 多个规范中,可以分为三:一是基于光纤的局域
    的头像 发表于 01-15 10:21 2505次阅读
    万兆<b class='flag-5'>以太网</b>规范解读

    以太网阻塞的常见原因与解决方法

    常见原因 1. 网络设备性能不足:网络设备包括交换机、路由器等,如果设备处理能力不过关,无法处理大量的数据流量,就会导致以太网阻塞。 解决方法:升级网络设备,选择更高性能、更适合当前网络负载的设备。 2. 网络拓扑设计不
    的头像 发表于 12-27 13:58 1249次阅读