10G以太网在物理上如何实现?[关闭]


22

10 Gb以太网意味着每秒传输100亿比特,但是我不知道这在物理上是如何可能的(更不用说100G以太网了)。当今最快的CPU只能在〜8GHz上运行,但是即使传输不需要CPU,这仍然有问题。

在10G时,每个比特仅持续100皮秒,在那个时间范围内,我认为门延迟成为一个问题。这并不像为每位设置高电平或低电平那样简单,为了输出复杂的以太网波形,肯定需要数百个晶体管。

在接收端,这似乎是一个更大的问题,因为必须以非常高的速率对波形进行采样,如果使用ADC,则会引入更多的延迟。


6
我猜最好的选择是浏览技术论文?
尤金(Eugene Sh)。

6
看一下数据的编码方式,提示:“神奇地”使用PAM16,您需要的转换要少得多。
PlasmaHH

10
8GHz * 64位= 512Gbps。因此,实际上10Gbps的速度远远不及CPU。
汤姆·卡彭特

5
您对它如何工作的大多数假设都是错误的-如果按照您的想象工作,那将是不可能的。但是,事实并非如此。
克里斯·斯特拉顿

8
@ChrisStratton我不同意这是题外话。我们有很多“ X如何工作?” 档案中的问题,这一范围相当狭窄。
亚当·豪恩

Answers:


25

追逐这个答案需要几个不同的环节,但似乎可以归结为:
1. 4个差分对(总共8条线,但只有4条线)。
2.每秒800个兆符号。
3.使用PAM16,使用16个符号,每个通道每个波特率转换为4位。

鉴于这些信息,您将获得4位* 800 Mhz * 4通道,从而得出12800 Mb / s或12.8 Gb / s。由于纠错和其他开销的编码,他们只希望您从中获得10 Gb / s。

请注意,导线本身仅以800 MHz的频率改变符号或幅度。就晶体管的开关速度而言,这相当不错。


现在,所有这些都适用于10Gb以太网。他们如何为100Gb以太网做到这一点令人费解。为此,他们似乎确实确实将频率提升到了10.3 GHz或25GHz。有没有搞错?看这里那个桌子 频率差异是由于您选择拥有多少对铜线数据通道。是否有人真的用铜制成了这种25GHz以太网将是很有趣的事情。他们可能只对它进行了说明。当您开始达到这些频率时,您的电缆可能需要很短,或者您只需切换到光纤,即可在单根光纤上发送数百束光。这样,您就不必再狂奔了,您只需在源处并行化数据,然后在目的地处并行化数据。

如果您想了解更多信息,参考:https : //en.wikipedia.org/wiki/10_Gigabit_Ethernet#Copper
https://en.wikipedia.org/wiki/
脉冲幅度调制http://www.cablinginstall.com/ article / print / volume-15 / issue-7 / features / technology / twisted-pair-options-for-10-gigabit-ethernet.html
https://zh.wikipedia.org/wiki/Differential_signaling


1
@HaLailahHaZeh即使他们还没有找到编码该有效频率的方法。在系统中CPU之间的通信通道上并非闻所未闻的是12.8 GHz。
Horta

2
@HaLailahHaZeh顺便说一句,您在上面的评论与您链接的文档背道而驰:调制速率为800Mbaud,因此奈奎斯特频率为400 MHz。您不要将频率乘以电压电平数。这意味着能够承载高达约500 MHz频率的电缆就足够了。
uint128_t

1
@HaLailahHaZeh 16个单独的电压是4位,而不是16位。
user253751 '17

2
该死 发布之前,我检查了所有-CX4和-KX4类型。没意识到有10GBase-T。
Photon

1
@HaLailahHaZeh:PAM-16确实使用16个单独的电压,但是在每个符号时间内仅传输一个电压。使用10GBASE-T,800 MSymbols / sec意味着每条线的电压每1.25纳秒变化一次。感谢您的白皮书;这很有帮助。
davidcary

14

10G以太网(如其他答案所述)在10 GHz时不进行信号转换,它使用跨4对的多级编码来达到10 Gb / s。

但是,在高速芯片上,十多个千兆位串行收发器非常普遍。例如,PCIe,USB3.1,雷电和类似协议在单个对上都使用10 gbit / s的串行速率。

您认为“批量”逻辑跟不上该数据速率是正确的。当然,CPU内核不会以该频率运行,但是即使实现PCIe接口之类的逻辑也无法以该速度运行。相反,他们使用专用的高速SERDES。

数据通过宽并行总线中的IC进行路由。专用硬件直接在输入/输出附近进行串行到并行或并行到串行的转换。SERDES的实际逻辑绝对最小。变送器非常简单。它将具有一个PLL,以生成高速串行数据时钟和并行至串行逻辑。接收器更为复杂,它们需要对传入的数据进行时钟恢复,并且还需要进行成帧检测以确保将比特正确分组。总而言之,只有极少数的逻辑必须以超高速运行。是的,通过转换的传播延迟非常重要,必须精心设计电路,以使所有信号正确排列。


而且Thunderbolt仅在细铜线上能以20-40 gbit / s的速度工作,这是因为电缆有效地用于放大弱信号,因此价格昂贵。
chx

2

许多10 GBit / s以太网链路实际上都是光链路(例如10GBASE-SR或10GBASE-LR,请参见https://en.wikipedia.org/wiki/10_Gigabit_Ethernet),尽管在8P8C双绞线电缆上也有10GBASE-T( @horta所述的“ RJ45”)连接器。据我所知,与光学变体相比,这非常耗电。

从CPU(或更确切地说是内存)到以太网卡的数据传输通常是通过基于x86的计算机中的PCIe总线进行的。PCIe Gen 1通道的可用数据传输速率为2 Gbit / s秒(在8/10位编码之后)。对于8条通道,理论最大值为16 GBit / s(每个方向),足以驱动10 GBit / s以太网的单个端口。

CPU将要传输的数据存储在RAM中,然后指示网卡从何处拾取(DMA),类似地,CPU分配缓冲区并通知网卡有关它的信息,然后通常在缓冲区产生中断时通知该网卡。 )已满。请注意,RAM的带宽通常比PCIe总线之一大得多。

如今,我们已经广泛提供了PCIe Gen 3,每个通道和方向的可用数据速率约为8 GBit / s。理论上,一个16通道插槽可以处理128 GBit / s,足以支持100 GBit / s以太网(PCIe Gen 4最近已正式发布)。

因此,在PC内部实现高吞吐量(而不用过高的信令速度)的“诀窍”是使用并行总线(RAM)或多个串行通道(PCIe)。

对于100 Gbit / s的以太网,通常有四个具有25 GBaud信令速度的链路(100GBASE-SR4、100GBASE-LR4、100GBASE-CR4),此外还有针对10链路(例如,光纤对)的10 Gbit / s的电缆标准。 (100GBASE-CR10、100GBASE-SR10、100GBASE-CR10)。对于更长距离的链路,还有一些标准仅使用一根光纤,即使用四个波长(100GBASE-CWDM4)或使用两个偏振模式和QPSK(100GBASE-ZR)。

为了在长距离链路(例如每根光纤对具有20 TB / s 的Marea跨大西洋电缆)上实现极高的链路速度,可以将尽可能多的不同波长的发射器打包到光纤和放大器的可用波长带中,这也称为密集波分复用(DWDM)。注意,这样的多路复用器/多路分解器通常在其核心是仅光学设备,并由多个较低带宽的流馈送,这些流可以并行地进行电子处理。

为了达到20 TBit / s,还需要使用先进的调制技术,在每个时钟周期可以传输多个幅度和相位(我在白皮书中已经看到64QAM ),因此每个时钟周期可以传输多个比特,类似于10GBASE-T标准由@horta描述。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.