По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
BGP (Border Gateway Protocol) - это протокол граничного шлюза, предназначенный для обмена информацией о маршрутизации и доступности между автономными системами (AS) в Интернете. Пока не пугайся - к тому, что такое автономная система мы еще вернемся. Упрощая: BGP - это метод маршрутизации, который позволяет интернету функционировать. Без него вы бы не смогли выполнять поиск в гугле, даже посмотреть эту статью. Можно уверенно сказать, что BGP, наряду с DNS, являются самыми важными для Интернета протоколами. Существует 2 типа BGP - iBGP для маршрутизации внутри сети, где i обозначает Internal и eBGP для внешней (External) маршрутизации, хотя его обычно называют просто - BGP. Немного истории Когда-то во всем интернете было всего лишь несколько сетей, связанных друг с другом статичными маршрутами. То есть админы вручную на роутерах прописывали маршрут до нужной сети - такой маршрут и называется статичным. Но интернет недолго оставался маленьким. Стало появляться все больше и больше сетей, что потребовало динамического метода обмена информацией о маршрутах. Так появился EGP (Exterior Gateway Protocol) - протокол внешнего шлюза. Это был простой протокол маршрутизации, который работал по древовидной иерархической топологии, то есть как веточки у дерева. Это когда чтобы добраться до точки E или F, A должен пройти через B, C и D. Другими словами - при EGP, ни о какой интеллектуальной, как видосы на нашем канале, маршрутизации не могло быть и речи. И когда Интернет стал ещё больше, недостатки EGP стали очевидны всем. Так и появился BGP. Autonomous System В самом начале мы обещали вернуться к автономным системам: так вот Autonomous System или AS это сеть или набор подсетей, которые объединены общей внутренней политикой маршрутизации. Внутри этих подсетей работает свой протокол маршрутизации, например OSPF или EIGRP. Это мы и называем внутренней политикой маршрутизации. Автономными системами управляют отдельные организации, как правило - интернет-провайдеры, различные ВУЗы, коммерческие компании или крупные корпорации типа Google или Facebook. Даже ты сейчас сидишь в какой-то AS. Вот например AS в которой находится наша база знаний wiki.merionet.ru. Каждая AS имеет свой уникальный номер - AS Number (ASN) и диапазон IP адресов, то есть подсеть. А BGP обеспечивает обмен информацией о маршрутах между этими системами. BGP в деталях Так как на BGP возложена великая задача – соединение автономных систем во всем Интернете, то он должен быть очень надежным. Так что в самом начале работы, BGP-маршрутизатор инициирует установление TCP сессии на 179 порт к своему соседу Если TCP-сессия установлена успешно, то BGP-маршрутизаторы начинают обмен сообщениями OPEN в котором сообщают свои номер автономной системы (ASN), идентификатор маршрутизатора, который называется RouterID и Hold timer. Hold timer это время, в течение которого будет поддерживаться TCP-сессия. Если одному роутеру что-то не понравится, например не совпадёт информация о номере AS, то сообщением NOTIFICATION он уведомит об этом своего соседа и сбросит TCP-сессию. Соединение по BGP должно быть абсолютно согласовано администраторами автономных систем, желающих организовать стык. Если, скажем, администратор AS1 запустил процесс BGP на маршрутизаторе R1 указав в качестве соседа R2 и его ASN, а администратор AS2 ничего не настроил, то TCP-сессия не поднимется и системы так и останутся несвязными. Да, все верно, администраторы настраивают BGP вручную. Если же все условия соблюдаются, то маршрутизаторы, с определенным интервалом, начинают слать друг другу сообщения KEEPALIVE, означающие “Я ещё жив и со мной можно работать!” Наконец, маршрутизаторы могут приступать к обмену маршрутной информацией по средствам сообщения UPDATE. Структура данного сообщения делится на две части: Path Attributes (Атрибуты пути) - здесь указывается из какой AS поступил маршрут, его происхождение и следующий маршрутизатор для данного пути. NRLI (Network Layer Reachability Information) - здесь указывается информация о сетях, которые нужно добавить в таблицу маршрутизации, т.е IP-адрес сети и ее маска. Сообщение UPDATE будет передаваться каждый раз, когда один из маршрутизаторов получит информацию о новых сетях, а сообщение KEEPALIVE на протяжении всей TCP-сессии. BGP принимает решения о наилучшем пути на основе текущей сложности маршрута, количестве хопов (то есть точек маршрутизации) и других характеристик пути. BGP анализирует все данные и устанавливает одного из своих соседей в качестве следующей остановки для пересылки пакетов в определенную сеть. Каждый узел управляет таблицей со всеми известными ему маршрутами для каждой сети и передает эту информацию своим соседним автономным системам. Таким образом, BGP позволяет роутерам собирать всю информацию о маршрутизации из соседних автономных систем и далее анонсировать эту информацию соседям. Именно таким образом и работает маршрутизация во всем Интернете. Сбои в работе BGP ни раз приводили к недоступности целых частей Интернета. Помнишь как в октябре 2021 во всем мире прилёг Facebook, а с ним и остальные его сервисы - Instagram, WhatsApp? Это случилось потому, что из-за ошибки инженеров, информация о маршрутах к серверам Facebook, которая рассылается, как ни странно, по протоколу BGP, была удалена, а это вызвало невозможность разрешения доменного имени Facebook по DNS. Дошло до того, что инженерам FB пришлось выпиливать двери в серверную, чтоб всё починить, потому что система пропусков тоже была завязана на их сервисы и не работала!
img
Сегодня бы хотелось рассказать об IVR (Interactive Voice Response). IVR – автоматическая система обслуживания клиентского обращения. С его помощью, повышается качество и скорость обслуживания клиентов, следовательно, растет лояльность по отношению к компании. IVR позволяет сегментировать клиентские обращения, тем самым, оптимизирует работу операторов и уменьшает время решения клиентского запроса. Безусловно, IVR – системы бывают разные. В крупном бизнесе, дорогие IVR - системы имеют возможность в реальном времени синтезировать речь (ASR), проговаривать текст (TTS), имеют интерфейсы к базам данных (DB), через которые «парсят» запрашиваемую информацию. Такие решения предлагают крупные игроки рынка контактных центров, такие как Cisco Systems, Genesys и Avaya. IVR – системы в таких случаях состоят из сложных скриптов, созданных в специальных графических редакторах. В малом и среднем бизнесе, зачастую, потребности в сложных системах нет. В большинстве случаев, голосовое приветствие с предложением нажать одну из кнопок на телефоне, чтобы соединиться с отделом, или ввести номер для соединения с конкретным сотрудником – является самым оптимальном в соотношение стоимости к результативности. Давайте рассмотрим технологию VXML (Voice eXtensible Markup Language). Язык программирования XML является гибким инструментом для решения ряда задач. Благодаря не сложному синтаксису, нашел повсеместное применение. VXML – это адаптация XML для голосовых приложений. Давайте взглянем на схему ниже. Этот пример реализован на базе технологий Cisco. На базе шлюза, функционирует телефонная платформа CME (Call Manager Express). Предположим, к нам приходит звонок из ТфОП c номера +7-495-2234567 (Телефонная сеть общего пользования), я входящий Dial-Peer видит совпадение. gateway#configure terminal gateway(config)#dial-peer voice 100 pots gateway(config-dial-peer)#description VXML-IVR-TEST gateway(config-dial-peer)#incoming called-number 74952234567 gateway(config-dial-peer)#service VXML-IVR Как только dial-peer совпал, шлюз обращается к flash памяти и запускает выполнение скрипта с названием VXML-IVR. При нажатии кнопок телефона события обрабатываются по DTMF. Ниже показан простейший пример: <?xml version="1.0" encoding="UTF-8"?> <vxml version="2.1" xmlns="http://www.w3.org/2001/vxml" xml:lang="ru-RU"> <form id=" Greeting"> <block> <prompt> Здравствуйте! Вы позвонили в компанию… </prompt> </block> </form> </vxml> Логика обработки входящего звонка диктуется только заказчиком. Стоимость такого решения гораздо ниже, чем серьезные голосовые платформы специально разработанные вендорами. IVR позволяет массово информировать клиентов о каких-либо изменениях, сокращает время обслуживания, повышает лояльность клиента. Мы с радостью поможем создать для Вашего бизнеса голосовое меню, составить техническое задание, написать VXML скрипты.
img
Среди обилия различных вариантов довольно трудно выбрать ту модель базы данных (БД), который идеально подойдет под ваши нужды. Если говорить о разновидностях СУБД, то чаще всего предпочтение отдается реляционным базам. В данной статье мы поговорим об устройстве реляционных баз данных, обсудим принципы их работы, а также плюсы и минусы использования этих систем. Кроме того, продемонстрируем примеры, которые наглядно показывают, как реляционные БД систематизируют данные. Что такое реляционная база данных Реляционная база данных – это тип БД, который специализируется на связях (отношениях) между элементами данных. Он позволяет устанавливать взаимосвязи между различными наборами данных и использовать эти связи для управления и обращения к связанным данным. Для создания и поддержки данных во многих реляционных БД используется SQL (Structured Query Language - структурированный язык запросов). Реляционные и нереляционные базы данных Реляционные БД делают упор на отношениях между данными. Следовательно, реляционные БД должны хранить данные в строго структурированном виде. Это ускоряет индексирование и время ответа на запросы, а также улучшает безопасность и постоянство данных. Нереляционные базы данных, наоборот, не так сильно зависят от структуры данных, поэтому могут хранить большие объемы данных, не теряя гибкости и легко масштабируя хранение и производительность. Как структурируются данные в реляционных системах управления данными? В реляционных системах управления данными (РСУБД) используется модель, которая структурирует данные в таблицы строк (их еще называют записями или кортежами) и столбцов (или атрибутов/полей). Обычно в столбцах размещаются категории данных, а в строки добавляются отдельные экземпляры. В качестве примера рассмотрим онлайн-магазин. В нашей базе данных находится таблица с информацией о клиентах. В столбцах указываются имена клиентов и адреса, а в строках – данные по каждому клиенту. Такие таблицы можно связать или соотнести с помощью ключей. Каждая строка в таблице идентифицируется с помощью уникального ключа (его называют первичный ключ - primary key). Этот ключ можно добавить в другую таблицу, и там он превратится во внешний ключ (foreign key). Отношение первичный/внешний ключ лежит в основе того, как работают РСУБД. Вернемся к нашему примеру. Допустим, у нас есть таблица с заказами товаров. В одном столбце этой таблицы находится информация о клиенте. Сюда мы можем импортировать первичный ключ, который ссылается на строку с информацией по отдельному клиенту. Таким способом мы можем ссылаться на данные или дублировать данные из таблицы с информацией о клиентах. Кроме того, теперь эти две таблицы связаны. Примеры реляционных баз данных Сейчас, когда мы рассмотрели, как работают РСУБД, пора поговорить о популярных примерах их использования. MySQL MySQL разрабатывалась как РСУБД с открытым кодом, затем ее купила компания Sun Microsystems (теперь это Oracle Corporation). Она по-прежнему доступна со свободной лицензией, но с добавлением проприетарных опций. В MySQL заложена встроенная поддержка репликации с ACID-совместимостью, кластеризация без разделения ресурсов между узлами и поддержка многих движков БД. Но на некоторых движках SQL может работать некорректно. MySQL преуспел в быстром вводе данных и масштабируемости, сохранив при этом высокую доступность и производительность. Все это делает MySQL крайне полезным в веб-разработке и создании приложений. PostgreSQL PostgreSQL – это бесплатный менеджер управления реляционными БД, доступный по свободной лицензии. В нем можно найти некоторые функции MySQL с весомым добавлением MVCC (multi-version concurrency contro - управление параллельным доступом посредством многоверсионности), поэтому такая система совместима с ACID. PostgreSQL сохраняет высокий уровень гибкости и производительности даже при обработке больших баз данных. Это подходящее решение для пользователей, которым важна высокая скорость записи/чтения и разноплановый анализ данных. Среди известных пользователей PostgreSQL стоит упомянуть Reddit, Skype и Instagram. MariaDB Изначально MariaDB создавалась сообществом в качестве форка MySQL, когда тот выкупила Oracle. MariaDB все еще свободно распространяется под стандартной универсальной лицензией GNU. MariaDB создана на базе MySQL с добавлением поддержки еще большего количество движков и исправлением ограничений по хранению данных. Она работает быстрее MySQL и позволяет запускать SQL и NoSQL в одной базе данных. Среди известных пользователей MariaDB можно выделить Google, Mozilla и Wikimedia Foundation. SQLite В отличие от других представителей в этом списке, SQLite не является менеджером баз данных с архитектурой клиент-сервер; он, скорее, встраивается в конечное приложение, благодаря чему мало весит и способен работать с большими массивами систем и платформ. В SQLite есть некоторые ограничения, поскольку он лишь частично предоставляет триггеры, имеет ограниченную функцию ALTER TABLE и не может записывать в представления. Кроме того, SQLite ограничивает максимальный размер базы до 32 000 столбцов и 140 ТБ. Получается, что SQLite лучше всего использовать в качестве компонента базы данных для других приложений. Среди известных пользователей можно назвать Google Chrome, Mozilla Firefox, Opera и Safari. Что такое система управления реляционными базами данных? Система управления базой данных (СУБД или DBMS) – это программное решение, которое позволяет пользователям просматривать, запрашивать и управлять базами данных. Система управления реляционными базами данных (РСУБД или RDBMS) – это более расширенное подмножество СУБД для управления реляционными базами данных. Ниже приведены некоторые различия между универсальной СУБД и РСУБД СУБД РСУБД Хранит меньшее количество данных в виде файлов; нет взаимосвязей Сохраняет большие объемы данных в виде связанных друг с другом таблиц Можно обращаться к одному элементу данных за раз Можно обращаться ко многим элементам данных одновременно. При работе с большими объемами замедляется получение данных В реляционном подходе получение данных не замедляется даже для больших БД. Нет нормализации БД. Есть нормализация БД. Не поддерживает распределенные БД Поддерживает распределенные БД. Поддержка одного пользователя. Поддержка нескольких пользователей. Низкий уровень безопасности Много уровней безопасности. Низкие требования к программному и аппаратному обеспечению. Высокие требования к программному и аппаратному обеспечению Плюсы и минусы реляционных баз данных Как и во всех моделях баз данных, здесь есть свои плюсы и минусы. Плюсы Реляционные БД используют таблицы столбцов и строк, поэтому они отображают данные проще, чем другие типы, и работать с ними удобнее. Такая табличная структура создана специально для обработки данных, что повышает производительность и позволяет использовать сложные, высокоуровневые запросы. И, наконец, в реляционных БД легко масштабировать данные, добавляя строки, столбцы или целые таблицы, не нарушая при этом общей структуры базы. Минусы Реляционные БД могут масштабироваться только до определенного предела. Если говорить о размере базы, то в некоторых БД есть строгое ограничение по длине столбцов. Если вы создаете базу на отдельном сервере, то при ее разрастании придется покупать дополнительное место, то есть в долгосрочной перспективе ее поддержание обходится не дешево. Кроме того, постоянное добавление новых элементов может усложнить базу и затруднить установление связей между новыми частями. Сложные отношения между данными замедляют запросы и негативно сказываются на производительности. Заключение После прочтения этой статьи у вас должно появиться четкое понимание того, как работают реляционные базы данных. Также вы познакомились с рядом интересных примеров РСУБД.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59