Протоколы TCP/IP были разработаны задолго до эталонной модели OSI, но они также разделены на несколько уровней. Вообще, распределение сетевых функций компьютера на несколько отдельных протоколов по сравнению с созданием единого «монолитного» протокола обладает рядом преимуществ.
- Независимость от платформы. Разделение протоколов облегчает поддержку разнообразных вычислительных платформ. Создание или модернизация протоколов для поддержки новых стандартов физического уровня или сетевых интерфейсов прикладного программирования (Application Programming Interface, API) не требуют модификаций всего стека.
- Эффективность работы. Благодаря наличию на одном и том же уровне нескольких протоколов, приложение может выбрать из них один, наилучшим образом отвечающий поставленной задаче.
- Одновременная разработка. Благодаря разбиению стека на уровни разработка различных протоколов может происходить одновременно, с привлечением наиболее разбирающихся в функциях данного уровня специалистов.
Примечание Подробнее о модели OSI и назначении ее уровней — в занятии 2 главы 1.
В TCP/IP используется собственная четырехуровневая модель сети, описанная в RFC 1122. Приблизительное соответствие этих Уровней модели OSI показано на рис. 8.1.
Ниже перечислены четыре уровня TCP/IP.
- Уровень сетевого интерфейса (Link). В набор TCP/IP входят несколько простейших протоколов сетевого уровня, например, SLIP (Serial Line Internet Protocol) и РРР (Point-to-Point Protocol). А вот спецификаций физического уровня или сложных протоколов для локальных компьютерных сетей, наподобие Ethernet и Token Ring, TCP/IP не содержит. Поэтому, несмотря на наличие в TCP/IP уровня, подобного канальному уровню OSI, чаще всего протокол, действующий на этом уровне, не входит в набор TCP/IP. Зато в него входит протокол ARP (Address Resolution Protocol), о котором можно сказать, что он (хотя бы частично) действует на канальном уровне, поскольку обслуживает межсетевой уровень, расположенный над канальным.
- Межсетевой уровень (Internet). Эквивалентен сетевому уровню] модели OSI. Главный протокол этого уровня — IP (Internet Protocol). Он предоставляет расположенному над ним транспортному уровню услуги по инкапсуляции данных, маршрутизации, адресации и фрагментации пакетов. На этом же уровне действуют еще два протокола — ICMP (internet Control Message Protocol) и IGMP (Internet Group Message Protocol). Обратите внимание, что слово «internet» в английском названии этого уровня обозначает именно «межсетевой», а не Интернет. Не путайте два этих термина.
- Транспортный уровень (Transport). Эквивалент одноименного уровня модели OSI. В наборе TCP/IP на этом уровне действует два протокола — TCP (Transmission Control Protocol) и UDP (User Datagram Protocol), которые выполняют операции по передаче данных, соответственно, ориентированные и не ориентированные на соединение.
- Прикладной уровень (Application). Протоколы TCP/IP на этом уровне бывают нескольких видов. Некоторые, например, FTP (File Transfer Protocol), сами являются приложениями, другие, например, HTTP (Hypertext Transfer Protocol), обслуживают приложения.
В следующих разделах подробно рассматриваются некоторые протоколы уровней стека TCP/IP.