Давайте поки проігноруємо Gigabit-частину та трохи зосередимось на вашій частині "2 пристрої надсилають одночасно" частину.
У спільних ЗМІ це насправді може статися і бути проблемою. Більшість бездротових передач - це загальнодоступні засоби масової інформації, а Ethernet тоді ще був:
- 10base2 (коаксіальний) використовував те, що було більш-менш одним кабелем з кожним на ньому. Очевидно, що дві (або більше) станцій змогли передавати одночасно;
- 10baseT і 100baseT (на основі крученої пари), з концентраторами (а не комутаторами) також означали, що дві (або більше) станції можуть передавати одночасно, оскільки сигнал, отриманий від будь-якого підключеного пристрою, просто повторювався всім іншим.
Тепер, якщо два пристрої надсилають одночасно, можуть статися дві речі:
ви використовуєте певну форму мультиплексування (поділ часу, поділ частоти ...), яка дозволяє окремі "канали", щоб можна було слухати певний канал і не турбувати інших. Це використовується дуже багато для бездротових передач, набагато менше для дротових передач (WDM / DWDM на волокнах є одним винятком).
або якщо два або більше пристроїв надсилають одночасно по одному каналу, ви отримуєте те, що називається зіткненням : наприклад, коли двоє людей говорять одночасно, ви не можете зрозуміти, що говорить, або приймаючі пристрої не в змозі розшифрувати дані, надіслані будь-яким із пристроїв (або частіше, вони можуть їх декодувати, але це не має сенсу і не буде проходити перевірки CRC).
Сюди потрапляли такі схеми, як CSMA-CD (Carple-Sense Multiple Access, Collision Detection):
- Перш ніж спробувати передати, пристрій перевірить, чи надсилає хтось інший (сенс оператора)
- Якщо канал вільний, він починає передавати.
- Але навіть при цьому два пристрої можуть запуститися точно в один і той же час, тому ви все одно можете зіткнутися.
- Щоб не витрачати занадто багато часу на канал, пристрої виявлятимуть зіткнення (порівнюючи те, що вони надсилають із отриманим: якщо це не відповідає, то це означає, що хтось інший надсилає одночасно), скасовує передачу, та повторіть спробу після випадкової затримки (щоб уникнути нового зіткнення).
Це було досить весело, і в слабо завантажених мережах він працював досить добре, але як тільки трафік набув значного значення, ви закінчитеся тоннами зіткнень, що, в свою чергу, збільшує використання спільного носія, що в свою чергу призводить до більшої кількості зіткнень, так що це може стати дуже поганим.
Відповіддю на це було перехід на повнодуплексні комутовані мережі . Хаби просто повторювали сигнал, не замислюючись. Перемикачі з іншого боку дійсно отримують кадр, а потім повторно надсилають його за цільовим посиланням (додатковий бонус: кадр відправляється не всім, просто до місця призначення в більшості випадків).
Якщо два пристрої надсилають одному і тому ж пристрою призначення, то комутатор виведе в чергу один з кадрів, тож два кадри, які були надіслані одночасно, фактично надходять один за одним у пункт призначення.
Крім того, на фізичному рівні цілком можливі дані обмінюються паралельно декількома парами або навіть декількома кабелями. Чи буде це зроблено на рівні бітів або цілі кадри надсилаються на кожну пару / кабель, залежить від точної технології, що використовується. Але я думаю, це насправді не було вашим питанням.