[dccp] New revision of The DCCP Service Code

2008-02-18 Thread Gorry Fairhurst

Dear all,

I've just posted a new revision of the Service Codes draft. This version 
contains the result of some discussion on the IANA procedures and some 
editorial work to prepare this for a WGLC.


I'd appreciate inputs from those interested in the IANA procedures to 
help determine if the text reflects the new procedures intended for DCCP 
- this change should ideally track the changes proposed for UDP, TCP, 
etc - but also needs to clarify some of the things presented in RFC 4340.


I hope the draft will appear soon,

Best wishes,

Gorry
(as a document author)


[dccp] I-D Action:draft-ietf-dccp-simul-open-00.txt

2008-02-18 Thread Internet-Drafts
A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the Datagram Congestion Control Protocol Working 
Group of the IETF.


Title   : DCCP Simultaneous-Open Technique to Facilitate 
NAT/Middlebox Traversal
Author(s)   : G. Fairhurst, G. Renker
Filename: draft-ietf-dccp-simul-open-00.txt
Pages   : 25
Date: 2008-02-18

This document specifies an update to the Datagram Congestion Control
Protocol (DCCP), a connection-oriented and datagram-based transport
protocol.

The update assists DCCP applications which need to communicate
through one or more middleboxes (e.g.  Network Address Translators or
firewalls), where establishing necessary middlebox state requires
peering endpoints to initiate communication in a near-simultaneous
manner.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-dccp-simul-open-00.txt

To remove yourself from the I-D Announcement list, send a message to
[EMAIL PROTECTED] with the word unsubscribe in the body of 
the message.
You can also visit https://www1.ietf.org/mailman/listinfo/I-D-announce
to change your subscription settings.

Internet-Drafts are also available by anonymous FTP. Login with the 
username anonymous and a password of your e-mail address. After 
logging in, type cd internet-drafts and then
get draft-ietf-dccp-simul-open-00.txt.

A list of Internet-Drafts directories can be found in
http://www.ietf.org/shadow.html
or ftp://ftp.ietf.org/ietf/1shadow-sites.txt

Internet-Drafts can also be obtained by e-mail.

Send a message to:
[EMAIL PROTECTED]
In the body type:
FILE /internet-drafts/draft-ietf-dccp-simul-open-00.txt.

NOTE:   The mail server at ietf.org can return the document in
MIME-encoded form by using the mpack utility.  To use this
feature, insert the command ENCODING mime before the FILE
command.  To decode the response(s), you will need munpack or
a MIME-compliant mail reader.  Different MIME-compliant mail readers
exhibit different behavior, especially when dealing with
multipart MIME messages (i.e. documents which have been split
up into multiple messages), so check your local documentation on
how to manipulate these messages.

Below is the data which will enable a MIME compliant mail reader
implementation to automatically retrieve the ASCII version of the
Internet-Draft.
ftp://ftp.ietf.org/internet-drafts/draft-ietf-dccp-simul-open-00.txt



Re: [dccp] draft-phelan-dccp-natencap-00.txt

2008-02-18 Thread Phelan, Tom
Hi Colin,

So there are two independent threads to your comment below -- one, is
what DCCP-NAT is trying to achieve worthwhile?  And two, what's the best
way to go about it?

On the first issue, I'd love to hear your detailed thinking.  What got
me thinking seriously about the need for DCCP-NAT was
draft-iab-protocol-success.  One of the factors for initial success that
it points out is incremental deployment.  DCCP-RAW doesn't have that.
For DCCP-RAW to be useable in the general Internet, it requires entities
that have nothing to gain from DCCP deployment to make changes (the NAT
vendors).  Some people argue that there are some market pressures that
could pull the NAT vendors to support DCCP, but I see these scenarios as
having slim chance of success.

It didn't seem to me to be too difficult to define a UDP-encapsulation
for DCCP that would be supported by NATs, and the potential benefit of
that support seems much greater than the effort to me.  Some of these
benefits seem very near-term to me.

For example, it's currently very difficult for me (and most other people
too, I think) to offer a DCCP demo application that can be accessed by a
large public.  I have no easy access to a host outside of a NAT on which
I can run arbitrary code.  On the other hand, I have no problem finding
hosts behind NATs on which I can do absolutely anything I desire.  So
with DCCP-NAT it's much easier to expand the group of people
experimenting with DCCP and also expand the opportunities for
interactions among the various groups.

Of course just having DCCP-NAT will hardly be the one thing that breaks
DCCP into wild (or even initial) success, but I do believe it will make
early experimentation easier and will be necessary (but not sufficient)
for eventual initial success.

As far as the second issue, I'll put that in another e-mail.

Tom P.

 -Original Message-
 From: Colin Perkins [mailto:[EMAIL PROTECTED]
 Sent: Sunday, February 17, 2008 9:57 AM
 To: Phelan, Tom
 Cc: Ian McDonald; 'dccp' working group
 Subject: Re: [dccp] draft-phelan-dccp-natencap-00.txt
 
 Hi,
 
 On 14 Feb 2008, at 20:13, Phelan, Tom wrote:
  It's definitely my intention that DCCP-NAT happens in the end
  nodes.  It
  isn't intended to be some middlebox intercepting a DCCP stream and
  converting it.  The end nodes originate the packets with DCCP-NAT
  encapsulation.  I'll try to make that more clear in the next
revision.
 
  Nice to hear about NAT for DCCP(-RAW) in Linux.  To expand a bit on
  the
  above paragraph, I wouldn't expect DCCP-NAT in Linux to be
implemented
  below the DCCP layer as I imagine NAT for DCCP is.  In my view, the
  encapsulation to use (NAT, RAW, IPv4, IPv6) is chosen by the
  application
  and implemented (mostly) within the DCCP layer.
 
 Allowing the application to choose runs into connectivity problems
 when some applications support the UDP encapsulation, and some do
 not. If we're going to define a UDP encapsulation - and it's not at
 all clear to me that such a thing is a good idea - then I'd recommend
 that we do so in a way that it can be done by the DCCP stack,
 transparently to the applications, with a well-defined order for
 trying native vs. encapsulated connection requests.
 
 --
 Colin Perkins
 http://csperkins.org/
 



Re: [dccp] draft-phelan-dccp-natencap-00.txt

2008-02-18 Thread Phelan, Tom
Hi Colin,

On the second issue in your e-mail, whether the NAT traversal mode of
DCCP should be transparent to applications or not:  There were a few
issues that drove me towards application visibility.

I felt that applications would want to know directly that NAT traversal
mode was available or not and that it would be used or not.  This is
similar to why I perceive TLS is more popular with apps than IPsec.
Apps could migrate to IPsec without making changes, yet they seem to
prefer TLS.  There are perhaps many reasons for this, but I think one of
them is because TLS gives them more visible and direct control over
what's going on.

Perhaps this thinking doesn't apply here -- if NAT traversal mode were
widely available in DCCP implementations and the negotiation to choose a
mode was efficient then apps wouldn't care.  But my initial take was
that the added complexity and the likely time involved in settling on an
encapsulation (if your first guess was wrong) were enough disadvantages
to argue for the no-negotiation approach.

Another issue with automatic negotiation is that apps that used another
signaling protocol to rendezvous (such as SIP/SDP) would need to carry
info for all encaps, even when they knew they needed only one (they'd
need to carry the UDP port of the DCCP-NAT service, plus the DCCP port).
How big an issue this is, since we're at the very early stages of
defining any of these protocols, is debatable.

The case isn't absolute though, so I'm perfectly willing to listen to
counterarguments.

Tom P.

 -Original Message-
 From: Colin Perkins [mailto:[EMAIL PROTECTED]
 Sent: Sunday, February 17, 2008 9:57 AM
 To: Phelan, Tom
 Cc: Ian McDonald; 'dccp' working group
 Subject: Re: [dccp] draft-phelan-dccp-natencap-00.txt
 
 Hi,
 
 On 14 Feb 2008, at 20:13, Phelan, Tom wrote:
  It's definitely my intention that DCCP-NAT happens in the end
  nodes.  It
  isn't intended to be some middlebox intercepting a DCCP stream and
  converting it.  The end nodes originate the packets with DCCP-NAT
  encapsulation.  I'll try to make that more clear in the next
revision.
 
  Nice to hear about NAT for DCCP(-RAW) in Linux.  To expand a bit on
  the
  above paragraph, I wouldn't expect DCCP-NAT in Linux to be
implemented
  below the DCCP layer as I imagine NAT for DCCP is.  In my view, the
  encapsulation to use (NAT, RAW, IPv4, IPv6) is chosen by the
  application
  and implemented (mostly) within the DCCP layer.
 
 Allowing the application to choose runs into connectivity problems
 when some applications support the UDP encapsulation, and some do
 not. If we're going to define a UDP encapsulation - and it's not at
 all clear to me that such a thing is a good idea - then I'd recommend
 that we do so in a way that it can be done by the DCCP stack,
 transparently to the applications, with a well-defined order for
 trying native vs. encapsulated connection requests.
 
 --
 Colin Perkins
 http://csperkins.org/