Надежный UDP - PullRequest
       24

Надежный UDP

3 голосов
/ 13 апреля 2009

Как я могу разработать модуль ядра Linux, чтобы сделать UDP надежным? Это мое задание в колледже, и я не знаю, как поступить. Как изменить поведение UDP по умолчанию в ядре Linux, загрузив новый модуль ядра? а как программировать такой модуль ядра?

Ответы [ 15 ]

1 голос
/ 13 апреля 2009

Если вы хотите получить больше информации о том, как изменить ядро ​​Linux, я первым делом открою Google «ядро Linux» и, возможно, даже добавлю «сокет» к нему. Веб-сайт Linux Kernel выглядит так, как будто у него есть другие рекомендации, которым вы должны следовать.

Мои предложения таковы:

1) Посмотрите, как реализован UDP в Linux
2) Посмотрите, как реализован RUDP (как уже упоминалось)
3) ... (здесь происходит волшебство)
4) Прибыль! эээ ... готовая домашняя работа!

0 голосов
/ 06 ноября 2012

Если вам нужен надежный UDP, ваш лучший выбор - использовать SCTP ( Протокол управления потоком ). Теперь это общепризнанный протокол, используемый повсеместно.

0 голосов
/ 13 апреля 2009

Возможно, то, на чем вы застряли, - это понятие «надежный». У вас есть четкое представление о том, что именно, с технической точки зрения, вы подразумеваете под этим? (Или, более уместно, я полагаю, что под этим подразумевает ваш инструктор.)

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

0 голосов
/ 13 апреля 2009

Если по какой-то причине вам НЕОБХОДИМО использовать UDP (серьезно, просто используйте TCP), некоторые быстрые и легкие функции обеспечения надежности - это биение, наличие и подтверждение контрольной суммы.

0 голосов
/ 13 апреля 2009

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

...