Почему мы говорим, что IP-протокол в пакете TCP / IP без установления соединения? - PullRequest
12 голосов
/ 26 декабря 2010

Почему IP называется протоколом без установления соединения?Если да, то что такое протокол с установлением соединения?

Спасибо.

Обновление - 1 - 20:21 2010/12/26

Думаю, чтобы лучше ответитьНа мой вопрос, было бы лучше объяснить, что на самом деле означает «соединение», как физически, так и логически.

Обновление - 2 - 9:59 2/1/2013

На основе всехОтветы ниже, я чувствую, что упомянутое здесь «соединение» следует рассматривать как набор действий / мероприятий / дисциплин.Таким образом, это скорее абстрактное понятие, а не конкретный объект.

Обновление - 3 - 11:35 6/18/2015

Вот более физическое объяснение:

  • Протокол IP не требует установления соединения, так как все пакеты в IP-сети маршрутизируются независимо, они могут не обязательно проходить по одному и тому же маршруту, а в виртуальной коммутационной сети, ориентированной на соединение, все пакеты проходят по одному и тому же маршруту.Этот единственный маршрут и означает «виртуальный канал».

  • При подключении, поскольку существует только 1 маршрут, все пакеты данных будут поступать в том же порядке, в котором они были отправлены.

  • Без подключения не гарантируется, что все пакеты данных будут доставлены в том же порядке, в котором они были отправлены.

Обновление - 4 - 9:55AM 2016/1/20 / ср.

Одной из характеристик connection-oriented является то, что порядок пакетов сохраняется.TCP использует порядковый номер для достижения этой цели, но IP не имеет такой возможности.Таким образом, TCP ориентирован на соединение, а IP - без соединения.

Ответы [ 7 ]

14 голосов
/ 26 декабря 2010

Основная идея довольно проста: с IP (сам по себе - без TCP, UDP и т. Д.) Вы просто отправляете пакет данных.Вы просто отправляете данные в сеть с адресом назначения, но это все.Сам по себе IP не дает:

  1. никаких гарантий того, что оно будет доставлено
  2. , и нет способа узнать, было ли это
  3. , и ничего не сообщать получателю.ожидать пакет
  4. много чего еще

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

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

9 голосов
/ 26 декабря 2010

TCP / IP означает «TCP через IP».

TCP
--
IP
  • TCP обеспечивает "ориентированную на соединение" логику, упорядочение и управление
  • IP обеспечивает получение пакетов от A до B, однако может: «без установления соединения»

Примечания:

  • UDP меньше соединения, но на том же уровне, что и TCP
  • Другие протоколы, такие как ICMP (используемый ping), могут работать по IP, но не имеют ничего общего с TCP

Edit:

  • «ориентированный на соединение» означает установленное сквозное соединение. Например, вы берете трубку, звоните кому-то = у вас есть соединение.

  • «без соединения» означает «отправь, посмотри, что получится». Например, отправка письма по обычной почте mail.a

Таким образом, IP передает ваши пакеты от A до B, возможно, в любом порядке, не всегда в конце концов. TCP сортирует их, подтверждает их, запрашивает повторную отправку и предоставляет «соединение»

2 голосов
/ 26 декабря 2010

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

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

Протоколы без установления соединения (например, IP и UDP) используются, например, с видеоконференцсвязью, когда вам не важно, потеряны ли некоторые пакеты, а при отправке необходимо использовать протокол с установлением соединения (например, TCP). файл, потому что вы хотите убедиться, что все пакеты отправлены успешно (фактически мы используем FTP для передачи файлов).

Редактировать :

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

Физическое соединение - это уровень 1 модель OSI, и является средой через который передаются данные. то есть кабели

Логическая связь - это уровень 3 модель OSI и сеть часть. Использование интернета Протокол (IP), каждому хосту назначается 32-битный IP-адрес. например 192.168.1.1

2 голосов
/ 26 декабря 2010

TCP является частью соединения TCP / IP.IP - это адресация.

Или, как аналогия, IP - это адрес, записанный на конверте, TCP - почтовая система, которая использует адрес как часть работы по доставке конверта из пункта А в пункт Б.

1 голос
/ 19 января 2016

Насколько я знаю, каждый слой делает дурака над тем, что над ним. TCP получает HTTP-сообщение от прикладного уровня и разбивает его на пакеты. Позволяет называть их пакетами данных. IP получает эти пакеты один за другим из TCP и выбрасывает их к месту назначения; Кроме того, он собирает входящий пакет и доставляет его в TCP. Теперь TCP после отправки пакета ожидает пакет подтверждения с другой стороны. Если это произойдет, то будет сказано, что вышеприведенный слой говорит: «Эй, я установил соединение, и теперь мы можем общаться! Весь процесс связи происходит между уровнями TCP на обеих сторонах, отправляя и получая различные типы пакетов друг с другом (такие как пакет данных, пакет подтверждения, пакет синхронизации, пакет бла-бла). Он использует другие приемы (отправка всех пакетов), чтобы гарантировать фактическую доставку пакетов данных в упорядоченном виде, поскольку они были разбиты и собраны. После сборки он переносит их на вышеуказанный прикладной уровень. Этот дурак думает, что он получил HTTP-сообщение в установленном соединении, но на самом деле передаются только пакеты.

1 голос
/ 26 декабря 2010

Когда два хоста хотят установить связь по протоколу, ориентированному на соединение, один из них должен сначала инициировать соединение, а другой - принять его. Логически устанавливается соединение между портом на одном хосте и другим портом на другом хосте. Программное обеспечение на одном хосте должно выполнять операцию подключения через сокет, а другой должен выполнять операцию принятия через сокет. Физически хост-инициатор отправляет пакет SYN, который содержит все четыре идентифицирующих номера соединения (IP-адрес источника, порт источника, IP-адрес назначения, порт назначения). Другой получает его и отправляет SYN-ACK, инициатор отправляет ACK, затем соединение устанавливается. После установления соединения данные могут передаваться в обоих направлениях. С другой стороны, протокол без установления соединения означает, что нам не нужно устанавливать соединение для отправки данных. Это означает, что первый пакет, отправляемый с одного хоста на другой, может содержать полезные данные. Конечно, для протоколов верхнего уровня, таких как UDP, получатель должен быть готов в первую очередь (например, он должен выполнить операцию прослушивания сокета udp).

  • IP без установления соединения стал основой для TCP на уровне выше
  • В TCP при минимальном двухкратном времени прохождения в оба конца требуется отправить только один пакет данных. То есть: a-> b для SYN, b-> a для SYN-ACK, a-> b для ACK с данными, b-> a для ACK. Для контроля скорости потока применяется алгоритм Нейгла.
  • В UDP требуется только 0,5 кругового обхода: a-> b с DATA. Но будьте готовы, что некоторые пакеты могут быть незаметно потеряны, и управление потоком не выполняется. Пакеты могут быть отправлены со скоростью, превышающей возможности принимающей системы.
0 голосов
/ 27 июля 2012

Я только что столкнулся с этим вопросом сегодня. Он весь день подпрыгивал в моей голове и не имел никакого смысла. IP не обрабатывает транспорт. Зачем кому-то даже думать об IP как о соединении без установления соединения или как о соединении? Это технически без соединения, потому что это не предлагает никакой надежности, никакой гарантированной доставки. Но мой тостер тоже. Мой тостер не предлагает гарантированную доставку, так почему бы не позвонить и на тостер без установления соединения?

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

Вызов IP без установления соединения подразумевает, что существует еще один протокол уровня 3, ориентированный на установление соединения, но, насколько я знаю, его нет, и просто глупо указывать, что IP не имеет соединения. MAC не имеет соединения. ООО не подключено. Но это бесполезная, технически правильная информация.

...