Cервис с соединением и сервис без соединения
Сети для организаций
разделение и управление ресурсами предприятия - позволить сотрудникам получить доступ ко всем устройствам, файлам, базам данных и т.п. вне зависимости от физического места их расположения. (ЦБ РФ, FedExp, GM склад).
повышение надежности функционирования предприятия за счет оперативности управления и использования имеющихся ресурсов.
сокращение затрат на функционирование предприятия - один принтер, один факс, один сервер на несколько сотрудников.
повышение экономической эффективности, за счет гибкой организации работы информационных систем. (Отсутствие складов, принятие решений.)
средство общения и связи (телеконсультации и конференции оперативность принятия решений);
подготовка персонала (в некоторых крупных западных фирмах стоимость подготовки вновь принятого сотрудника достигает 50 000 долларов).
Сети для индивидуальных пользователей
доступ к удаленной информации (news, WWW)
общение с другими людьми (news, e-mail, video conference)
обучение
развлечение
Социальное влияние
нанесение ущерба репутации людей
сеть не знает государственных границ
использование ресурсов организации в личных целях
анонимки
наркотики
Классификация сетей ЭВМ
Есть два общепризнанных фактора для различения сетей: технология передачи и масштаб.
Есть два основных типа технологий передачи, используемые в сетях:
вещание (от одного ко многим);
точка-точка.
Сети типа вещание имеют единый канал передачи данных, который используют все машины сети. Короткое сообщение, называемое пакет, имеющее специальную структуру, отправленное какой-то машиной, получают все другие машины сети. В определенном поле пакета указан адрес получателя. Каждая машина проверяет это поле. Если она обнаруживает в этом поле свой адрес, то она приступает к обработке этого пакета, если в этом поле не ее адрес, то она просто игнорирует этот пакет.
Сети типа вещание, как правило, имеют режим, когда один пакет адресуется всем машинам в сети. Это, так называемый, режим широкого вещания. Есть в таких сетях режим группового вещания: один и тот же пакет получают машины, принадлежащие к определенной группе в сети.
Сети точка-точка соединяют каждую пару машин индивидуальными каналом. Поэтому прежде чем пакет достигнет адресата он проходит через несколько промежуточных машин. В этих сетях возникает потребность в маршрутизации пакетов. От ее эффективности зависит скорость доставка сообщений, распределение нагрузки в сети.
Сети типа вещание как правило используются на географически небольших территориях. Сети точка-точка - для построения крупных сетей, охватывающих большие регионы.
Масштаб сети - другой критерий для классификации сетей.
потоковая машина (плата)
многомашинный комплекс (система)
локальная сеть (комната, здание, комплекс)
городская сеть (город)
региональная сеть (страна, континент)
Internet (планета)
2. Организация вычислительных сетей
Все оборудование сети можно разделить на терминалы и абонентские машины, и систему передачи данных. Система передачи данных состоит из каналов, каналообразующей аппаратуры, коммуникационных машин и средств сопряжения систем передачи данных.
Сеть состоит из множества машин, на которых пользователи запускают приложения. Эти машины мы будем называть абонентскими или хост-машинами (host). Терминалы и абонентские машины обеспечивают интерфейс пользователей и работу приложений в сети. Система передачи данных обеспечивает взаимодействие приложений и пользователей в сети.
Хосты подсоединены к системе передачи данных - коммуникационной подсети (или просто подсети). Назначение подсети обеспечить передачу данных от одного хоста к другому.
Подсеть состоит из коммуникационных каналов (их также называют линиями, магистралями) и коммутирующих элементов. Коммутирующие элементы - это специализированные компьютеры, соединяющие два и более коммуникационных канала. Эти машины мы будем называть маршрутизаторы.
Иерархия протоколов
В целях борьбы со сложностью сеть, как правило, организована в виде иерархии слоев или уровней. В разных сетях число уровней, их название, содержание и функции могут быть разными. Однако, во всех сетях назначение каждого уровня -
- обеспечить определенный сервис верхним уровням;
- сделать независимыми верхние уровни от деталей реализаций сервиса на нижних уровнях.
Уровень n на одной машине обеспечивает связь с уровнем n на другой машине. Правила и соглашения по становлению связи и ее поддержанию называются протоколом.
Уровень n непосредственно с уровнем n не взаимодействует. Он передает данные нижележащему уровню.
Между каждой парой уровней есть интерфейс. Интерфейс определяет какие примитивы - элементарные операции - и какие услуги (сервис) нижележащий уровень должен обеспечивать для верхнего уровня.
Набор уровней и протоколов называется архитектурой сети.
Спецификация архитектуры сети должна содержать достаточно информации, чтобы разработчик сетевого программного обеспечения мог написать надлежащие программы для каждого уровня, а инженер электронщик - надлежащую аппаратуру.
Конкретный набор протоколов, используемый на конкретной машине, называется стеком протоколов.
Здесь на каждом уровне к сообщению добавляется заголовок. Заголовок содержит управляющую информацию - кому адресовано сообщение, время, дата, порядковый номер и т.д.
Виртуальное и фактическое взаимодействие; протокол и интерфейс - это принципиально разные сущности.
Интерфейсы и сервис
Назначение каждого уровня обеспечить надлежащий сервис для вышележащего слоя.
Активные элементы уровня будем называть активностями. Активности могут быть программными и аппаратными. Активности одного и того же уровня на разных машинах называются равнозначными активностями. Активности уровня n+1 являются пользователями сервиса, создаваемого активностями уровня n, которые называются поставщиками сервиса. Сервис может подразделяться на классы, например, быстрая и дорогостоящая связь или медленная и дешевая.
Доступ к сервису осуществляется через, так называемые, точки доступа к сервису - SAPs ( service access points). Каждая точка доступа к сервису имеет уникальный адрес. Например, телефонная розетка на стене - это точка доступа к сервису АТС. Каждой розетке сопоставлен определенный номер - номер телефона.
Для того чтобы осуществить обмен информации между двумя уровнями надо определить интерфейс между ними. Типичный интерфейс: активность на уровне n+1 передает IDU (Interface Data Unit - интерфейсную единицу данных) активности на уровне n через SAP
. IDU состоит из SDU (Service Data Unit - сервисной единицы данных) и управляющей информации. SDU передается по сети равнозначной сущности, а затем - на уровень n+1. Управляющая информация нужна нижележащему уровню, чтобы правильно передать SDU, но она не является частью передаваемых данных.
Для того чтобы передать SDU по сети нижележащему уровню может потребоваться разбить его на части. Каждая часть снабжается заголовком (header) и передается как самостоятельная единица данных протокола - PDU (Protocol Data Unit - единица данных протокола). Заголовок в PDU используется равнозначной активностью чтобы реализовать равнозначный протокол. Он определяет какой PDU содержит управляющую информацию, а какой данные, порядковый номер и т.д.
Возможна такая аналогия с языками программирования. Сервис подобен абстрактному типу данных или объектам в объектно-ориентированных языках программирования. Он определяет операции, выполнимые над данным объектом, но ничего не говорит как эти операции реализованы. Протокол относиться к реализации сервиса и, как таковой, не виден пользователю сервиса.
Cервис с соединением и сервис без соединения
Уровни могут предоставлять вышележащим два вида сервисов: ориентированный на соединение и без соединения.
Сервис с соединением предполагает, что между получателем и отправителем сначала устанавливается соединение, и только потом доставляется сервис. Пример - телефонная сеть.
Сервис без соединения действует подобно почтовой службе. Каждое сообщение имеет адрес получателя. В надлежащих точках оно маршрутизируется по нужному маршруту. Независимо от других сообщений. При таком сервисе вполне возможно, что сообщение позже посланное придет раньше. В сервисе с соединением - это невозможно.
Любой сервис характеризуется качеством. Например, надежный сервис, гарантирующий доставку данных без потерь, предполагает подтверждение получения каждого сообщения. Несомненно, это требует определенных накладных расходов. Это- плата за качество. Пример надежного сервиса с соединением - передача файлов. Надежный сервис с соединением имеет две разновидности: последовательность сообщений и поток байтов. В первом случае четко различаются границы каждого сообщения. Если было послано два сообщения по 1МВ, то получено будет два сообщения по 1МВ. Ни при каких условиях у получателя не окажется одно сообщение в 2МВ.
В случае потока байтов, получатель получит 2МВ. У него нет способа распознать, то ли это 2 сообщения по 1МВ, 1 в 2МВ и 2048 по 1 байту.
Эталонная модель OSI
Модель OSI (модель взаимодействия открытых систем) была разработана в Международной Организацией по Стандартизации (МОС) в целях разработки международных стандартов для вычислительных сетей. Это модель систем открытых для взаимодействия с другими системами.
Модель МОС имеет семь уровней. Принципы выделения этих уровней таковы:
1. Каждый уровень отражает надлежащий уровень абстракции.
2. Каждый уровень имеет строго определенную функцию.
3. Эта функция выбиралась прежде всего так, чтобы можно было определить международный стандарт.
4. Границы выбирались так, чтобы минимизировать поток информации через интерфейсы.
5. Число уровней должно быть достаточно большим, чтобы не объединять разные функции на одном уровне и оно должно быть достаточно малым, чтобы архитектура не была громоздкой.
Рассмотрим каждый уровень этой модели. Она не определяет протоколов и сервис каждого уровня. Она говорит, что он должен делать. Однако, ISO выпустила и стандарты для каждого уровня, но они не являются частью модели.
Физический уровень
Физический уровень отвечает за передачу последовательности битов через канал связи. Основной проблемой является как гарантировать что если на одном конце послали 1, то на другом получили 1, а не 0. На этом уровне решают такие вопросы каким напряжением надо представлять 1, а каким - 0; сколько микросекунд тратиться на передачу одного бита; следует ли поддерживать передачу данных в обоих направлениях одновременно; как устанавливается начальное соединение и как оно разрывается; каково количество контактов на сетевом разъеме, для чего используется каждый контакт.
Уровень канала данных
Основной задачей уровня канала данных - превратить несовершенную среду передачи в надежный канал, свободный от ошибок передачи. Эта задача решается разбиением данных отправителя на фреймы (обычно от нескольких сотен до нескольких тысяч байтов), передачей фреймов последовательно и обработкой фреймов уведомления, поступающих от получателя. Поскольку физический уровень не распознает структуры в передаваемых данных, то это целиком и полностью задача канала данных определить границы фрейма. Эта задача решается введением специальной последовательности битов, которая добавляется в начало и в конец фрейма и всегда интерпретируется как границы фрейма.
Помехи на линии могут разрушить фрейм. В этом случае он должен быть передан повторно. Он будет повторен также и в том случае если фрейм уведомление будет потерян. И это уже заботы уровня как бороться с дубликатами одного и того же фрейма, потерями или искажениями фреймов. Уровень канала данных может поддерживать сервис разных классов для сетевого уровня, разного качества и стоимости.
Другой проблемой, возникающей на уровне канала данных, как управлять потоком передачи. Например, как сообщить передающему размер буфера, для приема передаваемых данных имеющийся у получателя в этот момент.
Если канал позволяет передавать данные в обоих направлениях одновременно, то возникает новая проблема: фреймы уведомления для потока от А к В используют тот же канал, что и трафик от В к А. Решение - использовать фреймы DU для передачи фреймов уведомлений.
В сетях с вещательным способом передачи возникает проблема управления доступом к общему каналу. За это отвечает специальный подуровень - подуровень доступа к среде (MAC - Media ACcess ).
Сетевой уровень
Сетевой уровень отвечает за функционирование подсети. Основной проблемой здесь является как маршрутизировать пакеты от отправителя к получателю. Маршруты могут быть определены заранее и прописаны в статической таблице, которая не изменяется. Они могут определяться в момент установления соединения. Наконец, они могут строиться динамически в зависимости от загрузка сети.
Если в подсети циркулирует слишком много пакетов, то они могут использовать одни и те же маршруты, что будет приводить к заторам. Эта проблема так же решается на сетевом уровне.
Поскольку за использование подсети, как правило, предполагается оплата, то на этом уровне также присутствуют функции учета: как много байт, символов послал или получил абонент сети. Если абоненты расположены в разных странах, где разные тарифы, то надо должным образом скорректировать цену услуги.
В сетях с вещательной передачей проблемы маршрутизации просты и этот уровень часто отсутствует.
Транспортный уровень
Основная функция транспортного уровня это: принять данные с уровня сессии, разделить, если надо, на более мелкие единицы, передать на сетевой уровень и позаботиться, чтобы все они дошли в целостности до адресата.
В нормальных условиях транспортный уровень должен создать специальное сетевое соединение для каждого транспортного соединения по запросу уровня сессии. Если транспортное соединение требует высокой пропускной способности, то транспортный уровень может создать несколько сетевых соединений, между которыми транспортный уровень буден распределять передаваемые данные. И наоборот, если требуется обеспечить недорогое транспортное соединение, то транспортный уровень может использовать одно и то же сетевое соединение для нескольких транспортных соединений.
Сетевой уровень определяет какой тип сервиса предоставить вышележащим уровням и пользователям сети. Наиболее часто используемым сервисом является канал точка-точка без ошибок, обеспечивающий доставку сообщений или байтов в той последовательности, в какой они были отправлены. Другой вид сервиса - доставка отдельных сообщений без гарантии сохранения их последовательности, рассылка одного сообщения многим в режиме вещания. Тип сервиса определяется при установлении транспортного соединения.
Транспортный уровень - это действительно уровень, обеспечивающий соединение точка-точка. Активности транспортного уровня на машине отправителя общаются с равнозначными активностями транспортного уровня на машине получателя. Этого нельзя сказать про активности на нижележащих уровнях. Они общаются с равнозначными активностями на соседних машинах!
Многие хост-машины - мультипрограммные, поэтому транспортный уровень для одной такой машины должен поддерживать несколько транспортных соединений. Для того, чтобы определить к какому соединению относиться тот или иной пакет, в его заголовке помещается необходимая информация.
Транспортный уровень также отвечает за установление и разрыв транспортного соединения в сети. Это предполагает наличие механизма именования, т.е. процесс на одной машине должен уметь указать с кем в сети ему надо обменяться информацией. Транспортный уровень также должен предотвращать "захлебывание" получателя в случае очень "быстро говорящего" отправителя. Механизм для этого называется управление потоком
Уровень сессии
Уровень сессии позволяет пользователям на разных машинах устанавливать сессии. Сессия позволяет передавать данные, как это может делать транспортный уровень, но кроме этого этот уровень имеет более сложный сервис, полезный в некоторых приложениях. Например, вход в удаленную систему, передать файл между двумя приложениями.
Одним из видов услуг на этом уровне - управление диалогом. Потоки данных могут быть разрешены в обоих направлениях одновременно, либо поочередно в одном направлении. Сервис на уровне сессии будет управлять направлением передачи.
Другим видом сервиса - управление маркером. Для некоторых протоколов недопустимо выполнение одной и той же операции на обоих концах соединения одновременно. Для этого уровень сессии выделяет активной стороне маркер. Операцию может выполнять тот кто владеет маркером.
Другой услугой уровня сессии является синхронизация. Пусть нам надо передать файл такой, что его пересылка займет два часа, между машинами, время наработки на отказ у которых один час. Ясно что "в лоб" такой файл средствами транспортного уровня не решить. Уровень сессии позволяет расставлять контрольные. В случае отказа одной из машин передача возобновиться с последней контрольной точки.
Уровень представления
Уровень представления предоставляет решения для часто возникающих проблем, чем облегчает участь пользователей. В основном это проблемы семантики и синтаксиса передаваемой информации. Этот уровень имеет дело с информацией, а не с потоком битов.
Типичным примером услуги на этом уровне - унифицированная кодировка данных. Дело в том, что на разных машинах используются разные способы кодировки ASCII, Unicode и т.п. для символов, разные способы представления целых - в прямом, обратном или дополнительном коде, нумирация бит в байте слева направо или наоборот и т.п. Пользователи, как правило используют структуры данных, а не случайный набор байт. Для того, чтобы машины с разной кодировкой и представлением данных могли взаимодействовать, передаваемые структуры данных определяются специальным абстрактным способом, не зависящим от кодировки, используемой при передачи. Уровень представления работает со структурами данных в абстрактной форме, преобразует это представление во внутреннее для конкретной машины и из внутреннего, машинного представления в стандартное представление для передачи по сети.
Уровень приложений
Уровень приложений обеспечивает нужные часто используемые протоколы. Например, существуют сотни разных типов терминалов. Если мы захотим создать сетевой экранный редактор, то нам придется писать для каждого типа терминала свою версию.
Есть другой путь: определить сетевой виртуальный терминал и для него написать редактор. Для каждого типа терминала написать программу отображения этого терминала на сетевой виртуальный терминал. Все программное обеспечение для виртуального сетевого терминала расположено на уровне приложений.
Другой пример - передача файлов. Разные операционные системы используют разные механизмы именования, представления текстовых строк и т.д. Для передачи файлов между разными системами надо преодолевать все такие различия. Для этого есть приложение FTP, также расположенное на уровне приложений. На этом же уровне находятся: электронная почта, удаленная загрузка программ, удаленный просмотр информации и т.д.
4 Модель TCP/IP. Организация модели. Задачи уровней
. Сеть образовалась в результате НИР, проведенного по инициативе Министерства Обороны США. Одной из основных целей этого проекта было разработать унифицированные способы соединения сетей. TCP - протокол управления передачей (Transmission Control Protocol), и IP - межсетевой протокол (Internet Protocol). Другой целью проекта ARPA было создание протоколов, независящих от характеристик конкретных хост-машин, маршрутизаторов, шлюзов и т.п. Кроме этого связь должна поддерживаться даже если отдельные сети компоненты будут выходить из строя во время соединения.
Межсетевой уровень:сеть с коммутацией пакетов с межсетевым уровнем без соединений. Этот уровень называется межсетевым уровнем. Он является основой всей архитектуры. Его назначение обеспечить доставку пакетов, движущихся в сети независимо друг от друга, даже если получатель принадлежит другой сети. Межсетевой уровень определяет межсетевой протокол IP и формат пакета. Транспортный уровень:Его задача обеспечить связь точка-точка между двумя равнозначными активностями. В рамках TCP/IP модели было разработано два транспортных протокола. Первый TCP: надежный протокол с соединением. Он получает поток байт, фрагментирует его на отдельные сообщения и передает их на межсетевой уровень. На машине получателе равнозначная активность TCP протокола собирает эти сообщения в поток байтов. TCP протокол также обеспечивает управление потоком. Второй протокол UDP (User Datagram Protocol). Это ненадежный протокол без соединения для тех приложений, которые используют свои механизмы фрагментации, управления потоком. Он часто используется для передачи коротких сообщений в клиен-серверных приложениях, а также там где скорость передачи важнее ее точности. Уровень приложений:Этот уровень включает виртуальный терминал - TELNET, передачу файлов - FTP, электронную почту – SMTP. Позднее к ним добавились: служба имен домена - DNS (Domain Name Service) отображающая логические имена хост-машин на их сетевые адреса, протокол для передачи новостей - NNTP, и протокол для работы с гипертекстовыми документами во всемирной паутине (WWW) - HTTP.
№ уровня | OSIЩЫШ | TCP/IP | |
Прикладной | Application | Application | |
Представительский | Presentation | ||
Сеансовый | Session | ||
Транспортный | Transport | Transport | |
Сетевой | Network | Internet | |
Канальный | Data link | Интерфейс хост-сеть | |
Физический | Physical |
Недостатки эталонной модели TCP/IP
- В модели нет четкого разграничения понятий сервис, интерфейс, протокол;
- Эта модель годится только для описания стека TCP/IP;
- Уровень хост-сеть по существу уровнем не является, это больше интерфейс;
1. - В этой модели не разделяются физическая среда передачи и уровень канала данных;
- Протоколы TCP и IP разработаны действительно тщательно и эффективно реализованы чего нельзя сказать о многих других протоколах (протокол виртуального терминала, TELNET)
5 Основные характеристики ЭВМ. Производительность. Надежность и безопасность. Расширяемость и масштабируемость. Прозрачность. Управляемость. Совместимость. Главным требованием является - обеспечить пользователям доступ к ресурсам сети. Производительность характеризует скорость работы сети. Эта характеристика измеряется в количестве услуг в единицу времени. Под услугой могут пониматься пропускная способность - число пакетов пройденное через сеть за секунду, минуту, час, день. Соответственно говорят о средней, мгновенной, пиковой, минимальной пропускной способности сети. Это может быть выполнение определенной операции √ тогда это время реакции. Чаще всего пользователь обращает внимание именно на этот индекс производительности. Она характеризует как скорость работы клиента, так и скорость работы сервера и СПД. Индекс, характеризующий только работу СПД, называется время передачи - время от поступления запроса на вход СПД до появления его на выходе.
Надежность:определяет всегда ли сеть способна выполнять операции и, если операция запущена, то всегда ли она корректно завершится. Есть несколько подходов измерения этой характеристики: 1.через измерение надежности устройств (время наработки на отказ, вероятность отказа, интенсивность отказов); 2.коэффициент готовности; 3.доля времени, в течении которого система может быть использована; 4.вероятность доставки пакета через СПД; 5.вероятность искажения пакета в СПД; 6.отказоустойчивость. Безопасность:Характеризует степень защищенности сети от несанкционированного использования ее ресурсов:
-СПД -Вычислительные ресурсы -Информация (доступ, изменение). Расширяемость и масштабируемость:Расширяемость характеризует насколько сложно изменить конфигурацию сети: СПД, добавить новый узел и т.п. Масштабируемость характеризует способность сети плавно увеличивать вычислительную мощность без деградации производительности сети в целом. Прозрачность:Сеть - это компьютер. Передача разнородных потоков данных (видео, звук, цифра):Слияние средств вычислений и средств передачи разнородных данных. Здесь основную сложность представляет синхронность передачи. Управление:Возможность управлять и контролировать работу каждого отдельного устройства в сети из единого центра. Совместимость:Характеризует способность подключать разное оборудование и программное обеспечение.
Примеры сетей: ARPANET, IPX/SPX, NetBIOS, SNA, DNA, Internet.