官术网_书友最值得收藏!

第2章
QUIC報文

2.1 分層

QUIC分層是在UDP層上面疊加了自己的兩個層次——連接層和流層,具體分層如圖2-1所示。

圖2-1 QUIC分層

UDP以UDP四元組(源IP地址、源端口號、目的IP地址、目的端口號)標識,其中IP地址是為了在網絡中傳遞時尋址,端口號是為了在主機上復用時派發。

連接(Connection)是最基本的QUIC實例,一個連接代表客戶端和服務器之間的單次會話。一個QUIC連接可以使用多個連接標識識別。流(Stream)是QUIC提供給應用層的有序字節流抽象,在QUIC協議內部以流標識(Stream ID)區分,在QUIC報文中封裝為STREAM幀。

一般一個連接關聯一個UDP四元組,當本地IP變化時,綁定到新的源IP對應的UDP上。但也可以在一個UDP上復用多個QUIC連接,即在一個UDP上多路復用;或者一個QUIC連接工作在多個UDP上,比如多路QUIC,但這兩種形式都不常見。

使用QUIC的應用可以打開/關閉流、在對應流上收發數據。QUIC協議將應用的數據封裝在STREAM幀中,和QUIC協議自身的其他QUIC語義的幀封裝成QUIC報文一起發送,典型的QUIC報文如圖2-2所示。圖2-2中Flag是8位,包含了QUIC的一些標識位,CID是QUIC的連接標識(Connection ID),報文長度是可選的,PN是報文的編號(Packet Number)。

圖2-2 QUIC報文

主站蜘蛛池模板: 永仁县| 武穴市| 基隆市| 邛崃市| 稻城县| 旺苍县| 隆昌县| 高安市| 瓦房店市| 任丘市| 泽普县| 祁阳县| 辽阳市| 富顺县| 长兴县| 合阳县| 晴隆县| 深州市| 安远县| 江孜县| 凌海市| 贺兰县| 绵竹市| 凤城市| 江北区| 新昌县| 潜山县| 大关县| 融水| 禄丰县| 社旗县| 库尔勒市| 怀仁县| 兰溪市| 凤庆县| 南城县| 宁德市| 万盛区| 阿城市| 四子王旗| 博爱县|