📄 rfc1476.txt
字号:
RFC 1476 RAP June 1993
Type 0 indicates a null (no-operation) option. It should be class
zero, but an implementation that "understands" the null option may
decline to propagate it.
Note that since an implementation may delete an option of class 1 by
simply setting its type to 0 and forwarding the route description,
class 1 does not provide any confidentiality of the content of an
option.
3.1.3 Format
The format field specifies the format of the data included after the
option header. Formats:
0 none, no data present.
1 one or more 32-bit signed integers
2 a character string, null terminated
3 one or more real numbers
4 an octet string
5 one real, followed by a character string
Format is also orthogonal to type, but a particular type is usually
only reasonably represented by one format. This allows decoding of
all option values for logging and other troubleshooting, even when
the option type is unknown. (A new unknown format will still present
a problem.)
Format 4, octet string, is to be represented in dotted-decimal byte
form when printed; it is normally an internet address.
Format 5 is intended for dimensioned parameters with the character
string giving the dimension or scale.
3.2 Metrics and Options
As much as possible, metrics are kept in the base units of bytes and
seconds, by analogy to the physics systems of MKS (meter-kilogram-
second) and CGS (centimeter-gram-second) of base units.
Bytes aren't the real primitive, the bit is. We are thus using a
multiple of 8 that isn't part of what one would come to expect from a
decimal metric system that uses the other prefixes. However, since K
(kilo) is often taken to be 1024, and M (mega) to be 1,048,576 (or
even 1,024,000) we allow this liberty.
Distance is measured in units also unique to the field. It is the
integer number of times that a datagram must be forwarded to reach
the destination. (Hop count.)
Ullmann [Page 11]
RFC 1476 RAP June 1993
3.2.1 Distance
The Distance metric counts the number of hops on a route; this is
included in the RAP route command header.
The initial distance at insertion into the RAP domain by the origin
of the route MUST be less than or equal to 2z, where z is the number
of zero bits in the route mask.
If the origin derives the route from RIP or OSPF, and the distance
exceeds 2z, the route must not be used.
When a router originates a route designed to permit aggregation, the
distance is usefully set to more than 0; this allows simple subset
aggregation without propagating small distance changes repeatedly as
the internal diameter of the described network changes.
For example, for routers designated to announce a default route for
an AD, with a 24/48 mask, the maximum initial distance is 96.
3.2.2 Delay
The Delay metric (Type = 2) measures the one-way path delay. It is
usually the sum of delays configured for the gateways and interfaces,
but might also include path segments that are actually measured.
Format is real (3), with one value. The units are seconds.
3.2.3 MTU
The MTU metric (Type = 3) measures the minimum value over the route
of the Maximum Transmission Unit, i.e., the largest IP datagram that
can be routed without resulting in fragmentation.
Format is one integer, measuring the MTU in bytes.
3.2.4 Bandwidth
The Bandwidth metric (Type = 4) measures the minimum bandwidth of the
path segments that make up the route.
Format is one real, representing bandwidth in bytes/second.
3.2.5 Origin
The origin attribute (type = 5) identifies the router that originally
inserted the route into the RAP domain. It is one of the IP
addresses of the router, format is 4.
Ullmann [Page 12]
RFC 1476 RAP June 1993
3.2.6 Target
The target attribute (type = 6) identifies a host or network toward
which the route should be propagated, regardless of proximity
filtering that would otherwise occur. This aids in the establishment
of tunnels for hosts or subnets "away from home." It can be used to
force the route to propagate all the way to the home network, or to
try to propagate a better route to a host that the origin has
established a connection (e.g., TCP) with. Note that a router can
distinguish these two cases during proximity filtering by comparing
the route described with the host or network identified by the target
option.
Format is 4.
3.2.7 Packet Cost
The packet cost metric (type = 7) measures the actual cost (to
someone) of sending data over the route. It is probably either class
3 or 0. Format is 5.
The real number is the cost in currency units/byte. Tariffs set in
packets or "segments" should be converted using the nominal (or
actual path) size. For example, Sprintnet charges for DAF
connections within its network are US$1.40/Ksegment thus for segments
of 64 bytes, the cost is 0.000021875 USD.
The string is the 3 capital letter ISO code [ISO4217] for the
currency used. Funds codes and codes XAU, XBA, XBB, XBC, XBD, and
XXX are not used.
If a route already has a packet cost in a different currency
associated with it, another instance of this option should be added.
RAP implementations MUST NOT attempt to convert the currency units
except when actually making a route selection decision. That is, the
effects of a currency conversion should never be propagated, except
for the proper effect of such a selection decision.
3.2.8 Time Cost
The time cost metric (type = 8) measures the actual cost of holding
one or more paths in the route open to send data. It is probably
either class 3 or 0. Format is 5.
The real number is the cost in currency units/second. For example,
Sprintnet charges for international connections (to typical
destinations) are US$10/hour so the cost is 0.002777778 USD.
Ullmann [Page 13]
RFC 1476 RAP June 1993
The other notes re codes used and conversions in the previous section
also apply.
3.2.9 Source Restriction
A source restriction option (type 9, format 4, class 2 or 3)
indicates that a route may only be used by datagrams from a
particular source or set of sources. The data consists of a network
or host number, and a mask to qualify it. If multiple source
restriction options are included, the restriction is the logical
union of the sources specified; i.e., any are permitted.
Source restrictions must be added to routes when the RAP system has
security filters set in the IP forwarding layer. This is necessary
to prevent datagrams from taking "better" routes that end in the
datagram being silently discarded at the filter. Note that this
propagates confidential information about the security configuration,
but only toward the net authorized to use the route if the RAP
implementation is careful about where it is propagated.
3.2.10 Destination Restriction
A destination restriction option (type 10, format 4, class 3) serves
only to provide a non-contiguous mask, the destination already having
been specified in the command header. Data is the destination
network and mask.
3.2.11 Trace
Trace (type 11, format 4, class 0) provides an indication that the
route has propagated through a particular system. This can be used
for loop detection, as well as various methods of troubleshooting.
The data is one internet address, one of the addresses of the system.
If an arriving route already carries a trace identifying this system,
and is not an update, it is discarded. If it is an update, the route
is purged.
Trace SHOULD NOT be simply added to every route traversing a system.
Rather, it should be added (if being used for loop detection) when
there is a suspicion that a loop has formed.
When the distance to a destination has increased twice in a row in a
fairly short period of time, and the number of trace options present
in the route did not increase as a result of the last update, the RAP
process should add a trace option identifying itself to the route.
Effectively, when a loop forms, one router will select itself to be a
tracer, adding itself and breaking the loop after one more turn. If
that fails for some reason, another router will add its trace. Each
Ullmann [Page 14]
RFC 1476 RAP June 1993
router thus depends in the end only on its own trace and will break
the loop, even if the other routers are using other methods, or
simply counting-out the route.
3.2.12 AUP
The AUP (Acceptable Use Policy) option (type 12, format 2, class
any), tags a route as being useable only according to the policy of a
network. This may be used to avoid traversal of the net by (for
example) commercial traffic, or to prevent un-intentional use of an
organization's internal net. (It does not provide a security barrier
in the sense of forwarding filters, but does provide cooperative
exchange of information on the useability of a net.)
The data is a domain name, probably the name of the network, although
it may be the name of another organization. E.g., the routers that
are subject to the NSF AUP might add NSF.NET as the descriptor of
that policy.
3.2.13 Public
Public (type 13, format 0, class 2 or 3) marks the route as
consisting in part of a public broadcast medium. Examples of a
public medium are direct radio broadcast or a multi-drop cable in
which other receivers, not associated with the destination may read
the traffic. I.e., a TV cable is a public medium, a LAN within an
organization is not, even if it can be easily wiretapped.
This is intended for use by cable TV providers to identify routes
that should not be used for private communications, in spite of the
attractively high bandwidth being offered.
4. Procedure
Routing information arrives in the RAP process from other peers, from
(local) static route and interface configuration, and from other
protocols (e.g., RIP). The RAP process filters out routes that are
of no interest (too detailed or too "far away" in the topology) and
builds an internal database of available routes.
From this database, it selects routes that are to be active and loads
them into the IP forwarding database.
It then advertises those routes to its peers, at a greater distance.
Ullmann [Page 15]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -