One document matched: draft-petithuguenin-sip-outbound-fragmentation-00.txt




Network Working Group                                  M. Petit-Huguenin
Internet-Draft                                                 8x8, Inc.
Intended status: Standards Track                        December 6, 2006
Expires: June 9, 2007


Preventing Fragmentation for Client Initiated Connections in the Session
                       Initiation Protocol (SIP)
           draft-petithuguenin-sip-outbound-fragmentation-00

Status of this Memo

   By submitting this Internet-Draft, each author represents that any
   applicable patent or other IPR claims of which he or she is aware
   have been or will be disclosed, and any of which he or she becomes
   aware will be disclosed, in accordance with Section 6 of BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   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."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on June 9, 2007.

Copyright Notice

   Copyright (C) The Internet Society (2006).

Abstract

   There is cases where a Session Initiation Protocol (SIP) client can
   initiate a bidirectional UDP stream or a congestion controlled
   protocol connection to a SIP server but the SIP server cannot do the
   same in the other direction.  The server can reuse the existing
   bidirectional UDP stream or connection but cannot use a congestion
   controlled protocol connection if the client chose to use a
   bidirectional UDP stream.  This document described a method to force



Petit-Huguenin            Expires June 9, 2007                  [Page 1]

Internet-Draft           Outbound fragmentation            December 2006


   the client to initiate a congestion controlled protocol connection to
   the server.


Table of Contents

   1.  Overview of Operation . . . . . . . . . . . . . . . . . . . . . 3
   2.  UA Behavior . . . . . . . . . . . . . . . . . . . . . . . . . . 3
   3.  Edge Proxy Behavior . . . . . . . . . . . . . . . . . . . . . . 4
   4.  IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 4
   5.  Security Considerations . . . . . . . . . . . . . . . . . . . . 4
   6.  Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
   7.  Norminative References  . . . . . . . . . . . . . . . . . . . . 7
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . . . 8
   Intellectual Property and Copyright Statements  . . . . . . . . . . 9




































Petit-Huguenin            Expires June 9, 2007                  [Page 2]

Internet-Draft           Outbound fragmentation            December 2006


1.  Overview of Operation

   An UA using this specification creates flows as defined in
   [I-D.ietf-sip-outbound], with the difference that a UDP flow is
   prefered to a congestion controlled transport flow.  There is two
   cases where an UA needs to replace an UDP flow by a congestion
   controlled flow.

   The first case is when the UA uses a bidirectional UDP stream for the
   flow and the edge proxy receives a request for this UA that need a
   congestion controlled protocol.  The edge proxy sends a STUN ForceCCP
   Request over the existing UDP flow.  The UA answers the request by
   sending a ForceCCP Response and immediately creates a new flow to the
   same edge proxy over a congestion controlled transport.  The Edge
   proxy then uses this flow to send the request to the UA.  The new
   flow is temporary and will be replaced by an UDP flow after the end
   of the transaction.

   The second case is when the UA received a request over a
   bidirectional UDP stream, but needs to send the response over a
   congestion controlled transport.  The UA needs to follow the
   specification defined in
   [I-D.petithuguenin-sip-fragmentation-responses].  When the UA detects
   that the last hop must be retried with a congestion controlled
   transport, then prior to answer the request with a 6??  Congestion
   Control response, it replaces the UDP flow by a congestion controled
   transport flow.  The Edge proxy will then use the new flow to send
   the request.


2.  UA Behavior

   An UA compliant with this specification creates flows as described in
   [I-D.ietf-sip-outbound] but with a preference for flows created over
   UDP.  The UA must be ready to receive a STUN ForceCCP request on the
   same flows that are used to send the STUN Binding Request for the NAT
   binding keepalive.  When a ForceCCP Request is received the UA sends
   a ForceCCP Response to stop the retransmission and immediately
   registers on the same flow but this time by using a congestion
   controlled transport.

   When the UA receives a request that is compliant with
   [I-D.petithuguenin-sip-fragmentation-responses] and finds that the
   response needs to be sent on a congestion controlled transport, it
   then immediately registers on the same flow by using a congestion
   controlled transport, and then reject the request with a 6??
   Congestion Controlled.  This will force the edge proxy to use the
   newly created flow.



Petit-Huguenin            Expires June 9, 2007                  [Page 3]

Internet-Draft           Outbound fragmentation            December 2006


   In both cases The UA will close the transport after the end of the
   last SIP transaction carried by the transport or 5 seconds after the
   creation of the transport if no SIP transaction is is carried by this
   transport.  The UA recreates the flow over UDP just before closing
   the connection.


3.  Edge Proxy Behavior

   When an edge proxy wants to proxy a request over a congestion
   controlled transport but cannot find a flow to do it, it sends a STUN
   ForceCCP Request over a UDP flow.  If it can find a newly created
   controlled transport flow in the next 32 seconds, then it respond
   with a 408 to the request.  If a new flow is found, then the request
   is proxied over this flow.


4.  IANA Considerations

   TBD


5.  Security Considerations

   TBD


























Petit-Huguenin            Expires June 9, 2007                  [Page 4]

Internet-Draft           Outbound fragmentation            December 2006


6.  Example

    Endpoint      :       Edge     Registrar     Home
       |          :        |           |           |
       | REGISTER :        |           |           |
   F1  |------------------>| REGISTER  |           |
   F2  |          :        |==========>|           |
       |          :        |     200 R |           |
   F3  |          :  200 R |<==========|           |
   F4  |<------------------|           |           |
       | BindingRequest    |           |           |
   F5  |------------------>|           |           |
       |   BindingResponse |           |           |
   F6  |<------------------|           |           |
       |          :        |           |           |  INVITE
   F7  |          :        |           |    INVITE |<========
   F8  |  ForceCCPRequest  |<======================|
   F9  |<------------------|           |           |
       | ForceCCPResponse  |           |           |
   F10 |------------------>|           |           |
       | REGISTER :        |           |           |
   F11 |==================>| REGISTER  |           |
   F12 |          : INVITE |---------->|           |
   F13 |<==================|     200 R |           |
   F14 |          :  200 R |<----------|           |
   F15 |<==================|           |           |
       | 200 I    :        |           |           |
   F16 |==================>| 200 I     |           |
       |          :        |======================>| 200 I
       |          :        |           |           |========>
       :          :        :           :           :
       | REGISTER :        |           |           |
   F17 |------------------>| REGISTER  |           |
       |          :        |==========>|           |
       |          :        |     200 R |           |
       |          :  200 R |<==========|           |
       |<------------------|           |           |

                                 Figure 1

   F1:  The UA sends a REGISTER request over UDP to the edge proxy.
   F2:  The edge proxy proxies the REGISTER request to the registrar
      using TCP.
      The registrar sends a 200 OK response to the edge proxy.







Petit-Huguenin            Expires June 9, 2007                  [Page 5]

Internet-Draft           Outbound fragmentation            December 2006


   F4:  The edge proxy forwards the 200 OK to the UA.
   F5:  The UA sends a STUN Binding Request to the edge proxy to keep
      the binding alive.
   F6:  The edge proxy responds by sending a Binding Response to the UA.
   F7:  The home proxy receives an INVITE request.
   F8:  The home proxy queries the registrar (not shown in the diagram),
      and proxies the request to the edge proxy.
   F9:  The edge proxy finds that the request cannot be sent over the
      existing UDP flow because the packet size is higher that the MTU.
      So it sends a STUN ForceCCP Request to the UA.
   F10:  The UA sends a ForceCCP Response to acknowledge the request.
   F11:  The UA immediately creates a new flow over TCP by sending a
      REGISTER.
   F12:  The edge proxy proxies the REGISTER request to the registrar
      using TCP.
   F13:  The edge proxy now proxies the INVITE request over the newly
      created TCP flow.
      The registrar sends a 200 OK response to the edge proxy.
   F15:  The edge proxy forwards the 200 OK to the UA.
   F16:  The UA responds to the INVITE request by sending a 200 OK
      response over the TCP flow.
   F17:  After some time, a new REGISTER is sent over UDP to create a
      new flows and the TCP connection is shutdown.




























Petit-Huguenin            Expires June 9, 2007                  [Page 6]

Internet-Draft           Outbound fragmentation            December 2006


   Figure 2

    Endpoint      :       Edge     Registrar     Home
       |          :        |           |           |
       | REGISTER :        |           |           |
   F1  |------------------>| REGISTER  |           |
   F2  |          :        |---------->|           |
       |          :        |     200 R |           |
   F3  |          :  200 R |<----------|           |
   F4  |<------------------|           |           |
       |          :        |           |           |  INVITE
   F7  |          :        |           |    INVITE |<========
   F8  |          : INVITE |<======================|
   F9  |<------------------|           |           |
       | REGISTER :        |           |           |
   F10 |==================>| REGISTER  |           |
   F11 |          :        |---------->|           |
   F12 |          :        |     200 R |           |
   F13 |          :  200 R |<----------|           |
   F14 |<==================|           |           |
       | 6?? I    :        |           |           |
   F15 |------------------>|           |           |
       |          :    ACK |           |           |
   F16 |<------------------|           |           |
       |          : INVITE |           |           |
   F17 |<==================|
       | 200 I    :        |           |           |
   F18 |==================>| 200 I     |           |
   F19 |          :        |======================>| 200 I
   F20 |          :        |           |           |========>

                                 Figure 2


7.  Norminative References

   [I-D.ietf-sip-outbound]
              Jennings, C. and R. Mahy, "Managing Client Initiated
              Connections in the Session Initiation Protocol  (SIP)",
              draft-ietf-sip-outbound-05 (work in progress),
              October 2006.

   [I-D.petithuguenin-sip-fragmentation-responses]
              Petit-Huguenin, M., "Preventing IP Fragmentation in
              Responses for the Session Initiation Protocol  (SIP)",
              draft-petithuguenin-sip-fragmentation-responses-00 (work
              in progress), October 2006.




Petit-Huguenin            Expires June 9, 2007                  [Page 7]

Internet-Draft           Outbound fragmentation            December 2006


Author's Address

   Marc Petit-Huguenin
   8x8, Inc.
   3151 Jay Street
   Santa Clara, CA  95054
   US

   Phone: +1 408 654 0875
   Email: marc@8x8.com









































Petit-Huguenin            Expires June 9, 2007                  [Page 8]

Internet-Draft           Outbound fragmentation            December 2006


Full Copyright Statement

   Copyright (C) The Internet Society (2006).

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
   ENGINEERING TASK FORCE DISCLAIM 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.


Intellectual Property

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.


Acknowledgment

   Funding for the RFC Editor function is provided by the IETF
   Administrative Support Activity (IASA).





Petit-Huguenin            Expires June 9, 2007                  [Page 9]


PAFTECH AB 2003-20262026-04-23 16:09:06