Реализация пользовательского транспортного протокола — ядро Linux

#linux #networking #tcp #kernel

#linux #сеть #tcp #ядро

Вопрос:

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

Последние пару месяцев я работал над различными проектами, связанными со взломом ядра Linux, и я довольно подробно прочитал книгу по разработке ядра Linux, так что для меня это не в новинку.

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

Комментарии:

1. Каковы требования к протоколу? Какой язык вы планируете использовать? Что вы планируете сделать, чего UDP, TCP или SCTP еще не сделали?

2. @Mike — это школьный проект, какое это имеет значение?!

3. @Alnitak, уверен, что требования не имеют значения для школьного проекта. Вам лучше знать

4. Он попросил указать документацию, а не мастер-класс по сетевому взаимодействию.

5. Транспортный протокол прямо над уровнем канала передачи данных? Вы уверены?

Ответ №1:

Есть старая статья о сетевых буферах и управлении памятью Алана Кокса. Совсем недавно Дэвид С. Миллер написал немного о сетях Linux, и, конечно, несколько университетов подготовили документацию разного качества о внутренних компонентах сети Linux.

Ответ №2:

Все, что вам нужно, — это эта книга: «понимание внутренних особенностей сети Linux» Кристиана и «Сети ядра Linux, реализация и теория» Рами Розена