2.2.1.5 BATCHED_OFFER_MESSAGE

The BATCHED_OFFER_MESSAGE is a request message that notifies the hosted cache of new content that is available on the client. This message consists of the following fields.

Note This message is only available for protocol version 2.0.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

MessageHeader

...

ConnectionInformation

...

SegmentDescriptor (variable)

...

MessageHeader (8 bytes): A MESSAGE_HEADER structure (section 2.2.1.1), with the Type field set to 0x0003.

ConnectionInformation (8 bytes): A CONNECTION_INFORMATION structure (section 2.2.1.2).

SegmentDescriptor (variable): The BATCHED_OFFER_MESSAGE contains a sequence of these segment descriptors. The BATCHED_OFFER_MESSAGE MUST NOT contain more than 128 SegmentDescriptors.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

BlockSize

SegmentSize

SizeOfContentTag

ContentTag (variable)

...

HashAlgorithm

SegmentHoHoDk (variable)

...

BlockSize (4 bytes): Size of each block in the segment.

SegmentSize (4 bytes): Size of data in the segment.

SizeOfContentTag (2 bytes): The size of the data contained in the ContentTag field. This field MUST be set to 16 bytes.

ContentTag (variable): Specifies the content tag. The size of this field is indicated by the value of the SizeOfContentTag field.

HashAlgorithm (1 byte): The hashing algorithm ID. MUST be one of the following values.

Value

Meaning

0x01

SHA-256

0x04

Truncated SHA-512 (first 256 bits of the SHA-512 hash)

SegmentHoHoDk (variable): Segment identifier; the size of the HoHoDk is indicated by the hashing algorithm ID as shown in the following table.

HashAlgorithm value

Length of SegmentHoHoDk

0x01 (SHA-256)

32 bytes

0x04 (Truncated SHA-512)

32 bytes