Skip to content
/ qifs Public

QIF corpus for QPACK encoder and decoder development

License

Notifications You must be signed in to change notification settings

qpackers/qifs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QIFs

This repository is for storing QIFs used in QPACK development and interop experiments.

Encoder Input

A QPACK encoder uses a QIF file as input. QIF files are stored in qifs/ directory.

Encoder Output

A QPACK encoder produces a file whose format is described in QPACK Offline Interop. Outputs produced by various encoders are stored in encoded/ directory.

The encoder output server as the decoder input. The idea of the interop is to take a QIF file, encode it using an encoder from one distribution and decode it using a decoder from another distribution.

Converting HARs to QIFs

A HAR is easy to manufacture using any of the major browsers. On the other hand, a HAR is inconvenient for the kind of end-to-end testing that the interop suggests: they are difficult to generate and compare. A HAR can be converted to a QIF format using bin/har2qif.pl program.

Comparing QIFs

QIFs are text files and can be compared using standard UNIX tools such as diff(1).

Because both input and output QIF files can contain comments and, more importantly, because the decoding process may output header lists in a different order, bin/sort-qif.pl is provided. Sample use:

sh$ encode source.qif > encoded.bin
sh$ decode encoded.bin > result.qif
sh$ grep -v ^# source.qif > canonical-input.qif
sh$ sort-qif.pl --strip-comments result.qif > canonical-output.qif
sh$ diff canonical-input.qif canonical-output.qif

About

QIF corpus for QPACK encoder and decoder development

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published