Страница:
Александр Иванович Ватаманюк
Создание и обслуживание локальных сетей
dgurski@minsk.piter.com (издательство «Питер», компьютерная редакция).
Мы будем рады узнать ваше мнение!
На сайте издательства http://www.piter.com вы найдете подробную информацию о наших книгах.
Часть 1
Компьютерная сеть. Общие понятия
Глава 1
Сеть? Это что еще такое?
• Причины появления сети и перспективы ее развития
• Как создаются сети и кто это может сделать
• Как создаются сети и кто это может сделать
1.1. Причины появления сети и перспективы ее развития
Когда компьютер только задумывали, главной его задачей предполагалось облегчение труда человека и автоматизация и ускорение выполнения некоторых арифметических операций. Никто тогда даже думать не мог, что компьютеров через несколько десятков лет будет настолько много, что рано или поздно они будут объединены в один громадный «организм», удовлетворяющий практически все потребности человека. Тем не менее так оно и произошло, по крайней мере очень близко к этому.
Каковы же причины появления сети? Как минимум можно выделить несколько:
• несовершенство существующих компьютеров и компьютерной техники;
• недостаток мощности отдельного компьютера для выполнения сложной задачи;
• слишком большое количество людей, задействованных в достижении поставленной цели;
• новые направления в науке, требующие все больших человеческих и компьютерных ресурсов.
Этот список можно продолжать очень долго, но факт остается фактом: рано или поздно сеть должна была возникнуть и она возникла.
Таким образом, сеть – не что иное, как некоторое количество компьютеров, определенным способом подключенных друг к другу. Однако это только часть понятия. На самом деле сюда еще нужно включить сетевые операционные системы, прикладные программы, специальные программные механизмы обмена информацией и многое другое.
Можно сказать однозначно, что появление сети изменило жизнь всего человечества. Преимуществ у сети много, больше, чем можно было бы себе представить. Вот только некоторые из них:
• организация одновременной работы многих пользователей с одним источником, будь то распределенная база данных или обычный офисный документ;
• использование всех компьютеров сети для выполнения одной работы с целью осуществления сложного, требующего много ресурсов проекта;
• обмен информацией любого характера, будь то рабочие данные или фильмы и музыка;
• получение данных из любой точки земного шара с использованием для этого сети спутников;
• общение (устное, письменное, визуальное) на расстоянии;
• использование компьютерных сетей для обучения и любого другого типа образования.
Преимуществ сети много, а недостатков практически нет. Ну разве что возможность тотального наблюдения за любым подключенным к сети пользователем…
Каковы перспективы дальнейшего развития сети? Все очень просто: глобальная компьютеризация и возможность мгновенного получения любой информации с использованием для этого любого устройства с коммуникационными способностями. После этого, наверное, жизнь станет гораздо скучнее.
Каковы же причины появления сети? Как минимум можно выделить несколько:
• несовершенство существующих компьютеров и компьютерной техники;
• недостаток мощности отдельного компьютера для выполнения сложной задачи;
• слишком большое количество людей, задействованных в достижении поставленной цели;
• новые направления в науке, требующие все больших человеческих и компьютерных ресурсов.
Этот список можно продолжать очень долго, но факт остается фактом: рано или поздно сеть должна была возникнуть и она возникла.
Таким образом, сеть – не что иное, как некоторое количество компьютеров, определенным способом подключенных друг к другу. Однако это только часть понятия. На самом деле сюда еще нужно включить сетевые операционные системы, прикладные программы, специальные программные механизмы обмена информацией и многое другое.
Можно сказать однозначно, что появление сети изменило жизнь всего человечества. Преимуществ у сети много, больше, чем можно было бы себе представить. Вот только некоторые из них:
• организация одновременной работы многих пользователей с одним источником, будь то распределенная база данных или обычный офисный документ;
• использование всех компьютеров сети для выполнения одной работы с целью осуществления сложного, требующего много ресурсов проекта;
• обмен информацией любого характера, будь то рабочие данные или фильмы и музыка;
• получение данных из любой точки земного шара с использованием для этого сети спутников;
• общение (устное, письменное, визуальное) на расстоянии;
• использование компьютерных сетей для обучения и любого другого типа образования.
Преимуществ сети много, а недостатков практически нет. Ну разве что возможность тотального наблюдения за любым подключенным к сети пользователем…
Каковы перспективы дальнейшего развития сети? Все очень просто: глобальная компьютеризация и возможность мгновенного получения любой информации с использованием для этого любого устройства с коммуникационными способностями. После этого, наверное, жизнь станет гораздо скучнее.
1.2. Как создаются сети и кто это может сделать
Сети возникают с пугающей скоростью. Порой приходишь в знакомый офис через неделю, а в нем уже функционирует современная сеть с высокой пропускной способностью. Но самое главное, что организовать сеть может практически любой человек, более или менее знакомый с принципом и правилами ее создания. Так почему бы вам не стать этим «любым»?
Конечно, сразу создать сеть с большим количеством компьютеров будет достаточно трудно, даже если вы прочтете гору книг по теме. Самый простой способ научиться – познакомиться с теорией и попроситься к кому-нибудь в ученики. И будет большим плюсом, если вы попытаетесь сами соединить хотя бы два рядом стоящих компьютера в домашних условиях. Это и станет началом вашей сетевой практики.
Однако, как обычно, все нужно начинать с теории. Необходимо познакомиться с существующими стандартами и топологиями, увидеть сетевое оборудование, пощупать кабель, коннекторы и т. д.
Данная книга призвана облегчить процесс освоения принципов сети и дать основные практические советы. Как говорится, не святые горшки лепят, все в ваших руках. Поэтому учите теорию и осваивайте практику!
Конечно, сразу создать сеть с большим количеством компьютеров будет достаточно трудно, даже если вы прочтете гору книг по теме. Самый простой способ научиться – познакомиться с теорией и попроситься к кому-нибудь в ученики. И будет большим плюсом, если вы попытаетесь сами соединить хотя бы два рядом стоящих компьютера в домашних условиях. Это и станет началом вашей сетевой практики.
Однако, как обычно, все нужно начинать с теории. Необходимо познакомиться с существующими стандартами и топологиями, увидеть сетевое оборудование, пощупать кабель, коннекторы и т. д.
Данная книга призвана облегчить процесс освоения принципов сети и дать основные практические советы. Как говорится, не святые горшки лепят, все в ваших руках. Поэтому учите теорию и осваивайте практику!
Глава 2
Типы сетей
• Одноранговая сеть
• Сеть на основе сервера
Сегодня, как и 10 лет назад, существует два типа сетей: одноранговая сеть и сеть на основе сервера (выделенного компьютера). Каждая из них имеет как преимущества, так и недостатки.
Одноранговая сеть, скорее всего, придется по душе пользователям, которые хотят сначала попробовать сеть в деле или ограничены в средствах. Сеть на основе сервера организуют там, где важен полный контроль над всеми рабочими местами. Это может быть и небольшая домашняя сеть, и объемная корпоративная система сетей, объединенных в одну общую.
Эти два разных типа имеют общие корни и принципы функционирования, что в случае необходимой модернизации позволяет перейти от более простого варианта (одноранговой сети) к более сложному (сети на основе сервера).
• Сеть на основе сервера
Сегодня, как и 10 лет назад, существует два типа сетей: одноранговая сеть и сеть на основе сервера (выделенного компьютера). Каждая из них имеет как преимущества, так и недостатки.
Одноранговая сеть, скорее всего, придется по душе пользователям, которые хотят сначала попробовать сеть в деле или ограничены в средствах. Сеть на основе сервера организуют там, где важен полный контроль над всеми рабочими местами. Это может быть и небольшая домашняя сеть, и объемная корпоративная система сетей, объединенных в одну общую.
Эти два разных типа имеют общие корни и принципы функционирования, что в случае необходимой модернизации позволяет перейти от более простого варианта (одноранговой сети) к более сложному (сети на основе сервера).
2.1. Одноранговая сеть
Одноранговую сеть построить достаточно просто. Особенность такой сети в том, что все входящие в ее состав компьютеры работают сами по себе, то есть ими никто не управляет.
Одноранговая сеть выглядит как некоторое количество компьютеров, объединенных определенным образом в одну рабочую группу (рис. 2.1). Именно отсутствие управляющей машины (сервера) делает ее построение дешевым и эффективным мероприятием.
Любой компьютер в такой сети можно назвать как рабочим, так и сервером, поскольку нет какой-либо конкретной выделенной машины, которая осуществляла бы административный или другой контроль. За компьютером такой сети следит сам пользователь (или пользователи), который работает на нем. В этом кроется главный недостаток одноранговой сети – ее пользователь должен не просто уметь работать на компьютере, но и иметь представление об администрировании. Кроме того, ему в большинстве случаев приходится самому справляться с возникающими внештатными ситуациями и защищать себя от разнообразных неприятностей, начиная с вирусов и заканчивая программными и аппаратными неполадками.
Как и полагается, одноранговая сеть позволяет использовать общие файлы, принтеры, модемы и т. п. Однако из-за отсутствия управляющего компьютера каждый пользователь разделяемого ресурса должен самостоятельно устанавливать права доступа к нему.
Рис. 2.1. Пример одноранговой сети
Для работы с одноранговыми сетями можно использовать любую операционную систему. Ее поддержка реализована в Windows, начиная с Windows 95, поэтому никакого дополнительного программного обеспечения для работы в локальной сети не требуется. Однако если вы хотите обезопасить себя от разных программных проблем, лучше использовать операционную систему достаточно высокого класса, например Windows ХР.
Одноранговую сеть обычно применяют тогда, когда нужно связать несколько (как правило, до десяти) компьютеров и не нужно использовать строгую защиту данных. Большее количество компьютеров подключать не рекомендуется, так как отсутствие «контролирующих органов» рано или поздно приводит к возникновению различных проблем. Ведь из-за одного необразованного или ленивого пользователя под угрозу ставится безопасность и работоспособность всей сети.
Если вы заинтересованы в более защищенной и контролируемой «организации», то создавайте сеть на основе сервера.
В табл. 2.1 перечислены основные преимущества и недостатки одноранговой сети.
Одноранговая сеть выглядит как некоторое количество компьютеров, объединенных определенным образом в одну рабочую группу (рис. 2.1). Именно отсутствие управляющей машины (сервера) делает ее построение дешевым и эффективным мероприятием.
Любой компьютер в такой сети можно назвать как рабочим, так и сервером, поскольку нет какой-либо конкретной выделенной машины, которая осуществляла бы административный или другой контроль. За компьютером такой сети следит сам пользователь (или пользователи), который работает на нем. В этом кроется главный недостаток одноранговой сети – ее пользователь должен не просто уметь работать на компьютере, но и иметь представление об администрировании. Кроме того, ему в большинстве случаев приходится самому справляться с возникающими внештатными ситуациями и защищать себя от разнообразных неприятностей, начиная с вирусов и заканчивая программными и аппаратными неполадками.
Как и полагается, одноранговая сеть позволяет использовать общие файлы, принтеры, модемы и т. п. Однако из-за отсутствия управляющего компьютера каждый пользователь разделяемого ресурса должен самостоятельно устанавливать права доступа к нему.
Рис. 2.1. Пример одноранговой сети
Для работы с одноранговыми сетями можно использовать любую операционную систему. Ее поддержка реализована в Windows, начиная с Windows 95, поэтому никакого дополнительного программного обеспечения для работы в локальной сети не требуется. Однако если вы хотите обезопасить себя от разных программных проблем, лучше использовать операционную систему достаточно высокого класса, например Windows ХР.
Одноранговую сеть обычно применяют тогда, когда нужно связать несколько (как правило, до десяти) компьютеров и не нужно использовать строгую защиту данных. Большее количество компьютеров подключать не рекомендуется, так как отсутствие «контролирующих органов» рано или поздно приводит к возникновению различных проблем. Ведь из-за одного необразованного или ленивого пользователя под угрозу ставится безопасность и работоспособность всей сети.
Если вы заинтересованы в более защищенной и контролируемой «организации», то создавайте сеть на основе сервера.
В табл. 2.1 перечислены основные преимущества и недостатки одноранговой сети.
Таблица 2.1. Преимущества и недостатки одноранговой сети
2.2. Сеть на основе сервера
Сеть на основе сервера – наиболее часто встречающийся тип, который используют как в полноценных домашних сетях и в офисах, так и на крупных предприятиях (рис. 2.2).
Рис. 2.2. Пример сети на основе сервера
Как ясно из названия, данная сеть использует сервер, контролирующий работу всех подключенных клиентских компьютеров. Главная его задача – создание, настройка и обслуживание учетных записей пользователей, настройка прав доступа к общим ресурсам, механизма авторизации и смены паролей доступа и многое другое.
Как правило, сервер характеризуется большой мощностью и быстродействием, необходимым для выполнения поставленных задач: будь то работа с базой данных или обслуживание других запросов пользователей. Сервер оптимизирован для быстрой обработки запросов пользователей, обладает специальными механизмами программной защиты и контроля. Достаточная мощность сервера позволяет снизить требования к мощности клиентской машины.
За работой сети на основе сервера обычно следит специалист – системный администратор. Он отвечает за регулярное обновление антивирусных баз, устраняет возникшие неполадки, разделяет общие ресурсы и т. п.
Количество рабочих мест в такой сети может быть разным – от нескольких до сотен или тысяч компьютеров. С целью поддержки производительности сети на необходимом уровне при возрастании количества подключенных пользователей устанавливают дополнительное или более скоростное сетевое оборудование, серверы и т. д.
Не все серверы выполняют одинаковую работу. Существуют следующие специализированные машины, позволяющие автоматизировать или просто облегчить выполнение тех или иных задач.
• Файл-сервер. Используется в основном для хранения разнообразных данных, начиная с офисных документов и заканчивая музыкой и видео. Обычно на таком сервере создаются личные папки пользователей, обращаться к которым могут только они (или другие пользователи, получившие право доступа). Для управления таким сервером используют любую сетевую операционную систему, например Windows 2000 или Windows 2003. Благодаря кэшированию файлов доступ к ним значительно ускоряется.
• Принт-сервер. Главная его задача – обслуживание очереди печати сетевых принтеров и обеспечение доступа к ним. Очень часто с целью экономии средств файл-сервер и принт-сервер совмещают.
• Сервер базы данных. Основная его задача – обеспечить максимальную скорость поиска и записи нужных данных в базу данных или получения информации из нее с последующей передачей конечному пользователю сети. Это самые мощные из всех серверов. Они обладают максимальной производительностью, так как от этого зависит комфортность работы всех пользователей.
• Сервер приложений. Промежуточный сервер между пользователем и сервером базы данных. Как правило, на нем выполняются те из запросов, которые требуют максимальной производительности и должны быть переданы пользователю, не затрагивая ни сервер базы данных, ни пользовательский компьютер. Это могут быть как часто запрашиваемые из базы данные, так и любые программные модули.
Кроме перечисленных выше, существуют другие серверы, например почтовые, коммуникационные, серверы-шлюзы и т. д.
Достаточно часто в целях экономии средств на один из серверов «вешают» обслуживание нехарактерных для него заданий. В этом случае следует понимать, что скорость выполнения им тех или иных задач может значительно понижаться.
Сеть на основе сервера предоставляет широкий спектр услуг и возможностей, которых трудно или невозможно добиться от одноранговой сети. Кроме того, последняя уступает в плане защищенности и администрирования. Имея выделенный сервер или серверы, легко обеспечить резервное копирование, что является первоочередной задачей, если в сети присутствует сервер базы данных.
В табл. 2.2 перечислены основные преимущества и недостатки сети на основе сервера.
Рис. 2.2. Пример сети на основе сервера
Как ясно из названия, данная сеть использует сервер, контролирующий работу всех подключенных клиентских компьютеров. Главная его задача – создание, настройка и обслуживание учетных записей пользователей, настройка прав доступа к общим ресурсам, механизма авторизации и смены паролей доступа и многое другое.
Как правило, сервер характеризуется большой мощностью и быстродействием, необходимым для выполнения поставленных задач: будь то работа с базой данных или обслуживание других запросов пользователей. Сервер оптимизирован для быстрой обработки запросов пользователей, обладает специальными механизмами программной защиты и контроля. Достаточная мощность сервера позволяет снизить требования к мощности клиентской машины.
За работой сети на основе сервера обычно следит специалист – системный администратор. Он отвечает за регулярное обновление антивирусных баз, устраняет возникшие неполадки, разделяет общие ресурсы и т. п.
Количество рабочих мест в такой сети может быть разным – от нескольких до сотен или тысяч компьютеров. С целью поддержки производительности сети на необходимом уровне при возрастании количества подключенных пользователей устанавливают дополнительное или более скоростное сетевое оборудование, серверы и т. д.
Не все серверы выполняют одинаковую работу. Существуют следующие специализированные машины, позволяющие автоматизировать или просто облегчить выполнение тех или иных задач.
• Файл-сервер. Используется в основном для хранения разнообразных данных, начиная с офисных документов и заканчивая музыкой и видео. Обычно на таком сервере создаются личные папки пользователей, обращаться к которым могут только они (или другие пользователи, получившие право доступа). Для управления таким сервером используют любую сетевую операционную систему, например Windows 2000 или Windows 2003. Благодаря кэшированию файлов доступ к ним значительно ускоряется.
• Принт-сервер. Главная его задача – обслуживание очереди печати сетевых принтеров и обеспечение доступа к ним. Очень часто с целью экономии средств файл-сервер и принт-сервер совмещают.
• Сервер базы данных. Основная его задача – обеспечить максимальную скорость поиска и записи нужных данных в базу данных или получения информации из нее с последующей передачей конечному пользователю сети. Это самые мощные из всех серверов. Они обладают максимальной производительностью, так как от этого зависит комфортность работы всех пользователей.
• Сервер приложений. Промежуточный сервер между пользователем и сервером базы данных. Как правило, на нем выполняются те из запросов, которые требуют максимальной производительности и должны быть переданы пользователю, не затрагивая ни сервер базы данных, ни пользовательский компьютер. Это могут быть как часто запрашиваемые из базы данные, так и любые программные модули.
Кроме перечисленных выше, существуют другие серверы, например почтовые, коммуникационные, серверы-шлюзы и т. д.
Достаточно часто в целях экономии средств на один из серверов «вешают» обслуживание нехарактерных для него заданий. В этом случае следует понимать, что скорость выполнения им тех или иных задач может значительно понижаться.
Сеть на основе сервера предоставляет широкий спектр услуг и возможностей, которых трудно или невозможно добиться от одноранговой сети. Кроме того, последняя уступает в плане защищенности и администрирования. Имея выделенный сервер или серверы, легко обеспечить резервное копирование, что является первоочередной задачей, если в сети присутствует сервер базы данных.
В табл. 2.2 перечислены основные преимущества и недостатки сети на основе сервера.
Таблица 2.2. Преимущества и недостатки сети на основе сервера
Глава 3
Модель сети и сетевые протоколы
• Модель ISO/OSI
• Сетевой протокол
• Протоколы работы с электронной почтой
• Другие протоколы
Какой бы ни была сеть, она должна подчиняться определенным законам. Не забывайте, что сеть – это не только кусок провода, но и все устройства, которые в нее входят, в том числе и компьютеры. Представьте себе на минуту, что нет никаких правил работы сети. Какие функции должны выполнять сетевая карта или маршрутизатор, как должен реагировать на это компьютер?
Чтобы избежать хаоса и упорядочить «взаимоотношения» в сети, используется специальная система правил и стандартов. Их представителями являются сетевая модель взаимодействий ISO/OSI и протоколы передачи данных.
• Сетевой протокол
• Протоколы работы с электронной почтой
• Другие протоколы
Какой бы ни была сеть, она должна подчиняться определенным законам. Не забывайте, что сеть – это не только кусок провода, но и все устройства, которые в нее входят, в том числе и компьютеры. Представьте себе на минуту, что нет никаких правил работы сети. Какие функции должны выполнять сетевая карта или маршрутизатор, как должен реагировать на это компьютер?
Чтобы избежать хаоса и упорядочить «взаимоотношения» в сети, используется специальная система правил и стандартов. Их представителями являются сетевая модель взаимодействий ISO/OSI и протоколы передачи данных.
3.1. Модель ISO/OSI
Пожалуй, ключевым понятием в стандартизации сетей и всего, что к ним относится, является модель взаимодействия открытых систем (Open System Interconnection, OSI), разработанная Международной организацией по стандартизации (International Standards Organization, ISO). На практике применяется короткое название «модель ISO/OSI».
Описываемая модель состоит из семи уровней (рис. 3.1), каждый из которых отвечает за определенный круг задач, осуществляя их с помощью заложенных в этот уровень алгоритмов – стандартов и протоколов. Для связи между уровнями используются процедуры взаимодействия. Таким образом, выполнив свою часть задачи, нижестоящий уровень передает готовые данные вышестоящему. Вот и получается, что, пройдя всю цепочку из семи уровней, на выходе получаются готовые к «употреблению» данные. При этом они успевают должным образом закодироваться или раскодироваться, пройти проверку целостности и многое другое.
Рис. 3.1. Уровни модели ISO/OSI
Основное различие между проводными (Ethernet 802.3) и беспроводными (IEEE 802.11) сетями кроется только в двух крайних уровнях – физическом и канальном. Остальные же работают абсолютно одинаково и не имеют никаких различий.
Рассмотрим все уровни модели ISO/OSI подробнее.
Таким образом, всю описанную работу вынуждено выполнять сетевое оборудование: сетевая карта, мост, маршрутизатор и т. д.
Физический уровень – один из уровней, который отличает беспроводные сети от их «собратьев» – проводных сетей. Разница между ними заключается в канале передачи данных: в первом случае это радиоволны определенной частоты или инфракрасное излучение, в другом – любая физическая линия, например коаксиал, витая пара или оптоволокно.
Такую проверку необходимо проводить каждый раз, поскольку локальная сеть редко состоит всего из двух компьютеров, хотя даже в этом случае канал может быть занят. Обнаружив, что канал свободен, данные, которые необходимо передать другому компьютеру, делятся на более мелкие части – кадры. Каждый такой кадр снабжается контрольной суммой и отсылается. Приняв этот кадр, получатель проверяет контрольные суммы и, если они совпадают, принимает его и отправляет подтверждение о доставке. В противном случае кадр игнорируется, фиксируется ошибка, которая отправляется получателю, и кадр передается заново. Так, кадр за кадром, происходит передача всего объема данных.
Канальный уровень также описывает алгоритмы работы в конкретной физической среде, например при использовании витой пары или оптоволокна. Сюда же включаются и правила прокладки кабеля.
Как и в случае с физическим уровнем, канальный также имеет различия для проводных и беспроводных сетей. Связано это со спецификой сетевого оборудования. Так, беспроводное оборудование на данный момент работает только в полудуплексном режиме, а это означает, что одновременно может вестись только прием или только передача. Этот факт резко снижает эффективность обнаружения коллизий и, соответственно, скорость передачи данных в беспроводных сетях.
Поскольку модель ISO/OSI жестко регламентирует действия каждого уровня, то разработчикам пришлось немного модернизировать протоколы канального уровня для работы в беспроводных сетях. В частности, в случае беспроводной передачи данных используются протоколы CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance) или DCF (Distributed Coordination Function).
Протокол CSMA/CA характеризуется тем, что избегает коллизий при передаче данных, используя явное подтверждение доставки, которое говорит о том, что пакет доставлен и он не поврежден.
Работает это следующим образом. Когда один компьютер собирается передать данные другому, то всем станциям сети посылается короткое сообщение (ready to send, RTS), содержащее в себе информацию о получателе и времени, необходимом для передачи данных. Получив такой пакет, все компьютеры прекращают передачу данных на указанное время. Получатель отсылает отправителю сообщение о готовности приема данных (clear to send, CTS). Получив его, компьютер-отправитель высылает первую порцию данных и ждет подтверждения доставки пакета. После подтверждения доставки передача данных продолжается. Если же подтверждение не пришло, компьютер-отправитель повторно передает конкретный пакет.
Это гарантирует доставку пакетов данных, но в то же время заметно снижает скорость передачи данных. Именно поэтому беспроводные сети всегда были медленнее проводных и таковыми останутся надолго, если не навсегда. Чтобы хоть как-то повысить скорость, один из протоколов канального уровня производит фрагментацию (разделение на фрагменты) пакетов, что увеличивает шанс их передачи с удачным исходом, исключая повторную пересылку.
Данные в сетевом уровне делятся на порции, которые называются пакетами. Перед тем как начать передачу данных другому компьютеру, происходит преждевременная настройка связи, заключающаяся в выборе пути, по которому будут передаваться данные. Этот процесс называется маршрутизацией. Выбор нужного маршрута – одна из основных функций сетевого уровня. Невозможно выбрать идеальный путь, поскольку рано или поздно на одном из отрезков может повыситься трафик, что приведет к увеличению времени передачи пакетов. Поэтому нужный путь выбирается по среднему значению всех необходимых параметров: пропускной способности, интенсивности трафика, дальности и скорости передачи, ее надежности и т. п.
Как правило, при выборе маршрута используются маршрутизаторы. В их таблицах хранится информация о скорости передачи между отдельными отрезками сети, трафике, среднем времени передачи и т. д., основываясь на которой протоколы сетевого уровня могут выбрать оптимальный путь прохождения данных.
Организация сетевого уровня может осуществляться как программно, так и аппаратно.
Основная задача транспортного уровня – обеспечить требуемую степень надежности при передаче информации между выбранными компьютерами. Транспортный уровень может делать это пятью способами. Каждый из них отличается не только защищенностью данных при пересылке, но и временем их доставки или возможностью исправления возникающих ошибок. Поэтому, начиная с данного уровня, выбор варианта доставки может производить программа, то есть непосредственно пользователь. Зачем назначать максимальные предосторожности перед отправкой и во время передачи данных, если сеть характеризуется хорошим качеством и низкой вероятностью появления ошибок? Логично выбрать наиболее простой способ из пяти существующих. И наоборот, если в сети часто происходят коллизии, которые приводят к потере информации, следует использовать способ, который гарантирует вам доставку данных в любом случае.
Транспортным уровнем можно управлять программно, а не только аппаратными средствами.
Таким образом, пройдя все семь уровней, сообщение пользователя пополняется служебной информацией (заголовками) каждого из них. Аналогично, попав к нужному получателю и опять пройдя все семь уровней, информация очищается от всей служебной информации.
Описываемая модель состоит из семи уровней (рис. 3.1), каждый из которых отвечает за определенный круг задач, осуществляя их с помощью заложенных в этот уровень алгоритмов – стандартов и протоколов. Для связи между уровнями используются процедуры взаимодействия. Таким образом, выполнив свою часть задачи, нижестоящий уровень передает готовые данные вышестоящему. Вот и получается, что, пройдя всю цепочку из семи уровней, на выходе получаются готовые к «употреблению» данные. При этом они успевают должным образом закодироваться или раскодироваться, пройти проверку целостности и многое другое.
Рис. 3.1. Уровни модели ISO/OSI
Основное различие между проводными (Ethernet 802.3) и беспроводными (IEEE 802.11) сетями кроется только в двух крайних уровнях – физическом и канальном. Остальные же работают абсолютно одинаково и не имеют никаких различий.
Рассмотрим все уровни модели ISO/OSI подробнее.
Физический уровень
Физический уровень – самый первый, «нижний» уровень. Фактически он представляет собой аппаратную часть сети и описывает способ передачи данных, используя для этого любой имеющийся канал – проводной или беспроводной. Исходя из выбранного канала передачи данных должно использоваться соответствующее сетевое оборудование с определенными параметрами передачи данных, учитывающими всевозможные особенности канала, такие как полосы пропускания, защита от помех, уровень сигнала, кодирование, скорость передачи данных в физической среде и т. п.Таким образом, всю описанную работу вынуждено выполнять сетевое оборудование: сетевая карта, мост, маршрутизатор и т. д.
Физический уровень – один из уровней, который отличает беспроводные сети от их «собратьев» – проводных сетей. Разница между ними заключается в канале передачи данных: в первом случае это радиоволны определенной частоты или инфракрасное излучение, в другом – любая физическая линия, например коаксиал, витая пара или оптоволокно.
Канальный уровень
Главная его задача – удостовериться, что канал свободен и ничто не станет угрожать надежности передачи и целостности пакетов. В идеале протоколы канального уровня в паре с сетевым оборудованием должны проверить, является ли канал свободным для передачи данных, не имеется ли коллизий и т. п.Такую проверку необходимо проводить каждый раз, поскольку локальная сеть редко состоит всего из двух компьютеров, хотя даже в этом случае канал может быть занят. Обнаружив, что канал свободен, данные, которые необходимо передать другому компьютеру, делятся на более мелкие части – кадры. Каждый такой кадр снабжается контрольной суммой и отсылается. Приняв этот кадр, получатель проверяет контрольные суммы и, если они совпадают, принимает его и отправляет подтверждение о доставке. В противном случае кадр игнорируется, фиксируется ошибка, которая отправляется получателю, и кадр передается заново. Так, кадр за кадром, происходит передача всего объема данных.
Канальный уровень также описывает алгоритмы работы в конкретной физической среде, например при использовании витой пары или оптоволокна. Сюда же включаются и правила прокладки кабеля.
Как и в случае с физическим уровнем, канальный также имеет различия для проводных и беспроводных сетей. Связано это со спецификой сетевого оборудования. Так, беспроводное оборудование на данный момент работает только в полудуплексном режиме, а это означает, что одновременно может вестись только прием или только передача. Этот факт резко снижает эффективность обнаружения коллизий и, соответственно, скорость передачи данных в беспроводных сетях.
Поскольку модель ISO/OSI жестко регламентирует действия каждого уровня, то разработчикам пришлось немного модернизировать протоколы канального уровня для работы в беспроводных сетях. В частности, в случае беспроводной передачи данных используются протоколы CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance) или DCF (Distributed Coordination Function).
Протокол CSMA/CA характеризуется тем, что избегает коллизий при передаче данных, используя явное подтверждение доставки, которое говорит о том, что пакет доставлен и он не поврежден.
Работает это следующим образом. Когда один компьютер собирается передать данные другому, то всем станциям сети посылается короткое сообщение (ready to send, RTS), содержащее в себе информацию о получателе и времени, необходимом для передачи данных. Получив такой пакет, все компьютеры прекращают передачу данных на указанное время. Получатель отсылает отправителю сообщение о готовности приема данных (clear to send, CTS). Получив его, компьютер-отправитель высылает первую порцию данных и ждет подтверждения доставки пакета. После подтверждения доставки передача данных продолжается. Если же подтверждение не пришло, компьютер-отправитель повторно передает конкретный пакет.
Это гарантирует доставку пакетов данных, но в то же время заметно снижает скорость передачи данных. Именно поэтому беспроводные сети всегда были медленнее проводных и таковыми останутся надолго, если не навсегда. Чтобы хоть как-то повысить скорость, один из протоколов канального уровня производит фрагментацию (разделение на фрагменты) пакетов, что увеличивает шанс их передачи с удачным исходом, исключая повторную пересылку.
Сетевой уровень
Как и канальный, сетевой уровень занимается передачей информации. Однако между ними есть существенная разница: канальный уровень может передавать данные между компьютерами, которые подключены с использованием одной топологии. Если сеть является комбинированной, за работу принимается сетевой уровень.Данные в сетевом уровне делятся на порции, которые называются пакетами. Перед тем как начать передачу данных другому компьютеру, происходит преждевременная настройка связи, заключающаяся в выборе пути, по которому будут передаваться данные. Этот процесс называется маршрутизацией. Выбор нужного маршрута – одна из основных функций сетевого уровня. Невозможно выбрать идеальный путь, поскольку рано или поздно на одном из отрезков может повыситься трафик, что приведет к увеличению времени передачи пакетов. Поэтому нужный путь выбирается по среднему значению всех необходимых параметров: пропускной способности, интенсивности трафика, дальности и скорости передачи, ее надежности и т. п.
Как правило, при выборе маршрута используются маршрутизаторы. В их таблицах хранится информация о скорости передачи между отдельными отрезками сети, трафике, среднем времени передачи и т. д., основываясь на которой протоколы сетевого уровня могут выбрать оптимальный путь прохождения данных.
Организация сетевого уровня может осуществляться как программно, так и аппаратно.
Транспортный уровень
Идеальную сеть создать невозможно – хоть где-то, но произойдет отклонение от требований ее построения. Если сеть достаточно большая и включает несколько маршрутизаторов, то это не только усложняет ее, но и приводит к ее ненадежности.Основная задача транспортного уровня – обеспечить требуемую степень надежности при передаче информации между выбранными компьютерами. Транспортный уровень может делать это пятью способами. Каждый из них отличается не только защищенностью данных при пересылке, но и временем их доставки или возможностью исправления возникающих ошибок. Поэтому, начиная с данного уровня, выбор варианта доставки может производить программа, то есть непосредственно пользователь. Зачем назначать максимальные предосторожности перед отправкой и во время передачи данных, если сеть характеризуется хорошим качеством и низкой вероятностью появления ошибок? Логично выбрать наиболее простой способ из пяти существующих. И наоборот, если в сети часто происходят коллизии, которые приводят к потере информации, следует использовать способ, который гарантирует вам доставку данных в любом случае.
Транспортным уровнем можно управлять программно, а не только аппаратными средствами.
Сеансовый уровень
Сеансовый уровень контролирует передачу пакетов между компьютерами. Осуществляя синхронизацию принятых и отправленных пакетов, протоколы сеансового уровня отслеживают недостающие и передают их заново. За счет того что передаются только недостающие пакеты, достигается повышение скорости.Уровень представления данных
Чтобы урегулировать процессы отправки и получения информации между двумя компьютерами, существует уровень представления, который приводит ее к единому синтаксическому стандарту, поэтому именно здесь эффективно использовать разнообразные методы шифрования данных, чем и занимаются многие протоколы.Прикладной уровень
Этот уровень отвечает за связь с прикладными программами. Он представляет собой обычный набор протоколов, с помощью которых можно осуществлять доступ к любым ресурсам сети.Таким образом, пройдя все семь уровней, сообщение пользователя пополняется служебной информацией (заголовками) каждого из них. Аналогично, попав к нужному получателю и опять пройдя все семь уровней, информация очищается от всей служебной информации.
3.2. Сетевой протокол
В предыдущем разделе была кратко рассмотрена модель ISO/OSI, которая описывает работу любого сетевого оборудования и сети в целом. Однако это всего лишь модель, рисунок на бумаге. Чтобы все это начало работать, необходим механизм, ее реализующий. Таким механизмом является протокол передачи данных, а если точнее, множество протоколов.