Скачать .docx |
Реферат: Администрирование сетей
2. Теоретическое изложение методического пособия.
2.1.Понятие сети. История возникновения.
Для создания сети достаточно было приобрести сетевые адаптеры соответствующего стандарта, например Ethernet, стандартный кабель, присоединить адаптеры к кабелю стандартными разъемами и установить на компьютер одну из популярных сетевых операционных систем, например, NetWare. После этого сеть начинала работать и присоединение каждого нового компьютера не вызывало никаких проблем — естественно, если на нем был установлен сетевой адаптер той же технологии.
Три составляющие: операционная система, программы среды, аппаратная часть
Сегодня вычислительные сети продолжают развиваться, причем достаточно быстро. Разрыв между локальными и глобальными сетями постоянно сокращается во многом из-за появления высокоскоростных территориальных каналов связи, не уступающих по качеству кабельным системам локальных сетей. В глобальных сетях появляются службы доступа к ресурсам, такие же удобные и прозрачные, как и службы локальных сетей. Подобные примеры в большом количестве демонстрирует самая популярная глобальная сеть — Internet.
Изменяются и локальные сети. Вместо соединяющего компьютеры пассивного кабеля в них в большом количестве появилось разнообразное коммуникационное оборудование — коммутаторы, маршрутизаторы, шлюзы. Благодаря такому оборудованию появилась возможность построения больших корпоративных сетей, насчитывающих тысячи компьютеров и имеющих сложную структуру.
Проявилась еще одна очень важная тенденция, затрагивающая в равной степени как локальные, так и глобальные сети. В них стала обрабатываться несвойственная ранее вычислительным сетям информация — голос, видеоизображения, рисунки. Это потребовало внесения изменений в работу протоколов, сетевых операционных систем и коммуникационного оборудования. Сложность передачи такой мультимедийной информации по сети связана с ее чувствительностью к задержкам при передаче пакетов данных — задержки обычно приводят к искажению такой информации в конечных узлах сети. Так как традиционные службы вычислительных сетей — такие как передача файлов или электронная почта — создают малочувствительный к задержкам трафик и все элементы сетей разрабатывались в расчете на него, то появление трафика реального времени привело к большим проблемам.
Компьютерные сети относятся к распределенным (или децентрализованным) вычислительным системам. Поскольку основным признаком распределенной вычислительной системы является наличие нескольких центров обработки данных, то наряду с компьютерными сетями к распределенным системам относят также мультипроцессорные компьютеры и многомашинные вычислительные комплексы.
В мультипроцессорных компьютерах имеется несколько процессоров, каждый из которых может относительно независимо от остальных выполнять свою программу. В мультипроцессоре существует общая для всех процессоров операционная система, которая оперативно распределяет вычислительную нагрузку между процессорами. Взаимодействие между отдельными процессорами организуется наиболее простым способом — через общую оперативную память.
Сам по себе процессорный блок не является законченным компьютером и поэтому не может выполнять программы без остальных блоков мультипроцессорного компьютера — памяти и периферийных устройств. Все периферийные устройства являются для всех процессоров мультипроцессорной системы общими. Территориальную распределенность мультипроцессор не поддерживает — все его блоки располагаются в одном или нескольких близко расположенных конструктивах, как и у обычного компьютера.
Основное достоинство мультипроцессора — его высокая производительность, которая достигается за счет параллельной работы нескольких процессоров. Так как при наличии общей памяти взаимодействие процессоров происходит очень быстро, мультипроцессоры могут эффективно выполнять даже приложения с высокой степенью связи по данным.
Еще одним важным свойством мультипроцессорных систем является отказоустойчивость, то есть способность к продолжению работы при отказах некоторых элементов, например процессоров или блоков памяти. При этом производительность, естественно, снижается, но не до нуля, как в обычных системах, в которых отсутствует избыточность.
Многомашинная система — это вычислительный комплекс, включающий в себя несколько компьютеров (каждый из которых работает под управлением собственной операционной системы), а также программные и аппаратные средства связи компьютеров, которые обеспечивают работу всех компьютеров комплекса как единого целого.
Работа любой многомашинной системы определяется двумя главными компонентами: высокоскоростным механизмом связи процессоров и системным программным обеспечением, которое предоставляет пользователям и приложениям прозрачный доступ к ресурсам всех компьютеров, входящих в комплекс. В состав средств связи входят программные модули, которые занимаются распределением вычислительной нагрузки, синхронизацией вычислений и реконфигурацией системы. Если происходит отказ одного из компьютеров комплекса, его задачи могут быть автоматически переназначены и выполнены на другом компьютере. Если в состав многомашинной системы входят несколько контроллеров внешних устройств, то в случае отказа одного из них, другие контроллеры автоматически подхватывают его работу. Таким образом, достигается высокая отказоустойчивость комплекса в целом.
Помимо повышения отказоустойчивости, многомашинные системы позволяют достичь высокой производительности за счет организации параллельных вычислений.
В отличие от мультипроцессоров, где используются сильные программные и аппаратные связи, в многомашинных системах аппаратные и программные связи между обрабатывающими устройствами являются более слабыми.
Вычислительная сеть — это сложный комплекс взаимосвязанных и согласованно функционирующих программных и аппаратных компонентов.
В настоящее время в сетях широко и успешно применяются компьютеры различных классов — от персональных компьютеров до мэйнфреймов и суперЭВМ.
Коммуникационное оборудование ( кабельные системы, повторители, мосты, коммутаторы, маршрутизаторы и модульные концентраторы ) из вспомогательных компонентов сети превратились в основные наряду с компьютерами и системным программным обеспечением как по влиянию на характеристики сети, так и по стоимости. Изучение принципов работы коммуникационного оборудования требует знакомства с большим количеством протоколов, используемых как в локальных, так и глобальных сетях.
В вычислительных сетях программные и аппаратные связи являются еще более слабыми, а автономность обрабатывающих блоков проявляется в наибольшей степени — основными элементами сети являются стандартные компьютеры, не имеющие ни общих блоков памяти, ни общих периферийных устройств. Связь между компьютерами осуществляется с помощью специальных периферийных устройств — сетевых адаптеров, соединенных относительно протяженными каналами связи.
Каждый компьютер работает под управлением собственной операционной системы, а какая-либо «общая» операционная система, распределяющая работу между компьютерами сети, отсутствует. Взаимодействие между компьютерами сети происходит за счет передачи сообщений через сетевые адаптеры и каналы связи.
Для того , чтобы можно было пользоваться не только файлами, дисками, принтерами и другими ресурсами своего компьютера, но и аналогичными ресурсами других компьютеров, подключенных к той же сети (правда, для этого недостаточно снабдить компьютеры сетевыми адаптерами и соединить их кабельной системой), необходимы еще некоторые добавления к операционным системам этих компьютеров.
На тех компьютерах, ресурсы которых должны быть доступны всем пользователям сети, необходимо добавить модули, которые постоянно будут находиться в режиме ожидания запросов, поступающих по сети от других компьютеров. Обычно такие модули называются программными серверами (server), так как их главная задача — обслуживать (serve) запросы на доступ к ресурсам своего компьютера. На компьютерах, пользователи которых хотят получать доступ к ресурсам других компьютеров, также нужно добавить к операционной системе некоторые специальные программные модули, которые должны вырабатывать запросы на доступ к удаленным ресурсам и передавать их по сети на нужный компьютер. Такие модули обычно называют программными клиентами (client). Собственно же сетевые адаптеры и каналы связи решают в сети достаточно простую задачу — они передают сообщения с запросами и ответами от одного компьютера к другому, а основную работу по организации совместного использования ресурсов выполняют клиентские и серверные части операционных систем.
2.2.Модель OSI .
На практике при реализации сетей стремятся использовать стандартные протоколы. Это могут быть фирменные, национальные или международные стандарты.
В начале 80-х годов ряд международных организаций по стандартизации — ISO (International Organization for Standardization) , ITU-T и некоторые другие — разработали модель, которая сыграла значительную роль в развитии сетей. Эта модель называется моделью взаимодействия открытых систем (Open System Interconnection, OSI) или моделью OSI. Модель OSI определяет различные уровни взаимодействия систем, дает им стандартные имена и указывает, какие функции должен выполнять каждый уровень. Модель OSI была разработана на основании большого опыта, полученного при создании компьютерных сетей, в основном глобальных, в 70-е годы.
В модели OSI (рис. 2.1.) средства взаимодействия делятся на семь уровней:
7.Прикладной;
6.Представительный;
5.Сеансовый;
4.Транспортный;
3.Сетевой;
2.Канальный;
1.Физический.
Каждый уровень имеет дело с одним определенным аспектом взаимодействия сетевых устройств.
Модель OSI описывает только системные средства взаимодействия, реализуемые операционной системой, системными утилитами, системными аппаратными средствами. Модель не включает средства взаимодействия приложений конечных пользователей. Свои собственные протоколы взаимодействия приложения реализуют, обращаясь к системным средствам. Поэтому необходимо различать уровень взаимодействия приложений и прикладной уровень.
Рис.1 Модель OSI.
Физический уровень - имеет дело с передачей битов по физическим каналам связи, таким, например, как коаксиальный кабель, витая пара, оптоволоконный кабель или цифровой территориальный канал. К этому уровню имеют отношение характеристики физических сред передачи данных, такие как полоса пропускания, помехозащищенность, волновое сопротивление и другие. На этом же уровне определяются характеристики электрических сигналов, передающих дискретную информацию, например, крутизна фронтов импульсов, уровни напряжения или тока передаваемого сигнала, тип кодирования, скорость передачи сигналов.
Пример: сопротивление линий, разъёмов, проводов, спецификация 10Base-T технологии Ethernet.
Устройства: сетевые адаптеры , повторители ,концентраторы , линии связи.
Канальный уровень - осуществляет передачу кадров (frames) данных от сетевого уровня к физическому. Одной из задач канального уровня (Data Link layer) является проверка доступности среды передачи. Другой задачей канального уровня является реализация механизмов обнаружения и коррекции ошибок. Для этого на канальном уровне биты группируются в наборы, называемые кадрами (frames). Канальный уровень обеспечивает корректность передачи каждого кадра, помещая специальную последовательность бит в начало и конец каждого кадра, для его выделения, а также вычисляет контрольную сумму, обрабатывая все байты кадра определенным способом и добавляя контрольную сумму к кадру. Когда кадр приходит по сети, получатель снова вычисляет контрольную сумму полученных данных и сравнивает результат с контрольной суммой из кадра.
В локальных сетях протоколы канального уровня используются компьютерами, мостами, коммутаторами и маршрутизаторами. В компьютерах функции канального уровня реализуются совместными усилиями сетевых адаптеров и их драйверов.
Пример : Ethernet, Token Ring, FDDI, lOOVG-AnyLAN.
Устройства: сетевая плата ,коммутатор (switch).
Сетевой уровень – отвечает за передачу данных по сети сложной топологии (если сети не имеют непосредственного физического контакта). Чтобы с одной стороны сохранить простоту процедур передачи данных для типовых топологий, а с другой допустить использование произвольных топологий, вводится дополнительный сетевой уровень.
Внутри сети доставка данных обеспечивается соответствующим канальным уровнем, а вот доставкой данных между сетями занимается сетевой уровень, который и поддерживает возможность правильного выбора маршрута передачи сообщения даже в том случае, когда структура связей между составляющими сетями имеет характер, отличный от принятого в протоколах канального уровня.
Сети соединяются между собой специальными устройствами, называемыми маршрутизаторами. Маршрутизатор — это устройство, которое собирает информацию о топологии межсетевых соединений и на ее основании пересылает пакеты сетевого уровня в сеть назначения.
Проблема выбора наилучшего пути называется маршрутизацией, и ее решение является одной из главных задач сетевого уровня.
Эта проблема осложняется тем, что самый короткий путь не всегда самый лучший. Часто критерием при выборе маршрута является время передачи данных по этому маршруту; оно зависит от пропускной способности каналов связи и интенсивности трафика, которая может изменяться с течением времени.
Сообщения сетевого уровня принято называть пакетами (packets).
Протоколы сетевого уровня реализуются программными модулями операционной системы, а также программными и аппаратными средствами маршрутизаторов.
Пример: протокол межсетевого взаимодействия IP стека TCP/IP и протокол межсетевого обмена пакетами IPX стека Novell.
Устройства: маршрутизатор ,интеллектуальный коммутатор.
Транспортный уровень - обеспечивает приложениям или верхним уровням стека ( прикладному и сеансовому) передачу данных с той степенью надежности, которая им требуется.
Модель OSI определяет пять классов сервиса, предоставляемых транспортным уровнем:
1. срочностью
2. возможностью восстановления прерванной связи
3. наличием средств мультиплексирования нескольких соединений между различными прикладными протоколами через общий транспортный протокол
4. способностью к обнаружению и исправлению ошибок передачи, таких как искажение
5. потеря и дублирование пакетов
Пример: протоколы TCP и UDP стека TCP/IP и протокол SPX стека Novell.
Сеансовый уровень - обеспечивает управление диалогом: фиксирует, какая из сторон является активной в настоящий момент, предоставляет средства синхронизации. Последние позволяют вставлять контрольные точки в длинные передачи, чтобы в случае отказа можно было вернуться назад к последней контрольной точке, а не начинать все с начала. На практике немногие приложения используют сеансовый уровень, и он редко реализуется в виде отдельных протоколов, хотя функции этого уровня часто объединяют с функциями прикладного уровня и реализуют в одном протоколе.
Представительный уровень - преобразование данных во взаимно согласованные форматы (синтаксис обмена), понятные всем сетевым приложениям и компьютерам, на которых работают приложения. На этом уровне также решаются задачи компрессии и декомпрессии данных и их шифрование.
Пример : протокол Secure Socket Layer (SSL).
Прикладной уровень — это в действительности просто набор разнообразных протоколов, с помощью которых пользователи сети получают доступ к разделяемым ресурсам, таким как файлы, принтеры или гипертекстовые Web-страницы, а также организуют свою совместную работу, например, с помощью протокола электронной почты. Единица данных, которой оперирует прикладной уровень, обычно называется сообщением.
Пример: протоколы HTTP, FTP, IMAP.
2.2.1. Сетезависимые и сетенезависимые уровни.
Функции всех уровней модели OSI могут быть отнесены к одной из двух групп: либо к функциям, зависящим от конкретной технической реализации сети, либо к функциям, ориентированным на работу с приложениями.
Три нижних уровня (физический, канальный и сетевой ) являются сетезависимыми, то есть протоколы этих уровней тесно связаны с технической реализацией сети и используемым коммуникационным оборудованием.
Три верхних уровня (прикладной, представительный и сеансовый ) ориентированы на приложения и мало зависят от технических особенностей построения сети. На протоколы этих уровней не влияют какие бы то ни было изменения в топологии сети, замена оборудования или переход на другую сетевую технологию.
Транспортный уровень является промежуточным, он скрывает все детали функционирования нижних уровней от верхних. Это позволяет разрабатывать приложения, не зависящие от технических средств непосредственной транспортировки сообщений.
2.3. Стандарты Ethernet и их положение в модели OSI .
При организации взаимодействия узлов в локальных сетях основная роль отводится протоколу канального уровня. Однако для того, чтобы канальный уровень мог справиться с этой задачей, структура локальных сетей должна быть вполне определенной, так, например, наиболее популярный протокол канального уровня ( Ether net )рассчитан на параллельное подключение всех узлов сети к общей для них шине — отрезку коаксиального кабеля или иерархической древовидной структуре сегментов, образованных повторителями.
Для упрощения и, соответственно, удешевления аппаратных и программных решений разработчики первых локальных сетей остановились на совместном использовании кабелей всеми компьютерами сети в режиме разделения времени, то есть режиме TDM. Наиболее явным образом режим совместного использования кабеля проявляется в классических сетях Ethernet , где коаксиальный кабель физически представляет собой неделимый отрезок кабеля, общий для всех узлов сети.
По мере повышения популярности локальных сетей и расширения их сфер применения все больше стали применяться специальные коммуникационные устройства — мосты и маршрутизаторы, — которые в значительной мере снимали ограничения единственной разделяемой среды передачи данных. Базовые конфигурации в форме общей шины и кольца превратились в элементарные структуры локальных сетей, которые можно теперь соединять друг с другом более сложным образом, образуя параллельные основные или резервные пути между узлами.
При использовании коммутаторов у традиционных технологий появился новый режим работы — полнодуплексный (full-duplex). В разделяемом сегменте станции всегда работают в полудуплексном режиме (half-duplex), так как в каждый момент времени сетевой адаптер станции либо передает свои данные, либо принимает чужие, но никогда не делает это одновременно. Это справедливо для всех технологий локальных сетей, так как разделяемые среды поддерживаются не только классическими технологиями локальных сетей Ethernet, Token Ring, FDDI, но и всеми новыми — Fast Ethernet, lOOVG-AnyLAN, Gigabit Ethernet.
В 1980 году в институте IEEE был организован комитет 802 по стандартизации локальных сетей, в результате работы которого было принято семейство стандартов IEEE 802.x, которые содержат рекомендации по проектированию нижних уровней локальных сетей. Позже результаты работы этого комитета легли в основу комплекса международных стандартов ISO 8802-1...5. Эти стандарты были созданы на основе очень распространенных фирменных стандартов сетей Ethernet, ArcNet и Token Ring.
Стандарты семейства IEEE 802.x охватывают только два нижних уровня семиуровневой модели OSI — физический и канальный. Это связано с тем, что именно эти уровни в наибольшей степени отражают специфику локальных сетей. Старшие же уровни, начиная с сетевого, в значительной степени имеют общие черты как для локальных, так и для глобальных сетей.
Специфика локальных сетей также нашла свое отражение в разделении канального уровня на два подуровня, которые часто называют также уровнями. Канальный уровень (Data Link Layer) делится в локальных сетях на два подуровня:
• логической передачи данных (Logical Link Control, LLC);
• управления доступом к среде (Media Access Control, MAC).
Уровень MAC появился из-за существования в локальных сетях разделяемой среды передачи данных. Именно этот уровень обеспечивает корректное совместное использование общей среды, предоставляя ее в соответствии с определенным алгоритмом в распоряжение той или иной станции сети. MAC – адрес записывается из 6 байт в шестнадцатеричном виде.
Уровень LLC отвечает за передачу кадров данных между узлами с различной степенью надежности, а также реализует функции интерфейса с прилегающим к нему сетевым уровнем. Именно через уровень LLC сетевой протокол запрашивает у канального уровня нужную ему транспортную операцию с нужным качеством. Сегодня комитет 802 включает следующий ряд подкомитетов:
802.1 - ( Internetworking ) объединение сетей;
802.2- (Logical Link Control, LLC ) - управление логической передачей данных;
802.3 - Ethernet с методом доступа CSMA/CD;
802.4 - Token Bus LAN — локальные сети с методом доступа Token Bus;
802.5 -Token Ring LAN — локальные сети с методом доступа Token Ring;
802.6 -Metropolitan Area Network, MAN — сети мегаполисов;
802.7-Broadband Technical Advisory Group - техническая консультационная
группа по широкополосной передаче;
…………………………
802.12 -Demand Priority Access LAN, lOOVG-AnyLAN - локальные сети с
методом доступа по требованию с приоритетами.
Первоначально появились стандарты группы “10”.
Использовали :
- коаксиальные линии
- витая пара(не экранированные)
- опто-волокно
Также существуют стандарты:
• 10Base-5 — коаксиальный кабель диаметром 0,5 дюйма, называемый «толстым» коаксиалом. Имеет волновое сопротивление 50 Ом. Максимальная длина сегмента — 500 метров (без повторителей).
• 10Base-2 — коаксиальный кабель диаметром 0,25 дюйма, называемый «тонким» коаксиалом. Имеет волновое сопротивление 50 Ом. Максимальная длина сегмента — 185 метров (без повторителей).
• 10Base-T — кабель на основе неэкранированной витой пары (Unshielded Twisted Pair, UTP). Образует звездообразную топологию на основе концентратора. Расстояние между концентратором и конечным узлом — не более 100 м.
• 10Base-F — волоконно-оптический кабель. Топология аналогична топологии стандарта 10Base-T. Имеется несколько вариантов этой спецификации — FOIRL (расстояние до 1000 м), 10Base-FL (расстояние до 2000 м), 10Base-FB (расстояние до 2000 м).
Число 10 в указанных выше названиях обозначает битовую скорость передачи Данных этих стандартов — 10 Мбит/с, а слово Base — метод передачи на одной базовой частоте 10 МГц (в отличие от методов, использующих несколько несущих Частот, которые называются Broadband — широкополосными). Последний символ в Названии стандарта физического уровня обозначает тип кабеля.
Позже стандарт дополнился группами “100” и “1000” : 100Base-T и так далее.
Ethernet - это самый распространенный и дешовый на сегодняшний день стандарт локальных сетей.
Для передачи двоичной информации по кабелю для всех вариантов физического уровня технологии Ethernet, обеспечивающих пропускную способность 10 Мбит/с, используется манчестерский код.
Назначение кодирования:
1.контроль достоверности переданных данных
(исключение ошибок)
2.ресинхронизация(на частоте 100 МГц сложно подобрать
одинаковые ( совпадающие по параметрам ) генераторы
при передаче данных.Нужен синхронизм)
3.общение на физическом уровне
4.адаптация сигнала к линиям связи
Все виды стандартов Ethernet (в том числе Fast Ethernet и Gigabit Ethernet) используют один и тот же метод разделения среды передачи данных - метод CSMA/CD.
В зависимости от типа физической среды стандарт IEEE 802.3 определяет различные спецификации: 10Base-5, 10Base-2, 10Base-T, FOIRL, lOBase-FL, lOBase-FB. Для каждой спецификации определяются тип кабеля, максимальные длины непрерывных отрезков кабеля, а также правила использования повторителей для увеличения диаметра сети: правило «5-4-3» для коаксиальных вариантов сетей, и правило «4-х хабов» для витой пары и оптоволокна.
2.4.CSMA / CD как основа доступа Ethernet .
В сетях Ethernet используется метод доступа к среде передачи данных, называемый методом коллективного доступа с опознаванием несущей и обнаружением коллизий (carrier-sense-multiply-access with collision detection, CSMA/CD).
Этот метод применяется исключительно в сетях с логической общей шиной (к которым относятся и радиосети, породившие этот метод). Все компьютеры такой сети имеют непосредственный доступ к общей шине, поэтому она может быть использована для передачи данных между любыми двумя узлами сети. Одновременно все компьютеры сети имеют возможность немедленно (с учетом задержки распространения сигнала по физической среде) получить данные, которые любой из компьютеров начал передавать на общую шину. Все данные, передаваемые по сети, помещаются в кадры определенной структуры и снабжаются уникальным адресом станции назначения.
Чтобы получить возможность передавать кадр, станция должна убедиться, что разделяемая среда свободна. Это достигается прослушиванием основной гармоники сигнала, которая также называется несущей частотой (carrier-sense, CS). Признаком незанятости среды является отсутствие на ней несущей частоты, которая при манчестерском способе кодирования равна 5-10 МГц, в зависимости от последовательности единиц и нулей, передаваемых в данный момент.
Все станции, подключенные к кабелю, могут распознать факт передачи кадра, и та станция, которая узнает собственный адрес в заголовках кадра, записывает его содержимое в свой внутренний буфер, обрабатывает полученные данные, передает их вверх по своему стеку, а затем посылает по кабелю кадр-ответ. Адрес станции- источника содержится в исходном кадре, поэтому станция-получатель знает, кому нужно послать ответ.
После окончания передачи кадра все узлы сети обязаны выдержать технологическую паузу (Inter Packet Gap) в 9,6 мкс. Эта пауза, называемая также меж кадровым интервалом, нужна для приведения сетевых адаптеров в исходное состояние, а также для предотвращения монопольного захвата среды одной станцией. После окончания технологической паузы узлы имеют право начать передачу своего кадра, так как среда свободна. Из-за задержек распространения сигнала по кабелю не все узлы строго одновременно фиксируют факт окончания передачи кадра узлом.
Возможна ситуация, когда две станции одновременно пытаются передать кадр данных по общей среде , тогда при этом происходит коллизия (collision). Но так как содержимое обоих кадров сталкивается на общем кабеле , то происходит искажение информации , а методы кодирования, используемые в Ethernet, не позволяют выделять сигналы каждой станции из общего сигнала.
Гораздо вероятней, что коллизия возникает из-за того, что один узел начинает передачу раньше другого, но до второго узла сигналы первого просто не успевают дойти к тому времени, когда второй узел решает начать передачу своего кадра. То есть коллизии — это следствие распределенного характера сети.
Чтобы корректно обработать коллизию, все станции одновременно наблюдают за возникающими на кабеле сигналами. Если передаваемые и наблюдаемые сигналы отличаются, то фиксируется обнаружение коллизии (collision detection, CD). Для увеличения вероятности скорейшего обнаружения коллизии всеми станциями сети станция, которая обнаружила коллизию, прерывает передачу своего кадра (в произвольном месте, возможно, и не на границе байта) и усиливает ситуацию коллизии посылкой в сеть специальной последовательности из 32 бит, называемой jam-последовательностью.
После этого обнаружившая коллизию передающая станция обязана прекратить передачу и сделать паузу в течение короткого случайного интервала времени. Затем она может снова предпринять попытку захвата среды и передачи кадра.
Для уменьшения интенсивности возникновения коллизий нужно либо уменьшить трафик, сократив, например, количество узлов в сегменте или заменив приложения, либо повысить скорость протокола, например перейти на Fast Ethernet.
2.5. Ограничения топологии сети Ethernet .
Передающая станция должна успевать обнаружить коллизию, которую вызвал переданный ее кадр, еще до того, как она закончит передачу этого кадра. Время передачи одного кадра должно быть больше времени распространения сигнала по сети туда и обратно(чтобы успеть получить
jam -последовательность и не стереть кадр , а снова его передать в случае коллизии ).
Минимальная длина кадра - 576 бит для стандарта 10МГц ,100МГц.
4096 бит для стандарта 1000МГц.
Максимальный диаметр сети - 2500 м для стандарта 10МГц.
С увеличением скорости передачи кадров, что имеет место в новых стандартах, базирующихся на том же методе доступа CSMA/CD, например Fast Ethernet, максимальное расстояние между станциями сети уменьшается пропорционально увеличению скорости передачи. В стандарте Fast Ethernet оно составляет около 210 м, а в стандарте Gigabit Ethernet оно было бы ограничено 25 метрами, если бы разработчики стандарта не предприняли некоторых мер по увеличению минимального размера пакета.
2.6. 100 Мбитный стандарт Ethernet .
Классический 10-мегабитный Ethernet устраивал большинство пользователей на протяжении около 15 лет. Однако в начале 90-х годов начала ощущаться его недостаточная пропускная способность. Для более мощных клиентских станций с шиной PCI (133 Мбайт/с) эта доля упала до 1/133, что было явно недостаточно. Поэтому многие сегменты 10-мегабитного Ethernet стали перегруженными, реакция серверов в них значительно упала, а частота возникновения коллизий существенно возросла, еще более снижая полезную пропускную способность.
Назрела необходимость в разработке «нового» Ethernet, то есть технологии, которая была бы такой же эффективной по соотношению цена/качество при производительности 100 Мбит/с. В результате поисков и исследований специалисты разделились на два лагеря, что в конце концов привело к появлению двух новых технологий — Fast Ethernet и 100VG-AnyLAN. Они отличаются степенью преемственности с классическим Ethernet.
Все отличия технологии Fast Ethernet от Ethernet сосредоточены на физическом уровне. Уровни MAC и LLC в Fast Ethernet остались абсолютно теми же.
Более сложная структура физического уровня технологии Fast Ethernet вызвана тем, что в ней используются три варианта кабельных систем:
• волоконно-оптический многомодовый кабель, используются два волокна;
• витая пара категории 5, используются две пары;
• витая пара категории 3, используются четыре пары.
Официальный стандарт 802.3и установил три различных спецификации для физического уровня Fast Ethernet и дал им следующие названия:
• 100Base-TX для двухпарного кабеля на неэкранированной витой паре UTP категории 5 или экранированной витой паре STP Туре 1;
• 100Base-T4 для четырехпарного кабеля на неэкранированной витой паре UTP категории 3, 4 или 5;
• 100Base-FX для многомодового оптоволоконного кабеля, используются два волокна.
Форматы кадров технологии Fast Ethernetae отличаются от форматов кадров технологий 10-мегабитного Ethernet.
Технология Fast Ethernet сохранила в неприкосновенности метод доступа CSMA/CD, оставив в нем тот же алгоритм и те же временные параметры в битовых интервалах (сам битовый интервал уменьшился в 10 раз). Все отличия Fast Ethernet от Ethernet проявляются на физическом уровне.
Максимальный диаметр сети Fast Ethernet равен приблизительно 200 м, а более точные значения зависят от спецификации физической среды.
2.7. 1000 Мбитный стандарт Ethernet .
Достаточно быстро после появления на рынке продуктов Fast Ethernet сетевые интеграторы и администраторы почувствовали определенные ограничения при построении корпоративных сетей. Во многих случаях серверы, подключенные по 100-мегабитному каналу, перегружали магистрали сетей, работающие также на скорости 100 Мбит/с — магистрали FDDI и Fast Ethernet. Ощущалась потребность в следующем уровне иерархии скоростей.
Летом 1997 года было объявлено о создании группы 802.3z для разработки протокола, максимально подобного Ethernet, но с битовой скоростью 1000 Мбит/с.
Основная идея разработчиков стандарта Gigabit Ethernet состоит в максимальном сохранении идей классической технологии Ethernet при достижении битовой скорости в 1000 Мбит/с.
Сохраняются все форматы кадров Ethernet.
По-прежнему существуют полудуплексная версия протокола, поддерживающая метод доступа CSMA/CD, и полнодуплексная версия, работающая с коммутаторами.
Поддерживаются все основные виды кабелей, используемых в Ethernet и Fast Ethernet: волоконно-оптический, витая пара категории 5, коаксиал.
Стояло несколько трудно разрешимых проблем:
1. обеспечение приемлемого диаметра сети для
полудуплексного режима работы;
2. достижение битовой скорости 1000 Мбит/с на основных
типах кабелей;
3. поддержка кабеля на витой паре.
Для расширения максимального диаметра сети Gigabit Ethernet в полудуплексном режиме до 200 м разработчики увеличили минимальный размер кадра до 4096 байт (с одним повторителем).
В стандарте 802.3z определены следующие типы физической среды:
- в одномодовый волоконно-оптический кабель;
- в многомодовый волоконно-оптический кабель 62,5/125;
- в многомодовый волоконно-оптический кабель 50/125;
- в двойной коаксиал с волновым сопротивлением 75 Ом.
2.8.Типы коммуникационного оборудования Ethernet
2.8.1. Сетевой адаптер.
Сетевой адаптер (Network Interface Card, NIC) вместе со своим драйвером реализует второй, канальный уровень модели открытых систем в конечном узле сети — компьютере.
Сетевой адаптер совместно с драйвером выполняют две операции: передачу и прием кадра.
2.8.2.Повторитель. Концентратор ( hab ).
Практически во всех современных технологиях локальных сетей определено устройство, которое имеет несколько равноправных названий — концентратор (concentrator), хаб (hub), повторитель (repeator). В зависимости от области применения этого устройства в значительной степени изменяется состав его функций и конструктивное исполнение. Неизменной остается только основная функция — это повторение кадра либо на всех портах (как определено в стандарте Ethernet), либо только на некоторых портах, в соответствии с алгоритмом, определенным соответствующим стандартом.
Концентратор обычно имеет несколько портов, к которым с помощью отдельных физических сегментов кабеля подключаются конечные узлы сети — компьютеры.
Рис.8.1 Повторитель Ethernet синхронно повторяет биты кадра на всех своих портах
Многопортовые повторители Ethernet на витой паре стали называть концентраторами или хабами, так как в одном устройстве действительно концентрировались связи между большим количеством узлов сети. Концентратор Ethernet обычно имеет от 8 до 72 портов, причем основная часть портов предназначена для подключения кабелей на витой паре. Концентратор (hab) получает информацию на один порт и передаёт на все остальные порты (через простейший коммутатор). Проблема в том , независимо от необходимости в информации её получают все порты. Концентраторы образуют из отдельных физических отрезков кабеля общую среду передачи данных - логический сегмент (рис.8.2.1.). Логический сегмент также называют доменом коллизий, поскольку при попытке одновременной передачи данных любых двух компьютеров этого сегмента, хотя бы и принадлежащих разным физическим сегментам, возникает блокировка передающей среды. Следует особо подчеркнуть, что какую бы сложную структуру не образовывали концентраторы, например, путем иерархического соединения, все компьютеры, подключенные к ним, образуют единый логический сегмент, в котором любая пара взаимодействующих компьютеров полностью блокирует возможность обмена данными для других компьютеров. Чем больше активных пользователей в сети , тем медленнее работает сеть. Концентраторы, кроме основной функции протокола (побитного повторения кадра на всех или последующем порту), всегда выполняют ряд полезных дополнительных функций, определяемых производителем конценратора.
Автосегментация — одна из важнейших дополнительных функций, с помощью которой концентратор отключает порт при обнаружении разнообразных проблем с кабелем и конечным узлом, подключенным к данному порту. В число дополнительных функций входят функции защиты сети от несанкционированного доступа, запрещающие подключение к концентратору компьютеров с неизвестными МАС-адресами, а также заполняющие нулями поля данных кадров, поступающих не к станции назначения.
2.8.3.Мост ( dridge ).
Сети, построенные на основе концентраторов, не могут расширяться в требуемых пределах - при определенном количестве компьютеров в сети или при появлении новых приложений всегда происходит насыщение передающей среды, и задержки в ее работе становятся недопустимыми. Эта проблема может быть решена путем логической структуризации сети с помощью мостов, коммутаторов и маршрутизаторов. У моста только два порта.
Мост (bridge) делит общую среду передачи данных на логические сегменты (или сеть на подсети). Логический сегмент образуется путем объединения нескольких физических сегментов (отрезков кабеля) с помощью одного или нескольких концентраторов. Каждый логический сегмент (подсеть) подключается к отдельному порту моста (рис. 4). При поступлении кадра на какой-либо из портов мост повторяет этот кадр, но не на всех портах, как это делает концентратор, а только на том порту, к которому подключен сегмент, содержащий компьютер-адресат.
Рис.8.2 Разделение сети на логические сегменты
При работе моста среда передачи данных каждого логического сегмента (подсети) остается общей только для тех компьютеров, которые подключены к этому сегменту непосредственно. Мост осуществляет связь сред передачи данных различных логических сегментов. Он передает кадры между логическими сегментами только при необходимости, то есть только тогда, когда взаимодействующие компьютеры находятся в разных сегментах. Деление сети на логические сегменты улучшает производительность сети, если в сети имеются группы компьютеров, преимущественно обменивающиеся информацией между собой. То есть мост фильтрует данные между подсетями.
У мостов есть таблица MAC – адресов и портов. В момент загрузки сети эта таблица пуста. При посылке информации по сети эта таблица заполняется (т.е. мост обучается) и в дальнейшем через порт моста проходит только информация для обмена между подсетями. Если окажется, что компьютеры принадлежат одной подсети, то кадр просто будет удален из буфера и работа с ним на этом бы закончится. Такая операция называется фильтрацией (filtering).
Если же адрес назначения неизвестен, то мост передает кадр на все свои порты, кроме порта — источника кадра, как и на начальной стадии процесса обучения.
Мосты, работающие описанным способом, обычно называются прозрачными (transparent), поскольку появление таких мостов в сети совершенно не заметно для ее конечных узлов. Это позволяет не изменять их программное обеспечение при переходе от простых конфигураций, использующих только концентраторы, к более сложным, сегментированным.
За простоту принципа работы прозрачного моста приходится расплачиваться ограничениями на топологию сети, построенной с использованием устройств данного типа - такие сети не могут иметь замкнутых маршрутов - петель. Мост не может правильно работать в сети с петлями, при этом сеть засоряется зацикливающимися пакетами и ее производительность снижается.
2.8.4. Коммутатор (switch).
Коммутирующие концентраторы (Switched Hubs) или, как их еще называют, коммутаторы (Switches) , переключатели и свичи, могут рассматриваться, как простейший и очень быстрый мост . Они позволяют разделить единую сеть на несколько сегментов для увеличения допустимого размера сети или с целью снижения нагрузки (трафика) в отдельных частях сети.
Как уже отмечалось, в отличие от мостов , коммутаторы не принимают приходящие пакеты, а только переправляют из одной части сети в другую те пакеты, которые в этом нуждаются. Они в реальном темпе поступления битов пакета распознают адрес приемника пакета и принимают решение о том, надо ли это пакет переправлять, и, если надо, то кому. Никакой обработки пакетов не производится, хотя и контролируется их заголовок. Коммутаторы практически не замедляют обмена по сети. Но они не могут преобразовывать формата пакетов и протоколов обмена по сети. Поскольку коммутаторы работают с информацией, находящейся внутри кадра, часто говорят, что они ретранслируют кадры, а не пакеты, как просто концентраторы. Коммутатор – пассивный отслеживатель трафика.
Коллизии коммутатором не ретранслируются, что выгодно отличает его от более простого концентратора . Можно сказать, что коммутаторы производят более глубокое разделение сети, чем концентраторы . Они разделяют на части зону коллизий сети, то есть область сети, на которую распространяются коллизии.
Логическая структура коммутатора довольно проста (рис. 8.3.).
Рис. 8.3 Логическая схема коммутатора
Она включает в себя так называемую перекрестную (коммутационную) матрицу, во всех точках пересечения которой могут устанавливаться связи на время передачи пакета. В результате пакет, поступающий из любого сегмента, может быть передан в любой другой сегмент (рис.8.3). В случае широковещательного пакета, адресованного всем абонентам, он передается во все сегменты одновременно, кроме того сегмента, по которому он пришел. Помимо перекрестной матрицы коммутатор включает в себя память, в которой он формирует таблицу MAC-адресов всех компьютеров, подключенных к каждому из его портов. Эта таблица создается на этапе инициализации сети и затем периодически обновляется для учета изменений конфигурации сети. Именно на основании анализа этой таблицы делается вывод о том, какие связи надо замыкать, куда отправлять пришедший пакет. Коммутатор читает MAC-адреса отправителя и получателя в пришедшем пакете и передает пакет в тот сегмент, в который он адресован. Если пакет адресован абоненту из того же сегмента, к которому принадлежит отправитель, то он не ретранслируется вообще. Широковещательный пакет не передается в тот сегмент, к которому присоединен абонент отправитель пакета. Адрес отправителя пакета заносится в таблицу адресов (если его там еще нет).
Чаще всего встречаются коммутаторы с 6, 8, 12, 16 и 24 портами.
Если к одному из портов коммутатора подключить hab , то компьютеры подключенные к этому хабу , будут иметь один и тот же порт у коммутатора.
2.8.5. Маршрутизаторы.
Вытесняя мосты, коммутаторы сильно потеснили и маршрутизаторы. Но маршрутизаторы работают на более высоком, третьем уровне (сетевом) модели OSI (мосты и коммутаторы – на втором,канальном), они имеют дело с протоколами более высоких уровней. Поэтому им, скорее всего, не грозит полное исчезновение.
Маршрутизаторы , как и мосты или коммутаторы ретранслируют пакеты из одной части сети в другую (из одного сегмента в другой). Изначально маршрутизатор от моста отличался только тем, что на компьютере, соединяющем две или более части сети, было установлено другое программное обеспечение. Но между маршрутизатором и мостом существуют и принципиальные отличия:
· Маршрутизаторы работают не с физическими адресами пакетов (MAC-адресами), а с логическими сетевыми адресами (IP-адресами или IPX-адресами).
· Маршрутизаторы ретранслируют не всю приходящую информацию, а только ту, которая адресована им лично, и отбрасывают (не ретранслируют) широковещательные пакеты, разделяя тем самым широковещательную область сети (Broadcast Domain). Все абоненты обязательно должны знать о присутствии в сети маршрутизатора. Они не прозрачны для абонентов в отличие от мостов и коммутаторов.
· Самое главное – маршрутизаторы поддерживают сети с множеством возможных маршрутов, путей передачи информации, так называемые ячеистые сети (meshed networks). Пример такой сети показан на рис. 13.11. Мосты же требуют, чтобы в сети не было петель, чтобы путь распространения информации между двумя любыми абонентами был единственным.
Рис. 8.4 Ячеистая сеть с маршрутизаторами
Если концентраторы всего лишь повторяют все поступившие на них пакеты (физический уровень модели OSI), а коммутаторы и мосты ретранслируют только межсегментные и широковещательные пакеты (канальный уровень модели OSI), то маршрутизаторы соединяют практически самостоятельные, не влияющие друг от друга сети, сохраняя при этом возможность передачи информации между ними (сетевой уровень модели OSI). Размер сети с маршрутизаторами практически ничем не ограничен.
Для принятия решения о выборе маршрута каждый маршрутизатор формирует в своей памяти таблицы данных, которые содержат:
· Номера всех сетей, подключенных к данному маршрутизатору ;
· Список всех соседних маршрутизаторов ;
· Список MAC-адресов и IP (IPX)-адресов всех абонентов сетей, подключенных к маршрутизатору . Этот список автоматически обновляется, как и в случае мостов и коммутаторов .
Именно маршрутизаторы чаще всего используются для связи локальных сетей с глобальными, в частности, с Интернет, которая может рассматриваться как полностью маршрутизируемая сеть . Преобразовать протоколы локальных сетей в протоколы глобальных сетей для маршрутизатора вполне по силам.
Маршрутизаторы также легко преобразуют скорости передачи, связывая, например, между собой сети Ethernet, Fast Ethernet и Gigabit Ethernet.
Маршрутизаторы обрабатывают адресную информацию, относящуюся к структуре дейтаграммы IP (IPX), которая вложена в область данных кадра, в свою очередь вложенного в пакет (рис.8.5.).
Рис. 8.5. Вложение дейтаграммы в кадр и пакет
Хороший маршрутизатор очень дорог и сложен в настройке и эксплуатации. Поэтому использовать его следует только в тех случаях, когда это действительно необходимо, например, когда применение коммутаторов и мостов не позволяет преодолеть перегрузку сети.
2.9.Понятие интерсетей и проблемы связанные с большими сетями.
Мост или коммутатор разделяет сеть на сегменты, локализуя трафик внутри сегмента, что делает линии связи разделяемыми преимущественно между станциями данного сегмента. Тем самым сеть распадается на отдельные подсети, из которых могут быть построены составные сети достаточно крупных размеров.
Однако построение сложных сетей только на основе повторителей, мостов и коммутаторов имеет существенные ограничения и недостатки.
• Во-первых, в топологии получившейся сети должны отсутствовать петли. Действительно, мост/коммутатор может решать задачу доставки пакета адресату только тогда, когда между отправителем и получателем существует единственный путь.
• Во-вторых, логические сегменты сети, расположенные между мостами или коммутаторами, слабо изолированы друг от друга, а именно не защищены от так называемых широковещательных штормов.
• В-третьих, в сетях, построенных на основе мостов и коммутаторов, достаточно сложно решается задача управления трафиком на основе значения данных, содержащихся в пакете.
• В-четвертых, реализация транспортной подсистемы только средствами физического и канального уровней, к которым относятся мосты и коммутаторы, приводит к недостаточно гибкой, одноуровневой системе адресации: в качестве адреса назначения используется МАС-адрес, жестко связанный с сетевым адаптером.
• Наконец, возможностью трансляции протоколов канального уровня обладают далеко не все типы мостов и коммутаторов.
Наличие серьезных ограничений у протоколов канального уровня показывает, что построение на основе средств этого уровня больших неоднородных сетей является весьма проблематичным. Естественное решение в этих случаях — это привлечение средств более высокого, сетевого уровня.
Основная идея введения сетевого уровня состоит в следующем. Сеть в общем случае рассматривается как совокупность нескольких сетей и называется составной сетью или интерсетью. Сети, входящие в составную сеть, называются подсетями , составляющими сетями или просто сетями .
Подсети соединяются между собой маршрутизаторами. Компонентами составной сети могут являться как локальные, так и глобальные сети. Так, в составную сеть может входить несколько сетей разных технологий: локальные сети Ethernet, Fast Ethernet, Token Ring, FDDI и глобальные сети frame relay, X.25, ISDN. Каждая из этих технологий достаточна для того, чтобы организовать взаимодействие всех узлов в своей подсети, но не способна построить информационную связь между произвольно выбранными узлами, принадлежащими разным подсетям. Следовательно, для организации взаимодействия между любой произвольной парой узлов этой «большой» составной сети требуются дополнительные средства. Такие средства и предоставляет сетевой уровень.
Рис. 9.1. Логическая структуризация сети с помощью маршрутизаторов.
Сетевой уровень выступает в качестве координатора, организующего работу всех подсетей, лежащих на пути продвижения пакета по составной сети. Для перемещения данных в пределах подсетей сетевой уровень обращается к используемым в этих подсетях технологиям.
Чтобы сетевой уровень мог выполнить свою задачу, ему необходима собственная система адресации, не зависящая от способов адресации узлов в отдельных подсетях, которая позволила бы на сетевом уровне универсальным и однозначным способами идентифицировать любой узел составной сети.
Естественным способом формирования сетевого адреса является уникальная нумерация всех подсетей составной сети и нумерация всех узлов в пределах каждой подсети. Таким образом, сетевой адрес представляет собой пару: номер сети (подсети) и номер узла.
В качестве номера узла может выступать либо локальный адрес этого узла (такая схема принята в стеке IPX/SPX), либо некоторое число, никак не связанное с локальной технологией, которое однозначно идентифицирует узел в пределах данной подсети. Второй подход более универсален, он характерен для стека TCP/IP. И в том и другом случае каждый узел составной сети имеет наряду со своим локальным адресом еще один — универсальный сетевой адрес.
Основным полем заголовка сетевого уровня является номер сети-адресата. В рассмотренных нами ранее протоколах локальных сетей такого поля в кадрах предусмотрено не было — предполагалось, что все узлы принадлежат одной сети. Явная нумерация сетей позволяет протоколам сетевого уровня составлять точную карту межсетевых связей и выбирать рациональные маршруты при любой их топологии, в том числе альтернативные маршруты, если они имеются, что не умеют делать мосты и коммутаторы.
2.10.Структура стека TCP/IP. Краткая характеристика протоколов .
Так как стек TCP/IP был разработан до появления модели взаимодействия открытых систем ISO/OSI, то, хотя он также имеет многоуровневую структуру, соответствие уровней стека TCP/IP уровням модели OSI достаточно условно.
Структура протоколов TCP/IP приведена на (рис 10.1.). Протоколы TCP/IP делятся на 4 уровня.
Рис. 10.1. Стек TCP/IP
Самый нижний (уровень IV ) соответствует физическому и канальному уровням модели OSI. Этот уровень в протоколах TCP/IP не регламентируется, но поддерживает все популярные стандарты физического и канального уровня: для локальных сетей это Ethernet, Token Ring, FDDI, Fast Ethernet, 100VG-AnyLAN, для глобальных сетей - протоколы соединений "точка-точка" SLIP и PPP, протоколы территориальных сетей с коммутацией пакетов X.25, frame relay.
Следующий уровень (уровень III ) - это уровень межсетевого взаимодействия, который занимается передачей пакетов с использованием различных транспортных технологий локальных сетей, территориальных сетей, линий специальной связи и т. п.
В качестве основного протокола сетевого уровня (в терминах модели OSI) в стеке используется протокол IP , который изначально проектировался как протокол передачи пакетов в составных сетях, состоящих из большого количества локальных сетей, объединенных как локальными, так и глобальными связями. Поэтому протокол IP хорошо работает в сетях со сложной топологией, рационально используя наличие в них подсистем и экономно расходуя пропускную способность низкоскоростных линий связи. Протокол IP является дейтаграммным протоколом, то есть он не гарантирует доставку пакетов до узла назначения, но старается это сделать.
Следующий уровень (уровень II ) называется основным. На этом уровне функционируют протокол управления передачей TCP (Transmission Control Protocol) и протокол дейтаграмм пользователя UDP (User Datagram Protocol). Протокол TCP обеспечивает надежную передачу сообщений между удаленными прикладными процессами за счет образования виртуальных соединений. Протокол UDP обеспечивает передачу прикладных пакетов дейтаграммным способом, как и IP, и выполняет только функции связующего звена между сетевым протоколом и многочисленными прикладными процессами.
Верхний уровень (уровень I ) называется прикладным. За долгие годы использования в сетях различных стран и организаций стек TCP/IP накопил большое количество протоколов и сервисов прикладного уровня. К ним относятся такие широко используемые протоколы, как протокол копирования файлов FTP, протокол эмуляции терминала telnet, почтовый протокол SMTP, используемый в электронной почте сети Internet, гипертекстовые сервисы доступа к удаленной информации, такие как WWW и многие другие.
В стеке TCP/IP протокол FTP предлагает наиболее широкий набор услуг для работы с файлами, однако он является и самым сложным для программирования.
Протокол SNMP используется для организации сетевого управления.
2.11.Протокол IP . Его необходимость.
Основу транспортных средств стека протоколов TCP/IP составляет протокол межсетевого взаимодействия (Internet Protocol, IP). Он обеспечивает передачу дейтаграмм от отправителя к получателям через объединенную систему компьютерных сетей.
Название данного протокола — Intrenet Protocol — отражает его суть: он должен передавать пакеты между сетями. В каждой очередной сети, лежащей на пути перемещения пакета, протокол IP вызывает средства транспортировки, принятые в этой сети, чтобы с их помощью передать этот пакет на маршрутизатор, ведущий к следующей сети, или непосредственно на узел-получатель.
Протокол IP относится к протоколам без установления соединений. Перед IP не ставится задача надежной доставки сообщений от отправителя к получателю. Протокол IP обрабатывает каждый IP-пакет как независимую единицу, не имеющую связи ни с какими другими IP-пакетами.
IP-пакет состоит из заголовка и поля данных. Заголовок, как правило, имеющий длину 20 байт, имеет следующую структур.
IP-адрес имеет длину 4 байта и обычно записывается в виде четырех чисел, представляющих значения каждого байта в десятичной форме, и разделенных точками, например:
128.10.2.30 - традиционная десятичная форма представления адреса, 10000000 00001010 00000010 00011110 - двоичная форма представления. На (рис. 11.1.) показана структура IP-адреса.
Адрес состоит из двух логических частей - номера сети(или маска подсети) и номера узла в сети. Какая часть адреса относится к номеру сети, а какая к номеру узла, определяется значениями первых битов адреса:
· Если адрес начинается с 0, то сеть относят к классу А, и номер сети занимает один байт, остальные 3 байта интерпретируются как номер узла в сети. Сети класса А имеют номера в диапазоне от 1 до 126. (Номер 0 не используется, а номер 127 зарезервирован для специальных целей, о чем будет сказано ниже.) В сетях класса А количество узлов должно быть больше 216 , но не превышать 224 .
· Если первые два бита адреса равны 10, то сеть относится к классу В и является сетью средних размеров с числом узлов 28 - 216 . В сетях класса В под адрес сети и под адрес узла отводится по 16 битов, то есть по 2 байта.
· Если адрес начинается с последовательности 110, то это сеть класса С с числом узлов не больше 28 . Под адрес сети отводится 24 бита, а под адрес узла - 8 битов.
· Если адрес начинается с последовательности 1110, то он является адресом класса D и обозначает особый, групповой адрес - multicast. Если в пакете в качестве адреса назначения указан адрес класса D, то такой пакет должны получить все узлы, которым присвоен данный адрес.
· Если адрес начинается с последовательности 11110, то это адрес класса Е, он зарезервирован для будущих применений.
Класс А
0 |
N сети |
N узла |
Класс В
1 |
0 |
N сети |
N узла |
Класс С
1 |
1 |
0 |
N сети |
N узла |
Класс D
1 |
1 |
1 |
0 |
адрес группы multicast |
Класс Е
1 |
1 |
1 |
1 |
0 |
зарезервирован |
Рис.11.1 Структура IР-адреса.
В (таблице 11.1.) приведены диапазоны номеров сетей, соответствующих каждому классу сетей.
Таблица 11.1
Класс |
Наименьший адрес |
Наибольший адрес |
A |
01.0.0 |
126.0.0.0 |
B |
128.0.0.0 |
191.255.0.0 |
C |
192.0.1.0. |
223.255.255.0 |
D |
224.0.0.0 |
239.255.255.255 |
E |
240.0.0.0 |
247.255.255.255 |
2 .11.1. Структуризация сетей IP с помощью масок
Часто администраторы сетей испытывают неудобства, из-за того, что количество централизовано выделенных им номеров сетей недостаточно для того, чтобы структурировать сеть надлежащим образом, например, разместить все слабо взаимодействующие компьютеры по разным сетям.
В такой ситуации возможны два пути. Первый из них связан с получением от NIC дополнительных номеров сетей. Второй способ, употребляющийся более часто, связан с использованием так называемых масок , которые позволяют разделять одну сеть на несколько сетей.
Маска - это число, двоичная запись которого содержит единицы в тех разрядах, которые должны интерпретироваться как номер сети.
Например, для стандартных классов сетей маски имеют следующие значения:
255.0.0.0 - маска для сети класса А,
255.255.0.0 - маска для сети класса В,
255.255.255.0 - маска для сети класса С.
В масках, которые использует администратор для увеличения числа сетей, количество единиц в последовательности, определяющей границу номера сети, не обязательно должно быть кратным 8, чтобы повторять деление адреса на байты.
Пусть, например, маска имеет значение 255.255.192.0 (11111111 11111111 11000000 00000000). И пусть сеть имеет номер 129.44.0.0 (10000001 00101100 00000000 00000000), из которого видно, что она относится к классу В. После наложения маски на этот адрес число разрядов, интерпретируемых как номер сети, увеличилось с 16 до 18, то есть администратор получил возможность использовать вместо одного, централизованно заданного ему номера сети, четыре:
129.44.0.0 (10000001 00101100 00000000 00000000)
129.44.64.0 (10000001 00101100 01000000 00000000)
129.44.128.0 (10000001 00101100 10000000 00000000)
129.44.192.0 (10000001 00101100 11000000 00000000)
Например, IP-адрес 129.44.141.15 (10000001 00101100 10001101 00001111), который по стандартам IP задает номер сети 129.44.0.0 и номер узла 0.0.141.15, теперь, при использовании маски, будет интерпретироваться как пара:
129.44.128.0 - номер сети, 0.0. 13.15 - номер узла.
Таким образом, установив новое значение маски, можно заставить маршрутизатор по-другому интерпретировать IP-адрес. При этом два дополнительных последних бита номера сети часто интерпретируются как номера подсетей.
Еще один пример. Пусть некоторая сеть относится к классу В и имеет адрес 128.10.0.0 (рис.11.2). Этот адрес используется маршрутизатором, соединяющим сеть с остальной частью интерсети. И пусть среди всех станций сети есть станции, слабо взаимодействующие между собой. Их желательно было бы изолировать в разных сетях. Для этого сеть можно разделить на две сети, подключив их к соответствующим портам маршрутизатора, и задать для этих портов в качестве маски, например, число 255.255.255.0, то есть организовать внутри исходной сети с централизовано заданным номером две подсети класса C (можно было бы выбрать и другой размер для поля адреса подсети). Извне сеть по-прежнему будет выглядеть, как единая сеть класса В, а на местном уровне это будут две отдельные сети класса С. Приходящий общий трафик будет разделяться местным маршрутизатором между подсетями.
Рис. 11.2. Пример использования масок для структурирования сети
Необходимо заметить, что, если принимается решение об использовании механизма масок, то соответствующим образом должны быть сконфигурированы и маршрутизаторы, и компьютеры сети.
2 .11.2. Не маршрутизируемые IP -адреса.
Если же некоторая IP-сеть создана для работы в «автономном режиме», без связи с Internet, тогда администратор этой сети волен назначить ей произвольно выбранный номер. Но и в этой ситуации для того, чтобы избежать каких-либо коллизий, в стандартах Internet определено несколько диапазонов адресов, рекомендуемых для локального использования. Эти адреса не обрабатываются маршрутизаторами Internet ни при каких условиях. Адреса, зарезервированные для локальных целей, выбраны из разных классов: в классе А — это сеть 10.0.0.0, в классе В — это диапазон из 16 номеров сетей 172.16.0.0-172.31.0.0, в классе С — это диапазон из 255 сетей - 192.168.0.0-192.168.255.0.
2.11.3Отображение физических адресов на IP-адреса: протоколы ARP.
Локальный адрес используется в протоколе IP только в пределах локальной сети при обмене данными между маршрутизатором и узлом этой сети. Маршрутизатор, получив пакет для узла одной из сетей, непосредственно подключенных к его портам, должен для передачи пакета сформировать кадр в соответствии с требованиями принятой в этой сети технологии и указать в нем локальный адрес узла, например его МАС-адрес. В пришедшем пакете этот адрес не указан, поэтому перед маршрутизатором встает задача поиска его по известному IP-адресу, который указан в пакете в качестве адреса назначения. С аналогичной задачей сталкивается и конечный узел, когда он хочет отправить пакет в удаленную сеть через маршрутизатор, подключенный к той же локальной сети, что и данный узел.
Для определения локального адреса по IP-адресу используется протокол разрешения адреса Address Resolution Protocol, ARP . Протокол ARP работает различным образом в зависимости от того, какой протокол канального уровня работает в данной сети - протокол локальной сети (Ethernet, Token Ring, FDDI) с возможностью широковещательного доступа одновременно ко всем узлам сети, или же протокол глобальной сети (X.25, frame relay), как правило не поддерживающий широковещательный доступ.
В локальных сетях протокол ARP использует широковещательные кадры протокола канального уровня для поиска в сети узла с заданным IP-адресом.
Узел, которому нужно выполнить отображение IP-адреса на локальный адрес, формирует ARP запрос, вкладывает его в кадр протокола канального уровня, указывая в нем известный IP-адрес, и рассылает запрос широковещательно. Все узлы локальной сети получают ARP запрос и сравнивают указанный там IP-адрес с собственным. В случае их совпадения узел формирует ARP-ответ, в котором указывает свой IP-адрес и свой локальный адрес и отправляет его уже направленно, так как в ARP запросе отправитель указывает свой локальный адрес. ARP-запросы и ответы используют один и тот же формат пакета. Так как локальные адреса могут в различных типах сетей иметь различную длину, то формат пакета протокола ARP зависит от типа сети. На (рис.11.3) показан формат пакета протокола ARP для передачи по сети Ethernet.
0 8 16 31
Тип сети |
Тип протокола |
|
Длина локального адреса |
Длина сетевого адреса |
Операция |
Локальный адрес отправителя (байты 0 - 3) |
||
Локальный адрес отправителя (байты 4 - 5) |
IP-адрес отправителя (байты 0-1) |
|
IP-адрес отправителя (байты 2-3) |
Искомый локальный адрес (байты 0 - 1) |
|
Искомый локальный адрес (байты 2-5) |
||
Искомый IP-адрес (байты 0 - 3) |
Рис. 11.3 Формат пакета протокола ARP
В поле типа сети для сетей Ethernet указывается значение 1. Поле типа протокола позволяет использовать пакеты ARP не только для протокола IP, но и для других сетевых протоколов. Для IP значение этого поля равно 080016 .
Длина локального адреса для протокола Ethernet равна 6 байтам, а длина IP-адреса - 4 байтам. В поле операции для ARP запросов указывается значение 1.
Узел, отправляющий ARP-запрос, заполняет в пакете все поля, кроме поля искомого локального адреса. Значение этого поля заполняется узлом, опознавшим свой IP-адрес.
2.12. TCP и UDP . Их функции в интерсетях и связь с протоколом IP .
В стеке протоколов TCP/IP протокол TCP (Transmission Control Protocol) работает на транспортном уровне. Он обеспечивает надежную транспортировку данных между прикладными процессами путем установления логического соединения.
Протокол TCP работает непосредственно над протоколом IP и использует для транспортировки своих блоков данных потенциально ненадежный протокол IP. Надежность передачи данных протоколом TCP достигается за счет того, что он основан на установлении логических соединений между взаимодействующими процессами. До тех пор пока программы протокола TCP продолжают функционировать корректно, а составная сеть не распалась на несвязные части, ошибки в передаче данных на уровне протокола IP не будут влиять на правильное получение данных.
Протокол IP используется протоколом TCP в качестве транспортного средства. Перед отправкой своих блоков данных протокол TCP помещает их в оболочку IP-пакета. При необходимости протокол IP осуществляет любую фрагментацию и сборку блоков данных TCP, требующуюся для осуществления передачи и доставки через множество сетей и промежуточных шлюзов.
Задачей протокола транспортного уровня UDP (User Datagram Protocol) является передача данных между прикладными процессами без гарантий доставки, поэтому его пакеты могут быть потеряны, продублированы или прийти не в том порядке, в котором они были отправлены.
2 . 13. TCP и UDP . Понятие портов и их необходимость.
Протоколы TCP и UDP взаимодействуеют через межуровневые интерфейсы с ниже лежащим протоколом IP и с выше лежащими протоколами прикладного уровня или приложениями.
В то время как задачей сетевого уровня, к которому относится протокол IP, является передача данных между произвольными узлами сети, задача транспортного уровня, которую решают протоколы TCP и UDP, заключается в передаче данных между любыми прикладными процессами, выполняющимися на любых узлах сети. Действительно, после того как пакет средствами протокола IP доставлен в компьютер-получатель, данные необходимо направить конкретному процессу-получателю. Каждый компьютер может выполнять несколько процессов, более того, прикладной процесс тоже может иметь несколько точек входа, выступающих в качестве адреса назначения для пакетов данных.
Пакеты, поступающие на транспортный уровень, организуются операционной системой в виде множества очередей к точкам входа различных прикладных процессов. В терминологии TCP/IP такие системные очереди называются портами. Таким образом, адресом назначения, который используется протоколами TCP и UDP, является идентификатор (номер) порта прикладной службы. Номер порта в совокупности с номером сети и номером конечного узла однозначно определяют прикладной процесс в сети.
Однако в протоколе TCP порты используются несколько иным способом. Для организации надежной передачи данных предусматривается установление логического соединения между двумя прикладными процессами. В рамках соединения осуществляется обязательное подтверждение правильности приема для всех переданных сообщений, и при необходимости выполняется повторная передача. Соединение в TCP позволяет вести передачу данных одновременно в обе стороны, то есть полнодуплексную передачу.
Соединение в протоколе TCP идентифицируется парой полных адресов обоих взаимодействующих процессов (оконечных точек). Адрес каждой из оконечных точек включает IP-адрес (номер сети и номер компьютера) и номер порта. Одна оконечная точка может участвовать в нескольких соединениях.
Установление соединения выполняется в следующей последовательности:
· При установлении соединения одна из сторон является инициатором. Она посылает запрос к протоколу TCP на открытие порта для передачи (active open).
· После открытия порта протокол TCP на стороне процесса-инициатора посылает запрос процессу, с которым требуется установить соединение.
· Протокол TCP на приемной стороне открывает порт для приема данных (passive open) и возвращает квитанцию, подтверждающую прием запроса.
· Для того чтобы передача могла вестись в обе стороны, протокол на приемной стороне также открывает порт для передачи (active port) и также передает запрос к противоположной стороне.
· Сторона-инициатор открывает порт для приема и возвращает квитанцию. Соединение считается установленным. Далее происходит обмен данными в рамках данного соединения.
В рамках установленного соединения правильность передачи каждого сегмента должна подтверждаться квитанцией получателя. Квитирование — это один из традиционных методов обеспечения надежной связи. В протоколе TCP используется частный случай квитирования — алгоритм скользящего окна.
Для того, чтобы можно было организовать повторную передачу искаженных данных отправитель нумерует отправляемые единицы передаваемых данных (далее для простоты называемые кадрами). Для каждого кадра отправитель ожидает от приемника так называемую положительную квитанцию - служебное сообщение, извещающее о том, что исходный кадр был получен и данные в нем оказались корректными. Время этого ожидания ограничено - при отправке каждого кадра передатчик запускает таймер, и если по его истечению положительная квитанция на получена, то кадр считается утерянным. В некоторых протоколах приемник, в случае получения кадра с искаженными данными должен отправить отрицательную квитанцию - явное указание того, что данный кадр нужно передать повторно.
Существуют два подхода к организации процесса обмена положительными и отрицательными квитанциями: с простоями и с организацией "окна".
Метод с простоями требует, чтобы источник, пославший кадр, ожидал получения квитанции (положительной или отрицательной) от приемника и только после этого посылал следующий кадр (или повторял искаженный). Из (рис.13.) видно, что в этом случае производительность обмена данными существенно снижается - хотя передатчик и мог бы послать следующий кадр сразу же после отправки предыдущего, он обязан ждать прихода квитанции. Снижение производительности для этого метода коррекции особенно заметно на низкоскоростных каналах связи, то есть в территориальных сетях.
Рис.13.1 Метод подтверждения корректности передачи кадров с простоем источника
Во втором методе для повышения коэффициента использования линии источнику разрешается передать некоторое количество кадров в непрерывном режиме, то есть в максимально возможном для источника темпе, без получения на эти кадры ответных квитанций. Количество кадров, которые разрешается передавать таким образом, называется размером окна. На (рис. 13.2) иллюстрируется данный метод для размера окна в W кадров. Обычно кадры при обмене нумеруются циклически, от 1 до W. При отправке кадра с номером 1 источнику разрешается передать еще W-1 кадров до получения квитанции на кадр 1. Если же за это время квитанция на кадр 1 так и не пришла, то процесс передачи приостанавливается, и по истечению некоторого тайм-аута кадр 1 считается утерянным (или квитанция на него утеряна) и он передается снова.
Рис. 13.2 Метод "окна" - непрерывная отправка пакетов
2.14. Маршрутизация. Понятие и функции. Таблица маршрутизации.
Важнейшей задачей сетевого уровня является маршрутизация — передача пакетов между двумя конечными узлами в составной сети.
Рассмотрим принципы маршрутизации на примере составной сети, изображенной на (рис. 14.1.) В этой сети 20 маршрутизаторов объединяют 18 сетей в общую сеть; S1, S2, ... , S20 - это номера сетей. Маршрутизаторы имеют по нескольку портов (по крайней мере, по два), к которым присоединяются сети. Каждый порт маршрутизатора можно рассматривать как отдельный узел сети: он имеет собственный сетевой адрес и собственный локальный адрес в той подсети, которая к нему подключена. Например, маршрутизатор под номером 1 имеет три порта, к которым подключены сети S1, S2, S3. На рисунке сетевые адреса этих портов обозначены как М1(1), Ml (2) и М1(3). Порт М1(1) имеет локальный адрес в сети с номером S1, порт Ml (2) - в сети S2, а порт М1(3) - в сети S3. Таким образом, маршрутизатор можно рассматривать как совокупность нескольких узлов, каждый из которых входит в свою сеть. Как единое устройство маршрутизатор не имеет ни отдельного сетевого адреса, ни какого-либо локального адреса.
Рис. 14.1 Принципы маршрутизации в составной сети
В сложных составных сетях почти всегда существует несколько альтернативных маршрутов для передачи пакетов между двумя конечными узлами. Маршрут - это последовательность маршрутизаторов, которые должен пройти пакет от отправителя до пункта назначения.
Задачу выбора маршрута из нескольких возможных решают маршрутизаторы, а также конечные узлы. Каждый конечный узел и маршрутизатор анализируют специальную информационную структуру, которая называется таблицей маршрутизации. Задача маршрутизации решается на основе анализа таблиц маршрутизации, размещенных во всех маршрутизаторах и конечных узлах сети.
Таблица 14.1
В первом столбце таблицы перечисляются номера сетей, входящих в интерсеть. В каждой строке таблицы следом за номером сети указывается сетевой адрес следующего маршрутизатора (более точно, сетевой адрес соответствующего порта следующего маршрутизатора), на который надо направить пакет, чтобы тот передвигался по направлению к сети с данным номером по рациональному маршруту.Когда на маршрутизатор поступает новый пакет, номер сети назначения, извлеченный из поступившего кадра, последовательно сравнивается с номерами сетей из каждой строки таблицы. Строка с совпавшим номером сети указывает, на какой ближайший маршрутизатор следует направить пакет. Например, если на какой-либо порт маршрутизатора 4 поступает пакет, адресованный в сеть S6, то из таблицы маршрутизации следует, что адрес следующего маршрутизатора - М2(1), то есть очередным этапом движения данного пакета будет движение к порту 1 маршрутизатора 2.
Отличием работы маршрутизатора и конечного узла при выборе маршрута является способ построения таблицы маршрутизации. Если маршрутизаторы обычно автоматически создают таблицы маршрутизации, обмениваясь служебной информацией, то для конечных узлов таблицы маршрутизации часто создаются вручную администраторами и хранятся в виде постоянных файлов на дисках.
Для автоматического построения таблиц маршрутизации маршрутизаторы обмениваются информацией о топологии составной сети в соответствии со специальным служебным протоколом. Протоколы этого типа называются протоколами маршрутизации (или маршрутизирующими протоколами). Протоколы маршрутизации (например, RIP, OSPF, NLSP) следует отличать от собственно сетевых протоколов (например, IP, IPX).
С помощью протоколов маршрутизации маршрутизаторы составляют карту связей сети той или иной степени подробности. На основании этой информации для каждого номера сети принимается решение о том, какому следующему маршрутизатору надо передавать пакеты, направляемые в эту сеть, чтобы маршрут оказался рациональным.
Основная функция маршрутизатора - чтение заголовков пакетов сетевых протоколов, принимаемых и буферизуемых по каждому порту (например, IPX, IP, AppleTalk или DECnet), и принятие решения о дальнейшем маршруте следования пакета по его сетевому адресу, включающему, как правило, номер сети и номер узла.
Функции маршрутизатора могут быть разбиты на 3 группы в соответствии с уровнями модели OSI (рис. 14.2.).
На уровне интерфейсов маршрутизатор, как и любое устройство, подключенное к сети, обеспечивает физический интерфейс со средой передачи, включая согласование уровней электрических сигналов, линейное и логическое кодирование, оснащение определенным типом разъема(например, Ethernet, Token Ring, FDDI.).
Рис. 14.2 Функциональная модель маршрутизатора
Сетевой протокол в свою очередь извлекает из пакета заголовок сетевого уровня и анализирует содержимое его полей. Прежде всего проверяется контрольная сумма, и если пакет пришел поврежденным, то он отбрасывается. Выполняется проверка, не превысило ли время, которое провел пакет в сети (время жизни пакета), допустимой величины. Если превысило - то пакет также отбрасывается. На этом этапе вносятся корректировки в содержимое некоторых полей, например, наращивается время жизни пакета, пересчитывается контрольная сумма. На сетевом уровне выполняется одна из важнейших функций маршрутизатора - фильтрация трафика.
Сетевые протоколы активно используют в своей работе таблицу маршрутизации, но ни ее построением, ни поддержанием ее содержимого не занимаются. Эти функции выполняют протоколы маршрутизации. На основании этих протоколов маршрутизаторы обмениваются информацией о топологии сети, а затем анализируют полученные сведения, определяя наилучшие по тем или иным критериям маршруты. Результаты анализа и составляют содержимое таблиц маршрутизации.
2.14.1. Таблицы маршрутизации в IP-сетях .
Программные модули протокола IP устанавливаются на всех конечных станциях и маршрутизаторах сети. Для продвижения пакетов они используют таблицы маршрутизации.
Структура таблицы маршрутизации стека TCP/IP соответствует общим принципам построения таблиц маршрутизации.
Рис. 14.3 Пример маршрутизируемой сети
Если представить, что в качестве маршрутизатора Ml в данной сети работает штатный программный маршрутизатор MPR операционной системы Microsoft Windows NT, то его таблица маршрутизации могла бы иметь следующий вид (таблица 14.2).
Таблица 14.2
Существуют два типа маршрутизации:
1. Маршрутизация без использования масок ,
2. Маршрутизация с использованием масок :
- с использованием масок переменной длины ,
- с использованием масок одинаковой длины.
2.15. DNS .
2.15.1. Структура и функции.
Для идентификации компьютеров аппаратное и программное обеспечение в сетях TCP/IP полагается на IP-адреса, поэтому для доступа к сетевому ресурсу в параметрах программы вполне достаточно указать IP-адрес, чтобы программа правильно поняла, к какому хосту ей нужно обратиться. Например, команда ftp://192.45.66.17 будет устанавливать сеанс связи с нужным ftp-сервером, а команда http://203.23.106.33 откроет начальную страницу на корпоративном Web-сервере. Однако пользователи обычно предпочитают работать с символьными именами компьютеров, и операционные системы локальных сетей приучили их к этому удобному способу. Следовательно, в сетях TCP/IP должны существовать символьные имена хостов и механизм для установления соответствия между символьными именами и IP-адресами.
Для эффективной организации именования компьютеров в больших сетях естественным является применение иерархических составных имен.В стеке TCP/IP применяется доменная система имен, которая имеет иерархическую древовидную структуру, допускающую использование в имени произвольного количества составных частей (рис.15.1.).
Рис. 15.1 Пространство доменных имен
Иерархия доменных имен аналогична иерархии имен файлов, принятой во многих популярных файловых системах. Дерево имен начинается с корня, обозначаемого здесь точкой (. ). Затем следует старшая символьная часть имени, вторая по старшинству символьная часть имени и т. д. Младшая часть имени соответствует конечному узлу сети. В отличие от имен файлов, при записи которых сначала указывается самая старшая составляющая, затем составляющая более низкого уровня и т. д., запись доменного имени начинается с самой младшей составляющей, а заканчивается самой старшей. Составные части доменного имени отделяется друг от друга точкой. Например, в имени partnering.microsoft.com составляющая partnering является именем одного из компьютеров в домене Microsoft.com.
Разделение имени на части позволяет разделить административную ответственность за назначение уникальных имен между различными людьми или организациями в пределах своего уровня иерархии. Так, для примера, приведенного на (рис.15.1.), один человек может нести ответственность за то, чтобы все имена, которые имеют окончание «та», имели уникальную следующую вниз по иерархии часть. Если этот человек справляется со своими обязанностями, то все имена типа www.ru, mail.mmt.ru или m2.zil.mmt.ru будут отличаться второй по старшинству частью.
В Internet корневой домен управляется центром InterNIC. Домены верхнего уровня назначаются для каждой страны, а также на организационной основе. Имена этих доменов должны следовать международному стандарту ISO 3166. Для обозначения стран используются трехбуквенные и двухбуквенные аббревиатуры, а для различных типов организаций - следующие обозначения:
· corn - коммерческие организации (например, microsoft.com);
· edu - образовательные (например, mitedu);
· org - некоммерческие организации (например, fidonet.org);
· net - организации, поддерживающие сети (например, nsf.net).
Каждый домен администрируется отдельной организацией, которая обычно разбивает свой домен на поддомены и передает функции администрирования этих поддоменов другим организациям.
Соответствие между доменными именами и IP-адресами может устанавливаться как средствами локального хоста, так и средствами централизованной службы. На раннем этапе развития Internet на каждом хосте вручную создавался текстовый файл с известным именем hosts. Этот файл состоял из некоторого количества строк, каждая из которых содержала одну пару «IP-адрес - доменное имя», например 102.54.94.97 - rhino.acme.com.
По мере роста Internet файлы hosts также росли, и создание масштабируемого решения для разрешения имен стало необходимостью. Для каждого домена имен создается свой DNS-сервер.
Каждый DNS-сервер кроме таблицы отображений имен содержит ссылки на DNS-серверы своих поддоменов. Эти ссылки связывают отдельные DNS-серверы в единую службу DNS. Ссылки представляют собой IP-адреса соответствующих серверов.
Процедура поиска адреса файла по символьному имени заключается в последовательном просмотре каталогов, начиная с корневого. При этом предварительно проверяется кэш и текущий каталог. Для определения IP-адреса по доменному имени также необходимо просмотреть все DNS-серверы, обслуживающие цепочку поддоменов, входящих в имя хоста, начиная с корневого домена. Существенным же отличием является то, что файловая система расположена на одном компьютере, а служба DNS по своей природе является распределенной.
Существуют две основные схемы разрешения DNS-имен. В первом варианте работу по поиску IP-адреса координирует DNS-клиент:
· DNS-клиент обращается к корневому DNS-серверу с указанием полного доменного имени;
· DNS-сервер отвечает, указывая адрес следующего DNS-сервера, обслуживающего домен верхнего уровня, заданный в старшей части запрошенного имени;
· DNS-клиент делает запрос следующего DNS-сервера, который отсылает его к DNS-серверу нужного поддомена, и т. д., пока не будет найден DNS-сервер, в котором хранится соответствие запрошенного имени IP-адресу. Этот сервер дает окончательный ответ клиенту.
Такая схема взаимодействия называется нерекурсивной или итеративной(рис.15.2.), когда клиент сам итеративно выполняет последовательность запросов к разным серверам имен. Так как эта схема загружает клиента достаточно сложной работой, то она применяется редко.
Рис. 15.2 Итерационный метод разрешения запросов
Во втором варианте реализуется рекурсивная процедура:
· DNS-клиент запрашивает локальный DNS-сервер, то есть тот сервер, который обслуживает поддомен, к которому принадлежит имя клиента;
· если локальный DNS-сервер знает ответ, то он сразу же возвращает его клиенту; это может соответствовать случаю, когда запрошенное имя входит в тот же поддомен, что и имя клиента, а также может соответствовать случаю, когда сервер уже узнавал данное соответствие для другого клиента и сохранил его в своем кэше;
· если же локальный сервер не знает ответ, то он выполняет итеративные запросы к корневому серверу и т. д. точно так же, как это делал клиент в первом варианте; получив ответ, он передает его клиенту, который все это время просто ждал его от своего локального DNS-сервера.
В этой схеме клиент перепоручает работу своему серверу, поэтому схема называется косвенной или рекурсивной (рис.15.3.). Практически все DNS-клиенты используют рекурсивную процедуру.
Рис. 15.3 Рекурсивный метод разрешения запросов
2.15.2. Особенности реализации под ОС Windows .
Кратко рассмотрим процесс установки и настройки DNS-серверов в корпоративной сети. Этот процесс включает в себя следующие стадии:
· планирование;
· установка программного обеспечения DNS-сервера;
· настройка DNS;
· мониторинг и оптимизация.
2.15.2.1 Планирование.
Перед использованием DNS в сети необходимо тщательно спланировать пространство имен DNS. При этом нужно определить, как будет применяться служба DNS и какие цели должны быть достигнуты в ходе ее развертывания. Вот вопросы, которые необходимо решить до установки службы.
· Выбор и предварительная регистрация имени домена, используемого в Интернете.
· В какой сети будут установлены серверы DNS — в частной сети или в Интернете.
· Нужно ли использовать DNS для поддержки работы Active Directory?
· Требования к выбору доменных имен для компьютеров.
2.15.2.2. Установка DNS-сервера.
Можно воспользоваться Мастером установки компонентов Windows. Для этого необходимо открыть панель управления, запустить утилиту Add/Remove Programs (Добавить/удалить приложения) и нажать кнопку Add/Remove Windows Component (Добавить/удалить компоненты Windows). В окне мастера (рис. 15.4.) следует выбрать компоненты Windows для установки. Выберите в списке пункт Networking Services (Сетевые службы) и нажмите кнопку Details (Подробнее). В открывшемся окне (рис. 15.5.) установите флажок около компонента Domain Name System (DNS). Вернитесь в окно выбора устанавливаемых компонентов и щелкните на кнопке Next (Далее), чтобы приступить к установке. В процессе установки потребуется доступ к дистрибутивным файлам Windows.
По окончании работы мастера служба DNS будет установлена на выбранный компьютер. Требуемые файлы будут скопированы на жесткий диск, программное обеспечение сервера можно использовать после перезапуска системы. В группе программ Administrative Tools (Средства администрирования) появится новый инструмент: оснастка DNS. Однако мастер производит установку на сервер только системных файлов. Чтобы служба DNS-сервера начала выполнять свои функции, необходимо должным образом ее сконфигурировать.
Рис. 15.4. Выбор компонентов Windows для установки
Рис. 15.5. Выбор сетевых компонентов для установки
2.15.2.3. Настройка сервера.
После того как программное обеспечение DNS-сервера было установлено на компьютер, необходимо выполнить его настройку. Администратор должен создать и настроить зону вручную. Информация о вышестоящих серверах указывается на вкладке Forwarders (Перенаправление) окна свойств DNS-сервера. Например, администратор может указать на этой вкладке информацию о DNS-сервере Интернета.
После того как зона создана, администратор может менять следующие общие свойства зоны:
· запрещать или разрешать использование зоны;
· изменять способ хранения зоны;
· разрешать динамическое обновление зоны.
Все операции по настройке DNS-сервера могут быть выполнены любым из двух инструментов.
· Оснастка DNS (DnsMgmt.msc) (рис. 15.6.). Эта утилита предоставляет администратору графический интерфейс для управления DNS-серверами; она располагается в меню Administrative Tools (Администрирование).
· Утилита командной строки DnsCmd.exe. Утилита поставляется в составе Windows. Утилита может быть использована, например, при создании пакетных файлов сценариев, а также в ситуации, когда администратор конфигурирует DNS-серверы через коммуникационные линии с ограниченной пропускной способностью.
Рис. 15.6. Окно оснастки DNS
В Windows Server 2003 зона корневого домена "." автоматически не создается. Таким образом, все запросы к Интернету могут разрешаться через корневые серверы, указанные на вкладке Root Hints (Корневые ссылки) в окне свойств DNS-сервера. Более того, администратор всегда может сконфигурировать первый установленный DNS-сервер для перенаправления запросов к внешнему пространству имен. Информация о вышестоящих серверах указывается на вкладке Forwarders (Перенаправление) окна свойств DNS-сервера. Например, администратор может указать на этой вкладке информацию о DNS-сервере Интернета (рис.15.7.).
Рис. 15.7. Конфигурирование механизма перенаправления запросов.
В ходе создания корневого домена леса мастер установки Active Directory создает на DNS-сервере две зоны: зона для корневого домена леса и зона _msdcs. <имя_DNS_леса>. Обе создаваемые зоны по умолчанию являются интегрированными в Active Directory. Первая зона размещается в разделе приложений DomainDnsZones.<имя_DNS_леса>, а вторая в разделе приложении ForestDnszones.<HMH_DNS_лeca>. Таким образом, информация о первой зоне может реплицироваться на все DNS-серверы в домене, в то время как информация о второй зоне может реплицироваться на все DNS-серверы в лесе. Для примера на (рис.15.8.) показано содержимое DNS-сервера после создания корневого домена леса khsu.ru.
Рис. 15.8 Две зоны создаются на DNS-сервере в процессе создания корневого леса доменов
Администратор может изменить конфигурацию зоны по своему усмотрению в любой момент. Для выполнения изменений необходимо вызвать окно свойств зоны, выбрав в контекстном меню объекта, ассоциированного с зоной, пункт Properties (Свойства). Окно свойств (рис.15.9.) обычной зоны состоит из пяти вкладок.
Рис. 15.9 Окно свойств зоны DNS, интегрированной в Active Directory
На вкладке General (Общие) в поле Туре (Тип) отображается тип зоны. Администратор может в любой момент изменить его, нажав кнопку Change (Изменить). В открывшемся окне (рис.15.10.) администратор должен выбрать новый тип зоны. Обратите внимание, что установленный флажок Store the zone in Active Directory (Хранить зону в Active Directory) свидетельствует о том, что зона интегрирована в Active Directory.
Рис. 15.10. Выбор типа зоны
По окончании процесса установки службы DNS необходимо проверить работоспособность сервера. Следует убедиться в том, что DNS-сервер поддерживает нужные зоны прямого и обратного просмотра, а также в том, что зоны могут динамически обновляться.
2.16. DHCP . Понятие, необходимость, область применения.
Каждому хосту, подключенному к сети на базе TCP/IP, должен быть назначен уникальный IP-адрес. Протокол DHCP (Dynamic Host Configuration Protocol, протокол динамической конфигурации хоста) был разработан как средство динамического выделения хостам IP-адресов. Протокол DHCP является открытым промышленным стандартом, упрощающим управление сетями на базе TCP/IP. Этот протокол может быть использован для централизованного управления процессом настройки стека протокола TCP/IP на клиентских машинах (речь идет о таких параметрах, как адрес шлюза по умолчанию или адрес DNS-сервера).
В спецификации протокола DHCP определяются два участника: DHCP-сервер и DHCP-клиенты. Служба клиента DHCP запрашивает у DHCP-сервера параметры для настройки стека протоколов TCP/IP. Служба сервера DHCP обрабатывает клиентские запросы, осуществляя выдачу в аренду IP-адреса из некоторого диапазона. Каждый адрес выделяется на определенный срок. По окончании этого срока хост должен либо продлить срок аренды, либо освободить адрес. Все удовлетворенные запросы пользователя фиксируются службой сервера DHCP в собственной базе данных. Подобное решение позволяет предотвратить выделение одного IP-адреса двум хостам. Одновременно с выдачей IP-адреса DHCP-сервер может также предоставить клиенту дополнительную информацию о настройках стека протоколов TCP/IP, такую как маска подсети, адрес шлюза и адреса серверов DNS и WINS.
Характеристики DHCP:
· Интеграция с DNS. DNS-серверы обеспечивают разрешение имен для сетевых ресурсов и тесно связаны со службой DHCP;
· Улучшенное управление и мониторинг;
· DHCP-сервер может быть использован для выделения клиентам групповых (multicast) адресов;
· Защита от подмены серверов;
· Автоматическая настройка клиентов;
· Администратор может создавать собственные классы DHCP (используемые для конфигурации клиентов) в соответствии с необходимостью.
Основные понятия протокола DHCP:
· Область DHCP (scope). Под областью DHCP понимается административная группа, идентифицирующая полные последовательные диапазоны возможных IP-адресов для всех DHCP-клиентов в физической подсети. Области определяют логическую подсеть, для которой должны предоставляться услуги DHCP, и позволяют серверу задавать параметры конфигурации, выдаваемые всем DHCP-клиентам в подсети. Область должна быть определена прежде, чем DHCP-клиенты смогут использовать DHCP-сервер для динамической конфигурации TCP/IP;
· Суперобласти (superscope). Множество областей, сгруппированных в отдельный административный объект, представляет собой суперобласть;
· Пул адресов (address pool). Если определена область DHCP и заданы диапазоны исключения, то оставшаяся часть адресов называется пулом доступных адресов (в пределах области). Эти адреса могут быть динамически назначены клиентам DHCP в сети;
· Диапазоны исключения (exclusion range). Диапазон исключения — ограниченная последовательность IP-адресов в пределах области, которые должны быть исключены из предоставления службой DHCP;
· Резервирование (reservation). Резервирование позволяет назначить клиенту постоянный адрес и гарантировать, что указанное устройство в подсети может всегда использовать один и тот же IP-адрес;
· Период аренды (lease). Под периодом аренды понимается отрезок времени, в течение которого клиентский компьютер может использовать выделенный IP-адрес;
· Опции DHCP (option DHCP). Опции DHCP представляют собой дополнительные параметры настройки клиентов, которые DHCP-сервер может назначать одновременно с выделением IP-адреса. Сервер DHCP поддерживает более 30 опций DHCP согласно RFC 2132. В качестве примера опции DHCP можно привести следующие параметры: IP-адреса шлюза по умолчанию, WINS-сервера или DNS-сервера.
Когда новый DHCP-клиент подключается к сети, он запрашивает уникальный IP-адрес у DHCP-сервера. DHCP-сервер выделяет клиенту один адрес из пула адресов. Этот процесс (рис. 16.1.) состоит из четырех шагов:
1. клиент DHCP запрашивает IP-адрес,
2. DHCP-сервер предлагает адрес,
3. клиент принимает предложение и запрашивает адрес,
4. адрес официально назначается сервером.
Рис. 16.1 Схема взаимодействия DHCP-сервера и DHCP-клиента
2.17. NAT . Что такое и зачем.
С ростом числа компьютеров, устанавливаемых дома и на предприятиях малого бизнеса, становятся очевидными преимущества сетевой среды, предоставляющей широкие возможности совместного использования компьютерных ресурсов. Подключение к интернету является одним из наиболее ценных ресурсов в сети, и потому естественно стремление организовать общий доступ к нему. Развертывание шлюзов интернета позволяет решить эту задачу и построить недорогую, легко управляемую домашнюю или небольшую офисную сеть. В шлюзах интернета, как правило, используется технология NAT (Network Address Translation — преобразование сетевых адресов), которое обеспечивает подключение нескольких узлов к интернету с использованием одного общего IP-адреса. NAT (Network Address Translation — преобразование сетевых адресов) представляет собой стандарт IETF (Internet Engineering Task Force — рабочая группа разработки технологий интернета), с помощью которого несколько компьютеров частной сети (с частными адресами из таких диапазонов, как 10.0.x.x, 192.168.x.x, 172.x.x.x) могут совместно пользоваться одним адресом IPv4, обеспечивающим выход в глобальную сеть. Основная причина растущей популярности NAT связана со все более обостряющимся дефицитом адресов протокола IPv4. Средство общего доступа к подключению интернета в операционных системах Windows XP и Windows Me, а также многие шлюзы интернета активно используют NAT, особенно для подключения к широкополосным сетям, например, через DSL или кабельные модемы.
NAT дает немедленное, но временное решение проблемы дефицита адресов.
NAT не только позволяет сократить число необходимых адресов IPv4, но и образует дополнительную защиту частной сети, поскольку с точки зрения любого узла, находящегося вне сети, связь с ней осуществляется лишь через один, совместно используемый IP-адрес. NAT — это не то же самое, что брандмауэр или прокси-сервер, но это, тем не менее, важный элемент безопасности.
Рис. 17.1 Пример сети, использующей устройство NAT для доступа в интернет.Устройством NAT может служить компьютер, а также надежный кабельный модем или модем DSL.
Устройство NAT «транслирует» пакет, преобразуя в пакете поля источника: частные, внутренние IP-адрес и порт клиента заменяются общими, внешними IP-адресом и портом устройства NAT.
Преобразованный пакет пересылается по внешней сети и в итоге попадает на заданный сервер.
Рис. 17.2. Пример преобразования исходящего пакета.
Получив пакет, сервер полагает, что имеет дело с каким-то одним компьютером, IP-адрес которого допускает глобальную маршрутизацию. Сервер будет направлять ответные пакеты на внешние IP-адрес и порт устройства NAT, указывая в полях источника свои собственные IP-адрес и порт.
NAT принимает эти пакеты от сервера и анализирует их содержимое на основе своей таблицы сопоставления портов. Если в таблице будет найдено сопоставление порта, для которого IP-адрес источника, порт источника, порт назначения и сетевой протокол из входящего пакета совпадают с IP-адресом удаленного узла, удаленным портом и сетевым протоколом, указанным в сопоставлении портов, NAT выполнит обратное преобразование. NAT заменяет внешний IP-адрес и внешний порт в полях назначения пакета на частный IP-адрес и внутренний порт клиента.
Затем NAT отправляет пакет клиенту по внутренней сети. Однако если NAT не находит подходящего сопоставления портов, входящий пакет отвергается и соединение разрывается.
Благодаря устройству NAT клиент получает возможность передавать данные в глобальной среде интернета, используя лишь частный IP-адрес; ни от приложения, ни от клиента не требуется никаких дополнительных усилий. Приложению не приходится обращаться к каким-либо специальным API-интерфейсам, а клиенту не нужно выполнять дополнительную настройку. В данном случае механизм NAT оказывается прозрачным по отношению к клиенту и к серверному приложению — все работает просто и четко.
Недостатком использования NAT является то, что оно препятствует применению коллективных игр, служб общения в режиме реального времени и приложений одноранговой связи. Это объясняется тем, что сетевые протоколы действуют исходя из предположений об архитектуре сети, которые с появлением NAT перестают выполнятся.
2 . 18. ОС Windows . История, версии, отличия.
История Windows берет свое начало в 1986 году, когда появилась первая версия системы. Она представляла собой набор программ, расширяющих возможности существующих операционных систем для большего удобства в работе. Через несколько лет вышла вторая версия, но особой популярности система Windows не завоевала. Однако в 1990 году вышла новая версия - Windows 3.0, которая стала использоваться на многих персональных компьютерах. Популярность новой версии Windows объяснялась несколькими причинами. Графический интерфейс позволяет работать с объектами вашего компьютера не с помощью команд, а с помощью наглядных и понятных действий над значками, обозначающими эти объекты. Возможность одновременной работы с несколькими программами значительно повысила удобство и эффективность работы. Кроме того, удобство и легкость написания программ для Windows привели к появлению все больше разнообразных программ, работающих под управлением Windows. Наконец, лучше была организована работа с разнообразным компьютерным оборудованием, что также определило популярность системы. Последующие версии Windows были направлены на повышение надежности, а также поддержку средств мультимедиа (версия 3.1) и работу в компьютерных сетях (версия 3.11).
Параллельно с разработкой Windows компания Microsoft в 1988 году начала работу над новой операционной системой, названной Windows NT. Перед новой системой были поставлены задачи существенного повышения надежности и эффективной поддержки сетевой работы. При этом интерфейс системы не должен был отличаться от интерфейса Windows 3.0. Интересно, что самой распространенной версией Windows NT также стала третья версия. В 1992 году появилась версия Windows NT 3.0, а в 1994 году - Windows NT 3.5.
Процесс развития операционных систем не стоит на месте, и в 1995 появилась система Windows 95, ставшая новым этапом в истории Windows. По сравнению с Windows 3.1 значительно изменился интерфейс, выросла скорость работы программ. Одной из новых возможностей Windows 95 была возможность автоматической настройки дополнительного оборудования компьютера для работы без конфликтов друг с другом. Другой важной особенностью системы стала возможность работы с Интернетом без использования дополнительных программ.
Интерфейс Windows 95 стал основным для всего семейства Windows, и в 1996 появляется переработанная версия Windows NT 4.0, имеющая такой же интерфейс, как и Windows 95. Продолжением развития Windows 95 стала операционная система, появившаяся в 1998 году. При сохранившемся интерфейсе внутренняя структура была значительно переработана. Много внимания было уделено работе с Интернетом, а также поддержке современных протоколов передачи информации - стандартов, обеспечивающих обмен информацией между различными устройствами. Кроме того, особенностью Windows 98 является возможность работы с несколькими мониторами.
Следующим этапом в развитии Windows стало появление Windows 2000 и Windows Me (Millennium Edition - редакция тысячелетия). Система Windows 2000 разработана на основе Windows NT и унаследовала от нее высокую надежность и защищенность информации от постороннего вмешательства. Операционная система Windows Me стала наследницей Windows 98, но приобрела многие новые возможности. Прежде всего, это улучшенная работа со средствами мультимедиа, возможность записывать не только аудио, но и видеоинформацию, мощные средства восстановления информации после сбоев и многое другое. Постепенно разница между разными системами Windows стирается, и новая операционная система Windows XP предназначена для замены как Windows 2000, так и Windows Me.
2.21. Linux . История, отличия от Windows . Классификация nix систем.
Linux, несомненно, - продукт культуры Unix. Как операционная система (вернее, набор операционных систем с общими свойствами), Unix возник задолго до появления настольных компьютеров. Он был разработан в середине 70-х, когда нормой в корпоративном мире было использование миникомпьютеров и мэйнфреймов. В настоящее время Unix используется в корпоративной среде, а также нередко применяется в системах клиент-сервер сетей intranet.
Исторический недостаток Unix - недоступность системы для программистов, работающих вне промышленных или университетских вычислительных центров. Несмотря на то, что версии Unix для ПК существуют уже давно, они не обладают изяществом и мощью, отличающими операционные системы для миникомпьютеров, мэйнфреймов или современных серверов. Кроме того, ранние коммерческие версии Unix были слишком дороги - зачастую, дороже компьютеров, на которых им предстояло работать.
Именно указанная недоступность способствовала рождению Linux - широкодоступной операционной системы, аналогичной Unix.
Ричард Столман (Richard Stallman) и Фонд бесплатного программного обеспечения FSF (Free Software Foundation) начали работать над этой альтернативной операционной системой в середине 80-х. К концу десятилетия они разработали большинство составляющих ее компонентов за исключением ядра (kernel). Линус Торвальдс (Linus Torvalds) из университета г. Хельсинки в Финляндии разработал оригинальное ядро Linux в 1991 году. В результате объединения Linux получился именно таким, каким мы знаем его сегодня.
Первоначально новая операционная система была для Торвальдса всего лишь увлечением. Ранние версии Linux даже не предполагали наличия конечного пользователя. Зато предоставляемая ими голая функциональность давала программистам Unix радость творчества, позволяя заниматься программированием ядра системы. Ядро, как основа операционной системы, отвечает за бесперебойную работу всех ее частей. Операционной системы без мощного, устойчивого ядра просто не существует.
Со временем команда программистов существенно выросла, появились базовые составляющие полной операционной системы, и вскоре для всех, кто был вовлечен в процесс, стало очевидно, что Linux обретает черты полновесной операционной системы. В марте 1992 г. появилось ядро версии 1.0, и эта дата считается днем рождения первой официальной версии Linux. С этого момента стало возможным выполнять в Linux большую часть программ для Unix - от компиляторов до сетевого программного обеспечения и графической оболочки X Windows.
Linux продолжает развиваться как уникальный двойник операционной системы Unix, предназначенный для ПК. Теперь он обеспечивает широкую аппаратную поддержку, в том числе множества популярных и распространенных периферических устройств. Прекрасные характеристики новой системы, обеспечивают многим ПК мощность, сравнимую с мощностью рабочей станции среднего класса, наподобие систем SPARC компании Sun Microsystems. Технически Linux не идентичен Unix и не может претендовать на эту торговую марку. Однако прилагается максимум усилий для того, чтобы ввести в новую систему все нужные средства, которые позволили бы сертифицировать ее как операционную систему Unix.
Linux является операционной системой. Особенность ядра Linux, отличающая эту систему от прочих операционных систем для настольных ПК, состоит в том, что это система многозадачная и многопользовательская.
Многозадачность системы - это ее способность выполнять одновременно несколько программ (процессов).
Системы Unix всегда обеспечивали многозадачность более высокого порядка, чем Windows. Unix поддерживает одновременное выполнение нескольких задач способом, идеальным для больших корпоративных серверов и мощных рабочих станций. Сегодня лишь Windows 2000 со своим предшественником Windows NT столь же надежно обеспечивают многозадачность. Даже Windows 95/98/Ме, несмотря на все фанфары, трубившие по этому поводу, с трудом управляется с большим числом одновременно выполняемых процессов.
Система Linux, подобно Windows NT и Windows 2000, поддерживает многопроцессорные компьютеры, наподобие двухпроцессорных систем Pentium III. Эти системы реально выполняют два одновременных действия. Многопроцессорность в сочетании с многозадачностью позволяет значительно увеличить количество программ, одновременно выполняемых на одном компьютере.
Кроме многозадачности, Linux (подобно большинству версий Unix и всем членам ее клона) имеет еще одно важное свойство: это многопользовательская операционная система.
Все версии Windows, а также Mac OS, являются однопользовательскими системами. Другими словами, в них в каждый момент времени с системой может работать только один человек. Сравните: Linux допускает одновременную работу нескольких пользователей, что позволяет полностью использовать преимущества многозадачности. Из этого следует огромное достоинство: Linux можно развернуть как сервер приложений. С терминалов или настольных компьютеров пользователи могут входить через ЛВС на сервер Linux и запускать программы на этом сервере, а не на собственных настольных ПК.
Учитывая разнообразие средств, предлагаемых Linux, естественно предположить, что эта операционная система стоит недешево. Ничуть не бывало! Ядро Linux и большая часть программ, написанных для него, распространяются через Internet бесплатно, зачастую без каких-либо ограничений на копирование и распространении.
В России наиболее популярны системы дистрибутивов Linux и FreeBSD.
Работа в Linux или FreeBSD для опытного специалиста не представляет труда. Но для новичка Linux проще в освоении и удобнее в эксплуатации. В отличие от FreeBSD, которая исторически происходит от кодов Unix, ядро системы Linux написано заново. Обе ОС - это системы отличного качества. Одна в чем-то лучше, чем другая, и наоборот. Обе системы активно развиваются, поэтому они могут быстро и неоднократно меняться лидирующей ролью в каких-либо аспектах. Наиболее распространенные системы семейства Unix приведены в (таблице 21.1.).
Таблица 21.1
Система |
Платформа |
SCO Unix (Santa Cruz Operation) |
i*86 |
Novell UnixWare (куплена SCO) |
i*86 |
Interactive Unix (куплен Sun) |
i*86 |
Linux |
i*86, Motorolla 680*0, DEC Alpha, IBM POWER-PC, Sun Sparc |
Семейство BSD: BSDI, FreeBSD, NetBSD, OpenBSD. |
i*86, Acorn ARM, Sun Sparc |
Solaris |
Sun Sparc, i*86 |
AIX |
IBM RS/6000 и AS/400 на POWER-PC |
IRIX |
SGI MIPS |
Digital Unix (ранее Unix OSF/1) |
DEC Alpha |
HP-UX |
Hewlett-Packard PA-RISC |
Unix - это семейство полноценных, изначально многопользовательских, многозадачных и многотерминальных операционных систем, почти полностью совместимых друг с другом на уровне исходных текстов программ.
FreeBSD - это *nix-подобная операционная система для платформ i386 и Alpha/AXP, разработанная на основе операционной системы 4.4BSD-Lite с некоторыми усовершенствованиями, взятыми из 4.4BSD-Lite2 Калифорнийского Университета (Беркли).
Linux - это независимая реализация системы, соответствующей стандарту POSIX с некоторыми расширениями от System V и BSD, написанная "с нуля" (выглядит и функционирует как Unix). Как и другие версии UNIX, Linux - полная многозадачная многопользовательская операционная система .
Solaris - это разновидность Berkley UNIX, предназначенная для работы в корпоративных вычислительных сетях.
QNX (пpоизноcитcя как "queue nicks") - это *nix-подобная, POSIX-совместимая, многозадачная, многопользовательская, многопоточная операционная система реального времени с возможностью встраивания, легко масштабируемая.
2.22. Структура ОС Linux и программного обеспечения для нее .
Сам термин "Linux" не вполне определен. Прежде всего, он обозначает собственно ядро -сердце любой версии Linux. В более широком понимании, Linux - любой набор программ, выполняемых в этом ядре и называемый дистрибутивом. Задача ядра - обеспечение базовой среды, в которой могут выполняться программы, в том числе программы базового аппаратного интерфейса и системы управления задачами или выполнением программ.
Строго говоря, в конкретный момент времени существует лишь одна текущая версия Linux, и это -текущая версия ядра. Торвальдс считает ядро собственной вотчиной в мире binux, позволяя тысячам разработчиков во всем мире разрабатывать прикладные программы и службы для этого ядра.Если понимать термин "Linux" в широком смысле - как набор программ, выполняемых на ядре Linux, то версий этой операционной системы окажется великое множество. Каждый дистрибутив имеет собственные уникальные характеристики, отличаясь методом установки, набором средств и способом обновления версии. Но поскольку в .основе каждого дистрибутива - все тот же Linux, почти любая программа, работающая в текущей версии одного, дистрибутива, будет работать в текущей версии другого.
В техническом представлении операционная система ограничивается ядром, содержащим основные системные функции и необходимым для разработки любой программы.
Операционную систему Linux можно использовать для разработки программ любых типов. В настоящее время существуют следующие виды программного обеспечения для Linux.
Текстовые редакторы. Кроме коммерческих текстовых редакторов, наподобие WordPerfect StarOffice или Applixware, Linux содержит собственные мощные средства редактирования текстовых файлов, а также программы обработки текстов в автоматическом режиме. Языки программирования. Имеется множество языков программирования и подготовки сценариев, а также иных средств, предназначенных для Linux и всех операционных систем Unix.
Обилие средств программирования упрощает разработку программ, выполняемых не только в Linux, но и в большинстве операционных систем Unix.
Оболочка X Windows. Ответом Unix на графический пользовательский интерфейс (GUT) явилась оболочка X Windows. Это гибкая и конфигурируемая среда, работающая как в Linux, так и в большинстве систем Unix. Множество программ, выполняемых в X Windows, превращают Linux в простую и удобную операционную систему.
Средства Internet. Linux не только поддерживает известные программы наподобие Netscape Communicator или Mosaic, но и содержит собственное программное обеспечение для Internet. Это текстовые и графические программы чтения электронной почты, полный набор программного обеспечения для создания серверов Internet (Web-серверов, серверов электронной почты и новостей). Обеспечивается, полная поддержка подключения к Internet через локальную сеть или модем.
Базы данных. Подобно всем платформам Unix, Linux предоставляет надежную основу для систем баз данных клиент-сервер. Linux всегда поддерживал СУБД наподобие mSQL и PostgreSQL. С ростом популярности системы, особенно в среде корпоративных информационных систем, увеличивалось количество серверов коммерческих реляционных баз данных для Linux. Сегодня реляционные базы данных для Linux предлагаются такими компаниями, как Oracle, Sybase и Informix.
Программное обеспечение совместимости с DOS и Windows. С высокой степенью устойчивости в Linux можно выполнять программы для DOS . Существует несколько способов выполнения программ для Windows. Текст этой книги написан в Microsoft Word для Windows на компьютере, работающем под управлением Linux. Это прекрасная иллюстрация способности Linux работать с Windows. Существуют эмуляторы других популярных операционных систем, в том числе Macintosh и Atari ST.
Конечно, все перечисленное - лишь вершина айсберга. Программ для Linux гораздо больше. Хороший источник программного обеспечения для Linux - Linux Software Map. Он находится в World Wide Web по адресу http: / /www. execpc . com/1sm/.
2.23. Загрузка и установка Linux . Загрузка вместе с другой ОС.
2.23.1.Установка Linux .
Для установки необходим дистрибутив Linux , возможно загрузочная дискета и свободное места на жестком диске. Если у нет оригинального установочного диска или не поддерживается загрузка с CD-ROM, можно создать загрузочную дискету. Если на диске стоит ОС Windows , то следует создать разделы с помощью программы утилиты(например PowerQuest Partition Magic Pro .) отрезая у Windows свободное пространство.
Лучшим вариантом для установки будет создании трёх разделов:
· swap - 1.5-2 объёма оперативной памяти (фаил подкачки)
· /boot - около 75 Мб
· / - для обычной установки около 1.5 Мб(корень)
Запустив программу Partition Magic . Можно увидите приблизительно следующее(рис.23.1.):
рис. 23.1 интерфейс программы PowerQuest Partition Magic Pro .
2.23.2.Загрузка Linux .
Linux может быть запущена как с дискет, так и с жесткого диска.
При включении компьютера, сначала BIOS производит тестирование оборудования, а затем запуск операционной системы. Сначала выбирается устройство, с которого будет производится запуск (обычно первый дисковод, если в него вставлена дискета, в противном случае - первый жесткий диск, если он установлен, хотя порядок выбора может быть настроен) и считывается самый первый сектор, который называется загрузочным. Его также называют MBR (Master Boot Record), так как у жесткого диска может быть несколько разделов и у кажодого может быть свой загрузочный сектор.
В загрузочном секторе находится небольшая программа (относительно небольшая чтобы она могла разместится в одном секторе), которая загружает и запускает операционную систему. При загрузке с дискеты, в загрузочном секторе находится код, который обеспечивает только считывание ядра системы в определенную заранее область памяти. Загрузочная дискета для Linux не содержит никаких файловых систем. Ядро записано на дискете как последовательность блоков, так как это значительно упрощает процесс загрузки. Однако, вполне можно загружаться с дискеты, на которой установлена какая-нибудь файловая система, используя загpузчик LILO.
При загрузке с жесткого диска, код, расположенный в MBR, проверяет таблицу разделов (также расположенную в MBR), определяет активный раздел (раздел, используемый при загрузке), считывает загрузочный сектор этого раздела и запускает считанный код. Код, расположенный в загрузочном секторе активного раздела жесткого диска, выполняет те же функции, что и код, находящийся в загрузочном секторе дискеты: он считывает ядро из выбранного раздела, а затем запускает его.
При загрузке с использованием LILO обычно сразу же загружается и запускается ядро, заданное по умолчанию, однако можно сконфигурировать LILO так, чтобы можно было бы загрузить одно из нескольких возможных ядер или даже другую операционную систему (в добавление к Linux). Существуют и другие загрузчики, подобные LILO. Среди подобных LILO является наилучшим выбором.
2.24. Файловая система (виды, отличия) и права доступа в ОС Windows .
2.24.1. FAT .
Файловая система (file system) – функциональная часть операционной системы, которая отвечает за обмен данными с внешними запоминающими устройствами. Операционными системами Windows используется, разработанная еще для DOS файловая система FAT , в которой для каждого раздели и тома DOS имеется загрузочный сектор, а каждый раздел DOS содержит две копии таблицы размещения файлов (file allocation table – FAT). FAT представляет собой матрицу, которая устанавливает соотношение между файлами и папками раздела и их физическим местоположением на жестком диске. Перед каждым разделом жесткого диска последовательно расположены две копии FAT. Подобно загрузочным секторам, FAT располагается за пределами области диска, видимой для файловой системы. При записи на диск файлы не обязательно занимают пространство, эквивалентное их размеру. Обычно файлы разбиваются на кластеры определенного размера, которые могут быть разбросаны по всему разделу. В результате таблица FAT представляет собой не список файлов и их местоположения, а список кластеров раздела и их содержимого, а в конце каждого описания содержится ссылка на следующий занимаемый файлом кластер.
Каждому файлу и подкаталогу в FAT соответствует 32-байтный элемент каталога (directory entry), содержащий имя файла, его атрибуты (архивный, скрытый, системный и “только для чтения”), дату и время создания (или внесения в него последних изменений), а также прочую информацию (таблица 24.1.).
Таблица 24.1
Содержание |
Размер (байт) |
Имя файла |
8 |
Расширение |
3 |
Байт атрибутов |
1 |
Зарезервировано |
10 |
Время |
2 |
Дата |
2 |
Номер начального кластера с данными |
2 |
Размер файла |
4 |
Файловая система FAT всегда заполняет свободное место на диске последовательно от начала к концу. При создании нового файла или увеличении уже существующего она ищет самый первый свободный кластер в таблице размещения файлов. Если в процессе работы одни файлы были удалены, а другие изменились в размере, то появляющиеся в результате пустые кластеры будут рассеяны по диску. Если кластеры, содержащие данные файла, расположены не подряд, то файл оказывается фрагментированным . Сильно фрагментированные файлы значительно снижают эффективность работы, так как головки чтения/записи при поиске очередной записи файла должны будут перемещаться от одной области диска к другой. В состав операционных систем, поддерживающих FAT, обычно входят специальные утилиты дефрагментации диска, предназначенные повысить производительность файловых операций.
Недостаток FAT заключается в том, что ее производительность сильно зависит от количества файлов, хранящихся в одном каталоге. При большом количестве файлов (около тысячи), выполнение операции считывания списка файлов в каталоге может занять несколько минут. Это обусловлено тем, что в FAT каталог имеет линейную неупорядоченную структуру, и имена файлов в каталогах идут в порядке их создания. В результате, чем больше в каталоге записей, тем медленнее работают программы, так как при поиске файла требуется просмотреть последовательно все записи в каталоге.
2.24.2. FAT 32.
FAT32 - усовершенствованная версия файловой системы FAT, поддерживающая жесткие диски объемом до 2 терабайт. Впервые файловая система FAT32 была включена в состав ОС Windows 95 OSR 2. В FAT32 были расширены атрибуты файлов, позволяющие теперь хранить время и дату создания, модификации и последнего доступа к файлу или каталогу.
Из-за требования совместимости с ранее созданными программами структура FAT32 содержит минимальные изменения. Главные отличия от предыдущих версий FAT состоят в следующем. Блок начальной загрузки на разделах с FAT32 был увеличен до 2 секторов и включает в себя резервную копию загрузочного сектора, что позволяет системе быть более устойчивой к возможным сбоям на диске. Объем, занимаемый таблицей размещения файлов, увеличился, поскольку теперь каждая запись в ней занимает 32 байта, и общее число кластеров на разделе FAT32 больше, чем на разделах FAT. Соответственно, выросло и количество зарезервированных секторов.
Размеры кластера, предлагаемые по умолчанию при форматировании FAT32 дисков, приведены в (таблице 24.2.).
Таблица 24.2
Размер раздела |
Размер кластера |
< 260 Мб |
512 байт |
260 Мб – 8 Гб |
4 Кб |
8 Гб – 16 Гб |
8 Кб |
16 Гб – 32 Гб |
16 Кб |
> 32 Гб |
32 Кб |
FAT32 поддерживается в следующих ОС: Windows 95 OSR2, Windows 98 и Windows NT 5.0.
2.24.3. NTFS .
NTFS (New Technology File System) - наиболее предпочтительная файловая система при работе с ОС Windows NT, поскольку она была специально разработана для данной системы.В NTFS значительно расширены возможности по управлению доступом к отдельным файлам и каталогам, введено большое число атрибутов, реализована отказоустойчивость, средства динамического сжатия файлов, поддержка требований стандарта POSIX. NTFS позволяет использовать имена файлов длиной до 255 символов, при этом она использует тот же алгоритм для генерации короткого имени, что и FAT. NTFS обладает возможностью самостоятельного восстановления в случае сбоя ОС или оборудования, так что дисковый том остается доступным, а структура каталогов не нарушается.
Каждый файл на томе NTFS представлен записью в специальном файле – главной файловой таблице MFT (Master File Table ). NTFS резервирует первые 16 записей таблицы размером около 1 Мб для специальной информации. Первая запись таблицы описывает непосредственно саму главную файловую таблицу. За ней следует зеркальная запись MFT. Если первая запись MFT разрушена, NTFS считывает вторую запись, чтобы отыскать зеркальный файл MFT, первая запись которого идентична первой записи MFT. Местоположение сегментов данных MFT и зеркального файла MFT хранится в секторе начальной загрузки. Копия сектора начальной загрузки находится в логическом центре диска. Третья запись MFT содержит файл регистрации, применяемый для восстановления файлов. Семнадцатая и последующие записи главной файловой таблицы используются собственно файлами и каталогами на томе.
В загрузочном файле (boot file) хранится код начального загрузчика Windows NT.
NTFS распределяет пространство кластерами и использует для их нумерации 64 разряда, что дает возможность иметь 264 кластеров, каждый размером до 64 Кбайт. Как и в FAT размер кластера может меняться, но необязательно возрастает пропорционально размеру диска. Размеры кластеров, устанавливаемые по умолчанию при форматировании раздела, приведены в (таблице 24.3.).
Таблица 24.3
Размер раздела |
Размер кластера |
< 512 Мб |
512 байт |
513 Мб - 1024 Мб (1 Гб) |
1 Кб |
1 Гб - 2 Гб |
2 Кб |
2 Гб - 4 Гб |
4 Кб |
4 Гб - 8 Гб |
8 Кб |
8 Гб - 16 Гб |
16 Кб |
16 Гб - 32 Гб |
32 Кб |
> 32 Гб |
64 Кб |
В (таблица 24.4.) приведены сравнения файловых систем FAT и NTFS.
Таблица 24.4
Ограничения |
NTFS |
FAT и FAT 32 |
Размеры тома |
Минимальный размер тома составляет приблизительно 10 Мб. |
FAT поддерживает различные размеры томов - от объема дискет и до 4 Гб. |
На практике рекомендуется создавать тома, размеры которых не превышают 2 Тб. |
FAT 32 поддерживает тома объемом от 2 гб. до 2 Тб. Работая под управлением Windows XP для Fat 32 можно отформатировать тома, размер которых не превышает 32 Гб. |
|
С помощью NTFS нельзя форматировать дискеты. |
Не поддерживаются диски размеры которых меньше 512 Мб. |
|
Размеры файлов |
Теоритически размер файла может составлять 16 экзабайт. |
FAT поддерживает файлы размером не более 2 Гб. FAT 32 подерживает файлы размером не более 4 Гб. |
NTFS - единственная файловая система в Windows, которая позволяет назначать права доступа к различным файлам. Устанавливая пользователям определенные разрешения для файлов и каталогов, пользователь может защищать конфиденциальную информацию от несанкционированного доступа. Разрешения пользователя на доступ к объектам файловой системы работают по принципу дополнения. Это значит, что действующие разрешения, то есть те разрешения, которые пользователь реально имеет в отношении конкретного каталога или файла, образуются из всех прямых или косвенных разрешений, назначенных ползователю для данного объекта с помощью логической функции "Или". Например, если пользователь имеет правоназначенное разрешение для каталога на чтение, а косвенно через членство в группах ему дано право на запись, то в результате пользователь сможет читать информацию в файлах каталога и записывать в них данные.
Для назначения пользователю или группе разрешения на доступ к определенномук файлу необходимо:
1. Указать файл мышью и нажать правую кнопку. Выбрать пункт Properties (Свойства) контексного меню. В появившемся окне свойств файла перейти на вкладку Security (Безопасность). По умолчанию данной вкладки там нет, чтобы она появилась необходимо в свойствах папки убрать галочку Simple File Sharing (использовать простой общий доступ к файлам);
2. В группе Name (Имя) показан список пользователей и групп, которым уже предоставлены разрешения для этого файла. Для того, чтобы добавить или удалить пользователей или новые группы, нажать кнопку Add/Remove (Добавить/Удалить) Появится окно диалога Select Users, Groups (Выбрать пользователей, группы).В поле Enter the object names to select (Ввелите имена выбираемых объектов) написать имя пользователя, кнопка Check Names (Проверить имена) позволяет проверить правильность написания имени.
3. В группе Permissions (Разрешения) устанавливаются разрешения. Присутствуют указатели Deny (запретить) и Allow (Разрешить). Устанавливаются флажки для следующих параметров: Full Control (полный контроль) - пользователь получает неограниченныей доступ к файлу, Modify (Изменение) - пользователь может изменять файл, Read & execute (Чтение и выполнение), Read (Чтение) - пользователь может только читать файл, Write (Запись) - пользователь может записывать в файл (рис. 24.1.).
рис. 24.1 права доступа
2.25. Файловая система (виды, отличия) и права доступа в ОС Linux .
Файловая система Linux, в отличие от файловых систем DOS и Windows, является единым деревом. Корень этого дерева — каталог, называемый root (рут), и обозначаемый символом /. Части дерева файловой системы могут физически располагаться в разных разделах разных дисков или вообще на других компьютерах — для пользователя это прозрачно. Процесс присоединения файловой системы раздела к дереву называется монтированием, удаление — размонтированием. Например, файловая система CD ROM в ALT Linux монтируется по умолчанию в каталог /mnt/cdrom (знак разделителя каталогов в путях Linux — /, а не \, как в DOS/Windows). Текущий каталог обозначается как ./.
Файловая система Linux содержит следующие каталоги первого уровня:
· /bin (командные оболочки shell, основные утилиты);
· /boot (содержит ядро системы);
· /dev (псевдофайлы устройств, позволяющие работать с ними напрямую);
· /etc (файлы конфигурации);
· /home (личные каталоги пользователей);
· /lib (системные библиотеки, модули ядра);
· /mnt (каталоги для монтирования файловых систем сменных устройств и внешних файловых систем);
· /proc (файловая система на виртуальном устройстве, её файлы содержат информацию о текущем состоянии системы);
· /root (каталог администратора системы);
· /sbin (системные утилиты);
· /usr (программы и библиотеки, доступные пользователю);
· /var (рабочие файлы программ, очереди, журналы);
· /tmp (временные файлы).
Файловое дерево формируется из отдельных частей, называемых файловыми системами, каждая из которых содержит один каталог и список его подкаталогов и файлов. Термин "файловая система", по сути, имеет два значения. С одной стороны, это составная часть файлового дерева, а с другой — все файловое дерево и алгоритмы, с помощью которых Linux управляет им. Как правило, значение термина становится ясным из контекста.
Файловые системы прикрепляются к файловому дереву с помощью команды mount. Эта команда берет из существующего файлового дерева каталог (он называется точкой монтирования) и делает его корневым каталогом присоединяемой файловой системы. На время монтирования доступ к содержимому точки монтирования становится невозможным. Как правило, точка монтирования — пустой каталог. Например, команда mount /dev/hda3 /users монтирует файловую систему, размещенную на устройстве /dev/hda3, под именем /users. После монтирования можно с помощью команды ls /users посмотреть, что содержит эта файловая система.
В файловой системе ext2 (и во многих других) поддерживается семь типов файлов:
· обычные файлы;
· каталоги;
· символические ссылки.
· файлы байт-ориентированных (символьных) устройств;
· файлы блок-ориентированных (блочных) устройств;
· сокеты;
· именованные каналы (FIFO).
Поскольку Linux - многопользовательская OS, в ней существует система прав доступа к файлам, служащая для защиты файлов каждого пользователя от влияния других пользователей системы.
Права доступа подразделяются на три типа:
-чтение(read),
-запись(write),
-выполнение (execute).
Разрешение на чтение позволяет пользователю читать содержимое файлов, а в случае каталогов - просматривать перечень имен файлов в каталоге (используя, например, ls). Разрешение на запись позволяет пользователю писать в файл, изменять его или удалять. Для каталогов это дает право cоздавать в каталоге новые файлы и каталоги, или удалять файлы в этом каталоге. Наконец, разрешение на выполнение позволяет пользователю выполнять файлы (как бинарные программы, так и командные файлы). Если на файле стоит атрибут Execute, то независимо от его расширения он считается программой, которую можно запустить. (Вот почему в *nix не принято ставить исполняемым файлам расширения по типу DOS'овских *.com, *.exe, *.bat. Вообще в Unix/Linux нет такого жесткого понятия 'расширение файла', как в Dos/Windows, и система сама определяет тип файлов независимо от их расширения, но это - уже другая история...). Так же атрибут выполнения может стоять у shell-скриптов, CGI-скриптов, и у всего, что можно хоть как-то запустить. Разрешение на выполнение применительно к каталогам означает возможность выполнять команды вроде cd.
Эти типы прав доступа могут быть предоставлены для трех классов пользователей:
- владельца - у каждого файла в Linux'e есть один владелец.
- группы - с каждым файлом связана группа пользователей этого файла. Наиболее общая группа для файлов пользователей называется users, в эту группу обычно включаются все пользователи системы (чтобы узнать группу конкретного файла, используйте команду ls -l file).
- всех остальных пользователей.
Владельцем файла становится юзер, который создал этот файл. Короче говоря, для файла все юзеры делятся на 3 типа: хозяин, или владелец, юзеры, состоящие в одной группе с владельцем, и все остальные юзеры. Для каждого типа - свои права. Владельцем всех системных файлов является Root. Он же имеет право забирать файлы у одного юзера и передавать их другому (менять владельца). Делается это так:
chown <имя нового владельца> <имя файла>.
Для передачи каталога надо вводить:
chown -R <ия нового владельца> <имя каталога>
Изменить права доступа к файлу может либо его владелец, либо сам Root. Делается это командой chmod . Существует две формы представления прав доступа: символьная и цифровая.
2.25.1. Символьная форма прав доступа.
Если войти в любой каталог, где есть файлы, и набрать "ls -l", то появится список всех файлов в этом каталоге и права доступа в символьной форме. Строка прав доступа состоит из 10 символов. Первый символ указывает на тип файла: "d"-директория, "-"-обычный файл(рис. 25.1.). Три последующих - права доступа владельца к этому файлу. Если первый символ из этих трех - "r", владелец имеет право читать этот файл, а если "-", то не имеет. Следующие 2 символа - "w"-писать и "x"-запускать. Если вместо них стоит "-", значит, владелец этого права не имеет. Еще 3 символа - права доступа группы, еще три - права всех остальных пользователей.
Обычный файл |
- |
Каталог |
d |
Файл байт-ориентированного устройства |
c |
Файл блок-ориентированного устройства |
b |
Сокет |
s |
Именованный канал |
р |
Символическая ссылка |
l |
рис. 25.1 кодирование типов файлов в листинге команды ls.
Примеры:
drwxrwxrwx - директория, к которой все имеют любые права доступа.
-rwxr--r-- - обычный файл, владелец может делать все, а остальные только читать.
-r-------- - обычный файл, который владелец может только читать, а остальные пользователи не видят.
Важно заметить, что права доступа, которые имеет файл, зависят также от прав доступа к каталогу, в котором этот файл находится. Например, даже если файл имеет -rwxrwxrwx , другие пользователи не смогут до него добраться, если у них не будет прав на чтение и выполнение каталога, в котором находится файл. Например, если юзер захочет ограничить доступ ко всем своим файлам, он может просто изменить права доступа своего домашнего каталога /home/user на drwx------ . Таким образом, никто другой не будет иметь доступ в его каталог, а следовательно посторонним будут недоступны и все файлы. Так что, пользователь может не заботиться об индивидуальной защите своих файлов. Другими словами, чтобы иметь доступ к файлу, вы должны иметь доступ ко всем каталогам, лежащим на пути от корня к этому файлу, а также разрешение на доступ собственно к этому файлу. Обычно пользователи UNIX весьма открыты всеми своими файлами. По умолчанию файлам устанавливается защита -rw-r--r-- , которая позволяет другим пользователям читать файлы, но ни коим образом их не менять. Каталогам обычно устанавливаются права доступа drwxr-xr-x , что позволяет другим пользователям ходить с правами экскурсантов по вашим каталогам, но ничего в них не трогать и не записывать.
Но многие пользователи хотят держать других подальше от своих файлов. Установив права доступа файла -rw------- , вы никому не покажете этот файл и не дадите записать в него. Также хорошо закрывает файлы защита соответствующего каталога drwx------ .
С правами доступа в символьной форме chmod работает так:
chmod {a,u,g,o}{+,-}{r,w,x} <filenames>
Кратко, вы выбираете из all (все), user (пользователь), group (группа) или other (другие). Далее указываете, либо вы добавляете права (+), либо лишаете прав (-). И наконец, вы указываете один или несколько режимов: read, write или execute.
Примеры:
-chmod a+r stuff – дает всем пользователям право читать файл stuff.
- chmod og-x stuff - лишает права на выполнение всех, кроме владельца.
- chmod u+rwx stuff - разрешает владельцу все (read, write и execute).
- chmod o-rwx stuff - запрещает все (read, write и execute) пользователям категории другие (other).
2.25.2. Числовая форма прав доступа.
400-владелец имеет право на чтение
200 - владелец имеет право на запись
100 - владелец имеет право на выполнение
40 - группа имеет право на чтение
20 - группа имеет право на запись
10 - группа имеет право на выполнение
4 - остальные имеют право на чтение
2 - остальные имеют право на запись
1 - остальные имеют право на выполнение
Теперь осталось только просуммировать числа, соответствующие тем правам доступа, которые мы хотим поставить файлу.
Примеры:
400+200+100+40+4=744.
chmod 744 stuff - владелец может делать все, а остальные - только читать.
400+40+4=444.
chmod 444 stuff - все имеют право только на чтение.
400+100+10+1=611.
chmod 611 stuff - владелец может читать и выполнять, остальные - только выполнять.
400+200+100+40+10+4+1=755.
chmod 755 script - классическая команда. Скрипт - это исполняемый файл, и все должны иметь к нему доступ на чтение и выполнение. Только владелец этого файла может его изменять или удалять.
2 . 26.Основные команды Linux .
В мире Unix (следовательно, и Linux) понятие команды несколько иное. Здесь команда - это любой выполняемый файл. Командой является любой файл, предназначенный для выполнения, а не для хранения данных или конфигурационных параметров. Любой выполняемый файл, записанный в систему, становится ее командой.
Несмотря на то что Linux является вполне современной 32-разрядной операционной платформой, поддерживающей оконный интерфейс, пользователю достаточно часто приходится работать с так называемой системной консолью-инструментом, аналогичным сеансу MS-DOS в Windows:
pwd — получить имя текущей директории;
cd имя директории — сменить текущую директорию;
ls — вывести на экран содержимое текущей директории;
cat файл — отправить файл на стандартный вывод;
cat файл1 файл2 > файл3 — «смешать» содержимое файла! и файла2, поместив результат в файл3;
cat файл1 файл2 — дописать содержимое файла1 в файл2;
ср файл1 [файл2...] каталог — копировать файл или группу файлов в указанный каталог;
mv файл1 [файл2...] каталог — переместить файл или группу файлов в указанный каталог (исходные файлы при этом уничтожаются);
ln файл1 файл2 — создать статическую привязку файла1 к файлу2, то есть для файла1 создается еще одно имя — файл2;
rm [ключ] файл — удалить файл или группу файлов (среди ключей: -I — просить подтверждения на каждое удаление; -f — удалять сразу без подтверждения; -r — удалять все содержимое директории вместе с поддиректориями);
mkdir имя директории — создать директорию;
chmod [аргумент] файл1 — определить права доступа пользователей к файлу1 (среди аргументов: a+w — разрешить другим пользователям вносить измененияв файл; u+х — разрешить запуск программы на исполнение);
chown – смена владельца;
touch имя_файла — создать пустой файл с указанным именем;
ps — отобразить список всех выполняемых в системе процессов с их номерами;
kill номер_процесса — прервать один из запущенных в системе процессов (аналогично команде «снять задачу» в MS Windows;
find – поиск чего-либо;
Man команда или файл – вызвать справку;
ls папка – вывод содержания папки;
su – сменить пользователя.