По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
В сегодняшней статье речь пойдет о механизме позволяющем объединить наиболее критичные для современного бизнеса инструменты – компьютер и телефон. CTI (Computer-Telephony Integration) компьютерная телефония - это набор технологий для интеграции и управления взаимодействием между телефонными системами и компьютером. Сценарий работы CTI в общем случае примерно такой: При совершении в телефонной сети определенных действий, например, получен вызов, выполнен перевод звонка, разговор завершен, АТС генерирует код события, идентифицирующий выполненное действие. Этот код по сетевому проводу поступает на выделенный сервер. Такой сервер является сетевым шлюзом для CTI-приложений, через него передается вся информация между сетевыми компьютерами и АТС. Получив код события от АТС, шлюз передает инструкции уже на определенный компьютер, закрепленный за конкретным пользователем, который в данный момент разговаривает по телефону. Таким образом, как только появляется входящий или исходящий звонок, на экране монитора мгновенно открываются необходимые окна, содержащие информацию о звонящем абоненте из базы данных. CTI выполняет две основные функции: CTI позволяет пользователю компьютера управлять телефонной системой CTI позволяет отображать информацию о телефонной системе с помощью компьютера Пользователь, у которого на компьютере настроено CTI будет иметь возможность совершать и принимать телефонные вызовы, переводить звонки, пользоваться голосовой почтой, набирать номер из адресной книги, хранящейся в базе данных и все это при помощи компьютера. Большинство систем компьютерной телефонии также интегрируются с системами телеконференций. CTI-адаптированный компьютер будет также отображать информацию с телефонной системы, такую как CallerID или информацию АОН (Автоматическое Определение Номера). CTI систематизирует все события в течение жизненного цикла звонка; инициация, процесс доставки (call ringing), установление соединения (call answered) и завершение (call disconnect). Изначально CTI был предназначен для одной единственной цели – сбор данных из телефонного звонка, запрос этих данных и вывод информации на экране монитора. Этот функционал стал базовым для всех CTI систем, позднее он был расширен. Системы CTI выполняют несколько функций , которые перечислены ниже: Отображение информации о вызове (номер вызывающего абонента, набранный номер, и так далее.) Полный контроль над вызовом - ответ, завершение, установка на удержание, присоединение к конференции, установка “Не беспокоить” (DND – Do Not Disturb), переадресация вызова, и т.д. Автоматический набор номера, управляемый компьютером Перевод вызова и конференц-связь между несколькими сторонами, участвующими в соединении Синхронизация передачи данных между компьютером и телефоном Запись звонков с помощью встроенного программного обеспечения для проверки качества и анализа вызовов Контроль состояния пользователя в колл-центре (доступен, занят, на удержании, ожидание, и т.п.) Подробная отчетность звонков с помощью логирования и статистических отчетов Существуют следующие стандарты CTI систем: CSTA (Computer - Supported Telephony Application) является стандартом ECMA (European Computer Manufacturers Association) для компьютерной телефонии , который был одобрен МСЭ TSAPI (Telephony Service Application Program Interface) является стандартом AT & T / Lucent Novell для компьютерной телефонии TAPI (Telephony Applications Program Interface) стандарт Microsoft
img
VMware является лидером в области технологий виртуализации и облачных вычислений и предоставляет решения для виртуализации сетей и настольных ПК. VMware изменила мир технологий с физического на виртуальный на основе программного обеспечения. Благодаря внедрению виртуальной среды для консолидации аппаратной инфраструктуры на рынке день ото дня растёт необходимость в профильных экспертах. Для управления и обслуживания бизнеса организации требуется опытный персонал. Для выбора лучших талантов на рынке проводятся несколько технических собеседований. Ниже приведены некоторые основанные на сценариях вопросы и ответы опытных ИТ-администраторов (опыт работы до 5 лет) по технологии виртуализации центров обработки данных, которые могут быть использованы для оценки технических и практических знаний кандидата. 1. Администратор хочет подключить к ESXi хосту непосредственно с веб-клиента vSphere. Какие порты нужно открыть? Обычно веб-клиент vSphere используется для подключения к серверу vCenter, а VClient - для подключения к хостам ESXi. Но vSphere Web Client также может использоваться для подключения к хостам. Для этого потребуется открыть порты TCP 443, TCP и UDP 902, а также TCP 903, которые должны быть открыты из Security Profile. 2. Неверное время на хосте ESXi 6.x. Что должен сделать администратор для устранения этой проблемы? Чтобы исправить время на хосте ESXi, нужно изменить время хоста с помощью клиента vSphere и подправить настройки NTP в файле /etc/ntp.conf. 3. Администратор хочет завершить работу хоста ESXi. Какой параметр должен использоваться в Direct Console User Interface (DCUI) для выполнения этой задачи? Для завершения работы хоста из консоли (DCUI) администратор нажимает клавишу F12. 4. Администратор подключается к хосту ESXi через vCenter Server с помощью веб-клиента vSphere, но напрямую через VClient не может. Что он должен сделать для прямого доступа к хосту ESXi? Если хост ESXi, доступен через vSphere Web Client, и не доступен напрямую, следует проверить не включена ли блокировка (Lockdown). Если включена, нужно его отключить. Поскольку при включённой функция блокировки доступ к хостам ESXi возможен только через сервер vCenter; получить прямой доступ ни к одному хосту невозможно. 5. Администратор хочет использовать центр сертификации VMware (VMCA) в качестве промежуточного центра сертификации (Intermediate CA). Он уже заменил корневой сертификат и сертификаты машин (Intermediate CA). Что ему делать дальше? После замены корневого сертификата и сертификата машины (Intermediate CA) необходимо выполнить следующие два шага: Замена Solution User Certificate (Intermediate CA) Замена сертификата службы каталогов VMware. 6. Если на хосте ESXi включен режим строгой блокировки, какое действие должен выполнить администратор, чтобы пользователям с правами администратора разрешить доступ к оболочке ESXi или SSH? Администратор должен добавить пользователей в список исключений и включить службу, чтобы разрешить доступ к оболочке ESXi или SSH. 7. SSO является важным компонентом сервера vCenter. Какой компонент SSO выдает токены SAML (Security Assertion Markup Language)? Токены SAML предоставляет компонент VMware Security Token Service службы SSO. 8. Какой допустимый источник удостоверений используется для настройки SSO vCenter? Допустимым источником удостоверений для настройки vCenter SSO является OpenLDAP. 9. Что происходит с файлами в общем хранилище при удалении библиотеки компонентов? При удалении библиотеки компонентов все хранящиеся в ней файлы будут удалены. 10. Какое максимальное количество процессоров vCPU может быть выделено для виртуальной машины в vSphere 6.0? Для виртуальной машины vSphere 6.0 может быть выделено не более 128 vCPU. 11. Пользователь домена Windows может войти в систему vSphere с помощью веб-клиента vSphere. Каковы требования к доступности и функциональности этой функции? Администратор может разрешить пользователям входить в vSphere Web Client используя сеанс Windows. Для этого нужно установить подключаемый модуль браузера vSphere Web Client Integration на каждом компьютере, с которого будет выполняться вход пользователя. Пользователи должны войти в Windows с помощью учетных записей Active Directory. Кроме того, администратор должен создать допустимый источник удостоверений SSO для домена пользователей. 12. Администратор хочет клонировать виртуальную машину с помощью клиента vSphere. Чем можно объяснить отсутствие опции Clone в контекстном меню? Клонирование виртуальной машины может быть выполнена с сервера vCenter, к которому подключены через веб-клиент vSphere или VClient. При прямом подключении к хосту ESXi клонирование виртуальной машины невозможно. 13. Что произойдет, если файл .nvram будет случайно удален из виртуальной машины? NVRAM-файл используется для сохранения состояния BIOS виртуальной машины. Если он будет удален по какой-либо причине, то файл .nvram будет создан снова при включении виртуальной машины. 14. Администратор хочет подключиться к хосту ESXi 6.x через клиент vSphere 5.5. Что произойдет? Если администратор попытается подключиться к хосту ESXi 6.x с клиента vSphere 5.5, система предложит администратору запустить скрипт для обновления клиента vSphere. 15. Какой из дополнительных частных сетей VLAN (PVLAN) может отправлять пакеты в изолированную сеть PVLAN? Неразборчивый тип PVLAN может передавать пакеты в изолированную PVLAN. 16. При установке vCenter какие роли предлагаются по умолчанию? При установке vCenter предлагаются роли пользователя виртуальной машины и администратора сети. 17. Что произойдет, если для программного хранилища FCoE произойдет ошибка отказа всех путей (APD)? Если все пути находятся в нерабочем состоянии, на сетевых портах активируется протокол связующего дерева. 18. Какие методы доступны для обновления ESXi 5.x до ESXi 6.x? Для обновления могут использоваться vSphere Update Manager (VUM), средство командной строки esxcli и vSphere Auto Deployment. 19. Что должен сделать администратор перед обновлением оборудования виртуальной машины? Перед обновлением оборудования виртуальной машины необходимо создать резервную копию или моментальный снимок виртуальной машины, обновить VMware Tools до последней версии и убедиться, что виртуальная машина хранится в хранилище данных VMFS или NFS. 20. При установке vCenter Single Sign-On не удается выполнить обновление сервера vCenter. Что необходимо сделать для завершения процесса обновления? Перед обновлением vCenter Server убедитесь, что служба VMware Directory может остановиться, перезапустив ее вручную. Если сервис может быть остановлен вручную, можно запустить процесс обновления сервера vCenter. 21. Какие предварительные условия следует учитывать перед обновлением vCenter Server Appliance? И в случае повышения категории vCenter Server Appliance (vCSA) и после новой установки будет установлен подключаемый модуль интеграции клиентов (CIP). 22. После развертывания PSC сервер vCenter Server не устанавливается и выдает следующую ошибку: Could not contact Lookup Service. Please check VM_ssoreg.log. (Не удалось связаться со службой поиска. Проверьте VM_ssoreg.log). При появлении этой ошибки убедитесь, что часы на хост-компьютерах, на которых работают PSC, vCenter Server и веб-клиент vSphere синхронизированы. Кроме того, убедитесь, что порт 7444 между PSC и сервером vCenter не блокируется межсетевым экраном. 23. Администратор установил Windows Server 2008 и хочет установить на него vCenter Server, но при установке на виртуальную машину Windows произошел сбой? Для установки vCenter Server требуется 64-разрядная ОС Windows. Если вы попытаетесь установить его в Windows Server 2008 ничего не получится. vCenter Server может быть установлен на ОС Windows Server 2008 R2 или более поздней версии. 24. Какова минимальная версия виртуального оборудования, необходимая для vFlash Read Cache? vFlash Read Cache был первым в vSphere 5.5, а минимальная версия виртуального оборудования для vSphere 5.5 - 10. 25. Узел ESXi добавлен в vCenter Server, но не отвечает в vSphere Web Client. Какой порт должен быть открыть в брандмауэре? Если администратор не получает от хоста ESXi 6.x в vCenter Server, проблема вызвана блокировкой трафика сетевым брандмауэром. Поэтому он должен проверить, что порт 902 (UDP) не заблокирован брандмауэром. В случае блокировки включите порт из профиля безопасности с помощью веб-клиента vSphere, выбрав указанный хост ESXi в vCenter Server. 26. Предположим, что виртуальная машина неожиданно выключилась. Какие файлы журналов виртуальной машины следует просмотреть для выявления причины и устранения этой проблемы? В данном случае администратор должен проверить файлы журнала vmware.log и hostd.log. 27. В чем может быть причина orphaned (осиротевший) состояния виртуальной машины? Если виртуальная машина находится в состоянии orphaned, это может по причине ошибки в работе функции отказоустойчивости. Виртуальная машина не была зарегистрирована непосредственно на хосте ESXi. 28. При обновлении хоста ESXi 5.5 до ESXi 6.x появляется следующая ошибка: MEMORY_SIZE. Как устранить проблему? Это указывает на нехватку памяти на хосте ESXi для завершения процесса обновления хоста ESXi с ESXi 5.5 до ESXi 6.x. 29. При удалении хоста из распределенного коммутатора vSphere (vDS) возникает следующее сообщение об ошибке: Ресурс «10» используется (The resource ’10’ is in use) Перед удалением vDS убедитесь, что сетевые адаптеры VMkernel на vDS не используются. Если используется какой-либо из ресурсов vDS, появится вышеупомянутое сообщение об ошибке с идентификатором ресурса. 30. Администратор хочет захватить и отследить сетевой трафик для виртуальной машины, но не получает ожидаемого трафика в средстве захвата пакетов. Что он должен сделать, чтобы решить проблему? Если администратору необходимо захватить сетевой трафик для виртуальной машины, он должен включить режим неразборчивости для соответствующей группы портов. Затем можно захватить сетевой трафик с помощью любого инструмента сбора сетевого трафика. 31. Кластер vSAN создается с шестью узлами вместе с доменом отказа, и три из них перемещаются в домен отказа. Один узел отказоустойчивого домена отказал. Что произойдет с оставшимися двумя узлами в домене отказа? При отказе узла-члена отказоустойчивого домена оставшиеся два узла будут считаться недоступными. 32. На каком уровне строится отказоустойчивый домен vSAN? Отказоустойчивый домен настроен на уровне кластера vSAN, и узлы будут добавлены в этот домен. Если какой-либо узел-член отказывает по какой-либо причине, остальные члены также будут рассматриваться как отказавшие. 33. Обнаружено, что активность хранилища виртуальных машин на хосте ESXi 6.x негативно влияет на активность хранилища виртуальных машин на другом хосте, который получает доступ к тому же хранилищу данных VMFS. Какие действия могли бы устранить эту проблему? Для устранения воздействия работы хранилища одной виртуальной машины на работу другой виртуальной машины необходимо включить контроль ввода-вывода хранилища данных (SIOC). Данная технология обеспечивает столь необходимое управление вводом-выводом систем хранения данных и должно использоваться для обеспечения того, чтобы производительность критически важных виртуальных машин не влияла на работу виртуальных машин других хостов, когда возникает конкуренция за ресурсы ввода-вывода. 34. При обновлении хоста ESXi с версии 5.5 до версии 6.0 администратор выполняет следующую команду: esxcli software vib list --rebooting-image. Что делает данная команда? Эта команда отображает все активные VIB (vSphere Installation Bundle). VIB представляет собой коллекцию файлов, таких как tarball или zip, упакованных в единый архив для облегчения распространения. 35. Какие счетчики будут использоваться для устранения проблем с производительностью ЦП виртуальной машины, чтобы продемонстрировать конкуренцию ЦП? Для тестирования производительности хоста ESXi в виде памяти, ЦП и использования сети используется средство ESXTOP. Это отличный инструмент, доступный администраторам VMware для устранения проблем с производительностью. Для настройки ESXTOP потребуется vSphere Client, а также должны быть включены сеансы putty и SSH. Для тестирования производительности ЦП используются счетчики %RDY, %MLMTD и %CSTP. 36. Администратор пытается запустить esxtop, включив SSH и используя putty для устранения проблем с производительностью ЦП, но выходные данные не отображаются. Как решить эту проблему? Для отображения выходных данных в ESXTOP нажмите f и установите звездочку рядом с каждым полем, которое должно отображаться. 37. Администратор хочет отслеживать виртуальные машины на хосте с помощью vCenter Server и отправлять уведомления, когда использование памяти превышает 80%. Что должен сделать администратор на сервере vCenter для выполнения этой задачи? Для мониторинга использования памяти виртуальной машины и получения уведомления при достижении определённого порога, нужно создать уведомление в vCenter Server и привязать действие по отправке уведомлений по электронной почте. 38. Администратор создал кластер DRS, и он стал несбалансированным. Что может быть причиной этому? Кластер DRS может стать несбалансированным, когда правила Affinity препятствуют перемещению виртуальных машин. Кроме того, устройство, подключенное к виртуальной машине, предотвращает миграцию с одного хоста на другой. 39. ИТ-администратор настроил два сервера vCenter в пределах PSC и должен предоставить пользователю право доступа ко всем средам. Какой уровень доступа нужно выдать для этого? Для доступа к нескольким серверам vCenter в пределах PSC требуется глобальное разрешение на доступ ко всем средам. 40. Администратор создал 10 хостов ESXi 6.x с помощью функции автоматического развертывания для нового кластера Test/Dev, и все хосты настроены на получение своего IP-адреса через DHCP. Какой параметр DCUI должен использоваться администратором для продления аренды DHCP для хостов? Для возобновления аренды DHCP для хостов используется опция «Reset Management Network» в консоли ESXi (DCUI).
img
Четвертая часть тут Описанные до сих пор технологии—коммутация каналов и пакетов, плоскости управления и QoS—очень сложны. На самом деле, по-видимому, нет конца растущей сложности сетей, особенно по мере того, как приложения и предприятия становятся все более требовательными. В этой лекции будут рассмотрены два конкретных вопроса, связанных со сложностью и сетями: Что такое сложность сети? Можно ли «решить» сложность сети? Почему сети должны быть сложными? Хотя наиболее очевидным началом понимания темы может быть определение сложности, но на самом деле более полезно рассмотреть вопрос, почему сложность требуется рассмотреть в более общем смысле. Проще говоря, возможно ли «решить» сложность? Почему бы просто не проектировать более простые сети и протоколы? Почему каждая попытка сделать что-то более простое в сетевом мире в конечном итоге явно усложняет ситуацию в долгосрочной перспективе? Например, благодаря туннелированию поверх (или через) IP сложность плоскости управления снижается, а сеть в целом упрощается. Почему тогда туннельные оверлеи сложны? Есть два ответа на этот вопрос. Во-первых, поскольку человеческая природа является тем, чем она является, инженеры всегда будут изобретать десять различных способов решения одной и той же проблемы. Это особенно верно в виртуальном мире, где новые решения (относительно) просты в развертывании, (относительно) легко найти проблему с последним набором предлагаемых решений, и (относительно) легко создать новое решение, которое «лучше старого». Это особенно верно с точки зрения поставщика, когда создание чего-то нового часто означает возможность продавать совершенно новую линейку продуктов и технологий, даже если эти технологии очень похожи на старые. Другими словами, виртуальное пространство настолько хаотично, что там легко создать что-то новое. Второй ответ, однако, заключается в более фундаментальной проблеме: сложность необходима, чтобы справиться с неопределенностью, связанной с трудноразрешимыми проблемами. Добавление сложности, по-видимому, позволяет сети легче справляться с будущими требованиями и неожиданными событиями, а также предоставлять больше услуг по меньшему набору базовых функций. Если это так, то почему бы просто не построить единый протокол, работающий в одной сети, способный обрабатывать все требования, потенциально предъявляемые к нему, и может обрабатывать любую последовательность событий, которую вы можете себе представить? Одна сеть, работающая по одному протоколу, безусловно, уменьшит количество «движущихся частей», с которыми приходится работать сетевым администраторам, и сделает нашу жизнь проще, верно? На самом деле существует целый ряд различных способов управления сложностью, например: Абстрагируйтесь от сложности, чтобы построить black box вокруг каждой части системы, чтобы каждая часть и взаимодействие между этими частями были более понятны сразу. Переместите сложность в другую область — чтобы переместить проблему из области сетей в область приложений, кодирования или протокола. Как говорится в RFC1925 «Проще переместить проблему (например, переместив ее в другую часть общей сетевой архитектуры), чем решить ее» Добавьте еще один слой сверху, чтобы рассматривать всю сложность как black box, поместив другой протокол или туннель поверх того, что уже есть. Возвращаясь к RFC1925 «Всегда можно добавить еще один уровень indirection» Проникнитесь сложностью, обозначьте то, что существует как «наследие», и гонитесь за какой-то новой блестящей вещью, которая, как считается, способна решить все проблемы гораздо менее сложным способом. Игнорируя проблему и надеясь, что она уйдет. Аргументация в пользу исключения «только на этот раз», так что конкретная бизнес-цель может быть достигнута или какая-то проблема устранена в очень сжатые сроки, с обещанием, что проблема сложности будет решена «позже», является хорошим примером. Каждое из этих решений, однако, имеет ряд компромиссов для рассмотрения и управления. Кроме того, в какой-то момент любая сложная система становится хрупкой - прочной, но хрупкой. Система является надежной, но хрупкой, когда она способна устойчиво реагировать на ожидаемый набор обстоятельств, но неожиданный набор обстоятельств приведет к ее отказу. Определение Сложности Учитывая, что сложность необходима, инженеры должны научиться управлять ею каким-то образом, находя или создавая модель, или структуру. Лучше всего начать построение такой модели с самого фундаментального вопроса: что означает сложность в терминах сетей? Можно ли поставить сеть на весы и сделать так, чтобы стрелка указывала на «комплекс»? Существует ли математическая модель, в которую можно включить конфигурации и топологию набора сетевых устройств для получения «индекса сложности»? Как понятия масштаба, устойчивости, хрупкости и элегантности соотносятся со сложностью? Лучшее место для начала построения модели — это пример. Состояние Control Plane в зависимости от протяженности. Что такое протяженность сети? Проще говоря, это разница между кратчайшим путем в сети и путем, который фактически принимает трафик между двумя точками. Рисунок 1 иллюстрирует эту концепцию. Если предположить, что стоимость каждого канала в этой сети равна 1, то кратчайший физический путь между маршрутизаторами A и C также будет кратчайшим логическим путем: [A,B, C]. Однако что произойдет, если метрика на ссылке [A,B] изменится на 3? Самый короткий физический путь по-прежнему [A,B,C], но самый короткий логический путь теперь [A,D,E,C]. Разница между кратчайшим физическим путем и кратчайшим логическим путем-это расстояние, которое должен пройти пакет, пересылаемый между маршрутизаторами A и C—в этом случае протяженность может быть вычислена как (4 [A,D,E,C])?(3 [A,B, C]), для протяженности 1. Как измеряется протяженность? Способ измерения протяженности зависит от того, что является наиболее важным в любой конкретной ситуации, но наиболее распространенным способом является сравнение количества прыжков в сети, как это используется в приведенных здесь примерах. В некоторых случаях может оказаться более важным рассмотреть метрику по двум путям, задержку по двум путям или какую-то другую метрику, но важно последовательно измерять ее по всем возможным путям, чтобы обеспечить точное сравнение между путями. Иногда бывает трудно отличить физическую топологию от логической. В этом случае была ли метрика канала [A,B] увеличена, потому что канал связи на самом деле является более медленной линией связи? Если да, то является ли это примером протяженности или примером простого приведения логической топологии в соответствие с физической топологией, спорно. В соответствии с этим наблюдением, гораздо проще определить политику с точки зрения протяженности, чем почти любым другим способом. Политика — это любая конфигурация, которая увеличивает протяженность сети. Использование Policy-Based Routing или Traffic Engineering для перенаправления трафика с кратчайшего физического пути на более длинный логический путь, например, для уменьшения перегрузки в определенных каналах, является политикой - она увеличивает протяженность. Увеличение протяженности — это не всегда плохо. Понимание концепции протяженности просто помогает нам понять различные другие концепции и поставить рамки вокруг компромиссов сложности и оптимизации. Самый короткий путь, с физической точки зрения, не всегда лучший путь. Протяженность, на этом рисунке, очень простая—она влияет на каждый пункт назначения и каждый пакет, проходящий через сеть. В реальном мире все гораздо сложнее. Протяженность фактически приходится на пару источник / приемник, что делает ее очень трудной для измерения в масштабах всей сети. Определение сложности: модель А Три компонента - state, optimization, и surface, являются общими практически в каждом решении по проектированию сети или протокола. Их можно рассматривать как набор компромиссов, как показано на рисунке 2 и описано в следующем списке. Увеличивающаяся оптимизация всегда движется в направлении большего количества состояний или большего количества поверхность взаимодействия. Уменьшающееся состояние всегда движется в сторону меньшей оптимизации или большего количества поверхности взаимодействия. Уменьшение поверхности взаимодействия всегда приводит к меньшей оптимизации или большему состоянию. Конечно, это не железные правила; они зависят от конкретной сети, протоколов и требований, но они, как правило, достаточно верны, чтобы сделать эту модель полезной для понимания компромиссов в сложности. Поверхность взаимодействия. Хотя понимание определения состояние и оптимизация интуитивно понятны, стоит потратить еще немного времени на понимание понятия поверхности взаимодействия. Концепция поверхностей взаимодействия трудна для понимания прежде всего потому, что она охватывает широкий спектр идей. Возможно, был бы полезен данный пример. Предположим, что функция, которая: Принимает два числа в качестве входных данных Добавляет их Умножает полученную сумму на 100 Возвращает результат Эту единственную функцию можно рассматривать как подсистему в некоторой более крупной системе. Теперь предположим, что вы разбили эту единственную функцию на две функции, одна из которых выполняет сложение, а другая-умножение. Вы создали две более простые функции (каждая из которых выполняет только одну функцию), но вы также создали поверхность взаимодействия между двумя функциями—вы создали две взаимодействующие подсистемы внутри системы, где раньше была только одна. В качестве другого примера предположим, что у вас есть две плоскости управления, работающие в одной сети. Одна из этих двух плоскостей управления несет информацию о пунктах назначения, доступных вне сети (внешние маршруты), в то время как другая несет пункты назначения, доступные внутри сети (внутренние маршруты). Хотя эти две плоскости управления являются различными системами, они все равно будут взаимодействовать многими интересными и сложными способами. Например, доступность к внешнему назначению будет обязательно зависеть от доступности к внутренним назначениям между краями сети. Эти две плоскости управления теперь должны работать вместе, чтобы построить полную таблицу информации, которая может быть использована для пересылки пакетов через сеть. Даже два маршрутизатора, взаимодействующие в пределах одной плоскости управления, могут рассматриваться как поверхность взаимодействия. Именно эта широта определения делает очень трудным определение того, что такое поверхность взаимодействия. Поверхности взаимодействия не плохая вещь. Они помогают инженерам и дизайнерам разделить и победить в любой конкретной области проблемы, от моделирования до реализации. Управление сложностью через Wasp Waist. Wasp waist, или модель песочных часов, используется во всем мире и широко имитируется в инженерном мире. Хотя инженеры не часто сознательно применяют эту модель, на самом деле она используется постоянно. На рис. 3 показана модель песочных часов в контексте четырехуровневой модели Department of Defense (DoD), которая привела к созданию пакета интернет-протоколов (IP). На нижнем уровне, физической транспортной системе, имеется широкий спектр протоколов, от Ethernet до Satellite. На верхнем уровне, где информация распределяется и представляется приложениям, существует широкий спектр протоколов, от протокола передачи гипертекста (HTTP) до TELNET. Однако, когда вы перемещаетесь к середине стека, происходит забавная вещь: количество протоколов уменьшается, создавая песочные часы. Почему это работает, чтобы контролировать сложность? Если мы вернемся к трем компонентам сложности-состоянию, поверхности и сложности, - то обнаружим связь между песочными часами и сложностью. Состояние делится песочными часами на два разных типа состояния: информация о сети и информация о данных, передаваемых по сети. В то время как верхние уровни занимаются маршалингом и представлением информации в удобной для использования форме, нижние уровни занимаются обнаружением того, какая связь существует и каковы ее свойства на самом деле. Нижним уровням не нужно знать, как форматировать кадр FTP, а верхним уровням не нужно знать, как переносить пакет по Ethernet - состояние уменьшается на обоих концах модели. Поверхности управляются путем уменьшения количества точек взаимодействия между различными компонентами до одного - Интернет-протокола (IP). Эту единственную точку взаимодействия можно четко определить с помощью процесса стандартизации, при этом изменения в одной точке взаимодействия тщательно регулируются. Оптимизация осуществляется путем разрешения одному слою проникать в другой слой, а также путем сокрытия состояния сети от приложений. Например, TCP на самом деле не знает состояния сети, кроме того, что он может собрать из локальной информации. TCP потенциально может быть гораздо более эффективным в использовании сетевых ресурсов, но только за счет нарушения уровня, которое открывает трудноуправляемые поверхности взаимодействия. Таким образом, наслоение многоуровневой сетевой модели — это прямая попытка контролировать сложность различных взаимодействующих компонентов сети. Очень простой закон сложности можно сформулировать так: в любой сложной системе будут существовать наборы трехсторонних компромиссов. Описанная здесь модель State/Optimization/Surface (SOS) является одним из таких компромиссов. Еще один, более знакомый администраторам, работающим в основном с базами данных, - это Consistency/Accessibility/Partitioning (теорема CAP). Еще один, часто встречающийся в более широком диапазоне контекстов, — это Quick /Cost/Quality (QSQ). Это не компоненты сложности, а то, что можно назвать следствиями сложности. Администраторы должны быть искусны в выявлении такого рода компромиссных треугольников, точно понимать «углы» треугольника, определять, где в плоскости возможного лежит наиболее оптимальное решение, и быть в состоянии сформулировать, почему некоторые решения просто невозможны или нежелательны. Если вы не нашли компромиссов, вы недостаточно усердно искали — это хорошее эмпирическое правило, которому следует следовать во всех инженерных работах.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59