Page 326 - ЭВМ
P. 326
Сообщение – это блок информации, отформатированный про-
цессом-отправителем таким образом, чтобы он был понятен процес-
су-получателю. Сообщение состоит из заголовка, обычно фиксиро-
ванной длины, и набора данных определенного типа переменной дли-
ны. В заголовке, как правило, содержатся следующие элементы.
1. Адрес – набор символов, уникально определяющих отправ-
ляющий и получающий процессы. Адресное поле, таким образом, со-
стоит из двух частей – адреса процесса-отправителя и адреса процес-
са-получателя. Адрес каждого процесса может, в свою очередь, иметь
некоторую структуру, позволяющую найти нужный процесс в сети,
состоящей из большого количества компьютеров.
2. Последовательный номер, являющийся идентификатором
сообщения. Используется для идентификации потерянных сообщений
и дубликатов сообщений в случае отказов в сети.
3. Структурированная информация, состоящая в общем случае
из нескольких частей: поля типа данных, поля длины данных и поля
значения данных (т. е. собственно данных). Поле типа данных опре-
деляет, например, что данные являются целым числом или же пред-
ставляют собой строку символов (это поле может также содержать
признак нерезидентности данных, т. е. указатель на данные, которые
хранятся где-то вне данного сообщения). Второе поле определяет
длину передаваемых в сообщении данных (обычно в байтах), т. е.
размер следующего поля сообщения. Сообщение может включать не-
сколько элементов, состоящих из описанных трех полей. В тех случа-
ях, когда сообщение всегда переносит данные одного и того же типа,
поле типа может быть опущено. То же касается поля длины данных –
для тех типов сообщений, которые переносят данные фиксированного
формата, но такая ситуация характерна только для протоколов низко-
го уровня (например, протокола ATM, имеющего фиксированный раз-
мер поля данных в 48 байт).
В любой сетевой ОС имеется подсистема передачи сообщений,
называемая также транспортной подсистемой, которая обеспечивает
набор средств для организации взаимодействия процессов по сети.
Назначение этой системы – экранировать детали сложных сетевых
протоколов от программиста. Подсистема позволяет процессам взаи-
модействовать посредством достаточно простых примитивов. В са-
мом простом случае системные средства обеспечения связи могут
быть сведены к двум основным коммуникационным примитивам:
один send (отправить) – для посылки сообщения, другой recei ve
(получить) – для получения сообщения. В дальнейшем на их базе
315