Компьютерные сети (net101) Основы компьютерных сетей Содержание лекции
Скачать 3.81 Mb.
|
Компьютерные сети (NET101) Основы компьютерных сетей Содержание лекции Основные определения Эволюция компьютерных сетей Области применения компьютерных сетей Параметры дизайна, характеристики сетей Классификация сетей Топологии компьютерных сетей Способы адресации и техники коммутации Вглубь взаимодействия Сетевые технологии и протоколы, эталонные модели OSI и Internet Определения Сеть передачи данных – система связанных коммуникационными связями узлов, обеспечивающая передачу данных между субъектами информационного обмена. Компьютерная сеть - система связанных коммуникационными связями компьютеров, обеспечивающая* передачу данных между ними, а точнее, между вычислительными процессами, исполняемыми на них. * в автоматическом режиме и с заданным качеством iit: # ps aux USER PID %CPU %MEM START TIME COMMAND root 1 0.0 0.0 2009 0:05 init [5] <...> wwwrun 17050 1.0 3.7 12:47 0:01 /usr/sbin/httpd <...> iit.uio.csu.ru Запрос Содержимое страницы httpd на сервере iit, firefox.exe на рабочей станции – вычислительные процессы 1 2 3 4 Эволюция компьютерных сетей: преддверие Многотерминальные системы Многопользовательская многотерминальная система обслуживает пользователей в режиме разделения времени Эволюция компьютерных сетей: эпоха разделения времени и появления глобальных сетей Каналы передачи данных связали географически удалённые большие ЭВМ Пользователи одной большой ЭВМ получили возможность использовать вычислительные ресурсы другой ЭВМ Задачи поддержания соединения и передачи данных решали специализированные устройства – IMP (Interface Message Processor) Удалённый доступ к вычислительным ресурсам географически удалённых ЭВМ Эволюция компьютерных сетей: эпоха локальных сетей (ЛВС) “Floppy Net” Локальная сеть В отличие от глобальных сетей, расстояния были небольшими, что позволило проложить линии связи, позволяющее передавать большие объёмы данных за меньшее время Начинается активная стандартизация сетевых технологий ЛВС Эволюция компьютерных сетей: объединение сетей Объединение сетей компаний посредством единой планетарной сети Internet позволило предоставлять пользователям новые сервисы: WWW, электронную почту и т.д. Области применения сетей (услуги) Удалённый доступ к разделяемым ресурсам
Приложения «клиент-сервер» Базы данных Сервисы Традиционные
Конвергентные IP-телефония, видеоконференции Клиент-сервер Одноранговая Выделен компьютер, предоставляющий услуги – сервер Клиенты не предоставляют услуг друг другу и серверам Каждый компьютер выступает как в роли клиента – потребителя услуг, так и в роли сервера – поставщика услуг другим Характеристики компьютерных сетей Дизайн
Масштабируемость Расширяемость
Непрерывность функционирования при росте Автоконфигурирование (S3) Производительность Надёжность Стоимость Проектная Эксплуатационная Надёжность, вероятность безотказной работы, [%] Отказоустойчивость
Локализация и изоляция сбойных узлов Ремонтопригодность Автоматическое восстановление после отказа/сбоя, время восстановления, [с] Возможность ремонта/модернизации узлов и линий связи без нарушения доступности, деградации сервиса Доступность, [%] Скорость передачи трафика через сеть (средняя, минимальная гарантированная/пользователя), [бит/с] Задержка передачи и вариация задержки (джиттер), [с] Потери пакетов, [%] Классификация компьютерных сетей Топология сети Выбора топологии сети влияет на: надёжность, расширяемость, масштабируемость, производительность компьютерной сети. Топология сети – конфигурация графа, вершинам которого соответствуют узлы* сети, а рёбрам – физические или информационные связи между ними. * Выделяют конечные (например, компьютеры) и промежуточные (коммутационное оборудование) узлы. Представление сети в виде графа Сеть передачи данных можно представить в виде графа, в котором … … узлам СПД соответствуют вершины графа, рёбрам и дугам – коммуникационные связи между узлами. Сеть «точка-точка» Два узла непосредственно связаны друг с другом выделенным каналом связи Данные, отправленные одним узлом могут быть доставлены только его партнёру (peer) Примеры: модемное соединение Необходимость выбора топологии Что если компьютеров больше двух? Как их соединить? ??? ??? Типовые топологии сетей Полносвязная топология Каждый из узлов связан с остальным соединением «точка-точка» Число связей для N узлов: Добавление (N+1)-го узла потребует создания N новых связей Избыточность связей
Плохая расширяемость Сложна в сопровождении Получается из полносвязной путём удаления некоторых связей Хорошая практика – подключение каждого узла не менее чем к двум другим (надёжность) Избыточность связей
Хорошая расширяемость Сложна в сопровождении Данные передаются по кольцу от одного узла к другому, и, сделав, полный оборот возвращаются к узлу-источнику Обеспечивает наличие минимального числа резервных связей Избыточность связей
Возможно автоматическое детектирование разрыва и перестроение кольца Сложна в сопровождении Выделенный коммутационный узел обеспечивает транзит трафика между конечными узлами Наличие единой точки отказа – коммутатора Простые алгоритмы управления подключением со стороны конечных узлов Легко расширяема, пока не исчерпаны порты на коммутаторе Проста в сопровождении К Иерархическая топология К К К Несколько коммутационных узлов иерархически связанных между собой Отказ коммутатора разбивает сеть на несвязанные фрагменты Простые алгоритмы управления подключением со стороны конечных узлов Легко расширяема Проста в сопровождении Топология «общая шина» Узлы сети подключены к общей разделяемой среде передачи (кабель, радиоэфир) Сеть является широковещательной – данные, отправленные одним узлом, получают все Низкая стоимость Сложные алгоритмы управления доступом к разделяемой среде Легко расширяется, но в ущерб производительности Разрыв кабеля приводит к фрагментации сети «Шумящий» узел выводит сеть из строя Смешанная топология Проблема адресация Возможен только один получатель Множество потенциальных получателей Узел, отправляющий данные, должен иметь возможность указать кому они предназначаются. Адресация узла(-ов) назначения Данные могут быть предназначены
группу узлов (multicast) всем узлам сети (broadcast) любому одному из группы (anycast) Адрес
Числовой (ex. 195.54.14.135 или 0012.A417.FFAF) Адресное пространство Плоское Иерархическое Узел 2: «Передать данные узлу 6»
Чтобы доставлять данные по адресу, коммутационные узлы должны «знать» как достичь каждый узел Пример: Ethernet MAC-адрес
Узел A.2: «Передать данные узлу C.2»
Большинству коммутационных узлов достаточно «знать» как достичь сегмента, в котором размещён узел Пример: IP-адрес (№ сети, № узла) Один и тот же узел, имеющий несколько сетевых подключений, может иметь несколько сетевых адресов Конец сетевого соединения со стороны узла называется его сетевым интерфейсом Постановка задачи коммутации Коммутация - соединение конечных узлов через сеть транзитных узлов. Техники коммутации Коммутация каналов Коммутация сообщений Коммутация пакетов Временные диаграммы сетевого взаимодействия вычислительных процессов Временная диаграмма позволяет проиллюстрировать сетевое взаимодействие ВП, этапы соблюдения протокола. Протокол – набор формальных правил определяющий формат данных, передаваемых процессами, а также порядок взаимодействия процессов при передаче данных. Используемые обозначения PDU (Protocol Data Unit) – блок данных протокола REQ (Request) – запрос ACK (Acknowledge) – подтверждение Conn (Connection) – запрос установления соединения Resp (Response) – ответ Send – посланный PDU Rec (Receive) – принятый PDU ERR - ошибка Коммутация каналов Техника заимствована из телефонных сетей Первоначально это было физическое соединение В настоящее время это виртуальное соединение, имеющее гарантированные параметры скорости, задержки и потерь при доставке данных Формируется канал передачи данных между узлом-отправителем (A) и узлом-получателем (B) через всю сеть Временная диаграмма коммутации каналов Три фазы
Обмен данными, Разрыв соединение (Конец связи). Прямой канал с гарантированными характеристиками Скорость передачи определяется самым медленным звеном Коммутация сообщений Сообщение передаётся от узла к узлу, каждый раз целиком. Временная диаграмма коммутации сообщений Узел отправляет сообщение дальше, только после получения его целиком После приёма сообщения узел осуществляет проверку правильности его передачи Простота реализации Последовательная передача увеличивает время доставки Ресурсоёмко - узлы должны иметь соответствующие буферы временного хранения сообщения Коммутация пакетов Сообщение делится на блоки данных, размер которых ограничен (ex. 1500 байт для Ethernet) - фрагментируется. Каждый блок снабжается заголовком, в котором указывается адресат, которому данные предназначены – формируется пакет. На принимающей стороне происходит сборка сообщения из блоков данных полученных пакетов . Проблемы коммутации пакетов Порядок доставки пакетов может не соответствовать порядку следования блоков сообщения – требуется упорядочивание фрагментов получателем Проблема подтверждения доставки – при потере пакета необходимо как-то сообщить отправителю, что фрагмент сообщения был потерям и требуется повторная передача 1 2 3 1 2 3 2 1 Виды коммутации пакетов Проблемы потери и неупорядоченной доставки пакетов игнорируются Решается и проблема неупорядоченной доставки пакетов и проблема потери пакетов Дейтаграммная передача Порядок доставки и сама доставка не гарантируются Коммутация по адресу назначения в каждом пакете Простота реализации Проблемы упорядочения должны решаться вычислительными процессами, использующими дейтаграммную передачу Применяется в случаях, когда нет необходимости в надёжной доставке и каждый пакет является самостоятельным сообщением Логическое соединение (без фиксации маршрута) Между конечными узлами устанавливается соединение Порядковый номер передаётся в пакете вместе с данными Подтверждения и повтор передачи решают проблему потери пакетов Коммутация по адресу назначения в каждом пакете Усложняет логику работы конечных узлов Применяется в случаях, когда порядок пакетов критичен Виртуальный канал Виртуальный канал создаётся на всех узлах сети, аналогично коммутации каналов и определяет елиный для всех пакетов путь через сеть Подтверждения и повтор передачи решают проблему потери пакетов Коммутация по номеру виртуального канала Упрощает реализация промежуточных узлов коммутации Усложняет логику работы конечных узлов Не решает окончательно проблему потери пакетов – требует обработки потерь конечными узлами Статистическое мультиплексирование время время время трафик Один поток Два потока Средний трафик Много потоков Сетевой трафик вариабельный, т.е. он быстро меняется. Пики трафика независимых потоков происходят в разное время. Заключение: чем больше потоков мы имеем, тем глаже трафик. Средний трафик: 1, 2, 10, 100, 1000 потоков. трафик трафик Почему коммутации пакетов?
Возможна параллельная передача сообщения между узлами (разделение нагрузки) Ошибка при передаче может быть выявлена сразу после приёма пакета iit: # ps aux USER PID %CPU %MEM START TIME COMMAND root 1 0.0 0.0 2009 0:05 init [5] <...> wwwrun 17050 1.0 3.7 12:47 0:01 /usr/sbin/httpd <...> iit.uio.csu.ru Запрос Содержимое страницы httpd на сервере iit, firefox.exe на рабочей станции – вычислительные процессы 1 2 3 4 firefox.exe httpd Разбить на пакеты Передать поток битов Сформировать запрос … … Собрать ответ из отдельных пакетов Гарантировать доставку Передать поток битов Принять поток битов … … Обработать запрос … … Запрос Ответ firefox.exe httpd Разбить на пакеты Передать поток битов Сформировать запрос … … Собрать ответ из отдельных пакетов Гарантировать доставку Передать поток битов Принять поток битов … … Обработать запрос … … Запрос Ответ Уровень K Уровень 1 Уровень N OPEN SYSTEM INTERCONNECTION (OSI) Предложена в 1983 г. как базовая модель построения компьютерных сетей
Мощное описательное средство Упрощает проектирование Улучшает реализацию Протокол Интерфейс Протокол Все необходимые для обеспечения взаимодействия функции группируются в уровни Каждый уровень обеспечивает строго определённую функциональность Вышележащие уровни обращаются за услугами к нижележащим Основные определения Протокол - это правила, определяющие взаимодействие между системами в рамках одного уровня. Интерфейс - это набор функций, который нижележащий уровень предоставляет вышележащему. Стек протоколов - это набор протоколов разных уровней, достаточный для организации взаимодействия систем. Базовая модель ВОС Сеcсия Ф Физический Физический Прикладной Представи тельский Транспортный Сетевой Звено данных ЗД С T С П Прикладной Ф Протокольное взаимодействие Интерфейсное взаимодействие Repeater 1 2 3 4 5 6 7 Repeater Базовая модель ВОС Сеcсия Звено данных Ф Физический Физический Прикладной Представи тельский Транспортный Сетевой Звено данных ЗД С T С П Прикладной ЗД Ф Протокольное взаимодействие Интерфейсное взаимодействие Bridge 1 2 3 4 5 6 7 Bridge Базовая модель ВОС Сеcсия Сетевой Звено данных Ф Физический Физический Прикладной Представи тельский Транспортный Сетевой Звено данных ЗД С T С П Прикладной С ЗД Ф Протокольное взаимодействие Интерфейсное взаимодействие Router Router 1 2 3 4 5 6 7 Модель INTERNET Сетевой Канальный Транспотный Application Presentation Session Transport Network Link Physical 7-уровневая OSI модель 4-уровневая Internet модель Прикладной HTTP HTML/Binary IP TCP Ethernet Protocol data units (PDU) и инкапсуляция Функции заголовка пакета Стандартизация сетевых технологий* Источники стандартов
IEEE (802.3 – Ethernet, 802.11 - WiFi) ITU-T (G.991 - SHDSL) ECMA Национальные организации по стандартизации ANSI NIST Форумы и сообщества исследователей, разработчиков, производителей IETF (стек TCP/IP) ATM Forum FR Forum MPLS Forum Фирмы-производители Novell, DEC, IBM, Cisco, etc. Сетевая технология – согласованный набор программных и аппаратных средств, а также механизмов передачи данных, достаточный для построения вычислительной сети. |