RFC: 2246
Оригинал: The TLS Protocol Version 1.0
Другие версии: RFC 4346
Категория: Предложенный стандарт
Дата публикации:
Авторы: ,
Перевод: Семенов Юрий Алексеевич

RFC 2246, Страница 11 из 49

6.2. Уровень записей

Уровень записей TLS получает не интерпретированные данные от верхних уровней в непустых блоках произвольного размера.

6.2.1. Фрагментация

Уровень записей фрагментирует информационные блоки и превращают их в записи TLSPlaintext, несущие данные в виде последовательностей длиной 2^14 байтов или меньше. Границы сообщения клиента на уровне записей не сохраняются (т.e., несколько сообщений клиента одного и того же ContentType могут быть объединены в одну запись TLSPlaintext, или одно сообщение может быть фрагментировано).

struct {
    uint8 major, minor;
} ProtocolVersion;
enum {
    change_cipher_spec(20), alert(21), handshake(22),
    application_data(23), (255)
} ContentType;
struct {
    ContentType type;
    ProtocolVersion version;
    uint16 length;
    opaque fragment[TLSPlaintext.length];
} TLSPlaintext;
  • type
  • Протокол верхнего уровня, использованный для обработки вложенного фрагмента.
  • version
  • Версия примененного протокола. В данном документе описывается TLS версии 1.0, который использует версию { 3, 1 }. Значение версии 3.1 является исторической: TLS версии 1.0 является минимальной модификацией протокола SSL 3.0, который несет значение версии 3.0. (Смотри приложение A.1).
  • length
  • Длина (в байтах) следующего TLSPlaintext.fragment. Длина не должна превосходить 2^14.
  • Fragment
  • Прикладные данные. Эти данные прозрачны и обрабатываются как независимые блоки, с которыми должен работать протокол верхнего уровня, который специфицирован полем тип.

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

Страница 11 из 49

2007 - 2022 © Русские переводы RFC, IETF, ISOC.