LINUX.ORG.RU

передача данных по UDP


0

1

Всем доброго времени суток!
У меня возник вопрос-уточнение про UDP. Я знаю, что пакеты могут там просто теряться, могут перемешиваться.

Но могут ли они дублироваться?

// у меня создается впечатление, что могут... :-\ но оно, скорее всего неверное %)

man udp, первая строчка сверху:

This is an implementation of the User Datagram Protocol described in RFC 768. It implements a connectionless, unreliable datagram packet service. Packets may be reordered or duplicated before they arrive. UDP generates and checks checksums to catch transmission errors.

nanoolinux ★★★★
()

С юдипи все может быть.
Поэтому тебе придется самому нумеровать пакеты, накапливать их в буферах, сортировать перед обработкой очередной порции, и если есть пропажи - запрашивать их встречными запросами у отправителя.

Novator ★★★★★
()
Последнее исправление: Novator (всего исправлений: 1)

Но могут ли они дублироваться?

почему нет? например узел A отправляет пакеты на C, через узел B. На C могут придти пакеты и от A и от B.

drBatty ★★
()
Ответ на: комментарий от unC0Rr

ТС хочет udp. Ко мне какие вопросы?

А причины могуть быть разные в пользу udp:
1) большая скорость при передаче мгновенного некритичного к потерям трафика: видео-аудио, игра-стрелялка-бегалка
2) лучше «дырявится» NAT

Novator ★★★★★
()
Последнее исправление: Novator (всего исправлений: 1)
Ответ на: комментарий от unC0Rr

Novator прав - «бОльшая скорость»

2 Novator: нумерация пакетов была изначально, но счетчик был размером с unsigned short, а этого похоже недостаточно, при скоростях выше 100Mbps...

metawishmaster ★★★★★
() автор топика
Последнее исправление: metawishmaster (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.