По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Все мы любим компьютеры. Они могут делать столько удивительных вещей. За пару десятилетий компьютеры произвели самую настоящую революцию почти во всех аспектах человеческой жизни. Они могут справляться с задачами различной степени сложности, просто переворачивая нули и единицы. Просто удивительно, как такое простое действие может привести к такому уровню сложности. Но я уверен, что вы все знаете, что такой сложности нельзя добиться (практически нельзя) простым случайным переворачиванием чисел. Но за этим стоит определенные логические рассуждения. Есть правила, которые определяют, как это все должно происходить. В данной статье мы обсудим эти правила и увидим, как они управляют «мышлением» компьютера. Что такое булева алгебра? Это правила, о которых я упоминал выше, описываются некой областью математики, называемой булевой алгеброй. В своей книге 1854 года британский математик Джордж Буль предложил использовать систематический набор правил для работы со значениями истинности. Эти правила положили математическую основу для работы с логическими высказываниями. А эти основы привели к развитию булевой алгебры. Для того, чтобы понять, что из себя представляет булева алгебра, сначала мы должны понять сходства и различия между ней и другими формами алгебры. Алгебра в целом занимается изучением математических символов и операций, которые можно выполнять над этими символами. Эти символы сами по себе ничего не значат. Они обозначают некую величину. Именно эти величины и придают ценность этим символам, и именно с этими величинами и выполняются операции. Булева алгебра также имеет дело с символами и правилами, позволяющими выполнять различные операции над этими символами. Разница заключается в том, что эти символы что-то значат. В случае обычной алгебры символы обозначают действительные числа. А в булевой алгебре они обозначают значения истинности. На рисунке ниже представлен весь набор действительных чисел. Набор действительных чисел включает натуральные числа (1, 2, 3, 4, …), положительные целые числа (все натуральные числа и 0), целые числа (…, -2, -1, 0, 1, 2, 3, …) и т.д. Обычная алгебра имеет дело со всем этим набором чисел. Для сравнения, значения истинности состоят из набора, который включает в себя только два значения: True и False. Здесь я хотел бы отметить, что мы можем использовать любые другие символы для обозначения этих значений. Например, в информатике, как правило, эти значения обозначают через 0 и 1 (0 используется в качестве False, 1 – в качестве True). Вы также можете сделать это более оригинальным способом, обозначая значения истинности какими-то другими символами, например, кошки и собаки или бананы и апельсины. Суть здесь в том, что смысл этих значений останется неизменным, как бы вы их не обозначили. Но убедитесь, что вы не меняете символы в процессе выполнения операций. Теперь вопрос в том, что если (True и False), (0 и 1) – это просто обозначения, то что же они пытаются обозначить? Смысл, лежащий в основе значений истинности, исходит из области логики, где значения истинности используются для того, чтобы определить, является ли высказывание «Истинным» (True) или «Ложным» (False). Здесь значения истинности обозначают соответствие высказывания истине, то есть показывают, является ли высказывание истинным или ложным. Высказывание – это просто некоторое утверждение, что-то вроде «Все кошки милые». Если приведенное выше высказывание верно, то мы присваиваем ему значение истинности «Истина» (True) или «1», в противном случае мы присваиваем ему значение истинности «Ложь» (False) или «0». В цифровой электронике значения истинности используются для обозначения состояний электронных схем «включено» и «выключено». Подробнее об этом мы поговорим позже в этой же статье. Логические операции и таблицы истинности Как и в обычной алгебре, в булевой алгебре также можно применять операции к значениям для получения некоторых результатов. Однако эти операции не похожи на операции в обычной алгебре, поскольку, как мы уже упоминали ранее, булева алгебра работает со значениями истинности, а не с действительными числами. В булевой алгебре есть три основные операции. OR: OR или "ИЛИ", также известная как дизъюнкция. Эта операция выполняется над двумя логическими переменными. Результатом операции OR будет 0, если оба операнда равны 0, иначе будет 1. Для того, чтобы более наглядно продемонстрировать принцип работы этой операции, визуализируем ее с помощью таблицы истинности. Таблицы истинности дают нам хорошее представление о том, как работают логические операции. Также это удобный инструмент для выполнения логических операций. Операция OR: Переменная 1 Переменная 2 Результат 0 0 0 0 1 1 1 0 1 1 1 1 AND: AND или "И", также известная как конъюнкция. Эта операция выполняется над двумя логическими переменными. Результатом операции AND будет 1, если оба операнда равны 1, иначе будет 0. Таблица истинности выглядит следующим образом. Операция AND: Переменная 1 Переменная 2 Результат 0 0 0 0 1 0 1 0 0 1 1 1 NOT: NOT или "НЕ", также известное как отрицание. Эта операция выполняется только над одной переменной. Если значение переменной равно 1, то результатом этой операции будет 0, и наоборот, если значение переменной равно 0, то результатом операции будет 1. Операция NOT: Переменная 1 Результат 0 1 1 0 Булева алгебра и цифровые схемы Булева алгебра после своего появления очень долго оставалась одним из тех понятий в математике, которые не имели какого-то значительного практического применения. В 1930-х годах Клод Шеннон, американский математик, обнаружил, что булеву алгебру можно использовать в схемах, где двоичные переменные могут обозначать сигналы «низкого» и «высокого» напряжения или состояния «включено» и «выключено». Эта простая идея создания схем с помощью булевой алгебры привела к развитию цифровой электроники, которая внесла большой вклад в разработку схем для компьютеров. Цифровые схемы реализуют булеву алгебру при помощи логических элементов – схем, обозначающих логическую операцию. Например, элемент OR будет обозначать операцию OR. То же самое относится и к элементам AND и NOT. Наряду с основными логическими элементами существуют и логические элементы, которые можно создать путем комбинирования основных логических элементов. NAND: элемент NAND, или "И-НЕ", образован комбинацией элементов NOT и AND. Элемент NAND дает на выходе 0, если на обоих входах 1, в противном случае – 1. Элемент NAND обладает свойством функциональной полноты. Это означает, что любая логическая функция может быть реализована только с помощью элементов NAND. Элемент NAND: Вход 1 Вход 2 Результат 0 0 1 0 1 1 1 0 1 1 1 0 NOR: элемент NOR, или "ИЛИ-НЕ", образован комбинацией элементов NOT и OR. Элемент NOR дает на выходе 1, если на обоих входах 0, в противном случае – 0. Элемент NOR, как и элемент NAND, обладает свойством функциональной полноты. Это означает, что любая логическая функция может быть реализована только с помощью элементов NOR. Элемент NOR: Вход 1 Вход 2 Результат 0 0 1 0 1 0 1 0 0 1 1 0 Большинство цифровых схем построены с использованием элементов NAND и NOR из-за их функциональной полноты, а также из-за простоты изготовления. Помимо элементов, рассмотренных выше, существуют также особые элементы, которые служат для определенных целей. Вот они: XOR: элемент XOR, или "исключающее ИЛИ", - это особый тип логических элементов, который дает на выходе 0, если оба входа равны 0 или 1, в противном случае – 1. Элемент XOR: Вход 1 Вход 2 Результат 0 0 0 0 1 1 1 0 1 1 1 0 XNOR: элемент XNOR, или "исключающее ИЛИ-НЕ", - это особый тип логических элементов, который дает на выходе 1, когда оба входа равны 0 или 1, в противном случае – 0. Элемент XNOR: Вход 1 Вход 2 Результат 0 0 1 0 1 0 1 0 0 1 1 1 Заключение Итак, на этом мы можем закончить обсуждение булевой алгебры. Надеюсь, что к текущему моменту у вас сложилась неплохая картина того, что же такое булева алгебра. Это, конечно, далеко не все, что вам следует знать о булевой алгебре. В ней есть множество понятий и деталей, которые мы не обсудили в данной статье.
img
В сегодняшней статье речь пойдет о проприетарном протоколе компании Cisco Systems - SCCP – (Skinny Client Control Protocol), который предназначен для построения корпоративных телефонных сетей на основе продуктов Cisco, таких как: IP-Телефоны серии 7900 Софт-фоны Cisco IP communicator Cisco Unified Communications Manager Cisco Unity Стоит заметить, что в телефонии существует ещё один протокол с абсолютно идентичной аббревиатурой – SCCP – Signalling Connection and Control Protocol, однако данный протокол относится к сигнализации ОКС-7, тогда как SCCP – (Skinny Client Control Protocol) работает в стеке TCP/IP. Протокол SCCP занимает то же самое место в VoIP что и SIP, H.323 и MGCP и выполняет те же самые функции. Однако, в отличие от всех перечисленных протоколов, имеет гораздо более простой синтаксис и требует меньше компьютерных ресурсов для обработки своих сообщений. Как и большинство VoIP протоколов SCCP предназначен для обмена сигнальными сообщениями между клиентом и сервером в процессе установления и завершения звонка. В процессе передачи речевых данных SCCP не участвует, для этих целей служит протокол RTP - (Real-Time Transport Protocol). Кроме того, стоит отметить, что в SCCP не используется RTСP - (Real-Time Transport Control Protocol), который передает диагностическую информацию о текущем соединении. Для этих целей в SCCP имеются собственные механизмы. Как уже было замечено, Протокол SCCP имеет очень простой синтаксис. По заголовку того или иного сообщения можно однозначно определить в каком статусе находится текущее соединение, что делает Протокол SCCP крайне удобным при траблшутинге. Для передачи сообщений SCCP используется TCP (Transmission Control Protocol) well-known порт 2000. Соединение по SCCP невозможно рассматривать без сервера (чаще всего CUCM). SCCP имеет большое множество сообщений и отправляет их на сервер по каждому поводу, ожидая руководства к дальнейшим действиям. Выглядит это примерно так: IP-Телефон: StationInit: Кто-то снял телефонную трубку Сервер: StationD: Включи зуммер Сервер: StationD: Выведи на дисплее сообщение “Введите номер”“ IP-Телефон: StationInit: Начинаю вызывать абонента, первая цифра его номера – “4” IP-Телефон: StationInit: Вторая цифра – “7” Каждое событие фиксируется вплоть до получения сервером сообщения о том, что телефонная трубка снова в исходном положении. Обратите внимание, что сообщения SCCP отправляются как в сторону клиента, так и сторону сервера, поэтому для определения источника сообщения используются идентификаторы. StationInit, если источником является клиент и StationIniD, если источником является сервер телефонии. Таким образом появляется возможность в мельчайших деталях отследить любой звонок, совершенный внутри корпоративной сети. Приведем пример некоторых сообщений SCCP: 0x0000 - Keep Alive Message – Отправляется от сервера к клиенту сразу после регистрации 0x0001 - Station Register Message – Запрос регистрации на сервере 0x0002 - Station IP Port Message – Отправляет клиент. Номер UDP порта для RTP сессии 0x0006 - Station Off Hook Message – Отправляет клиент. Снятие телефонной трубки 0x0099 - Station Display Text Message – Выводит на дисплей сообщение “Введите номер” 0x0082 - Station Start Tone Message – Включает зумер. 0x27 - Station Soft Key Event Message (new call/end call) – Если это начало вызова, то данное сообщение содержит первую цифру номера вызываемого абонента. Может также содержать промежуточные цифры номера, а также запрос на разрыв соединения (end call) 0x107 - Station Connection Statistics Request Message – Отправляется клиентом. Запрос диагностической информации (информации о задержках и потерях медиа-пакетов, джиттер-буфере, принятых и отправленных пакетах и т.д. ). Это тот самый механизм, который компенсирует отсутствие RTCP. Как видно из данного примера, MessageID каждого сообщения крайне точно описывает соответствующее ему событие, поэтому чтение трассировок SCCP обычно не составляет труда. Стоит также добавить, что некоторые компании, занимающиеся разработкой голосовых решений, такие как: Digium, SocketIP и Symbol Technologies, добавили поддержку протокола SCCP в свои продукты.
img
Активное сетевое оборудование, должно обеспечивать долгосрочное и бесперебойное функционирование корпоративной сети. Своевременное выявление и устранение неисправностей является залогом успешной и эффективной работы компании. Именно поэтому очень важно уделить особое внимание системе мониторинга, которая бы отслеживала состояние активного оборудования и уведомляла об отклонении от нормальных показателей системного администратора по SMS, e-mail или другим средствам оповещения. Система мониторинга – это совокупность технических средств, осуществляющих постоянное наблюдение и сбор информации в локальной вычислительной сети на основе анализа статистических данных с целью выявления неисправных или некорректно работающих узлов и оповещения ответственных лиц. Функционал современных систем мониторинга позволяет отслеживать состояние таких сервисов как например: 1) Доступность хоста Путем периодической отправки запросов ICMP Echo-Request на адрес сетевого устройства 2) Доступность веб-сервера Путем отправки HTTP запроса на получение страницы 3) Доступность почтовых сервисов Путем периодической отправки диагностических SMTP сообщений Кроме того, можно производить замер времени отклика данных сервисов. Периодические проверки такого рода позволяют быстро определить на каком уровне возникла проблема и незамедлительно приступить к её устранению. Система мониторинга сети На приведенном выше рисунке показан простейший пример реализации системы мониторинга, контролирующей всего четыре устройства. В реальных же условиях парк активного оборудования может иметь куда больше узлов. Для осуществления грамотного мониторинга проводят объединение разных типов узлов в группы, например группа веб-серверов или группа маршрутизаторов. Такого рода разделение помогает систематизировать статистическую информацию и облегчает процесс наблюдения. Большинство систем мониторинга позволяют автоматизировать проверку устройств по SNMP и осуществлять диагностику с помощью различных плагинов (в том числе созданных вручную). Протокол SNMP (Simple Network Management Protocol) - был создан специально для нужд мониторинга сетевого оборудования. Все активные устройства L2 и L3 содержат так называемую Базу информации управления MIB (Management Information Base), в которой находятся основные параметры состояния оборудования. Например, загрузка CPU, статус интерфейсов, объем свободного места и др. Каждой такой записи соответствует уникальный идентификатор OID(Oject IDentifier). Имея нужный идентификатор, можно получить информацию об интересующем параметре по протоколу SNMP. Современные системы мониторинга позволяют автоматизировать данный процесс. Система, по протоколу SNMP, подключается к устройству, опрашивает его по интересующему OID, получает значение параметра и сравнивает его с заданным. Если обнаруживается несоответствие двух данных значений, то системы мониторинга реагирует и запускает процесс оповещения. Перед непосредственным внедрением системы мониторинга, необходимо провести обследование ЛВС, результатом которого должен стать перечень наблюдаемого оборудования, параметров и утвержденный алгоритм эскалации событий мониторинга. На основе анализа сетевой инфраструктуры заказчика формируются первые решения определяющие архитектуру будущей системы мониторинга. На следующем этапе осуществляется составление спецификаций и пакета проектной документации, с учетом пожеланий заказчика. Далее обычно следует внедрение разработанного решения на отдельном сегменте сети с ограниченным числом наблюдаемых узлов, с целью тестирования и отладки функционала предложенного решения. Заключительным этапом является масштабирование системы мониторинга, то есть расширение объема наблюдаемой ИТ-инфраструктуры до необходимого заказчику. Внедрение системы мониторинга – это важный шаг на пути к полной автоматизации ИТ-инфраструктуры, который ведет к повышению эффективности ее использования. Специалисты нашей компании не раз разрабатывали решения, которые оправдывают ожидания заказчиков и надёжно работают вот уже несколько лет.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59