From b836fbc640c4bcb8d499b63c27e3afb0512b7998 Mon Sep 17 00:00:00 2001 From: Peter Saint-Andre Date: Wed, 18 Feb 2009 02:37:01 +0000 Subject: [PATCH] 0.34 git-svn-id: file:///home/ksmith/gitmigration/svn/xmpp/trunk@2750 4b5297f7-1745-476d-ba37-a9c6900126ab --- xep-0166.xml | 113 ++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 90 insertions(+), 23 deletions(-) diff --git a/xep-0166.xml b/xep-0166.xml index 97f4c88e..73534e54 100644 --- a/xep-0166.xml +++ b/xep-0166.xml @@ -27,6 +27,12 @@ &robmcqueen; &seanegan; &hildjj; + + 0.34 + 2009-02-17 + psa +

Clarified the definitions and conformance requirements for datagram and streaming transports; tightened the security requirements regarding the initiator and responder attributes; updated examples to reflect changes to XEP-0176.

+
0.33 2008-12-18 @@ -354,7 +360,7 @@ Romeo Juliet initiator='romeo@montague.lit/orchard' sid='a73sjjvkla37jfea'> - + @@ -372,7 +378,7 @@ Romeo Juliet responder='juliet@capulet.lit/balcony' sid='a73sjjvkla37jfea'> - + @@ -415,7 +421,32 @@ Romeo Juliet - + + + + @@ -443,18 +474,17 @@ Romeo Juliet - + + type='host'/> @@ -537,7 +567,7 @@ Romeo Juliet Transport Method - The method for establishing data stream(s) between entities. Possible transports might include ICE-UDP, ICE-TCP, Raw UDP, inband data, etc. This is the 'how' of the session. In Jingle XML syntax this is the namespace of the &TRANSPORT; element. The transport method defines how to transfer bits from one host to another. Each transport method MUST specify whether it is datagram (thus suitable for applications where some packet loss is tolerable) or streaming (thus suitable for applications where packet loss is not tolerable). + The method for establishing data stream(s) between entities. Possible transports might include ICE-UDP, ICE-TCP, Raw UDP, inband data, etc. This is the 'how' of the session. In Jingle XML syntax this is the namespace of the &TRANSPORT; element. The transport method defines how to transfer bits from one host to another. Each transport method MUST specify whether it is "datagram" or "streaming". @@ -663,7 +693,32 @@ PENDING o----------------------+ | - + + + + @@ -777,18 +832,17 @@ PENDING o----------------------+ | - + + type='host'/> @@ -995,7 +1049,7 @@ PENDING o----------------------+ | initiator - The full JID of the entity that has initiated the session flow (which can be different from the 'from' address on the IQ-set). + The full JID of the entity that has initiated the session flow. This can be different from the 'from' address on the IQ-set of the session-initiate message (e.g., to handle certain interactions involving call managers, soft switches, and media relays); however, if the 'initiator' and 'from' values are different then the responder MUST NOT interact with the 'initiator' JID unless it trusts the 'initiator' JID or trusts the 'from' JID to authorize the 'initiator' JID to act on its behalf. REQUIRED @@ -1175,6 +1229,18 @@ PENDING o----------------------+ | + +

Jingle defines two transport types.

+ +

A datagram transport has one or more components with which to exchange packets with UDP-like behavior. Packets might be of arbitrary length, might be received out of order, and might not be received at all (i.e., the transport is lossy). Each component is assigned a string identifier and has a maximum packet length.

+

Applications compatible with datagram transports MUST specify how many components are necessary, what identifier to assign each component, and how each component will be used.

+
+ +

A streaming transport has one or more components with which to exchange bidirectional bytestreams with TCP-like behavior. Bytes are received reliably and in order, and applications MUST NOT rely on a stream being chunked in any specific way. Each component is assigned a string identifier and has a maximum packet length.

+

Applications compatible with stream transports MUST specify how many components are necessary, what identifier to assign each component, and what data shall be exchanged over the transport.

+
+
+

The Jingle-specific error conditions are as follows. These condition elements are qualified by the 'urn:xmpp:jingle:errors:0' namespace &VNOTE;.

@@ -1237,6 +1303,7 @@ PENDING o----------------------+ |
  • A &DESCRIPTION; element and associated semantics for representing the application format.
  • If and how the application format can be mapped to the Session Description Protocol, including the appropriate SDP media type (see Section 8.2.1 of RFC 4566).
  • Whether the media data for the application format shall be sent over a streaming transport method or a datagram transport method (or, if both, which is preferred).
  • +
  • If the chosen transport handles "components", define how the components shall be identified and assigned.
  • Exactly how the media data is to be sent and received over a streaming or datagram transport.
  • @@ -1246,7 +1313,7 @@ PENDING o----------------------+ |
  • How successful transport negotiation occurs.
  • A &TRANSPORT; element and associated semantics for representing the transport method.
  • Whether the transport is a streaming method or a datagram method.
  • -
  • If and how the transport handles "components" (e.g., for the Real Time Control Protocol).
  • +
  • If the transport supports multiple components.