Что добавляет TCP / UDP для «iphone»?

Я знаю, что TCP и UDP построены поверх IP, и я знаю различия между TCP & amp; UDP, но я смущен тем, что именно «raw ip». Было бы справедливым сказать, что TCP & amp; UDP реализуют IP, но этот IP сам по себе не способен передавать данные? Или IP - это очень низкая форма связи, которая далее абстрагируется TCP и UDP?

16 голосов | спросил John Dorian 15 FebruaryEurope/MoscowbMon, 15 Feb 2016 19:59:48 +0300000000pmMon, 15 Feb 2016 19:59:48 +030016 2016, 19:59:48

3 ответа


21

IP - это протокол уровня 3 . TCP /UDP - это протоколы уровня 4 . Каждый из них служит различным целям.

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

Уровень 4 отвечает за доставку услуг на обслуживание . Его единственной функцией является разделение потоков данных. На вашем компьютере может быть запущено несколько программ, каждый из которых отправляет /принимает бит на провод. IE: у вас может быть несколько вкладок браузера, потоковое интернет-радио, запуск загрузки, запуск некоторых юридических торрентов, использование приложения чата и т. Д. Все они получают 1 и 0 с провода, а Layer 4 разделяет каждый поток данных на уникальное приложение, которое в них нуждается. Вот иллюстрация:

 L4 разделение потоков данных

IP не может предоставить пакет правильному сервису /приложению. И TCP /UDP не может доставить пакет с одного конца Интернета на другой.

Оба TCP и IP работают вместе, чтобы они могли достичь «конечной цели» интернет-связи.

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

Эти данные передаются до L4, которые будут добавлять информацию, необходимую для доставки данных из службы в службу, например, заголовок TCP с портом Source и Destination. Заголовок Data и L4 теперь называется сегментом.

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

Этот процесс известен как инкапсуляция и деинкапсуляция (или иногда декапсуляции). Вот анимация, как это работает:

 Инкапсуляция и деинкапсуляция, используемая с разрешения Practical Networking.net

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

ответил Eddie 15 FebruaryEurope/MoscowbMon, 15 Feb 2016 22:26:36 +0300000000pmMon, 15 Feb 2016 22:26:36 +030016 2016, 22:26:36
6

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

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

UDP - довольно минимальный уровень по IP. Он добавляет номера портов для определения того, для какого сокета используются данные, и контрольной суммы (для отказа от поврежденных пакетов). Приложение остается ответственным за работу с потерянными пакетами, контроль перегрузки и разделение данных на пакеты соответствующего размера.

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

ответил Peter Green 15 FebruaryEurope/MoscowbMon, 15 Feb 2016 23:12:22 +0300000000pmMon, 15 Feb 2016 23:12:22 +030016 2016, 23:12:22
3

IP - протокол уровня OSI-3, а TCP и UDP - протоколы уровня OSI-4. Как протокол уровня 3, IP может нести много разных протоколов уровня-4. TCP и UDP, вероятно, являются наиболее распространенными, но они не единственные. Протоколы уровня 4 - это то, что приложения используют в качестве своих сквозных соединений. IP переносит протоколы уровня 4 из сети в сеть (хост-хост). Протоколы уровня 2, такие как ethernet, транспортные протоколы уровня 3 в локальной сети.

Вы должны исследовать модель OSI, но понимаете, что она является концептуальной моделью, и реальный мир часто точно не соответствует.

ответил Ron Maupin 15 FebruaryEurope/MoscowbMon, 15 Feb 2016 20:04:38 +0300000000pmMon, 15 Feb 2016 20:04:38 +030016 2016, 20:04:38

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132