Соотношение модели TCP/IP и модели OSI
Сеть, построенная на базе стека протоколов TCP/IP, который позволяет создавать как небольшие локальные, так и глобальные сети называют IP-сетью. Частным случаем IP-сети является глобальная сеть Internet. Корпоративная IP-сеть, построенная с применением интернет-сервисов для внутреннего пользования, называется Intranet.
Одним из преимуществ сети Internet является открытость архитектуры. Стандарты Internet описаны в группе документов с общим названием RFC – Request for Comment, их можно использовать бесплатно. При этом открытость архитектуры совершенно не подразумевает отсутствие контроля. В настоящий момент ключевые глобальные службы Internet контролируются американскими организациями. Также преимуществом является не зависящая от аппаратного обеспечения схема адресации. IP-адрес назначается независимо от MAC-адреса.
В отличие от семиуровневой модели OSI, модель TCP/IP состоит из четырёх уровней
Уровень IV – уровень сетевого доступа (network access layer) соответствует физическому и канальному уровням модели OSI.
Уровень III - уровень межсетевого взаимодействия (internetwork layer)соответствует сетевому уровню модели OSI. На этом уровне находится маршрутизируемый протокол IP.
Уровень II - транспортный уровень (transport layer) соответствует транспортному уровню модели OSI. На транспортном уровне находится дейтаграммный протокол UDP и протокол TCP, обеспечивающий надёжную доставку.
Уровень I - прикладной уровень (application layer) выполняет функции трёх верхних уровней модели OSI. Протоколы прикладного уровня обеспечивают работу интернет-служб, таких как www, ftp и др. Прикладные протоколы используют TCP и UDP в качестве транспортных протоколов.
Основные протоколы прикладного уровня
HTTP
HTTP (HyperText Transfer Protocol) предназначен для обмена информацией между веб-сервером и веб-браузером. Именно появление www сыграло столь решающую роль в повсеместном развитии сети Internet. Изначально проткол http поддерживал только передачу текстовой информации, но в настоящее время при помощи http можно передавать файлы практически любых форматов. Протокол http позволяет запрашивать файлы с сервера, размещать файлы на сервере, а также удалять файлы с сервера. В отличие от ftp, протокол http не предусматривает диалога между сервером и клиентом.
HTTP-сервер использует порт 80 TCP. В ходе обмена данными между сервером и клиентов клиент устанавливает с сервером TCP-соединение, после чего отправляет на сервер http-запрос. http-сервер, получив запрос, отправляет ответ клиенту. Если используется HTTP/1.0 или HTTP/0.9, соединение закрывается. Если используется HTTP/1.1, то используя одно TCP-соединение, можно передать несколько файлов.
Существуют 3 версии http протокола: HTTP/0.9, HTTP/1.0, HTTP/1.1. Протокол HTTP/0.9 в настоящее время практически не используется. Протокол HTTP/1.0 используется редко. Протокол HTTP/1.1 используется в подавляющем большинстве случаев.
Особенность HTTP/1.1. является возможность запроса сразу нескольких файлов в рамках одного TCP-соединения, что существенно ускоряет скорость загрузки web-страницы.Также HTTP/1.1 позволяет реализовать такую возможность, как виртуальный хостинг. Сущность виртуального хостинга заключается в том, что одному и тому же адресу и номеру порта могут соответствовать несколько web-сайтов с разными доменными именами. Например, сайт http://www.host1.com и сайт http://www.host2.com могут находиться на одном и том же IP-адресе и одном и том же порту.
FTP
Протокол FTP (File Transfer Protocol) используется для передачи файлов. ftp-сервер использует 21-й порт TCP для диалога между клиентом и серевром, а 20-й порт TCP для передачи данных. Передача данных может осуществляться в 2 режимах: ASCII (текстовом) режиме, предназначенном для передачи тестовых файлов, и BINARY (двоичном) режиме, предназначенном для передачи двоичных файлов. ftp протокол поддерживает диалог между сервером и клиентом.
SMTP, POP3, IMAP
Протокол SMTP (Simple Mail Transfer Protocol) предназначен для отправки электронной почты. При разработке SMTP рассматривался как временное решение, поэтому поддерживает только передачу символов латинского алфавита и знаков препинания. Для отправки сообщений на национальных языках, а также файлов различных форматов, такие сообщения преобразуются в последовательность латинских символов. Поэтому файл, передаваемый по электронной почте, занимает больше своего первоначального размера. SMTP-сервер использует 25-й порт TCP.
Протокол POP3 (Post Office Protocol) предназначен для того, чтобы забрать почту с сервера. POP3 использует 110-й порт TCP.
Протокол IMAP позволяет управлять почтовым ящиком на сервере так, как будто он находится на локальной машине. Можно создавать и удалять каталоги, сортировать сообщения по папкам, удалять или даже перемещать сообщения на другой сервер. IMAP сервер использует порт 143 TCP.
Telnet, SSH
Протокол эмуляции терминала (telnet) позволяет управлять удалённым сервером в режиме командной строки. Т.е. пользователь, используя telnet-клиент, подключается к telnet-серверу, после чего может запускать программы или совершать какие-либо другие действия на удалённом компьютере, как если бы он находился непосредственно за клавиатурой удалённого компьютера. telnet-сервер использует порт 23 TCP
Недостатком протокола telnet является то, что данные передаются в текстовом виде, и не шифруются, что позволяет перехватить пароль.
Secure Shell Protocol (SSH) является аналогом протокола telnet, но при этом осуществляется шифровка передаваемых данных. SSH сервер использует порт 22 TCP.