⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc1753.txt

📁 著名的RFC文档,其中有一些文档是已经翻译成中文的的.
💻 TXT
📖 第 1 页 / 共 4 页
字号:
Network Working Group                                         N. ChiappaRequest for Comments: 1753                                 December 1994Category: Informational                      IPng Technical Requirements           Of the Nimrod Routing and Addressing ArchitectureStatus of this Memo   This memo provides information for the Internet community.  This memo   does not specify an Internet standard of any kind.  Distribution of   this memo is unlimited.Abstract   This document was submitted to the IETF IPng area in response to RFC   1550.  Publication of this document does not imply acceptance by the   IPng area of any ideas expressed within.  Comments should be   submitted to the big-internet@munnari.oz.au mailing list.   This document presents the requirements that the Nimrod routing and   addressing architecture has upon the internetwork layer protocol. To   be most useful to Nimrod, any protocol selected as the IPng should   satisfy these requirements. Also presented is some background   information, consisting of i) information about architectural and   design principles which might apply to the design of a new   internetworking layer, and ii) some details of the logic and   reasoning behind particular requirements.1. Introduction   It is important to note that this document is not "IPng Requirements   for Routing", as other proposed routing and addressing designs may   need different support; this document is specific to Nimrod, and   doesn't claim to speak for other efforts.   However, although I don't wish to assume that the particular designs   being worked on by the Nimrod WG will be widely adopted by the   Internet (if for no other reason, they have not yet been deployed and   tried and tested in practise, to see if they really work, an   absolutely necessary hurdle for any protocol), there are reasons to   believe that any routing architecture for a large, ubiquitous global   Internet will have many of the same basic fundamental principles as   the Nimrod architecture, and the requirements that these generate.Chiappa                                                         [Page 1]RFC 1753         Nimrod Technical Requirements for IPng    December 1994   While current day routing technologies do not yet have the   characteristics and capabilities that generate these requirements,   they also do not seem to be completely suited to routing in the   next-generation Internet. As routing technology moves towards what is   needed for the next generation Internet, the underlying fundamental   laws and principles of routing will almost inevitably drive the   design, and hence the requirements, toward things which look like the   material presented here.   Therefore, even if Nimrod is not the routing architecture of the   next-generation Internet, the basic routing architecture of that   Internet will have requirements that, while differing in detail, will   almost inevitably be similar to these.   In a similar, but more general, context, note that, by and large, the   general analysis of sections 3.1 ("Interaction Architectural Issues")   and 3.2 ("State and Flows in the Internetwork Layer") will apply to   other areas of a new internetwork layer, not just routing.   I will tackle the internetwork packet format first (which is   simpler), and then the whole issue of the interaction with the rest   of the internetwork layer (which is a much more subtle topic).2. Packet Format2.1 Packet Format Issues   As a general rule, the design philosophy of Nimrod is "maximize the   lifetime (and flexibility) of the architecture". Design tradeoffs   (i.e., optimizations) that will adversely affect the flexibility,   adaptability and lifetime of the design are not not necessarily wise   choices; they may cost more than they save. Such optimizations might   be the correct choices in a stand-alone system, where the replacement   costs are relatively small; in the global communication network, the   replacement costs are very much higher.   Providing the Nimrod functionality requires the carrying of certain   information in the packets. The design principle noted above has a   number of corollaries in specifying the fields to contain that   information.   First, the design should be "simple and straightforward", which means   that various functions should be handled by completely separate   mechanisms, and fields in the packets. It may seem that an   opportunity exists to save space by overloading two functions onto   one mechanism or field, but general experience is that, over time,   this attempt at optimization costs more, by restricting flexibility   and adaptability.Chiappa                                                         [Page 2]RFC 1753         Nimrod Technical Requirements for IPng    December 1994   Second, field lengths should be specified to be somewhat larger than   can conceivably be used; the history of system architecture is   replete with examples (processor address size being the most   notorious) where fields became too short over the lifetime of the   system. The document indicates what the smallest reasonable   "adequate" lengths are, but this is more of a "critical floor" than a   recommendation. A "recommended" length is also given, which is the   length which corresponds to the application of this principle. The   wise designer would pick this length.   It is important to now that this does *not* mean that implementations   must support the maximum value possible in a field of that size. I   imagine that system-wide administrative limits will be placed on the   maximum values which must be supported. Then, as the need arises, we   can increase the administrative limit. This allows an easy, and   completely interoperable (with no special mechanisms) path to upgrade   the capability of the network. If the maximum supported value of a   field needs to be increased from M to N, an announcement is made that   this is coming; during the interim period, the system continues to   operate with M, but new implementations are deployed; while this is   happening, interoperation is automatic, with no transition mechanisms   of any kind needed. When things are "ready" (i.e., the proportion of   old equipment is small enough), use of the larger value commences.   Also, in speaking of the packet format, you first need to distinguish   between the host-router part of the path, and the router-router part;   a format that works OK for one may not do for another.   The issue is complicated by the fact that Nimrod can be made to work,   albeit not in optimal form, with information/fields missing from the   packet in the host to "first hop router" section of the packet's   path. The missing fields and information can then be added by the   first hop router. (This capability will be used to allow deployment   and operation with unmodified IPv4 hosts, although similar techniques   could be used with other internetworking protocols.) Access to the   full range of Nimrod capabilities will require upgrading of hosts to   include the necessary information in the packets they exchange with   the routers.   Second, Nimrod currently has three planned forwarding modes (flows,   datagram, and source-routed packets), and a format that works for one   may not work for another; some modes use fields that are not used by   other modes.  The presence or absence of these fields will make a   difference.Chiappa                                                         [Page 3]RFC 1753         Nimrod Technical Requirements for IPng    December 19942.2 Packet Format Fields   What Nimrod would like to see in the internetworking packet is:   - Source and destination endpoint identification. There are several     possibilities here.     One is "UID"s, which are "shortish", fixed length fields which     appear in each packet, in the internetwork header, which contain     globally unique, topologically insensitive identifiers for either     i) endpoints (if you aren't familiar with endpoints, think of them     as hosts), or ii) multicast groups. (In the former instance, the     UID is an EID; in the latter, a "set ID", or SID. An SID is an     identifier which looks just like an EID, but it refers to a group     of endpoints. The semantics of SID's are not completely defined.)     For each of these 48 bits is adequate, but we would recommend 64     bits. (IPv4 will be able to operate with smaller ones for a while,     but eventually either need a new packet format, or the difficult     and not wholly satisfactory technique known as Network Address     Translators, which allows the contents of these fields to be only     locally unique.)     Another possibility is some shorter field, named an "endpoint     selector", or ESEL, which contains a value which is not globally     unique, but only unique in mapping tables on each end, tables which     map from the small value to a globally unique value, such as a DNS     name.     Finally, it is possible to conceive of overall networking designs     which do not include any endpoint identification in the packet at     all, but transfer it at the start of a communication, and from then     on infer it.  This alternative would have to have some other means     of telling which endpoint a given packet is for, if there are     several endpoints at a given destination. Some coordination on     allocation of flow-ids, or higher level port numbers, etc., might     do this.   - Flow identification. There are two basic approaches here, depending     on whether flows are aggregated (in intermediate switches) or not.     It should be emphasized at this point that it is not yet known     whether flow aggregation will be needed. The only reason to do it     is to control the growth of state in intermediate routers, but     there is no hard case made that either this growth will be     unmanageable, or that aggregating flows will be feasible     practically.Chiappa                                                         [Page 4]RFC 1753         Nimrod Technical Requirements for IPng    December 1994     For the non-aggregated case, a single "flow-id" field will suffice.     This *must not* use one of the two previous UID fields, as in     datagram mode (and probably source-routed mode as well) the flow-id     will be over-written during transit of the network. It could most     easily be constructed by adding a UID to a locally unique flow-id,     which will provide a globally unique flow-id. It is possible to use     non-globally unique flow-ids, (which would allow a shorter length     to this field), although this would mean that collisions would     result, and have to be dealt with. An adequate length for the local     part of a globally unique flow-id would be 12 bits (which would be     my "out of thin air" guess), but we recommend 32. For a non-     globally unique flow-id, 24 bits would be adequate, but I recommend     32.     For the aggregated case, three broad classes of mechanism are     possible.      - Option 1: The packet contains a sequence (sort of like a source        route) of flow-ids. Whenever you aggregate or deaggregate, you        move along the list to the next one. This takes the most space,        but is otherwise the least work for the routers.      - Option 2: The packet contains a stack of flow-ids, with the

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -