Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпора-сети.docx
Скачиваний:
15
Добавлен:
19.09.2019
Размер:
189.64 Кб
Скачать

4 1.2.5. Ethernet - пример стандартного решения сетевых проблем

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

Сетевая технология - это согласованный набор стандартных протоколов и реализующих их программно-аппаратных средств (например, сетевых адаптеров, драйверов, кабелей и разъемов), достаточный для построения вычислительной сети.

Каждая сетевая карта имеет уникальный MAC-адрес, записанный в ПЗУ карты. 6 байт в шестнадцатеричном виде, разделенных многоточием. Первые 3 байта – производитель.

Принцип передачи CSMA/CD. Основной принцип, положенный в основу Ethernet, - случайный метод доступа к разделяемой среде передачи данных. В качестве такой среды может использоваться толстый или тонкий коаксиальный кабель, витая пара, оптоволокно или радиоволны.

Суть случайного метода доступа состоит в следующем.

Процесс отправки пакет:

- Контроль состояния шины (прослушка)

- Свободна – начать передачу.

- Занята – ждать освобождения.

- После начала отправки пакета контролировать коллизии.

При коллизии

- Немедленно прекратить передачу

- Выждать случайный промежуток времени и повторить передачу

Заголовок: MAC отправителя и получателя, длина, протокол…

Кадр видят все. Все принимают, сверяя мак со своим. Если нет – отбрасывается, да – принимается. Ироковещательный: FF:FF:FF:FF:FF:FF

Проверки

- длина сравн. с минимальной. Если меньше – осколов от столкновения.

- пересчет контрольной суммы. Если не совпадает – выбрасывается.

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

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

Формат кадра:

Преамбула(56бит), признак начала кадра (8 бит), заголовок кадра, данные, CRC (сумма)

Преамбула – последовательность бит 1010

Макс длина кадра – 1516 байт (1500 данные). Значения заведомо больше 1600 нумеруют протокол.

Аппаратура Ethernet.

  1. Средства передачи данных на основе коаксиального кабеля

  2. Кабель «витая пара»

  3. Оптоволокно

  4. Радиосреда

5

В стеке TCP/IP используются три типа адресов: локальные (называемые также аппаратными, в частности МАС-адреса), IP-адреса и символьные доменные имена.

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

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

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

Рис. 5.9. Структура IP-адреса

Если адрес начинается с 0, то сеть относят к классу А и номер сети занимает один байт, остальные 3 байта интерпретируются как номер узла в сети. Сети класса А имеют номера в диапазоне от 1 до 126. (Номер 0 не используется, а номер 127 зарезервирован для специальных целей, о чем будет сказано ниже.) Сетей класса А немного, зато количество узлов в них может достигать 224, то есть 16 777 216 узлов.

Если первые два бита адреса равны 10, то сеть относится к классу В. В сетях класса В под номер сети и под номер узла отводится по 16 бит, то есть по 2 байта. Таким образом, сеть класса В является сетью средних размеров с максимальным числом узлов 216, что составляет 65 536 узлов.

Если адрес начинается с последовательности 110, то это сеть класса С. В этом случае под номер сети отводится 24 бита, а под номер узла - 8 бит. Сети этого класса наиболее распространены, число узлов в них ограничено 28, то есть 256 узлами.

Если адрес начинается с последовательности 1110, то он является адресом класса D и обозначает особый, групповой адрес - multicast. Если в пакете в качестве адреса назначения указан адрес класса D, то такой пакет должны получить все узлы, которым присвоен данный адрес.

Если адрес начинается с последовательности 11110, то это значит, что данный адрес относится к классу Е, Адреса этого класса зарезервированы для будущих применений.

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

Таблица 5.4. Характеристики адресов разного класса

Большие сети получают адреса класса А, средние - класса В, а маленькие класса С.

Маска сети - битовая маска, определяющая, какая часть IP-адреса узла сети относится к адресу сети, а какая - к адресу самого узла в этой сети. Например, узел с IP-адресом 12.34.56.78 и маской подсети 255.255.0.0 находится в сети 12.34.0.0. Чтобы получить адрес сети, зная IP-адрес и маску подсети, необходимо применить к ним операцию поразрядной конъюнкции (логическое И). Например, в случае более сложной маски:

IP-адрес: 00001100 00100010 00111000 01001110 (12.34.56.78)

Маска подсети: 11111111 11111111 11100000 00000000 (255.255.224.0)

Адрес сети: 00001100 00100010 00100000 00000000 (12.34.32.0)

Маску подсети часто записывают вместе с IP-адресом нотации CIDR (в формате «IP-адрес/количество единичных бит в маске»).

Разбиение одной большой сети на несколько маленьких подсетей позволяет упростить маршрутизацию.

Маски подсети являются основой метода бесклассовой маршрутизации.

Иногда встречается запись IP-адресов вида 10.96.0.0/11. Данный вид записи заменяет собой указание диапазона IP-адресов. Число после слэша означает количество единичных разрядов в маске подсети.

Назначение маски подсети

Маска назначается по следующей схеме 28n (для сетей класса C), где n - количество компьютеров в подсети + 2, округленное до ближайшей большей степени двойки.

ARP (протокол разрешения адресов) — сетевой протокол, предназначенный для преобразования IP-адресов (адресов сетевого уровня) в MAC-адреса (адреса канального уровня) в сетях TCP/IP.

Очень распространённый и чрезвычайно важный протокол. Каждый узел сети имеет два адреса, физический адрес и логический адрес. В сети Ethernet для идентификации источника и получателя информации используются оба адреса. Информация пересылаемая от одного компьютера другому по сети содержит в себе физический адрес отправителя, IP-адрес отправителя, физический адрес получателя и IP-адрес получателя. ARP-протокол обеспечивает связь между этими двумя адресами. Существует четыре типа ARP-сообщений: ARP-запрос (ARP request), ARP-ответ (ARP reply), RARP-запрос (RARP-request) и RARP-ответ (RARP-reply).

7

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

Потоком называют данные, поступающие от приложений на вход протоколов транспортного уровня TCP и UDP.

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

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

Дейтаграмму протокола IP называют также пакетом.

В стеке TCP/IP принято называть кадрами (фреймами) единицы данных протоколов, на основе которых IP-пакеты переносятся через подсети составной сети. При этом не имеет значения, какое название используется для этой единицы данных в локальной технологии.

6

Важнейшей задачей сетевого уровня является маршрутизация - передача пакетов между двумя конечными узлами в составной сети.

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

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

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

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

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

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

8

Cписок UNIX демонов, которые могут быть в различных модификациях UNIX. Текущее состояние этих процессов можно просмотреть с полным выводом команды ps.

Тот, кто обращается – клиетский процесс, запрос на предоставление услуги

Сервер – обеспечивает услуги

К серверу могут обращаться многие клиенты.

Общеизвестные службы /etc/services – информационный файл

Процесс

Описание

init

Unix программа, которая порождает все остальные процессы.

biod

Работает совместно с удаленным nfsd для разрешения клиентских запросов NFS.

dhcpd

Динамически определяет конфигурацию TCP/IP для клиентов.

fingerd

Обеспечивает сетевой интерфейс для протокола finger, для использования команды finger.

ftpd

Служба FTP запросов с удалённой системы. Прослушивает специальный порт определённый в служебном файле для ftp.

httpd

Демон веб сервера.

inetd

Прослеживает сетевые запросы. При допустимом запросе запускает фоновый процесс для обслуживания запроса. В некоторых системах используется расширенная версия — xinetd

lpd

«Line Printer Daemon»(англ.) протокол управления спулом печати.

nfsd

Процесс NFS операторских запросов для клиентских систем. Исторически каждый nfsd демоном поддерживает один запрос за раз, по этому запускается несколько копий.

ntpd

NTP демон, который управляет синхронизацией времени по сети. xntpd снабжён 3-й версией стандарта NTP.

rpcbind

Обеспечивает преобразование remote procedure call (RPC), такой как ypbind.

sshd

Прослушивает запросы secure shell от клиентов.

swapper

Копирует местный процесс в пространство swap для исправления физической страницы памяти для ядра. Также называется sched.

syslogd

Системный процесс записи различных системных сообщений.

syncd

Периодически синхронизирует установленные системные файлы с системной памятью.

xfsd

Обслуживает X11 шрифты для удалённых клиентов.

vhand

Освобождает страницы памяти для использования другими процессами. Также известен как «page stealing daemon»англ.

ypbind

Находит сервер для NIS домена и запоминает информацию в файле.

Каждая строка содержит имя протокола и номер портаю Все серверные службы, запускаемые во время старта ОС – замуровали, ДЕМОНЫ .

Супердемон принимает все запросы по сети, определяет, какой процесс дб запущен. Использует файл /etc/inetd.conf

Каждая строка – Номер порта, название протокола, имя файла с исполнимой программой демона

11

RLOGIN (удаленный вход в систему) позволяет пользователям UNIX подключаться к системам UNIX на других машинах через сеть Internet и работать так же, как при прямом подключении терминала к машине. Этот протокол обеспечивает такой же сервис, как протокол TELNET.

Есть возможность автологина /etc/host-equiv

13

SSH - сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и передачу файлов. Сходен по функциональности с протоколами Telnet и rlogin, но, в отличие от них, шифрует весь трафик, включая и передаваемые пароли. SSH допускает выбор различных алгоритмов шифрования. SSH-клиенты и SSH-серверы имеются для большинства операционных систем.

TELNET — сетевой протокол для реализации текстового интерфейса по сети (в современной форме — при помощи транспорта TCP). Название «telnet» имеют также некоторые утилиты, реализующие клиентскую часть протокола.

12

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

FTP является одним из старейших прикладных протоколов, появившимся задолго до HTTP, в 1971 году. До начала 90-х годов на долю FTP приходилось около половины трафика в сети Интернет. Он и сегодня широко используется для распространения ПО и доступа к удалённым хостам.

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

Применение

Основное назначение TFTP — обеспечение простоты реализации клиента. В связи с этим он используется для загрузки бездисковых рабочих станций, загрузки обновлений и конфигураций в «умные» сетевые устройства, записи статистики с мини-АТС (CDR) и аппаратных маршрутизаторов/файрволов.

Вход по логину и паролю. Можно разрешить для всех. Есть возможность анонимного доступа.

/ect/ftpusers

(Указано те, кому запрещено?)

9

Програмные интерфейсы транспортного уровня

Наиболее известные – Sockets. Реализованы в составе ядра ОС, при выполнении обращаются к ядру. Объект типа сокет – структура данных, характ сост сети.

Сокеты идентифицируются по SockID.

Объекты сокет мб 2х типов:

AF.INET AF.UNIX

Виды соединений: потоковые и дейтаграмные

Сервер: socket (создание), bind *инф о IP и N порта), listen (буферизация запросов, образуется очередь, один из параметров – её длина), accept (прием вызова), send <-> recv (прием и передача), shutdown, close

Клиент: socket, connect, send <-> recv shutdown, close

Один момент – один запрос, но можно реализовать и параллельную обработку.

Через дэйтагамное: socket-bind-sendto<->recvfrom-shutdown-close

10

В сетях TCP/IP используется специальная распределенная служба Domain Name System (DNS), которая устанавливает это соответствие на основании создаваемых администраторами сети таблиц соответствия. Поэтому доменные имена называют также DNS-именами,