По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие
наши статьи:
В программно-конфигурируемой сети (SDN) происходит разделение плоскости передачи и управления данными, позволяющее осуществить программное управление плоскостью передачи, которое может быть физически или логически отделено от аппаратных коммутаторов и маршрутизаторов. Подобный подход дает большое количество плюсов:
Возможность видеть топологию всей сети;
Возможность конфигурации всей сети в целом, а не отдельных единиц оборудования;
Возможность производить независимое обновление оборудования в сети;
Возможность контролировать всей сети из высокоуровневого приложения.
SDN сети
То есть, основное отличие программно-конфигурируемых сетей - делегация задачи вычисления маршрутов контроллеру (плоскость управления) и оставить функцию передачи пакетов (плоскость передачи данных) на отдельных устройствах (коммутаторы OpenFlow) , что снизит нагрузку на маршрутизатор и увеличит его производительность.
Для оценки функциональности SDN-сети с элементами NFV можно использовать два основных подхода, со своими достоинствами и недостатками:
Метод
Достоинства
Недостатки
Эмуляция
Высокая точность, возможность использования настоящего ПО
Возможная несовместимость конфигурации с реальным оборудованием
Построение сети на реальном оборудовании
Высокая точность результатов
Высокая стоимость
С началом развития в сфере SDN-сетей появилось два эмулятора SDN-сетей, которые в добавок поддерживают симуляцию (возможность тестирования сети, часть оборудования в которой реальна и часть - эмулирована).
Рассмотрим эмуляторы подробнее.
Mininet
Эмулятор, находящийся в свободном доступе, большая часть которого написана на языке Python. Работает с “легковесной” виртуализацией, то есть вся эмулируемая сеть реальна, в том числе и конечные виртуальные машины. Есть возможность подключения любых виртуальных коммутаторов и контроллеров.
Достоинства
Недостатки
Открытый код, бесплатность, быстродействие, поддержка всех контроллеров SDN и протоколов OpenFlow вплоть до 1.3, большое количество обучающих видео
Высокая сложность, необходимо знание Python и Linux, отсутствие полноценного графического интерфейса
Estinet
Эмулятор, все права на который имеет компания Estinet, но для студентов и всех желающих попробовать есть свободный доступ на месяц. Есть удобный графический интерфейс для построения топологии сети, редакции свойств оборудования и запуска эмуляции.
Достоинства
Недостатки
Наглядность, простота настройки и установки, возможность эмуляции LTE и Wi-Fi сетей
Закрытость, малое количество обучающих статей и видео, низкая производительность работы, более высокая сложность настройки при использовании не встроенного контроллера
Ниже приведена часть программного кода на языке Python для построения сети в эмуляторе Mininet:
# Инициализация топологии
Topo.__init__( self, **opts )
# Добавление узлов, первые - коммутаторы
S1 = self.addSwitch( 's0' )
S2 = self.addSwitch( 's1' )
S3 = self.addSwitch( 's2' )
S4 = self.addSwitch( 's3' )
S5 = self.addSwitch( 's4' )
S6 = self.addSwitch( 's5' )
S7 = self.addSwitch( 's6' )
S8 = self.addSwitch( 's7' )
S9 = self.addSwitch( 's8' )
S10= self.addSwitch( 's9' )
S11= self.addSwitch( 's10')
# Далее - рабочие станции(виртуальные машины)
H1= self.addHost( 'h0' )
H2 = self.addHost( 'h1' )
H3 = self.addHost( 'h2' )
H4 = self.addHost( 'h3' )
H6 = self.addHost( 'h5' )
H7 = self.addHost( 'h6' )
H8 = self.addHost( 'h7' )
H9 = self.addHost( 'h8' )
H10 = self.addHost( 'h9' )
H11 = self.addHost( 'h10' )
# Добавление каналов связи между коммутатором и рабочей станцией
self.addLink( S1 , H1 )
self.addLink( S2 , H2 )
self.addLink( S3 , H3 )
self.addLink( S4 , H4 )
self.addLink( S7 , H7 )
self.addLink( S8 , H8)
self.addLink( S9 , H9)
self.addLink( S10 , H10)
self.addLink( S11 , H11)
# Добавление каналов связи между коммутаторами
self.addLink( S1 , S2, bw=1, delay='0.806374975652ms')
self.addLink( S1 , S3, bw=1, delay='0.605826192092ms')
self.addLink( S2 , S11, bw=1000, delay='1.362717203ms')
self.addLink( S3 , S10, bw=1000, delay='0.557936322ms')
self.addLink( S4 , S5, bw=1000, delay='1.288738ms')
self.addLink( S4 , S7, bw=1000, delay='1.1116865ms')
self.addLink( S5 , S6, bw=1000, delay='0.590828707ms')
self.addLink( S5 , S7, bw=1000, delay='0.9982281ms')
self.addLink( S6 , S10, bw=1000, delay='1.203263ms')
self.addLink( S7 , S8, bw=1000, delay='0.2233403ms')
self.addLink( S8 , S9, bw=1000, delay='1.71322726ms')
self.addLink( S8 , S11, bw=1000, delay='0.2409477ms')
self.addLink( S9 , S10, bw=1000, delay='1.343440256ms')
self.addLink( S10 , S11, bw=1000, delay='0.544934977ms')
Сравнение контроллеров для построения сети
В данный момент, существует большое количество платных и бесплатных(открытых) контроллеров. Все нижеперечисленные можно скачать и установить на домашнюю систему или виртуальную машину. Рассмотрим самые популярные открытые контроллеры и их плюсы и минусы:
NOX - один из первых контроллеров, написан на языке C++;
POX - контроллер, похожий на NOX и написанный на языке Python;
OpenDayLight- контроллер, поддерживаемый многими корпорациями, написан на языке Java и постоянно развивающийся;
RunOS- российская разработка от Центра Прикладного Исследования Компьютерных Сетей (ЦПИКС), имеет графический интерфейс, подробную документацию и заявлена самая высокая производительность.
В таблице ниже рассмотрим плюсы и минусы каждого из контроллеров:
Название контроллера
Достоинства
Недостатки
NOX
Скорость работы
Низкое количество документации, необходимость знания C++
POX
Проще обучиться, много документации
Низкая скорость работы, необходимость знания Python, сложная реализация совместимости с NFV
OpenDayLight
Наличие графического интерфейса, поддержка VTN-сетей(NFV), наличие коммерческих продуктов на базе данного контроллера(Cisco XNC)
Сложность в использовании, сложная установка
RunOS
Высокая производительность, Российская разработка, Открытый код, Наличие графического интерфейса
Ранняя версия, возможные проблемы в эксплуатации по причине сырости продукта.
Управление временем, в любой операционной системе, очень тесно связанно с понятием часовой зоны. Ранее мы рассказывали про работу с утилитой настройки часовой зоны tzselect. В данной утилите с помощью мастера настраивали зону. Но, по сути, утилита нам выдала только переменную для настройки и описание, как настроить для постоянного использования. Можно пойти несколькими путями:
Первый путь:
TZ=’Europe/Moscow’ - задать переменную
export TZ – экспортировать данную переменную.
Для того, чтобы применились параметры нужно перелогинится или перезагрузиться.
И после этого мы можем посмотреть текущую TZ (timezone) в файле - cat /etc/timezone
Вывод будет таким: Europe/Moscow
Второй путь это использовать утилиту timedatectl:
timedatectl list-timezones - смотрим доступные временные зоны
sudo timedatectl set-timezone Europe/Moscow
Значение времени в операционных системах определяется 4 частями:
Значение времени
Стандарт времени или универсальное время
Часовой пояс
Переход на летнее время
Для любой операционной системы есть 2 вида часов – это системные время, которое работает в рамках операционной системы с кучей параметров и аппаратные часы, работа которых определяется схемой на материнской плате и поддерживаются эти часы в работе, благодаря батарейке на материнской плате. Аппаратные часы после включения сервера или компьютера передают свое значение времени операционной системе, а далее система уже сама работает с часами. Аппаратные часы по факту нужны только для старта операционной системы. В настоящее время этот момент стал не столь важным, т.к. практически все сервера имеют доступ в интернет и могут со специальными сайтами синхронизировать время. В случае работы операционной системы на виртуальной машине, время синхронизируется с материнской машиной.
Как мы в прошлой статье уже рассматривали, есть утилита для управления и изменения системного времени - date, а есть утилита hwclock для того, чтобы посмотреть аппаратное время. Для работы данной утилиты необходимы права суперпользователя - sudo hwclock
Вот такой вывод получается, у нас в примере виртуализация на ESXI vmware и виртуализация позволяет синхронизировать часы дочерней операционной системы с аппаратными часами материнского сервера. В вашем же случае, если операционная система будет развернута на Virtualbox, то синхронизации этой происходить не будет (только при старте виртуальной машины) и будет отображаться разница во времени в результате вывода команды. Далее операционная система виртуальной машины и материнского хоста идут независимо друг от друга.
Хотелось бы отметить, что время важно не только для самой операционной системы, но и так же для взаимодействия с другими серверами, например, при использовании авторизации с помощью протокола Kerberos, в котором сервис генерирует токены опираясь на метку времени в операционной системе и, если будет слишком большое расхождение между серверами, токен не будет принят. Исходя из этого команду hwclock можно использовать и для установки времени.
sudo hwclock --set --date=[”нужное_время”] – нужное время задаем в виде dd/mm/yyyy hh:mm
То есть мы можем задать любое аппаратное время. Синхронизация пройдет только при старте операционной системы в нашем случае. Для синхронизации времени одних, часов с другими необходимо выполнить команду sudo hwclock -w.
Но в таком формате синхронизировать время не удобно, в настоящее время практически на всех серверах используется автоматическая синхронизация времени по протоколу NTP.
Данный протокол, обеспечивает синхронизацию системного времени с удаленным сервером в интернете. NTP протокол на транспортном уровне работает, через UDP на 123 порту. В интернете есть такой проект, как NTP Pool Project у которого есть сервера точного времени. Его страничка https://www.ntppool.org/ru/, по данной страничке можно подобрать ближайший к вам сервер точного времени и сделать настройку на него своего сервера или группы серверов.
Вот сервера, актуальные для России:
server 0.ru.pool.ntp.org
server 1.ru.pool.ntp.org
server 2.ru.pool.ntp.org
server 3.ru.pool.ntp.org
Для разовой синхронизации можно использовать следующую утилиту, предварительно установив ее:
sudo ntpdate [адрес_сервера]
В нашем случае получится следующее:sudo ntpdate 0.ru.pool.ntp.org
В результате время синхронизировалось, и утилита показала расхождение, которое было.
Теперь настроим автоматическую синхронизацию времени для этого необходимо установить ntpd демон. Делается это стандартным способом.
sudo apt-get install ntp -y
И отредактировать файл /etc/ntp.conf. Данный демон умеет и сам раздавать время в сети, мы можем настроить другие сервера на синхронизацию с ним, но сейчас необходимо просто настроить синхронизацию текущего сервера с временем сервера в интернете - sudo nano /etc/ntp.conf.
Добавляем сервера в файл, сохраняем и перезапускаем демона - sudo service ntp restart.
И мы можем посмотреть с какими серверами теперь наш сервер может синхронизироваться: ntpdq -pn
Получим вот такой вывод сервером с которыми у нас будет происходить синхронизация.
В данной статье речь пойдет о настройке модуля «Wake Up Calls», другими словами это звонки напоминания. Данный модуль используется для настройки напоминаний на любое направление – для назначения звонка, необходимо набрать на телефоне фича-код *68 (возможна отдельная настройка фича-кодов в модуле PBX Feature Codes) или назначить звонок с помощью веб-интерфейса модуля: Applications – Wake Up Calls и для создания первого звонка-ремайндера нажать кнопку «Add»
После нажатия кнопки появляется меню настройки напоминания :
Destination – номер, на который АТС совершит звонок-напоминание
Time – время звонка можно выбрать с помощью выпадающего меню с промежутком в 30 минут, но можно вручную написать время в верном формате с большей точностью
Day – выпадающий календарь для выбора даты или для указания её руками в требуемом FreePBX формате
Далее рассмотрим возможные настройки данного модуля:
Доступны следующие опции:
Operator Mode – включение режима оператора для определенных экстеншенов – данные экстеншены смогут сами назначать звонки-напоминания
Max Destination Length – максимальное число цифр в номере – ограничение удобно устанавливать в соответствии с номерной ёмкостью вашей АТС – в случае Мерион Нетворкс – это 4 знака
Operator Extensions – выбор тех самых «операторских» экстеншенов, у которых будут права для настройки звонков
Ring Time – длительность вызова
Retry Time – время между повторным вызовом
Max Retries – количество попыток повторных вызовов
Wake Up Caller ID – Caller ID напоминающих звонков
Но остается вопрос – что же происходит, когда абонент принимает данный звонок?
Абонент услышит следующее голосовое сообщение:
“Hello, press 1 to snooze for 5 minutes, press 2 to snooze for 10 minutes or press 3 to snooze for 15 minutes.” Если абонент не введет никакой цифры, то голосовое сообщение прозвучит еще раз со следующими словами: «Press 1 to cancel the wake up call, press 2 to snooze for 5 minutes, press 3 to snooze for 10 minutes or press 4 to snooze for 15 minutes.»
Если звонок будет отложен с помощью нажатия одной из цифр, то АТС произнесет время поступления следующего звонка, но если звонок будет просто сброшен, то больше данный звонок-ремайндер не поступит.
Кроме того, на Wake Up Calls можно использовать как пункт назначения других модулей FreePBX 13 – IVR, ринг-групп и так далее.