Компьютерная сеть Понятие сети Сеть (network) – группа компьютеров, принтеров, маршрутизаторов, сетевых устройств, которые обмениваются информацией через некоторую среду передачи данных. Локальные сети (Local Area Networks) – позволяют объединить информационные ресурсы предприятия (файлы, принтеры, БД) для повышения эффективности применения вычислительной техники. Городские сети (Metropolitan Area Networks) – позволяют организовать обмен данными между отдельными компьютерами и сетями отдельного региона, города. Глобальные сети (Wide Area Networks) – позволяют обмениваться данными между отдельными сетями предприятий, удаленными на значительные расстояния. Понятие сети Для того чтобы серверы и клиенты сети могли общаться, они должны работать с использованием одного протокола обмена информацией, то есть должны «говорить» на одном языке. Протокол определяет набор правил для организации обмена информацией на всех уровнях взаимодействия сетевых объектов. Существует эталонная модель взаимодействия открытых систем (Open System Interconnection Reference Model), часто называемая моделью OSI. Эта модель разработана Международной организацией по стандартизации (International Organization for Standardization, ISO). Модель OSI описывает схему взаимодействия сетевых объектов, определяет перечень задач и правила передачи данных. Она включает в себя семь уровней. Взаимодействие уровней модели OSI Каждый уровень может реально взаимодействовать только с соседними уровнями: верхним и нижним. Реальное взаимодействие уровней модели OSI Реальное взаимодействие — непосредственная передача информации, при которой данные остаются неизменными. Физическая связь реально имеет место только на самом нижнем уровне. Виртуальное взаимодействие уровней модели OSI Каждый уровень компьютера-отправителя взаимодействует с таким же уровнем компьютераполучателя, как будто он связан напрямую. Такая связь называется логической или виртуальной связью. В действительности взаимодействие осуществляется между смежными уровнями одного компьютера. Виртуальное взаимодействие уровней модели OSI Итак, информация на компьютере-отправителе должна пройти через все уровни. Затем она передается по физической среде до компьютераполучателя и опять проходит сквозь все слои, пока не доходит до того же уровня, с которого она была послана на компьютере-отправителе. Горизонтальное взаимодействие уровней модели OSI Горизонтальные связи между всеми остальными уровнями являются виртуальными. В горизонтальной модели двум программам требуется общий протокол для обмена данными. Вертикальное взаимодействие уровней модели OSI Вертикальные связи сильно стандартизированы — это обеспечивает совместимость продуктов, работающих по стандарту какого-либо уровня, с продуктами, работающими по стандартам соседних уровней. В вертикальной модели соседние уровни обмениваются данными с использованием интерфейсов прикладных программ API (Application Programming Interface). Формирование пакета каждого уровня семиуровневой модели Перед подачей в сеть данные разбиваются на пакеты. Пакет (packet) это единица информации, передаваемая между станциями сети. При отправке данных пакет проходит последовательно через все уровни программного обеспечения. Формирование пакета каждого уровня семиуровневой модели На каждом уровне к пакету добавляется управляющая информация данного уровня (заголовок), которая необходима для успешной передачи данных по сети. Формирование пакета каждого уровня семиуровневой модели На принимающей стороне пакет проходит через все уровни в обратном порядке. Протокол каждого уровня читает информацию пакета, затем удаляет информацию, добавленную к пакету на этом же уровне отправляющей стороной, и передает пакет следующему уровню. Когда пакет дойдет до прикладного уровня, вся управляющая информация будет удалена из пакета, и данные примут свой первоначальный вид. Формирование пакета каждого уровня семиуровневой модели Физический уровень Уровень 0 — физическая среда передачи сигнала (кабели, радиолинии). Уровень ничего не описывает, только указывает среду. Уровень 1 — физический. Включает физические аспекты передачи двоичной информации по линиям связи (напряжение, частота, природа физической среды). Выполняет поддержание связи и прием-передачу битового потока. Канальный уровень Этот уровень определяет логическую топологию сети, правила получения доступа к среде передачи данных, решает вопросы, связанные с адресацией физических устройств в рамках логической сети и управлением передачей информации (синхронизация передачи и сервис соединений) между сетевыми устройствами. Физическая топология — это геометрия построения сети, а B – полносвязная; логическая топология — определяет С – звезда. направления потоков данных между узлами сети и способы передачи данных. Протоколы канального уровня Протоколами канального уровня определяются: - правила управления потоками данных (для устройств, работающих на этом уровне модели OSI, например, коммутаторы); - правила обнаружения (и иногда исправления) ошибок при передаче; - правила организации битов физического уровня (двоичные единицы и нули) в логические группы информации — фреймы или кадры; - правила идентификации компьютеров в сети по их физическим адресам (MAC-адрес). MAC-адрес MAC адрес (физический адрес) — это уникальный идентификатор, присваиваемый каждой единице активного оборудования компьютерных сетей (например сетевой карте персонального компьютера). MAC-адрес позволяет уникально идентифицировать каждый узел сети и доставлять данные только этому узлу. Таким образом, MAC-адреса формируют основу сетей на канальном уровне, которую используют протоколы более высокого (сетевого) уровня. Существует мнение, что MAC-адрес жестко вшит в сетевую карту и сменить его нельзя или можно только с помощью программатора. На самом деле MAC-адрес легко меняется программным путем, так как значение, указанное через драйвер, имеет более высокий приоритет, чем зашитое в плату. Протоколы канального уровня На канальном уровне данные рассматриваются как последовательный поток битов. Перед передачей по физическим каналам этот поток, в соответствии с принципом пакетной коммутации, разделяется на "порции", каждая из которых снабжается заголовком, содержащим некоторую служебную информацию, т.е. формируется блок информации — кадр. Протоколы канального уровня Структура заголовка кадра зависит от набора задач, которые решает протокол. Сложность канальных протоколов во многом определяется сложностью топологии сети. Очевидно, что организовать общение всего двух абонентов существенно проще, чем упорядочивать информационный обмен в сетях, где возможно параллельное взаимодействие нескольких пар абонентов. Поэтому канальные протоколы удобно разделять на две группы: - протоколы для соединений типа "точка-точка"; - протоколы для сетей сложных топологий. Для большинства протоколов канального уровня существует ограничение на максимально допустимый объем данных, передаваемых в одном кадре, вызванное различными техническими условиями. Структура кадра Кадр — единица данных канального уровня, состоящей из непрерывной последовательности сгрупированных битов, имеющей заголовок и окончание. Контрольная сумма кадра Достаточно часто поле контрольной суммы (или CRC — число для контроля целостности передачи информаци) располагается после данных. Это обеспечивает высокую эффективность проверки кадра при приеме, так как к моменту получения битов, соответствующих этому полю, весь кадр уже получен, и контрольная сумма может быть вычислена. С канальным уровнем обычно связаны следующие сетевые соединительные устройства: - мосты (объединяет сегменты подсети в единую сеть); - интеллектуальные концентраторы; - коммутаторы; - сетевые интерфейсные платы (сетевые интерфейсные карты, адаптеры и т.д.). Коммутатор Сетевой коммутатор (свич) — устройство, предназначенное для соединения нескольких узлов компьютерной сети в пределах одного или нескольких сегментов сети. Коммутатор работает на канальном (втором) уровне модели OSI. Коммутатор Коммутатор передаёт данные только непосредственно получателю. Это повышает производительность и безопасность сети, избавляя остальные сегменты сети от необходимости (и возможности) обрабатывать данные, которые им не предназначались. Коммутатор Коммутатор хранит в памяти таблицу коммутации, в которой указывается соответствие MAC-адреса узла порту коммутатора. Коммутатор анализирует фреймы (кадры) и, определяет MAC-адрес хоста-отправителя и получателя. Сетевой уровень Этот уровень обеспечивает связь любых двух точек сети. Доставка данных на сетевом уровне в общем-то похожа на доставку данных на канальном уровне модели OSI, где для передачи данных используется физическая адресация устройств. Однако адресация на канальном уровне относится только к одной логической сети, действует только внутри этой сети. Сетевой уровень описывает методы и средства передачи информации между многими независимыми (и часто разнородными) логическими сетями, которые, соединенные вместе, формируют одну большую сеть. Сетевой уровень В отличие от канального сетевой уровень может выбирать конкретный маршрут в объединенной сети и избегать посылки данных в те логические сети, в которые данные не адресованы. Сетевой уровень осуществляет это путем коммутаций, адресации на сетевом уровне и с использованием алгоритмов маршрутизации. Сетевой уровень также отвечает за обеспечение правильных маршрутов для данных через объединенную сеть, состоящую из разнородных сетей. Пакеты Сетевой пакет может состоять из стартовых бит (преамбулы), заголовков (headers), нагрузки (payload или body) и прицепа (trailer или footer). Между пакетами, посылаемыми в сеть, обычно соблюдается межкадровый интервал. Маршрутизатор (роутер) Устройство, которое собирает информацию о топологии межсетевых соединений и на ее основании пересылает пакеты сетевого уровня в сеть назначения. Чтобы передать сообщение из одной сети в другую сеть, нужно совершить транзитные передачи между сетями, каждый раз выбирая подходящий маршрут. Маршрутизатор Обычно маршрутизатор использует адрес получателя, указанный в пакетных данных, и определяет по таблице маршрутизации путь, по которому следует передать данные. Если в таблице маршрутизации для адреса нет описанного маршрута, пакет отбрасывается. Маршрутизаторы помогают уменьшить загрузку сети, благодаря фильтрации Маршрутизатор Проблема выбора наилучшего пути называется — маршрутизацией и ее решение — главная задача сетевого уровня. Эта проблема осложняется тем, что короткий путь не всегда лучший. Часто критериями служат: - время передачи данных по данному маршруту; - пропускная способность канала свзяи; - интенсивность трафика. Протоколы сетевого уровня - Open Systems Interconnection (OSI) Model - IPv4/IPv6, Internet Protocol - DVMRP, Distance Vector Multicast Routing Protocol - ARP, Address Resolution Protocol - ICMP, Internet Control Message Protocol - IGMP, Internet Group Management Protocol - PIM-SM, Protocol Independent Multicast Sparse Mode - PIM-DM, Protocol Independent Multicast Dense Mode - IPsec, Internet Protocol Security - IPX, Internetwork Packet Exchange - RIP, Routing Information Protocol IP протокол Internet Protocol (IP, досл. «межсетевой протокол») — маршрутизируемый протокол сетевого уровня стека TCP/IP. Именно IP стал тем протоколом, который объединил отдельные компьютерные сети во всемирную сеть Интернет. Неотъемлемой частью протокола является адресация сети (IP-адрес). Стек протоколов TCP/IP включает в себя четыре уровня: - прикладной уровень (application layer), - транспортный уровень (transport layer), - сетевой уровень (internet layer), - канальный уровень (link layer). IP-адрес IP-адрес (Internet Protocol Address) — уникальный сетевой адрес узла в компьютерной сети, построенной по протоколу IP. В сети Интернет требуется глобальная уникальность адреса; в случае работы в локальной сети требуется уникальность адреса в пределах сети. IP-адрес состоит из двух частей: номера сети и номера узла. В случае изолированной сети её адрес может быть выбран администратором из специально зарезервированных для таких сетей блоков адресов (10.0.0.0/8, 172.16.0.0/12 или 192.168.0.0/16). Если же сеть должна работать как составная часть Интернета, то адрес сети выдаётся провайдером либо региональным интернетрегистратором (их 5: Северная Америка, Южная Америка, Южная Азия и Австралия, Африка и Европа, Центральная Азия). Транспортный уровень Транспортный уровень (англ. Transport layer) — 4-й уровень сетевой модели OSI, предназначен для доставки данных. При этом не важно, какие данные передаются, откуда и куда, то есть, он предоставляет сам механизм передачи. Блоки данных он разделяет на фрагменты, размер которых зависит от протокола, короткие объединяет в один, а длинные разбивает. Этот уровень завершает организацию передачи данных: контроль потока данных, проходящих по маршруту, определенному 3 уровнем, правильность передачи блоков данных, правильность доставки, сохранность и порядок следования. Сеансовый уровень Сеансовый уровень способствует взаимодействию между устройствами, запрашивающими и поставляющими услуги: - устанавливает связь; - восстанавливает аварийно оконченные сеансы. Сеансы связи контролируются посредством механизмов, которые устанавливают, поддерживают, синхронизируют и управляют диалогом между поддерживающими связь объектами. Этот уровень также помогает верхним уровням идентифицировать доступный сетевой сервис и соединиться с ним. 6 Уровень. Представление. 6 Уровень. Представление. Уровень представления данных преобразует данные во взаимно согласованный формат (синтаксис обмена), понятный всем сетевым приложениям и компьютерам, на которых работают приложения. Может, кроме того, сжимать и разворачивать, а также шифровать и расшифровывать данные. 6 Уровень. Представление. Компьютеры используют различные правила представления данных с помощью двоичных нулей и единиц. Несмотря на то что все эти правила пытаются достичь общей цели — представить данные, понятные человеку, производители компьютеров и стандартизирующие организации создали правила, противоречащие друг другу. Когда два компьютера, использующие различные наборы правил, пытаются связаться друг с другом, им часто бывает необходимо выполнить некоторые преобразования. 6 Уровень. Представление. Локальные и сетевые операционные системы часто шифруют данные для защиты их от несанкционированного использования. Шифрование — это общий термин, который описывает некоторые методы защиты данных. Защита зачастую выполняется с помощью перемешивания данных (data scrambling), при котором используется один или несколько методов из трех: перестановка, подстановка, алгебраический метод. Все эти методы используются и в узбекском стандарте. Алгоритм шифрования данных O'z DSt 1105:2009. Центр научно-технических и маркетинговых исследований UNICON.UZ разработал стандарт O'z DSt 1105:2009 «Алгоритм шифрования данных». Настоящий стандарт «Алгоритм шифрования данных» (АШД) представляет собой криптографический алгоритм, предназначенный для защиты электронных данных. АШД симметричный блочный шифр, который используется для зашифрования и расшифрования информации. АШД может использовать криптографические ключи. Алгоритм шифрования данных O'z DSt 1105:2009. Центр научно-технических и маркетинговых исследований UNICON.UZ разработал стандарт O'z DSt 1105:2009 «Алгоритм шифрования данных». Настоящий стандарт «Алгоритм шифрования данных» (АШД) представляет собой криптографический алгоритм, предназначенный для защиты электронных данных. АШД симметричный блочный шифр, который используется для зашифрования и расшифрования информации. АШД может использовать криптографические ключи. 7 Уровень. Прикладной уровень. Прикладной уровень обеспечивает интерфейс между пользователем и сетью, доступ приложений к сетевому сервису. Реализуется пять прикладных служб: - служба справочника; - управление сетью; - передача файлов; - удаленный терминальный доступ; - электронная передача сообщений. Протоколы. Прикладной уровень. - BitTorrent - BOOTP - DNS - FTP - HTTP - NFS - POP, POP3 - IMAP - SSH - Telnet HTTP HTTP в настоящее время повсеместно используется во Всемирной паутине для получения информации с вебсайтов. HTTP («протокол передачи гипертекста») — изначально принимал данные в виде гипертекстовых документов в формате HTML, в настоящий момент используется для передачи произвольных данных. Основа HTTP — технология «клиент-сервер», то есть «клиенты» посылает запрос у «поставщика» (сервера), который ожидает запрос, производят необходимые действия и возвращают обратно сообщение с результатом. Вывод Т.о. компьютерная сеть — совокупность компьютеров, соединенных между собой в соответствии с одной из стандартных типовых топологий и использующих для передачи данных один из протоколов канального уровня, определенный для этой топологии.