2.2. Взаимодействие процессов в сети
Обычно же в ВС процессы находятся в различных машинах и взаимодействуют через АПД, физические каналы, коммуникационные машины и интерфейсные машины.
В этом случае и каждому процессу должен быть добавлен новый элемент программной структуры ВС - программах управления передачей (ПУП) информации от одного процесса к другому точку, расположенную между процессом и программой управления передачей обычно называют портом.
В таком случае структура передаваемого массива информации усложняется и последний называется фрагментом имеет 2 заголовка - процесса и передачи (см. рис.14). При этом основа блока и его заголовок (процесса) те же что и раньше. 2-й заголовок (передачи) содержит управляющие данные, описывающие передачу: тип массива информации передается от одного процесса к другому, адреса исходного и конечных портов, идентификатор массива.
Связь процессов, расположенных в двух машинах
Передача информации процесса А к процессу В здесь осуществляется следующим образом. При возникновении необходимости в передаче процесс А выдает блок информации, которая передается программе управления передачей. Последняя добавляет к нему заголовок передачи и полученный фрагмент информации направляется другой программе управления передачей. Эта программа убирает во фрагменте заголовок передачи, читает его, а оставшуюся часть массива информации (блок) передает процессу В. Здесь из блоков собираются сообщения, и содержащаяся в них информация пользователя передается адресуемой программе пользователя В. Аналогично осуществляется передача информации обратно от процесса В к процессу А. В ВС один и тот же процесс может быть связан с несколькими процессами, выполняемыми в различных машинах.
Поэтому, наряду с программой управления передачи вводится еще 1 элемент программной структуры - программа управления сетью (ПУС) (рис.15).
Линии, соединяющие в ВС программы управления сетью, называют транспортными каналами. Основной задачей ПУС является организация маршрутизации пакетов в ВС. Соответственно новой программе к фрагменту добавляется заголовок пакета. В нем содержится вся управляющая информация, необходимая для маршрутизации пакетов. Созданный таким образом пакет передается группе программ (рис.16), связанных с процессом В. Здесь программы управления сетью и управления передачей, соответствующие заголовки пакета и фрагмента передают процессу В принятый блок.
Рис.15
Процедура образования пакета.
Отметим, что в ряде ВС программы управления передачей и управления сетью объединяются в одну комплексную программу. В этих случаях во всех массивах информационные заголовки передачи и пакета также соединяются в общий заголовок.
Рис. 16
Процедура приема пакета.
Между любой парой смежных машин в сети расположен канал, управление работой которого выполняет еще 1 элемент - программа управления информационным каналом. Соответственно этому рассматриваемый канал будем называть информационным. Программа управления информационным каналом перед передачей пакета по информационному каналу обрамляет его спереди заголовком канала, а сзади - концевиком канала. Заголовок канала соединяет информацию, необходимую для управления информационным каналом. В концевик канала включается информация, обеспечивающая проверку пакета после передачи его по информационному каналу. В результате добавления к пакету заголовка и концевика канала создается массив информации, называемый кадром. Кадры в информационном канале идут непрерывным потоком. Их отделяют друг от друга управляющими символами, именуемыми флагами. (см. рис.17)
Рис. 17
Процедура образования кадра.
Процесс создания кадра можно проиллюстрировать процедурой последовательной упаковки информации пользователя в 4 конверта. На каждом из 4-х рассматриваемых этапов управления осуществляется упаковка информации пользователя, либо конверта, полученного от предыдущего элемента программной структуры сети в новый конверт и указание на нем нового адреса (заголовка).
Необходимо отметить, что каждый из рассмотренных элементов оперирует лишь со своим заголовком и концевиком, не рассматривая остальную часть полученного массива информации. Поэтому говорят, что этот элемент прозрачен для информации пользователя и заголовков, принятых с более высоких уровней программной структуры ВС.
На приемной стороне происходят обратные операции - распечатывание конвертов. Каждый из элементов программной структуры читает заголовок и концевик на конверте, вскрывает его и содержимое предает вверх очередному элементу.
В проведенном анализе программной структуры не учтена необходимость соединения каждой пары машин физическим каналом, поддержания этого соединения во время сеанса и расторжения соединения после каждого из сеансов. Эти операции выполняет элемент - программа управления физическим каналом.