通用路由封裝
外觀
(重新導向自一般路由封裝)
此條目沒有列出任何參考或來源。 (2013年8月17日) |
通用路由封裝(英語: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數據包的發送序列號。
參考資料
[編輯]外部連結
[編輯]- RFCs
- RFC 1701 — Generic Routing Encapsulation (GRE) (INFORMATIONAL)
- RFC 1702 — Generic Routing Encapsulation over IPv4 networks (INFORMATIONAL)
- RFC 2784 — Generic Routing Encapsulation (GRE) (PROPOSED STANDARD - Updated by RFC 2890)
- RFC 2890 — Key and Sequence Number Extensions to GRE (PROPOSED STANDARD)
- Cisco Systems
- Generic Routing Encapsulation, Subprotocol homepage at Cisco
- Generic Routing Encapsulation (頁面存檔備份,存於網際網路檔案館), Entry in Cisco DocWiki (formerly known as the "Internetworking Technology Handbook")