Презентация к диплому Бакалавра, 2012 год.
Описывается распределенная система, которая решает задачу пробок в городах.
В результате:
- произведен анализ навигационных программ;
- разработан распределенный алгоритм маршрутизации транспортных средств, попавших в пробку;
- разработан протокол обмена информацией прикладного уровня;
- создано приложение для Android.
2. Цель и задачи работы
Целью работы является создание системы распределенного
вычисления весов графа для маршрутизации транспортных
средств, попавших в пробку.
Решаемые задачи
• Анализ программ навигации
• Разработка распределенного алгоритма маршрутизации
транспортных средств, попавших в пробку
• Разработка протокола компьютерной сети между
участниками пробки
• Проектирование приложения
• Разработка и отладка приложения для мобильной
операционной системы Android
2
3. Сравнение навигационных
программ
Навигатор Актуальность
карт
Набор дополнительных функций Соединения с
интернетом
Навител Навигатор карты Европы и
стран СНГ
пробки, погода, трёхмерное
отображение объектов
не требуется
Google Maps актуальны,
подгружаются
их интернета
голосовой поиск и управление,
пробки,
определение местоположения по
GPS, базовым станциям и WiFi-
точкам
требуется
постоянное
соединение
iGO карты Европы и
стран СНГ
трёхмерное отображение
объектов
не требуется
Яндекс Карты актуальны,
подгружаются
их интернета
отображение информации о
домах, улицах и других объектах,
определение местоположения по
GPS, базовым станциям и WiFi-
точкам
требуется, если нет
загруженных карт
Garmin Mobile XT подробные
карты России и
Европы
нет не требуется
3
7. Диаграмма потоков данных
системы
7
Граф
транспортной
сети
Модуль
определения
состояния
Модуль
определения
расположения
Пользовательс
кий
интерфейс
Модуль
поиска пути Граф
Bluetooth-сети
Таблица
маршрутизации
Модуль
маршрутизации
Модуль
пересчета
весов графа
Граф транспортной
сети с динамическими
весам
Таймер
обновления
статистики
Таблица
статистики Модуль
статистики
событие
срабатывания
записи
статистика
время,
расположение
текущая точка
записи
граф
транспортной
сети
текущая точка
состояние
конечная точка
начальная точка,
конечная точка,
граф транспортной
сети
маршрут
начальная точка,
конечная точка,
граф транспортной
сети
Таблица
информации о
других участниках
Обновление
структуры
собственный адрес,
адрес другого участника,
статус
Пересчет
таблицы
маршрутизации
граф Bluetooth-сети
граф
транспортной
сети
Сетевой
объект
Соединение
установлено с новым
участником
Соединение
установлено с
существующим
участником сети
Послать данные
Принять данные
тип объекта
объект
адрес источника,
адрес приемника,
тип пакета,
пакет
Обработка ошибки
посылки/приема
данных
адрес источника,
адрес приемника
адрес источника,
адрес приемника
адрес, сокет
адрес
адрес, сокет
адрес
статус сети
Запуск пересчета
весов
список адресов
участников сети
начальная точка,
конечная точка,
граф транспортной
сети, список
адресов
участников сети
Инициализация
список адресов
участников сети,
граф транспортной
сети
Обновление записей
адрес, статус,
прочие данные
адрес, статус,
прочие данные
результат
проверки
условий
синхронизации
список адресов
участников сети
Обновление весов
Клиент
Сервер
сокет
маршрут
маршрут
Одобрить
подключение
Подключиться
сокет
тип объекта
объект
адрес источника,
адрес приемника,
тип пакета,
пакет
сокет
сокет
граф Bluetooth-сети
Модуль
управления
структурой
сети
Модуль
предоставлен
ия сервиса
пересчета
весов
таблица маршрутизации
начальная точка,
конечная точка,
граф транспортной
сети с
динамическими
весами
таблица
маршрутизации
10. Состав протокола компьютерной
сети
10
• Форматы управляющих данных
– граф компьютерной сети
– таблица маршрутизации
– словарь сокетов
• Типы пакетов
– внешние
– внутренние
• управляющие
• предоставляющие сервис
• Алгоритмы управления сетью
– обработка подключения
– передачи данных
– обработки разрыва соединения
• Сервис, предоставляемый распределенному алгоритму пересчета
весов графа транспортной сети
11. Типы пакетов
• Внешние
– запрос статуса
– ответ на запрос статуса
– синхронизация: сеть инициализирована
– назначение адреса
– запрос идентификатора сети и участника
– ответ на запрос идентификатора сети и участника
– отказ в обслуживании
• Внутренние
– управляющие
• синхронизация: добавление нового участника
• ответ на синхронизацию: добавление нового участника
• отмена синхронизации: добавление нового участника
• добавление нового участника
• добавление прямого соединения между участниками
• удалено прямое соединение между участниками
– предоставляющие сервис для алгоритма
• данные инициализированы, алгоритм готов выполняться
• приоритет вычислен
• пересчет весов графа транспортной сети был выполнен
• запрос перезапуска алгоритма
11
15. Заключение
Система распределенного пересчета весов графа
транспортной сети была реализована.
Выполнены задачи:
• Анализ программ навигации
• Разработка распределенного алгоритма маршрутизации
транспортных средств, попавших в пробку
• Разработка протокола компьютерной сети между
участниками пробки
• Проектирование приложения
• Разработка и отладка приложения для мобильной
операционной системы Android
15