Does It Spin? On the Adoption and Use of QUIC's Spin Bit
收藏NIAID Data Ecosystem2026-05-01 收录
下载链接:
https://zenodo.org/record/8305842
下载链接
链接失效反馈官方服务:
资源简介:
This repository contains the extracted raw spin bit values as used in our paper as well as golang scripts for analyzing them.
## Publication
* Ike Kunze, Constantin Sander, and Klaus Wehrle: *Does It Spin? On the Adoption and Use of QUIC’s Spin Bit. In Proceedings of the ACM Internet Measurement Conference 2023 (IMC '23), 2023.
If you use any portion of our work, please consider citing our publication.
```
@Inproceedings { 2023-kunze-spin-bit-in-the-wild,
author = {Kunze, Ike and Sander, Constantin and Wehrle, Klaus},
title = {Does It Spin? On the Adoption and Use of QUIC’s Spin Bit},
booktitle = {Proceedings of the Internet Measurement Conference (IMC '23)},
year = {2023},
month = {10},
publisher = {ACM},
doi = {TBD}
}
```
## Use
1. Decompress the dataset:
For using the data set, first untar the data.
```
tar -xzf extracted-spin-bit-values.tar.gz
```
1.1 Data format:
The files contained in the data set each contain line-wise dictionaries with the following content:
- QlogRTTs: RTTs as provided by the QUIC stack via qlog
- SentSpinBits: all packets sent out by our client, each containing a timestamp, the spinbit value (Val) and the packet number (PN)
- RecvSpinBits: all packets received by our client, each containing a timestamp, the spinbit value (Val) and the packet number (PN)
2. Compile golang module:
We use a golang module for analyzing the data.
Compile the module using
```
go build -o analyze-spinbit analyze-spinbit.go
```
3. Analyze individual files:
You can analyze the files by running the compiled `analyze-spinbit` program on individual files.
```
cat FILE_TO_ANALYZE | ./analyze-spinbit -buffer 1073741824 -logfile LOGFILENAME -outputfilebasename OUTPUTFILENAME --batchsize 1000000 --outputsuffix json
```
4. Output format:
Line-wise dictionaries containing:
- which spin mode was detected
- number of considered packets
- real RTTs based on QUIC stack estimates
- minimum RTT based on QUIC stack estimates
- RTTs as calculated via the spin bit
- RTTs as calculated via the spin bit when reordering the packets using the packet numbers
本仓库收录了我们论文中使用的提取得到的原始旋转比特(Spin Bit)值,以及用于分析此类数据的Go语言脚本。
## 发表论文
* Ike Kunze、Constantin Sander与Klaus Wehrle:《是否发生旋转?论QUIC协议旋转比特的采用与应用》,发表于2023年ACM互联网测量大会(IMC '23),2023年。
若您使用本研究的任何部分,请引用我们的发表成果。
@Inproceedings { 2023-kunze-spin-bit-in-the-wild,
author = {Kunze, Ike and Sander, Constantin and Wehrle, Klaus},
title = {Does It Spin? On the Adoption and Use of QUIC’s Spin Bit},
booktitle = {Proceedings of the Internet Measurement Conference (IMC '23)},
year = {2023},
month = {10},
publisher = {ACM},
doi = {TBD}
}
## 使用指南
1. 解压数据集
若需使用本数据集,请先对数据文件进行解压。
tar -xzf extracted-spin-bit-values.tar.gz
1.1 数据格式
数据集中的每个文件均为按行存储的字典,包含以下内容:
- QlogRTTs:QUIC协议栈通过qlog输出的往返时间(Round-Trip Time,简称RTT)
- SentSpinBits:本客户端发送的所有数据包,每条记录包含时间戳、旋转比特值(Val)与数据包编号(PN)
- RecvSpinBits:本客户端接收的所有数据包,每条记录包含时间戳、旋转比特值(Val)与数据包编号(PN)
2. 编译Go语言模块
我们使用Go语言模块进行数据分析,请使用以下命令编译该模块:
go build -o analyze-spinbit analyze-spinbit.go
3. 分析单个文件
您可通过在单个文件上运行编译完成的`analyze-spinbit`程序来分析文件。
cat FILE_TO_ANALYZE | ./analyze-spinbit -buffer 1073741824 -logfile LOGFILENAME -outputfilebasename OUTPUTFILENAME --batchsize 1000000 --outputsuffix json
4. 输出格式
按行存储的字典,包含以下内容:
- 检测到的旋转模式
- 已纳入统计的数据包总数
- 基于QUIC协议栈估算值得到的实际往返时间
- 基于QUIC协议栈估算值得到的最小往返时间
- 通过旋转比特计算得到的往返时间
- 通过数据包编号对数据包进行重排后,基于旋转比特计算得到的往返时间
创建时间:
2023-09-15



