Как преодолеть проблему несовместимости интерфейсов в компьютерных сетях
Обновлено: 21.11.2024
Совместимость – это возможность соединять устройства и обеспечивать их работу, например подключение холодильника к электросети, видеомагнитофона к телевизору или компьютера к принтеру. Совместимость — это вопрос, который важен во всех отраслях техники, особенно в компьютерной и программной инженерии. Стандартным решением для обеспечения совместимости является использование общих, хорошо понятных средств определения того, как соединить вещи вместе. Эти средства обычно называют стандартами. Стандарты, с которыми связана совместимость, — это стандарты соединения или интерфейса. Интерфейс — это место, где два устройства соединяются, общаются или взаимодействуют.
В любой стране (например, в Соединенных Штатах Америки) вы можете переехать из одного дома, взять все свои электроприборы и подключить их к электросети другого дома с уверенностью, что они будут работать без изменений. Это верно от города к городу, от штата к штату; Вы можете быть уверены, что техника будет работать. Это связано с тем, что в Соединенных Штатах существует общий стандарт для электрического интерфейса. Стандарт требует, чтобы вилки и розетки имели одинаковые контакты одинаковой формы, напряжение составляло 120 В, а частота — 60 Гц.
На самом деле в большинстве стран электрические системы построены в соответствии с общим стандартом. Однако между странами стандарты часто различаются. Следствием этого является то, что очень немногие бытовые приборы будут работать, например, при переезде из Соединенных Штатов в Австралию. Можно сказать, что системы электроснабжения США и Австралии несовместимы.
Совместимость стала серьезной проблемой в компьютерной индустрии. Есть несколько основных поставщиков компьютерных систем (например, Microsoft, Intel, Sun, Apple) и множество других компаний, желающих поставлять программное и аппаратное обеспечение, совместимое с этими основными поставщиками компьютерных систем. Раннее отсутствие совместимости между частями или компонентами компьютерных систем привело к развитию открытых систем. Интерфейсы открытых систем определяются свободно доступными общедоступными стандартами. Примером открытой системы, не связанной с компьютером, является электрическая система в Соединенных Штатах.
Открытые системы появились потому, что многие организации обнаружили, что в 1970-х и 1980-х годах было сложно экономично и эффективно создавать большие и сложные компьютерные системы. Одной из основных проблем, с которыми сталкивались большие системы, была интеграция или объединение подсистем для создания целостной системы. Основная проблема этих ранних систем заключалась в том, что желаемые компоненты не были совместимы друг с другом. Компоненты не могли правильно обмениваться информацией, и было сложно перемещать компоненты из одной системы в другую, чтобы повторно использовать компоненты.
Рождение открытых компьютерных систем произошло в результате создания надежных инфраструктур на основе стандартов (см. рис. A). Это стилизованное представление показывает элементы открытой системы с приложением, «сидящим» поверх инфраструктуры. (Возвращаясь к примеру с электрической системой, сеть электроснабжения, которая проходит по всей территории Соединенных Штатов, представляет собой инфраструктуру.) В компьютере инфраструктура представляет собой компьютерную программу, которая управляет интерфейсами между компонентами, чтобы обеспечить их правильное взаимодействие или взаимодействие. .
Важнейшей частью инфраструктуры является сетевой интерфейс. Вероятно, самой известной открытой системой является Интернет. Его разработка стала возможной только благодаря существующим стандартам сетевого интерфейса и языка, используемого для представления страниц на экране компьютера пользователя.
Стандарты имеют решающее значение для совместимости. Без соглашения между двумя или более производителями компонентов, определяющего стандарты для интерфейсов, совместимость невозможна. Возникает вопрос, готовы ли компьютерные компании к тому, чтобы эти интерфейсные документы стали публичными, свободно доступными стандартами. Компьютерные и программные компании обеспокоены тем, что либо они потеряют деньги, если не сохранят стандарт для себя, либо бюрократия общедоступного стандарта по инерции уничтожит продукт.
Возможность обновления и переносимости — важные результаты использования стандартных инфраструктур и открытых систем. Цель возможности обновления — позволить клиентам купить новый быстрый компьютер с гарантией того, что все его программное обеспечение будет работать на новом компьютере, или обновить часть программного обеспечения, чтобы все окружающее оборудование работало. То есть, если клиенты обновят свое программное обеспечение для обработки текстов, их принтеры по-прежнему будут работать правильно.
Целью переносимости является возможность переноса программного обеспечения с одного компьютера (например,, ПК с Windows) на другой компьютер (например, Macintosh или Linux) и убедитесь, что программное обеспечение работает правильно. Стандартные инфраструктуры и открытые системы помогают обеспечить возможность обновления и переносимости, поскольку они обеспечивают управление интерфейсами и осведомленность производителей об интерфейсах, поскольку они публикуются в качестве стандартов.
Производители компьютеров и операционных систем (например, Apple, Intel и Microsoft) заинтересованы в совместимости, но не обязательно придерживаются общедоступных общедоступных стандартов. Microsoft, похоже, в основном заинтересована в том, чтобы другие производители производили аппаратное и программное обеспечение, совместимое с их операционными системами. Apple, по-видимому, в основном заинтересована в том, чтобы другие производители производили программное обеспечение (но не аппаратное обеспечение), совместимое с их операционными системами. IBM и Compaq, кажется, приняли совместимость и сосредоточились на построении инфраструктур как на своем основном бизнесе. По большей части традиционные производители компьютеров, которые в настоящее время производят инфраструктуры, похоже, заинтересованы не в открытых системах, регулируемых общедоступными свободно доступными стандартами, а в контролируемой совместимости, которая позволяет им защищать свои рыночные ниши.
см. также «Устройства моста»; Устройства связи; Стандарты информационных технологий.
Джон Лини
Библиография
Рорк, Чак и Билл Кичук. «Открытые системы — процесс достижения доступности». IEEE AES. Сентябрь 1996 г., с. 15-20.
Интернет-ресурсы
«Открытый системный подход в SEI». Веб-сайт Института разработки программного обеспечения Карнеги-Меллона.
Рэймонд, К. Эталонная модель открытой распределенной обработки (RM-ODP): введение. Веб-сайт Центра технологий распределенных систем.
Ученым хотелось бы, чтобы работать с научными данными было так же просто, как бродить по Интернету, чтобы они могли сосредоточиться на алгоритмах и анализе, а не на ведении бухгалтерского учета и преобразовании форматов, которые отнимают у них так много времени. Получение данных — хлопотное дело. Ученые должны не только просеивать терабайты данных, чтобы получить несколько важных байтов, но и после просеивания часто преобразовывать эти данные в формат, который может прочитать их программное обеспечение.
Но что, если бы вы могли просеивать огромное количество доступных данных по науке о Земле и отбирать нужные фрагменты прямо в компьютерную программу для обработки так же легко, как просматривать веб-страницы? Что, если бы вся эта работа выполнялась за кулисами, так же ловко, как ваш веб-браузер ищет и представляет страницы, не беспокоя вас за помощь в организации нюансов, даже несмотря на то, что детали (текст в бесчисленных заголовках, шрифты, таблицы, столбцы; в разных форматах файлов, звуки, анимация и интерактивная анимация виртуальной реальности) серьезно сложны? Были бы мы больше в Канзасе, если бы файлы научных данных, независимо от сложности и происхождения, обрабатывались программой на вашем компьютере быстро и незаметно — и все это без вашей помощи?
"Вместо этого данные обычно записываются в различных форматах и подмножаются в соответствии с прихотью поставщиков данных, – – говорит Питер Корниллон, океанограф из Университета Род-Айленда (URI). «В одном случае я загрузил 300 мегабайт данных, чтобы получить нужные мне 13 мегабайт. Затем мне пришлось приобрести программу, способную интерпретировать данные, после чего мне пришлось перенести данные в собственное программное приложение». р>
Стремясь преодолеть эти проблемы и расширить собственные возможности для совместной работы, Корнильон, Джеймс Галлахер из URI и Гленн Флирл, профессор океанографии Массачусетского технологического института, разработали Распределенную систему океанографических данных (DODS), чтобы обеспечить доступ друг к другу. океанографические данные. DODS предоставил им легкий доступ к данным и их интерпретацию, несмотря на различия в программных приложениях. Это также упростило извлечение подмножеств данных, таких как температура воздуха и скорость ветра в определенный день.
"Мы хотели легко перемещать данные из одного места в сети в другое, не беспокоясь о том, в каком формате они были, — сказал Корнильон. «DODS позволяет вам открыть ваше программное приложение, такое как Matlab или IDL, и получить доступ к нужным вам данным, используя технологию клиент/сервер World Wide Web».
Архитектура DODS (Изображение предоставлено DODS).
Понимая, что коллеги сталкиваются с аналогичными проблемами доступа к данным и что DODS может оказаться полезным для более широкой аудитории, Корнильон и Флирл получили финансирование от НАСА и NOAA, чтобы адаптировать возможности DODS для решения проблем с данными для других ученых, которым требуются океанографические и метеорологические данные. Они проконсультировались со сторонними академическими и государственными лабораториями, чтобы определить системные требования, и разработали существующий веб-дизайн.
Поиск данных в DODS аналогичен поиску в Интернете. Пользователи, которые ищут переменные в определенном наборе данных, отправляют запрос на сервер DODS. Клиент DODS позволяет пользователю создать URL-адрес, содержащий веб-адрес сервера, а также любые соответствующие ограничения данных. Поскольку запрос DODS по своей сути содержит много информации, упакованной в одну строку URL, написание этих строк быстро усложняется. Графические пользовательские интерфейсы облегчают процесс запроса.
"Запрос может быть сделан из прикладной программы исследователя, которая отправляет URL-адрес, описывающий формат данных, имя сервера, расположение данных, имя файла, а также выражение ограничения, такое как имя переменной и диапазон данных, — сказал Корнильон. «Сервер DODS обрабатывает запрос и возвращает все необходимые данные».
"Совместимость форматов важна: DODS обеспечивает преобразование между форматом хранения данных и выбранным программным приложением, что позволяет исследователю использовать существующее прикладное программное обеспечение", – говорит Элейн Добинсон, заместитель руководителя Центра распределенных активных архивов физической океанографии НАСА. (PO.DAAC) в Лаборатории реактивного движения НАСА (JPL) в Пасадене, Калифорния.
Добинсон понял, что DODS может позволить исследователям получить доступ к обширным хранилищам данных Системы наблюдения за Землей (EOS) НАСА без необходимости разбираться в иерархическом формате данных (HDF), выбранном EOS формате хранения данных. Итак, в 1995 году Добинсон предложил JPL создать сервер HDF DODS.
«Создание HDF-сервера для данных EOS было нашей первой деятельностью, связанной с DODS. Мы обнаружили, что поиск в наборах данных DODS с использованием пространственных и временных ограничений затруднен, поэтому мы предложили создать графический пользовательский интерфейс, позволяющий пользователям выполнять поиск в DODS. системы способами, которые были им знакомы", – сказала она.
Команда JPL создала интерфейс, который послужит прототипом для калибровки рефлектометра НАСА (NSCAT), — сказал Добинсон. «Наша идея состояла в том, чтобы предоставить группе интерфейс, с помощью которого группа могла бы использовать наборы данных наземной проверки для сопоставления и проверки данных NSCAT. Мы взяли несколько наборов выборочных данных, поместили их в DODS и создали интерфейс, способный отображать пространственное и временное покрытие выбранные данные, чтобы пользователь мог выбрать подмножество данных, просто нажав кнопку", — сказала она.
Помимо интерфейса HDF JPL, интерфейс Matlab, созданный основной группой DODS, предоставляет пользователям простой список переменных и 30 наиболее запрашиваемых наборов данных.
"Сейчас доступно более 300 наборов данных, состоящих в основном из метеорологических и океанографических данных. Многие из них очень малы, но мы добавляем примерно один новый набор данных в неделю", – сказал Корнильон.
Сейчас система работает хорошо, но вскоре она станет громоздкой из-за большого количества наборов данных, – сказал Добинсон. "Необходимо создать лучший поисковый интерфейс", – сказала она.
Системные ограничения все еще существуют. Например, DODS в настоящее время работает только на машинах UNIX (хотя перенос DODS на Windows NT выполняется в JPL), и ключевые слова, описывающие переменные данных, доступны не для каждого набора данных, но каждая обнаруженная и решенная проблема увеличивает функциональность системы. система.
"На пути все еще есть неровности, пользователи столкнутся с некоторыми проблемами, но система создана, а программы, которые перемещают данные, работают уже два-три года и работают надежно. Мы работаем. на колокольчики и свистки теперь, "сказал Корнильон. "Я мечтал о том, какой будет эта система, но должен признать, я никогда не думал, что мы до нее доберемся".
Nvidia запустила облачную версию своей платформы Omniverse для 3D-моделирования. Компания также представила Omniverse .
Преодолейте сбои AWS, научившись создавать многорегиональную архитектуру, обеспечивающую отказоустойчивость в случае аварии.
Чтобы добиться высокой доступности и отказоустойчивости в AWS, ИТ-администраторы должны сначала понять различия между двумя моделями.
Хотя императивное программирование часто используется, декларативный подход оказался полезным перед лицом требований к сложным, .
На первый взгляд, разница между микроприложениями и микросервисами просто связана с проблемами внешнего интерфейса и серверной части. Но .
IDP могут предоставить продуктивную и безопасную среду для групп разработчиков. Рассмотрите все за и против, чтобы увидеть, является ли внутренний .
Опытные SRE делятся опытом эффективного использования больших объемов наблюдаемых данных из предварительной коллекции.
Преднамеренный саботаж пакета NPM в знак протеста против войны в Украине усугубляет и без того сложную угрозу цепочке поставок программного обеспечения.
Будь то создание автоматизированных инструментов для сертификации ОС или изучение eBPF как способа обеспечения безопасности цепочки поставок в домене .
Насколько хорошо вы знаете обработку исключений в Java? Эти 10 сложных вопросов с несколькими вариантами ответов для проверенных и непроверенных .
Не позволяйте возникновению RuntimeException в Java привести к остановке вашего кода. Вот 10 примеров того, как избежать .
Ключом к коду без ошибок является знание наиболее распространенных типов ошибок во время выполнения в Java, а также знание того, как их .
Считаете, что готовы к сертификационному экзамену AWS Certified Solutions Architect? Проверьте свои знания, ответив на эти 12 вопросов и.
Amazon заявила, что ее система мониторинга микроавтобусов предназначена исключительно для обеспечения безопасности водителей. Но многие отраслевые эксперты обеспокоены этим.
Amazon хотела бы укрепить свое глобальное присутствие, но гигант электронной коммерции сегодня сталкивается с препятствиями и проблемами, которых у него не было.
Сетевые каналы и компоненты могут быть ненадежными, что приводит к потере битов при передаче данных. Таким образом, важным вопросом проектирования является обеспечение того, чтобы передаваемая информация не искажалась.
Масштабируемость
Сети постоянно развиваются. Размеры постоянно увеличиваются, что приводит к перегруженности. Кроме того, когда к добавленным компонентам применяются новые технологии, это может привести к проблемам несовместимости. Следовательно, дизайн должен быть выполнен таким образом, чтобы сети были масштабируемыми и допускали такие добавления и изменения.
Адресация
В определенное время бесчисленное количество сообщений передается между большим количеством компьютеров. Таким образом, должна существовать система именования или адресации, чтобы каждый уровень мог идентифицировать отправителя и получателя каждого сообщения.
Контроль ошибок
Ненадежные каналы вносят ряд ошибок в передаваемые потоки данных. Таким образом, уровни должны согласовать общие методы обнаружения и исправления ошибок, чтобы защитить пакеты данных во время их передачи.
Управление потоком
Если скорость, с которой данные создаются отправителем, выше, чем скорость, с которой данные принимаются получателем, существует вероятность переполнения получателя. Таким образом, необходимо реализовать надлежащий механизм управления потоком.
Распределение ресурсов
Компьютерные сети предоставляют конечным пользователям услуги в виде сетевых ресурсов. Основная проблема проектирования заключается в выделении и освобождении ресурсов процессам. Выделение/освобождение должно происходить таким образом, чтобы между хостами возникали минимальные помехи, а ресурсы использовались оптимально.
Статистическое мультиплексирование
Невозможно выделить отдельный путь для каждого сообщения во время его передачи от источника к месту назначения. Таким образом, канал данных должен быть мультиплексирован, чтобы выделять часть пропускной способности или времени для каждого хоста.
Маршрутизация
От источника к месту назначения может быть несколько путей. Маршрутизация включает в себя выбор оптимального пути среди всех возможных путей с точки зрения стоимости и времени. В сетевых системах используется несколько алгоритмов маршрутизации.
Безопасность
Важным фактором передачи данных является защита от таких угроз, как прослушивание и тайное изменение сообщений. Поэтому должны быть адекватные механизмы для предотвращения несанкционированного доступа к данным посредством аутентификации и криптографии.
Читайте также: