Вопрос №3 Принципы проектирования информационного обеспечения программного комплекса
Вид материала | Документы |
- Е. В. Чепин московский инженерно-физический институт (государственный университет), 30.11kb.
- Рабочая программа учебной дисциплины (модуля) case-средства проектирования программного, 143.56kb.
- Технология программирования, 643.21kb.
- Базы данных, 3110.93kb.
- А. А. Дюмин московский инженерно-физический институт (государственный университет), 30.84kb.
- Учебно-методический комплекс дисциплины разработка и стандартизация программных средств, 362.73kb.
- Методика выбора программного обеспечения турфирмой Антон Россихин (само-софт), 34.31kb.
- С. Д. Романин московский инженерно-физический институт (государственный университет), 24.74kb.
- Примерная программа наименование дисциплины Проектирование и архитектура программных, 182.2kb.
- Рабочая программа учебной дисциплины "системы автоматизированного проектирования электроустановок, 119.83kb.
Вопрос №25. Техническое и программное обеспечение глобальных компьютерных сетей (INTERNET).
Информационная сеть состоит из множества устройств для генерирования, обработки и получения информации, называемых станциями данных или узлами сети, и физической среды, служащей для передачи информации между узлами, называемой средой передачи данных.
Линия передачи данных - часть среды передачи данных, используемая для распространения сигналов в нужном направлении. Примерами линий передачи данных являются коаксиальный кабель, витая пара проводов, волоконно-оптическая линия связи (ВОЛС).
Интернет состоит из многих тысяч корпоративных, научных, правительственных и домашних сетей. Объединение сетей разной архитектуры и топологии стало возможно благодаря протоколу IP (англ. Internet Protocol) и принципу маршрутизации пакетов данных. Протокол IP был специально создан агностическим в отношении физических каналов связи. То есть любая система (сеть) передачи цифровых данных, проводная или беспроводная, может передавать и трафик Интернета. На стыках сетей специальные маршрутизаторы (программные или аппаратные) занимаются сортировкой и перенаправлением пакетов данных, исходя из IP-адресов получателей этих пакетов. Протокол IP образует единое адресное пространство в масштабах всего мира, но в каждой отдельной сети может существовать и собственное адресное подпространство, которое выбирается исходя из класса сети. Такая организация IP-адресов позволяет маршрутизаторам однозначно определять дальнейшее направление для каждого мельчайшего пакета данных. В результате между отдельными сетями Интернета не возникает конфликтов, и данные беспрепятственно и точно передаются из сети в сеть по всей планете.
Протоколы интернета
Протоколы - это стандарты, определяющие формы представления и способы пересылки сообщений, процедуры их интерпретации, правила совместной работы различного оборудования в сетях.
Протокол в данном случае — это, образно говоря, «язык», используемый компьютерами для обмена данными при работе в сети. Чтобы различные компьютеры сети могли взаимодействовать, они должны «разговаривать» на одном «языке», то есть использовать один и тот же протокол.
Наиболее распространённые интернет-протоколы (в алфавитном порядке, сгруппированные в примерном соответствии модели OSI):
На прикладном уровне:
- DNS (система, позволяющая преобразовывать символьные имена доменов в IP-адреса (и наоборот))
- FTP (сетевой протокол, предназначенный для передачи файлов)
- HTTP (передача веб-страниц)
- HTTPS (расширение протокола HTTP, поддерживающее шифрование)
- IMAP (интернет-протокол прикладного уровня для доступа к электронной почте)
- LDAP (протокол для доступа к службе каталогов X.500)
- POP3 (протокол, используемый для доставки сообщений электронной почты)
- SMTP (протокол для отправки почты от пользователей к серверам и между серверами)
- SSH (протокол, позволяющий производить удалённое управление компьютером и передачу файлов)
- Telnet (протокол для удалённого доступа к компьютеру с помощью командного интерпретатора)
- XMPP (Jabber) (открытый протокол для быстрого обмена сообщениями)
На сеансовом уровне/уровне представления
- SSL (криптографический протокол, обеспечивающий безопасную передачу данных)
- TLS (см. SSL)
На транспортном уровне
- TCP (один из основных сетевых протоколов Internet, предназначенный для управления передачей данных)
- UDP (то же, что и TCP. В отличие от TCP, UDP не гарантирует доставку пакета)
На сетевом уровне
- BGP (основной протокол динамической маршрутизации)
- ICMP (используется для передачи сообщений об ошибках и других исключительных ситуациях, возникших при передаче данных)
- IGMP (используется для сообщения принадлежности к IP-группе сетевым маршрутизаторам)
- IP (используется для ненадёжной доставки данных (разделяемых на так называемые пакеты) от одного узла сети к другому)
- OSPF (протокол динамической маршрутизации в сетях IPv4 и IPv6)
- RIP (протокол маршрутизации в небольших компьютерных сетях)
- EIGRP (протокол маршрутизации)
На канальном уровне
- Ethernet (пакетная технология компьютерных сетей, определяет проводные соединения и электрические сигналы на физическом уровне)
- Frame relay (служба коммутации пакетов)
- PPP (механизм для создания и запуска IP (Internet Protocol) и других сетевых протоколов на последовательных линиях связи)
- SLIP (простейший способ инкапсуляции IP-дейтограмм для последовательных каналов связи)
Есть ещё целый ряд протоколов, ещё не стандартизированных, но уже очень популярных в сети Интернет. Эти протоколы в большинстве своём нужны для обмена файлами и текстовыми сообщениями, на некоторых из них построены целые файлообменные сети.
Маршрутизация
Главной задачей стека TCP/IP является объединение в сеть пакетных подсетей через шлюзы. Каждая сеть работает по своим собственным законам, однако предполагается, что шлюз может принять пакет из другой сети и доставить его по указанному адресу. Реально, пакет из одной сети передается в другую подсеть через последовательность шлюзов, которые обеспечивают сквозную маршрутизацию пакетов по всей сети. В данном случае, под шлюзом понимается точка соединения сетей. При этом соединяться могут как локальные сети, так и глобальные сети. В качестве шлюза могут выступать как специальные устройства, маршрутизаторы, например, так и компьютеры, которые имеют программное обеспечение, выполняющее функции маршрутизации пакетов.
Маршрутизация - это процедура определения пути следования пакета из одной сети в другую. Такой механизм доставки становится возможным благодаря реализации во всех узлах сети протокола межсетевого обмена IP. Если обратиться к истории создания сети Internet, то с самого начала предполагалось разработать спецификации сети коммутации пакетов. Это значит, что любое сообщение, которое отправляется по сети, должно быть при отправке разделено на фрагменты. Каждый из фрагментов должен быть снабжен адресами отправителя и получателя, а также номером этого пакета в последовательности пакетов, составляющих все сообщение в целом. Такая система позволяет на каждом шлюзе выбирать маршрут, основываясь на текущей информации о состоянии сети, что повышает надежность системы в целом. При этом каждый пакет может пройти от отправителя к получателю по своему собственному маршруту. Порядок получения пакетов получателем не имеет большого значения, т.к. каждый пакет несет в себе информацию о своем месте в сообщении.
При создании этой системы принципиальным было обеспечение ее живучести и надежной доставки сообщений, т.к. предполагалось, что система должна была обеспечивать управление Вооруженными Силами США в случае нанесения ядерного удара по территории страны.
Коммутаторы, организующие рабочую группу, мосты, соединяющие два сегмента сети и локализующие трафик в пределах каждого из них, а также switch, позволяющий соединять несколько сегментов локальной вычислительной сети - это все устройства, предназначенные для работы в сетях IEEE 802.3 или Еthernet (т.е. в локальных сетях). Однако, существует особый тип оборудования, называемый маршрутизаторами (routегs), который применяется в сетях со сложной конфигурацией для связи ее участков с различными сетевыми протоколами (в том числе и для доступа к глобальным (WАN) сетям), а также для более эффективного разделения трафика и использования альтернативных путей между узлами сети. Основная цель применения маршрутизаторов - объединение разнородных сетей и обслуживание альтернативных путей.
Традиционно, маршрутизатор использует таблицу маршрутизации и адрес получателя, который находится в пакетах данных для дальнейшей передачи данных. Выделяя эту информацию, он определяет по таблице маршрутизации путь, по которому следует передать данные и направляет пакет по этому маршруту. Если в таблице маршрутизации для адреса нет описанного маршрута, пакет отбрасывается.
Существуют другие способы определения маршрута пересылки пакетов, когда, например, используется адрес отправителя, используемые протоколы верхних уровней и другая информация, содержащаяся в заголовках пакетов сетевого уровня. Нередко маршрутизаторы могут осуществлять трансляцию адресов отправителя и получателя (англ. NAT, Network Address Translation), фильтрацию транзитного потока данных на основе определённых правил с целью ограничения доступа, шифрование/дешифрование передаваемых данных и т. д.
Различные типы маршрутизаторов отличаются количеством и типами своих портов, что собственно и определяет места их использования. Маршрутизаторы, например, могут быть использованы в локальной сети Ethernet для эффективного управления трафиком при наличии большого числа сегментов сети, для соединения сети типа Еthernet с сетями другого типа, например Тоkеn Ring, FDDI, а также для обеспечения выходов локальных сетей на глобальную сеть.
Таблица маршрутизации содержит информацию, на основе которой маршрутизатор принимает решение о дальнейшей пересылке пакетов. Таблица состоит из некоторого числа записей — маршрутов, в каждой из которых содержится адрес сети получателя, адрес следующего узла, которому следует передавать пакеты и некоторый вес записи — метрика. Метрики записей в таблице играют роль в вычислении кратчайших маршрутов к различным получателям. В зависимости от модели маршрутизатора и используемых протоколов маршрутизации, в таблице может содержаться некоторая дополнительная служебная информация.
Таблица маршрутизации может составляться двумя способами:
- статическая маршрутизация — когда записи в таблице вводятся и изменяются вручную. Такой способ требует вмешательства администратора каждый раз, когда происходят изменения в топологии сети. С другой стороны, он является наиболее стабильным и требующим минимум аппаратных ресурсов маршрутизатора для обслуживания таблицы.
- динамическая маршрутизация — когда записи в таблице обновляются автоматически при помощи одного или нескольких протоколов маршрутизации — RIP, OSPF, EIGRP, IS-IS, BGP, HSRP и др. В этом случае любые изменения в топологии сети автоматически отображаются в таблице маршутизации. Кроме того, маршрутизатор строит таблицу оптимальных путей к сетям назначения на основе различных критериев — количества промежуточных узлов, пропускной способности каналов, задержки передачи данных и т. п. Критерии вычисления оптимальных маршрутов чаще всего зависят от протокола маршрутизации, а также задаются конфигурацией маршрутизатора. Такой способ построения таблицы позволяет автоматически держать таблицу маршрутизации в актуальном состоянии и вычислять оптимальные маршруты на основе текущей топологии сети. Однако, динамическая машрутизация оказывает дополнительную нагрузку на устройства, а высокая нестабильность сети может приводить к ситуациям, когда маршрутизаторы не успевают синхронизировать свои таблицы, что проводит к противоречивым сведениям о топологии сети в различных её частях и потере передаваемых данных.
Передающее оборудование глобальных сетей
Кроме вышеописанных маршрутизаторов, в глобальных сетях используется следующее передающее оборудование:
- Мультиплексоры
- Группы каналов
- Частные телефонные сети
- Телефонные модемы
- Адаптеры ISDN
- Кабельные модемы
- Модемы и маршрутизаторы DSL
Моде́м (аббревиатура, составленная из слов модулятор-демодулятор) — устройство, применяющееся в системах связи и выполняющее функцию модуляции и демодуляции. Модулятор осуществляет модуляцию, то есть изменяет характеристики несущего сигнала в соответсвии с изменениями входного информационного сигнала, демодулятор осуществляет обратный процесс. Частным случаем модема является широко применяемое периферийное устройство для компьютера, позволяющее ему связываться с другим компьютером, оборудованным модемом, через телефонную сеть (телефонный модем) или кабельную сеть (кабельный модем).
Кабельные модемы — используются для передачи данных по специализированным кабелям — к примеру, по кабелям систем коллективного телевидения.
ISDN-модемы (адаптеры) — модемы для цифровых коммутируемых телефонных линий
DSL-модемы используются для организации выделенных (некоммутируемых) линий используя обычную телефонную сеть. Отличие от коммутируемых модемов - в кодировании сигнала. Некоторые варианты (напр., ADSL) позволяют одновременно с передачей данных осуществлять пользование телефонной линией в обычном порядке.
Серверы в глобальной сети
Се́рвер (англ. server от англ. to serve — служить) — в информационных технологиях — программный компонент вычислительной системы, выполняющий сервисные функции по запросу клиента, предоставляя ему доступ к определённым ресурсам. Таким образом, сервер в данном случае является программой (или программным модулем), выполняющейся на каком-то аппаратном обеспечении.
Как правило, каждый сервер обслуживает один (или несколько схожих) протоколов и серверы можно классифицировать по типу услуг которые они предоставляют.
Сетевые службы
Сетевые службы обеспечивают функционирование сети, например серверы DNS обеспечивают трансляцию имен в адреса и наоборот.
Серверы туннелирования (например, различные VPN-серверы) и прокси-серверы обеспечивают связь с сетью, недоступной роутингом.
Серверы AAA и Radius обеспечивают в сети единую аутентификацию, авторизацию и ведение логов доступа.
Информационные службы
К информационным службам можно отнести как простейшие серверы сообщающие информацию о хосте (time, daytime, motd), пользователях (finger, ident), так и серверы для мониторинга, например SNMP. Большинство информационных служб работают через универсальные серверы.
Особым видом информационных служб являются серверы синхронизации времени - NTP, кроме информировании клиента о точном времени NTP-сервер периодически опрашивает несколько других серверов на предмет коррекции собственного времени. Кроме коррекции времени анализируется и корректируется скорость хода системных часов. Коррекция времени осуществляется ускорением или замедлением хода системных часов (в зависимости от направления коррекции), чтобы избежать проблем возможных при простой перестановке времени.
Файл-серверы
Файл-серверы представляют собой серверы для обеспечения доступа к файлам на диске сервера.
Прежде всего это серверы передачи файлов по заказу, по протоколам FTP, TFTP и HTTP. Протокол HTTP предназначен для передачи файлов, но сервера могут отдавать в качестве запрошенных файлов произвольные данные, например динамически созданные веб-страницы, картинки и т. п.
Другие серверы позволяют монтировать дисковые разделы сервера в дисковое пространство клиента и полноценно работать с файлами на них. Это позволяют серверы протоколов NFS и SMB. Серверы NFS и SMB работают через интервейс RPC.
Серверы доступа к данным
Серверы доступа к данным обслуживают базу данных и отдают данные по запросам. Одним из самых простых серверов подобного типа — LDAP (англ. Lightweight Directory Access Protocol — облегчённый протокол доступа к спискам).
Для доступа к серверам баз данных единого протокола не существует, однако все сервера баз данных объединяет использование единых правил формирования запросов — язык SQL (англ. Structured Query Language — язык структурированных запросов).
Службы обмена сообщениями
Службы обмена сообщениями позволяют клиенту передавать и получать сообщения (обычно — текстовые).
В первую очередь это сервера электронной почты работающие по протоколу SMTP. SMTP-сервер принимает сообщение и доставляет его в локальный почтовый ящик пользователя или на другой SMTP-сервер (сервер назначения или промежуточный). На многопользовательских компьютерах, пользователи работают с почтой прямо на терминале (или веб-интерфейсе). Для работы с почтой на персональном компьютере, почта забирается из почтового ящика через серверы, работающие по протоколам POP3 или IMAP.
Для организации конференций существует сервера новостей, работающие по протоколу NNTP.
Для обмена сообщениями в реальном времени существуют сервера чатов, стандартный чат-сервер работает по протоколу IRC — распределенный чат для интернета). Существует большое количество других чат-протоколов, например ICQ.
Серверы удаленного доступа
Серверы удаленного доступа, через соотвествующую клиентскую программу, обеспечивают пользователя консольными доступом к удаленной системе.
Для обеспечения доступа к командной строке служат сервера telnet, RSH, SSH.
Графический интерфейс для Unix-систем — X Window System, имеет встроенный сервер удаленного доступа, так как с такой возможностью разрабатывался изначально. Иногда возможность удаленного доступа к интерфейсу Х-Windows неправильно называют «X-Server» (этим термином в X-Windows называется видеодрайвер).
Стандартный сервер удаленного доступа к графическому интерфейсу Microsoft Windows называется терминальный сервер.
Некоторую разновидность управления (точнее мониторинга и конфигурирования), также, предоставляет протокол SNMP. Компьютер или аппаратное устройство для этого должно иметь SNMP-сервер.
Серверы разделения ресурсов
Некоторые серверы призваны разделить доступ к аппаратным устройствам, например сервер печати разделяет доступ к принтеру или другому печатающему устройству.
Виды доступа в интернет
Непосредственный доступ предлагает наиболее гибкое подключение. Каждый из компьютеров является полноправным членом интернет и может воспользоваться любой из функций сети.
SLIP и PPP – версии программного обеспечения Internet, которое работает на обычных телефонных линиях, используя стандартные высокоскоростные модемы.
SLIP - Это Internet-протокол, позволяющий в качестве линий связи использовать последовательные линии, например, вкупе с модемом - обычные телефонные линии. Программное обеспечение, реализующее работу с протоколом SLIP, принимает символы, приходящие с устройства последовательной передачи данных (модема, последовательного порта и т.д.). Рассматривает и толкует их как составляющие IP-пакета. Укладывает полученные данные в полнокровный нормальный IP-пакет и передает этот пакет далее - соответствующей программе, которая обрабатывает IP-пакеты, например, модулю TCP. На обратном пути SLIP получает от программы (сетевого уровня), посылающей IP-пакеты, IP-пакет, вычленяет его содержимое, соответствующим образом переформатирует, потом делит на символы и отправляет его через устройство последовательной передачи по последовательной линии в сеть, - соседнему узлу Internet.
PPP - это более поздний протокол, занимающийся тем же самым, что и SLIP. PPP совершеннее и мощнее своего предшественника, поэтому он быстро вытесняет SLIP.
Доступ «по вызову» (Dial-up Access) – подключение к удаленному серверу через обычный модем. Компьютер на самом деле не становится частью сети, он просто имеет доступ к услугам сервера, который подсоединен к сети постоянно.
Доступ UUCP
Все системы UNIX поддерживают сервис, называемый UUCP, который позволяет пересылать данные по стандартным телефонным линиям. UUCP - это, также как и SLIP и PPP, протокол канального уровня, но он не обладает полным спектром возможностей, которые можно было бы реализовать на этом уровне, как, например, в протоколе SLIP. UUCP позволяет лишь пересылать файлы из одной системы в другую.