Числовой IP-адрес и доменный адрес компьютера в Интернете. Адрес электронной почты. Сетевой протокол TCP/IP.
IP-адресация. Чтобы в процессе обмена информацией компьютеры могли найти друг друга, в Интернете существует единая система адресации. Каждый компьютер, подключенный к Интернету, имеет свой уникальный 32-битный (в двоичной системе) IP-адрес.
По формуле определения количества информации легко подсчитать, что общее количество различных IP-адресов составляет более 4 миллиардов:
В десятичной записи IP-адрес компьютера в Интернете состоит из четырех чисел, разделенных точками, каждое из которых лежит в диапазоне от 0 до 255. Например, IP-адрес сервера компании МТУ-Интел записывается как 195.34.32.11.
Доменная система имен. Компьютерам легко находить друг друга по числовому IP-адресу, однако человеку запомнить числовой адрес непросто, и для удобства была введена доменная система имен (DNS — DomainNameSystem). Доменная система имен ставит в соответствие числовому IP-адресу каждого компьютера уникальное доменное имя.
Доменная система имен имеет иерархическую структуру: домены верхнего уровня — домены второго уровня — домены третьего уровня. Домены верхнего уровня бывают двух типов: географические(двухбук-венные — каждой стране соответствует двухбуквен-ный код) и административные (трехбуквенные).
России принадлежит географический домен ru. Давно существующие серверы могут относиться к домену su (СССР). Обозначение административного домена позволяет определить профиль организации, владельца домена
Адрес электронной почты — запись, однозначно идентифицирующая почтовый ящик, в который следует доставить сообщение электронной почты.
Адрес состоит из двух частей, разделённых символом «@». Левая часть указывает имя почтового ящика, часто оно совпадает с логином пользователя. Правая часть адреса указывает доменное имятого сервера, на котором расположен почтовый ящик.
Стек протоколов TCP/IP — набор сетевых протоколов передачи данных, используемых в сетях, включая сеть Интернет. Название TCP/IP происходит из двух наиважнейших протоколов семейства — TransmissionControlProtocol (TCP) и InternetProtocol (IP), которые были разработаны и описаны первыми в данном стандарте. Также изредка упоминается как модель DOD в связи с историческим происхождением от сети ARPANET из 1970 годов (под управлением DARPA, Министерства обороны США)
Протоколы работают друг с другом в стеке (англ. stack, стопка) — это означает, что протокол, располагающийся на уровне выше, работает «поверх» нижнего, используя механизмы инкапсуляции. Например, протокол TCP работает поверх протокола IP.
Стек протоколов TCP/IP включает в себя четыре уровня:
· прикладной уровень (applicationlayer),
· транспортный уровень (transportlayer),
· сетевой уровень (internetlayer),
· канальный уровень (linklayer).
Протоколы этих уровней полностью реализуют функциональные возможности модели OSI. На стеке протоколов TCP/IP построено всё взаимодействие пользователей в IP-сетях. Стек является независимым от физической среды передачи данных.
Уровни стека TCP/IP[править | править исходный текст]
Распределение протоколов по уровням модели TCP/IP | ||
Прикладной (Applicationlayer) | напр., HTTP, RTSP, FTP, DNS | |
Транспортный (Transportlayer) | напр., TCP, UDP, SCTP, DCCP (RIP, протоколы маршрутизации, подобные OSPF, что работают поверх IP, являются частью сетевого уровня) | |
Сетевой (Internetlayer) | Для TCP/IP это IP (вспомогательные протоколы, вроде ICMP и IGMP, работают поверх IP, но тоже относятся к сетевому уровню; протокол ARP является самостоятельным вспомогательным протоколом, работающим поверх канального уровня) | |
Канальный (Linklayer) | Ethernet, IEEE 802.11 WirelessEthernet, SLIP, TokenRing, ATM и MPLS, физическая среда и принципы кодирования информации, T1, E1 |
Прикладной уровень
На прикладном уровне (Applicationlayer) работает большинство сетевых приложений.
Эти программы имеют свои собственные протоколы обмена информацией, например, HTTP для WWW, FTP (передача файлов),SMTP (электронная почта), SSH (безопасное соединение с удалённой машиной), DNS (преобразование символьных имён в IP-адреса) и многие другие.
В массе своей эти протоколы работают поверх TCP или UDP и привязаны к определённому порту, например:
· HTTP на TCP-порт 80 или 8080,
· FTP на TCP-порт 20 (для передачи данных) и 21 (для управляющих команд),
· SSH на TCP-порт 22,
· запросы DNS на порт UDP (реже TCP) 53,
· обновление маршрутов по протоколу RIP на UDP-порт 520.
Эти порты определены Агентством по выделению имен и уникальных параметров протоколов (IANA).
К этому уровню относятся: Echo, Finger, Gopher, HTTP, HTTPS, IMAP, IMAPS, IRC, NNTP, NTP, POP3, POPS, QOTD, RTSP,SNMP, SSH, Telnet, XDMCP.
Транспортный уровень
Протоколы транспортного уровня (Transportlayer) могут решать проблему негарантированной доставки сообщений («дошло ли сообщение до адресата?»), а также гарантировать правильную последовательность прихода данных. В стеке TCP/IP транспортные протоколы определяют, для какого именно приложения предназначены эти данные.
Протоколы автоматической маршрутизации, логически представленные на этом уровне (поскольку работают поверх IP), на самом деле являются частью протоколов сетевого уровня; например OSPF (IP идентификатор 89).
TCP (IP идентификатор 6) — «гарантированный» транспортный механизм с предварительным установлением соединения, предоставляющий приложению надёжный поток данных, дающий уверенность в безошибочности получаемых данных, перезапрашивающий данные в случае потери и устраняющий дублирование данных. TCP позволяет регулировать нагрузку на сеть, а также уменьшать время ожидания данных при передаче на большие расстояния. Более того, TCP гарантирует, что полученные данные были отправлены точно в такой же последовательности. В этом его главное отличие от UDP.
UDP (IP идентификатор 17) протокол передачи датаграмм без установления соединения. Также его называют протоколом «ненадёжной» передачи, в смысле невозможности удостовериться в доставке сообщения адресату, а также возможного перемешивания пакетов. В приложениях, требующих гарантированной передачи данных, используется протокол TCP.
UDP обычно используется в таких приложениях, как потоковое видео и компьютерные игры, где допускается потеря пакетов, а повторный запрос затруднён или не оправдан, либо в приложениях вида запрос-ответ (например, запросы к DNS), где создание соединения занимает больше ресурсов, чем повторная отправка.
И TCP, и UDP используют для определения протокола верхнего уровня число, называемое портом.
Сетевой уровень
Сетевой уровень (Internetlayer) изначально разработан для передачи данных из одной (под)сети в другую. Примерами такого протокола является X.25 и IPC в сети ARPANET.
С развитием концепции глобальной сети в уровень были внесены дополнительные возможности по передаче из любой сети в любую сеть, независимо от протоколов нижнего уровня, а также возможность запрашивать данные от удалённой стороны, например в протоколе ICMP (используется для передачи диагностической информации IP-соединения) и IGMP (используется для управления multicast-потоками).
ICMP и IGMP расположены над IP и должны попасть на следующий — транспортный — уровень, но функционально являются протоколами сетевого уровня, и поэтому их невозможно вписать в модель OSI.
Пакеты сетевого протокола IP могут содержать код, указывающий, какой именно протокол следующего уровня нужно использовать, чтобы извлечь данные из пакета. Это число — уникальный IP-номер протокола. ICMP и IGMP имеют номера, соответственно, 1 и 2.
К этому уровню относятся: DHCP[1], DVMRP, ICMP, IGMP, MARS, PIM, RIP, RIP2, RSVP
Канальный уровень
Канальный уровень (Linklayer) описывает, каким образом передаются пакеты данных через физический уровень, включаякодирование (то есть специальные последовательности бит, определяющих начало и конец пакета данных). Ethernet, например, в полях заголовка пакета содержит указание того, какой машине или машинам в сети предназначен этот пакет.
Примеры протоколов канального уровня — Ethernet, IEEE 802.11 WirelessEthernet, SLIP, TokenRing, ATM и MPLS.
PPP не совсем вписывается в такое определение, поэтому обычно описывается в виде пары протоколов HDLC/SDLC.
MPLS занимает промежуточное положение между канальным и сетевым уровнем и, строго говоря, его нельзя отнести ни к одному из них.
Канальный уровень иногда разделяют на 2 подуровня — LLC и MAC.
Кроме того, канальный уровень описывает среду передачи данных (будь то коаксиальный кабель, витая пара, оптическое волокно или радиоканал), физические характеристики такой среды и принцип передачи данных (разделение каналов,модуляцию, амплитуду сигналов, частоту сигналов, способ синхронизации передачи, время ожидания ответа и максимальное расстояние).
Сравнение с моделью OSI
Существуют разногласия в том, как вписать модель TCP/IP в модель OSI, поскольку уровни в этих моделях не совпадают.
К тому же, модель OSI не использует дополнительный уровень — «Internetworking» — между транспортным и сетевым уровнями. Примером спорного протокола может быть ARP или STP.
Вот как традиционно протоколы TCP/IP вписываются в модель OSI:
Распределение протоколов по уровням модели OSI | ||
Прикладной | напр., HTTP, SMTP, SNMP, FTP, Telnet, SSH, SCP, SMB, NFS, RTSP, BGP | |
Представления | напр., XDR, AFP, TLS, SSL | |
Сеансовый | напр., ISO 8327 / CCITT X.225, RPC, NetBIOS, PPTP, L2TP, ASP | |
Транспортный | напр., TCP, UDP, SCTP, SPX, ATP, DCCP, GRE | |
Сетевой | напр., IP, ICMP, IGMP, CLNP, OSPF, RIP, IPX, DDP, ARP | |
Канальный | напр., Ethernet, Token ring, HDLC, PPP, X.25, Frame relay, ISDN, ATM, MPLS | |
Физический | напр., электрические провода, радиосвязь, волоконно-оптические провода, инфракрасное излучение |
Обычно в стеке TCP/IP верхние 3 уровня модели OSI (прикладной, представительский и сеансовый) объединяют в один — прикладной. Поскольку в таком стеке не предусматривается унифицированный протокол передачи данных, функции по определению типа данных передаются приложению.