KRIEGSSPIELE!
Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.

Растригин. Вычислительные машины, системы, сети... 1982

Страница 3 из 3 Предыдущий  1, 2, 3

Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Пн Янв 18, 2021 12:02 pm

КОНВЕЙЕР ВЫЧИСЛЕНИЙ

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

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

А теперь применим идею конвейера к решению задач, программа которых должна многократно повторятся. Разобьем всю программу A на одинаковые по времени реализации части - подпрограммы (элементарные операции) A1, A2, ..., AN, последовательное выполнение которых решает поставленную задачу. Теперь N процессоров запрограммируем на решение этих программ и расположим их в цепочку так, что результат работы k-го процессора будет исходными данными k+1-го (см. рис.10).

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 8215410
Рис.10. Так реализуется конвейер вычислений. Здесь важно, чтобы время, затрачиваемое на вычисление отдельных "кусков" программы, было бы одинаковым. В противном случае время вычисления одной реализации будет равно времени вычисления максимального "куска".

Пусть x1, ..., xk исходные данные k задач, которые должны быть решены программой А k-кратным ее повторением, a R1, ..., Rk - результаты расчетов этих k
задач, которые необходимо получить. Очевидно, что подавать на вход такой цепочки процессоров исходные данные x1, ..., xk следует не дожидаясь, пока будет получен конечный результат, а через время, равное T/N, где Т - общее время решения одной задачи на одном процессоре. В этом случае, как легко заметить, в любой момент времени каждый процессор будет решать свою задачу (если первый - i-ю, то второй - (i-1)-ю, третий - (i-2)-ю, ..., N-й - (i-N)-ю, т.е. одновременно будет решаться N задач (точнее: задача одна, но с N исходными данными).

Легко подсчитать производительность такого конвейера. Время решения k задач на нем равно (k+N)T/N. Это значительно меньше по сравнению с производительностью одного процессора, который затратит на это Tk, т.е. примерно в N раз меньше (для k>>N). Таким образом, чем больше процессоров образуют "конвейер" обработки информации, тем быстрее обрабатывается информация.

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

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

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

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

Именно таким образом были достигнуты вычислительные мощности в 300-800 миллионов операций в секунду на многопроцессорной вычислительной системе. А что дальше?
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Пн Янв 18, 2021 12:03 pm

ПАСТБИЩЕ ДЛЯ ... ПРОЦЕССОРОВ

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

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

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

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Пн Янв 18, 2021 12:04 pm

ОБ АДАПТАЦИИ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ

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

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

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

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

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

Этим разумеется не ограничивается применение методов адаптации к вычислительным системам. Адаптация здесь может значительно повысить их эффективность за счет учета более тонких свойств пользователей или агрегатов системы. Так, например, в процессе дублирования адаптация может помочь в выборе и включении тех агрегатов, которые наилучшим образом удовлетворяют требованиям надежности вычислительной системы в целом и т.д.
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:30 am

ГЛАВА 3. ВЫЧИСЛИТЕЛЬНЫЕ СЕТИ

"Ах, попалась, птичка, стой!
Не уйдешь из сети..."
Песенка

МЕГРЭ В ЗАТРУДНЕНИИ

Операция ограбления проходила вполне гладко, если не считать нескольких шероховатостей, которые вроде бы не должны были оказать существенного влияния на ее исход - фактор неожиданности в виде определенного запаса времени был учтен в плане его проведения. А этот запас еще не был исчерпан. Пока слитки золота и пачки денег складывали в мешки (драгоценностей не брали - слишком много возни с реализацией), Джек внимательно оглядывал операционный зал банка и искал зрачки фотоавтоматов. О трех из них он знал заранее и обезвредил (с этого и началась "работа" в банке). Но нет ли еще? "И чего бояться этих клопов? Ведь маска надежно скрывает лицо!" - недоуменно подумал Джек.

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

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

На сей раз сработала нестандартность ситуации (у каждого окошка и каждой двери по человеку).

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

Мегрэ, взглянув на экран сразу оценил ситуацию:

- Дать отбой тревоги!- и на недоуменный взгляд
дежурного пояснил.- В зале слишком много народу.
Видите, на полу лежит несколько человек - они будут первыми жертвами как заложники.

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

- Какого черта, Мегрэ, вы не действуете? Пора шевелиться! Бандиты уже более сорока секунд хозяйничают в банке.
- Я отменил тревогу,- сухо ответил Мегрэ.
- Вы с ума сошли! Немедленно отправить наряд к банку или я это сделаю сам.
- И возьмете на себя жертвы среди населения, которые неизбежны и в банке и при погоне!- резко ответил Мегрэ.- Тут пахнет десятками трупов ни в чем неповинных людей, и прежде всего нерасторопных - детей, стариков и женщин!
- Что же вы намерены делать? - снизил тон полковник.
- Искать преступников! Для этого у меня достаточно материала,- ответил Мегрэ, похлопывая по ящику видеомагнитофона, который еще продолжал работать.
- Каким образом?
- Заставлю потрудиться компьютер и досье, которые нынче называют банком данных,- ответил Мегрэ.
- Ну что ж, банкуйте.- (Полковник был картежником и любил каламбуры).- Только помните, что наверняка эти ребята, если вы их поймаете, имеют прекрасные алиби и вам будет очень трудно доказать, что на видеопленке именно они.
- Искать и доказывать буду не я, а компьютер.
- Неплохо бы при этом и вместо присяжных иметь компьютеры,- съязвил полковник.- Неужели вы не понимаете, что ваша карьера висит на волоске?- И строго официальным тоном продолжил:- Инспектор Мегрэ, если через два часа вы не предъявите мне кого-либо из преступников (я считаю, что "старым способом", т.е. хорошо организованной погоней, двух часов достаточно, хотя трупы, разумеется, неизбежны), то вам будет предъявлено обвинение в сговоре с преступниками, так как только этим можно объяснить вашу бездеятельность. Все! Через два часа жду вашего сообщения.

Мегрэ усмехнулся и положил трубку.

- Ну, старушка ЭВМ, выручай!

Здесь мы оставим на время нашего героя "в минуту злую для него", остановим бег детектива и обсудим некоторые важные детали. Прежде всего об описанной системе оповещения в банке. Не слишком ли она сложна? Автор снабдил ее специальным компьютером, который, анализируя ситуацию, принимает решение, передавать изображение дежурному в полицейском участке или нет, т.е. поднимать тревогу или молчать. Не проще ли посадить за телевизионный экран человека, который бы и нажал кнопку в нужный момент? Действительно, это проще. Но уж больно накладно, ведь человеку надо платить зарплату, и крайне ненадежно. Опыт показывает, что человек, единственной обязанностью которого является фиксирование редкой аварийной ситуации, как правило, пропускает именно ее. Монотонность нормы ослабляет чувствительность к авариям. Так что решение банка о создании компьютерной системы оповещения было правильным. Ей не надо платить ежемесячную зарплату, а надежность можно сделать довольно высокой, если подозрительные нормальные ситуации относить к ненормальным и тем самым подключать человека (дежурного полицейского) к решению проблемы: грабят банк или нет. Он-то разберется! Правда, при этом ложных тревог будет много, что неизбежно несколько снизит внимательность дежурного. Но не столь сильно, чтобы пропустить ограбление.

Как компьютер определяет ненормальные ситуации? Проще всего задать эти ситуации. Всякое изображение кодируется набором цифр, характеризующих степень яркости каждой из его точек. Например, нуль характеризует черную точку, а единица - белую. Тогда 1/2 определяет серую точку и т.д. Каждая точка изображения на телевизионном экране таким образом характеризуется тремя числами: i - номером строки, j - номером столбца и яркостью, которую обозначим числом aij. Это число лежит в пределах 0<=aij<=1 и определяет яркость точки с координатами (i, j).

Как к видно, всякое черно-белое изображение можно представить в виде таблицы или, как говорят в математике, матрицы чисел

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 8216110

A = ||a11... a1n / a21... a2n / ... / am1... amn||,

где aij - элемент i-й строки и j-го столбца матрицы, которая имеет всего n столбцов и m строк. (Заметим, что для советской системы телевидения принят стандарт n=800, m=625, т.е. изображение имеет около 500000 - полмиллиона точечных элементов).

Матрицу A, полученную с помощью датчика телевизионного изображения, можно легко ввести в память ЭВМ. Так же легко ввести матрицы изображений, на которые ЭВМ должна реагировать тревогой. Это "грабительские" изображения, которые должны быть заранее и потоплены и введены в память ЭВМ. Пусть одна из таких матриц ограбления имеет вид

B = ||b11... b1n / b21... b2n / ... / bm1... bmn||.

Здесь bij определяет яркость точки, лежащей на пересечении i-й строки и j-го столбца эталонного изображения ограбления. Очевидно, что сопоставляя эти матрицы, можно определить, совпадают они или нет.

aij = bij (*)

Для всех i и j, что легко проверит ЭВМ, то матрицы совпадают и ситуацию в банке следует считать ограблением, так как действительное изображение (A) и эталонное (B) совпадают.

При несовпадении всех элементов матриц сказать ничего нельзя. Действительно, ситуация A может незначительно отличаться от ситуации B, что не изменит ее "грабительской" сути, но условие (*) не будет выполняться. Именно поэтому следует ввести число Q, характеризующее степень несовпадения матриц. Для этого достаточно просуммировать модули разностей

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 8216210

Q = Сумма(i=1..m)Сумма(j=1..n)|aij-bij|,

т.е. определить степень несовпадения яркостей в каждой точке и сложить их все. Величина Q характеризует степень отличия изображений. Если они совпадают, то Q = 0, а для полностью несовпадающих изображений, когда все белые точки поменялись на черные и наоборот, а серых нет ни в одном изображении, Q = nm. Величину Q легко и быстро подсчитает компьютер.

Теперь его решение удобно реализовать с помощью такого решающего правила:
- если Q << delta, то A почти как B, и надо объявлять тревогу;
- если Q > delta, то A совсем не как B, и грабежа нет.

Хорошо видно, что решение компьютера сильно зависит от величины delta (ее обычно называют порогом). При delta = 0 тревога будет объявлена только при полном совпадении изображения, т.е. при выполнении условия (*), что бывает крайне редко. Это плохой выбор порога.

При большом пороге delta тревоги чаще всего будут ложными. Но среди этих тревог почти наверняка будут и правильные, когда грабеж идет во всю. При уменьшении delta число ложных тревог сокращается, но при этом и появляется риск пропустить грабеж.

Вот и получается, что величина delta должна быть выбрана оптимальной, т.е. не слишком малой, но и не слишком большой.

Выбор такого оптимального delta= delta* и составляет проблему оптимальных решающих правил. Эта величина delta* зависит от стоимости ошибок первого рода (пропуск грабежа) и ошибок второго рода (ложная тревога). В обоих случаях система наблюдения приносит неприятности: в первом - ограбление, а во втором - беспокойство дежурного в полиции, за которые тоже надо платить. Выбор оптимального порога delta* должен минимизировать суммарную плату.

Легко видеть, что компьютер, снабженный набором аварийных ("грабительских") ситуаций B1, B2, ..., BN должен каждое из них сравнить с получаемым из операционного зала, да еще делать это для каждого моментa времени. Так что работы ему предостаточно. Именно здесь используется основное качество компьютера - его быстродействие. Величину Q он вычисляет за доли секунды, а на принятие решения потребуется значительно меньше времени.

С этой задачей, задачей сопоставления изображения операционного зала с изображением, хранящимся в памяти, ЭВМ справляется, как видно, легко.

Теперь рассмотрим, каким образом ЭВМ может определить появление бегущего человека в зале, что также характеризует "ненормальность" ситуации. Для итого можно воспользоваться тем же способом сопоставления матриц, который был описан выше.

Дело в том, что телевизионный датчик изображения посылает в ЭВМ 25 изображений в секунду. Обозначим матрицы этих изображений в виде

A(t) = ||a11(t)... a1n(t) / a21(t)... a2n(t) / ... / am1(t)... amn(t)||,

где буквой t обозначена зависимость матрицы, а следовательно, и изображения от текущего момента времени. Действительно: ситуация в операционном зале изменяется и поэтому

A(t1) не равно A(t2),

где t1 и t2 - какие-то два следующие друг за другом момента времени. Если отличие этих матриц невелико, то повода для беспокойства нет, так как это означает, что ситуация изменяется медленно - все ходят чинно, не размахивают руками и т.д. Если же матрицы A(t1) и A(t2) отличаются сильно, то это означает, что происходит быстрое изменение изображения - кто-то побежал или взмахнул руками и т.д., что пахнет ограблением.

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

Q(t2) = Сумма(i=1..m)Сумма(j=1..n)|aij(t1)-bij(t2)|,

аналогичной рассмотренной выше. Чем больше величина Q, тем сильнее отличаются матрицы, а следовательно, и изображения. Очевидно, что тревогу надо поднимать при

Q(t) >= epsilon,

где epsilon - некоторое пороговое значение. Если такой порог выбрать малым, то часто тревога будет ложной, так как незначительное изменение ситуации будет вызывать тревогу (например, достаточно кому-нибудь уронить шляпу). Если же порог epsilon велик, то имеется риск пропустить ограбление, если бандиты не будут бегать сразу все по операционному залу. (Это все те же упомянутые выше ошибки второго и первого рода).

Именно поэтому величина порога epsilon должна быть выбрана не малой и не большой, а оптимальной

epsilon = epsilon*,

при которой минимизируется ущерб, вызванный как ложной тревогой, так и пропущенным ограблением.

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

Для реализации описанного решающего правила в каждый момент времени t достаточно иметь в памяти ЭВМ две матрицы A(t - DELTA) и A(t), где t - DELTA предыдущий момент, и заменять 25 раз в секунду так, чтобы всегда можно было определить величину различия двух следующих друг за другом изображений. Для этого нужно иметь ЭВМ с весьма высоким быстродействием. Подсчитаем его.

Для вычисления величины Q надо сделать nm вычитаний, столько же вычислений модуля и сложений (не считая 2*m*n обращений к памяти). Будем считать, что на каждую такую операцию затрачивается время tau с. Тогда на вычисление одного значения Q будет затрачено времени

T = (tau + tau + tau)*n*m = 3*tau*n*m.

Так как телевизионный датчик дает 25 изображений в секунду, то для того, чтобы машина справилась с поставленной задачей, необходимо, чтобы

25*T <= 1.

Подставляя снова выражение для T получаем требование на время выполнения одной операции сложения (или вычитания):

tau <= 1/(75*n*m) с.

Теперь не трудно подсчитать для советского стандарта (и французского тоже):

tau <= 1/(75*500000) с.

Это соответствует быстродействию - 37.5 миллионов операций в секунду! На такое способен далеко не всякий компьютер. И это только для сравнения двух следующих друг за другом изображений! А если к этому добавить необходимость сравнивать каждое пришедшее и изображение с хранящимися в памяти (а их может быть до ста), то быстродействие ЭВМ должно возрасти до трех миллиардов операций в секунду. На это сейчас способны лишь редкие модели ЭВМ, точнее вычислительных систем.

Можно снизить столь жесткие требования, например, уменьшив число передаваемых изображений до 2-3-х и секунду, да число элементов матрицы до 50000 (в ущерб разрешающей способности изображения, разумеется). Это дает возможность обойтись ЭВМ с 30 миллионами операций в секунду, что немногим облегчает проблему.

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

Просмотрев видеопленку, Мегрэ лишь убедился, что простое увеличение ничего не решит. Все бандиты были и одинаковых масках, плащах и перчатках.

- И, как всегда, никаких особых примет,- констатировал Мегрэ.- Никто не отличается от других - словно роботы. Их шеф хорошо понимает что в таких случаях нельзя обладать индивидуальностью.
- Поль!- обратился Мегрэ к дежурному.- Заведи пленку в компьютер и попробуй меня не беспокоить пару часов.
- Слушаю, месье,- ответил дежурный и начал колдовать с видеомагнитофоном.- Через минуту можно будет с ней работать. А что вы намерены делать, месье?
- Еще не знаю точно. Но попробую их идентифицировать.
- Но ведь они все были в масках!
- А вот изменить свои скелеты они не могли,- задумчиво заметил Мегрэ.

Лицо дежурного вытянулось. Ему представилась мрачная картина: Мегрэ обмеряет линейкой скелеты бандитов, разложенные на столах, и записывает результаты в блокнот.

- Но ведь они...- он поперхнулся и, широко улыбнувшись, сказал: - Вы шутите, инспектор!
- Нисколько! - мрачно сказал Мегрэ и пошел в свой кабинет.

Здесь он сразу связался с профессором Мариаком из Гренобля. Между ними произошел следующий разговор.

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

Вздох, который он услушал на другом конце провода, убедил его, что он попал в точку.

- А Вы уверены, что этот человек, которого нужно идентифицировать, преступник?- въедливо спросил профессор Мариак.
- Вы сами убедитесь в этом, когда я перешлю Вам видеозапись. Это обычное ограбление банка.
- Ну, если это обычное ограбление, то почему Вы, дорогой инспектор, не воспользуетесь обычными средствами, ну там стрельбой, погоней и прочими аксессуарами полицейских романов?- язвительно заметил профессор.
- Обычные средства приводят к обычным последствиями,- твердо сказал Мегрэ.- А они нежелательны,- подумал он и тихо добавил.- Ведь речь идет о людях, не имеющих никакого отношения к преступлению. Подумайте о них, профессор!
- Немедленно расскажите мне о Вашей задаче!- запальчиво закричал Мариак.

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

- Ну что ж,- задумчиво произнес профессор Мариак.- Я думаю, что месяца через два мы сможем Вам дать полный перечень параметров скелета и мускулатуры, а заодно и жирового слоя Ваших клиентов.
- Эти данные мне нужны через два часа,- сухо заметил Мегрэ.
- Вы с ума сошли! О каких часах может идти речь, если используется исследовательская программа. Сама по себе задача идентификации организма имеет огромную сложность. Ведь придется минимизировать функционал по нескольким тысячам переменных! Вы соображаете, сколько понадобится сделать шагов поиска?

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

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

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

Но вернемся к нашим героям.

- Профессор,- взмолился Мегрэ.- Нет у меня двух месяцев. Может быть можно определять не все параметры, а фиксировать лишь отклонения от нормы - по ним мы легко найдем преступников в досье.
- Нет, это не пройдет,- уныло ответил профессор.- Сначала надо определить все параметры, а уж затем искать отклонения от нормы. Хотя это отклонение найти уже легче - не нужно до конца минимизировать функционал невязки.
- Ну и какое время Вам для этого понадобится?
- Один месяц!

Мегрэ задумался. Неужели из-за экспериментальности этой программы сорвется дело? Ну, если она слишком долго считает, то нельзя ли вычисления раскидать по разным машинам?

- Алло, профессор, а Ваша программа допускает распараллеливание вычислений?
- Разумеется. Ведь невязка суммарная! И одну ее чисть можно вычислять на одной машине, другую - на другой и так далее. А потом результаты сложить.
- Тогда давайте возьмем (Мегрэ быстро прикинул на бумаге) 500 ЭВМ, и они справятся с этой задачей за два часа.
- Да чего там! Берите сразу тысячу! А там разберемся!- ехидно заметил профессор Мариак.- Извините, инспектор, меня ждут дела. До свидания! Звоните, если придумаете что-нибудь реальное,- и повесил трубку.

Мегрэ задумался. Как использовать тысячу машин для решения одной задачи? В голову пришла старая шутка о том, что, если собрать девять беременных женщин вместе, то все равно младенец не появится через месяц. Он уже слышал о вычислительных сетях и даже как-то раз воспользовался одной из них, когда получил из США досье на одного подозреваемого. Это был обычный запрос к банку данных по линиям связи. Но можно ли вычислять сразу на всех машинах в сети? Здесь нужна была консультация и он повернулся к терминалу. Набрал номер справочной службы и слово ВЫЧИСЛИТЕЛЬНЫЕ СЕТИ, подумал и добавил знак ноириса. И тут же на экране появился текст...

Оставим на время нашего инспектора и разберемся, что представляют из себя современные вычислительные сети, почему они появились и куда идут в своем развитии. А потом вернемся к Мегрэ (опытный читатель, поднаторевший в детективах, наверняка понял, что именно вычислительные сети дадут ему возможность найти шайку, только что ограбившую банк).
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:31 am

ЧЕМ ПЛОХИ ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ?

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

Слов нет, всем хороши вычислительные системы, но... и их возможности не беспредельны. Так, например, есть задачи, требующие для своего решения в приемлемое время вычислительные мощности с миллиардом операций в секунду (это, например, те самые задачи с экспоненциальной трудоемкостью решения, которую не удается понизить до полиномиальной). Реальным примером такой задачи является задача составления оптимального государственного плана выпуска продукции. Ни одна современная (да и будущая) вычислительная система не возьмется за ее решение. Ей, вычислительной системе, эта задача не по зубам!

И это лить один недостаток вычислительных систем. Есть и другие! Попробуем перечислить основные.

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

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

Не обладают они и другим очень важным для пользователей качеством - предоставлять возможность доступа к информации, хранящейся на других машинах или вычислительных системах. Легко представить себе, что вам понадобилась программа решения задачи, разработанная вашим коллегой, находящимся на другом континенте (например, в Гаване). Если понадобилась срочно, то ... смирите свои желания: лучшее, что вы можете сделать, это запастись терпением и попросить его прислать вам почтой пакет перфокарт или магнитную пленку с программой и описанием к ней. Перипетии, которые придется претерпеть на почте посылке (удары при перегрузках, вибрации при транспортировке и т.д.), наверняка обесценят пересылаемую программу и нечего удивляться, что программа не будет работать на вашей машине. Нужно посылать не саму программу, а ее текст.

Именно поэтому образуются всякого рода фонды и банки программ, которые рассылают заинтересованным лицам фотокопии текстов программ. Но опыт показывает, что эффективность таких банков невелика, так как программы, составленные по присланным текстам обычно не работают. Причина этого тривиальна - это ошибки или в тексте программы, допущенные разработчиком при ее сдаче в фонд, или в самой программе, сделанные заказчиком при ее перенесении на перфоленту или перфокарту. И ту и другую ошибку выявить трудно. Здесь срабатывает известный всем программистам закон: легче написать и отладить новую программу, чем найти ошибку в чужой. Поэтому фондом программ часто пользуются как справочным бюро, с тем, чтобы найти разработчика нужной программы. А уж уговорить его приехать и поставить свою программу на вашей машине - это вопрос вашей напористости, обаяния и умения "выбивать" нужные средства из дирекции.

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

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

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

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

Можно поступить и иначе - решать задачу на своей ЭВМ, а требуемую для нее информацию запрашивать из соответствующего банка данных. И все это можно делать в автоматическом режиме со своего терминала. Без писем и звонков по телефону. Такая оперативность при решении сложных задач возможна только при использовании вычислительных сетей.

Идея объединения ЭВМ и вычислительных систем в вычислительную сеть возникла сравнительно недавно и первая такая сеть была запроектирована в США в результате... запуска в СССР первого искусственного спутника Земли - нашего спутника.
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:32 am

БИП-БИП!

Когда 4 октября 1957г. Советским Союзом на орбиту был выведен первый искусственный спутник Земли, весь мир был об этом извещен знаменитым "бип-бип", которое спутник непрерывно передавал по радио. Это невинное "бип-бип" было болезненно воспринято в США и в противовес "этим русским", кроме прочего, был выдвинут проект создания первой большой вычислительной сети. Назвали этот проект ARPA (аббревиатура слов Advanced Reserch Project Agency, т.е. управление перспективных исследований, которое подчинено министерству обороны США). Эта сеть, названная ARPANET, т.е. сеть ARPA, вступила в строй в 1969г.

На эту сеть возлагались большие надежды, сводились они к следующему. Так как "интеллектуальность" компьютера связана с его мощностью, то, объединяя с помощью сети много компьютеров в один электронный "мозг", можно рассчитывать получить очень умного стратега, которого уж перехитрить никто не сможет.

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

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

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

Как видим, понимание необходимости создания вычислительных сетей, как средства объединения вычислительных ресурсов, распределенных на большой территории (и даже на поверхности всей Земли) возникло уже давно. Но несмотря на огромные средства, выделенные правительством США на создание первой вычислительной сети, она заработала лишь через 12 лет!

Естественно задать вопрос, а какие трудности возникают при создании вычислительной сети и окупаются ли они при ее эксплуатации?
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:34 am

ЧТО НУЖНО ДЛЯ ВЫЧИСЛИТЕЛЬНОЙ СЕТИ?

Прежде всего вычислительные машины и системы, а также каналы связи между ними. Но и то и другое уже имеется!

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

Наличие вычислительных машин и каналов связи, безусловно, ободряет. Остается вроде бы немного - соединить машины каналами. Но именно на это тратятся все усилия проектировщиков и создателей сетей: простота объединения имеющейся сети связи (телефонной, радио и др.) с вычислительными машинами, эксплуатирующимися "на месте", только кажущаяся простота. Именно на это американцам понадобилось 12 лет и несколько миллиардов долларов при создании первой сети ARPA.

Какие же трудности приходится преодолевать при создании вычислительной сети? Прежде всего необходимо преодолеть "разноязычность" вычислительных машин и систем. Дело в том, что каждый тип ЭВМ имеет свой собственный внутренний язык (язык машинных кодов), разработанный специально для этого типа ЭВМ. Поэтому соединение двух разнотипных ЭВМ требует создания специальной аппаратуры и программы согласования их, которая играет роль переводчика с одного машинного языка на другой. Если пойти по этому пути, то таких "переводчиков" (в чем легко убедиться) нужно сделать N(N-1)/2 видов, где N - число типов ЭВМ. При этом разработка новой (N+1)-й машины сразу требует создания N таких "переводчиков". А если вспомнить, что сейчас N>1000, то делать новую машину не захочется!

Заметим, что объединение однотипных ЭВМ в сеть уже не вызывает таких трудностей. Но это будет система, а не сеть! Сеть должна объединять любые ЭВМ.

Если бы создать один общий язык типа эсперанто, который могли бы понимать все машины, то станет значительно легче.

Итак, нужно было придумать и разработать такие способы общения разнотипных ЭВМ через систему связи, которые допускали бы быстрый и надежный обмен информацией (программами и данными) между самыми разнообразными вычислительными машинами и системами.

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

Можно ли пользоваться такими каналами для связи ЭВМ? Конечно, можно. Но...

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

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

Информация, которой обмениваются ЭВМ в вычислительной сети, имеет дискретную форму, т.е. передается в виде импульсов и пропусков (наличие импульса означает "1", а отсутствие "0", что вполне достаточно для передачи информации двоичным кодом). Для того, чтобы передать такую информацию по существующим телефонным каналам, ее надо преобразовать в сигнал, имеющий непрерывную или так называемую аналоговую форму, так как именно такой сигнал в состоянии передать телефонная сеть. Такой простейшей формой является синусоидальный сигнал. Наличие сигнала может означать "1", а отсутствие - "0" (в действительности "1" и "0" передаются сигналами различной частоты - это обеспечивает повышенную надежность передачи). Очевидно, что при этом скорость, передачи информации будет невысокой. Такая скорость передачи, свойственная телефонным каналам и удовлетворяющая человека, никак не может удовлетворить потребностям интенсивного общения ЭВМ.

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

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

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

Необходимость в создании таких каналов появилась именно с появлением вычислительных сетей. Так сети ЭВМ стали причиной появления нового типа связи - дискретной связи, возможности которой во много раз превышают возможности "старой" аналоговой связи. Отметим, что первая система дискретной передачи информации была создана в Японии в 1970г.

Любопытно, что по дискретному каналу можно передавать и речь - существенно аналоговый сигнал. Для этого этот сигнал дискретизируется, т.е. кодируется двоичным кодом, после чего отправляется по дискретному каналу к приемнику собеседника. Здесь он декодируется, то есть снова трансформируется в аналоговую форму, которую и воспринимает собеседник.

Такие "дискретные" разговоры удобны тем, что могут вестись по каналу связи ЭВМ. Качество таких передач значительно лучше, чем "старым" аналоговым способом, так как они значительно меньше подвержены помехам.

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

Эти проблемы сейчас в значительной мере преодолены и создано много вычислительных сетей, которые и интенсивно эксплуатируются.

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

Начнем с того, что обсудим трудности связи двух машин.
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:38 am

КАК СВЯЗЫВАЮТСЯ ДВЕ МАШИНЫ?

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

Итак, как быстро и надежно переслать программу (и так же быстро получить ответ)? Почта и телеграф отпадают, т.к. почта - слишком долго, а телеграфом - очень ненадежно (всем известны анекдоты, связанные с телеграфными ошибками), а в программе не должно быть ни одной - подчеркиваем: ни одной ошибки!

Остается телефон. Но как по телефону передать программу? Можно, разумеется передать ее, продиктовав но буквам. Но на это уйдет уйма времени (вашего и приятеля), да и обойдется в копеечку. Нельзя ли придумать что-нибудь подешевле? Да и не плохо исключить из процесса людей хотя бы для того, чтобы они занимались делом, достойным людей, а не автоматов. Надо придумать автомат, передающий по телефону программу. И такой автомат был придуман. Назвали его модемом, что есть сокращение двух слов МОдулятор и ДЕМодулятор.

Под модуляцией в данном случае подразумевается процесс представления единицы ("1") в виде отрезка синусоидального сигнала одной частоты, а нуля ("0") - другой частоты. Таким образом, двоичный сигнал преобразуется модемом в синусоиду переменной частоты.

Если такие модулированные сигналы попадают в телефонную трубку, то они воспринимаются характерным "попискиванием", его иногда можно слышать по телефону. Это самое "попискивание" и дает возможность передавать дискретную информацию по телефонным каналам связи. Естественно, что скорость передачи будет очень невелика - 30-40 знаков (букв и чисел) в секунду (это примерно 300-400 двоичных единиц информации в секунду).

На другом конце канала тоже ставят модем, который уже занимается демодуляцией, т.е. превращает модулированные сигналы в двоичный код, т.е. колебания напряжения с одной частотой воспринимает, как "1", а другой - как "0" (отсутствие электрических колебаний означает отсутствие связи). Легко представить, что один и тот же модем может работать попеременно в обоих режимах (поэтому он так и назван): то модулировать двоичный код, то демодулировать электрический синусоидальный сигнал.

Располагая таким модемом можно легко передать программу по телефону (см. рис.11). Для этого достаточно отперфорировать свою программу на ленту и вставить ленту в считывающее устройство, которое будет выдавать запись программы в двоичном коде. Двоичный код программы вводится в модем. Полученные из модема электрические сигналы следует преобразовать в акустические (то самое "попискивание") с помощью динамика и послать их в микрофон телефонной трубки. Предварительно, разумеется нужно соединиться по телефонной сети с абонентом, который будет принимать программу.

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 8217910
Рис.11. Такова схема передачи программы (на перфоленте) по каналу телефонной связи. Автоматизировать его, т.е. исключить "человечков" на концах, уже не представляет трудности. Для этого достаточно автоматически ввести перфоленту в ЭВМ и вывести ее.

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

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

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

Чем удобен такой способ передачи? Да прежде всего тем, что позволяет пользоваться имеющимися каналами связи без какой-либо их переделки. Любая система связи - довольно консервативная организация (на то есть свои и очень убедительные основания) и очень не любит всякого рода вмешательств. Описанный способ не вмешивается в систему связи, а просто пользуется ею.

Теперь о негативных сторонах такой передачи. Их (увы!) значительно больше. Прежде всего помехи, которые неизбежно присутствуют в любом канале связи, а в телефонном - тем более. И здесь возникает извечная проблема: как надежно работать на ненадежной системе связи, т.е. как бороться со случайными помехами?

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

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

Можно ли этим воспользоваться при передаче программы? Кое в чем можно. Для этого следует просмотреть распечатку полученной программы, и если она была написана на алгоритмическом языке, то можно выявить некоторые искажения. Например, встретил слово CRINT и зная, что такого оператора в БЭЙСИКе нет (а на нем была написана программа), нетрудно догадаться, что здесь был искажен оператор PRINT. И в данном случае мы воспользовались избыточностью слов бэйсика.

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

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:41 am

ВОЙНА С ПОМЕХАМИ

Эта война идет уже много столетий. Дело в том, что человечество давно и успешно использует разнообразные каналы связи - электрическими они стали лишь лет сто назад. Простейшим каналом связи является акустический. Именно его мы используем, когда разговариваем друг с другом. Если разговор идет в шумной обстановке, то мы невольно используем методы борьбы с помехами. Наиболее распространенными из них является введение избыточности и переспроса.

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

Попробуем применить их для передачи программы от одной ЭВМ к другой по "шумящему" каналу ("нешумящих" каналов не бывает; уровень шума может быть разный и именно это отличает хорошие каналы от плохих, но шум всегда есть!).

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

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

Аналогичный результат постиг бы и другую тактику - посылать принятую перфоленту обратно с тем, чтобы вы сравнили бы их и убедились, что они ... разные. Ждать совпадения этих лент пришлось бы так же долго.

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

Давайте разобьем нашу перфоленту на равные фрагменты (последний может быть и меньше) и будем добиваться правильной передачи каждого фрагмента, чем и достигнем правильной передачи всей программы. Итак, передаем фрагментами длиной L бит - двоичных единиц информации. (О выборе величины L поговорим особо позже в разделе, посвященном адаптации сетей). Эта длина может быть выбрана в широком диапазоне от 10 до 10000 бит в зависимости от степени "зашумленности" канала связи. Очевидно, чем выше уровень помех в канале, тем меньше должен быть фрагмент передаваемой информации и, наоборот, для хорошего канала фрагмент нужно брать большим, а для идеального (без помех) L стремиться к бесконечности, т.е. программу дробить не надо, что в жизни не бывает в силу неидеальности реального канала связи.

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

Например, очень распространена проверка на четность. В этом случае K=1 и контрольный бит определяет четность фрагмента. Это означает, что в случае, если число единиц в нем четно, то добавляется контрольный символ в виде нуля. А при нечетном числе единиц - добавляется единица. Например, фрагмент длиной L=7,

1001101

имеет четное число единиц и поэтому к нему добавляется нуль. Получаем блок

10011010;

в таком виде он отправляется абоненту. Фрагмент с нечетным числом единиц

0101100

отправляется в виде блока

01011001,

который образуется добавлением единицы.

На приемном конце блоки легко проверить на ошибку - надо сложить L первых символов и определить четность. Если она совпадает с (L+1)-м символом, то блок скорее всего принят правильно. Если - не совпадет, то где-то наверняка была ошибка - или в фрагменте, или в символе четности. В этом случае нужно повторно передать этот блок, т.е. переспросить передающее устройство.

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

Такая пачка помех искажает подряд много символов блока и поэтому может сохранить его четность (или нечетность). Такая грубая ошибка не будет распознана этим методом.

Именно поэтому добавляют не один контрольный бит (K=1), а больше (обычно K=16), причем связь между основным блоком и добавкой позволяет выявлятт очень "хитрые" искажения блока фрагмента и контрольной добавки. Делается это следующим образом Пусть A - наш передаваемый фрагмент - это L двоичных символов, а В - контрольная добавка, содержащая K двоичных символов. Связь между ними определяется некоторым правилом Ф:

B = Ф(A).

При K=1 правило Ф сводится к вычислению четности (описано выше). При K=2 надежность передачи будет выше, чем при K=1. Так, увеличивая K, можно сколь угодно точно передать фрагмент сообщения при помехах.

На приемном конце, получив блок A'B' (здесь штрихом отмечена принятая информация), эту операцию нужно повторить, т.е. снова определить контрольную добавку, но для принятого фрагмента A':

B" = Ф(A').

Если принятая (B') и вычисленная (B") добавки не совпадают, то, очевидно, помеха при передаче испортила либо фрагмент, либо контрольную добавку. В обоих случаях следует запросить повторную передачу этого блока. Если же B'=B", то считается, что

A=A' и B=B',

хотя ошибка в принципе и могла "проскочить". Но ее вероятность крайне не велика - порядка 1E-16, т.е. примерно одна ошибка в сто лет будет не замечена при таком контроле. Такое высокое качество передачи информации получено за счет хорошего введения избыточности, т.е. за счет правила Ф. Синтезом такого рода правил, называемых алгоритмами кодирования, занимается теория помехоустойчивого кодирования.

Все сказанное имеет смысл при наличии обратного канала, по которому производится переспрос.

А нельзя ли обойтись без переспроса и при обнаружении ошибки, при В' не равно B", попытаться восстановить, текст, как это делаем мы, получив искаженную телеграмму? Можно, но при этом следует значительно увеличить избыточность, т.е. увеличить число контрольных битов K. Такие коды называют самокорректирующимися или восстанавливающимися. Они опираются на процедуру восстановления П:

A" = П(A', B'),

которая дает возможность вычислить фрагмент A" при наличии обнаруженной ошибки, т.е. при В' не равно Ф(A') по принятым A' и B'. Этот вычисленный фрагмент A" и считают переданным фрагментом A, т.е. A"=A. Таков алгоритм восстановления.

Однако может оказаться, что A"<>A, т.е. восстановление было ошибочным. Вероятность такого ошибочного восстановления невелика и может быть сделана сколь угодно малой при большом K и для одиночных ошибок в канале связи. Пачка же помех в канале почти наверняка приведет к тому, что A"<>A, т.е. настолько "изуродует" фрагмент и добавку, что даже при очень большой избыточности восстановить блок не удастся. Так, легко себе представить, что помехи на линии так исказят текст телеграммы, что никакая избыточность не поможет понять ее смысл.

Именно поэтому системы связи с переспросом применяются чаще. Именно их используют и в системах спили ЭВМ.

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

Ну и что? Можно ли считать, что проблема создания вычислительной сети этим решена? Разумеется нет! Прежде всего потому, что скорость передачи информации таким образом слишком низка - примерно 1200бит/с, т.е. 100-150 знаков в секунду. Небольшой массив, содержащий миллион знаков придется передавать несколько часов!

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

Такая зависимость от "прихотей" сети недопустима для сети ЭВМ, для которой оперативность работы является одним из основных требований.

Вот и приходится с большим административным трудом добиваться не заказных, а выделенных каналов, т.е. таких каналов связи, которые принадлежат и обслуживаются сетью связи, а распоряжаются ими ЭВМ. В этом случае можно прямо включать модем в сеть, минуя телефонный аппарат. И эта возможность выходить в сеть связи в любой момент обеспечивает сети ЭВМ, построенной на ее базе, новые и невиданные доселе возможности.
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:43 am

АЛЛО, ОТВЕТЬТЕ КОМПЬЮТЕРУ!

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

Первым и очень естественным способом соединения двух ЭВМ является метод коммутации каналов. Его обозначают КК. Этот метод является прямым заимствованием метода автоматической телефонной связи.

Когда вы набираете по телефону код города (после "8", разумеется), то сеть связи автоматически прокладывает путь от вашего телефона через промежуточные станции к требуемому городу. На каждой станции нужные каналы замыкаются (коммутируются) так, что между вашим телефоном и телефоном вызываемого абонента образуется прямое электрическое соединение. Вы с абонентом как бы оказываетесь связанными одним проводом. (Говоря строго, это не так, но ведет себя эта связь именно таким образом).

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

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

Вроде бы всем хороша система коммутации каналов - и проста (это по сути дела автоматическая телефонная сеть) и дешева, так как не требует больших дополнительных затрат, и удобна (всегда хорошо иметь канал связи в своем распоряжении).

По есть у этой системы один недостаток, который и решил ее дальнейшую судьбу. Этот недостаток являйся оборотной стороной ее последнего достоинства - удобства. Кому удобна КК? Тому, кто уже получил канал в свое распоряжение! И только!

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

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

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

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

Действительно, если не удается загрузить все каналы в сети, то ее пропускная способность не может быть высокой. А это сразу снижает оперативность обработки информации, что является одним из основных показателей вычислительной сети. Отсюда делается неумолимый вывод: вычислительные сети с коммутацией каналов не имеют перспективы - они ограничены по своим возможностям.

Все это заставило искать новые пути реализации вычислительных сетей. И вскоре такой путь был найден. Его назвали метод коммутации сообщений.
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:44 am

ПРИМИТЕ СООБЩЕНИЕ!

Для реализации этого метода в каждом узле сети связи понадобилось поставить ЭВМ с большой памятью. Именно в эту память передается сообщение из соседнего узла сети. Сообщение (программа, массив и т.д.) имеет заголовок в виде адреса: куда, т.е. в какой узел сети и на какую ЭВМ, оно направляется. Получив сообщение коммуникационная ЭВМ (так называют машины, расположенные в узлах сети связи, еще их называют коммутирующими машинами или управляющими машинами узла связи) дожидается, когда освободится нужный канал в направлении, указанном в адресе и убедившись, что следующая коммуникационная машина готова принять сообщение, передаст его. Вот и все!

Такой способ связи в вычислительной сети значительно лучше коммутации каналов, так как не требует ожидания, пока освободятся все каналы, образующие соединение - достаточно быть свободному одному каналу. Здесь каналы простаивают значительно меньше. И если какой-то канал перегружен, то сообщение может быть послано окольным путем, минуя перегруженный участок. Для этого, разумеется, сеть должна иметь избыточность, т.е. любые два ее узла должны иметь возможность соединяться по крайней мере двумя разными траекториями каналов сети.

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

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

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

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

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

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

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

Поэтому так важна скорость прохождения коротких сообщений по сети. Именно это обстоятельство и побудило искать новый способ коммутации в сети. Он был найден и назван методом коммутации пакетов.
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:45 am

ПРИНЦИП ГОРЯЧЕЙ КАРТОШКИ

Все знают как чистят горячую картошку, сваренную или испеченную в "мундире". Именно так работает сеть коммутации пакетов. Только перебрасывает она из одного своего узла в другой не горячую картошку, а пакеты.

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

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:46 am

ВЫ МНЕ ПИСАЛИ. НЕ ОТПИРАЙТЕСЬ...

Давайте вспомним основные принципы почтовой корреспонденции. Именно они отражены в способах организации связи в сети коммутации пакетов.

Всякое письмо состоит из четырех непременных компонентов: текста, адреса и имени получателя, даты написания и подписи автора. Если хотя бы один из этих компонентов будет утрачен, то письмо потеряет всякий смысл.

Действительно, без текста писем не бывает (даже если "вместо строчки только точки - догадайся мол сама", то и эти точки являются весьма информативным текстом письма). Адрес и имя адресата являются необходимым условием получения письма адресатом (адрес "на деревню дедушке" - по-прежнему и в век кибернетики не поможет письму найти адресата даже, если приписать: "Константину Макаровичу", что правда несколько сузит круг "подозреваемых" адресатов). Необходимость даты в письме еще полностью не осознана некоторыми пользователями почтовой связи, однако хорошо понимается учреждениями, бланки которых предусматривают заполнение даты написания письма. Ее необходимость при, мягко говоря, прогрессирующем снижении эффективности почтовой связи (речь идет об ее оперативности), нетрудно усмотреть.

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

И последнее - подпись. Вряд ли кто сомневается в важности подписи. Иногда текст письма подсказывает имя адресанта. (А что делать с поздравительными письмами с неразборчивой подписью?) Еще хуже с деловыми письмами, где имя адресанта установить почти невозможно. Нет, без подписи письмо полностью теряет свой смысл.

Итак: текст, адрес, дата и подпись. И все? Нет, еще есть одна деталь, которая ускользает из личных писем и которую строго соблюдают в деловых. Речь идет о поводе - по поводу чего написано письмо. Дело в том, что два лица (адресант и адресат) могут общаться письменно по разным поводам и указание этого повода не просто помогает ответить на это письмо, но и определяет его смысл. Так один и тот же текст письма может быть воспринят по разному, если указать различные поводы. (Например, текст "Выделить тов. Иванову И.Н. 300 руб." воспринимается одним образом, если повод "о награждении" и совсем по другому при "о материальной помощи"). В деловых письмах, которые пишутся разными лицами, а подписываются одним - директором учреждения - указание повода просто необходимо. Без него директор зачастую просто не будет знать, что нужно делать с этим письмом. А указание повода сразу определяет отдел, начальник которого должен подготовить ответ на письмо (с обязательным указанием повода, чтобы не ставить другого директора в тяжелое положение, когда ему приходится решать, что делать с этим письмом). Канцелярские уложения позаботились об этих заботах руководителей учреждений и требуют введения на учрежденческом бланке специальной рамки (в левом верхнем углу), где необходимо указать повод письма.

Таким образом, всякое письмо должно содержать: текст, повод, дату, адрес и подпись. Но на этом перипетии письма не кончаются. Необходимо указать приоритет письма (высший - авиа и низший - простое). И надо определить его маршрут - этим занимается почтовое ведомство. (Так дальнее письмо можно направить no разным маршрутам и время его доставки будет разным. Поэтому выбор правильного маршрута часто является решающим фактором при минимизации времени доставки письма).

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

Именно такого же рода процессы происходят при пакетной передаче информации по сети связи. Блок информации пользователя (необходимость дробления сообщений на блоки мы обсуждали выше) многократно обрамляется различной вспомогательной информацией, которая позволяет доставить его в виде пакета адресату, который "распаковав" пакет, находит в нем передаваемый ему блок. Давайте рассмотрим этапы "упаковки" информации пользователя при ее передаче в сети пакетной коммутации. Этапы и выполняемые при этом процедуры определяются так называемыми протоколами.

Протоколов много. Их удобно подразделить на две группы - протоколы высшего и низшего уровней.
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:47 am

ДЕЛА ПРОТОКОЛЬНЫЕ...

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

При общении различных ЭВМ через сеть связи также надо соблюдать определенные правила. Их-то и назвали протоколами.

Отличие протоколов верхнего уровня от протоколов нижнего заключается в том, что верхний уровень ведает процедурами взаимодействия решаемых прикладных задач (вычислительных, информационных и т.д.) друг с другом через сеть связи, а низший - процессами связи в сети. Для того чтобы двум вычислительным процессам, происходящим в различных ЭВМ, находящихся на разных концах сети, обмениваться какой-то нужной информацией, необходима одновременная работа вcex протоколов. Но лишь протоколы верхнего уровня способны интерпретировать переданную информацию и тем самым обеспечить взаимодействие обоих вычислительных процессов. Нижний уровень протоколов лишь обеспечивает передачу информации через сеть связи, "не задумываясь" о ее смысле.

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

"Добру и злу внимая равнодушно", нижний уровень лишь обеспечивает коммутацию и не заботится ни о чем другом.

А теперь рассмотрим эти протоколы. Начнем сверху.
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:50 am

ПРОТОКОЛЫ ВЫСОКОГО УРОВНЯ

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

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

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

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

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

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

Так, указанное "протокольное" расширение алгоритмических языков должно обеспечить выполнение сетью, например, такого задания: "Из банка данных A, расположенного в узле B сети, взять программу C и переслать ее в узел D. Исходные данные E взять у абонента G, расположенного в узле K, и направить в узел D. Результат расчета по программе C с данными E в узле D направить в узел I и вывести на графопостроитель абонента L". Легко себе представить, что для описания этого задания нужно иметь весьма гибкий язык, подчиняющийся определенному сетевому протоколу.

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

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

Протоколы высокого уровня занимают три верхних этажа: седьмой, шестой и пятый. СЕДЬМОЙ уровень, называемый ПРИКЛАДНЫМ, или ПОЛЬЗОВАТЕЛЬСКИМ уровнем, рассмотрен выше с позиций пользователя. Однако, этот уровень часто называют также уровнем прикладных процессов, подразумевая под этим то, что именно на этом уровне происходит выход из сети на ЭВМ, с которой работает пользователь (см. рис.12). Вычислительный процесс происходит в ЭВМ, а седьмой уровень протоколов связи с этой ЭВМ обеспечивает ее стыковку с вычислительной сетью.

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

Сигнал от пользователя к ЭВМ и обратно обязательно проходит через все уровни протоколов так, как это показано на рис.12. Пользователь же никак не ощущает этого. Для него связь как бы осуществляется по прямой стрелке. Он видит лишь "надводную" часть айсберга вычислительной сети. А под "водой" остались все остальные уровни протоколов вместе с каналами связи.

ШЕСТОЙ уровень протоколов называют обычно ПРЕДСТАВИТЕЛЬНЫМ уровнем. Он определяет в основном процедуру представления передаваемой информации в нужную сетевую форму. Связано это с тем, что сеть объединяет разные машины. Если бы ЭВМ в сети были бы одного типа, то не понадобилось бы вводить процедуру представления к единой форме. Но в сети, объединяющей разнотипные ЭВМ, информация, передаваемая по сети, должна иметь определенную единую форму представления. Именно эту форму определяет протокол шестого уровня. Информация, пришедшая с верхнего, седьмого, уровня, имела иное представление. Конечно, можно было бы пользователя заставить протоколом седьмого уровня представлять информацию сразу в требуемой "сетевой" форме и представительного уровня не понадобилось бы. Но это очень усложнило бы его жизнь. Ко всему прочему протоколам седьмого уровня пришлось бы выполнять дополнительные требования протокола представления информации. Но преобразование представления информации в требуемую форму можно осуществлять с помощью специальных программ. Именно они и реализуют требование протоколов шестого уровня.

Следующий ПЯТЫЙ уровень протоколов называют обычно СЕАНСОВЫМ. Его назначение состоит в организации сеансов связи между прикладными процессами. В соответствии с этим протоколом сеансовый уровень образует (по команде сверху, разумеется) соединение прикладных процессов для их взаимодействия по принципу коммутации каналов, организацию передачи информации между процессами во время взаимодействия и "рассоединение" процессов.

На пятом уровне кончаются протоколы высокого уровня и начинаются протоколы низкого уровня, обслуживающие транспортную сеть - их четыре. Выход информации в транспортную сеть осуществляется через так называемый ПОРТ. Каждый процесс (пользователь) выходит в сеть через свои порты, а число портов у каждого пользователя равно числу его адресатов, с которыми он взаимодействует в данный момент.

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

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 8219710
Рис.13. Здесь представлена схема наращивания блока передаваемой по сети информации при прохождении по уровням транспортного канала. На приемном конце и в узле все происходит в обратном порядке; на втором уровне снимаются заголовки кадра, на третьем - заголовок пакета, а на четвертом - заголовок передачи. Полученная при этом информация используется для управления транспортным каналом.

Это сообщение через порт процесса, его породившего, поступает в транспортную сеть для передачи адресату по протоколам низкого уровня.
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:52 am

ПРОТОКОЛЫ НИЗКОГО УРОВНЯ (ТРАНСПОРТНАЯ СЕТЬ)

Эти протоколы обслуживают так называемую ТРАНСПОРТНУЮ сеть. Как любая транспортная система эта сеть транспортирует вверенные ей "грузы" - информацию пользователя, не интересуясь ее содержанием. Ей важно быстро и надежно передать информацию от одного абонента сети к другому. Быстроту обеспечивает электроника, а надежность - способы защиты и упаковки информации (они выполняют роль мягких прокладок и контейнеров, используемых при дорожных перевозках грузов). Аналогия здесь очень глубокая, так как в обоих случаях речь идет о реализации процессов эффективной транспортировки.

А теперь продолжим рассмотрение семиуровневой системы протоколов вычислительной сети. Как сказано, на транспортную сеть информация поступает в виде сообщения пользователя. На ЧЕТВЕРТОМ уровне управления сетью, называемом ТРАНСПОРТНЫМ или уровнем УПРАВЛЕНИЯ ПЕРЕДАЧЕЙ, в соответствии с протоколом этого уровня это сообщение разбивается на одинаковые фрагменты (#1, 2, ...) и каждому фрагменту приписывается заголовок передачи (см. рис.13), где указывается номер фрагмента и имя порта назначения.

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

ТРЕТИЙ уровень протоколов называют СЕТЕВЫМ. Он обслуживает процессы управления маршрутизацией микстов в сети, т.е. определяет траекторию движения блока по узлам сети. Для этого на основе имеющейся информации о состоянии транспортной сети связи, т.е. о нагрузке ее каналов, состоянии узлов и т.д. вырабатывается маршрут прохождения пакета. Сам пакет образуется добавлением к блоку заголовка пакета (см. рис.13). В этом заголовке содержится вся информация, необходимая для определения маршрута образованного таким образом пакета.

Именно до этого третьего уровня "раздевают" пакет при его прохождении узла сети, то есть в коммутационной машине. Этот случай показан на рис.12. Необходимость указанного очевидна. Действительно, для того, чтобы пакет прошел транзитом через узел, этому узлу нужно знать маршрут пакета. А информация о маршруте содержится именно в заголовке пакета.

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

Далее пакет направляют на ВТОРОЙ уровень управления транспортной сетью, обычно называемый КАНАЛЬНЫМ, работа которого регламентируется протоколом этого второго уровня, или КАНАЛЬНЫМ протоколом. В соответствии с этим протоколом из пакета образуется кадр, который и начнет двигаться по каналу связи. Кадр образуется обрамлением пакета заголовком и концевиком кадра (см. рис.13). В заголовок вводится вся информация, необходимая для управления тем каналом связи, по которому предстоит идти кадру. Такой информацией может быть, например, сообщение о том, что происходит в том узле, откуда только что вышел кадр, и т.д. Концевик кадра образуется теми самыми дополнительными контрольными битами информации (их 16), которые необходимы для надежной передачи всего кадра (о них говорилось выше), а точнее - для проверки правильности передачи на приемном конце канала.

Для обозначения кадра в его начале и конце ставятся так называемые флаги, например, восьмисимвольные последовательности вида 01111110. С помощью флагов и удается выделить кадр: все что между двумя флагами и есть кадр. А для того, чтобы флаговое сочетание нулей и единиц не встретилось в кадре, производится его остроумное преобразование: после каждой пятерки единиц, т.е. после 11111, вставляется нуль, который автоматически снимается на приемном конце канала вместе с флагами. (Эту процедуру называют битстаффингом - дословно: вставка бит). После этого, кроме флагов, в кадре не будет ни одного сочетания вида 01111110, что однозначно и определяет кадр.

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

Последним (ПЕРВЫМ) уровнем управления транспортной сетью является так называемый ФИЗИЧЕСКИЙ уровень. Его работа регламентируется протоколом физического уровня, который предписывает правила установления соединения с физическим каналом, поддержания этого соединения и расторжения его. Здесь определяются правила передачи каждого бита через физический канал. Этот канал может быть параллельным и передавать несколько бит сразу, что увеличивает скорость передачи информации. Именно на этом уровне работает модем, рассмотренный выше.

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

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

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

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

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:55 am

ДАТАГРАММЫ

Это странное название (datagramm - в дословном переводе: "записанные данные", читается как "дейтаграм"; однако в русском языке укоренилась "датаграмма", которая здесь и используется) получил самостоятельный пакет, который движется по сети независимо от других пакетов, даже порожденных одним и тем же процессом. Вспомним, что пакет в своем заголовке имеет сведения о своем маршруте, что более чем достаточно для его доставки адресату (так, например, работает сеть ARPA, эта датаграммная вычислительная сеть). Если же этих сведений нет, то вполне достаточно иметь адрес, по которому послан пакет. Делается это, например, так.

Получив датаграмму узел коммутации направляет его по правилу горячей картошки в сторону того узла, куда она направлена. Например (см. рис.14), получив датаграмму из A узел B, выяснив из заголовка пакета, что его адресат находится в узле C, решает, куда ее следует направить. Сначала он его направляет в узел ближайший к C. Если после такой отправки из G получена положительная квитанция о получении пакета, то узел B снимает с себя заботу об этом пакете (точнее: датаграмме), т.е. стирает его в своей памяти. Теперь его опеку берет на себя узел G. Если же положительная квитанция от G не поступила (а это означает, что либо память G переполнена, либо он неисправен, либо...), то B направляет злополучную датаграмму в узел K или в узел E и уж при их отказе в узел D.

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 8220210
Рис.14. Пример вычислительной сети, где распределение датаграмм в узле B определяется сложившейся ситуацией. Пакет с большим преимуществом направляется в узел, ближайший к абоненту, с учетом того, как он (узел) принимал пакеты в ближайшем прошлом.

Таким образом, все узлы, окружающие данный, ранжируются по близости к адресному. Первый ранг получает ближайший к адресату узел (в данном случае узел G), второй ранг - ближайший из остальных (E или K) и т.д. Пакет посылается сначала в узел первого ранга, при неудаче - в узел второго ранга и т.д.

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

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

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 8220310

ai = Ni*/Ni,

где Ni - общее число пакетов, посланных в i-й смежный узел за последние T секунд, a Ni* - число принятых им пакетов, т.е. число полученных подтверждений из i-ro узла.

Пусть qi - ранг i-ro узла (i=1, ..., k), a k - число узлов, смежных данному. Очевидно, что отношение ai/qi характеризует перспективность i-го узла для передачи датаграммы. Теперь можно поступить двояко.

При детерминированном подходе посылку датаграммы следует делать в направлении узла с наибольшим значением отношения ai/qi. Далее, при неудаче - с наибольшим из оставшихся и т.д.

При вероятностном подходе направление отсылки диаграммы случайно. Это означает, что i-й узел выбирается случайно, но с вероятностью пропорциональной иелмчине ai/qi, т.е. с вероятностью

pi = ai/(qi * сумма(i=1..k)(ai/qi) (i=1, ..., k).

Легко видеть, что неработающие или плохо работающие узлы будут иметь pi=0. Таким образом, они будут автоматически исключены из списка узлов, куда может быть направлена датаграмма, что, естественно, ускорит ее доставку адресату.

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

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

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 11:56 am

ВИРТУАЛЬНЫЕ СОЕДИНЕНИЯ

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

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

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

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 12:02 pm

А НЕЛЬЗЯ ЛИ ПРОЩЕ? (СВЯЗЬ ЧЕРЕЗ СПУТНИК)

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

Нельзя ли упростить систему связи за счет того, что в каждый момент связь осуществляется между двумя абонентами сети? Можно. И здесь очень пригодится спутник, находящийся на стационарной орбите, высотой примерно 35800км от Земли. Такой спутник "висит" над одной точкой земли (над экватором) и может обслуживать связью всех, находящихся в радиусе 14тыс.км.

Как же организуется связь ЭВМ через спутник? Прежде всего отметим, что спутник выступает здесь простым ретранслятором, т.е. принимает сигналы на одной волне, усиливает их и тут же передает обратно на Землю на другой волне. Его приемнопередаточная антенна направлена на всех, кто может оказаться в прямой видимости спутника.

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

Однако источник помех может находиться рядом с адресатом, который поэтому не сможет узнать, правильно он принял кадр или нет. Поэтому контрольная добавка (16 бит) все же сопровождает передаваемый пакет и в случае спутниковой связи.

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

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 8220610
Рис.15. А так осуществляется связь через спутник. Каждая станция посылает свой пакет и принимает результат ретрансляции пакета спутником. Самая главная проблема здесь заключается в том, чтобы не наложились пакеты, передаваемые различными станциями. Именно для этого необходима адаптация.

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

Бесконфликтный пакет принимают все станции в том числе и та (или те), которой он послан. В его заголовке указывается адресат, который и начинает дальнейшую обработку пакета. Следует отметить, что в такой системе секреты скрывать довольно трудно, разве что договориться с адресатом о специальном коде, засекречивающем передаваемую информацию. Но зато легко передавать информацию всем сразу. Для этого есть специальный адрес "ВСЕМ".

Приемные станции сделаны так, что получив пакет с чужим адресатом, они просто забывают его и реагируют лишь на свой адрес или на всеобщий - "ВСЕМ".

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

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

Остроумным выходом из такой ситуации было предложение отправлять пакеты через случайные промежутки времени. В этом случае (в силу случайности момента передачи пакета каждой станцией) всегда может оказаться, что при передаче пакета одной станции другие молчат и пакет пройдет канал спутниковой связи бесконфликтно, в чем эта станция сразу удостоверится. (Не совсем "сразу", т.к. на прохождение радиосигнала до спутника и обратно тратится вполне внушительное время - более четверти секунды).

Алгоритм работы станции в этом случае таков: в случайные моменты времени передавать пакеты, а в случае конфликта - повторять передачу конфликтного пакета. Для этого однако следует хранить в памяти все пакеты, переданные за последние четверть секунды. Вот и все!

Число конфликтов здесь зависит от среднего значения величины временного интервала между посылками пакетов. Чем больше эта величина, тем меньше конфликтов, но при этом увеличивается число "пустых окон", когда вовсе нет передачи ни одного пакета ни одной станцией. Уменьшение интервала между пакетами уменьшает число "пустых окон", но зато увеличивает число конфликтов, когда связь также отсутствует. Как быть?

Очевидно, что максимальной пропускная способность такого канала спутниковой связи будет при оптимальном выборе средней величины случайного интервала между посылками пакетов.

Расчеты показывают, что средняя скорость передачи такой системы связи равна 18.4% от максимальной, которая будет при одной передающей станции, т.е. когда конфликтов и пустых окон нет.
Можно ли увеличить эту пропускную способность? Можно. Но для этого надо синхронизировать работу станций, т.е. отправлять пакеты не в любой момент времени, а лишь в строго синхронизированные моменты. Это означает, что все время работы канала связи разбивается на окна, длина которых равна времени передачи одного пакета (все пакеты предполагаются одинаковыми).

Каждая станция может начинать передачу пакета только в начале окна. Очевидно, что посылать пакеты в каждое окно нет смысла, т.к. почти наверняка возникнут конфликты с пакетами других станций. Надо пропускать окна. Как это сделать? Проще всего - случайно.

Для этого перед каждым окном каждая станция решает: передавать пакет или не передавать. И решение это доверяется случаю, т.е. задается вероятность p передачи пакета. Соответственно с вероятностью 1-p пакет не передается. И так поступают все станции!

Легко заметить, что эффективность канала связи зависит от величины p и от числа работающих станций N. Если N велико, то возникнет много конфликтов, которые снизят пропускную способность такого канала связи. При очень малом N конфликтов мало, но много пустых окон, что также снижает эффективность связи.

Очевидно, что существует оптимальное значение вероятности p = p*, при котором эффективность связи максимальна. Теория показывает, что эта оптимальная вероятность равна

p = 1/N.

В этом случае скорость передачи вдвое больше, чем при отсутствии синхронизации, т.е. 36.8% от максимальной.

Для реализации такой скорости должно быть известно N - число работающих станций. Но это число все время меняется - ведь это зависит от того, есть запросы на передачу сообщений или нет на каждой станции. Именно поэтому определить N практически невозможно.

Что же делать? Значит ли это, что эта скорость недостижима? Нет, достижима.

Как всегда, когда решение затрудняется из-за отсутствия необходимой информации, на помощь приходит адаптация. Реализуется она следующим образом.

Пусть сначала вероятность р равна любому числу p0 (0<p0<1). Приняв решение по этой вероятности, т.е. отправив пакет с вероятностью p0, следует ожидать результата, который даст возможность откорректировать значение p0.

Если пакет был отправлен и возник конфликт, то это означает, что p0, по-видимому, велико и ее надо уменьшить, т.е. заменить на p1:

p1 = gamma*p0,

где 0<gamma<1.

Если конфликта не возникло, то величина p0 наверное выбрана правильно и

p1 = p0.

Если же пакет не посылался, а послал кто-то другой (был конфликт или его не было, станцию не интересует), то "непосылка" правильна и, следовательно,

p1 = p0.

Но если при отсутствии посылки пакета было пустое окно, то скорее всего его нужно было посылать, т.е. p0 надо увеличивать:

p1 = p0*(1-gamma) + gamma

(здесь p1>=p0 и p1<1. Этим и определяется сложность формулы).

Таким образом, адаптация вероятности посылки пакета в t+1-м окне реализуется следующим выражением:

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 8221010

p t+1 =
- gamma*pt, если пакет был отправлен и возник конфликт
- pt, если пакет был отправлен и не было конфликта или пакет не отправлен, но отправил кто-то другой
- pt*(1-gamma) + gamma, если пакет не отправлялся и было пустое окно

Такие формулы называют рекуррентными. Они очень удобны для вычислений, так как позволяют определять последующее значение p t+1 по предыдущему pt и ситуации, сложившейся к моменту t+1.

Работая таким образом, станции будут поддерживать вероятность pt на уровне близком к р*, т.е. канал связи будет работать почти оптимально (может быть, чуть хуже).

Является ли скорость 36.8% от максимальной предельной? И вообще, нельзя ли устранить конфликты в этой системе связи?

Можно, если предоставить возможность станциям договариваться о порядке работы. Сделать это можно, например, так.

В начале связи все станции посылают пакет с адресом "ВСЕМ". В этом пакете сообщается о том, сколько пакетов подряд будет передаваться этой станцией. Эти пакеты-заявки принимаются всеми станциями в описанном выше адаптивном режиме. Каждая станция, получая пакеты от других станций, строит очередь заявок в порядке их передачи через спутники. Точнее, сама очередь эту станцию не интересует - ей важно лишь определить момент, когда можно включаться в передачу. Этот момент вычисляется просто: он определяется суммой чужих заявок, принятых до удачной передачи заявки этой станции (удачная передача - это и есть постановка в очередь).

Например, приняв заявки трех станций на передачу 100, 150 и 50 пакетов и сообщив свою заявку (она будет четвертой), данная станция должна отсчитать с момента начала передачи 100+150+50 = 300 окон и на 301-м включаться в работу.

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

Легко заметить, что скорость передачи при такой работе резко возрастает. Действительно, при передаче заявок она не превышает 36.4% от максимальной. Но это только для N пакетов (по одному пакету от каждой станции). Когда же начинается передача "по очереди", то скорость максимальна, так как ни конфликтов, ни пустых окон возникнуть не может.

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

Так, в сети ARPA широкополосный спутниковый канал связи с Гавайями позволяет пропускать информацию со скоростью 50000 бит в сек. Это значит, что стандартный пакет в 1000 бит требует окно размером всего в две сотых секунды.

Но за все надо платить. Приходится платить и за простоту спутниковой связи. И эта плата довольно тяжелая - четвертьсекундная задержка сигнала. Лишь через этот промежуток времени мы можем проверить правильность передачи пакета. Но зато этот пакет сразу будет на месте. При передаче по сети при этом будет загружено несколько узлов и в каждом из них должны сработать много программ, что, естественно, понижает надежность системы связи.

Как обычно, любая система связи имеет свои "за" и свои "против". Хорошее понимание этих ее свойств дает возможность хорошо воспользоваться всеми "за" и нейтрализовать "против".

Так, идея спутниковой связи в сети ЭВМ нашла свое применение при создании локальных сетей ЭВМ. В этом случае все ЭВМ сети объединяются одним каналом (его называют "моноканалом") - электрическим, оптическим или радиоканалом. В него и посылают свои пакеты ЭВМ сети. Этот канал имеет малую протяженность, а поэтому не дает злополучной задержки спутникового канала.
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 12:03 pm

АДАПТАЦИЯ ВЫЧИСЛИТЕЛЬНЫХ СЕТЕЙ

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

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

Рассмотрим некоторые другие аспекты применения адаптации в вычислительных сетях. Так как свойства сетей в значительной мере определяются протоколами, то естественно рассмотреть адаптацию протоколов.

Простейшей формой адаптации протоколов является их своевременная замена. Это означает, что при определенной ситуации, сложившейся в сети, все протоколы или их какая-то часть заменяются на другие протоколы. Реализовать эту адаптацию можно методом "двурукого бандита", рассмотренным в первой главе. Основания для такой замены имеются вполне определенные. Дело в том, что существует достаточно много различных протоколов, решающих одни и те же сетевые задачи. (Практически все существующие сети имеют свои протоколы управления процессами взаимодействия в сети. И каждая из этих систем протоколов оптимальна в каком-то своем собственном смысле. Именно поэтому нельзя выбрать заранее наилучшую систему протоколов).

Дело в том, что изменяются не только условия эксплуатации сети, ее структура и свойства, но и представление о том, "что такое хорошо и что такое плохо", т.е. критерии эффективности функционирования сети. В такой обстановке нужно иметь запас эффективных решений в виде различных комбинаций протоколов, чтобы поддерживать в сети именно ту комбинацию, которая наиболее эффективна по заданному критерию в сложившейся ситуации. Если число таких комбинаций равно m, то для их использования следует воспользоваться алгоритмом "m-рукого бандита".

Кроме того каждый протокол имеет параметры и альтернативные варианты, назначение которых происходит обычно достаточно волевым порядком, исходя из представлений об ожидаемых режимах работы вычислительной сети. Именно эти параметры и альтернативные варианты должны определяться адаптивным образом в зависимости от состояния сети и критерия эффективности.

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

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

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

Таким образом, независимо от уровня изменяющихся помех в канале будет поддерживаться именно та длина пакета, которая позволяет передавать информацию по каналу с максимальной скоростью.

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

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

Таким образом, в вычислительной сети иногда складывается такая ситуация, которая требует смены дисциплины обслуживания пакетов в узлах сети. Реализовать это можно все тем же алгоритмом "двурукого бандита", у которого вместо "пистолетов в руках" находятся те самые альтернативные дисциплины обслуживания, которые целесообразно применять и менять в узлах коммутации в зависимости от сложившейся ситуации (в узле и в сети) и критерия оптимальности функционирования узла или сети в целом.

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

Банки данных в вычислительной сети обычно специализируются в зависимости от потребностей пользователей сети (например, по определенным разделам физики, химии, технологии и т.д.). Очевидно, что банки расположены в тех узлах сети, где сконцентрированы пользователи и составители этого банка. Так, например, банк по атомной и ядерной физике следует сознавать на базе ядерного центра. Смешно его было располагать где-либо в другом месте, даже в соседнем городе. Так происходит специализация и фиксация места расположения банка. Его содержимым однако может пользоваться любой абонент сети.

Но при частом обращении к банку каналы связи с ним окажутся перегруженными и сеть с популярным банком данных окажется заблокированной. Для того, чтобы избежать такой перегрузки сети и не заставлять абонента долго ждать затребованной информации, естественно создать на абонентской машине небольшой банк данных, наиболее часто используемых этим абонентом. Большим он быть не может - для этого нужна большая память. Возникает задача, какую именно информацию хранить в локальном банке данных? Это зависит от потребностей пользователя, которые изменяются во времени. Вот и получается, что содержимое такого индивидуального банка должно адаптироваться к потребностям пользователя, т.е. изменяться вместе с изменением его потребностей, которые проявляются в виде запросов.

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

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

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 12:07 pm

МЕГРЭ ВЫХОДИТ В СЕТИ

Справочная разъяснила Мегрэ принципы обработки информации с помощью сетей (они описаны выше) и указала, что требуемую ему мощность могут обеспечить семь вычислительных сетей:
- ARPA (США), имеющая спутниковую связь с Европой через Лондон;
- CYCLADES (Франция), имеющая абонентскую машину в Гренобле (Мегрэ отметил себе это обстоятельство, ведь программа идентификации находится именно в Гренобле);
- EVRONET (Европейское экономическое сообщество) имеет 4 узла в Лондоне (а это связь с ARPA отметил себе Мегрэ), Париже (связь с CYCLADES), Франкфурте и Риме;
- EIN (Международная европейская вычислительная сеть) имеет 5 узлов и среди них Лондон, Париж и Цюрих ("Вот и выход на банк данных Интерпола" - подумал Мегрэ);
- TRANSPAC (Франция) - 12 узлов в основных городах Франции ("Берем всю" - усмехнулся Мегрэ);
- TELENET (США) - 20 узлов, выхода в Европу, нет ("Свяжемся с ней через сеть ARPA");
- DATAPAC (Канада) - 4 узла, имеется связь с сетями ARPA и TELENET ("А, следовательно, и с Парижем через Лондон с помощью TRANSPAC и ARPA" - отметил Мегрэ).

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

- Алло, полковник, расследование дела об ограблении банка требует обработки видеоинформации, полученной телесторожем. Прошу Вашей санкции на выход в вычислительные сети ARPANET,... и DATAPAC под девизом Интерпола.
- Сколько из этих сетей за пределами Франции?- спросил полковник.
- Три,- не моргнув глазом ответил Мегрэ, подумав, что международные сети нельзя считать находящимися за французской границей, если есть хотя бы один терминал во Франции.
- Не боитесь утечки информации? Ведь бандиты, узнав о существовании видеопленки, могут что-то предпринять!
- Они не успеют - спокойно ответил Мегрэ.- Ведь осталось всего полтора часа.
- Да, и не минуты больше,- отчеканил полковник и строго официальным голосом закончил: - Инспектор Мегрэ, санкционирую выход на указанные Вами вычислительные сети с полученными видеоматериалами под девизом Интерпола. Все.

Мегрэ усмехнулся. Он представил какой кислой станет физиономия полковника, когда он получит счет от всех семи сетей. С ценами его познакомила справочная. Эти цены зависели от приоритета задания. Самый высокий (нулевой) приоритет прерывал все процессы кроме процессов управления в сети. И обходилось это очень дорого, т.к. в этом случае сети приходилось выплачивать штрафы всем ее пользователям с более низким приоритетом, чьи задачи задерживались на время работы программ с нулевым приоритетом.

- Ну что, надо начинать.- Мегрэ набрал номер профессора Мариака.
- Алло, профессор, будем считать на семи вычислительных сетях. Бандитов тоже семь, так что мы эту "великолепную" семерку разбросаем по всему миру. Об этом позабочусь я. А Вам следует (извините за жаргон, но я уже включил Вас в группу розыска) направить программу идентификации диспетчерам всех семи сетей. Укажите программе, что идентифицировать надо человека в белом контуре - я их обведу. И последнее, идентифицировать надо лишь отклонения от нормы. При достоверности свыше 99% результаты следует занести в формат Интерпола. О его отправке в банк данных я позабочусь сам. Формат вы получите сейчас. Действуйте, профессор!

- Поль! Отправьте по видеотелефону форматы Интерпола в Гренобль для профессора Мариака,- бросил Мегрэ в селектор.- А теперь займемся дележом бандитов.

Мегрэ прошел в аппаратный зал, сел за графический дисплей и взял в руку световое перо. На экране возникла уже знакомая картина операционного зала. Он выбрал наугад фигуру, стоящую у двери, и обвел ее пером (это была небольшая, размером с карандаш, палочка, пишущий конец которой имел миниатюрный фотоэлемент, а из другого конца выходил тонкий шнур, уходящий куда-то за экран. При прикосновении фотоэлементом пера к экрану в этой точке загорелась яркая звездочка. Стереть ее можно только световой "резинкой", функцию которой выполняло то же световое перо, но работающее по другой программе - ее надо включать кнопкой "стереть". Этим пером можно делать на экране любые контурные фигуры. Так кадр за кадром Мегрэ обводил ярким кружком одного и того же человека, чтобы он ни делал. Покончив с одним, он вернул видеопленки в исходное состояние и занялся другим бандитом и т.д. На эту не очень интересную работу ушло минут двадцать. Остался час.

А тем временем Поль отправлял размеченные фильмы диспетчерам вычислительных сетей и добавлял, что результат идентификации должен быть направлен в банк данных французской криминальной полиции в Париже и одновременно в международный банк данных Интерпола в Цюрихе для поиска досье наиболее "подходящих" кандидатур:

"Эти досье направлять сразу на видеотерминал инспектора Мегрэ в Париже. Его же необходимо информировать о ходе вычислительного процесса. Окончание расчета - по получении результата или, если результата не будет, то через час".

Теперь осталось только ждать. На экран стали поступать сообщения о том, что задача принята и начала выполняться ("Молодец, профессор, успел во время"). Указывалось и число машин, которые решали задачу. Это количество все время изменялось, видно, что-то мешало сети отдать всю мощность одной задаче несмотря на ее нулевой приоритет. Мегрэ этому не удивлялся, он хорошо понимал, что в большой сложной системе всегда что-нибудь будет происходить, непредусмотренное программой. А вычислительные сети близки к пределу сложности систем, созданных человеком.

Число машин, решающих задачу, колебалось около 500-600. Только один раз их было 900 штук. "Вот тебе и реклама" - подумал Мегрэ, вспомнив ответы справочной.

На 17-й минуте отключилась сеть ARPA. И хотя вскоре снова включилась, но выключилась EVRONET, сообщив, что прерывает свою работу на неопределенное время.

На тридцатой минуте ARPA выдала результат и отключилась, оставив на экране такой счет, от которого Мегрэ поперхнулся кофе.

Ответ из Парижа и Цюриха был обильный и невразумительный. Полученным данным соответствовали 83 человека из Парижского банка и 112 из Цюриха.

- Вот тебе и достоверное отклонение - присвистнул Мегрэ.- Поль, пусть ARPA продолжит счет до 99,9% достоверности, а из этих,- он кивнул на экран,- попросите лишь парижан, может что и найдем.

На 43-й минуте сеть EIN получила результат. Парижское досье по этим результатам показало на Весельчака Жака, старого "знакомого" Мегрэ. Он тут же вспомнил, что Жак немного хромал и, наверное, именно эту примету выявила программа Мариака.

В груди похолодело. Мегрэ знал, что так бывает, когда он нападал на след. Жак, судя по всему, вполне мог попасть в эту компанию, хотя обычно "работал" один. Специализировался он по мелким ограблениям и поэтому подолгу не сидел.

- Поль! Кто дежурит сейчас на улице Капуцинов? Срочно передайте: взять Жака Волье, да, Весельчака, дом 16, и сообщить мне немедленно. Пусть ищут поблизости от дома: он не будет прятаться, ему нужно алиби!

Через 10 минут, которые тянулись очень долго для Мегрэ, поступило сообщение, что Жака взяли.

- Соедините меня с ним! Алло, Жак. Это говорит инспектор Мегрэ. Ты узнаешь меня? Хорошо. Слушай очень внимательно. С этого момента твоя судьба зависит только от тебя. Ты первый, кого мы взяли по делу ограбления банка, которое было совершено два часа назад. Да не перебивай ты меня! Мы вас вычислили, слышишь? Вычислили на ЭВМ, на многих ЭВМ. И здесь у меня лежит список твоих друзей.- Мегрэ указал на гору бумаги, лежащую на полу перед печатающим устройством, из которого вылезала очередная порция с очередным досье, найденным по результатам, полученным какой-то сетью.- Мне нужно только уточнить список. И запомни, еще такой возможности помочь мне у тебя не будет. Все что ты скажешь, нигде не будет записано. Это я гарантирую. Мне нужно только подтверждение. Алло, Луи, переключите передатчик на секретный канал и выйдите из машины. Пусть Жак останется один с микрофоном. Алло, Жак, я слушаю имена.
- Инспектор, у меня железное алиби. Что Вы ко мне пристаете?
- И еще Жак, помнишь малютку Марго? Ведь дело можно было повернуть и иначе. И у меня есть материалы для этого поворота. Ты знаешь, чем это пахнет. Итак, тебе на раздумье 30 секунд. Больше дать не могу - у самого нет.- Мегрэ взглянул на часы, осталось 3 минуты до срока, указанного полковником.

После недолгого молчания Жак заговорил. Мегрэ быстро записал имена на клочке бумаги и бросился к списку подозреваемых, отпечатанных на ленте. Быстро сверив свою запись со всеми списками он задумчиво достал трубку, зажег зажигалкой смятый клочок бумаги и уже ею стал раскуривать трубку. Затянувшись два раза, он взглянул на часы. Срок истек.

Мегрэ подошел к телефону и набрал номер полковника. Он был занят. Нажав кнопку аварийного вызова, он соединился с ним.

- Инспектор Мегрэ, я жду объяснений,- резко сказал полковник.
- Докладываю: задержан один из бандитов - Жак Волье. Остальные известны и их розыск начинается немедленно, - по-военному отрубил Мегрэ.
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 12:08 pm

ОТРЕЗВИМСЯ НЕМНОГО...

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

Хочется закончить этот раздел словами одного из крупнейших теоретиков вычислительных сетей Л.Клейнрока, сказанными им в 1978г.:

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

Хочется надеяться, что в ближайшие годы положение изменится к лучшему.
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 Empty Re: Растригин. Вычислительные машины, системы, сети... 1982

Сообщение автор Gudleifr Вт Янв 19, 2021 12:11 pm

ЧТО ЖЕ ДАЛЬШЕ? (ЗАКЛЮЧЕНИЕ)

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

А запросы сегодня большие. Уже появились задачи, которые не могут быть решены даже с помощью сетей ЭВМ. Примером такой задачи является задача автоматического управления современным аэропортом. Она требует быстродействия 1E14, т.е. сто миллиардов операций в секунду. Напомним, что вычислительная мощность самой большой вычислительной сети ARPA равна 350 миллионов операций в секунду (по данным 1975 года). Нужно триста таких сетей, чтобы справиться с задачей автоматического управления одним аэропортом. Нереальность такого решения очевидна. Так что, надо отказаться от задач, требующих больших вычислительных мощностей, или ждать, когда появятся ЭВМ еще большей мощности?

Дело в том, что ждать особенно нечего. Современная вычислительная система близка к пределу физических возможностей электронных схем. Этот предел связан с конечностью скорости распространения электрического сигнала и катастрофическим увеличением тепловых шумов при уменьшении размеров микросхем. Эти шумы являются электрическим прообразом броуновского движения, от которых избавиться нельзя и которые "охраняют" подступы к микромиру. Чем меньше микросхема, тем больше уровень тепловых шумов и тем труднее с ними, бороться. И, наконец, с некоторого уровня микроминиатюризации затраты на борьбу с шумами станут слишком велики, т.е. не окупятся получаемым эффектом быстродействия. Это и есть предел для микросхем. Лучше уже сделать ничего нельзя. (Правда, есть запасной вариант перехода к криогенной технике, то есть к снижению тепловых шумов путем глубокого охлаждения электронных схем ЭВМ. Но и он по оценкам физиков не позволит поднять быстродействие ЭВМ выше 250 миллионов операций в секунду. Изобретение голографической памяти, картинной световой логики и световодов безусловно отодвинет этот барьер, но не снимет его).

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

Что же дальше? Смирить свои разбушевавшиеся потребности или искать другие пути обработки информации, позволяющие если не перешагнуть, то обойти этот критический порог. У человечества пока нет опыта "смирения". Его бурная история показывает, что выход всегда находится. Есть он и здесь.

Это - адаптация (или обучение, что по сути дела одно и то же), т.е. приспособление машины к решаемой задаче, к сложившейся ситуации, к новым целям, поставленным перед ней.

Мы уже говорили об адаптации существующих ЭВМ, вычислительных систем и сетей, Но эта адаптация была ограничена жесткими рамками имеющейся структуры, системы команд, типом памяти и т.д.

Адаптироваться здесь можно только в рамках заданной структуры, т.е. только варьируя программой. Но, варьируя программу, нельзя изменить саму машину. И хотя адаптация программы и программного обеспечения ЭВМ, вычислительных систем и сетей ЭВМ безусловно позволяет значительно улучшать их свойства, но не в решающей мере. Так, адаптируя программу можно повысить ее эффективность в два-три раза, но не на два-три порядка.

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

Как видно, эра электронных машин близится к своему концу. Они выполняют свою функцию там, где... выполняют, но для решения новых задач (сверхзадач) нужно привлекать новые средства, позволяющие адаптировать структуру компьютера. Есть ли такие средства?

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

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

Не заметил ли читатель, как все это очень напоминает устройство мозга? Это не случайное совпадение. Наш мозг является пока самой совершенной вычислительной машиной (заметим, что сравнение старой ЭВМ с мозгом не выдерживает самой элементарной критики. Структура ЭВМ никак не напоминает структуру мозга и это сравнение скорее эмоционального толка, чем рационального).

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

Таких машин пока еще нет, но уже готовы их оптоэлектронные элементы. Расчеты показывают, что при решении некоторых задач такие адаптивные (или обучающиеся) машины позволят повысить быстродействие на несколько порядков. Так, например, при решении задачи синтеза одного предсказывающего автомата сверхмощная вычислительная система типа БАРРОУЗ должна затратить 1000 часов, а оптоэлектронному компьютеру весьма скромных габаритов (примерно со средний телевизор) понадобится для этого несколько... секунд! Структура такого компьютера изменяется на 30% на каждом такте его работы. Такое глубокое изменение структуры в процессе адаптации и отличает новый компьютер от "старых" ЭВМ. А, как известно, изменяя структуру, можно получить любые схемы, т.е. любые вычислительные машины. Именно здесь открывается совершенно новая возможность каждый раз для новой задачи строить новую машину, адекватную задаче. Осуществить это можно только методами адаптации структуры связей и функций элементов этой машины.

Так адаптация становится решающим фактором коренного изменения направления развития современной вычислительной техники (не вычислительной - тоже).

Растригин. Вычислительные машины, системы, сети... 1982 - Страница 3 8222610
Gudleifr
Gudleifr
Admin

Сообщения : 3399
Дата регистрации : 2017-03-29

Вернуться к началу Перейти вниз

Страница 3 из 3 Предыдущий  1, 2, 3

Вернуться к началу

- Похожие темы

 
Права доступа к этому форуму:
Вы не можете отвечать на сообщения