Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

IP-датаграммы, IP-пакеты и IP-фрагменты

Технология | Сетевой уровень | Структура | Диапазоны адресов | Свойства | Основные применения | Уровни стека TCP/IP | Структура URL | Недостатки | Разновидности сетевых экранов |


В современной практике термин «IP-пакет» обычно используется в качестве синонима к термину «IP-датаграмма». Вместе с тем в ряде документов IETF (RFC 1812, RFC 1547, RFC 1661 и др.) между ними проводится определенное различие. Как известно, модули данных верхних уровней сетевой модели последовательно инкапсулируются в модули данных нижележащих уровней (см. Инкапсуляция). При передаче на канальный уровень IP-датаграмма может не помещаться в модуль данных канального уровня. В таком случае для инкапсуляции требуется предварительная фрагментация датаграммы для удовлетворения требований конкретной технологии уровня среды передачи данных. Таким образом, возникает ещё один термин — IP-фрагмент. Термин IP-пакет обобщает понятия IP-датаграммы и IP-фрагмента, с тем существенным условием, что он обозначает модуль данных, передаваемый канальному уровню для инкапсуляции в кадр. Можно сказать, что на сетевом уровне IP-датаграмма является инкапсулирующим модулем данных, а IP-пакет — инкапсулируемым. В частном случае они могут совпадать, в общем случае — нет, так как IP-датаграмма может дробиться на фрагменты. Не всякая датаграмма, и даже не всякий фрагмент без дополнительной фрагментации может стать IP-пакетом.

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

 

Transmission Control Protocol (TCP) (протокол управления передачей) — один из основных сетевых протоколов Интернета, предназначенный для управления передачей данных в сетях и подсетях TCP/IP.

Выполняет функции протокола транспортного уровня модели OSI.

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

Реализация TCP, как правило, встроена в ядро ОС, хотя есть и реализации TCP в контексте приложения.

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

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

Основное правило необходимое для понимания работы порта: 1) Порт может быть занят только одной программой и в этот момент не может использоваться другой. 2) Все программы для связи между собою посредством сети используют порты.

В обычной клиент-серверной модели приложение либо ожидает входящие данные (или запроса на соединение; «слушает порт»; роль сервера), либо посылает данные (или запрос на соединение) на известный порт, открытый приложением-сервером (роль клиента).

По умолчанию приложению выдается порт с произвольным (например, ближайшим свободным, большим 1023) номером. При необходимости приложение может запросить конкретный (предопределённый) номер порта. Так, веб-серверы обычно открывают для ожидания соединения предопределённый порт 80 протокола TCP.

Со́кеты — название программного интерфейса для обеспечения обмена данными между процессами. Процессы при таком обмене могут исполняться как на одной ЭВМ, так и на различных ЭВМ, связанных между собой сетью. Сокет — абстрактный объект, представляющий конечную точку соединения.

Следует различать клиентские и серверные сокеты. Клиентские сокеты грубо можно сравнить с оконечными аппаратами телефонной сети, а серверные — с коммутаторами. Клиентское приложение (например, браузер) использует только клиентские сокеты, а серверное (например, веб-сервер, которому браузер посылает запросы) — как клиентские, так и серверные сокеты.

Интерфейс сокетов впервые появился в BSD Unix. Программный интерфейс сокетов описан в стандарте POSIX.1 и в той или иной мере поддерживается всеми современными операционными системами.


Дата добавления: 2015-08-18; просмотров: 179 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Версия 6| Принципы сокетов

mybiblioteka.su - 2015-2024 год. (0.006 сек.)