1001 Freelance Projects
Свежие проекты с фриланс-бирж
Просмотр проекта
Подробный просмотр проекта
(вы будете перенаправлены на сторонний сайт)
Название проекта:
Доработать существующий демон для передачи данных на С языке
Кто разместил:
Внешний проект с free-lance.ru
Открыт:
20-Oct-2024 17:58 GMT
Описание:
1. Исправить существующий демон, который работает не совсем хорошо. При передачи запроса ARP через RAW сокет, для того, чтобы найти MAC адресс соседнего девайса, ARP запрос теряется и второй девайс его не получает. Как должна происходить коммуникация между нодами в mininet:
Клиент отправляет PING запрос к демону через Юникс сокет, демон отправляет ARP broadcast запрос, чтобы найти MAC адресс следующей ноды, получает МАК, записывает его в ARP кеш и отправляет туда МИП запрос с пинг сообщением. Вторая нода получает этот МИП пакет и отправляет ее серверу через юникс сокет, тот возращает PONG сообщение, который проходит через второй демон к первому. Этот демон будет приложен к заказу

Все это реализовано, но надо подправить изначальную отправку и получение ARP сообщение. Второй его почему то не получает

После этого нужно доработать и расширить сетевой стек, реализованный на базе протокола Minimal Interconnection Protocol (MIP), для эмуляции связи между узлами в сети, использующей Mininet. На данном этапе необходимо реализовать маршрутизацию и пересылку сообщений между узлами через промежуточные системы с использованием алгоритма маршрутизации Distance Vector Routing (DVR)
Основные задачи:
Доработка MIP-демона:
• Реализовать маршрутизацию и пересылку данных в MIP сети.
• Добавить интерфейс взаимодействия с демоном маршрутизации.
• Реализовать механизм пересылки MIP-датаграмм через промежуточные узлы (форвардинг).
• Добавить поддержку времени жизни (TTL) для сообщений.
Реализация демона маршрутизации:
Тип SDU (Service Data Unit) для протокола маршрутизации — 0x04
• Демон должен выполнять две основные функции: запуск протокола маршрутизации (DVR) и обработка запросов маршрутов от MIP-демона.
• Протокол должен быть динамическим и использовать метод Poisoned Reverse для предотвращения зацикливания маршрутов.
• Реализовать сообщения протокола:
1. HELLO — для обнаружения соседей.
2. UPDATE — для рассылки таблицы маршрутов.
3. REQUEST — для запроса маршрута к конкретному узлу.
Формат сообщения REQUEST, используемого для запросов маршрутов (от MIP-демона к демону маршрутизации), выглядит следующим образом:
<MIP address of the host itself (8 bits)> <zero (0) TTL (8 bits)> <R (0x52, 8 bits)> <E (0x45, 8 bits)> <Q (0x51, 8 bits)> <MIP address to look up (8 bits)>
4. RESPONSE — для ответа на запрос маршрута.
Демон маршрутизации должен отвечать на запросы строго в порядке их получения, используя сообщение RESPONSE со следующим форматом:
<MIP address of the host itself (8 bits)> <zero (0) TTL (8 bits)> <R (0x52, 8 bits)> <S (0x53, 8 bits)> <P (0x50, 8 bits)> <next hop MIP address (8 bits)>
Чтобы указать на неудачу при поиске маршрута (нет известного маршрута к запрашиваемому узлу), демон маршрутизации ответит с адресом следующего хопа, равным 255.
Изменение Ping-приложений:
• Обновить клиент и сервер Ping для работы с новым форматом взаимодействия между MIP-демоном и верхними уровнями, в частности поддержка изменения TTL.

Детали реализации:
1. MIP-демон:
а. Сокеты:
• Демон должен прослушивать RAW-сокет для работы с Ethernet-кадрами.
• UNIX-доменный сокет — для взаимодействия с верхними уровнями и демоном маршрутизации.
б. Интерфейс с верхними уровнями:
• Добавить возможность задания TTL в исходящих сообщениях.
• Сообщения через UNIX-сокет должны содержать: MIP-адрес, TTL и полезную нагрузку (SDU).
в. Форвардинг:
• Если сообщение предназначено не для текущего узла, его TTL уменьшается, и запрос отправляется демону маршрутизации для поиска следующего хопа.
• Если маршрут найден, сообщение пересылается следующему узлу с обновленным TTL.
• Если маршрута нет или TTL достигает 0, сообщение отбрасывается.
2. Демон маршрутизации:
а. Интерфейс взаимодействия с MIP-демоном через UNIX-доменный сокет.
б. Протокол маршрутизации:
• Реализовать Distance Vector Routing (DVR) с защитой от зацикливания с помощью Poisoned Reverse.
• Обновления таблицы маршрутов и обработка запросов на маршрутизацию должны быть асинхронными, чтобы не блокировать работу MIP-демона.
в. Форматы сообщений:
• REQUEST: Запрос маршрута должен включать MIP-адрес отправителя и адрес искомого узла.
• RESPONSE: Ответ на запрос маршрута должен содержать MIP-адрес следующего хопа или 255, если маршрут не найден.
3. Ping-клиент и сервер:
o Обновить взаимодействие с MIP-демоном через UNIX-сокет для поддержки нового формата сообщений с TTL.
Требования к реализации:
1. Язык программирования: C
2. Среда разработки: Виртуальная машина с Mininet.
3. Сетевой стек: Использование MIP протокола для передачи данных.
4. Маршрутизация: Алгоритм Distance Vector Routing с механизмом Poisoned Reverse.
Project ID:
4738029
Категория проекта:
Программирование, Системное программирование
Бюджет проекта:
8500 руб, для всех
Подробный просмотр проекта
(вы будете перенаправлены на сторонний сайт)
Последние проекты / Все проекты
  Проект Открыт
BAS (Browser Automation Studio)
Категория: Программирование и IT
05 Dec 2024 23:02 GMT
Крауд-посилання - 500UAH
Категория: Покупка ссылок
05 Dec 2024 23:01 GMT
Моделирование GPSS WORLD.
Категория: Программирование, Прототипирование
Бюджет: 3000 руб
05 Dec 2024 22:51 GMT
Нужно создавать коротенькие видео.
Категория: Видео
Бюджет: 1000 руб 2024-12-06
05 Dec 2024 22:43 GMT
Профессиональная 2D или же 3D работа
Категория: Арт / Иллюстрации / Анимация
05 Dec 2024 22:36 GMT
Выгрузка + загрузка в эксель контрагентов в BAS Малый бизнес PROF (1.6.20.2) - 8000UAH
Категория: Автоматизация управления предприятием, Обработка данных
05 Dec 2024 22:35 GMT
Разработка сайта под ключ.
Категория: Веб-программирование
05 Dec 2024 22:28 GMT
Нужно почистить картинку от пятен
Категория: Рисунки и иллюстрации
Бюджет: 1500 ₽/час
05 Dec 2024 22:24 GMT
Реклама Facebook/Instagram
Категория: Реклама и Маркетинг, Instagram
Бюджет: 20000 руб
05 Dec 2024 22:22 GMT
(Weblium) Інтеграція з WayforPay + Налаштування FB Pixel(ціль-оплата)
Категория: CMS, HTML, и CSS верстка
05 Dec 2024 22:20 GMT
Приложение на flutter 05 Dec 2024 22:17 GMT
Сделать обложку для ютуба
Категория: Графический дизайн
Бюджет: 1000 руб 2024-12-06
05 Dec 2024 22:16 GMT
Доопрацювання сайту на Opencart - 20000UAH
Категория: Веб-дизайн, Создание сайта под ключ
05 Dec 2024 22:15 GMT
Корректировка кода PHP
Категория: Программирование и IT
Бюджет: 15000 руб 2024-12-06
05 Dec 2024 22:05 GMT
Создание сайта «под ключ» на Wordpress для онлайн школы
Категория: HTML, и CSS верстка, Веб-программирование
05 Dec 2024 21:58 GMT
Все проекты
Проекты по навыкам ...
android
ajax
asp
aspnet
cms
cpp
csharp
css
delphi
design
drupal
excel
facebook
flash
html
java
javascript
joomla
iphone
mysql
photoshop
php
python
ruby
seo
sql
sysadm
translate
typing
twitter
vbnet
xml
wordpress
writing
texts
Новое!
Projects in English
Copyright © 2005-2024
1001 Freelance Projects