Надежность передачи данных в сети и VPN

В этом разделе мы рассмотрим общие принципы надежной передачи данных. Это необходимо, потому что задача его реализации решается не только на транспортном, но и на сетевом и прикладном уровнях. Таким образом, вопрос надежной передачи данных актуален для сетей в целом. Если кто-то составит в Интернете список «10 самых важных вопросов», это может привести к этому. Далее мы рассмотрим TCP и покажем, в частности, что TCP использует большинство принципов, которые мы собираемся описать в этом разделе.

Служба абстракции, предоставляемая объектами верхнего уровня, обеспечивает надежный канал, по которому могут передаваться данные. При использовании надежного канала биты передаваемых данных не будут повреждены (изменены с 0 на 1 или наоборот) или потеряны, и будут доставлены в том порядке, в котором они были отправлены. Это модель обслуживания, предоставляемая TCP для Интернет-приложений, которые его используют.

Реализация такой абстракции выполняется в протоколе надежной передачи данных (rdt). Задача усложняется тем, что на самом деле уровень ниже уровня защищенного протокола данных может быть ненадежным. Например, TCP — это защищенный протокол данных, реализованный на основе ненадежного протокола соединения уровня IP. Таким образом, ниже уровня, который обеспечивает надежное соединение между двумя конечными точками, может быть один физический канал (как в случае протокола данных канального уровня) или глобальная сеть (как в случае протокола транспортного уровня). . Для достижения наших целей мы можем рассматривать этот нижний уровень просто как ненадежный канал между двумя хостами. В этом разделе мы постепенно будем развивать отправляющий узел и принимающий узел для обмена информацией о протоколе надежной передачи данных. Рассмотрим ряд моделей, в которых структура базового канала будет постепенно усложняться.

Например, мы исследуем, какие механизмы протокола использовать в случаях, когда базовый канал может повредить биты или потерять целые пакеты. Одно из предположений, на которое мы будем опираться ниже, заключается в том, что пакеты приходят на принимающий узел в том же порядке, в котором они покидают отправляющий узел, и некоторые из них могут быть потеряны. Таким образом, канал не изменит порядок пакетов. Отправляющий узел будет активирован вызовом метода rdt_send (), этот вызов выполняется с более высокого уровня. Аббревиатура rdt здесь означает «надежная передача данных», а _send указывает, что вызов поступает на отправляющий узел. Как только пакет поступит в канал на стороне получателя, узел назначения вызовет метод rdt_rcv (). Если для передачи данных на более высокий уровень требуется протокол rdt, эта проблема решается путем вызова метода Delivery_data (). Далее мы будем использовать термин «пакет», хотя на транспортном уровне такая информационная единица называется «сегментом». Дело в том, что учебный материал в этом разделе универсален для всей теории компьютерных сетей, его применение не ограничивается транспортным уровнем Интернета. Поэтому мы считаем, что здесь уместен более общий термин «пакет».

Здесь мы обсудим только случай однонаправленной передачи данных, то есть передачи данных от отправителя к принимающей стороне. Случай надежной двунаправленной (так называемой полнодуплексной) передачи данных не намного сложнее, но труднее объяснить. Хотя мы обсуждаем только одностороннюю доставку данных, важно отметить, что отправляющая и принимающая стороны нашего протокола будут столь же необходимы для передачи пакетов в обоих направлениях. Вскоре мы увидим, что и принимающая, и передающая стороны RDT, помимо данных, должны также обмениваться различной управляющей информацией. Обе стороны протокола rdt одновременно отправляют и принимают пакеты противоположной стороне, используя метод udt_send (), где udt — это сокращение от «ненадежная передача данных».

В наше неспокойное время всё больше стран начинают вводить определенные ограничения связанные с интернетом. Для обхода ограничений (например, по стране или конкретно по IP), а также с целью обеспечения анонимности\приватности в вопросе передаваемой информации — можно воспользоваться услугами VPN. Если вас интересует качественные VPN по доступной цене — стоит обратить внимание на компанию https://vpnki.ru, с услугами которой  можно ознакомиться более подробно перейдя по ссылке.

 

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *