Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Классификация IP-адресов. Понятие номера сети и номера узла.

Поиск

FAQ

по курсу лекций Кузнецова В.В.
Информационные сети и коммуникации.

 
 

Список вопросов на экзамен

Часть 1. Сети. 3

1.1 Классификация IP-адресов. Понятие номера сети и номера узла. 3

1.2. Модель OSI. Физический уровень. 4

1.3. Модель OSI. Канальный уровень. 6

1.4. Модель OSI. Сетевой уровень. 7

1.5. Модель OSI. Транспортный уровень. 8

1.6. Модель OSI. Сеансовый уровень. 8

1.7. Модель OSI. Уровень представления. 9

1.8. Модель OSI. Прикладной уровень. 9

1.9. Адресация в IP-сетях. 9

1.10. Протоколы ARP и RARP. Их место в стеке протоколов IP. 10

1.11. Маршрутизация в IP-сетях. 11

1.12. Структуризация IP-сетей с помощью масок. 14

1.13. Протокол TCP. Его место в стеке протоколов TCP/IP. 15

1.14. Протокол UDP. Его место в стеке протоколов TCP/IP. 16

1.15. Протоколы надёжной доставки пакетов. Концепция квитирования. 17

1.16. Маршрутизаторы. Их место в сетевой модели OSI. 19

1.17. Понятие маршрута. Принципы построения таблиц маршрутизации. 19

1.18. Понятие топологии сети. Средства объединения сетей с произвольной топологией. 21

1.19. Понятие стека сетевых протоколов. Стек протоколов TCP/IP. 22

1.20. Понятие сетевого интерфейса. Модель сетевого интерфейса для IP-сети. 24

Часть 2. Сокеты. 26

2.1. Технология клиент-сервер. 26

2.2. Событийная модель соединения сокетов. 27

2.3. Особенности программирования сетевого приложения. 27

2.4. Этапы организации соединения сокетов. 28

2.5. Организация сетевого соединения со стороны клиента. 28

2.6. Организация сетевого соединения со стороны сервера. 28

2.7. Особенности программирования приложения-клиента. 28

2.8. Особенности программирования приложения-сервера. 28

2.9. Сокеты. Понятие гнездового соединения. 28

2.10. Сокеты, как средство межпрограммного взаимодействия. 29

2.11. Сокеты. Их место в сетевой модели OSI. 29

2.12. Сокеты. Их место в стеке протоколов IP. 30

2.13. Сокеты в ОС Windows. Технология Windows Sockets. 30

2.14. Средства библиотеки MFC для работы с сокетами. 31

2.15. Организация работы с сокетами средствами языка C++. 33

2.16. Передача данных через сокет. 34

2.17. Приём данных через сокет. 34

2.18. Способы закрытия сетевого соединения между сокетами. 35

2.19. Типы сокетов. Область их применения. 35

2.20. Понятие номера порта для протоколов транспортного уровня сетевой модели OSI. 36

 

 


Часть 1. Сети.

Модель OSI. Канальный уровень.

Модель OSI описана в разделе 1.2.

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

В протоколах канального уровня, используемых в локальных сетях, заложена определенная структура связей между компьютерами и способы их адресации. Хотя канальный уровень и обеспечивает доставку кадра между любыми двумя узлами локальной сети, он это делает только в сети с совершенно определенной топологией связей, именно той топологией, для которой он был разработан. К таким типовым топологиям, поддерживаемым протоколами канального уровня локальных сетей, относятся общая шина, кольцо и звезда. Примерами протоколов канального уровня являются протоколы Ethernet, Token Ring, FDDI, 100VG-AnyLAN.

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

В глобальных сетях, которые редко обладают регулярной топологией, канальный уровень обеспечивает обмен сообщениями между двумя соседними компьютерами, соединенными индивидуальной линией связи. Примерами протоколов "точка - точка" (как часто называют такие протоколы) могут служить широко распространенные протоколы PPP и LAP-B.

Адреса, используемые на канальном уровне в локальных сетях, часто называют МАС-адресами.

Источники:

http://www.nestor.minsk.by/sr/2000/11/01104.html

Модель OSI. Сеансовый уровень.

Модель OSI описана в разделе 1.2.

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

Источники:

http://www.nestor.minsk.by/sr/2000/11/01104.html

Адресация в IP-сетях.

Каждый компьютер в сети TCP/IP имеет адреса трех уровней:

Локальный адрес узла, определяемый технологией, с помощью которой построена отдельная сеть, в которую входит данный узел. Для узлов, входящих в локальные сети - это МАС-адрес сетевого адаптера или порта маршрутизатора, например, 11-А0-17-3D-BC-01. Эти адреса назначаются производителями оборудования и являются уникальными адресами, так как управляются централизовано. Для всех существующих технологий локальных сетей МАС-адрес имеет формат 6 байтов: старшие 3 байта - идентификатор фирмы производителя, а младшие 3 байта назначаются уникальным образом самим производителем. Для узлов, входящих в глобальные сети, такие как Х.25 или frame relay, локальный адрес назначается администратором глобальной сети.

IP-адрес, состоящий из 4 байт, например, 109.26.17.100. Этот адрес используется на сетевом уровне. Он назначается администратором во время конфигурирования компьютеров и маршрутизаторов. IP-адрес состоит из двух частей: номера сети и номера узла. Номер сети может быть выбран администратором произвольно, либо назначен по рекомендации специального подразделения Internet (Network Information Center, NIC), если сеть должна работать как составная часть Internet. Обычно провайдеры услуг Internet получают диапазоны адресов у подразделений NIC, а затем распределяют их между своими абонентами.

Номер узла в протоколе IP назначается независимо от локального адреса узла. Деление IP-адреса на поле номера сети и номера узла - гибкое, и граница между этими полями может устанавливаться весьма произвольно. Узел может входить в несколько IP-сетей. В этом случае узел должен иметь несколько IP-адресов, по числу сетевых связей. Таким образом IP-адрес характеризует не отдельный компьютер или маршрутизатор, а одно сетевое соединение.

Символьное доменное имя, например, SERV1.IBM.COM. Этот адрес назначается администратором и состоит из нескольких частей, например, имени машины, имени организации, имени домена. Такой адрес, называемый также DNS-именем, используется на прикладном уровне, например, в протоколах FTP или telnet.

Источники:

http://www.citforum.ru/nets/ip/glava_3.shtml#_3_4

Маршрутизация в IP-сетях.

Под маршрутизацией понимается процесс доставки сообщения из одной подсети в другую. Рассмотрим теперь принципы, на основании которых в сетях IP происходит выбор маршрута передачи пакета между сетями.

Сначала необходимо обратить внимание на тот факт, что не только маршрутизаторы, но и конечные узлы - компьютеры - должны принимать участие в выборе маршрута. Пример, приведенный на рисунке, демонстрирует эту необходимость. Здесь в локальной сети имеется несколько маршрутизаторов, и компьютер должен выбирать, какому из них следует отправить пакет.

Длина маршрута может существенно измениться в зависимости от того, какой маршрутизатор выберет компьютер для передачи своего пакета на сервер, расположенный, например, в Германии, если маршрутизатор 1 соединен выделенной линией с маршрутизатором в Копенгагене, а маршрутизатор 2 имеет спутниковый канал, соединяющий его с Токио.

В стеке TCP/IP маршрутизаторы и конечные узлы принимают решения о том, кому передавать пакет для его успешной доставки узлу назначения, на основании так называемых таблиц маршрутизации (routing tables). Следующая таблица представляет собой типичный пример таблицы маршрутов, использующей IP-адреса сетей:

Адрес сети назначения Адрес следующего маршрутизатора Номер выходного порта Расстояние до сети назначения
56.0.0.0 198.21.17.7    
56.0.0.0 213.34.12.4.    
116.0.0.0 213.34.12.4    
129.13.0.0 198.21.17.6    
198.21.17.0 -    
213. 34.12.0 -    
Default 198.21.17.7   -

В этой таблице в столбце "Адрес сети назначения" указываются адреса всех сетей, которым данный маршрутизатор может передавать пакеты. В стеке TCP/IP принят так называемый одношаговый подход к оптимизации маршрута продвижения пакета (next-hop routing) - каждый маршрутизатор и конечный узел принимает участие в выборе только одного шага передачи пакета. Поэтому в каждой строке таблицы маршрутизации указывается не весь маршрут в виде последовательности IP-адресов маршрутизаторов, через которые должен пройти пакет, а только один IP-адрес - адрес следующего маршрутизатора, которому нужно передать пакет. Вместе с пакетом следующему маршрутизатору передается ответственность за выбор следующего шага маршрутизации. Одношаговый подход к маршрутизации означает распределенное решение задачи выбора маршрута. Это снимает ограничение на максимальное количество транзитных маршрутизаторов на пути пакета.

В случае, если в таблице маршрутов имеется более одной строки, соответствующей одному и тому же адресу сети назначения, то при принятии решения о передаче пакета используется та строка, в которой указано наименьшее значение в поле "Расстояние до сети назначения".

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

Для отправки пакета следующему маршрутизатору требуется знание его локального адреса, но в стеке TCP/IP в таблицах маршрутизации принято использование только IP-адресов для сохранения их универсального формата, не зависящего от типа сетей, входящих в интерсеть. Для нахождения локального адреса по известному IP-адресу необходимо воспользоваться протоколом ARP.

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

После этого компьютер формирует кадр протокола, используемого на выбранном порту, например, кадр Ethernet, в который помещает МАС-адрес маршрутизатора. Маршрутизатор принимает кадр Ethernet, извлекает из него пакет IP и просматривает свою таблицу маршрутизации для нахождения следующего маршрутизатора. При этом он выполняет те же действия, что и конечный узел.

Одношаговая маршрутизация обладает еще одним преимуществом - она позволяет сократить объем таблиц маршрутизации в конечных узлах и маршрутизаторах за счет использования в качестве номера сети назначения так называемого маршрута по умолчанию - default, который обычно занимает в таблице маршрутизации последнюю строку. Если в таблице маршрутизации есть такая запись, то все пакеты с номерами сетей, которые отсутствуют в таблице маршрутизации, передаются маршрутизатору, указанному в строке default. Поэтому маршрутизаторы часто хранят в своих таблицах ограниченную информацию о сетях интерсети, пересылая пакеты для остальных сетей в порт и маршрутизатор, используемые по умолчанию. Подразумевается, что маршрутизатор, используемый по умолчанию, передаст пакет на магистральную сеть, а маршрутизаторы, подключенные к магистрали, имеют полную информацию о составе интерсети.

Особенно часто приемом маршрутизации по умолчанию пользуются конечные узлы. Хотя они также в общем случае имеют в своем распоряжении таблицу маршрутизации, ее объем обычно незначителен, так как маршрутизация для компьютера - не основное занятие. Главная роль в маршрутизации пакетов в концепции протокола IP отводится, естественно, маршрутизаторам, которые должны обладать гораздо более полными таблицами маршрутизации, чем конечные узлы. Конечный узел часто вообще работает без таблицы маршрутизации, имея только сведения об IP-адресе маршрутизатора по умолчанию. При наличии одного маршрутизатора в локальной сети этот вариант - единственно возможный для всех конечных узлов. Но даже при наличии нескольких маршрутизаторов в локальной сети, когда проблема их выбора стоит перед конечным узлом, задание маршрута по умолчанию часто используется в компьютерах для сокращения объема их маршрутной таблицы.

Другим способом разгрузки компьютера от необходимости ведения больших таблиц маршрутизации является получение от маршрутизатора сведений о рациональном маршруте для какой-нибудь конкретной сети с помощью протокола ICMP.

Кроме маршрута default, в таблице маршрутизации могут встретиться два типа специальных записей - запись о специфичном для узла маршруте и запись об адресах сетей, непосредственно подключенных к портам маршрутизатора.

Специфичный для узла маршрут содержит вместо номера сети полный IP-адрес, то есть адрес, имеющий ненулевую информацию не только в поле номера сети, но и в поле номера узла. Предполагается, что для такого конечного узла маршрут должен выбираться не так, как для всех остальных узлов сети, к которой он относится. В случае, когда в таблице есть разные записи о продвижении пакетов для всей сети N и ее отдельного узла, имеющего адрес N,D, при поступлении пакета, адресованного узлу N,D, маршрутизатор отдаст предпочтение записи для N,D.

Записи в таблице маршрутизации, относящиеся к сетям, непосредственно подключенным к маршрутизатору, в поле "Расстояние до сети назначения" содержат нули.

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

Существуют различные алгоритмы построения таблиц для одношаговой маршрутизации. Их можно разделить на три класса:

  • алгоритмы фиксированной маршрутизации,
  • алгоритмы простой маршрутизации,
  • алгоритмы адаптивной маршрутизации.

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

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

Источник:

http://www.citforum.ru/nets/ip/glava_4.shtml#_4_3

Часть 2. Сокеты.

Технология клиент-сервер.

В компьютерной сети можно одновременно пользоваться разнообразной информацией. В компьютерных сетях вместо словосочетания "источник информации" используется слово "сервер", происходящее от англ. server - "обслуживающий", а клиент - это просто тот, кто запрашивает информацию у сервера. Вот и все!

Клиент-сервер (англ. Сlient/Server) — сетевая архитектура, в которой устройства являются либо клиентами, либо серверами. Клиентом (front end) является запрашивающая машина (обычно ПК), сервером (back end) — машина, которая отвечает на запрос. Оба термина (клиент и сервер) могут применяться как к физическим устройствам, так и к программному обеспечению.

В информационных технологиях клие́нт — это аппаратный или программный компонент вычислительной системы, посылающий запросы серверу. Программа, являющаяся клиентом, взаимодействует с сервером, используя определенный протокол. Она может запрашивать с сервера какие-либо данные, манипулировать данными непосредственно на сервере, запускать на сервере новые процессы и т. п. Полученные от сервера данные клиентская программа может предоставлять пользователю или использовать как-либо иначе, в зависимости от назначения программы. Программа-клиент и программа-сервер могут работать как на одном и том же компьютере, так и на разных. Во втором случае для обмена информацией между ними используется сетевое соединение.

Се́рвер (англ. server от англ. to serve — служить) — в информационных технологиях — программный компонент вычислительной системы, выполняющий сервисные функции по запросу клиента, предоставляя ему доступ к определённым ресурсам. Для взаимодействия с клиентом (или клиентами, если поддерживается одновременная работа с несколькими клиентами) сервер выделяет необходимые ресурсы межпроцессного взаимодействия (разделяемая память, пайп, сокет, и т. п.) и ожидает запросы на открытие соединения (или, собственно, запросы на предоставляемый сервис). В зависимости от типа такого ресурса, сервер может обслуживать процессы в пределах одной компьютерной системы или процессы на других машинах через каналы передачи данных (например COM-порт) или сетевые соединения.

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

Формат запросов клиента и ответов сервера определяется протоколом. Спецификации открытых протоколов описываются открытыми стандартами, например протоколы Интернета определяются в документах RFC.

Чаще всего понятия «клиент» и «сервер» описывают распределение ролей при выполнении конкретной задачи, а не вычислительные мощности. На одном и том же компьютере могут одновременно работать программы, выполняющие как клиентские, так и серверные функции. Например, веб-сервер может, в качестве клиента, получать данные для формирования страниц от SQL-сервера (так работает Википедия).

Источники:

http://www.mstu.edu.ru/education/materials/telecommlab/lab_010.html

http://ru.wikipedia.org/wiki/Клиент-сервер

http://ru.wikipedia.org/wiki/Клиент_(программный)

http://ru.wikipedia.org/wiki/Сервер_(приложение)

Приём данных через сокет.

// получение данных

void CProtocol::OnReceive(int ErrCode)

{

CAsyncSocket::OnReceive(ErrCode);

if (m_IsReceiveSize) // Прием размера данных

{

int n = Receive((BYTE*)&m_ReceiveSize+m_ReceiveDataSize, sizeof(DWORD)-m_ReceiveDataSize);

// Анализ ошибок

if (n == SOCKET_ERROR)

{

ErrCode = GetLastError();

if (ErrCode!= WSAEWOULDBLOCK)

{

CString s;

s.Format("Ошибка при приеме длины! Код ошибки %u", ErrCode);

MessageBox(0,s,"Сообщение",MB_OK);

Close();

}

}

else

// Анализ принятых данных

{

m_ReceiveDataSize+= n;

if (m_ReceiveDataSize == sizeof(DWORD)) // при приеме длины полностью

{

m_IsReceiveSize = false;

m_ReceiveData.Alloc(m_ReceiveSize);

m_ReceiveDataSize = 0;

}

}

}

else

// Прием самих данных

{

int n = Receive((BYTE*)m_ReceiveData.GetAddr()+m_ReceiveDataSize, m_ReceiveSize-m_ReceiveDataSize);

// Анализ ошибок

if (n == SOCKET_ERROR)

{

ErrCode = GetLastError();

if (ErrCode!= WSAEWOULDBLOCK)

{

CString s;

s.Format("Ошибка при приеме собщения! Код ошибки %u", ErrCode);

MessageBox(0,s,"Сообщение",MB_OK);

Close();

}

}

else

// Анализ принятых данных

{

m_ReceiveDataSize+= n;

if (m_ReceiveDataSize == m_ReceiveSize) // при завершении приема пакета

{

m_ReceiveDataSize = 0;

m_IsReceiveSize = true;

//AfxMessageBox("Принят пакет!");

OnReceivePacket();

}

}

 

}

}

FAQ

по курсу лекций Кузнецова В.В.
Информационные сети и коммуникации.

 
 

Список вопросов на экзамен

Часть 1. Сети. 3

1.1 Классификация IP-адресов. Понятие номера сети и номера узла. 3

1.2. Модель OSI. Физический уровень. 4

1.3. Модель OSI. Канальный уровень. 6

1.4. Модель OSI. Сетевой уровень. 7

1.5. Модель OSI. Транспортный уровень. 8

1.6. Модель OSI. Сеансовый уровень. 8

1.7. Модель OSI. Уровень представления. 9

1.8. Модель OSI. Прикладной уровень. 9

1.9. Адресация в IP-сетях. 9

1.10. Протоколы ARP и RARP. Их место в стеке протоколов IP. 10

1.11. Маршрутизация в IP-сетях. 11

1.12. Структуризация IP-сетей с помощью масок. 14

1.13. Протокол TCP. Его место в стеке протоколов TCP/IP. 15

1.14. Протокол UDP. Его место в стеке протоколов TCP/IP. 16

1.15. Протоколы надёжной доставки пакетов. Концепция квитирования. 17

1.16. Маршрутизаторы. Их место в сетевой модели OSI. 19

1.17. Понятие маршрута. Принципы построения таблиц маршрутизации. 19

1.18. Понятие топологии сети. Средства объединения сетей с произвольной топологией. 21

1.19. Понятие стека сетевых протоколов. Стек протоколов TCP/IP. 22

1.20. Понятие сетевого интерфейса. Модель сетевого интерфейса для IP-сети. 24

Часть 2. Сокеты. 26

2.1. Технология клиент-сервер. 26

2.2. Событийная модель соединения сокетов. 27

2.3. Особенности программирования сетевого приложения. 27

2.4. Этапы организации соединения сокетов. 28

2.5. Организация сетевого соединения со стороны клиента. 28

2.6. Организация сетевого соединения со стороны сервера. 28

2.7. Особенности программирования приложения-клиента. 28

2.8. Особенности программирования приложения-сервера. 28

2.9. Сокеты. Понятие гнездового соединения. 28

2.10. Сокеты, как средство межпрограммного взаимодействия. 29

2.11. Сокеты. Их место в сетевой модели OSI. 29

2.12. Сокеты. Их место в стеке протоколов IP. 30

2.13. Сокеты в ОС Windows. Технология Windows Sockets. 30

2.14. Средства библиотеки MFC для работы с сокетами. 31

2.15. Организация работы с сокетами средствами языка C++. 33

2.16. Передача данных через сокет. 34

2.17. Приём данных через сокет. 34

2.18. Способы закрытия сетевого соединения между сокетами. 35

2.19. Типы сокетов. Область их применения. 35

2.20. Понятие номера порта для протоколов транспортного уровня сетевой модели OSI. 36

 

 


Часть 1. Сети.

Классификация IP-адресов. Понятие номера сети и номера узла.

Три основных класса IP-адресов

IP-адрес имеет длину 4 байта и обычно записывается в виде четырех чисел, представляющих значения каждого байта в десятичной форме, и разделенных точками, например: 128.10.2.30 - традиционная десятичная форма представления адреса, 10000000 00001010 00000010 00011110 - двоичная форма представления этого же адреса. Структура IP-адреса:

Класс А   N сети (1 байт) + N узла (3 байта)
Класс B     N сети (2 байта) + N узла (2 байта)
Класс C       N сети (3 байта) + N узла (1 байт)
Класс D         адрес группы multicast
Класс E           зарезервирован

Адрес состоит из двух логических частей - номера сети и номера узла в сети. Какая часть адреса относится к номеру сети, а какая к номеру узла, определяется значениями первых битов адреса:

  • Если адрес начинается с 0, то сеть относят к классу А, и номер сети занимает один байт, остальные 3 байта интерпретируются как номер узла в сети. Сети класса А имеют номера в диапазоне от 1 до 126. (Номер 0 не используется, а номер 127 зарезервирован для специальных целей, о чем будет сказано ниже.) В сетях класса А количество узлов должно быть больше 216, но не превышать 224.
  • Если первые два бита адреса равны 10, то сеть относится к классу В и является сетью средних размеров с числом узлов 28 - 216. В сетях класса В под адрес сети и под адрес узла отводится по 16 битов, то есть по 2 байта.
  • Если адрес начинается с последовательности 110, то это сеть класса С с числом узлов не больше 28. Под адрес сети отводится 24 бита, а под адрес узла - 8 битов.
  • Если адрес начинается с последовательности 1110, то он является адресом класса D и обозначает особый, групповой адрес - multicast. Если в пакете в качестве адреса назначения указан адрес класса D, то такой пакет должны получить все узлы, которым присвоен данный адрес.
  • Если адрес начинается с последовательности 11110, то это адрес класса Е, он зарезервирован для будущих применений.

В таблице приведены диапазоны номеров сетей, соответствующих каждому классу сетей.

Класс Наименьший адрес Наибольший адрес
A 01.0.0 126.0.0.0
B 128.0.0.0 191.255.0.0
C 192.0.1.0. 223.255.255.0
D 224.0.0.0 239.255.255.255
E 240.0.0.0 247.255.255.255

В протоколе IP существует несколько соглашений об особой интерпретации IP-адресов:

  • если IР-адрес состоит только из двоичных нулей, то он обозначает адрес того узла, который сгенерировал этот пакет;
  • если в поле номера сети стоят 0, то по умолчанию считается, что этот узел принадлежит той же самой сети, что и узел, который отправил пакет;
  • если все двоичные разряды IP-адреса равны 1, то пакет с таким адресом назначения должен рассылаться всем узлам, находящимся в той же сети, что и источник этого пакета. Такая рассылка называется ограниченным широковещательным сообщением (limited broadcast);
  • если в поле адреса узла назначения стоят сплошные 1, то пакет, имеющий такой адрес рассылается всем узлам сети с заданным номером. Такая рассылка называется широковещательным сообщением (broadcast);
  • адрес 127.0.0.1 зарезервирован для организации обратной связи при тестировании работы программного обеспечения узла без реальной отправки пакета по сети. Этот адрес имеет название loopback.

Уже упоминавшаяся форма группового IP-адреса - multicast - означает, что данный пакет должен быть доставлен сразу нескольким узлам, которые образуют группу с номером, указанным в поле адреса. Узлы сами идентифицируют себя, то есть определяют, к какой из групп они относятся. Один и тот же узел может входить в несколько групп. Такие сообщения в отличие от широковещательных называются мультивещательными. Групповой адрес не делится на поля номера сети и узла и обрабатывается маршрутизатором особым образом.

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

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

В такой ситуации возможны два пути. Первый из них связан с получением от NIC дополнительных номеров сетей. Второй способ, употребляющийся более часто, связан с использованием так называемых масок, которые позволяют разделять одну сеть на несколько сетей.

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

Например, для стандартных классов сетей маски имеют следующие значения:

255.0.0.0 - маска для сети класса А,

255.255.0.0 - маска для сети класса В,

255.255.255.0 - маска для сети класса С.

Источники:

http://www.citforum.ru/nets/ip/glava_3.shtml

http://www.citforum.ru/nets/ip/glava_4.shtml#_4_5



Поделиться:


Последнее изменение этой страницы: 2016-07-11; просмотров: 785; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.119.107.159 (0.016 с.)