Слайд 1ЛЕКЦІЯ 3
Використання
IP-АТС ASTERISK
для організації
мультимедійного зв’язку
Слайд 2План
1. Теоретичні відомості щодо IP-АТС Asterisk
2. Опис схеми організації зв’язку
на базі IP-АТС Asterisk
3. Опис протоколу SIP: архітектура мережі SIP;
повідомлення протоколу SIP; схема взаємодії SIP-терміналів; алгоритми встановлення з’єднання.
4. Налаштування схеми організації зв’язку на базі IP-АТС Asterisk.
Слайд 31. Теоретичні відомості щодо IP-АТС Asterisk
IP-АТС Asterisk — является свободным программным обеспечением
компьютерной телефонии от компании Digium.
Asterisk, работает на операционных системах Linux, FreeBSD и Solaris,
поддерживает множество VoIP протоколов и в комплексе с необходимым оборудованием, обладает всеми возможностями классической АТС.
IP-АТС может рассматриваться как частный телефонный коммутатор, подключенный к одному или нескольким телефонам, с одной стороны, и обычно подключенный к одному или нескольким телефонным линиям ТФОП или GSM, с другой.
Слайд 4 Используя протоколы VoIP, Asterisk предоставляет возможность совершения телефонных разговоров, используя
IP сеть или сеть интернет в качестве среды передачи голосовых
данных. При наличии компьютерной и телефонной сети, существует возможность конвергенции предоставляемых ими услуг и возможностей в единую телекоммуникационную среду.
Asterisk может работать как с аналоговыми линиями FXO/FXS , так и цифровыми ISDN BRI/PRI . С помощью определённых компьютерных плат Asterisk можно подключить к линиям Т1/E1, которые позволяют работать с десятками и сотнями телефонных линий.
Слайд 5IP-АТС Asterisk поддерживает следующие VoIP протоколы:
Персонального обмена версия 1 и
2 (IAX1/2);
Мультимедийного обмена H.323;
Мультимедийного обмена SIP;
Управления шлюзами
MGCP;
"Тонкого" подсоединения SCCP;
Двухтональный DTMF;
Многочастотный MF/MFC-R2;
Абонентский цифровой EDSS1;
Выносного управления GR-303/V5.1/V5.2;
Общеканальной сигнализации SS7;
Skype;
Google Talk.
Слайд 6IP-АТС Asterisk поддерживает следующие аудио кодеки:
G.711 (A-Law, μ-Law)
G.722
G.723.1
G.726
G.729
GSM
iLBC
Linear
LPC-10
Speex
Слайд 7
Типичная схема подключения
IP-АТС Asterisk
Слайд 9
IP-АТС Asterisk предоставляет
следующие функции управления звонками:
Получение напоминаний
Голосовая почта
Аутентификация
Автоматический секретарь
Черные
списки
Безусловная переадресация
Запись подробной информации о звонке (CDR)
Переадресация звонка, если абонент
занят
Переадресация звонка, если абонент не отвечает
Запись телефонных переговоров
Прослушивание телефонных переговоров
Постановка звонка в простую очередь
Маршрутизация звонка в зависимости от номера инициатора или получателя звонка
Переадресация звонка
Ожидание звонка
Определение номера/имени звонящего
Многопользовательские конференции
Работа с базами данных из сценария работы АТС и т.д.
Слайд 10В качестве корпоративной IP-АТС Asterisk предоставляет:
Подключение внутренних абонентов корпоративной телефонной
сети.
Подключение к операторам телефонии:
местная фиксированная телефонная связь;
мобильная связь в стандартах
GSM и CDMA;
операторы IP-телефонии.
Подключение удаленных сотрудников к корпоративной АТС.
Подключение удаленных офисов.
Традиционные функции УАТС (переадресация, удержание, перехват звонка, и т.д.)
Организация аудио-конференций для проведения совещаний.
Создание интерактивных голосовых меню (IVR).
Голосовая почта с персональными ящиками сотрудников.
Запись детальной статистики звонков (CDR).
Маршрутизация вызовов по наименьшей стоимости звонка (LCR).
Возможность записи и прослушивания телефонных переговоров.
Слайд 11Программные IP-телефоны
IP-телефон — телекоммуникационное устройство, обеспечивающее возможность голосового общения удаленных
абонентов, используя в качестве среды для передачи голоса IP-сеть.
Программный IP-телефон –
это приложение, которое обеспечивает функциональность телефона устройству, не являющемуся телефоном, например, такому как ПК. Программный телефон еще также называют софтфон.
Все IP-телефоны подразумевают использование технологии VoIP , описывающей процедуру передачи голоса по IP-сетям.
Слайд 12X-Lite – наиболее известный бесплатный программный телефон разработанный компанией CounterPath.
X-Lite поддерживает до 2 независимых номерных или безномерных телефонных линий.
Для
того чтобы получать и совершать звонки, необходимо внести данные SIP аккаунта и подключить микрофон с наушниками к звуковой карте компьютера. На сегодняшний день X-Lite является одним из лучших программных телефонов.
Слайд 13Характеристики:
Работа по протоколу SIP.
Поддержка QoS, NAT, STUN.
Кодеки: G.711U/A, iLBC, GSM,
Speex.
Поддержка 2-х одновременных разговоров.
Поддержка передачи текстовых сообщений.
Функция конференц-связи.
Функция видеотелефона.
Адресная книга.
Определение
идентификатора вызывающего абонента.
Голосовая почта.
Запись разговоров.
Поддерживаемые ОС: Windows XP/VISTA/7, Mac OS X
Слайд 143CX VоIP телефон – это бесплатная программа для Windows, которая
позволяет осуществлять телефонные звонки с ПК или ноутбука. Разработчик 3CX
VоIP телефона – компания 3CX.
3CX SIP телефон имеет удобный и понятный интерфейс с кнопочной наборной панелью и кнопками переадресации и удержания вызовов. 3CX SIP телефон также дает пользователю возможность просматривать историю звонков, удерживать вызовы, записывать звонки и др.
Слайд 15Express Talk –программа, по-зволяющая совершать как телефонные вызовы с компь-ютера
на компьютер, так и с помощью VoIP провайдеров.
Характеристики:
-Поддержка до 4
линий с воз-можностью удержания вызова.
- Голосовые кодеки (GSM, uLaw, ALaw и PCM), устранение эхо, шумов.
-Поддержка протокола SIP
-Поддержка работы с NAT и брандмауэрами.
-Идентификация звонящего абонента.
-Телефонная книга с быстрым дозвоном.
Слайд 16Планируемые лабораторные работы
1. Налаштування відображення номеру абонента, що викликає, на
базі IP-AТС Asterisk. Конференц-зв’язок на базі IP-AТС Asterisk (2 години).
2. Повтор останнього набраного номеру на базі IP-AТС Asterisk. Налаштування сервісу прослуховування розмов на базі IP-AТС Asterisk (2 години).
3. Налаштування сервісу музики на утриманні на базі IP-AТС Asterisk. Налаштування сервісу інтерактивного голосового меню на базі IP-AТС Asterisk (2 години).
Слайд 174. Налаштування голосової пошти на базі IP-AТС Asterisk. Налаштування запису
розмови на базі IP-AТС Asterisk. Налаштування автоматичного дзвінка в заданий
час на IP-AТС Asterisk (2 години).
Слайд 182. Опис схеми організації зв’язку на базі IP-АТС Asterisk
Слайд 19Організація VoIP-зв’язку
на базі Asterisk PBX
Організація VoIP-зв’язку на базі Asterisk
PBX провадиться на двох фізичних комп’ютерах, з’єднаних в локальну мережу
Ethernet.
На одному з комп’ютерів інстальовано віртуальну машину на базі ОС Linux, яка виконує роль сервера голосового зв’язку. Віртуальна машина працює під керуванням програмного забезпечення VirtualBox. В якості гостьової операційної системи використовується дистрибутив Linux під назвою Ubuntu Server. В якості хост-системи використовується Windows XP.
На обох комп’ютерах інстальовано програмний SIP-телефон Phoner Lite. Таким чином, один фізичний комп’ютер виконує роль як клієнта, так і сервера, а інший — тільки сервера.
Слайд 20Програмний SIP-телефон Phoner Lite.
Слайд 21Для настроювання Asterisk PBX потрібно:
1. На одному з комп’ютерів
інсталювати програмне забезпечення VirtualBox (https://www.virtualbox.org/).
2. У VirtualBox потрібно створити
віртуальну машину, підключити до неї інсталяційний диск Ubuntu Server (використовується версії 11.10) і виконати інсталяцію мінімального оточення ОС Linux.
3. Настроїти мережеве з’єднання. Оскільки віртуальна машина під’єднана через програмний міст до тієї ж канальної мережі, що й фізичні комп’ютери, потрібно вказати IP-адресу з діапазону виділених IP-адрес для даної канальної мережі.
4. Після настроювання Ubuntu Server потрібно інсталювати Asterisk PBX. Для цього потрібно:
підключити репозиторії програмного забезпечення;
виконати оновлення операційної системи до останньої версії;
виконати інсталювання Asterisk PBX.
Зауваження. Гостьова система повинна мати вихід в мережу Інтернет для інсталювання Asterisk PBX «з нуля». Якщо використовується готовий образ настроєної віртуальної машини, з’єднання з Інтернетом непотрібно.
Слайд 225. Після інсталювання Asterisk PBX його потрібно настроїти. Для цього:
змінити
файл /etc/asterisk/sip.conf, створивши двох користувачів;
змінити файл /etc/asterisk/extensions.conf, створивши діалплан:
відкрити консоль
керування Asterisk командою sudo asterisk -r і виконати команди sip reload, dialplan reload.
6. На клієнтських комп’ютерах, обладнаних гарнітурами, потрібно інсталювати програмний SIP-телефон Phoner Lite, вказати в ньому IP-адресу сервера, логін і пароль користувача і зателефонувати за номером 600 для здійснення тестового дзвінка (на автовідповідач) або за номерами 101 чи 102 для здійснення дзвінка до іншого абонента.
Слайд 233. Опис протоколу SIP
SIP — протокол ініціювання сеансів зв’язку, є
протоколом прикладного рівня, призначається для організації, модифікації і завершення сеансів
зв’язку: мультимедійних конференцій, телефонних з’єднань і розподілу мультимедійної інформації. Користувачі мережі SIP можуть брати участь у сеансах зв’язку, запрошувати інших користувачів і бути запрошеними ними до нового сеансу зв’язку. Запрошення можуть бути адресовані певному користувачеві або групі користувачів.
Слайд 24Рис. 2. Місце протоколу SIP
у стеку протоколів TCP/IP
Слайд 25 SIP, хоча й може використовуватися в IP-телефонії, не є протоколом
для передачі тільки голосових даних — він взагалі не прив’язаний
до передачі даних якогось певного виду. Сама назва протоколу означає, що SIP забезпечує ініціювання, контроль і ліквідацію сеансів обміну інформацією, а в якості переданої інформації може виступати що завгодно: мова (як у випадку IP-телефонії), музика, відео, і, наприклад, текст. Тип переданих даних визначається окремим протоколом SDP (Session Description Protocol — протокол опису сеансу), що використовується в парі з SIP і має здатність змінювати параметри сеансу в ході обміну даними, зокрема визначає мережні порти для прийому й передачі голосових даних протоколу RTP.
Протокол SIP розроблений групою MMUSIC (Multiparty Multimedia Session Control) комітету IETF (Internet Engineering Task Force), а специфікації протоколу представлені в документі RFC 3261.
Слайд 26В основу протоколу робоча група MMUSIC заклала такі принципи:
Персональна мобільність
користувачів. Користувачі можуть переміщатися без обмежень у межах мережі, тому
послуги зв’язку повинні надаватися їм у будь-якому місці цієї мережі. Користувачеві присвоюється унікальний ідентифікатор і мережа надає йому послуги зв’язку незалежно від тог, де він перебуває.
Масштабованість мережі. Вона характеризується, у першу чергу, можливістю збільшення кількості елементів мережі при її розширенні.
Слайд 27Розширюваність протоколу. Вона характеризується можливістю доповнення протоколу новими функціями при
введенні нових послуг і його адаптації до роботи з різними
додатками. Розширення функцій протоколу SIP може бути здійснене за рахунок введення нових заголовків повідомлень, а також впровадженням нових типів повідомлень.
Інтеграція в стек наявних протоколів Internet, розроблених IETF.
Взаємодія з іншими протоколами сигналізації. Протокол SIP може бути використаний разом із протоколом Н.323. Можливо також взаємодія протоколу SIP із системами сигналізації ТфЗК — DSS1 й ОКС7. Однією з найважливіших особливостей протоколу SIP є його незалежність від транспортних технологій.
Слайд 283.1. Архітектура мережі SIP
Протокол SIP успадкував від протоколу перенесення гіпертексту
— HTTP синтаксис і архітектуру «клієнт-сервер». Керування процесом обслуговування виклику
розподілено між різними елементами мережі SIP. На рис. 2 представлений приклад мережі на базі протоколу SIP. Основним функціональним елементом, що реалізує функції керування з’єднанням, є термінал. Інші елементи мережі відповідають за маршрутизацію викликів, а в деяких випадках надають додаткові послуги.
У випадку, коли клієнт і сервер взаємодіють безпосередньо з користувачем, тобто реалізовані в кінцевому обладнанні користувача, вони називаються, відповідно, клієнтом агента користувача — User Agent Client (UAC) — і сервером агента користувача — User Agent Server (UAS).
Якщо в пристрої присутні і сервер UAS, і клієнт UAC, то він називається агентом користувача — User Agent (UA), і по своїй суті являє собою апаратний або програмний термінал SIP.
Слайд 29Рис. 2 Приклад мережі на базі протоколу SIP
Слайд 30Крім терміналів, визначені два основних типи мережних елементів SIP: проксі-сервер
(proxy server) і сервер переадресації (redirect server).
Проксі-сервер представляє інтереси користувача
в мережі. В якості проксі-сервера може виступати IP-ATC Asterisk. Він приймає запити, обробляє їх і, залежно від типу запиту, виконує певні дії. Проксі-сервер складається із клієнтської і серверної частин, тому може приймати виклики, ініціювати власні запити і повертати відповіді. Проксі-сервер може бути фізично з’єднаний із сервером визначення місця розташування або існувати окремо від цього сервера, але мати змогу взаємодіяти з ним використовуючи певні протоколи.
Слайд 31Передбачено два типи проксі-серверів — зі збереженням станів і без
збереження станів.
Сервер першого типу зберігає в пам’яті вхідний запит, що
являється причиною генерації одного або декількох вихідних запитів. Такий сервер дозволяє надати більшу кількість послуг, але працює повільніше, ніж сервер другого типу. Він може застосовуватися для обслуговування невеликої кількості клієнтів, наприклад, у локальній мережі.
Сервер без збереження станів просто ретранслює запити й відповіді, які одержує. Він працює швидше, ніж сервер першого типу, тому що ресурси процесора не витрачається на запам'ятовування станів, внаслідок чого сервер цього типу може обслужити більшу кількість користувачів. Недоліком такого сервера є те, що на його базі можна реалізувати лише найбільш прості послуги. Втім, проксі-сервер може функціонувати як сервер зі збереженням станів для одних користувачів і як сервер без збереження станів - для інших.
Слайд 32Сервер переадресації призначений для визначення поточної адреси користувача, який викликається.
Користувач, який викликає, передає до сервера повідомлення з відомою йому
адресою користувача, який викликається, а сервер забезпечує переадресацію виклику на поточну адресу цього користувача. Для реалізації цієї функції сервер переадресації повинен взаємодіяти із сервером визначення місця розташування.
Сервер переадресації повідомляє адресу або користувача, що викликається, або проксі-сервера. За цією адресою ініціатор запиту передає новий запит. Сервер переадресації не містить клієнтську частину програмного забезпечення.
Слайд 33Але користувачеві не обов’язково зв’язуватися з яким-небудь SIP-сервером. Він може
сам викликати іншого користувача за умови, що знає його поточну
адресу.
Користувач може переміщатися в межах мережі, тому необхідно забезпечити механізм визначення його місця розташування в даний момент часу.
Для зберігання поточної адреси користувача використовується сервер визначення місця розташування користувачів, що представляє собою базу даних адресної інформації.
Цей сервер може бути сполучений із проксі-сервером або бути реалізований окремо, але повинен мати можливість зв'язуватися з ним.
Слайд 34 3.2. Повідомлення протоколу SIP
Відповідно до архітектури «клієнт-сервер» всі повідомлення діляться
на запити, передані від клієнта до сервера, і на відповіді
сервера клієнтові.
Щоб ініціювати встановлення з’єднання користувач повинен повідомити серверу ряд параметрів, зокрема, адресу викликуваного користувача, параметри інформаційних каналів й ін. Ці параметри передаються в спеціальному SIP-запиті. Від викликуваного користувача передається відповідь на запит, що також містить ряд параметрів.
Всі повідомлення протоколу SIP, запити й відповіді, являють собою послідовності закодованих текстових рядків. Структура й синтаксис повідомлень SIP ідентична використовуваним у протоколі HTTP. На рисунку 3 представлена структура повідомлень протоколу SIP.
Слайд 35Рис. 3 Структура повідомлень протоколу SIP
Слайд 36Стартовий рядок являє собою початковий рядок будь-якого SIP-повідомлення. Якщо повідомлення
є запитом, у цьому рядку вказуються тип запиту, адресат і
номер версії протоколу. Якщо повідомлення є відповіддю на запит, у стартовому рядку вказуються номер версії протоколу, тип відповіді і його коротка розшифровка, призначена тільки для користувача.
Заголовки повідомлень містять відомості про відправника, адресата, шлях проходження і ін., тобто, переносять інформацію, необхідну для обслуговування даного повідомлення. Про тип заголовка можна дізнатися по його імені.
Повідомлення протоколу SIP можуть містити так зване тіло повідомлення. У запитах АСК, INVITE й OPTIONS тіло повідомлення містить опис сеансів зв’язку. Запит BYE тіла повідомлення не містить. При цьому будь-які відповіді можуть містити тіло повідомлення, але вміст тіла в них буває різним.
Слайд 37У протоколі SIP визначено чотири види заголовків:
загальні заголовки, що є
присутніми у запитах і відповідях;
заголовки змісту, переносять інформацію про розмір
тіла повідомлення або про джерело запиту (починаються зі слова «Content»);
заголовки запитів, що передають додаткову інформацію про запит;
заголовки відповідей, що передають додаткову інформацію про відповідь.
Заголовок містить назву, за якою, відділене двокрапкою, слідує значення заголовка. У полі значення містяться передані дані. Слід зазначити, що якщо сервер приймає повідомлення, заголовки яких йому не відомі, то ці заголовки ігноруються.
Слайд 38Перелік найбільш поширених заголовків
протоколу SIP
Заголовок Call-ID - унікальний ідентифікатор
сеансу зв’язку або всіх реєстрації окремого клієнта, він складається з
буквено-числового значення і імені робочої станції, що привласнила значення цьому ідентифікатору. Між ними повинен стояти символ @.
Заголовок То - визначає адресата.
Заголовок From - ідентифікує відправника запиту; за структурою аналогічний полю То.
Заголовок CSeq - унікальний ідентифікатор запиту, що відноситься до одного з'єднання. Він служить для кореляції запиту з відповіддю на нього.
Слайд 39Заголовок Via служить для того, щоб уникнути ситуації, у яких
запит піде по замкнутому шляху, а також для тих випадків,
коли необхідно, щоб запити й відповіді обов’язково проходили по однакових шляхах. Тобто в заголовку Via вказується весь шлях, пройдений запитом.
Заголовок Content-Type визначає формат опису сеансу зв’язку.
Заголовок Content-Length указує розмір тіла повідомлення.
У дійсній версії протоколу SIP 2.0 визначено шість типів запитів. Кожний з них призначений для виконання досить широкого кола завдань, що є явною позитивною можливістю протоколу SIP, тому що завдяки цьому число повідомлень, якими обмінюються термінали й сервери, зведено до мінімуму.
Слайд 40За допомогою запитів клієнт повідомляє про поточне місце розташування, запрошує
користувачів взяти участь у сеансах зв’язку, модифікує вже встановлені сеанси,
завершує їх і т.д.
Сервер визначає тип прийнятого запиту за назвою, зазначеному в стартовому рядку. В тому ж рядку в полі Request-URI зазначена SIP-адреса терміналу, якому цей запит адресований. Зміст полів То і Request-URI може різнитися, наприклад, у полі То може бути зазначена адреса абонента, а в полі Request-URI — поточна адреса користувача.
Розглянемо запити.
Слайд 41INVITE — запит залучає користувача або послугу до участі в
сеансі зв’язку й містить опис параметрів цього зв’язку. За допомогою
цього запиту користувач може визначити функціональні можливості термінала абонента і почати сеанс зв’язку, використовуючи обмежене число повідомлень і підтверджень їхнього прийому.
АСК — запит підтвердження прийому від викликуваної сторони відповіді на команду INVITE і завершує транзакцію.
OPTIONS — запит дозволяє одержати інформацію про функціональні можливості агентів користувачів і мережних серверів. Однак цей запит не використовується для організації сеансів зв'язку.
Слайд 42BYE — запит використається ініціаторами і викликуваною сторонами для руйнування
з’єднання. Перед тим як зруйнувати з’єднання, користувачі відправляють цей запит
до сервера, повідомляючи про намір припинити сеанс зв’язку.
CANCEL — запит дозволяє агентам користувачів і мережним серверам скасовувати раніше передані запити, якщо відповіді на них ще не були отримані.
REGISTER — запит застосовується клієнтами для реєстрації інформації про місце розташування з використанням серверів SIP.
Слайд 43Після прийому й інтерпретації запиту, адресат (проксі-сервер ) передає відповідь
на цей запит. Зміст відповідей буває різним: підтвердження встановлення з’єднання,
передача запитуваної інформації, відомості про несправності тощо. Структуру відповідей і їхні види протокол SIP успадкував від протоколу HTTP.
Визначено шість типів відповідей, що несуть різні функціональні навантаження. Тип відповіді кодується тризначним числом. Найважливішою є перша цифра, що визначає клас відповіді, інші дві цифри лише доповнюють першу. У деяких випадках обладнання навіть може не знати всі коди відповідей, але воно обов’язково повинне інтерпретувати першу цифру відповіді.
Слайд 44Всі відповіді поділяються на дві групи: інформаційні і фінальні.
Інформаційні
відповіді показують, що запит перебуває на стадії обробки. Вони кодуються
тризначним числом, що починається з одиниці — 1хх.
Фінальні відповіді кодуються тризначними числами, що починаються із цифр 2, 3, 4, 5 і 6. Вони означають завершення обробки запиту й містять, коли це потрібно, результат обробки запиту.
Відповіді 2хх означають, що запит був успішно оброблений. У цей час із всіх відповідей типу 2хх визначений лише один — 200 ОК. Його значення залежить від того, на який запит він відповідає.
Слайд 45Відповіді 3хх інформують термінал користувача про нове місце розташування викликуваного
користувача або переносять іншу інформацію, що може бути використана для
нового виклику.
Відповіді 4хх інформують про те, що в запиті виявлена помилка. Після одержання такої відповіді користувач не повинен передавати той же самий запит без його модифікації.
Відповіді 5хх інформують про те, що запит не може бути оброблений через відмову сервера.
Відповіді 6хх інформують про те, що з’єднання з викликуваним користувачем установити неможливо.
Слайд 46Запити й відповіді на них утворюють SIP-транзакцію. Вона здійснюється між
клієнтом і сервером і містить у собі всі повідомлення, починаючи
з першого запиту й закінчуючи фінальною відповіддю.
Крім того, протокол SIP передбачає різні алгоритми встановлення з’єднання. При цьому ті самі відповіді можна інтерпретувати по-різному залежно від конкретної ситуації.
Слайд 47 3.3 Схема взаємодії SIP-терміналів
Розглянемо типи SIP запитів і відповідей, які
передаються при взаємодії двох SIP-терміналів у мережі з одним проксі-сервером,
а також процеси які виникають в цьому випадку. Схема взаємодії представлена на рис. 4.
При здійсненні SIP-дзвінка, виникають процеси обміну SIP-заголовками, які керують з’єднанням, а також передача мультимедійних даних по протоколу RTP.
Слайд 48 Термінал А SIP Проксі-сервер
Термінал Б
Рис. 4 Схема взаємодії SIP
терміналів
Слайд 49Основні процеси, що виникають при здійсненні SIP-дзвінка від термінала А
к терміналу Б:
Реєстрація SIP-термінала на сервері
Термінал повинен зареєструватися на проксі-сервері
для того, щоб інші термінали змогли його знайти і зв'язатися. У цьому випадку, обидва термінали посилають запити на реєстрацію у вигляді SIP-заголовків «REGISTER» з відповідними полями «From» і «To». Проксі-сервер , що працює також як і сервер місця розташування, визначає можливість реєстрації терміналів і посилає відповіді у вигляді SIP-заголовків «OK» з кодом відповіді 200 якщо реєстрація пройшла успішно.
Слайд 50 Встановлення сеансу зв’язку
Сеанс зв’язку починається відправленням терміналом А запиту «INVITE»
проксі-серверу. Проксі-сервер відповідає відповіддю «TRYING 100» який означає, що потрібно
почекати поки сервер зв’яжеться з терміналом Б і перевірить можливість встановлення з ним з'єднання. Термінал Б посилає відповідь проксі-серверу у вигляді заголовка «Ringing 180» якщо він вільний і готовий почати сеанс. Цей запит також переадресовується терміналу А і він чує гудки виклику. І нарешті відповідь «OK 200» від термінала Б означає прийом дзвінка.
Протікання сеансу зв'язку
У цей момент зв’язок встановлений і починається безпосередній процес обміну мультимедійними даними по протоколу RTP, використовуючи параметри (порт, адреса, тип вокодера тощо) передані за допомогою SDP.
Слайд 51 Завершення сеансу зв’язку
Завершення сеансу зв’язку відбувається відправленням запиту «BYE» до
проксі-серверу, що ретранслює його терміналу Б. Термінал Б відповідає повідомленням
«OK 200» підтверджуючи роз’єднання. Сеанс зв’язку завершений, передача даних по протоколу RTP припиняється.
Слайд 52 3.4 Алгоритми встановлення з’єднання
Протоколом SIP передбачені 3 основних сценарії встановлення
з’єднання:
за участю проксі-сервера,
за участю сервера переадресації і
безпосередньо
між користувачами.
Розходження між перерахованими сценаріями полягає в тім, що по-різному здійснюється пошук і запрошення викликуваного користувача. У першому випадку ці функції покладає на себе проксі-сервер, а користувачеві -ініціатору сеансу - необхідно знати тільки постійну SIP-адресу викликуваного користувача. У другому випадку агент користувача самостійно встановлює з'єднання, а сервер переадресації лише реалізує перетворення постійної адреси викликуваного абонента в його поточну адресу. І, нарешті, у третьому випадку користувачеві для встановлення з’єднання необхідно знати поточну транспортну адресу викликуваного користувача.
Слайд 53 4. Налаштування схеми організації зв’язку
на базі IP-АТС Asterisk
а. Для
настроювання IP-АТС Asterisk потрібно на одному з комп’ютерів інсталювати програмне
забезпечення VirtualBox згідно з інформацією на сайті https://www.virtualbox.org/ або у файлі UserManual.pdf (файл видається викладачем).
б. У VirtualBox потрібно створити віртуальну машину, підключити до неї інсталяційний диск Ubuntu Server (використовується версія 11.10) і виконати інсталяцію мінімального оточення ОС Linux.
в. Після інсталювання Ubuntu Server потрібно настроїти мережеве з’єднання. Оскільки віртуальна машина під’єднана через програмний міст до тієї ж канальної мережі, що й фізичні комп’ютери, потрібно вказати IP-адресу з діапазону виділених IP-адрес для даної канальної мережі. Для цього потрібно, наприклад, зробити наступне:
Слайд 54відкрити файл /etc/network/interfaces і внести в нього такі рядки:
auto eth0 #автоматична
активація мережевого інтерфейсу
#під час завантаження системи
iface eth0 inet static #настроювання
статичної адреси IPv4
address 10.30.2.150 #IP-адреса сервера
netmask 255.255.254.0 #маска під мережі сервера
network 10.30.2.0 #канальна під мережа сервера
broadcast 10.30.3.255 #широкомовна IP-адреса
gateway 10.30.2.1 #шлюз в інші підмережі
Детальний опис цього файлу конфігурації можна знайти за адресою http://ubuntologia.ru/network-manual-configuration.
2. перезапустити мережеве з’єднання гостьової системи, виконавши таку команду:
sudo service networking restart
або якщо на сервері не інстальовано програму для керування службами, перезапустити мережевий скрипт напряму:
sudo /etc/init.d/networking restart
Слайд 55 4.1. Інсталяція Asterisk PBX
а. Після настроювання Ubuntu Server потрібно інсталювати
Asterisk PBX. Для цього потрібно:
1. підключити репозиторії програмного забезпечення, відкривши
файл /etc/apt/sources.list та внісши до нього такі рядки:
deb http://ua.archive.ubuntu.com/ubuntu/ oneiric main restricted universe multiverse
deb http://ua.archive.ubuntu.com/ubuntu/ oneiric-updates main restricted universe multiverse
deb http://ua.archive.ubuntu.com/ubuntu/ oneiric-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu oneiric-security main restricted universe multiverse
deb http://archive.canonical.com/ubuntu oneiric partner
deb http://extras.ubuntu.com/ubuntu oneiric main
Слайд 56Розшифровку значень файла конфігурації потрібно знайти за адресою https://help.ubuntu.com/community/Repositories/Ubuntu в
якості домашнього завдання.
2. виконати оновлення операційної системи до останньої версії,
виконавши такі команди:
sudo aptitude update #оновлення бази пакетів
sudo aptitude full-upgrade #оновлення власне пакетів
виконати інсталяцію Asterisk PBX, ввівши таку команду:
sudo aptitude install asterisk
Зауваження. Гостьова система повинна мати вихід в мережу Інтернет для інсталяції IP-АТС Asterisk «з нуля». Якщо використовується готовий образ настроєної віртуальної машини, з’єднання з Інтернетом непотрібно. (Готовий образ віртуальної машини видається викладачем.)
Слайд 57б. Після інсталяції IP-АТС Asterisk необхідно його настроїти. Для цього
потрібно:
1. змінити файл /etc/asterisk/sip.conf, створивши, наприклад, двох користувачів наступним чином:
[general] ;розділ
загальних параметрів
context=default ;стандартний контекст
allowguest=no ;заборонити гостьову реєстрацію
udpbindaddr=0.0.0.0 ;слухати всі мережеві інтерфейси по протоколу UDP
externrefresh=60 ;інтервал оновлення DNS-імені, якщо вказується externhost
nat=yes ;дозволяти клієнтів, які працюють за NAT
canreinvite=no ;заборонити користувачам змінювати адреси й порти
[customer1] ;перший користувач
type=friend ;повноправний клієнт
context=phones ;входить у контекст phones
host=dynamic ;може реєструватися з різних мережевих вузлів
secret=password1 ;пароль користувача
[customer2] ;другий користувач, значення параметрів, як для першого
type=friend
context=phones
host=dynamic
secret=password2
Слайд 58 2. змінити файл /etc/asterisk/extensions.conf, створивши, наприклад, наступний діалплан:
[general] ;розділ загальних параметрів
autofallthrough=yes ;автоматично
чекати нові розширення
[default] ;стандартні параметри
exten => _X.,1,Hangup ;повісити слухавку
[internal] ;внутрішні параметри
exten => 101,1,Dial(SIP/customer1,60) ;customer1
має номер 101,
;чекати на відповідь 60 с
exten => 101,n,Hangup() ;після розмови вішати слухавку
exten => 102,1,Dial(SIP/customer2,60) ;аналогічно
exten => 102,n,Hangup()
Слайд 59exten => 600,1,Answer() ;відповідь автовідповідача за номером 600
exten => 600,2,Playback(demo-echotest) ;вітання
exten =>
600,3,Echo() ;відтворення відлуння
exten => 600,4,Playback(demo-echodone) ;повідомлення про закінчення розмови
exten => 600,5,Hangup() ;повісити слухавку
[phones] ;у
групу phones
include => internal ;входить група внутрішніх користувачів
Після цього потрібно відкрити консоль керування Asterisk командою:
sudo asterisk –r
і виконати такі команди:
sip reload
dialplan reload