分享
 
 
 

RFC2784 - Generic Routing Encapsulation (GRE)

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

Network Working Group D. Farinacci

Request for Comments: 2784 T. Li

Category: Standards Track Procket Networks

S. Hanks

Enron Communications

D. Meyer

Cisco Systems

P. Traina

Juniper Networks

March 2000

Generic Routing Encapsulation (GRE)

Status of this Memo

This document specifies an Internet standards track protocol for the

Internet community, and requests discussion and suggestions for

improvements. Please refer to the current edition of the "Internet

Official Protocol Standards" (STD 1) for the standardization state

and status of this protocol. Distribution of this memo is unlimited.

Copyright Notice

Copyright (C) The Internet Society (2000). All Rights Reserved.

Abstract

This document specifies a protocol for encapsulation of an arbitrary

network layer protocol over another arbitrary network layer protocol.

1. IntrodUCtion

A number of different proposals [RFC1234, RFC1226] currently exist

for the encapsulation of one protocol over another protocol. Other

types of encapsulations [RFC1241, RFC1479] have been proposed for

transporting IP over IP for policy purposes. This memo describes a

protocol which is very similar to, but is more general than, the

above proposals. In attempting to be more general, many protocol

specific nuances have been ignored. The result is that this proposal

may be less suitable for a situation where a specific "X over Y"

encapsulation has been described. It is the attempt of this protocol

to provide a simple, general purpose mechanism which reduces the

problem of encapsulation from its current O(n^2) size to a more

manageable size. This memo purposely does not address the issue of

when a packet should be encapsulated. This memo acknowledges, but

does not address problems such as mutual encapsulation [RFC1326].

In the most general case, a system has a packet that needs to be

encapsulated and delivered to some destination. We will call this

the payload packet. The payload is first encapsulated in a GRE

packet. The resulting GRE packet can then be encapsulated in some

other protocol and then forwarded. We will call this outer protocol

the delivery protocol. The algorithms for processing this packet are

discussed later.

Finally this specification describes the intersection of GRE

currently deployed by multiple vendors.

The keyWords MUST, MUST NOT, MAY, OPTIONAL, REQUIRED, RECOMMENDED,

SHALL, SHALL NOT, SHOULD, SHOULD NOT are to be interpreted as defined

in RFC2119 [RFC2119].

2. Structure of a GRE Encapsulated Packet

A GRE encapsulated packet has the form:

---------------------------------

Delivery Header

---------------------------------

GRE Header

---------------------------------

Payload packet

---------------------------------

This specification is generally concerned with the structure of the

GRE header, although special consideration is given to some of the

issues surrounding IPv4 payloads.

2.1. GRE Header

The GRE packet header has the form:

0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

C Reserved0 Ver Protocol Type

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Checksum (optional) Reserved1 (Optional)

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

2.2. Checksum Present (bit 0)

If the Checksum Present bit is set to one, then the Checksum and the

Reserved1 fields are present and the Checksum field contains valid

information. Note that a compliant implementation MUST accept and

process this field.

2.3. Reserved0 (bits 1-12)

A receiver MUST discard a packet where any of bits 1-5 are non-zero,

unless that receiver implements RFC1701. Bits 6-12 are reserved for

future use. These bits MUST be sent as zero and MUST be ignored on

receipt.

2.3.1. Version Number (bits 13-15)

The Version Number field MUST contain the value zero.

2.4. Protocol Type (2 octets)

The Protocol Type field contains the protocol type of the payload

packet. These Protocol Types are defined in [RFC1700] as "ETHER

TYPES" and in [ETYPES]. An implementation receiving a packet

containing a Protocol Type which is not listed in [RFC1700] or

[ETYPES] SHOULD discard the packet.

2.5. Checksum (2 octets)

The Checksum field contains the IP (one's complement) checksum sum of

the all the 16 bit words in the GRE header and the payload packet.

For purposes of computing the checksum, the value of the checksum

field is zero. This field is present only if the Checksum Present bit

is set to one.

2.6. Reserved1 (2 octets)

The Reserved1 field is reserved for future use, and if present, MUST

be transmitted as zero. The Reserved1 field is present only when the

Checksum field is present (that is, Checksum Present bit is set to

one).

3. IPv4 as a Payload

When IPv4 is being carried as the GRE payload, the Protocol Type

field MUST be set to 0x800.

3.1. Forwarding Decapsulated IPv4 Payload Packets

When a tunnel endpoint decapsulates a GRE packet which has an IPv4

packet as the payload, the destination address in the IPv4 payload

packet header MUST be used to forward the packet and the TTL of the

payload packet MUST be decremented. Care should be taken when

forwarding such a packet, since if the destination address of the

payload packet is the encapsulator of the packet (i.e., the other end

of the tunnel), looping can occur. In this case, the packet MUST be

discarded.

4. IPv4 as a Delivery Protocol

The IPv4 protocol 47 [RFC1700] is used when GRE packets are

enapsulated in IPv4. See [RFC1122] for requirements relating to the

delivery of packets over IPv4 networks.

5. Interoperation with RFC1701 Compliant Implementations

In RFC1701, the field described here as Reserved0 contained a number

of flag bits which this specification deprecates. In particular, the

Routing Present, Key Present, Sequence Number Present, and Strict

Source Route bits have been deprecated, along with the Recursion

Control field. As a result, the GRE header will never contain the

Key, Sequence Number or Routing fields specified in RFC1701.

There are, however, existing implementations of RFC1701. The

following sections describe correct interoperation with such

implementations.

5.1. RFC1701 Compliant Receiver

An implementation complying to this specification will transmit the

Reserved0 field set to zero. An RFC1701 compliant receiver will

interpret this as having the Routing Present, Key Present, Sequence

Number Present, and Strict Source Route bits set to zero, and will

not eXPect the RFC1701 Key, Sequence Number or Routing fields to be

present.

5.2. RFC1701 Compliant Transmitter

An RFC1701 transmitter may set any of the Routing Present, Key

Present, Sequence Number Present, and Strict Source Route bits set to

one, and thus may transmit the RFC1701 Key, Sequence Number or

Routing fields in the GRE header. As stated in Section 5.3, a packet

with non-zero bits in any of bits 1-5 MUST be discarded unless the

receiver implements RFC1701.

6. Security Considerations

Security in a network using GRE should be relatively similar to

security in a normal IPv4 network, as routing using GRE follows the

same routing that IPv4 uses natively. Route filtering will remain

unchanged. However packet filtering requires either that a firewall

look inside the GRE packet or that the filtering is done on the GRE

tunnel endpoints. In those environments in which this is considered

to be a security issue it may be desirable to terminate the tunnel at

the firewall.

7. IANA Considerations

This section considers the assignment of additional GRE Version

Numbers and Protocol Types.

7.1. GRE Version Numbers

This document specifies GRE version number 0. GRE version number 1 is

used by PPTP [RFC2637]. Additional GRE version numbers are assigned

by IETF Consensus as defined in RFC2434 [RFC2434].

7.2. Protocol Types

GRE uses an ETHER Type for the Protocol Type. New ETHER TYPES are

assigned by Xerox Systems Institute [RFC1700].

8. Acknowledgments

This document is derived from the original ideas of the authors of

RFC1701 and RFC1702. Hitoshi Asaeda, Scott Bradner, Randy Bush,

Brian Carpenter, Bill Fenner, Andy Malis, Thomas Narten, Dave Thaler,

Tim Gleeson and others provided many constructive and insightful

comments.

9. Appendix -- Known Issues

This document specifies the behavior of currently deployed GRE

implementations. As such, it does not attempt to address the

following known issues:

o Interaction Path MTU Discovery (PMTU) [RFC1191]

Existing implementations of GRE, when using IPv4 as the Delivery

Header, do not implement Path MTU discovery and do not set the

Don't Fragment bit in the Delivery Header. This can cause large

packets to become fragmented within the tunnel and reassembled at

the tunnel exit (independent of whether the payload packet is using

PMTU). If a tunnel entry point were to use Path MTU discovery,

however, that tunnel entry point would also need to relay ICMP

unreachable error messages (in particular the "fragmentation needed

and DF set" code) back to the originator of the packet, which is

not a requirement in this specification. Failure to properly relay

Path MTU information to an originator can result in the following

behavior: the originator sets the don't fragment bit, the packet

gets dropped within the tunnel, but since the originator doesn't

receive proper feedback, it retransmits with the same PMTU, causing

subsequently transmitted packets to be dropped.

o IPv6 as Delivery and/or Payload Protocol

This specification describes the intersection of GRE currently

deployed by multiple vendors. IPv6 as delivery and/or payload

protocol is not included in the currently deployed versions of GRE.

o Interaction with ICMP

o Interaction with the Differentiated Services Architecture

o Multiple and Looping Encapsulations

10. REFERENCES

[ETYPES] FTP://ftp.isi.edu/in-notes/iana/assignments/ethernet-

numbers

[RFC1122] Braden, R., "Requirements for Internet hosts -

communication layers", STD 3, RFC1122, October 1989.

[RFC1191] Mogul, J. and S. Deering, "Path MTU Discovery", RFC1191,

November 1990.

[RFC1226] Kantor, B., "Internet Protocol Encapsulation of AX.25

Frames", RFC1226, May 1991.

[RFC1234] Provan, D., "Tunneling IPX Traffic through IP Networks",

RFC1234, June 1991.

[RFC1241] Woodburn, R. and D. Mills, "Scheme for an Internet

Encapsulation Protocol: Version 1", RFC1241, July 1991.

[RFC1326] Tsuchiya, P., "Mutual Encapsulation Considered Dangerous",

RFC1326, May 1992.

[RFC1479] Steenstrup, M., "Inter-Domain Policy Routing Protocol

Specification: Version 1", RFC1479, July 1993.

[RFC1700] Reynolds, J. and J. Postel, "Assigned Numbers", STD 2, RFC

1700, October 1994.

[RFC1701] Hanks, S., Li, T., Farinacci, D. and P. Traina, "Generic

Routing Encapsulation", RFC1701, October 1994.

[RFC1702] Hanks, S., Li, T., Farinacci, D. and P. Traina, "Generic

Routing Encapsulation over IPv4 networks", RFC1702,

October 1994.

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate

Requirement Levels", BCP 14, RFC2119, March, 1997.

[RFC2408] Maughan, D., Schertler, M., Schneider, M. and J. Turner,

"Internet Security Association and Key Management Protocol

(ISAKMP)", RFC2408, November 1998.

[RFC2434] Narten, T. and H. Alvestrand, "Guidelines for Writing an

IANA Considerations Section in RFCs", BCP 26, RFC2434,

October, 1998.

[RFC2637] Hamzeh, K., et al., "Point-to-Point Tunneling Protocol

(PPTP)", RFC2637, July, 1999.

11. Authors' Addresses

Dino Farinacci

Procket Networks

3850 No. First St., Ste. C

San Jose, CA 95134

EMail: dino@procket.com

Tony Li

Procket Networks

3850 No. First St., Ste. C

San Jose, CA 95134

Phone: +1 408 954 7903

Fax: +1 408 987 6166

EMail: tony1@home.net

Stan Hanks

Enron Communications

EMail: stan_hanks@enron.net

David Meyer

Cisco Systems, Inc.

170 Tasman Drive

San Jose, CA, 95134

EMail: dmm@cisco.com

Paul Traina

Juniper Networks

EMail: pst@juniper.net

12. Full Copyright Statement

Copyright (C) The Internet Society (2000). All Rights Reserved.

This document and translations of it may be copied and furnished to

others, and derivative works that comment on or otherwise explain it

or assist in its implementation may be prepared, copied, published

and distributed, in whole or in part, without restriction of any

kind, provided that the above copyright notice and this paragraph are

included on all such copies and derivative works. However, this

document itself may not be modified in any way, such as by removing

the copyright notice or references to the Internet Society or other

Internet organizations, except as needed for the purpose of

developing Internet standards in which case the procedures for

copyrights defined in the Internet Standards process must be

followed, or as required to translate it into languages other than

English.

The limited permissions granted above are perpetual and will not be

revoked by the Internet Society or its successors or assigns.

This document and the information contained herein is provided on an

"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING

TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING

BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION

HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF

MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgement

Funding for the RFCEditor function is currently provided by the

Internet Society.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有