Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы на вопросы upd / Воп_ сети2012 не кратко upd.doc
Скачиваний:
214
Добавлен:
03.06.2014
Размер:
1.89 Mб
Скачать

11. Arp. Rarp.

TCP/IP использует протоколы ARP (Address Resolution Protocol - протокол преобразования адресов) и RARP (Reverse Address Resolution Protocol - протокол обратного преобразования адресов) для инициализации использования адресов Internet в сетях Ethernet и сетях иных типов, использующих метод MAC (media access control) для управления доступом к среде передачи. Протокол ARP позволяет хостам обмениваться информацией с другими хостами в тех случаях, когда известен только IP-адрес ближайшего соседа. Перед тем, как использовать IP хост передает широковещательный запрос ARP, содержащий IP-адрес желаемой системы-получателя.

Структура заголовков ARP/RARP показана на рисунке.

16

32

Тип оборудования

Тип протокола

HLen (8)

PLen (8)

Операция

Аппаратный адрес отправителя

Протокольный адрес отправителя

Аппаратный адрес получателя

Протокольный адрес получателя

Тип оборудования. Указывает тип интерфейса, для которого отправителю нужен отклик.

Тип протокола. Задает тип адреса вышележащего протокола, который представляет отправитель.

HLen. Размер аппаратного адреса.

PLen. Размер протокольного адреса.

Операция. Поддерживаются следующие типы операций:

1 запрос ARP.

2 отклик ARP.

3 запрос RARP.

4 отклик RARP.

5 запрос DynamicRARP.

6 отклик Dynamic RARP.

7 ошибка Dynamic RARP.

8 запрос InARP.

9 отклик InARP.

Аппаратный адрес отправителя. Аппаратный адрес отправителя размером HLen.

Протокольный адрес отправителя. Протокольный адрес отправителя размером PLen.

Аппаратный адрес получателя. Аппаратный адрес получателя размером HLen.

Протокольный адрес получателя. Протокольный адрес получателя размером PLen.

12. Стеки протоколов. Tcp/ip. Ip адреса и доменные адреса. Статическое и динамическое назначение адресов.

Стек протоколов TCP/IP (англ. Transmission Control Protocol/Internet Protocol — протокол управления передачей) — набор сетевых протоколов разных уровней модели сетевого взаимодействия DOD, используемых в сетях. Протоколы работают друг с другом в стеке (англ. stack, стопка) — это означает, что протокол, располагающийся на уровне выше, работает «поверх» нижнего, используя механизмы инкапсуляции. Например, протокол TCP работает поверх протокола IP.

Стек протоколов TCP/IP основан на модели сетевого взаимодействия DOD и включает в себя протоколы четырёх уровней:

прикладного (application),

транспортного (transport),

сетевого (network),

канального (data link).

Протоколы этих уровней полностью реализуют функциональные возможности модели OSI. На стеке протоколов TCP/IP построено всё взаимодействие пользователей в IP-сетях. Стек является независимым от физической среды передачи данных.

Распределение протоколов по уровням модели OSI7 Прикладной напр., HTTP, SMTP, SNMP, FTP, Telnet, SSH, SCP, SMB, NFS, RTSP, BGP

6 Представления напр., XDR, AFP, TLS, SSL

5 Сеансовый напр., ISO 8327 / CCITT X.225, RPC, NetBIOS, PPTP, L2TP, ASP

4 Транспортный напр., TCP, UDP, SCTP, SPX, RTP, ATP, DCCP, GRE

3 Сетевой напр., IP, ICMP, IGMP, CLNP, OSPF, RIP, IPX, DDP

2 Канальный напр., Ethernet, Token ring, HDLC, PPP, X.25, Frame relay, ISDN, ATM, MPLS, ARP

1 Физический напр., электрические провода, радиосвязь, волоконно-оптические провода, инфракрасное излучение

Обычно в стеке TCP/IP верхние 3 уровня (прикладной, представительский и сеансовый) модели OSI объединяют в один — прикладной. Поскольку в таком стеке не предусматривается унифицированный протокол передачи данных, функции по определению типа данных передаются приложению. Упрощенно интерпретацию стека TCP/IP можно представить так:

Прикладной уровень

На прикладном уровне работает большинство сетевых приложений.

Эти программы имеют свои собственные протоколы обмена информацией, например, 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.

Транспортный уровень

Протоколы транспортного уровня могут решать проблему негарантированной доставки сообщений («дошло ли сообщение до адресата?»), а также гарантировать правильную последовательность прихода данных. В стеке TCP/IP транспортные протоколы определяют, для какого именно приложения предназначены эти данные.

Протоколы автоматической маршрутизации, логически представленные на этом уровне (поскольку работают поверх IP), на самом деле являются частью протоколов сетевого уровня; например OSPF (IP идентификатор 89).

TCP (IP идентификатор 6) — «гарантированный» транспортный механизм с предварительным установлением соединения, предоставляющий приложению надёжный поток данных, дающий уверенность в безошибочности получаемых данных, перезапрашивающий данные в случае потери и устраняющий дублирование данных. TCP позволяет регулировать нагрузку на сеть, а также уменьшать время ожидания данных при передаче на большие расстояния. Более того, TCP гарантирует, что полученные данные были отправлены точно в такой же последовательности. В этом его главное отличие от UDP.

UDP (IP идентификатор 17) протокол передачи датаграмм без установления соединения. Также его называют протоколом «ненадёжной» передачи, в смысле невозможности удостовериться в доставке сообщения адресату, а также возможного перемешивания пакетов. В приложениях, требующих гарантированной передачи данных, используется протокол TCP.

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

И TCP, и UDP используют для определения протокола верхнего уровня число, называемое портом.

Сетевой уровень

Сетевой уровень изначально разработан для передачи данных из одной (под)сети в другую. Примерами такого протокола является 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

Канальный уровень

Канальный уровень описывает, каким образом передаются пакеты данных через физический уровень, включая кодирование (то есть специальные последовательности бит, определяющих начало и конец пакета данных). Ethernet, например, в полях заголовка пакета содержит указание того, какой машине или машинам в сети предназначен этот пакет.

Примеры протоколов канального уровня — Ethernet, IEEE 802.11 Wireless Ethernet, SLIP, Token Ring, ATM и MPLS.

PPP не совсем вписывается в такое определение, поэтому обычно описывается в виде пары протоколов HDLC/SDLC.

MPLS занимает промежуточное положение между канальным и сетевым уровнем и, строго говоря, его нельзя отнести ни к одному из них.

Канальный уровень иногда разделяют на 2 подуровня — LLC и MAC.

Физический уровень

Физический уровень описывает среду передачи данных (будь то коаксиальный кабель, витая пара, оптическое волокно или радиоканал), физические характеристики такой среды и принцип передачи данных (разделение каналов, модуляцию, амплитуду сигналов, частоту сигналов, способ синхронизации передачи, время ожидания ответа и максимальное расстояние).

IP-адрес (айпи-адрес, сокращение от англ. Internet Protocol Address) — сетевой адрес узла в компьютерной сети, построенной по протоколу IP. В сети Интернет требуется глобальная уникальность адреса; в случае работы в локальной сети требуется уникальность адреса в пределах сети. В версии протокола IPv4 IP-адрес имеет длину 4 байта.

IP-адрес называют статическим, если он назначается пользователем в настройках сетевого устройства. Всегда является постоянным, пока не произведено его изменение.

IP-адрес называют динамическим, если он назначается автоматически при подключении сетевого устройства к сети (например по протоколу DHCP). Динамически полученный адрес может быть как постоянным (в случае, когда например по протоколу DHCP из раза в раз выдается один и тот же IP-адрес и он не изменяется по истечении lease-time), так и непостоянным (в случае, когда например сервер DHCP использует пул IP-адресов без привязки IP-MAC, и каждый раз полученный IP-адрес разный и может измениться по истечении lease-time).

Для получения IP-адреса клиент может использовать один из следующих протоколов:

DHCP (RFC 2131) — наиболее распространённый протокол настройки сетевых параметров.

BOOTP (RFC 951) — простой протокол настройки сетевого адреса, обычно используется для бездисковых станций.

IPCP (RFC 1332) в рамках протокола PPP (RFC 1661).

Zeroconf (RFC 3927) — протокол настройки сетевого адреса, определения имени, поиск служб.

RARP (RFC 903) Устаревший протокол, использующий обратную логику (из аппаратного адреса — в логический) популярного и поныне в широковещательных сетях протокола ARP. Не поддерживает распространения информации о длине маски (не поддерживает VLSM).

Одно доменное имя может преобразовываться поочерёдно в несколько IP‐адресов (для распределения нагрузки).

Одновременно, один IP‐адрес может использоваться для тысяч доменных имён с разными сайтами (тогда при доступе они различаются по доменному имени), что вызывает проблемы при идентификации сайтов по IP‐адресу в целях цензуры.

Также, сервер с одним доменным именем может содержать несколько разных сайтов, а части одного сайта могут быть доступны по разным доменным именам (например, для изоляции cookies и скриптов в целях защиты от атак типа межсайтового скриптинга).