Транспортный протокол TCP и модель TCP/IP
За время развития вычислительных сетей было предложено и реализовано много протоколов обмена данными, самыми удачными из которых явились семейство протоколов TCP/IP (Transmission Control Protocol/ Internet Protocol – протокол управления передачей/ межсетевой протокол).
TCP/IP – это набор протоколов, состоящий из следующих компонентов:
· межсетевой протокол (Internet Protocol), обеспечивающий адресацию в сетях (IP-адресацию);
· межсетевойпротоколуправлениясообщениями (InternetControlMessageProtocol – ICMP), который обеспечивает низкоуровневую поддержку протокола IP, включая такие функции, как сообщения об ошибках, квитанции, содействие в маршрутизации и т. п.;
· протоколразрешенияадресов (AddressResolutionProtocol – ARP), выполняющий преобразование логических сетевых адресов в аппаратные, а также обратный ему RARP (Reverse ARP);
· протоколпользовательскихдатаграмм (UserDatagramProtocol – UPD);
· протоколуправленияпередачей (TransmissionControlProtocol – TCP).
Протокол UDP обеспечивает передачу пакетов без проверки доставки, в то время как протокол TCP требует установления виртуального канала и соответственно подтверждения доставки пакета с повтором в случае ошибки.
Этот набор протоколов образует самую распространенную модель сетевого обмена данными, получившую название TCP/IP. Модель TCP/IP иерархическая и включает четыре уровня:
Уровень | Название | Функция |
Прикладной | Приложения пользователей, создание сообщений | |
Транспортный | Доставка данных между программами в сети | |
Сетевой | Адресация и маршрутизация | |
I | Канальный | Сетевые аппаратные средства и их драйверы |
Прикладной уровень определяет способ общения пользовательских приложений. В системах «клиент-сервер» приложение-клиент должно знать, как посылать запрос, а приложение-сервер должно знать, как ответить на запрос. Этот уровень обеспечивает такие протоколы, как HTTP, FTP, Telnet.
Транспортный уровень позволяет сетевым приложениям получать сообщения по строго определенным каналам с конкретными параметрами.
На сетевом уровне определяются адреса включенных в сеть компьютеров, выделяются логические сети и подсети, реализуется маршрутизация между ними.
На канальном уровне определяется адресация физических интерфейсов сетевых устройств, например, сетевых плат. К этому уровню относятся программы управления физическими сетевыми устройствами, так называемые драйверы.
Как уже отмечалось ранее, в сетях с коммутацией пакетов, а модель TCP/IP относится к таким, для передачи по сети сообщение (сформированное на прикладном уровне) разбивается на пакеты или датаграммы. Пакет или датаграмма – это часть сообщения с добавленным заголовком пакета или датаграммы.
На транспортном уровне к полезной информации добавляется заголовок – служебная информация. Для сетевого уровня полезной информацией является уже пакет или датаграмма транспортного уровня. К ним добавляется заголовок сетевого уровня.
Полученный блок данных называется IP-пакетом. Полезной нагрузкой для канального уровня является уже IP-пакет. Здесь перед передачей по каналу к нему добавляются собственный заголовок и еще завершитель. Получившийся блок называется кадром. Он и передается по сети.
Переданный по сети кадр в пункте назначения преобразуется в обратном порядке, проходя по уровням модели снизу вверх.