tcpquiclab report finished

This commit is contained in:
2026-01-21 22:40:51 +08:00
parent 866490dae4
commit 14cbd41039

View File

@@ -1,7 +1,8 @@
#import "labtemplate.typ": * #import "labtemplate.typ": *
#show: nudtlabpaper.with(title: "TCP 与 QUIC 协议性能对比分析实验", #show: nudtlabpaper.with(
author: "程景愉", title: "TCP 与 QUIC 协议性能对比分析实验",
id: "202302723005", author: "程景愉",
id: "202302723005",
training_type: "无军籍", training_type: "无军籍",
grade: "2023", grade: "2023",
major: "网络工程", major: "网络工程",
@@ -14,33 +15,33 @@
) )
#set page(header: [ #set page(header: [
#set par(spacing: 6pt) #set par(spacing: 6pt)
#align(center)[#text(size: 11pt)[《计算机网络》实验报告]] #align(center)[#text(size: 11pt)[《计算机网络》实验报告]]
#v(-0.3em) #v(-0.3em)
#line(length: 100%, stroke: (thickness: 1pt)) #line(length: 100%, stroke: (thickness: 1pt))
],) ])
#show heading: it => box(width: 100%)[ #show heading: it => box(width: 100%)[
#v(0.50em) #v(0.50em)
#set text(font: hei) #set text(font: hei)
#it.body #it.body
] ]
#outline(title: "目录",depth: 3, indent: 1em) #outline(title: "目录", depth: 3, indent: 1em)
// #pagebreak() // #pagebreak()
// #outline( // #outline(
// title: [图目录], // title: [图目录],
// target: figure.where(kind: image), // target: figure.where(kind: image),
// ) // )
#show heading: it => box(width: 100%)[ #show heading: it => box(width: 100%)[
#v(0.50em) #v(0.50em)
#set text(font: hei) #set text(font: hei)
#counter(heading).display() #counter(heading).display()
// #h(0.5em) // #h(0.5em)
#it.body #it.body
] ]
#set enum(indent: 0.5em,body-indent: 0.5em,) #set enum(indent: 0.5em, body-indent: 0.5em)
#pagebreak() #pagebreak()
@@ -157,17 +158,15 @@ QUIC 协议是基于 UDP 的传输层协议,旨在解决 TCP 的局限性。QU
== 实验设备与软件 == 实验设备与软件
#align(center)[#table( #align(center)[#table(
columns: (auto, auto), columns: (auto, auto),
rows:(auto,auto,auto,auto,auto), rows: (auto, auto, auto, auto, auto),
inset: 10pt, inset: 10pt,
align: horizon+center, align: horizon + center,
table.header( table.header([*名称*], [*型号或版本*]),
[*名称*], [*型号或版本*],
),
"操作系统", "Linux 6.18.6-2-cachyos", "操作系统", "Linux 6.18.6-2-cachyos",
"Tailscale", "Tailscale 虚拟局域网", "Tailscale", "Tailscale 虚拟局域网",
"编译器", "GCC", "编译器", "GCC",
"构建工具", "Make", "构建工具", "Make",
"Wireshark", "Wireshark 4.6.3" "Wireshark", "Wireshark 4.6.3",
)] )]
=== 软件环境 === 软件环境
本实验的软件开发环境包括以下工具和库: 本实验的软件开发环境包括以下工具和库:
@@ -771,7 +770,10 @@ Connection closed.
使用 Wireshark 抓包工具捕获 TCP QUIC 的数据传输过程,可以观察到两种协议的报文格式和传输特性。下图展示了 Wireshark 抓包界面,可以看到 TCP QUIC 协议的数据包。 使用 Wireshark 抓包工具捕获 TCP QUIC 的数据传输过程,可以观察到两种协议的报文格式和传输特性。下图展示了 Wireshark 抓包界面,可以看到 TCP QUIC 协议的数据包。
#figure(image("wireshark.png", format: "png", width: 100%, fit: "stretch"), caption: "Wireshark 抓包工具捕获 TCP 和 QUIC 协议数据包") #figure(
image("wireshark.png", format: "png", width: 100%, fit: "stretch"),
caption: "Wireshark 抓包工具捕获 TCP 和 QUIC 协议数据包",
)
5% 丢包环境下QUIC 的性能优于 TCP 5% 丢包环境下QUIC 的性能优于 TCP
@@ -960,11 +962,11 @@ QUIC 协议的设计体现了"性能优先"和"灵活性优先"的原则。QUIC
通过本次实验,我不仅掌握了 TCP QUIC 协议的实现技术,更重要的是学会了如何从协议规范出发,设计并实现一个完整的网络协议模块。这种能力对于后续学习更复杂的网络协议(如 HTTP/3、WebRTC以及从事网络相关工作都具有重要意义。同时通过对比两种协议的性能差异我也深刻理解了协议设计对网络性能的影响为今后的系统设计和优化提供了宝贵的经验。 通过本次实验,我不仅掌握了 TCP QUIC 协议的实现技术,更重要的是学会了如何从协议规范出发,设计并实现一个完整的网络协议模块。这种能力对于后续学习更复杂的网络协议(如 HTTP/3、WebRTC以及从事网络相关工作都具有重要意义。同时通过对比两种协议的性能差异我也深刻理解了协议设计对网络性能的影响为今后的系统设计和优化提供了宝贵的经验。
#show heading: it => box(width: 100%)[ #show heading: it => box(width: 100%)[
#v(0.50em) #v(0.50em)
#set text(font: hei) #set text(font: hei)
// #counter(heading).display() // #counter(heading).display()
// #h(0.5em) // #h(0.5em)
#it.body #it.body
] ]
//#pagebreak() //#pagebreak()