Як фізично можливо 10G Ethernet? [зачинено]


22

10 гігабітних Ethernet означає, що 10 мільярдів біт передається щосекунди, але я не розумію, як це фізично можливо (не кажучи вже про 100G Ethernet). Сьогодні найшвидші процесори працюють лише на ~ 8 ГГц, але навіть якщо для передачі не потрібен процесор, це все ще здається проблематичним.

У 10G кожен біт триває всього 100 пікосекунд, і за цей проміжок часу я думаю, що затримка воріт стане проблемою. Це не так просто, як встановлення лінії високої або низької для кожного біта, напевно сотні транзисторів потрібні для виведення складної форми хвилі Ethernet.

Це видається ще більшою проблемою на приймальному кінці, оскільки форма хвилі повинна бути відібрана з дуже високою швидкістю, і якщо для цього використовуються АЦП, це вводить ще більше затримки.


6
Гадаю, найкраще було б переглядати технічні документи?
Євген Ш.

6
Подивіться, як кодуються дані, натяк: Використання PAM16 "магічно" змушує вас набагато менше переходів.
ПлазмаHH

10
8 ГГц * 64біт = 512 Гбіт / с. Тож насправді 10Gbps ніде не так швидко, як процесор.
Том Карпентер

5
Більшість ваших припущень щодо того, як це працює, є абсолютно помилковими - якби це працювало так, як ви уявляєте, це, мабуть, не було б можливим. Але це не так, і це так.
Кріс Страттон

8
@ChrisStratton Я не згоден, що це поза темою. У нас є багато "Як працює X?" питання в архівах, і це досить вузько.
Адам Хаун

Відповіді:


25

Переслідування цієї відповіді вниз взяло кілька різних посилань, але, схоже, зводиться до цього:
1. 4 диференціальні пари (8 проводів загалом, але лише 4 смуги).
2. 800 мега символів на секунду.
3. За допомогою PAM16 використовується 16 символів, що перекладається на 4 біти на бод на смугу.

Враховуючи цю інформацію, ви отримуєте 4 біти * 800 МГц * 4 смуги, що призводить до 12800 Мбіт / с або 12,8 Гбіт / с. Через кодування виправлення помилок та інших накладних витрат вони очікують, що ви отримаєте від цього 10 Гбіт / с.

Зауважте, що самі дроти змінюють лише символи або амплітуду на частоті 800 МГц. Це досить мех, що стосується швидкості комутації транзисторів.


Тепер це все для 10Gb Ethernet. Як вони роблять це для 100Gb Ethernet - це трохи більше розуму. Для цього, здається , що вони на насправді накачати частоту до 10,3 ГГц або 25GHz . ЯКОГО БІСА? Дивіться тутдля цієї таблиці. Різниця в частоті пояснюється тим, скільки ліній передачі даних мідних пар ви вибрали. Було цікаво знати, чи справді хтось зробив цю мережу 25 ГГц у міді. Цілком можливо, що вони лише розгадали це. Коли ви починаєте добиратися до цих частот, ваші кабелі або повинні бути дуже короткими, або ви просто переходите до волоконної оптики, куди ви можете відправляти сотні пучків світла вниз одним волокном. Таким чином, вам не доведеться їхати з шаленою швидкістю, ви просто паралелізуйте свої дані в джерелі та депаралелізуйте їх у пункті призначення.

Посилання, якщо ви хочете детальніше ознайомитись з цим: https://en.wikipedia.org/wiki/10_Gigabit_Ethernet#Copper
https://en.wikipedia.org/wiki/Pulse-amplitude_modulation
http://www.cablinginstall.com/ статті / друк / том-15 / випуск-7 / функції / технології / кручена пара-варіанти-для-10-гігабітного-ethernet.html
https://en.wikipedia.org/wiki/Differential_signaling


1
@HaLailahHaZeh Навіть якщо вони не знайшли способу кодувати цю ефективну частоту. 12,8 ГГц не є нечуваним на каналах зв'язку між процесорами в системі.
хорта

2
@HaLailahHaZeh BTW, ваш коментар вище суперечить тому документу, який ви зв'язали: швидкість модуляції становить 800 Мбауд, тому частота Nyquist - 400 МГц . Ви не помножуєте частоту на кількість рівнів напруги. Це означає, що кабелів, здатних переносити частоти до ~ 500 МГц, буде достатньо.
uint128_t

1
@HaLailahHaZeh 16 окремих напруг - це 4 біти, а не 16 біт.
користувач253751

2
Чорт. Я перевірив усі типи -CX4 & -KX4 перед публікацією. Не зрозумів, що є 10GBase-T.
The Photon

1
@HaLailahHaZeh: PAM-16 використовує 16 окремих напруг, але протягом кожного символу передається лише одна напруга. З 10 ГБАСЕ-Т 800 МСсимволів / сек означає, що напруга кожного проводу змінюється кожні 1,25 наносекунд. Дякую за довідку; це корисно.
davidcary

14

10G Ethernet (як описано в інших відповідях) не здійснює переходу сигналу на частоті 10 ГГц, він використовує багаторівневе кодування, розповсюджене на 4 пари для досягнення 10 Гбіт / с.

Однак послідовні приймачі 10+ гігабітів досить часто зустрічаються на високошвидкісних мікросхемах. Наприклад, PCIe, USB3.1, thunderbolt та подібні протоколи, всі використовують послідовну швидкість 10 Гбіт / с на окремі пари.

Ви вірні, що "об'ємна" логіка не може йти в ногу з цією швидкістю передачі даних. Безумовно, ядра CPU не працюють на такій частоті, але навіть логіка, яка реалізує такі речі, як інтерфейси PCIe, не може працювати з такою швидкістю. Натомість вони використовують виділені високошвидкісні SERDES.

Дані передаються за допомогою ІМС у широких паралельних шинах. Спеціальна частина обладнання робить серійно-паралельне або паралельно-серійне перетворення прямо біля вводу / виводу. SERDES робить абсолютний мінімум фактичної логіки. Передавачі дуже прості. Він матиме PLL для генерації високошвидкісних тактових даних послідовних даних та паралельної послідовній логіці. Одержувачі складніші, їм потрібно виконати відновлення годин за вхідними даними, а також обрамлення виявлення, щоб переконатися, що біти групуються належним чином. Загалом, лише невелика логіка повинна працювати на надвисокій швидкості. Так, затримки розповсюдження через переходи є надзвичайно важливими, і схема повинна бути ретельно спроектована так, щоб усі сигнали розташовувалися належним чином.


А Thunderbolt працює лише на 20-40 гбіт / с на тонких мідних дротах, оскільки кабелі активні для посилення слабких сигналів і як такі досить дорогі.
chx

2

Багато посилань Ethernet 10 Гбіт / с насправді є оптичними (наприклад, 10GBASE-SR або 10GBASE-LR, див. Https://en.wikipedia.org/wiki/10_Gigabit_Ethernet ), хоча також є 10GBASE-T через кабелі з крученою парою з 8P8C ( 'RJ45') роз'єми, як описано в @horta. Наскільки мені відомо, ця потужність голодна в порівнянні з оптичними варіантами.

Передача даних з ЦП (а точніше пам'яті) на карту Ethernet відбувається зазвичай через шину PCIe в комп'ютері на базі x86. Доріжки PCIe Gen 1 мають корисну швидкість передачі даних 2 Гбіт / с в секунду (після кодування 8/10 біт). З 8 доріжок теоретичний максимум - 16 Гбіт / с (за напрямком), достатній для роботи одного порту Ethernet 10 Гбіт / с.

ЦП депонує дані, що передаються в оперативній пам’яті, а потім інструктує мережеву карту, куди брати (DMA), і аналогічно для прийому процесор виділяє буфери та інформує про це мережеву карту, коли тоді зазвичай генерує переривання, коли буфер (s) ) були заповнені. Зауважте, що пропускна здатність до оперативної пам'яті, як правило, значно більша, ніж шина PCIe.

Сьогодні у нас широко доступний PCIe Gen 3, який має швидкість передачі даних приблизно 8 Гбіт / с на смугу руху та напрямок. Слот на 16 доріжок теоретично може працювати з 128 Гбіт / с, достатньою для 100 Гбіт / с Ethernet (PCIe Gen 4 було оголошено офіційно нещодавно).

Таким чином, «фокус» досягти високої пропускної здатності всередині ПК (без необхідності переходити до непомірних швидкостей сигналізації) полягає у використанні паралельних шин (ОЗУ) або декількох послідовних смуг (PCIe).

Для Ethernet 100 Гбіт / с один, як правило, має чотири ланки зі швидкістю сигналізації 25 ГБауд (100 ГБАСЕ-SR4, 100 ГБАСЕ-LR4, 100 ГБАСЕ-CR4), також є стандарти для кабелів з десятьма ланками (наприклад, пари волокон) 10 Гбіт / с. (100GBASE-CR10, 100GBASE-SR10, 100GBASE-CR10). Для більш довгих ліній зв'язку також існують стандарти, що використовують лише одне волокно, або з використанням чотирьох довжин хвиль (100GBASE-CWDM4), або з використанням двох режимів поляризації та QPSK (100GBASE-ZR).

Для надзвичайно високої швидкості зв'язку по довгих каналах зв'язку (наприклад, трансатлантичний кабель Marea з 20 Терабіт / с на волокнисту пару) один пакує якомога більше передавачів різної довжини хвилі у корисну смугу довжин хвиль волокон та підсилювачів, також відомий як Густа Мультиплексування поділу довжини хвилі (DWDM). Зауважимо, що такий мультиплексор / демультиплексор зазвичай є оптичним пристроєм в основі, і він подається декількома потоками нижньої смуги пропускання, які можуть оброблятися паралельно в електронному вигляді.

Для досягнення 20 TBit / s один також використовує передові методи модуляції, де на кожному тактовому циклі можна передавати кілька амплітуд і фаз (я бачив 64QAM у довідці ), тому передаючи кілька біт за тактовий цикл, аналогічно стандарту 10GBASE-T описав @horta.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.