Internet DRAFT - draft-thatcher-ice-renomination
draft-thatcher-ice-renomination
Network Working Group P. Thatcher
Internet-Draft H. Zhang
Intended status: Standards Track T. Brandstetter
Expires: March 23, 2017 Google
September 19, 2016
ICE Renomination: Dynamically selecting ICE candidate pairs
draft-thatcher-ice-renomination-01
Abstract
This document describes an extension to the Interactive Connectivity
Establishment (ICE) that enables ICE agents to dynamically change the
selected candidate pair of the controlled side by allowing the
controlling side to nominate different candidate pairs over time as
network conditions change.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on March 23, 2017.
Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
Thatcher, et al. Expires March 23, 2017 [Page 1]
Internet-Draft ICE Renomination September 2016
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 2
3. Renomination . . . . . . . . . . . . . . . . . . . . . . . . 2
4. "Nomination" attribute . . . . . . . . . . . . . . . . . . . 3
5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 3
6. Security Considerations . . . . . . . . . . . . . . . . . . . 3
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 3
8. Normative References . . . . . . . . . . . . . . . . . . . . 3
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 3
1. Introduction
ICE agents are either controlling or controlled. The controlling ICE
agent can unilaterally select a given candidate pair at any time.
But it cannot control what candidate pair the controlled ICE agent
selects once the controlling ICE agent has nominated a candidate pair
(with passive nomination) or nominated many candidate pairs (with
aggressive nomination), with the exception that it may nominate a
higher priority candidate pair with aggressive nomination. This
greatly limits the controlling side's options.
For example, if an ICE agent selects and nominates a candidate pair
over a cellular network, and then later connects to a Wi-Fi network
and trickles ICE candidates for the Wi-Fi network, it may wish to
select and nominate a candidate pair using Wi-Fi. If soon thereafter
the Wi-Fi network disconnects and the ICE agent wishes to select and
nominate the cellular candidate pair again, it would be unable to do
with either passive or aggressive nomination.
2. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119].
3. Renomination
We define a new ICE option called "renomination". When renomination
is signaled, aggressive nomination is disabled, and the controlled
side follows a rule of "last nomination wins". This allows the
controlling side to send nominations for new candidate pairs at any
time. The controlling side SHOULD send the new nomination until the
STUN packet is acked to ensure that the renomination was received.
Thatcher, et al. Expires March 23, 2017 [Page 2]
Internet-Draft ICE Renomination September 2016
If one side signals "renomination" and the other does not understand
it, then according to the rules of ICE, aggressive nomination is
disabled and passive nomination is used, and the controlling side
MUST NOT send more than one nomination.
4. "Nomination" attribute
To deal with out-of-order delivery of nominations, we define a new
STUN attribute: "nomination" which includes a 24-bit integer in the 3
least significant bytes of the attribute.
The controlling side MAY include such an attribute when renominating.
The controlled side MUST select the nomination with the largest value
contained in the "nomination" attribute. Any value included takes
precedence over the lack of a value.
5. IANA Considerations
This specification requests no actions from IANA.
6. Security Considerations
TODO
7. Acknowledgements
TODO
8. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
[RFC5245] Rosenberg, J., "Interactive Connectivity Establishment
(ICE): A Protocol for Network Address Translator (NAT)
Traversal for Offer/Answer Protocols", RFC 5245,
DOI 10.17487/RFC5245, April 2010,
<http://www.rfc-editor.org/info/rfc5245>.
Authors' Addresses
Thatcher, et al. Expires March 23, 2017 [Page 3]
Internet-Draft ICE Renomination September 2016
Peter Thatcher
Google
747 6th St S
Kirkland, WA 98033
USA
Email: pthatcher@google.com
Honghai Zhang
Google
747 6th St S
Kirkland, WA 98033
USA
Email: honghaiz@google.com
Taylor Brandstetter
Google
747 6th St S
Kirkland, WA 98033
USA
Email: deadbeef@google.com
Thatcher, et al. Expires March 23, 2017 [Page 4]