Интегрированные сети ISDN


Формат пакетов g-протокола - часть 3


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

0 b

0172, b + 0100 (0100 дo 0137)
040 b

b

(040 до 0171)
0172 b

0173, b – 0100 ( 072 до 077)
0200 b

0174, b – 0100 (0100 до 0137)

0240 b

0175, b – 0200 ( 040 до 0171)
0372 b

0176, b – 0300 ( 072 до 077)

Таким образом, байты между \040 и \171 включительно передаются без изменений, остальные перед отправкой преобразуются. Когда файл данных переслан, посылается 7-байтовая последовательность, включающая в себя два байта \176, за которыми следует 4 ASCII байта контрольной суммы (в шестнадцатеричном формате) и символ возврата каретки. Если контрольная сумма равна 0x1a2b, то будет послана последовательность \176\1761a2b\r.

При вычислении контрольной суммы туда сначала заносится код 0xffff. Для вычисления контрольной суммы (ichk) используется следующая программа, которая выполняется перед отправкой каждого байта.

/* rotate the checksum left. */

if ((ichk & 0x8000) == 0)
ichk

else
{
ichk

++ichk;
}

/* add the next byte into the checksum. */

ichk += b;

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

G

Файл принят без ошибок;

R

Ошибка в контрольной сумме, файл надо передать повторно;

Q

Контрольная сумма неверна, но уже совершено много попыток и сессию следует прервать

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


Начало  Назад  Вперед



Книжный магазин