rfc2745.txt
来自「RFC 的详细文档!」· 文本 代码 · 共 1,292 行 · 第 1/4 页
TXT
1,292 行
where they are, that may have caused the performance problem.
5.6. Crossing "Legacy" RSVP Routers
Since this diagnosis facility was developed and added to RSVP after a
number of RSVP implementations were in place, it is possible, or even
likely, that when performing RSVP diagnosis, one may encounter one or
more RSVP-capable nodes that do not understand diagnostic messages
and drop them. When this happens, the invoking client will get no
response from its requests.
One way to by-pass such "legacy" RSVP nodes is to perform RSVP
diagnosis repeatedly, guided by information from traceroute, or
mtrace in case of multicast. When an RSVP diagnostic query times out
(see next section), one may first use traceroute to get the list of
nodes along the path, and then gradually increase the value of Max-
RSVP-hops field in the DREQ message, starting from a low value until
one no longer receives a response. One can then try RSVP diagnosis
again by starting with the first node (which is further upstream
towards the sender) after the unresponding one.
There are two problem with the method mentioned above in the case of
unicast sessions. Both problems are related to the fact that
traceroute information provides the path from the requester to the
sender. The first problem is that the LAST-HOP may not be on the path
from the requester to the sender. In this case we can get information
only from the portion of the path from the LAST-HOP to the sender
which intersects with the path from the requester to the sender. If
routers that are not on the intersection of the two paths don't have
PATH state for the session being diagnosed then they will reply with
R-error=0x01. The requester can overcome this problem by sending a
DREQ to every router on the path (from itself to the sender) until it
reaches the first router that belongs to the path from the sender to
the LAST-HOP.
Terzis, et al. Standards Track [Page 18]
RFC 2745 RSVP Diagnostic Messages January 2000
The second problem is that traceroute provides the path from the
requester to the sender which, due to routing asymmetries, may be
different than the path traffic from the sender to the LAST-HOP uses.
There is (at least) one case where this asymmetry will cause the
diagnosis to fail. We present this case below.
Downstream Path Sender
__ __ __ __
Receiver +------| |<------| |<-- ...---| |-----| |
__ __ / |__| |__| |__| |__|
| |--....--|X |_/ ^
|__| |__| \ Router B |
Black \ __ |
Hole +----->| |---->---+
|__| Upstream Path
Router A
Figure 2
Here the first hop upstream of the black hole is different on the
upstream path and the downstream path. Traceroute will indicate
router A as the previous hop (instead of router B which is the right
one). Sending a DREQ to router A will result in A responding with R-
error 0x01 (No PATH State). If the two paths converge again then the
requester can use the solution proposed above to get any (partial)
information from the rest of the path.
We don't have, for the moment, any complete solutions for the
problematic scenarios described here.
6. Comments on Diagnostic Client Implementation.
Following the design principle that nodes in the network should not
hold more than necessary state, RSVP nodes are responsible only for
forwarding Diagnostic messages and filling DIAG_RESPONSE objects.
Additional diagnostic functionality should be carried out by the
diagnostic clients. Furthermore, if the diagnostic function is
invoked from a third-party host, we should not require that host be
running an RSVP daemon to perform the function. Below we sketch out
the basic functions that a diagnostic client daemon should carry out.
1. Take input from the user about the session to be diagnosed, the
last-hop and the sender address, the Max-RSVP-hops, and
possibly the DIAG_SELECT list, create a DREQ message and send
to the LAST-HOP RSVP node using raw IP message with protocol
number 46 (RSVP). If the user specified that the response
should be sent hop-by-hop include an empty ROUTE object to the
Terzis, et al. Standards Track [Page 19]
RFC 2745 RSVP Diagnostic Messages January 2000
DREQ message sent. Set the Path_MTU to the smaller of the user
request and the MTU of the link through which the DREQ will be
sent.
The port of the UDP socket on which the Diagnostic Client is
listening for replies should be included in the Requester
FILTER_SPEC object.
2. Set a retransmission timer, waiting for the reply (one or more
DREP messages). Listen to the specified UDP port for responses
from the LAST-HOP RSVP node.
The LAST-HOP RSVP node, upon receiving DREP messages, sends
them to the Diagnostic Client as UDP packets, using the port
supplied in the Requester FILTER_SPEC object.
3. Upon receiving a DREP message to an outstanding diagnostic
request, the client should clear the retransmission timer,
check to see if the reply contains the complete result of the
requested diagnosis. If so, it should pass the result up to
the invoking entity immediately.
4. Reassemble DREP fragments. If the first reply to an
outstanding diagnostic request contains only a fragment of the
expected result, the client should set up a reassembly timer in
a way similar to IP packet reassembly timer. If the timer goes
off before all fragments arrive, the client should pass the
partial result to the invoking entity.
5. Use retransmission and reassembly timers to gracefully handle
packet losses and reply fragment scenarios.
In the absence of response to the first diagnostic request, a
client should retransmit the request a few times. If all the
retransmissions also fail, the client should invoke traceroute
or mtrace to obtain the list of hops along the path segment to
be diagnosed, and then perform an iteration of diagnosis with
increasing hop count as suggested in Section 5.6 in order to
cross RSVP-capable but diagnosis-incapable nodes.
6. If all the above efforts fail, the client must notify the
invoking entity.
Terzis, et al. Standards Track [Page 20]
RFC 2745 RSVP Diagnostic Messages January 2000
7. Security Considerations
RSVP Diagnostics, as any other diagnostic tool, can be a security
threat since it can reveal possibly sensitive RSVP state information
to unwanted third parties.
We feel that the threat is minimal, since as explained in the
Introduction Diagnostics messages produce no side-effects and
therefore they cannot change RSVP state in the nodes. In this respect
RSVP Diagnostics is less a security threat than other diagnostic
tools and protocols such as SNMP.
Furthermore, processing of Diagnostic messages can be disabled if it
is felt that is a security threat.
8. Acknowledgments
The idea of developing a diagnostic facility for RSVP was first
suggested by Mark Handley of ACIRI. Many thanks to Lee Breslau of
AT&T Labs and John Krawczyk of Nortel Networks for their valuable
comments on the first draft of this memo. Lee Breslau, Bob Braden,
and John Krawczyk contributed further comments after March 1996 IETF.
Steven Berson provided valuable comments on various drafts of the
memo. Tim Gleeson contributed an extensive list of editorial
comments. We would also like to acknowledge Intel for providing a
research grant as a partial support for this work. Subramaniam
Vincent did most of this work while a graduate research assistant at
the USC Information Sciences Institute (ISI).
9. References
[RSVP] Braden, R., Zhang, L., Berson, S., Herzog, S. and S. Jamin,
"Resource ReserVation Protocol -- Version 1 Functional
Specification", RFC 2205, September 1997.
[RSVPTUN] Terzis, A., Krawczyk, J., Wroclawski, J. and L. Zhang,
"RSVP Operation Over IP Tunnels", RFC 2746, January 2000.
Terzis, et al. Standards Track [Page 21]
RFC 2745 RSVP Diagnostic Messages January 2000
10. Authors' Addresses
Andreas Terzis
UCLA
4677 Boelter Hall
Los Angeles, CA 90095
Phone: 310-267-2190
EMail: terzis@cs.ucla.edu
Bob Braden
USC Information Sciences Institute
4676 Admiralty Way
Marina del Rey, CA 90292
Phone: 310 822-1511
EMail: braden@isi.edu
Subramaniam Vincent
Cisco Systems
275, E Tasman Drive, MS SJC04/2/1
San Jose, CA 95134
Phone: 408 525 3474
EMail: svincent@cisco.com
Lixia Zhang
UCLA
4531G Boelter Hall
Los Angeles, CA 90095
Phone: 310-825-2695
EMail: lixia@cs.ucla.edu
Terzis, et al. Standards Track [Page 22]
RFC 2745 RSVP Diagnostic Messages January 2000
10. 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 RFC Editor function is currently provided by the
Internet Society.
Terzis, et al. Standards Track [Page 23]
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?