🎯 Общая характеристика проекта
| Атрибут | Значение |
|---|
| Тип | Программный проект (учебный) |
| Максимальная оценка | 8,2 балла (учебный проект) |
| Описание | Исследование: обход NAT и фаерволов. Продукт: система P2P-видеосвязи между двумя узлами за NAT без центрального сервера передачи данных. |
| Цель продукта | Реализация устойчивого P2P-соединения для передачи видеопотока между двумя клиентами за NAT с использованием технологий STUN/TURN/ICE, WebRTC или аналогов. |
| Целевая аудитория | Разработчики коммуникационных систем, системы видеонаблюдения, децентрализованные приложения, IoT-устройства, частные пользователи. |
| Технологии (рекомендуемые) | WebRTC (или самостоятельная реализация на UDP), STUN, TURN (опционально), ICE, UDP hole punching, Python/Node.js/C++, FFmpeg, WebSockets, Docker, NAT-симуляция. |
📅 Поэтапные требования к проекту
📌 Этап 1: Выбор темы
Дата: 19.01.2026
Формат: Онлайн-форма
Документы: Форма
🔹 Требования к защите
- Подтверждён выбор темы 1-6.
- Сформирована команда (до 2 человек).
- Определены роли участников.
- Подтверждено понимание задачи и принципов обхода NAT.
| Критерий | Вес | Описание |
|---|
| Выбор темы | 1% | Формальное подтверждение выбора темы, формирования команды и распределения ролей. Оценка выставляется при условии своевременной подачи формы. |
📌 Этап 2: Представление проекта
Дата: 31.01.2026
Формат: Презентация
Документы: Слайды, ТЗ
🔹 Требования к защите
- Чётко сформулированы:
- Проблема: невозможность прямого P2P-соединения между устройствами за NAT.
- Решение: система установления P2P-видеосвязи с использованием STUN/ICE/WebRTC.
- Целевая аудитория.
- Описаны технологии и архитектура системы.
- Представлен план реализации.
- Подтверждено согласование подхода с заказчиком.
| Критерий | Вес | Описание |
|---|
| Продукт | 25% | Постановка цели, видение законченного продукта: как работает система, где применяется, как устанавливается соединение |
| Польза | 25% | Обоснование необходимости: почему P2P важен (низкая задержка, масштабируемость, приватность), как система решает проблему NAT |
| Пользователь | 20% | Описание целевой аудитории внутри и вне МИЭМ, количественная оценка, рынки применения (IoT, видеонаблюдение, коммуникации) |
| Технологии | 20% | Обоснованный выбор стека: WebRTC, STUN, UDP hole punching, сигнальный сервер, Docker, симуляция NAT |
| Развитие | 10% | Перспективы развития: интеграция с камерами, коммерциализация, поддержка групповых вызовов, ВКР |
📌 Этап 3: PoC (Proof of Concept)
Дата: 21.02.2026
Формат: Демонстрация + видео + репозиторий
Документы: Git, видео
🔹 Требования к защите
- Экспериментально подтверждена техническая реализуемость:
- Установление UDP-соединения между двумя клиентами за NAT (через STUN или hole punching).
- Передача тестовых данных (например, эхо-пакетов).
- Симуляция NAT (например, через Docker-сети).
- Демонстрация минимальной работоспособности.
- Видео (до 3 минут) с демонстрацией установления соединения.
- Код выложен в репозиторий с README.
| Критерий | Вес | Описание |
|---|
| Техническая реализуемость | 60% | Подтверждение, что выбранный подход (STUN/WebRTC/hole punching) позволяет установить P2P-соединение за NAT |
| Демонстрация | 20% | Наличие видео, показывающего процесс установления соединения и обмен данными между клиентами |
| Код и документация | 20% | Наличие репозитория с рабочим кодом, README, инструкцией по запуску и описанием архитектуры PoC (включая симуляцию NAT) |
📌 Этап 4: Прототип
Дата: 16.03.2026
Формат: Демонстрация + отчет + репозиторий
Документы: Демо, отчет, git
🔹 Требования к защите
- Реализован прототип:
- Установление P2P-соединения с использованием STUN/ICE.
- Передача видеопотока (например, через WebRTC или UDP-пакеты с H.264).
- Визуализация соединения (например, отображение видео на втором клиенте).
- Наличие сигнального сервера (WebSocket/HTTP) для обмена SDP.
- Демонстрация работы в реальном времени.
- Отчёт с описанием архитектуры, протоколов, схемы обхода NAT.
| Критерий | Вес | Описание |
|---|
| Реализация функционала | 40% | Поддержка установления P2P-соединения, передача видеопотока, визуализация на приёмнике |
| Интеграция | 25% | Успешная интеграция сигнального сервера, STUN, медиапотока (WebRTC или самописный), работа за симулированным NAT |
| Демонстрация | 20% | Работающий демо-стенд, показ установления связи и передачи видео |
| Документация | 15% | Наличие отчёта с описанием архитектуры, протоколов, API сигнального сервера, инструкций по запуску |
📌 Этап 5: MVP (Minimal Viable Product)
Дата: 11.04.2026
Формат: Работающий продукт + отзыв + отчет + git
Документы: Отзыв, отчет, git
🔹 Требования к защите
- Продукт может быть запущен и использован без участия разработчика.
- Поддержка всех базовых функций:
- Автоматическое установление P2P-соединения.
- Передача видеопотока с камеры или файла.
- Отображение видео на втором клиенте.
- Работа за NAT (в т.ч. симуляция).
- Наличие простого UI (веб-интерфейс или CLI с инструкцией).
- Наличие документации пользователя и разработчика.
- Получен отзыв пользователя.
| Критерий | Вес | Описание |
|---|
| Продукт | 30% | Готовность продукта: отчуждаемость, выполнение базовых функций, работа за NAT без посредника |
| Документация разработчика | 20% | Наличие спецификации MVP/MUP, описание архитектуры, API, протоколов, текущего результата |
| Запуск и работа | 30% | Продукт запускается без разработчика, не требует несвойственных действий от пользователя, работает в фоне |
| Документация пользователя | 20% | Полная инструкция по установке, настройке, запуску вызова, устранению неисправностей |
📌 Этап 6: MUP (Minimal Usable Product)
Дата: 16.05.2026
Формат: Асинхронная защита + консультация
Документы: Отзыв, отчет, git
🔹 Требования к защите
- Продукт внедрён в тестовую среду (например, между двумя устройствами в разных сетях).
- Пользователь самостоятельно использует весь функционал.
- Получен отзыв о реальном использовании.
- Документация дополнена на основе фидбэка.
- Созданы маркетинговые материалы.
| Критерий | Вес | Описание |
|---|
| Отзыв пользователя | 30% | Удобство использования, стабильность соединения, качество видео, задержка, простота запуска |
| Функциональность | 30% | Полная реализация всех функций: установление, передача, отображение, устойчивость к переподключению |
| Документация пользователя | 20% | Наличие полной, понятной документации с установкой, навигацией, сценариями использования и устранением неисправностей |
| Маркетинг | 20% | Наличие лендинга, продуктового ролика, раздатки или презентации, адаптированных под целевую аудиторию |
📌 Этап 7: Защита проекта
Дата: 06.06.2026 или 13.06.2026
Формат: Презентация + демо + отзывы
Документы: Слайды, демо, отзывы
🔹 Требования к защите
- Презентация пользовательского опыта.
- Демонстрация работы продукта (включая сценарии установления и разрыва соединения).
- Представление отзывов пользователей.
- Подача заявки на РИД.
- Ответы на вопросы.
| Критерий | Вес | Описание |
|---|
| Представление | 20% | Маркетинговый стиль, ясность, логичность, отсутствие научного стиля, фокус на пользе и кейсах |
| Маркетинг | 20% | Качество лендинга, ролика, раздатки — соответствие продуктовому жанру, наличие кейсов применения |
| Впечатления пользователей | 30% | Удобство, стабильность, низкая задержка, простота установки и использования |
| Завершённость | 30% | Полная документация, функциональность, наличие дистрибутива (Docker, deb), ссылки на код, расширенный функционал (например, поддержка TURN, аудио, групповых вызовов) |
Вложения