Вестник Кольского научного центра РАН. 2016, №1.
Моделирование беспроводных многошаговых самоорганизующихся мобильных сетей использования встроенных объектно-ориентированных языков программирования (C++ и Python) и наличия большого количества файлов-библиотек, содержащих реализации классов- объектов стандартных протоколов и моделей перемещения узлов. Рис. 4. Оконная форма имитации движения транспортных средств по УДС г. Апатиты В качестве одной из сложностей разработки модели в NS-3 следует отметить отсутствие подробной документации по созданию моделей новых протоколов маршрутизации. К преимуществам использования NS-3 относятся наличие общих классов объектов и структуры сетевой модели, программно реализованных в виде различных библиотек, что ускоряет разработку и отчасти «унифицирует» созданные модели сетей. Основной набор библиотек NS-3 содержит классы и соответствующие методы, реализующие поведение существующих протоколов маршрутизации и передачи данных. Модель сети представляет собой программное приложение, выполненное на языке программирования С++. Основными задачами, решаемыми в рамках авторской модели, являются поиск и поддержание маршрута. Описание этих процессов содержит класс NS3::Routing, который расширен от абстрактного существующего класса NS3::Ipv4L4Protocol. Здесь же реализован механизм широковещательной рассылки с целью поиска соседей в определенные моменты времени. Хранение маршрутов - это другой важный компонент моделей в NS-3. Для этого в модели объявлен класс Ns3::Prot::RouteCache, в котором сохраняются обнаруженные в процессе поиска маршруты. Класс NS3::Prot::NSendBuffer разработан для хранения всех неотправленных пакетов данных. NS3::Prot::RreqTble нужен, чтобы избежать повторяющихся запросов маршрута. NS3::Prot::BuffMaintain используется для хранения пакетов данных при отправке из буфера передачи и ожидающих подтверждения от следующего узла сети. ProtOptionsHeader включает в себя все параметры, необходимые для работы протокола. 124 ВЕСТНИК Кольского научного центра РАН 1/2016(24)
Made with FlippingBook
RkJQdWJsaXNoZXIy MTUzNzYz