img

Проблемы и решения транспортировки данных

21 ноября
20:00
Бесплатный вебинар
Введение в Docker
Ведущий — Филипп Игнатенко.
Руководитель центра разработки
Записаться
img
img

Пятая часть тут.

Когда транспортные протоколы «мечтают», они «мечтают» о приложениях? Скорее всего они должны это делать, поскольку основная цель сети - поддержка приложений, а основным ресурсом, который требуется приложениям из сети, являются данные, перемещаемые из одного процесса (или процессора) в другой. Но как можно передавать данные по проводу, по воздуху или по оптическому кабелю?

Проблемы и решения транспортировки данных

Пожалуй, лучше всего начать с более привычного примера: человеческого языка. Данные лекции написаны с использованием форматирования, языка и слов, позволяющего вам читать и понимать представленную информацию. Какие проблемы нужно преодолеть языку, чтобы общение, письменность и чтение стали возможными?


Мысли должны быть записаны в форме, которая позволяет их воспринимать получателем.

В человеческих языках информация упаковывается в слова, предложения, абзацы, главы и книги. Каждый уровень этого подразделения предполагает определенную единицу информации и определенную организационную систему. Например, звуки или идеи инкапсулируются в буквы или символы; звуки или идеи затем объединяются в слова; слова объединяются в предложения и т. д. Предложения следуют определенной грамматической форме, поэтому вы можете расшифровать значение символов. Такое кодирование мыслей и информации в символы, которое позволяет читателю (получателю) восстановить исходное значение, будет называться маршалингом данных в этих лекциях. Одним из аспектов маршалинга является определение-процесс привязки одного набора символов к определенному значению. Метаданные, или данные о данных, позволяют понять, как интерпретировать информацию в потоке.


Должен быть какой-то способ управления ошибками при передаче или приеме.

Предположим, у вас есть домашняя собака, которая любит гоняться за мячиком. Однажды мяч улетает на улицу. Собака мчится за мячиком и, кажется, она попадет под движущийся автомобиль. Что вы делаете? Возможно, вы кричите ей «Стоп!» — а потом, может быть, «Нет!» — и, возможно, «Остановись!». Использование нескольких команд, которые должны привести к одному и тому же действию - собака должна остановиться перед тем, как выбежать на улицу, - чтобы убедиться, что собака правильно получила и поняла сообщение. Вы надеетесь, что, если вы отправите несколько сообщений, вы убедитесь в том, что вы говорите, поймет собака, и у вас с ней нет недопонимания.

Это, по сути, форма исправления ошибок. Существует много видов исправления ошибок, встроенных в человеческий язык. Человеческие языки более точно определяют информацию, которую они содержат, поэтому несколько пропущенных букв не приводят к потере всего сообщения. Эта избыточная спецификация может рассматриваться как форма прямого исправления ошибок. Однако это не единственная форма исправления ошибок, которую содержат человеческие языки. Они также содержат вопросы, которые могут быть заданы для проверки, подтверждения или получения недостающих битов или контекста информации, ранее «переданной» через язык.


Должен быть какой—то способ поговорить с одним человеком или небольшой группой людей в большой толпе, используя единственную среду—воздух.

Это не редкость, когда нужно поговорить с одним человеком из комнаты, полной людей. Человеческий язык создал способы решения этой проблемы во многих ситуациях, например, называя чье-то имя или говоря достаточно громко, чтобы быть услышанным человеком, с которым вы непосредственно сталкиваетесь (другими словами, реализация языка может быть направленной). Способность говорить с одним человеком среди многих или с определенным подмножеством людей — это мультиплексирование.


Наконец, должен быть какой-то способ контролировать ход разговора.

С книгой все просто: писатель создает текст по частям, которые затем собираются в формат, который читатель может читать и перечитывать в совершенно ином темпе. Не многие люди думают о книге как о форме управления потоком, но перевод мыслей в письменную форму — это эффективный способ отключить скорость отправителя (скорость письма) от скорости получателя (скорость чтения). Разговорная речь имеет другие формы управления потоком, и остекленевший взгляд в глазах слушателя, когда он потерял линию рассуждения, за которой следует говорящий, или даже физические жесты, указывающие, что говорящий должен замедлиться.

Подводя итог, успешные системы связи должны решить четыре проблемы:

  • Упорядочивание данных; преобразование идей в символы и грамматику, понятную получателю
  • Управление ошибками, чтобы идеи правильно передавались от отправителя к получателю
  • Мультиплексирование или предоставление возможности использовать общую среду или инфраструктуру для разговоров между различными парами отправителей и получателей.
  • Управление потоком, или возможность убедиться, что получатель действительно получает и обрабатывает информацию, прежде чем отправитель передаст больше данных.
Ссылка
скопирована
Получите бесплатные уроки на наших курсах
Все курсы
DevOps
Скидка 25%
DevOps-инженер с нуля
Научитесь использовать инструменты и методы DevOps для автоматизации тестирования, сборки и развертывания кода, управления инфраструктурой и ускорения процесса доставки продуктов в продакшн. Станьте желанным специалистом в IT-индустрии и претендуйте на работу с высокой заработной платой.
Получи бесплатный
вводный урок!
Пожалуйста, укажите корректный e-mail
отправили вводный урок на твой e-mail!
Получи все материалы в telegram и ускорь обучение!
img
Еще по теме:
img
В начале 2000-х, когда идея мессенджеров только формировалась, расширяемый протокол обмена сообщениями и информацией о присутств
img
Задержка в сети, или сетевая задержка, - это временная задержка при передаче запросов или данных от источника к адресату в сетев
img
Система доменных имен (DNS – Domain Name System) обеспечивает сетевую коммуникацию. DNS может показаться какой-то невидимой сило
img
Wi-Fi это технология, которая использует радиоволны для отправки и получения сигналов от находящихся поблизости устройств, чтобы
img
BGP (Border Gateway Protocol) - это протокол граничного шлюза, предназначенный для обмена информацией о маршрутизации и доступно
img
Когда читаете данную статью, браузер подключается к провайдеру (или ISP) а пакеты, отправленные с компьютера, находят путь до се
21 ноября
20:00
Бесплатный вебинар
Введение в Docker