По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Когда мы, разговаривая по IP телефону, слышим голос собеседника в трубке, или, используя систему видеоконференцсвязи, общаемся со своими коллегами и родственниками, то обмениваемся непрерывным потоком данных. При передаче потоковых данных, таких как голос и видео через пакетную сеть, очень важно использовать такие механизмы, которые решали бы следующие задачи: Устранение эффекта потери пакетов Восстановление порядка и контроль поступления пакетов Сглаживание эффекта задержки (джиттера) Именно для этих целей был разработан RTP (Real-time Transport Protocol) - протокол передачи в реальном времени, о котором пойдет речь в сегодняшней статье. Протокол разрабатывался в IETF группой Audio-Video Transport Working Group и описывается в рекомендации RFC 3550. Как правило, RTP работает поверх протокола UDP (User Datagram Protocol), так как при передаче мультимедийных данных очень важно обеспечить их своевременную доставку. RTP включает возможность определения типа полезной нагрузки и назначения последовательного номера пакета в потоке, а также применение временных меток. На передающей стороне каждый пакет помечается временной меткой, принимающая сторона получает ее и определяет суммарную задержку, после чего вычисляется разница в суммарных задержках и определяется джиттер. Таким образом, появляется возможность установить постоянную задержку выдачи пакетов и тем самым снизить влияние джиттера. Ещё одна функция RTP связана с возможными потерями пакетов при прохождении по IP сети, что выражается в появлении кратковременных пауз в разговоре. Внезапная тишина в телефонной трубке, как правило, очень негативно действует на слушателя, поэтому возможностями протокола RTP такие периоды тишины заполняются, так называемым,“комфортным шумом” RTP работает в связке с еще одним протоколом IETF, а именно RTCP (Real - time Transport Control Protocol), который описывается в RFC 3550. RTCP предназначен для сбора статистической информации, определения качества обслуживания QoS (Quality of Service), а также для синхронизации между медиа потоками RTP-сессии. Основная функция RTCP – установление обратной связи с приложением для отчета о качестве получаемой информации. Участники RTCP сессии обмениваются сведениями о числе полученных и утраченных пакетов, значении джиттера, задержке и т.д. На основе анализа этой информации принимается решение об изменении параметров передачи, например, для уменьшения коэффициента сжатия информации с целью улучшения качества ее передачи. Для выполнения этих функций RTCP передает специальные сообщения определенных типов: SR - Sender Report - отчёт источника со статистической информацией о RTP сессии RR - Receiver Report - отчёт получателя со статистической информацией о RTP сессии SDES - содержит описание параметров источника, включая cname (имя пользователя) BYE – Инициирует завершение участия в группе APP - Описание функций приложения RTP является протоколом однонаправленного действия, поэтому для организации двусторонней связи необходимо две RTP сессии, по одной с каждой стороны. RTP-сессия определяется IP адресами участников, а также парой незарезервированных UDP портов из диапазона 16384 - 32767. Кроме того, для организации обратной связи с приложением необходимо также установить двустороннюю RTCP сессию. Для RTCP сессии занимаются порты с номером на единицу большим чем RTP. Так например, если для RTP выбран 19554 порт, то RTCP сессия займет 19555 порт. Наглядно формирование RTP/RTCP сессии представлено на рисунке ниже. Стоит также отметить, что сам протокол RTP не имеет механизмов для самостоятельного установления сессии, эта задачу выполняют протоколы сигнализации, такие как SIP,H.323,SCCP , которые мы подробно рассматривали в предыдущих статьях.
img
В сегодняшней статье рассмотрим один из самых важных модулей Asterisk, который является необходимым инструментом в решении проблем со звонками (траблшутинга), статистики и отчётности. Речь пойдёт о модуле CDR Reports. Все примеры, традиционно, будем приводить на нашем FreePBX 13 /p> CDR (Call Detailed Record) – это подробная запись об акте коммутации (звонке), которые были проведены на телефонной станции. Такие записи есть практически у любой существующей цифровой АТС. Каждый производитель цифровой АТС предлагает свои сервисы для просмотра CDR. В Asterisk это модуль CDR Reports. Модуль CDR Reports позволяет формировать мгновенные отчёты о телефонных звонках, которые так или иначе проходили через Вашу IP-АТС. Это могут быть как внутренние звонки между сотрудниками компании, так и звонки из/во “внешний мир", Asterisk записывает всё. Можно посмотреть, как полную историю звонков, так и создать уникальный отчёт, отфильтровав записи по дате, временным интервалам, только исходящим звонкам, только по определенным номерам CID и так далее. Звонки, которые появятся в сформированном отчёте, можно прослушать прямо из модуля. Важно отметить, что модуль CDR Reports требует, чтобы CDR – записи хранились в базе данных. О том, как Asterisk записывает детализирует телефонные события, вы можете прочитать в статье про cистему CEL (Channel Event Logging) Для формирования вышеупомянутых отчётов, модуль CDR Reports имеет интерфейс. Нужно отметить, что неопытному пользователю может быть трудно работать с интерфейсом, поскольку он имеет множество опций, с которыми не все знакомы. Однако, напротив каждой опции предусмотрены подсказки, подробно описывающие для чего они нужны. Рассмотрим интерфейс на примере FreePBX 13. Для того, чтобы в него попасть, с главной страницы переходим по следующему пути Reports - > CDR Reports, как показано на рисунке. Перед нами открывается интерфейс модуля CDR Reports с множеством фильтров Как видно, благодаря имеющимся фильтрам можно создавать самые разные отчёты. Коротко рассмотрим каждый фильтр: Call Date – Дата звонка. Справа можно выбрать временной промежуток, который нас интересует CallerID Number – Номер звонящего. Выводит все записи по определенному интересующему номеру телефона. Можно ввести множество номеров, разделяя их запятыми. Справа можно выбрать условия совпадения – “Начинается с", “Содержит", “Заканчивается на" и “Совпадает точно" данные условия можно применить и для остальных фильтров CallerID Name – Имя звонящего Outbound CallerID Number – Номер, с которого звонят, при исходящем звонке DID – Искать по набранному номеру. Это удобно, когда в компании несколько входящих линий Destination –Искать по номеру назначения. Например, когда звонок переведен на внутреннего сотрудника или звонок попал на Ring группу Destination CallerID Name – Искать по имени, присвоенного номеру назначения Userfield – Искать по полю Userfield, если оно включено на Extension’е Account Code – Искать по Аккаунт коду Duration – Продолжительность звонка. Справа можно выбрать интервал в секундах Disposition – Искать по характеру обработки вызова. Например: ANSWERED, BUSY, NO ANSWER. Позволяет найти не отвеченные звонки, звонки которые были приняты, звонки, которые не были приняты по причине занятости абонента Также записи можно сгруппировать по различным параметрам при помощи опции Group By Как только все нужные фильтры заполнены интересующими входными данными, необходимо нажать клавишу Search, чтобы сформировался отчёт Интерфейс статистики Merion Metrics Как видите, стандартный модуль CDR Report содержит очень много различных фильтров и параметров, которые, зачастую, просто не нужны рядовому пользователю. Именно поэтому, мы создали свой собственный интерфейс построения отчётов для Asterisk, интуитивно понятный и упрощенный. Наша разработка обладает не только базовым функционалом модуля CDR Report, но также позволяет формировать визуализированные отчёты и диаграммы. Посмотрите видео о том, как много радости приносит наш интерфейс статистики для IP - АТС Asterisk: Интерфейс можно попробовать бесплатно, пройдя по ссылке -
img
Сетевые устройства добавляются в сети для решения целого ряда проблем, включая подключение различных типов носителей и масштабирование сети путем переноса пакетов только туда, куда они должны идти. Однако маршрутизаторы и коммутаторы сами по себе являются сложными устройствами. Сетевые инженеры могут построить целую карьеру, специализируясь на решении лишь небольшого набора проблем, возникающих при передаче пакетов через сетевое устройство. Рисунок 1 используется для обсуждения обзора проблемного пространства. На рисунке 1 есть четыре отдельных шага: Пакет необходимо скопировать с физического носителя в память устройства; это иногда называют синхронизацией пакета по сети. Пакет должен быть обработан, что обычно означает определение правильного исходящего интерфейса и изменение пакета любым необходимым способом. Например, в маршрутизаторе заголовок нижнего уровня удаляется и заменяется новым; в фильтре пакетов с отслеживанием состояния пакет может быть отброшен на основании внутреннего состояния и т.п. Пакет необходимо скопировать из входящего интерфейса в исходящий. Это часто связано с перемещениями по внутренней сети или шине. Некоторые системы пропускают этот шаг, используя один пул памяти как для входящего, так и для исходящего интерфейсов; они называются системами с общей памятью. Пакет необходимо скопировать обратно на исходящий физический носитель; это иногда называют синхронизацией пакета по проводу. Примечание. Небольшие системы, особенно те, которые ориентированы на быструю и последовательную коммутацию пакетов, часто используют общую память для передачи пакетов с одного интерфейса на другой. Время, необходимое для копирования пакета в память, часто превышает скорость, с которой работают интерфейсы; системы с общей памятью избегают этого при копировании пакетов в память. Таким образом, проблемное пространство, обсуждаемоениже, состоит из следующего: Как пакеты, которые необходимо пересылать сетевым устройством, переносятся с входящего на исходящий физический носитель, и как пакеты подвергаются обработке на этом пути? Далее обсуждается часть решения этой проблемы. Физический носитель – Память Первым шагом в обработке пакета через сетевое устройство является копирование пакета с провода в память. Для иллюстрации этого процесса используется рисунок 2. На рисунке 2 представлены два этапа: Шаг 1. Набор микросхем физического носителя (PHY chip) будет копировать каждый временной (или логический) слот с физического носителя, который представляет один бит данных, в ячейку памяти. Эта ячейка памяти фактически отображается в приемное кольцо, которое представляет собой набор ячеек памяти (буфер пакетов), выделенный с единственной целью - прием пакетов, синхронизируемых по сети. Приемное кольцо и вся память буфера пакетов обычно состоят из памяти одного типа, доступной (совместно используемой) всеми коммутирующими компонентами на принимающей стороне линейной карты или устройства. Примечание. Кольцевой буфер используется на основе одного указателя, который увеличивается каждый раз, когда новый пакет вставляется в буфер. Например, в кольце, показанном на рисунке 2, указатель будет начинаться в слоте 1 и увеличиваться через слоты по мере того, как пакеты копируются в кольцевой буфер. Если указатель достигает слота 7 и поступает новый пакет, пакет будет скопирован в слот 1 независимо от того, было ли обработано содержимое слота 1 или нет. При коммутации пакетов наиболее трудоемкой и трудной задачей является копирование пакетов из одного места в другое; этого можно избежать, насколько это возможно, за счет использования указателей. Вместо перемещения пакета в памяти указатель на ячейку памяти передается от процесса к процессу в пределах пути переключения. Шаг 2. Как только пакет синхронизируется в памяти, некоторый локальный процессор прерывается. Во время этого прерывания локальный процессор удалит указатель на буфер пакетов, содержащий пакет, из кольца приема и поместит указатель на пустой буфер пакетов в кольцо приема. Указатель помещается в отдельный список, называемый входной очередью. Обработка пакета Как только пакет окажется во входной очереди, его можно будет обработать. Обработку можно рассматривать как цепочку событий, а не как одно событие. Рисунок 3 иллюстрирует это. Перед коммутацией пакета должна произойти некоторая обработка, например преобразование сетевых адресов, поскольку она изменяет некоторую информацию о пакете, используемом в фактическом процессе коммутации. Другая обработка может происходить после переключения. Коммутация пакета - довольно простая операция: Процесс коммутации ищет адрес назначения Media Access Control (MAC) или физического устройства в таблице пересылки (в коммутаторах это иногда называется таблицей обучения моста или просто таблицей моста). Исходящий интерфейс определяется на основе информации в этой таблице. Пакет перемещается из входной очереди в выходную очередь. Пакет никоим образом не изменяется в процессе коммутации; он копируется из очереди ввода в очередь вывода. Маршрутизация Маршрутизация - более сложный процесс, чем коммутация. Рисунок 4 демонстрирует это. На рисунке 4 пакет начинается во входной очереди. Тогда коммутационный процессор: Удаляет (или игнорирует) заголовок нижнего уровня (например, кадрирование Ethernet в пакете). Эта информация используется для определения того, должен ли маршрутизатор получать пакет, но не используется во время фактического процесса коммутации. Ищет адрес назначения (и, возможно, другую информацию) в таблице пересылки. Таблица пересылки связывает место назначения пакета со next hop пакета. Next hop может быть следующий маршрутизатор на пути к месту назначения или сам пункт назначения. Затем коммутирующий процессор проверяет таблицу interlayer discovery, чтобы определить правильный физический адрес, по которому следует отправить пакет, чтобы доставить пакет на один шаг ближе к месту назначения. Новый заголовок нижнего уровня создается с использованием этого нового адреса назначения нижнего уровня и копируется в пакет. Обычно адрес назначения нижнего уровня кэшируется локально вместе со всем заголовком нижнего уровня. Весь заголовок перезаписывается в процессе, называемом перезапись заголовка MAC. Теперь весь пакет перемещается из очереди ввода в очередь вывода. Почему именно маршрутизация? Поскольку маршрутизация-это более сложный процесс, чем коммутация, то почему именно маршрутизация? Для иллюстрации будет использован рисунок 5. Существует по меньшей мере три конкретных причины для маршрутизации, а не коммутации в сети. На рисунке 5 в качестве примера приведена небольшая сеть: Если канал связи [B,C] является физическим носителем другого типа, чем два канала связи, соединяющиеся с хостами, с различными кодировками, заголовками, адресацией и т. д., то маршрутизация позволит A и D общаться, не беспокоясь об этих различиях в типах каналов связи. Это можно было бы преодолеть в чисто коммутируемой сети с помощью преобразования заголовков, но преобразование заголовков на самом деле не уменьшает количество работы, чем маршрутизация в пути коммутации, поэтому нет особого смысла не маршрутизировать для решения этой проблемы. Другое решение может заключаться в том, чтобы каждый тип физического носителя согласовывал единую адресацию и пакетный формат, но, учитывая постоянное развитие физических носителей и множество различных типов физических носителей, это кажется маловероятным решением. Если бы вся сеть была коммутируемой, то B должен был бы знать полную информацию о достижимости для D и E, в частности, D и E должны были бы знать адреса физического или нижнего уровня для каждого устройства, подключенного к сегменту хоста за пределами C. Это может быть не большой проблемой в малой сети, но в больших сетях с сотнями тысяч узлов или глобальным интернетом это не будет масштабироваться—просто слишком много состояний для управления. Можно агрегировать информацию о достижимости с помощью адресации нижнего уровня, но это сложнее, чем использовать адрес более высокого уровня, назначенный на основе топологической точки присоединения устройства, а не адрес, назначенный на заводе, который однозначно идентифицирует набор микросхем интерфейса. Если D отправляет широковещательную рассылку «всем устройствам в сегменте», A получит широковещательную рассылку, если B и C являются коммутаторами, но не если B и C являются маршрутизаторами. Широковещательные пакеты нельзя исключить, поскольку они являются неотъемлемой частью практически каждого транспортного протокола, но в чисто коммутируемых сетях широковещательные передачи представляют собой очень трудно решаемую проблему масштабирования. Трансляции блокируются (или, скорее, потребляются) на маршрутизаторе. Примечание. В мире коммерческих сетей термины маршрутизация и коммутация часто используются как синонимы. Причина этого в первую очередь в истории маркетинга. Первоначально маршрутизация всегда означала «переключаемая программно», тогда как коммутация всегда означала «переключаемая аппаратно». Когда стали доступны механизмы коммутации пакетов, способные переписывать заголовок MAC на аппаратном уровне, они стали называться «коммутаторами уровня 3», которые в конечном итоге были сокращены до простой коммутации. Например, большинство «коммутаторов» центров обработки данных на самом деле являются маршрутизаторами, поскольку они действительно выполняют перезапись MAC-заголовка для пересылаемых пакетов. Если кто-то называет часть оборудования коммутатором, то лучше всего уточнить, является ли это коммутатором уровня 3 (правильнее - маршрутизатор) или коммутатором уровня 2 (правильнее - коммутатором). Примечание. Термины канал связи и соединение здесь используются как синонимы. Канал связи - это физическое или виртуальное проводное или беспроводное соединение между двумя устройствами. Equal Cost Multipath В некоторых проектах сети сетевые администраторы вводят параллельные каналы между двумя узлами сети. Если предположить, что эти параллельные каналы равны по пропускной способности, задержке и т. д., они считаются равными по стоимости. В нашем случае каналы считаются многопутевыми с равной стоимостью (equal cost multipath - ECMP). В сетевых технологиях в производственных сетях часто встречаются два варианта. Они ведут себя одинаково, но отличаются тем, как каналы группируются и управляются сетевой операционной системой.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59