通用路由封裝

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書

通用路由封裝(英語:Generic Routing Encapsulation,縮寫:GRE)是一種可以在虛擬點對點鏈路中封裝多種網絡層協議的隧道協議。由思科系統開發,在RFC 2784中定義。


協議棧舉例[編輯]

OSI模型分層 協議
5. 會話層 X.225
4. 傳輸層 UDP
3. 網絡層 (GRE封裝) IPv6
封裝 GRE
3. 網絡層 IPv4
2. 數據鏈路層 以太網
1. 物理層 以太物理層

從上面的圖表可以看出,協議封裝(非特指GRE)打破了OSI模型中定義的分層。這可以被看成兩個不同協議棧中間的分割器,一個承載另一個。


報文頭[編輯]

GRE報文頭結構如下圖所示。[最新的RFC 2784 && RFC 2890]

Bits 0–3 4–12 13–15 16–31
C K S Reserved1 Version Protocol Type
Checksum (optional) Reserved2
Key (optional)
Sequence Number (optional)
  • C:校驗碼標記位,標為1為代表啟用校驗碼。
  • K:鍵碼標記位,標為1為代表啟用鍵碼。
  • S:序列號標記位,標為1為代表啟用序列號。
  • Reserved1、Reserved2:預留,默認為填0。
  • Version:版本號,默認值為0。
  • Protocol Type:負載得網絡層以太類型
  • Checksum:校驗碼,C位啟用時可用。為GRE頭與負載的校驗碼。
  • Key:鍵碼,K位啟用時可用。特定用語所需的鍵值。
  • Sequence Number,序列號,S位啟用時可用。為GRE數據包的發送序列號。

參考資料[編輯]

外部連結[編輯]