Сетевая модель tcp/ip

Теория¶

Обмен информацией между компьютерами (по проводному соединению или нет) происходит путем передачи пакетов (фрагментов) данных через сеть.
Такая передача должна проходить по определённым правилам или стандартам, которые и называют протоколом передачи данных.

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

Для передачи данных в сети Интернет используется стек протоколов TCP/IP.
В протоколе TCP/IP строго описаны правила передачи информации от отправителя к получателю и обратно. Передача сообщений проходит несколько уровней, каждый из которых работает независимо от предыдущего, используя т.н. инкапсуляцию.

Уровни модели TCP/IP:

Уровень

За что отвечает

Протоколы

4 уровень — Прикладной

Формат данных, их шифрование

HTTP (веб-страницы), SMTP (почта), FTP (файлы)

3 уровень — Транспортный

Способ передачи данных

TCP, UDP

2 уровень — Сетевой

Маршрутизация в сети

IP

1 уровень — Сетевых интерфейсов

Физическая передача данных

Ethernet, Wi-Fi

Общий ход передачи информации выглядит следующим образом:

2015: Операторы связи выявили проблемы с решениями на основе TCP/IP в сетях 4G

В 2015 году несколько операторов мобильной связи выявили проблемы с технологиями на основе TCP/IP, применяемыми в 4G. Сложности связаны с неэффективным использованием спектра в результате добавления функций мобильности, безопасности, качества обслуживания и других к протоколу, который никогда для них не разрабатывался. Последующие исправления и обходные пути, предназначенные для решения этих проблем, сами стали приводят к увеличению затрат, задержкам и большему энергопотреблению. Поэтому TCP/IP был признан не оптимальным для более продвинутых услуг 5G.

Группа по протоколам следующего поколения (ISG NGP) проанализировала проблемы и предложила альтернативные решения. По результатам работы были определены требования к технологиям-кандидатам, которые заключались в сильном уменьшении размеров заголовков, времени обработки пакетов и задержки на сети, но, кроме этого, в совместимости с текущими сетями TCP/IP, SDN и MPLS.

Tcp Udp отличия

Давайте рассмотрим основные отличия tcp от udp.

  1. TCP гарантирует доставку пакетов данных в неизменных виде, последовательности и без потерь, UDP ничего не гарантирует.
  2. TCP нумерует пакеты при передаче, а UDP нет
  3. TCP работает в дуплексном режиме, в одном пакете можно отправлять информацию и подтверждать получение предыдущего пакета.
  4. TCP требует заранее установленного соединения, UDP соединения не требует, у него это просто поток данных.
  5. UDP обеспечивает более высокую скорость передачи данных.
  6. TCP надежнее и осуществляет контроль над процессом обмена данными.
  7. UDP предпочтительнее для программ, воспроизводящих потоковое видео, видеофонии и телефонии, сетевых игр.
  8. UPD не содержит функций восстановления данных

Примерами UDP приложений, например можно привести, передачу DNS зон, в Active Directory, там не требуется надежность

Очень часто такие вопросы любят спрашивать на собеседованиях, так, что очень важно знать tcp и udp отличия

Заголовок UDP

  • 16 битный порт источника > Указание порта источника для UDP необязательно. Если это поле используется, получатель может отправить ответ этому порту.
  • 16 битный порт назначения > Номер порта назначения
  • 16 битная длина UDP > Длина сообщения, включая заголовок и данные.
  • 16 битная контрольная сумма > Контрольная сумма заголовка и данных для проверки

Заголовок TCP

  • 16 битный порт источника > Номер порта источника
  • 16 битный порт назначения > Номер порта назначения
  • 32 битный последовательный номер > Последовательный номер генерируется источником и используется назначением, чтобы переупорядочить пакеты для создания исходного сообщения и отправить подтверждение источнику.
  • 32 битный номер подтверждения > Если установлен бит АСК поля «Управление», в данном поле содержит следующий ожидаемый последовательный номер.
  • 4 бита длина заголовка > Информация о начале пакета данных.
  • резерв > Резервируются для будущего использования.
  • 16 битная контрольная сумма > Контрольная сумма заголовка и данных; по ней определяется, был ли искажен пакет.
  • 16 битный указатель срочности > В этом поле целевое устройство получает информацию о срочности данных.
  • Параметры > Необязательные значения, которые указываются при необходимости.

Размер окна позволяет экономить трафик, рассмотрим когда его значение равно 1, тут на каждый отправленный ответ, отправитель ждет подтверждения, не совсем рационально.

При размере окна 3, отправитель отправляет уже по 3 кадра, и ждет от 4, который подразумевает, что все три кадра у него есть, +1.

Надеюсь у вас теперь есть представления об отличиях tcp udp протоколов.

Материал сайта pyatilistnik.org

Уровни

TCP (Transmission Control Protocol) работает поверх IP (Internet Protocol). Такой стек является независимым от физической среды передачи данных. Если проводить аналогии с базисной моделью OSI, то такая совокупность протоколов занимает три уровня из семи: от физического до сетевого. Интересно также, что рассматриваемый стек протоколов сам делится на четыре уровня — опять же если сравнивать с OSI.

Сравнение моделей OSI и TCP/IP

Cтек протоколов TCP/IP можно разделить на четыре уровня (не считая физического), если пытаться вписать модель в категоризацию OSI:

Уровень 0. Физический. Описывает среду передачи данных и физические характеристики такой среды.

Уровень 1. Канальный. Данный уровень описывает формат передачи данных через физический уровень, включая некоторое кодирование.

Уровень 2. Межсетевой. Предназначен для передачи данных из одной подсети в другую. В модели OSI нет аналога межсетевому уровню, посему достаточно сложно сравнивать две эти модели.

Уровень 3. Транспортный. Решает вопросы доставки сообщений с неподтвержденной гарантией.

Уровень 4. Прикладной. Обеспечивает работу большинства сетевых приложений.

Error Control &and Flow Control

TCP uses port numbers to know what application process it needs to handover the data segment. Along with that, it uses sequence numbers to synchronize itself with the remote host. All data segments are sent and received with sequence numbers. The Sender knows which last data segment was received by the Receiver when it gets ACK. The Receiver knows about the last segment sent by the Sender by referring to the sequence number of recently received packet.

If the sequence number of a segment recently received does not match with the sequence number the receiver was expecting, then it is discarded and NACK is sent back. If two segments arrive with the same sequence number, the TCP timestamp value is compared to make a decision.

Маршрутизация[править]

Протокол IP требует, чтобы в маршрутизации участвовали все узлы (компьютеры). Длина маршрута, по которому будет передан пакет, может меняться в зависимости от того, какие узлы будут участвовать в доставке пакета. Каждый узел принимает решение о том, куда ему отправлять пакет на основании таблицы маршрутизации (routing tables).

Определение:
Подсеть — логическое разбиение сети IP.

Маска подсетиправить

Длина префикса не выводится из IP-адреса, поэтому протоколу маршрутизации вынуждены передавать префиксы на маршрутизаторы. Иногда префиксы задаются с помощью указания длины.

Определение:
Маска подсети — двоичная маска, соответствующая длине префикса, в которой единицы указывают на сетевую часть.

То есть маска подсети определяет как будут локально интерпретироваться IP адреса в сегменте IP сети, что для нас весьма важно, поскольку определяет процесс разбивки на подсети.

Стандартная маска подсети — все сетевые биты в адресе установлены в ‘1’ и все хостовые биты установлены в ‘0’.
Выполненение операции И между маской и IP-адресом позволяет выделить сетевую часть.

О маске подсети нужно помнить три вещи:

  • Маска подсети предназначена только для локальной интерпретации локальных IP адресов (где локальный значит — в том же сетевом сегменте);
  • Маска подсети — не IP адрес — она используется для локальной модификации интерпретации IP адреса.

Бесклассовая междоменная маршрутизацияправить

Изначально использовалась классовая адресация (INET), но со второй половины 90-х годов XX века она была вытеснена бесклассовой адресацией (CIDR), при которой количество адресов в сети определяется маской подсети.

Таблицы маршрутизации со временем сильно растут, и с этим нужно что-то делать. Маршрутизатор может узнавать о расположении IP-адресов по префиксам различной длины. Но вместо того чтобы разделять сеть на подсети, мы объединим несколько коротких префиксов в один длинный. Этот процесс называется агрегацией маршрута (route aggregation). Длинный префикс, полученный в результате, иногда называют суперсетью (supernet), в противоположность подсетям с разделением блоков адресов.

При агрегации IP-адреса содержатся в префиксах различной длины. Один и тот же IP-адрес может рассматриваться одним маршрутизатором как часть блока /22 (содержащего 210 адресов), а другим — как часть более крупного блока /20 (содержащего 212 адресов). Это зависит от того, какой информацией обладает маршрутизатор. Такой метод называется CIDR (Classless InterDomain Routing — бесклассовая междоменная маршрутизация).

Также префиксы могут пересекаться. Согласно правилу, пакеты передаются в направлении самого специализированного блока, или самого длинного совпадающего префикса (longest matching prefix), в котором находится меньше всего IP-адресов.

По сути CIDR работает так:

  • Когда прибывает пакет, необходимо определить, относится ли данный адрес к данному префиксу; для этого просматривается таблица маршрутизации. Может оказаться, что по значению подойдет несколько записей. В этом случае используется самый длинный префикс. То есть если найдено совпадение для маски /20 и /24, то для выбора исходящей линии будет использоваться запись, соответствующая /24.
  • Однако этот процесс был бы трудоемким, если бы таблица маршрутизации просматривалась запись за записью. Вместо этого был разработан сложный алгоритм для ускорения процесса поиска адреса в таблице (Ruiz-Sanchez и др., 2001).
  • В маршрутизаторах, предполагающих коммерческое использование, применяются специальные чипы VLSI, в которые данные алгоритмы встроены аппаратно.

Классы IP-сетейправить

Раньше использовали классовую адресацию.

Сколько бит используется сетевым ID и сколько бит доступно для идентификации хостов (интерфейсов) в этой сети, определяется сетевыми классами.

Всего 5 классов IP-адресов: A, B, C, D, E.

Их структура и диапазоны указаны на рисунке.

Существует также специальные адреса, которые зарезервированы для ‘несвязанных’ сетей — это сети, которые используют IP, но не подключены к Internet. Вот эти адреса:

  • Одна сеть класса A: 10.0.0.0
  • 16 сетей класса B: 172.16.0.0 — 172.31.0.0
  • 256 сетей класса С: 192.168.0.0 — 192.168.255.0

Стандартные маски подсети для трех классов сетей:

  • A класс — маска подсети: 255.0.0.0
  • B класс — маска подсети: 255.255.0.0
  • C класс — маска подсети: 255.255.255.0

Connection Management

TCP communication works in Server/Client model. The client initiates the connection and the server either accepts or rejects it. Three-way handshaking is used for connection management.

Establishment

Client initiates the connection and sends the segment with a Sequence number. Server acknowledges it back with its own Sequence number and ACK of client’s segment which is one more than client’s Sequence number. Client after receiving ACK of its segment sends an acknowledgement of Server’s response.

Release

Either of server and client can send TCP segment with FIN flag set to 1. When the receiving end responds it back by ACKnowledging FIN, that direction of TCP communication is closed and connection is released.

Пример переноса данных в IP-сети

На примере IP-сети (рис. 2) покажем перенос данных оконечной станции А локальной вычислительной сети (подсети) Ethernet в оконечную станцию В сети (подсети) АТМ. Как видно из рисунка в эту составную сеть еще входит сеть (подсеть) Frame Relay. В основу приведенного упрощенного описания положен пример межсетевого взаимодействия сетей Ethernet и АТМ, приведенный в работе . Дополнительно в эту составную сеть введена сеть (подсеть) Frame Relay. Принцип маршрутизации и краткое описание протоколов маршрутизации в сети Интернет приведены в следующей главе. Для того, чтобы технология TCP/IP могла решать задачу объединения сетей, ей необходима собственная глобальная система адресации, не зависящая от способов адресации узлов в отдельных подсетях. Таким адресом является IP-адрес, состоящий из адреса подсети (префикса) и адреса оконечного устройства (хоста). Приведем пример адресации подсети и хоста. IP-адрес 200.15.45.126/25 означает, что 25 старших бит из выделенных 4-х байт под адресацию являются адресом подсети, а оставшиеся 7 бит означают адрес хоста в этой сети.

Как видно из предыдущих глав, глобальные сети Frame Relay и АТМ имеют различные системы нумерации, которые отличаются от системы нумерации локальной вычислительной сети (ЛВС) технологии Ethernet. Каждый компьютер Ethernet имеет уникальный физический адрес, состоящий из 48 бит. Этот адрес называется МАС-адресом и относится к канальному уровню — управлению доступом к среде MAC (Media Access Control). Для организации межсетевого взаимодействия подсетей различной технологии и адресации используются маршрутизаторы, включающие IP-пакеты. В состав этих пакетов входят глобальные IP-адреса. Каждый интерфейс маршрутизатора IP-сети и оконечного устройства включает два адреса – локальный адрес оконечного устройства подсети и IP-адрес.

Рассмотрим продвижение IP-пакета в сети (рис. 2).

  1. Пользователь компьютера А сети Ethernet, имеющий IP-адрес (IP-адрес 1), обращается по протоколу передачи файла FTP к компьютеру В, подключенному к сети АТМ и имеющий IP-адрес (IP-адрес 6).
  2. Компьютер А формирует кадр Ethernet для отправки IP-пакета. По таблице маршрутизации в компьютере А на основании IP-адресов А и В определятся маршрутизатор М1 и входящий интерфейс для передачи этого IP-пакета. При этом становится известен IP-адрес интерфейса маршрутизатора М1(IP-адрес 2).
  3. Компьютер А отправляет по сети Ethernet IP-пакет, инкапсулированный в кадр Ethernet и включающий следующие поля (рис. 3).

Восстановление после ошибок TCP

Чтобы понять, что делают протоколы транспортного уровня, вы должны вспомнить об уровне выше транспортного уровня, об уровне приложений. Зачем? Каждый уровень предоставляет услуги вышестоящему уровню, например, восстановление после ошибок, предоставляемое протоколом TCP протоколам прикладного уровня.

Например, Роб и Гарри использовали HTTP для передачи домашней страницы с веб-сервера Гарри в веб-браузер Роба (). Но что произошло бы, если бы HTTP-запрос GET Роба был потерян при передаче через сеть TCP/IP? Или что произошло бы, если бы ответ Гарри, в который входил контент домашней страницы, был утерян? Как и следовало ожидать, в любом случае страница не отобразилась бы в браузере Роба.

TCP/IP нуждается в механизме, гарантирующем доставку данных через сеть. Поскольку, возможно, многим протоколам прикладного уровня необходим способ, гарантировать доставку данных по сети, создатели TCP добавили в него функцию восстановления после ошибок. Для восстановления после ошибок TCP использует концепцию подтверждений. На рисунке 1 представлена основная идея того, как TCP обнаруживает потерянные данные и просит отправителя попробовать передать их снова.

Рисунок 1 – Служба восстановления после ошибок TCP, предоставленная протоколу HTTP

На рисунке 1 показан веб-сервер Гарри, отправляющий веб-страницу веб-браузеру Роба, используя три отдельных сообщения

Обратите внимание, что на этом рисунке показаны те же заголовки HTTP, что и на , а также на нем показаны заголовки TCP. В заголовках TCP показан порядковый номер () каждого сообщения

В данном примере в сети возникла проблема, и сеть не может доставить сообщение TCP (называемое сегментом) с порядковым номером 2. Когда Роб получает сообщения с порядковыми номерами 1 и 3, но не получает сообщение с порядковым номером 2, он понимает, что сообщение 2 было потеряно. Эта реализация TCP-логики заставляет Роба отправить TCP-сегмент обратно Гарри с просьбой снова отправить сообщение 2.

Названия слоев и количество слоев в литературе

В следующей таблице показаны различные сетевые модели. Количество слоев варьируется от трех до семи.

RFC 1122, Internet STD 3 (1989) Академия Cisco Куросе, Форузан Комер, Козерок Киоски Таненбаум Эталонная модель Arpanet (RFC 871) Модель OSI
Четыре слоя Четыре слоя Пять слоев Четыре + один слой Пять слоев Пять слоев Три слоя Семь слоев
«Интернет-модель» «Интернет-модель» «Пятиуровневая модель Интернета» или «Набор протоколов TCP / IP» «Пятиуровневая эталонная модель TCP / IP» «Модель TCP / IP» «Пятиуровневая эталонная модель TCP / IP» «Эталонная модель Арпанет» Модель OSI
заявка заявка заявка заявка заявка заявка Прикладной процесс заявка
Презентация
Сессия
Транспорт Транспорт Транспорт Транспорт Хост-хост или транспорт Транспорт Хост-хост Транспорт
Интернет Межсетевое взаимодействие Сеть Интернет Интернет Интернет Сеть
Ссылка Сетевой интерфейс Канал передачи данных Канал передачи данных (сетевой интерфейс) Доступ к сети Канал передачи данных Сетевой интерфейс Канал передачи данных
Физический (Аппаратное обеспечение) Физический Физический Физический

Некоторые сетевые модели взяты из учебников, которые являются вторичными источниками, которые могут противоречить цели RFC 1122 и других первичных источников IETF .

IP[править]

IP — протокол, лежащий в основе Интернета, его название так и расшифровывается: Internet Protocol.

В настоящее время используются следующие две версии протокола IP:

  • IPv6 — сравнительно новая (текущая версия спецификации опубликована в декабре 1998); IP-адрес имеет разрядность 128 бит и записывается в виде восьми 16-битных полей, с использованием шестнадцатеричной системы счисления и с возможностью сокращения двух и более последовательных нулевых полей до ; пример: ;
  • IPv4 — «классическая» (1981 г.); IP-адрес имеет разрядность 32 бита и записывается в виде четырех десятичных чисел в диапазоне 0 … 255 через точку; пример: .

Каждый узел может напрямую связаться только с узлами своей сети (например: подключенными к тому же сегменту Ethernet), для определения которых используется адрес сети — часть IP-адреса, определяемая маской сети. Связь с узлами других сетей осуществляется через промежуточные узлы — маршрутизаторы.

Посмотреть, как выглядит маршрут пакета от вашего компьютера к другим узлам, можно с помощью команды traceroute (в Linux) или tracert (в Windows).

Давайте сначала поговорим об UDP

Давайте посмотрим на заголовок UDP

Как видно из рисунка выше, UDP в основном не имеет ничего, кроме номера порта. Без этих двух номеров порта данные не знают, в какое приложение отправлять.

Следовательно, UDP похож на монаха, без желаний и желаний, и он очень прост, но имеет следующие три характеристики:

  1. Простое общение, отсутствие необходимости в большом количестве структуры данных, логики обработки и полей заголовка
  2. Верьте в других. Он не будет устанавливать соединение, но будет контролировать это место. Любой может отправлять ему данные, он также может отправлять данные кому угодно или даже нескольким людям одновременно.
  3. Замороженный, не умею быть гибким. Контроль перегрузки не будет выполняться в зависимости от ситуации в сети, независимо от того, потерян ли пакет, как его следует отправить или как его отправить. Поскольку UDP является «дочерним», он имеет дело с некоторыми проектами, которые не так уж сложны, и даже в случае сбоя его можно получить. Исходя из этих характеристик, UDP можно использовать в следующих сценариях.

Наконец, давайте поговорим об основных сценариях применения UDP.

  1. Интрасеть с небольшим количеством ресурсов и стабильными сетевыми условиями или приложения, не чувствительные к потере пакетов, такие как DHCP, основаны на протоколе UDP.
  2. Для установления соединения нет необходимости в личном общении, а требуется приложение, которое может транслировать. Поскольку он не ориентирован на соединение, он может работать по принципу «один ко многим» и использовать протоколы широковещательной или многоадресной рассылки.
  3. Он должен обрабатываться быстро и может допускать потерю пакетов, но даже если сеть перегружена, он не сокращается назад и никогда не продвигается вперед.

Наконец, несколько примеров на основе UDP

  1. Прямой эфир. Прямая трансляция предъявляет относительно высокие требования к производительности в реальном времени. Она скорее потеряет пакеты, чем зависнет, поэтому многие приложения для прямой трансляции реализовали свои собственные протоколы передачи видео на основе UDP.
  2. Игры в реальном времени. Игра также отличается высокой производительностью в реальном времени. В этом случае использование настраиваемого и надежного протокола UDP и настраиваемой стратегии повторной передачи может минимизировать задержку и снизить влияние сетевых проблем на игру.
  3. Интернет вещей. С одной стороны, в области Интернета вещей мало ресурсов для прерывания, и вполне вероятно, что знания о встроенной системе очень малы, а стоимость поддержки протокола TCP слишком велика; с другой стороны, Интернет вещей предъявляет особенно высокие требования к производительности в реальном времени. Например, группа Google Nest Resume Thread Group запустила протокол передачи данных Интернета вещей Thread, который основан на протоколе UDP.

Капли пакетов

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

Одновременные сетевые трассировки источника и назначения помогут вам проверить это поведение, если на стороне источника вы увидите, что пакеты перенаправлены, а в пункте назначения ни один из этих пакетов не будет замечен. Это означает, что сетевое устройство между источником и пунктом назначения сбрасывает пакеты.

Если начальное рукопожатие TCP не удается из-за перепадов пакетов, вы увидите, что пакет TCP SYN переназначяется только три раза.

Источник, подключающийся к порту 445:

Сторона назначения: применяя тот же фильтр, пакеты не видятся.

Для остальных данных TCP повторно передает пакеты пять раз.

След сторон 192.168.1.62:

Боковой след назначения 192.168.1.2:

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

Если вы видите, что пакеты SYN достигают пункта назначения, но пункт назначения по-прежнему не отвечает, убедитесь, что порт, к который вы пытаетесь подключиться, находится в состоянии прослушивания. (Выход Netstat поможет). Если порт прослушивается, а ответа нет, может произойть падение WFP.

Прикладные протоколы[править]

Большинство прикладных протоколов базируется на TCP.

У многих протоколов прикладного уровня для серверов определены стандартные порты, используемые по умолчанию. Самые известные прикладные протоколы и их стандартные порты:

  • HTTP — основной протокол всемирной паутины (TCP-порт 80)
  • SMTP — протокол пересылки почты (TCP-порт 25)
  • FTP — протокол передачи файлов (TCP-порт 21)
  • DNS — протокол сопоставления доменных имен IP-адресам (UDP-порт 53)

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

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

Порты в диапазоне от 1 до 1023 называются хорошо известными. Службы, которыми используются эти порты, должны быть описаны как RFC и одобрены IESG. Далее идут зарегистрированные порты (1024 — 49151). Вы можете зарегистрировать в IANA (эта организация как раз занимается всем этим) один или несколько из этих портов под свою программу. Оставшиеся порты с 49152 по 65535 можно использовать без какой-либо регистрации.

Номера портов (IANA)

Создание TCP сессии

Для установления соединения использует трехкратное рукопожатие.

Первый этап. Клиент отправляет на сервер пакет с флагом SYN. При этом клиент устанавливает порядковый номер сегмента на случайное значение A.

Второй этап. В ответ сервер отвечает пакетом с флагами SYN и ACK. Номер подтверждения установлен на единицу больше принятого (A+1). Поскольку сервер также будет отправлять данные, то для себя он тоже выбирает номер первого пакета, который будет другим случайным числом B.

Третий этап. Клиент отправляет ACK на сервер. Порядковый номер устанавливается равным A+1, а номер подтверждения устанавливается на B+1.

На этом этапе клиент и сервер получили подтверждение соединения и образовали двухстороннюю связь.

Сетевые протоколы UDP, TCP, ICMP

В рамках протокола TCP/IP для передачи данных используются протоколы — TCP и UDP. Многие наверняка слышали, что есть порты как TCP, так и UDP, но не все знают в чем разница и что это вообще. И так..

Передача данных по протоколу TCP (Transmission Control Protocol — Протокол Управления Передачей) предусматривает наличие подтверждений получения информации. «-Ну, мол, — получил? -Получил!» Если же передающая сторона не получит в установленные сроки необходимого подтверждения, то данные будут переданы повторно. Поэтому протокол TCP относят к протоколам, предусматривающим соединение, а UDP (User Datagram Protocol — Протокол Пользовательских Датаграмм) — нет. UDP применяется в тех случаях, когда не требуется подтверждения приема (например, DNS-запросы или IP-телефония (яркий представитель которой, — Skype) ). То есть разница заключается в наличии подтверждения приема. Казалось бы «Всего то!», но на практике это играет важную роль.

Есть еще так же протокол ICMP (Internet Control Message Protocol — межсетевой протокол управляющих сообщений), который используется для передачи данных о параметрах сети. Он включает в себя служебные типы пакетов, таки как ping, distination unreachable, TTL и пр.

1977: Первое испытание сети по сценарию: СССР нападает на Европу

Из книги Яши Левина «Интернет как оружие» (2019 г):

Первое успешное испытание сети с протоколом TCP/IP, состоявшееся 22 ноября 1977 года, имитировало военный сценарий: при помощи спутниковых, кабельных и радиосетей поддерживалась связь с активной мобильной частью, ведущей бои против вторгшихся в Европу условных советских войск. Старый развозной фургон GMC, который стэнфордские специалисты напичкали радиоаппаратурой, играл роль моторизованной дивизии НАТО и ездил туда-сюда по шоссе рядом со Стэнфордом, посылая данные через радиосеть ARPANET. Затем они переправлялись по спутниковой сети ARPA в Европу — через Швецию и Лондон, после чего возвращались в США, в Калифорнийский университет в Лос-Анджелесе, по спутниковым и кабельным каналам ARPA.

Шлюзы по умолчанию

Если компьютер tCP/IP должен общаться с хостом в другой сети, он обычно общается с помощью устройства, называемого маршрутизатором. В терминах TCP/IP маршрутизатор, указанный в хосте, который связывает подсеть хостов с другими сетями, называется шлюзом по умолчанию. В этом разделе объясняется, как TCP/IP определяет, отправлять ли пакеты в шлюз по умолчанию для достижения другого компьютера или устройства в сети.

Когда хост пытается взаимодействовать с другим устройством с помощью TCP/IP, он выполняет процесс сравнения с помощью определенной подсети и IP-адреса назначения по сравнению с подсети и собственным IP-адресом. В результате этого сравнения компьютеру сообщается, является ли назначение локальным хостом или удаленным хостом.

Если в результате этого процесса определяется назначение локального хоста, компьютер отправляет пакет в локальной подсети. Если в результате сравнения определяется назначение удаленного хоста, компьютер перенаправлен пакет в шлюз по умолчанию, определенный в свойствах TCP/IP. После этого маршрутизатор несет ответственность за перенаправку пакета в правильную подсеть.

The Network Interface Layer

Network Interface Layer is this layer of the four-layer TCP/IP model. This layer is also called a network access layer. It helps you to defines details of how data should be sent using the network.

It also includes how bits should optically be signaled by hardware devices which directly interfaces with a network medium, like coaxial, optical, coaxial, fiber, or twisted-pair cables.

A network layer is a combination of the data line and defined in the article of OSI reference model. This layer defines how the data should be sent physically through the network. This layer is responsible for the transmission of the data between two devices on the same network.

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

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

Adblock
detector