Якщо два пристрої випромінюють сигнал wifi на одній і тій же частоті одночасно і досягають антени одночасно, то як дані можуть не перетинатися?


15

Я маю на увазі, я знаю, що кожен пакет відправляється з MAC-адресою, але що про потокове передавання?

Що станеться, якщо маршрутизатор отримує один пакет, приходить пакет з іншого пристрою?

Як маршрутизатор може знати, що фотони, що стикаються з антеною, є частиною першого пакета або другого пакета?

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


4
Це називається a зіткнення . Обидва пакети втрачені.
vonbrand

Відповіді:


20

У бездротовій мережі лише один пристрій фактично "говорить" відразу. Кожен інший пристрій слухає і чекає, поки повітря на цьому каналі буде тихим, перш ніж говорити. Цю методику називають множинний доступ з сенсором несучої з уникненням зіткнення (CSMA / CA)

Обмін RTS / CTS допомагає всім вузлам ефективно синхронізуватись, надаючи можливість одному вузлу сказати "гей, я буду так довго говорити так довго чекати" до будь-якого іншого вузла.

@ Петро Абдулін правильно, але я думаю, що всі мережі Wifi використовувати CSMA / CA. Старі 10BaseT бездротових дротових мереж покладалися на множинний доступ з сенсором несучої з виявленням зіткнення (CSMA / CD) . Зіткнення не відбуваються в мережах, де всі вузли підключені до комутатора.


4
В основному правильно, за винятком того, що колізії можуть статися з CSMA / CA. Розглянемо три пристрої A, B і C, де A і C надто далеко один від одного, щоб отримувати дані один одного, але B знаходиться між ними і може приймати від них. А і С не можуть виявити зіткнення (на їхню думку, їх немає), але B не зможе отримувати дані від будь-якого з них, якщо не буде мовчати.
George Skoptsov

@GeorgeSkoptsov - Звичайно, ще можливе зіткнення, якщо зіткнення не було можливим, все було б бездротовим, оскільки втрати пакетів не було.
Ramhound

5
@Ramhound - зіткнення не є основною причиною втрати пакетів, а втрата пакетів не є основною причиною, по якій не все є бездротовим.
George Skoptsov

8

Якщо трапляється, що дві передачі заважають один одному (зіткнення), то обидві передачі будуть пошкоджені, і вони будуть повторно передані після випадкової затримки, зменшуючи ризик повторення зіткнення.


1

Що трапиться, якщо маршрутизатор отримує один пакет, від якого пакет   прибув інший пристрій?

Негайним наслідком є ​​те, що деякі з перекриваються бітів пошкоджені. Часто так багато біт пошкоджено, що приймач бачить, що послідовність перевірки кадру не збігається, і приймач просто викидає погані дані, інакше він діє так, ніби він не чує жодного пакета.

Пізніше протоколи вищого рівня зрештою помітять, що пакет не був підтверджений (ACK'ed) і повторно передав пакет.

Однак стандарти WiFi містять багато різних способів запобігання таких колізій, включаючи:

  • Більшість версій WiFi використовують COFDM або іншу комбінацію біт з поширенням спектра + додаткові виправлення помилок. Якщо вам пощастило, лише кілька бітів були перевернуті, всі ці біти можуть бути виправлені в приймачі, і один пакетів проходить без помилок.

  • Як уже зазначав LawrenceC, більшість версій WiFi використовують багатоканальний доступ з сенсором уникнення зіткнення (CSMA / CA) : Бездротова точка доступу координує всі ноутбуки, які спілкуються з нею, так що (зазвичай) передається тільки один пристрій за один раз, тому (як правило) зіткнення немає. (Іноді ви все ще отримуєте зіткнення з пакетом від іншого ноутбука, який намагається розмовляти з іншою бездротовою точкою доступу, або перешкодою з іншими пристроями).

як щодо потокового відео?

Що про це?

Коли ноутбук відтворює потокове аудіо (або потокове відео; приблизно 5 Мбіт / с для відеопотоків 1080p), відправник посилає його як серію невеликих пакетів. Сучасне комунікаційне обладнання швидке (802.11a передає більше 20 Мбіт / с, а останні стандарти Wi-Fi ще швидше), тому існують (відносно) довгі проміжки між одним пакетом до цього ноутбука, і наступний пакет до одного ноутбука.

Між кожним пакетом є безліч часу для бездротової точки доступу для надсилання пакетів на кілька інших ноутбуків, прослуховуючи випадкові пакети від тих ноутбуків, які переконують попередні передачі і запитують наступний фрагмент потоку, і навіть частіше пересилати пакети, коли відбувається зіткнення або інша помилка.

Якщо всі ці ноутбуки розмовляють з однією точкою доступу, тоді точка доступу координує передачі, так що передається лише один пристрій за один раз.

Якщо деякі з цих ноутбуків розмовляють з однією точкою доступу, а інші розмовляють з іншою (неузгодженою) точкою доступу, і всі ці пристрої розташовані досить близько, щоб вони могли легко підслухати один одного, тоді будуть часті зіткнення.

Будь-які пакети, що стикаються, повторно передаються. Зазвичай повторно переданий пакет зрештою проходить, задовго до того, як прийшов час грати, так що жодна людина навіть не помічає, що існує проблема. Так (як правило) кожна людина отримує ілюзію власного "безперервного" виділеного потоку.


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