По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Вам, как сетевому инженеру, крайне важно разбираться в том, каким образом вызовы VoIP влияют на пропускную способность канала в вашей компании. И по мере того, как работа из дома становится новой нормой, важность этого понимания возрастает еще больше. Расчет пропускной способности ваших IP-вызовов Cisco сводится к нескольким простым вычислениям. Такое уравнение поможет вам и вашей компании определить потребности сети. Эта статья разделена на 2 части. В первой объясняется терминология для проведения вычислений. Во второй – дается практический пример расчетов пропускной способности канала. Кроме того, мы поговорим о том, как разные протоколы влияют на ширину полосы, и где почитать подробнее о вычислениях. Что такое кодек? «Кодек» расшифровывается как «кодер/декодер». В принципе, его полное название должно помочь в понимании функций, но давайте поговорим о них подробнее. Когда человек осуществляет вызов через VoIP и разговаривает, его голос должен переводиться в нечто понятное для компьютера. Кодек – это часть программного обеспечения, которая и выполняет цифровое преобразование голоса или любого другого звука. Давайте вкратце обсудим, как это происходит. Основная функция кодека – преобразование голоса в цифровой сигнал. Голос – это звуковая волна, а компьютер может получить лишь часть, или выборку, этой волны с помощью математического процесса под названием интерполяция. Иначе говоря, кодек разрезает волную на несколько выборок, а затем приблизительно рассчитывает оставшуюся часть волны. Потом он берет этот примерный расчет и переводит его в бинарные данные, которые вновь преобразуются в голос. Теперь, когда мы поняли, как работает кодек, настало время поговорить о четырех примерах, которыми мы будем пользоваться в вычислениях. 4 кодека VoIP для Cisco 4 кодека VoIP для Cisco – это G.711, G.729, G.7622 и ILBC. Для каждого кодека существует своя величина выборки. Величина выборки кодека (Codec Sampling Size) – это количество байт, которое используется для оцифровки образца сигнала. Поговорим об этом подробнее, начиная с G.711. Что такое G.711? Кодек G.711 – это кодек, который специализируется на ясности и производительности. Именно поэтому у него высокая скорость передачи данных, или битрейт (64 000 КБ от пропускной способности сети), а величина выборки кодека – целых 80 байт. В основном, он используется для VoIP, но подходит также и для факсов. Что такое G.729? Кодек G.729 – это идеальное решение при ограниченной пропускной способности канала. Например, он хорошо подходит для малых бизнесов. Однако крупные компании, одновременно обслуживающие многих клиентов, быстро столкнутся с ограничениями G.729. Этот кодек занимает 8 000 КБ полосы и ограничивается только VoIP. Что такое G.722? G.722 похож на G.711. Величина выборки тоже 80 байт, а скорость передачи данных – 64 кбит/сек. Основное отличие заключается в том, что в G.722 доступна более широкая речевая полоса частот на 50-7000 Гц, тогда как речевая полоса в G.711 варьирует от 200 до 3000 Гц. G.722 хорошо подходит для случаев, когда звук должен быть особенно точным. Что такое iLBC? ILBC расшифровывается как Internet Low Bitrate Codec, или интернет-кодек с низкой скоростью передачи данных. Его битрейт составляет порядка 15 кбит/сек, а величина выборки кодека – 38 байт. Самое лучшее в iLBC – его способность снижать качество речи при потере большого количества блоков данных (фреймов). Теперь, когда мы детально разобрались в 4 разных протоколах, давайте вернемся к разговору о том, как рассчитать пропускную способность канала для каждого из них. Расчет пропускной способности канала Рассчитать пропускную способность канала можно в несколько простых шагов. Первым делом обозначьте все необходимые переменные. Обязательные переменные перечислены ниже: кодек и скорость передачи данных величина выборки кодека интервал выборки кодека средняя оценка разборчивости речи (MOS) размер полезной части голосового пакета Обратите внимание на четвертую переменную – среднюю оценку разборчивости речи. Она оценивает качество звука (от 1 до 5) при использовании конкретного кодека. Рассмотрим пример в таблице: Кодек и битрейт Величина выборки кодека Интервал выборки кодека Средняя оценка разборчивости речи Размер полезной части голосового пакета Пропускная способность для Ethernet G.711 (64 кбит/сек)  80  10  4,1  160  87,2 G.729 (8 кбит/сек)  10  10  3,92  20  31,2 G.722 (64 кбит/сек)  80  10  4,13  160  87,2 ILBC (15,2 кбит/сек)  38  10  4,14  38  38,4 Помните, что наша цель – найти самое последнее число из таблица, то есть пропускную способность для Ethernet. Основное уравнение принимает вид: Общая пропускная способность = Размер пакета х Пакетов в секунду Но выполнить расчеты по этой формуле не так уж просто, поскольку в таблице данных отсутствуют значения «Размер пакета» и «Пакетов в секунду». Давайте рассчитаем пропускную способность для кодека G.711 со скоростью передачи данных в 87,2 кб/сек. Вычисление размера пакета Для начала определим размер пакета для отдельного вызова VoIP. Выражение для определения этого параметра принимает вид: Размер выборки в байтах = (Размер пакета x пропускная способность кодека) / 8 Переменную «Размер выборки в байтах» можно взять из таблицы (см. «Размер полезной части голосового пакета), а пропускная способность кодека берется из первого столбца. Теперь наше выражение выглядит так: 160 байт = (размер пакета x 64 000) / 8 Обратите внимание, что мы делим правую часть на 8, потому как все вычисляется в битах, а итоговый ответ нужно получить в байтах. Далее умножим каждую часть на 8, чтобы убрать 8 из знаменателя. Получается следующее: 1280 = (размер пакета x 64 000) И, наконец, найдем размер пакета, разделив каждую часть на 64 000. В результате мы нашли размер пакета в 0,02 или 20 мс. То есть голосовую выборку для пропускной способности в 20 мс. Например, это количество времени, которое требуется, чтобы произнести букву «П» в слове «Привет», – именно это мы и вычисляли. Добавление потребления ресурсов в объем выборки Вы же помните, что VoIP не происходит в вакууме. Множество других процессов приводят к дополнительному потреблению ресурсов. Вернемся к нашему размеру полезной части голосового пакета в 160 байт. Один только Ethernet добавит к этой цифре еще 18 байт. Затем, как мы знаем, IP, UDP и протоколы RTP не останутся в стороне и добавят лишние 40 байт. Получается, что настоящий размер выборки становится 160 + 40 + 218 – это общий размер выборки в 218 байт. Расчет общей пропускной способности Теперь мы дошли до финальной части. Ранее уже говорилось, что общая пропускная способность равна размеру пакета х количество пакетов в секунду. Мы нашли наш размер выборки – 20 мс. Чтобы найти количество пакетов, передаваемых по проводам за этой время, воспользуемся следующим уравнением: 1000 мс / размер пакета = 1000 мс / 20 мс = 50 пакетов в секунду. Мы рассчитали, что размер пакета (он же размер выборки) равен 218 байт. И теперь можно получить ответ: Общая пропускная способность = 218 байт x 50 пакетов Общая пропускная способность = 10 900 байт/сек Переведем это число в килобайты, разделив его на 8. В результате мы получаем 87,2 кб/сек. Заключение В статье было много специальной лексики и математических расчетов. Но, разобравшись в этом, вы станете бесценным членом команды сетевых инженеров и сможете работать с VoIP-технологиями Cisco.
img
Не все любят управлять MySQL через Linux. Management Studio – говорили они. CLI – говорим мы. Бро, эта статья про то, как дать права доступа (permissions) учетным записям в Linux – среде. Логинимся Подключаемся к своему серверу по SSH. В командной строке вводим: mysql -u root -p Хоп – и мы уже в режиме управления MySQL: mysql> Вообще, эта статья про права доступа. Но на всякий случай вот тебе синтаксис команды, которая позволит создать нового пользователя с паролем в MySQL: CREATE USER 'логин'@'localhost' IDENTIFIED BY 'пароль'; А теперь права Друже, синтаксис команды, которая даст нужные тебе права крайне простой. Вот он: GRANT права ON база_данных.таблица TO 'логин'@'localhost'; Разберемся слева на право: права - могут быть следующие: ALL – дает полный доступ к базе данных. Кстати, если база данных не определена в команде, то даст полный доступ ко всему в MySQL (ох не надо так); CREATE – позволяет пользователю создавать базы данных и таблицы; DELETE – дает право пользователю удалять строки из таблиц; DROP – дает право удалять базы данных и таблица целиком (ну, так тоже не надо); EXECUTE – дает право пользователю выполнять хранимые процедуры; GRANT OPTION – с этой опцией юзер сможет давать права (или удалять) другим пользователям; INSERT – дает право хранить молчанию и все что он скажет будет.. Ладно, это просто право на добавление новых строк в таблицу; SELECT – самое распространенное право – парсить (извлекать) данные из SQL для чтения; SHOW DATABASES - этому пользователю можно будет смотреть на список баз данных; UPDATE – дает право пользователю изменять текущие строки в таблице; база_данных собственно, база данных, внутри которой живет ваша таблица; таблица - сама таблица. Табличка, table, le tableau; логин - имя пользователя вашего юзверя; Все просто. Пробежимся по примерам. Пример №1 Давайте дадим права юзеру example, с помощью которых он сможет создавать любые БД и таблицы: GRANT CREATE ON *.* TO 'example'@'localhost'; Использование звездочки (*) – это как маска, под которое попадает все. Пример №2 Дадим пользователю example права на удаление любых таблиц в заранее обозначенной базе данных, которая называется easybro GRANT DROP ON easybro.* TO 'example'@'localhost'; Как видишь, мы юзаем команду DROP. Кстати, лучшая практика после внесения изменения сделать небольшую перезагрузку прав командой: FLUSH PRIVILEGES; Как посмотреть права определенного пользователя в MySQL Посмотреть права очень просто. Опять же, на примере нашего юзера example: SHOW GRANTS FOR 'example'@'localhost';
img
Для пользователей, которые обладают премиальной лицензии на Cisco Unified Contact Center Express (UCCX), одной из самых крутых фич является наличие возможной интеграции и отправки запросов в базу данных. Сами запросы могут строиться на базе введенной звонящим информации, его номера – чего угодно. Безусловно важно сделать ¬¬изначальный дизайн скриптов правильным и учитывать нагрузку. Большие и тяжелые скрипты, которые имеют много «плеч» в БД (базу данных), значительно увеличивают нагрузку на ресурсы сервера. А если БД еще и удалена от сервера CCX и имеет место сетевая задержка, то может иметь место прямое воздействие на бизнес и лояльность звонящего вам клиента. Обзор Cisco Unified CCX Script Editor Для создания и управления IVR скриптами в UCCX используется специальный инструмент - Cisco Unified CCX Editor. Он позволяет визуально управлять некими блоками, которые отвечают за то, или иное действие. Выглядит эта палетта следующим образом: Давайте рассмотрим раздел Database. Здесь мы видимо 4 пункта: DB Get - сопоставление полученных данных из БД к переменным скрипта; DB Read - подключение к серверу и запрос; DB Release - закрываем подключение к БД; DB Write - если нужно внести изменения в БД, используем Write метод; На скриншоте выше видно, что каждый скрипт начинается с события Start и заканчивается событием End. Во время звонка, по ходу выполнения скрипта, мы можем запрашивать данные из БД сколько угодно раз. Каждый запрос имеет свой отдельный список шагов, которые указаны в списке из 4х пунктов выше. Мы рекомендуем предварительно обкатать все SQL запросы, доступ системы и прочие рабочие факторы перед выгрузкой в продуктивную среду Например, давайте посмотрим, что скрыто внутри блока DB Read: Взглянем на поля, которые доступны для конфигурации: DB Resource Name - метка запроса. Своего рода метка; Data Source Name - источник данных (DSN), указанное в административной консоли UCCX (Cisco Unified CCX Administration Database); Timeout (in sec) - пауза выполнения запроса. Этот интервал защитит вашу систему от, например, потери связи с БД. То есть, максимум 7 секунд ожидания. Кстати, если указано как 0, то запрос не будет ограничен по времени; Теперь из вкладки General переходим во вкладку Field Selection: Запрос - SQL – команда (запрос), который вы ходите выполнить. Например, SELECT fld1, fld2 from tbl where fld1 = $variable - выбираем два поля из таблицы, где одно из полей равно переменной, которую, мы ранее, присвоили в скрипте (DTMF от клиента, например); Test (кнопка) - нажмите на эту кнопку, чтобы проверить синтаксис запроса и подключение к БД; Number of rows returned - количество вернувшихся строк запроса, в случае, если была нажата кнопка Test; Show all fields (select table/view) - показать все поля в таблице, к которой выполняется подключение; Отлично, разобрались. Теперь давайте взглянем на блок DB Get: DB Resource Name - лэйбл или имя для этого запроса; Data Source Name - имя БД (настраивается на стороне Cisco Unified CCX Administration); Refresh Database Schema (кнопка) - кнопка, которая отвечает за подтягивание данных БД и таблицы в CCX Editor; Переходим во вкладку Field Selection: Table/View - данное поле показывает имя таблицы из БД, которая выбрана во вкладке General, которую мы описывали выше; Табличное поле: Field Name - имя поля, в выбранной БД; Data Type - типа данных (строка/число и так далее); Local Variable - переменная скрипта, которая будет хранить соответствующее поле; Add/Modify (кнопки) - кнопки, которые отвечают за модификацию полей (кроме типа данных, он read only); Полученные данные можно использовать в скрипте, например, чтобы озвучивать клиенту (TTS) его данные по номеру телефона, или по введенным цифрам (номер заказа). Кстати, аналогичную фичу мы реализовали в связке Yandex.SpeechKit и Asterisk.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59