Technical Summary
This specification defines an experimental usage of the Simple
Traversal Underneath Network Address Translators (NAT) (STUN)
Protocol that discovers the presence and current behaviour of NATs
and firewalls between the STUN client and the STUN server.
Working Group Summary
The original intent was to publish this specification as Informational,
but the working group decided Experimental would be a better track in
order to more clearly convey the risky nature of attempting to
determine a NAT's behavior.
Document Quality
Two vendors are known to implement it. The IETF last call draw a number
of comments about its applicability and a number of details. My review
of them looks like they have been resolved in a reasonable way.
Personnel
Dan Wing, dwing@cisco.com is the WG shepherd and Magnus Westerlund,
magnus.westerlund@ericsson.com the responsible AD.
RFC Editor Note
Section 1, second and third paragraph:
OLD:
The primary uses envisioned for the STUN attributes included in this
draft are diagnostics and real-time tuning of applications. The
techniques possible with this usage are powerful diagnostic tools in
the hands of a network administrator or system programmer trying to
determine the causes of network failure; particularly when behavior
varies by load, destination, or other factors that may be related to
NAT behavior.
This draft also proposes experimental usage of these attributes for
real-time optimization of parameters for protocols in situations
where a publicly accessible rendezvous service is not available.
Such a use of these techniques is only possible when the results are
applied as an optimization and a reliable fallback is available in
case the NAT's behavior becomes more restrictive than determined by
the Behavior Discovery tests. One possible application is role
selection in P2P networks based on statistical experience with
establishing direct connections and diagnosing NAT behavior with a
variety of peers. The experimental question is whether such a test
is useful. If a node trying to join an overlay as a full peer when
its NAT prevents sufficient connectivity and then withdrawing is
expensive or leads to unreliable or poorly performing operation, then
even if the behavior discovery check is only "correct" 75% of the
time, its relative cheapness may make it very useful for optimizing
the behavior of the overlay network. Section 2.2 describes this
experimental application in more detail and discusses how to evaluate
its success or failure.
NEW:
The uses envisioned for the STUN attributes included in this document
are diagnostics and real-time tuning of applications. For example
determine what may work and should be tried first compared to more
expensive methods. The attributes can also be used to observe
behaviors that causes an application's communication to fail, thus
enabling better selection of methods of recovery. The STUN attributes
could also be a basis for a network technican's diagnostics tool to
observe NAT behavior.
This draft proposes experimental usage of these attributes for
^
real-time optimization of parameters for protocols in situations
where a publicly accessible rendezvous service is not available.
Such a use of these techniques is only possible when the results are
applied as an optimization and a reliable fallback is available in
case the NAT's behavior becomes more restrictive than determined by
the Behavior Discovery tests. One possible application is role
selection in P2P networks based on statistical experience with
establishing direct connections and diagnosing NAT behavior with a
variety of peers. The experimental question is whether such a test
is useful. If a node trying to join an overlay as a full peer when
its NAT prevents sufficient connectivity and then withdrawing is
expensive or leads to unreliable or poorly performing operation, then
even if the behavior discovery check is only "correct" 75% of the
time, its relative cheapness may make it very useful for optimizing
the behavior of the overlay network. Section 2.2 describes this
experimental application in more detail and discusses how to evaluate
its success or failure.
Section 2.3: Section title
OLD: Experimental Success
NEW: Experimental Goals