изначальный выпуск | 30 июня 2008 г . [1] |
---|---|
Стабильный выпуск | 3.31 / 28 июня 2020 г . |
Репозиторий | |
Написано в | C ++ (ядро) Python (привязки) |
Операционная система | Linux , FreeBSD , macOS |
Платформа | IA-32 , x86-64 |
Тип | Сетевой симулятор |
Лицензия | GNU GPL |
Интернет сайт | www |
ns (от network simulator ) - это название серии симуляторов сети с дискретными событиями , в частности, ns-1 , ns-2 и ns-3 . Все они представляют собой симуляторы компьютерных сетей с дискретными событиями, в основном используемые в исследованиях [2] и обучении.
История [ править ]
нс-1 [ править ]
Первая версия ns, известная как ns-1, была разработана в Национальной лаборатории Лоуренса Беркли (LBNL) в период 1995-97 годов Стивом Макканном, Салли Флойд, Кевином Фоллом и другими участниками. Он был известен как сетевой симулятор LBNL и был создан в 1989 году на основе более раннего симулятора, известного С. Кешаву как REAL.
нс-2 [ править ]
НС-2 начинался как доработка НС-1. С 1997 по 2000 год разработка NS поддерживалась DARPA в рамках проекта VINT в LBL, Xerox PARC, UCB и USC / ISI. В 2000 году разработка ns-2 была поддержана через DARPA с SAMAN и через NSF с CONSER, как в USC / ISI, так и в сотрудничестве с другими исследователями, включая ACIRI.
Ns-2 включает в себя значительный вклад третьих сторон, включая беспроводной код из проектов UCB Daedelus, CMU Monarch и Sun Microsystems.
нс-3 [ править ]
В 2003 году группа во главе с Томом Хендерсоном, Джорджем Райли, Салли Флойд и Сумит Рой подала заявку и получила финансирование от Национального научного фонда США (NSF) на создание замены для ns-2, получившей название ns-3. Эта команда сотрудничала с проектом Planete INRIA в Софии Антиполис с Матье Лакаж в качестве руководителя программного обеспечения и сформировала новый проект с открытым исходным кодом.
В процессе разработки NS-3 было решено полностью отказаться от обратной совместимости с NS-2. Новый симулятор будет написан с нуля с использованием языка программирования C ++ . Разработка НС-3 началась в июле 2006 года.
Текущий статус трех версий:
- Развитие НС-1 прекратилось после основания НС-2. Он больше не разрабатывается и не поддерживается.
- Разработка ns-2 прекратилась примерно в 2010 году. Он больше не разрабатывается и не обслуживается.
- НС-3 активно развивается и обслуживается.
Дизайн [ править ]
ns-3 построен с использованием C ++ и Python с возможностью написания сценариев. Библиотека ns обернута Python благодаря библиотеке pybindgen, которая делегирует синтаксический анализ заголовков ns C ++ в castxml и pygccxml для автоматической генерации соответствующего связующего связующего элемента C ++. Эти автоматически сгенерированные файлы C ++, наконец, компилируются в модуль ns Python, чтобы пользователи могли взаимодействовать с моделями и ядром C ++ ns через сценарии Python. Симулятор ns имеет интегрированную систему на основе атрибутов для управления значениями по умолчанию и значениями для каждого экземпляра для параметров моделирования.
Рабочий процесс моделирования [ править ]
Общий процесс создания симуляции можно разделить на несколько этапов:
- Определение топологии : Чтобы упростить создание основных средств и определить их взаимосвязь, в NS-3 есть система контейнеров и помощников, которая облегчает этот процесс.
- Разработка моделей: модели добавляются в моделирование (например, UDP, IPv4, двухточечные устройства и ссылки, приложения); в большинстве случаев это делается с помощью помощников.
- Конфигурация узла и канала : модели устанавливают свои значения по умолчанию (например, размер пакетов, отправленных приложением, или MTU канала связи точка-точка); в большинстве случаев это делается с помощью системы атрибутов.
- Выполнение : средства моделирования генерируют события, данные, запрошенные пользователем, регистрируются.
- Анализ производительности : после завершения моделирования и получения данных в виде трассировки событий с отметками времени. Затем эти данные можно статистически проанализировать с помощью таких инструментов, как R, чтобы сделать выводы.
- Графическая визуализация : необработанные или обработанные данные, собранные при моделировании, могут быть отображены в виде графиков с использованием таких инструментов, как Gnuplot , matplotlib или XGRAPH.
См. Также [ править ]
- GloMoSim
Ссылки [ править ]
- ^ Хендерсон, Том (2012-06-09). «Предстоящий релиз ns-3.1» (Список рассылки). ns-3 GSoC 2015 студенты. Архивировано из оригинала на 2012-03-27 . Проверено 31 мая 2013 .
- ^ "Архивная копия" . Архивировано из оригинала на 2013-02-22 . Проверено 30 августа 2012 .CS1 maint: заархивированная копия как заголовок ( ссылка )
Внешние ссылки [ править ]
- веб-страница нс-3