
- •1.Общие принципы построения сетей
- •2.Топология физических связей
- •3. Адресация узлов сети .Коммутация. Обобщенная задача коммутации.
- •4..Маршрутизация. Продвижение данных. Мультиплексирование и демультиплексирование.
- •5.Коммутация каналов и пакетов
- •6.Коммутация пакетов
- •7.Дейтаграммная передача
- •8. Сравнение сетей с коммутацией пакетов и каналов
- •9. Архитектура и стандартизация сетей. Протокол и стек протоколов. Общая характеристика модели osi.
- •10. Архитектура и стандартизация сетей. Физический уровень. Канальный уровень. Сетевой уровень.
- •11. Архитектура и стандартизация сетей. Транспортный уровень. Сеансовый уровень. Уровень представления. Прикладной уровень.
- •12. Понятие открытой системы.
- •13. Распределение протоколов по элементам сети
- •14. Структурированная кабельная система зданий
- •15. Примеры сетей. Классификация компьютерных сетей. Классификация компьютерных сетей в технологическом аспекте.
- •16. Примеры сетей. Сеть доступа. Магистральная сеть. Информационные центры. Сети операторов связи.
- •17.Персональные сети и технология Bluetooth.
- •18. Мост как предшественник и Функциональный аналог коммутатора.
- •19. Коммутаторы. Параллельная коммутация
- •20. Скоростные версии Ethernet
- •21.Особенности персональных сетей
- •22.Поиск и стыковка устройств Bluetooth
- •23.Стандартизация протоколов локальных сетей
- •24.Ethernet со скоростью 10 Мбит/с на разделяемой среде
- •25. Ethernet со скоростью 10Мбит/с на разделяемой среде. Доступ к среде и переда данных .
- •26. Технологии Token Ring и fddi
- •27. Беспроводные локальные сети ieee 802.11. Проблем и области применения беспроводных локальных сетей.
- •28. Беспроводные локальные сети ieee 802.11. Топология локальных сетей стандарта ieee 802.11.
- •29. Мост как предшественник и функциональный аналог коммутатора. Логическая структуризация сетей и мосты
- •30. Мост как предшественник и функциональный аналог коммутатора. Алгоритм прозрачного моста ieee 802.1d
- •31. Мост как предшественник и функциональный аналог коммутатора. Топологические ограничения при применении мостов в локальных сетях
- •32. Коммутаторы. Параллельная коммутация
- •33.Коммутаторы. Параллельная коммутация
- •34.Виртуальные локальные сети. Назначение виртуальных сетей
- •35. Создание виртуальных сетей на базе одного коммутатора. Создание виртуальных сетей на базе нескольких коммутаторов.
- •36. Стек протоколов tcp/ip
- •37Формат ip-адреса Классы ip Особые ip-адреса
- •3 8Формат ip-адреса Классы ip Особые ip-адреса Использование масок при ip-адресации
- •39. Порядок назначения ip-адресов. Назначение адресов автономной сети. Централизованное распределение адресов. Адресация и технология cidr
- •40. Типы адресов стека tcp/ip. Локальные адреса. Сетевые ip-адреса. Доменные имена
- •41.Отображение ip-адресов на локальные адреса. Протокол разрешения адресов.
- •42. Формат ip-пакета.
- •43. Схема ip-маршрутизации. Упрощенная схема маршрутизации. Таблицы маршрутизации конечных узлов.
- •44. Пример ip-маршрутизации без масок
- •45. Маршрутизация с использованием масок. Структуризация сети масками одинаковой длины
- •46. Маршрутизация с использованием масок. Перекрытие адресных пространств
- •47. Протоколы транспортного уровня tcp и udp. Порты и сокеты
- •48. Протоколы транспортного уровня tcp и udp. Протокол udp и udp-дейтаграммы
- •49. Протоколы транспортного уровня tcp и udp. Протокол tcp и tcp-сегменты
- •50. Протокол rip. Построение таблицы маршрутизации
- •51Система dns Плоские символьные имена
- •52. Протокол dhcp
- •53. Протокол icmp
- •54. Трансляция адресов и настройка очередей
- •55. Proxy-сервер.
47. Протоколы транспортного уровня tcp и udp. Порты и сокеты
К транспортному уровню стека TCP/IP относятся:
протокол управления передачей (Transmission Control Protocol, TCP), описанный в стандарте RFC 793;
протокол пользовательских дейтаграмм (User Datagram Protocol, UDP), описанный в стандарте RFC 768.
Протоколы TCP и UDP, как и протоколы прикладного уровня, устанавливаются на конечных узлах.
В то время как задачей уровня сетевого взаимодействия, к которому относится протокол IP, является передача данных между сетевыми интерфейсами в составной сети, главная задача протоколов транспортного уровня TCP и UDP заключается в передаче данных между прикладными процессами, выполняющимися на компьютерах в сети.
Каждый компьютер может выполнять несколько процессов, более того, даже отдельный прикладной процесс может иметь несколько точек входа, выступающих в качестве адресов назначения для пакетов данных. Поэтому доставка данных на сетевой интерфейс компьютера-получателя — это еще не конец пути, так как данные необходимо переправить конкретному процессу-получателю. Процедура распределения протоколами TCP и UDP поступающих от сетевого уровня пакетов между прикладными процессами называется демультиплексированием
Существует и обратная задача: данные, генерируемые разными приложениями, работающими на одном конечном узле, должны быть переданы общему для всех них протокольному модулю IP для последующей отправки в сеть. Эту работу, называемую мультиплексированием, тоже выполняют протоколы TCP и UDP.
Протоколы TCP и UDP ведут для каждого приложения две системные очереди: очередь данных, поступающих к приложению из сети, и очередь данных, отправляемых этим приложением в сеть. Такие системные очереди называются портами1, причем входная и выходная очереди одного приложения рассматриваются как один порт. Для идентификации портов им присваивают номера.
Если процессы представляют собой популярные системные службы, такие как FTP, telnet, HТТР, TFTP, DNS и т. п., то за ними закрепляются стандартные назначенные номера, называемые также хорошо известными (well-known) номерами портов. Эти номера закрепляются и публикуются в стандартах Интернета (RFC 1700, RFC 3232). Так, номер 21 закреплен за серверной частью службы удаленного доступа к файлам FTP, a 23 — за серверной частью службы удаленного управления telnet. Назначенные номера из диапазона от 0 до 1023 являются уникальными в пределах Интернета и закрепляются за приложениями централизованно.
Для тех приложений, которые еще не стали столь распространенными, номера портов назначаются локально разработчиками этих приложений или операционной системой в ответ на поступление запроса от приложения. На каждом компьютере операционная система ведет список занятых и свободных номеров портов. При поступлении запроса от приложения, выполняемого на данном компьютере, операционная система выделяет ему первый свободный номер. Такие номера называют динамическими. В дальнейшем все сетевые приложения должны адресоваться к данному приложению с указанием назначенного ему динамического номера порта. После того как приложение завершит работу, его номер возвращается в список свободных и может быть назначен другому приложению. Динамические номера являются уникальными в пределах каждого компьютера, но при этом обычной является ситуация совпадения номеров портов приложений, выполняемых на разных компьютерах. Как правило, клиентские части известных приложений (DNS, W WW, FTP, telnet и др.) получают динамические номера портов от ОС.
Все что было сказано о портах, в равной степени относится к обоим протоколам транспортного Уровня (TCP и UDP). В принципе, нет никакой зависимости между назначением номеров портов для приложений, использующих протокол TCP, и приложений, работающих с протоколом UDP. Приложения, которые передают данные на уровень IP по протоколу UDP, получают номера, называемые UDP-портами. Аналогично, приложениям, обращающимся к протоколу TCP, выделяются ТСР-порты.
В том и другом случаях это могут быть как назначенные, так и динамические номера. Диапазоны чисел, которых выделяются номера TCP- и UDP-портов, совпадают: от 0 до 1023 для назначенных и от 1024 до 65 535 для динамических. Однако никакой связи между назначенными номерами. TCP- и UDP-портов нет. Даже если номера TCP- и UDP-портов совпадают, они идентифицируют разные приложения. Например, одному приложению может быть начен ТСР-порт 1750, а другому — UDP-порт 1750. В некоторых случаях, когда приложение может обращаться по выбору к протоколу TCP или UDP (например, таким приложением является DNS), ему, исходя из удобства запоминания, назначения совпадающие номера TCP- и UDP-портов (в данном примере — это хорошо известный номер 53).
Стандартные назначенные номера портов уникально идентифицируют тип приложений (FTP, или HTTP, или DNS и т. д.), однако они не могут использоваться для однозначной идентификации прикладных процессов, связанных с каждым из этих типов приложений.
Со́кеты — название программного интерфейса для обеспечения обмена данными между процессами. Процессы при таком обмене могут исполняться как на одной ЭВМ, так и на различных ЭВМ, связанных между собой сетью. Сокет — абстрактный объект, представляющий конечную точку соединения. Следует различать клиентские и серверные сокеты. Клиентские сокеты грубо можно сравнить с оконечными аппаратами телефонной сети, а серверные — с коммутаторами. Клиентское приложение (например, браузер) использует только клиентские сокеты, а серверное (например, веб-сервер, которому браузер посылает запросы) — как клиентские, так и серверные сокеты. Интерфейс сокетов впервые появился в BSD Unix. Программный интерфейс сокетов описан в стандарте POSIX.1 и в той или иной мере поддерживается всеми современными операционными системами.
Каждый процесс может создать слушающий сокет (серверный сокет) и привязать его к какому-нибудь порту операционной системы (в UNIX непривилегированные процессы не могут использовать порты меньше 1024). Слушающий процесс обычно находится в цикле ожидания, то есть просыпается при появлении нового соединения. При этом сохраняется возможность проверить наличие соединений на данный момент, установить тайм-аут для операции и т.д. Каждый сокет имеет свой адрес. ОС семейства UNIX могут поддерживать много типов адресов, но обязательными являются INET-адрес и UNIX-адрес. Если привязать сокет к UNIX-адресу, то будет создан специальный файл (файл сокета) по заданному пути, через который смогут сообщаться любые локальные процессы путём чтения/записи из него (см. Доменный сокет Unix). Сокеты типа INET доступны из сети и требуют выделения номера порта. Обычно клиент явно подсоединяется к слушателю, после чего любое чтение или запись через его файловый дескриптор будут передавать данные между ним и сервером.