Неудача - это разновидность удачи, которая не знает промаха.

Диалог пользователя и Windows: ...

Опубликован отчёт на основе телеметрии, переданной пользователями Ubuntu 18.04
Sun, 24 Jun 2018 09:37:47 +0300

Обновление Debian 8.11 и создание LTS-ветки Debian 8
Sat, 23 Jun 2018 23:09:36 +0300

Linux Foundation представил выпуск операционной системы OpenSwitch 2.3
Sat, 23 Jun 2018 12:19:16 +0300

Релиз Linux-дистрибутива Peppermint 9
Sat, 23 Jun 2018 10:26:09 +0300

Первый стабильный выпуск Oracle Linux 7 для ARM
Sat, 23 Jun 2018 09:53:43 +0300

Выпуск Wine 3.11
Sat, 23 Jun 2018 09:26:12 +0300

Обновление офисного пакета LibreOffice 6.0.5
Sat, 23 Jun 2018 08:40:18 +0300

Выпуск системного менеджера systemd 239
Fri, 22 Jun 2018 22:53:37 +0300

Релиз языка программирования Rust 1.27
Fri, 22 Jun 2018 13:08:34 +0300

Выпуск распределенной системы управления исходными текстами Git 2.18
Fri, 22 Jun 2018 10:21:42 +0300

Компания Oracle передала сообществу Apache 1.5 млн строк кода NetBeans
Fri, 22 Jun 2018 09:25:33 +0300

Начальный план разработки Qt 6
Thu, 21 Jun 2018 22:26:33 +0300

Разработчики Netfilter официально объявили инструментарий iptables устаревшим
Thu, 21 Jun 2018 14:18:47 +0300

Компания Oracle объявила о доступности ядра Unbreakable Enterprise Kernel 5
Thu, 21 Jun 2018 14:03:02 +0300

Выпуск звукового сервера PulseAudio 12.0
Thu, 21 Jun 2018 12:59:20 +0300

Выпуск набора видеодрайверов AMD Radeon 18.20
Thu, 21 Jun 2018 11:29:10 +0300

Blender тестирует децентрализованный PeerTube после блокировки видео на YouTube
Wed, 20 Jun 2018 20:35:28 +0300

Представлен проект Fedora CoreOS
Wed, 20 Jun 2018 19:05:49 +0300

Доступна сборка Android 8.1 для платформы x86 от проекта Android-x86
Wed, 20 Jun 2018 15:04:16 +0300

Выпуск Red Hat Enterprise Linux 6.10
Wed, 20 Jun 2018 14:15:32 +0300

В OpenBSD добавлен код программного отключения SMT (HyperThreading)
Wed, 20 Jun 2018 12:11:25 +0300

Третий альфа-выпуск инсталлятора Debian 10 "Buster"
Tue, 19 Jun 2018 21:13:48 +0300

В рамках проекта Devilution предпринята попытка воссоздания кода игры Diablo
Tue, 19 Jun 2018 13:06:26 +0300

Выпуск Brackets 1.13, открытого текстового редактора для web-разработчиков
Tue, 19 Jun 2018 12:33:05 +0300

Проекту FreeBSD исполнилось 25 лет
Tue, 19 Jun 2018 12:18:37 +0300

Выпуск системы инициализации sysvinit 2.90
Tue, 19 Jun 2018 11:55:44 +0300

27 июня в Москве состоится мероприятие CouchBase Day
Tue, 19 Jun 2018 11:32:00 +0300

Выпуск Dragonfire 1.0, виртуального голосового помощника для Linux
Tue, 19 Jun 2018 09:05:53 +0300

Выпуск дистрибутива Deepin 15.6, развивающего собственное графическое окружение
Mon, 18 Jun 2018 13:25:01 +0300

Открыт код C++ компилятора Zapcc
Mon, 18 Jun 2018 11:26:24 +0300

Модель OSI Модель TCP/IP Порты Протоколы
Эталонные модели

Рассмотрим эталонную модель, использовавшуюся в компьютерной сети ARPANET, которая является бабушкой нынешних сетей, а также в ее наследнице, всемирной сети Интернет. ARPANET была исследовательской сетью, финансируемой Министерством обороны США. В конце концов она объединила сотни университетов и правительственных зданий при помощи выделенных телефонных линий. Когда впоследствии появились спутниковые сети и радиосети, возникли большие проблемы при объединении с ними других сетей с помощью имеющихся протоколов. Понадобилась новая эталонная архитектура. Таким образом, возможность объединять различные сети в единое целое являлась одной из главных целей с самого начала. Позднее эта архитектура получила название эталонной модели TCP/IP в соответствии со своими двумя основными протоколами. Первое ее описание встречается в книге Cerf и Kahn (1974). Из более поздних описаний можно выделить книгу, написанную Leiner и др. в 1985 году. Конструктивные особенности модели обсуждаются в издании Clark, 1988.

Поскольку Министерство обороны беспокоилось, что ценные хосты, маршрутизаторы и межсетевые шлюзы могут быть мгновенно уничтожены, другая важная задача состояла в том, чтобы добиться способности сети сохранять работоспособность при возможных потерях подсетевого оборудования, так, чтобы при этом связь не прерывалась. Другими словами, Министерство обороны требовало, чтобы соединение не прерывалось, пока функционируют приемная и передающая машины, даже если некоторые промежуточные машины или линии связи внезапно вышли из строя. Кроме того, от архитектуры нужна была определенная гибкость, поскольку предполагалось использовать приложения с различными требованиями, от переноса файлов до передачи речи в реальном времени.

Интернет-уровень

Все эти требования обусловили выбор модели сети с коммутацией пакетов, в основе которой лежал не имеющий соединений межсетевой уровень. Этот уровень, называемый интернет-уровнем или межсетевым уровнем, является основой всей архитектуры. Его задача заключается в обеспечении возможности для каждого хоста посылать в любую сеть пакеты, которые будут независимо двигаться к пункту назначения (например, в другой сети). Они могут прибывать не в том порядке, в котором были отправлены. Если требуется соблюдение порядка отправления, эту задачу выполняют более верхние уровни. Обратите внимание, что слово «интернет» здесь используется в своем первоначальном смысле несмотря на то, что этот уровень присутствует в сети Интернет.

Здесь можно увидеть аналогию с почтовой системой. Человек может бросить несколько международных писем в почтовый ящик в одной стране, и если повезет, большая часть из них будет доставлена по правильным адресам в других странах. Вероятно, письма по дороге пройдут через несколько международных почтовых шлюзов, однако это останется тайной для корреспондентов. В каждой стране (то есть в каждой сети) могут быть свои марки, свои предпочитаемые размеры конвертов и правила доставки, незаметные для пользователей почтовой службы.

Межсетевой уровень определяет официальный формат пакета и протокол, называемый IP (Internet Protocol). Задачей межсетевого протокола является доставка IP-пакетов к пунктам назначения. Основными аспектами здесь являются выбор маршрута пакета и недопущение закупорки транспортных артерий. Поэтому можно утверждать, что межсетевой уровень модели TCP/IP функцио­нально близок сетевому уровню модели OSI. Это соответствие показано на рис.

Транспортный уровень

Уровень, расположенный над межсетевым уровнем модели TCP/IP, как правило, называют транспортным. Он создан для того, чтобы одноранговые сущности на приемных и передающих хостах могли поддерживать связь, подобно транспортному уровню модели OSI. На этом уровне должны быть описаны два сквозных протокола. Первый, TCP (Transmission Control Protocol — протокол управления передачей), является надежным протоколом с установлением соединений, позволяющим без ошибок доставлять байтовый поток с одной машины на любую другую машину объединенной сети. Он разбивает входной поток байтов на отдельные сообщения и передает их межсетевому уровню. В пункте назначения получающий TCP-процесс собирает из полученных сообщений выходной поток. Кроме того, TCP осуществляет управление потоком, чтобы быстрый отправитель не завалил информацией медленного получателя.

Второй протокол этого уровня, UDP (User Data Protocol — пользовательский протокол данных), является ненадежным протоколом без установления соединения, не использующим последовательное управление потоком протокола TCP, а предоставляющим свое собственное. Он также широко используется в одноразовых клиент-серверных запросах и приложениях, в которых оперативность важнее аккуратности, например, при передаче речи и видео. Взаимоотношения протоколов IP, TCP и UDP показаны на рис. 1.18. Со времени создания протокола IP этот протокол был реализован во многих других сетях.

Прикладной уровень

В модели TCP/IP нет сеансового уровня и уровня представления. В этих уровнях просто не было необходимости, поэтому они не были включены в модель. Опыт работы с моделью OSI доказал правоту этой точки зрения: большинство приложений в них мало нуждаются.

Над транспортным уровнем располагается прикладной уровень. Он содержит все протоколы высокого уровня. К старым протоколам относятся протокол виртуального терминала (TELNET), протокол переноса файлов (FTP) и протокол электронной почты (SMTP), как показано на схеме. Протокол виртуального терминала позволяет пользователю регистрироваться на удаленном сервере и работать на нем. Протокол переноса файлов предоставляет эффективный способ перемещения информации с машины на машину. Электронная почта изначально представляла собой разновидность переноса файлов, однако позднее для нее был разработан специальный протокол. С годами было добавлено много других протоколов, таких как DNS (Domain Name Service — служба имен доменов), позволяющая преобразовывать имена хостов в сетевые адреса, NNTP (Network News Transfer Protocol — сетевой протокол передачи новостей), HTTP, протокол, используемый для создания страниц на World Wide Web, и многие другие.

Хост-сетевой уровень

В эталонной модели TCP/IP не описывается подробно, что располагается ниже межсетевого уровня. Сообщается только, что хост соединяется с сетью при помощи какого-нибудь протокола, позволяющего ему посылать по сети IP-пакеты. Этот протокол никак не определяется и может меняться от хоста к хосту и от сети к сети. В книгах и статьях, посвященных модели TCP/IP, этот вопрос обсуждается редко.

Сравнение эталонных моделей OSI и TCP

У моделей OSI и TCP имеется много общих черт. Обе модели основаны на концепции стека независимых протоколов. Функциональность уровней также во многом схожа. Например, в обеих моделях уровни, начиная с транспортного и выше, предоставляют сквозную, не зависящую от сети транспортную службу для процессов, желающих обмениваться информацией. Эти уровни образуют поставщика транспорта. Также в каждой модели уровни выше транспортного являются прикладными потребителями транспортных сервисов.

Несмотря на это фундаментальное сходство, у этих моделей имеется и ряд отличий. В данном разделе мы обратим внимание на ключевые различия. Обратите внимание на то, что мы сравниваем именно эталонные модели, а не соответствующие им стеки протоколов. Сами протоколы будут обсуждаться несколько позднее. Существует книга (Piscitello и Chapin, 1993), которая целиком посвящена сравнению моделей TCP/IP и OSI.

Для модели OSI центральными являются три концепции:

1. Службы.

2. Интерфейсы.

3. Протоколы.

Вероятно, наибольшим вкладом модели OSI стало явное разделение этих трех концепций. Каждый уровень предоставляет некоторые сервисы для расположенного выше уровня. Сервис определяет, что именно делает уровень, но не то, как он это делает и каким образом сущности, расположенные выше, получают доступ к данному уровню.

Интерфейс уровня определяет способ доступа к уровню для расположенных выше процессов. Он описывает параметры и ожидаемый результат. Он также ничего не сообщает о внутреннем устройстве уровня.

Наконец, равноранговые протоколы, применяемые в уровне, являются внутренним делом самого уровня. Для выполнения поставленной ему задачи (то есть предоставления сервиса) он может использовать любые протоколы. Кроме того, уровень может менять протоколы, не затрагивая работу приложений более высоких уровней.

Эти идеи очень хорошо соответствуют современным идеям объектно-ориентированного программирования. Уровень может быть представлен в виде объекта, обладающего набором методов (операций), к которым может обращаться внешний процесс. Семантика этих методов определяет набор служб, предоставляемых объектом. Параметры и результаты методов образуют интерфейс объекта. Внутреннее устройство объекта можно сравнить с протоколом уровня. За пределами объекта оно никого не интересует и никому не видно.

Изначально в модели TCP/IP не было четкого разделения между службами, интерфейсом и протоколом, хотя и производились попытки изменить это, чтобы сделать ее более похожей на модель OSI. Так, например, единственными настоящими сервисами, предоставляемыми межсетевым уровнем, являются SEND IP PACKET (послать IP-пакет) и RECEIVE IP PACKET (получить IP-пакет).

В результате в модели OSI протоколы скрыты лучше, чем в модели TCP/IP, и при изменении технологии они могут быть относительно легко заменены. Возможность проводить подобные изменения — одна из главных целей многоуровневых протоколов.

Эталонная модель OSI была разработана прежде, чем были изобретены протоколы для нее. Такая последовательность событий означает, что эта модель не была настроена на какой-то конкретный набор протоколов, что сделало ее универсальной. Обратной стороной такого порядка действий было то, что у разработчиков было мало опыта в данной области и не было четкого представления о том, какие функции должен выполнять каждый уровень.

Например, уровень передачи данных изначально работал только в сетях с передачей от узла к узлу. С появлением широковещательных сетей в модель потребовалось ввести новый подуровень. Когда же на базе модели OSI начали строить реальные сети с использованием существующих протоколов, обнаружилось, что они не соответствуют требуемым спецификациям служб. Поэтому в модель пришлось добавить подуровни для устранения несоответствия. Наконец, изначально ожидалось, что в каждой стране будет одна сеть, управляемая правительством и исполозующая протоколы OSI, поэтому никто и не думал об объединении различных сетей. В действительности все оказалось не так.

С моделью TCP/IP было все наоборот: сначала появились протоколы, а уже затем была создана модель, описывающая существующие протоколы. Таким образом, не было проблемы с соответствием протоколов модели. Они ей соответствовали прекрасно. Единственной проблемой было то, что модель не соответствовала никаким другим стекам протоколов. В результате она не использовалась для описания каких-нибудь других сетей, отличных от TCP/IP.

Если взглянуть на эти две модели поближе, то прежде всего обратит на себя внимание различие в количестве уровней: в модели OSI семь уровней, в модели TCP/IP — четыре. В обеих моделях имеются межсетевой, транспортный и прикладной уровни, а остальные уровни различные.

Еще одно различие между моделями лежит в сфере возможности использования связи на основе соединений и связи без установления соединения. Модель OSI на сетевом уровне поддерживает оба типа связи, а на транспортном уровне — только связь на основе соединений (поскольку транспортные службы являются видимыми для пользователя). В модели TCP/IP на сетевом уровне есть только один режим связи (без установления соединения), но на транспортном уровне он поддерживает оба режима, предоставляя пользователям выбор. Этот выбор особенно важен для простых протоколов «запрос — ответ».

Критика эталонной модели TCP/IP

У модели TCP/IP и ее протоколов как и у OSI имеется ряд недостатков. Во-первых, в этой модели нет четкого разграничения концепций служб, интерфейса и протокола. При разработке программного обеспечения желательно провести четкое разделение между спецификацией и реализацией, что весьма тщательно делает OSI и чего не делает TCP/IP. В результате модель TCP/IP довольно бесполезна при разработке сетей, использующих новые технологии.

Во-вторых, модель TCP/IP отнюдь не является общей и довольно плохо описывает любой стек протоколов, кроме TCP/IP. Так, например, описать технологию Bluetooth с помощью модели TCP/IP совершенно невозможно.

В-третьих, хост-сетевой уровень в действительности не является уровнем в том смысле, который обычно используется в контексте уровневых протоколов. Это скорее интерфейс между сетью и уровнями передачи данных. Различие между интерфейсом и уровнем является чрезвычайно важным, и здесь не следует быть небрежным.

В-четвертых, в модели TCP/IP не различаются физический уровень и уровень передачи данных. Об этом различии даже нет упоминания. Между тем они абсолютно разные. Физический уровень должен иметь дело с характеристиками передачи информации по медному кабелю, оптическому волокну и по радио, тогда как задачей уровня передачи данных является определение начала и конца кадров и передача их с одной стороны на другую с требуемой степенью надежности. Правильная модель должна содержать их как два различных уровня. В модели TCP/IP этого нет.

И наконец, хотя протоколы IP и TCP были тщательно продуманы и неплохо реализованы, многие другие протоколы были созданы несколькими студентами, работавшими над ними, пока это занятие им не наскучило. Реализации этих протоколов свободно распространялись, в результате чего они получили широкое признание, глубоко укоренились, и теперь их трудно заменить на что-либо другое. Некоторые из них в настоящее время оказались серьезным препятствием на пути прогресса. Например, протокол виртуального терминала TELNET, созданный еще для механического терминала типа Teletype, работавшего с огромной скоростью 10 символов в секунду. Ему ничего не известно о графических интерфейсах пользователя и о мышках. Тем не менее сейчас, почти 30 лет спустя, он все еще широко используется.

Несмотря на все недостатки, модель OSI (кроме сеансового уровня и уровня представления) показала себя исключительно полезной для теоретических дискуссий о компьютерных сетях. Протоколы OSI, напротив, не получили широкого распространения. Для TCP/IP верно обратное: модель практически не существует, тогда как протоколы чрезвычайно популярны.

НОВОСТИ: Релиз Linux-дистрибутива Peppermint 9 Sat, 23 Jun 2018 10:26:09 +0300

Состоялся релиз Linux-дистрибутива Peppermint 9, основанного на пакетной базе Ubuntu 18.04 LTS и предлагающего легковесное пользовательское окружение на основе рабочего стола LXDE, оконного менеджера Xfwm4 и панели Xfce, которые поставляются вместо Openbox и lxpanel. Дистрибутив также примечателен поставкой фреймворка Site Specific Browser, позволяющего работать с web-приложениями, как с обособленными программами. Из репозиториев доступен развиваемый проектом Linux Mint набор приложений X-Apps (текстовый редактор Xed, менеджер фотографий Pix, мультимедийный проигрыватель Xplayer, просмотрщик документов Xreader, просмотрщик изображений Xviewer). Размер установочного iso-образа 1.3 Гб.

???????@Mail.ru Opera Firefox INFOBOX - хостинг Google Chrome