Subject: Header Compression: Reference set choice

From: RUELLAN Herve <[email-masked]>
Date: Tue, 30 Jul 2013 14:53:23 +0000

We did some work on the diff part of the header compression format, and are proposing enhancements to the choice of the reference set used to encode a new header set (i.e. the starting point for the diff). This is detailed in a draft:
http://tools.ietf.org/html/draft-ruellan-reference-set-definition-00

This is still work in progress, as we didn't have time to do enough measurement, in particular on long lasting connections.

Comments are welcome,

Hervé.

---

From: Mike Bishop <[email-masked]>
Date: Tue, 30 Jul 2013 23:20:25 +0000

Couldn't this also be closely approached simply by allowing a range of Indexed Headers along with a HEADERS flag to clear the reference set before processing the frame?

This implies that the interesting headers need to be contiguous in the table.  That's not necessarily the case (in my implementations so far, anyway), and would require some form of insert mechanism to make it really convenient for a compressor to leverage it, as you mention in 6.4.  If Range were an operation, multiple disjoint ranges could be quickly added, helping to alleviate that need.

If we're going to introduce multiple reference sets, I'd be more inclined to the version that appeared in Roberto's original proposals of being able to select from a bounded number of reference sets for each header set.  Each reference set begins empty, gets filled the first time it's used, and remains thereafter.

-----Original Message-----
From: RUELLAN Herve [mailto:[email-masked]] 
Sent: Tuesday, July 30, 2013 7:53 AM
To: [email-masked]
Subject: Header Compression: Reference set choice

Comments are welcome,

Hervé.

---

From: James M Snell <[email-masked]>
Date: Tue, 30 Jul 2013 17:34:33 -0700

Given an initial review... I believe this proposal moves us even
further into the "Being Too Clever" category without any significant
benefit. The current header compression mechanism (in my opinion)
already adds too much additional unwarranted complexity and this would
just add more to support one possible optimization whose benefits are
undemonstrated and unproven. At this point, I'd rather spend effort
finding ways to trim back the complexity and not add to it further.

---

From: RUELLAN Herve <[email-masked]>
Date: Wed, 31 Jul 2013 09:31:33 +0000

See my comments inline.
________________________________________
From: Mike Bishop [[email-masked]]
Sent: Wednesday, July 31, 2013 01:20
To: RUELLAN Herve; [email-masked]
Subject: RE: Header Compression: Reference set choice

> Couldn't this also be closely approached simply by allowing a range of Indexed Headers along with a HEADERS flag to 
> clear the reference set before processing the frame?

This is very close to what is done at the encoding level in our proposal.

> This implies that the interesting headers need to be contiguous in the table.  That's not necessarily the case (in my 
> implementations so far, anyway), and would require some form of insert mechanism to make it really convenient for a 
> compressor to leverage it, as you mention in 6.4.  If Range were an operation, multiple disjoint ranges could be quickly 
> added, helping to alleviate that need.

With the current table manipulation mechanism, it's already possible to make the interesting headers contiguous in the table. You need to be careful in the order of addition of these headers in the table.
Changing the table insertion mechanism would make managing the table easier, at some cost both in term of complexity of implementation, and in term of compaction. I've no idea whether it's worth it.

> If we're going to introduce multiple reference sets, I'd be more inclined to the version that appeared in Roberto's original 
> proposals of being able to select from a bounded number of reference sets for each header set.  Each reference set 
> begins empty, gets filled the first time it's used, and remains thereafter.

This would have a cost in memory for both encoder and the decoder. It would not be straightforward to integrate this cost with the cost of the header table under a same memory limit capacity.

Regards,

Hervé.

-----Original Message-----
From: RUELLAN Herve [mailto:[email-masked]]
Sent: Tuesday, July 30, 2013 7:53 AM
To: [email-masked]
Subject: Header Compression: Reference set choice

Comments are welcome,

Hervé.