Технология Internet Метод соединения Симплексное - данные передаются только в одном направлении (туда) Полудуплексное - данные передаются только в одном направлении в один интервал времени (сначала туда, потом оттуда) Дуплексное - данные передатся в двух направлениях одновременно в один интервал времени (одновременно туда и оттуда) Методы переключения соединения (коммутация) Коммутация цепей - позволяет N устройствам делить между собой один и тот же коммуникационный канал (например телефонную линию), однако каждое должно ждать пока наступит его очередь принимать/передавать данные. Пакетная коммутация - программы передачи данных делят данные на части называемые пакетами. M байт данных от N устройств могут быть объеденены в один пакет и передаваться по одному коммутационному каналу. Топология - физическое расположение сетевых компьютеров по отношению друг к другу. Топология "Звезда" - все компьютеры соединены с центральным компьютером, или хабом (hub). прямые соединения между двумя компьютерами такой сети отсутствуют. Пакеты данных от каждого компьютера передаются к хабу. Хаб, в свою очередь, передает пакеты к месту назначения. С "внешним миром" связан только хаб. Топология "Кольцо" - отсутствуют конечные точки соединения, сеть замкнута образуя неразрывное кольцо. Слабое место такой сети в том, что данные проходят через каждый компьютер, следовательно необходим неразрывный путь между всеми сетевыми компьютерами, т.к. повреждение линии в одном месте приводит к остановке сети. Топология "Шина" - используется один передающий канал, обычно коаксиальный кабель, называемый "шина". Все сетевые компьютеры подсоеденены напрямую к шине. Данные следуют в обоих направлениях одновременно, на обоих концах кабеля-шины устанавливаются специальные заглушки (терминаторы). Cлабое место сети этой топологии то же, что и для топологии "Кольцо"; данные всей сети проходят через каждый сетевой компьютер. Методы шинного арбитража Шинный арбитраж - какая бы из вышеперечисленных технологий не использовалась, когда два компьютера в сети начинают одновременно передавать данные, в сети происходит столкновение. Шинный арбитраж устанавливает правила, по которым компьютеры узнают, что линия (шина) свободна и можно передавать данные. Обнаружение столкновений - компьютеры сети выполняют прослушивание линии до передачи (делают carrier sense - прослушивание несущей) и во время передачи (делают collision detection - обнаружение столкновения), на предмет отсутствия в линии "чужих" данных. При обнаружении таковых прекращают передачу и пытаются возобновить ее через небольшой случайный промежуток времени. Передача маркера - здесь для того чтобы передать данные каждый компьютер должен получить разрешение. Это значит, что он должен "поймать" циркулирующий по сети пакет данных специального вида, называемый маркером. Маркер перемещается по замкнутому кругу, минуя поочередно каждый сетевой компьютер. Объединения сетей Интернет - межсетевое объединение или, иначе, сообщество компьютерных сетей, соединенных друг с другом. Межсетевое сообщество невозможно описать в терминах той или иной конкретной топологии - оно объединяет любые сети. Межсетевые объединения пользуются рядом устройств, таких как повторители, мосты, маршрутизаторы и шлюзы для объединения разнородных сетей. Повторитель или ретранслятор (Repeaters) - аналоговый сигнал проходящий по коммутационному каналу встречает на своем пути сопротивление линии и шумы в ней, вследствии чего происходит его затухание. Повторитель усиливает сигнал перед тем, как послать его дальше. Правильно размещенные по длине сети повторители позволяют увеличить ее длину и расстояние между соседними компьютерами. Мост - устройство соединяющее две сети построенные по одной и той же технологии. В обязанности моста входит анализ всех пакетов данных проходящих по обеим сетям. Он занимается передачей пакетов из одной сети в другую, следя за тем, чтобы не было столкновений. Пакеты проходящее внутри сети, предназначенные компьютеру той же сети, он не трогает. Маршрутизатор - может объединять сети построенные как по одной так и по разным технологиям. В отличии от моста имеет собственный сетевой адрес в интернет. Часто используется, как промежуточный пункт назначения при пересылке пакета из одной сети в другую. В отличии от моста никогда не анализирует принятый пакет, если только не является его получателем. Сетевой шлюз - общее название трех типов сетевых устройств. Например маршрутизатор может называться шлюзом. Также существует понятие прикладного шлюза - так называются программы преобразующие данные для определенных сетевых программ. Модель ISO/OSI OSI - Open Systems Interconnection - модель сетевой архитектуры основаной на взаимодействии открытых систем. Открытая система - здесь обозначает, что свойства и структура данной симстемы не являются чей-либо собственностью. Вам доступно полное описание и вы можете использовать ее для собственных нужд. ISO - Inernational Standarts Organization - международный институт стандартов. OSI была разработана этим институтом в период с 1977 по 1984 год и на данный момент является стандартом де-факто. Сетевые уровни в модели ISO/OSI (другими словами стек протоколов) 7 Прикладной уровень ў (сообщения) ў ЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎґ 6 Уровень представления ў (сообщения) ў Telnet ЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎґ 5 Сеансовый уровень ў (сообщения) ў ЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎґ 4 Транспортный уровень ў (сообщения) ў TCP, UDP ЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎґ 3 Сетевой уровень ў (пакеты) ў IP, ICMP, IGMP ЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎґ 2 Уровень соединения ў (кадры) ў ARP, RARP ЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎґ 1 Физический уровень ў (биты) ў Ethernet, etc ЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎЎґ В скобках приведены наименования блоков данных для каждого уровня. Сетевые протоколы Сети состоят из функциональных модулей, имя которым "уровни" (см.выше). Протоколы - это набор правил для передачи и приема сообщений между уровнями. В сети состоящей из уровней, каждый уровень соответствует строго определенным правилам и обеспечивает обмен между окружающими его сверху и снизу уровнями. Следуя правилам модели ISO/OSI, нужно называть протоколы действующие на разных уровнях, именами соответствующих уровней. Протокол транспортного уровня - "транспортный протокол", сетевого - "сетевой протокол" (часто набор протоколов, всех уровней называют "сетевыми". В контексте сети это неверно). Рассмотрим сетевые уровни от физического уровня к уровню приложений: 1) С точки зрения модели ISO/OSI, физический уровень состоит из физического носителя данных - канала связи. Канал связи представляет из себя коаксиальный кабель или витую пару (пример витой пары - телефонный шнур) различных модификаций. 2) Уровень соединения (он же уровень обмена данными, он же канальный уровень, он же data-link) состоит из интерфейса аппаратного обеспечения и двух модулей протоколов ARP (Address Resolution Protocol - протокол преобразования адреса) и RARP (Reverse Address Resolution Protocol - протокол обратного преобразования адреса), которые служат для правильного определения адресов в сети. Модуль протокола ARP ставит в соответствие каждому IP-адресу (Internet Protocol address, будет рассмотрен позже) нужный уровень соединения. ARP работает динамически, отслеживая изменения конфигурации сети (определяет выбывшие и вновь появившиеся компьютеры в сети). Протокол обратного преобразования адресов RARP трансформирует адрес уровня соединения в IP-адрес. 3) Сетевой уровень включает в себя протоколы IP (Internet Protocol - протокол интернет), ICMP (Internet Control Messages Protocol - протокол управляющих сообщений интернет) и IGMP (Internet Group Messages Protocol - протокол групповых сообщений интернет). IP инкапсулирует (размещает в своих пакетах) данные всех остальных протоколов, за исключением ARP/RARP. ICMP предназначен для обработки сетевых ошибок и других ситуаций, требующих вмешательства сетевых программ. IGMP используют хосты и маршрутизаторы, например при проведении интерактивных видео/аудио конференций. 4) Транспортный уровень включает в себя протоколы TCP (Transport Control Protocol - транспортный управляющий протокол) и UDP (User Datagram Protocol - протокол пользовательских датаграмм). TCP пытается оптимизировать пропускную способность сети, т.е. увеличивает скорость доставки пакетов в интернет, насколько это вообще возможно. Для этого он динамически управляет потоком данных в соединении. Например, если буфер данных на принимающем конце переполняется, TCP "просит" передающую сторону снизить скорость передачи. Существует понятие "порт интернет". Например, официальный номер порта для протокола передачи данных (ftp - File Transfer Protocol) - 21, для telnet - 23 и т.д.. Каждое интернет приложение работает со своим интернет портом (AmFTP, AmiTelnet, etc). UDP сортирует приходящие данные по портам интернет, распределяя их таким образом между интернет приложениями на вашем компьютере. Блок данных протокола TCP принято называть сегментом, блок данных протоколов IP и UDP - датаграммами. 5) Сеансовый уровень - непосредственно до установления соединения обе стороны должны "договориться" о параметрах соединения, таких как скорость передачи, контроль ошибок, ожидаемый тип передачи (симплексный, полудуплексный или дуплексный). Сеансовый уровень должен обработать любой запрос на изменение параметров соединения, который может возникнуть в любой момент в течении процесса входа в сеть. Сеансовый уровень обязан идентифицировать личность входящего в сеть пользователя. Пользователь должен доказать, что он имеет право сделать это. Способ авторизации доступа выбирается на усмотрение сетевого уровня. В интернет сеансовый уровень вообще отсутствует. Несмотря на необходимость процедуры входа в интернет, программы проверяющие права доступа пользователя не являются составляющими сетевой модели. Чаще всего они представляют собой отдельные продукты работающие на прикладном сетевом уровне (уровне приложений), а транспортные протоколы (TCP, UDP) выполняют практически все функции сеансового уровня модели. 6) Уровень представления - к его задачам относится устранение несовместимости между сетевыми компьютерами. Т.к. в разных системах для одних и тех же целей используются разные символы необходима их конвертация (например в Unix строку принято заканчивать кодом перевода каретки CR, в MacOS переводом строки LF, в MSDOS и тем и другим). Функции уровня представления выполняются как правило протоколами "виртуального сетевого терминала". Для семейства протоколов TCP/IP таковым является telnet. 7) Прикладной уровень (уровень приложений) - каждое интернет приложение обменивается данными с интернет посылая информацию вниз по стеку протоколов (см.модель ISO/OSI описанную выше). Его ответственность за доставку данных заканчивается на том, чтобы просто передать их низлежащему протоколу. Далее каждый последующий уровень в стеке протоколов, сквозь который пойдут данные будет выполнять свою собственную функцию: определять адрес, маршрут и транспортировать данные по интернет. Как правило интернет приложения взаимодействуют с протоколами UDP и TCP.