Re: [OFF-PATH-BOF] SIP, naming, APIs and control

Saikat Guha <saikat@cs.cornell.edu> Fri, 28 July 2006 20:02 UTC

Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1G6YXw-00076k-Qm; Fri, 28 Jul 2006 16:02:56 -0400
Received: from [10.91.34.44] (helo=ietf-mx.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1G6YXv-00076P-8u for off-path-bof@ietf.org; Fri, 28 Jul 2006 16:02:55 -0400
Received: from exchfenlb-2.cs.cornell.edu ([128.84.97.34] helo=exchfe2.cs.cornell.edu) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1G6YXr-0007mE-No for off-path-bof@ietf.org; Fri, 28 Jul 2006 16:02:55 -0400
Received: from sundial.cs.cornell.edu ([128.84.96.115]) by exchfe2.cs.cornell.edu with Microsoft SMTPSVC(6.0.3790.1830); Fri, 28 Jul 2006 16:02:51 -0400
Received: from himalaya.cs.cornell.edu (himalaya.cs.cornell.edu [128.84.223.110]) by sundial.cs.cornell.edu (8.11.7-20031020/8.11.7/M-3.27) with ESMTP id k6SK2oT29629; Fri, 28 Jul 2006 16:02:50 -0400 (EDT)
Subject: Re: [OFF-PATH-BOF] SIP, naming, APIs and control
From: Saikat Guha <saikat@cs.cornell.edu>
To: Scott W Brim <swb@employees.org>
In-Reply-To: <44CA0871.3090707@employees.org>
References: <C0DC1986.10CBB%mshore@cisco.com> <1152894044.13866.213.camel@localhost.localdomain> <44CA0871.3090707@employees.org>
Date: Fri, 28 Jul 2006 21:02:50 +0100
Message-Id: <1154116970.12449.78.camel@localhost.localdomain>
Mime-Version: 1.0
X-Mailer: Evolution 2.2.3 (2.2.3-2.fc4)
X-OriginalArrivalTime: 28 Jul 2006 20:02:51.0482 (UTC) FILETIME=[CE6373A0:01C6B280]
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 825e642946eda55cd9bc654a36dab8c2
Cc: off-path-bof@ietf.org, Teemu Koponen <koponen@ICSI.Berkeley.EDU>
X-BeenThere: off-path-bof@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "BOF: Path-decoupled Signaling for Data" <off-path-bof.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/off-path-bof>, <mailto:off-path-bof-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/off-path-bof>
List-Post: <mailto:off-path-bof@ietf.org>
List-Help: <mailto:off-path-bof-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/off-path-bof>, <mailto:off-path-bof-request@ietf.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============1513574424=="
Errors-To: off-path-bof-bounces@ietf.org

On Fri, 2006-07-28 at 14:52 +0200, Scott W Brim wrote:
> On 07/14/2006 18:20 PM, Saikat Guha allegedly wrote:
> > OFF-PATH signaling, synonymous with DATA-DECOUPLED signaling, refers
> > to the case where signaling packets (at least the first signaling
> > packet) _necessarily_ take a path different than the DATA-PATH.
> 
> First I want to push for a few terminology nits ...
> 
> Technically they are not synonymous, at least in some circles.  

Agreed. I should have used different terms; what I was trying to get at
was a slightly broader picture of a communication session between two
endpoints.

Take an FTP transfer for instance between client C and server S.
Consider how it would be accomplished in various architectures today.

Arch #1: Internet before DNS
----------------------------
1. Assumption: C must know S's IP address.
   - How? Business card, phone call, ... somehow
2. C sends a TCP SYN to S's IP address
   - This 'signal' follows the same path that data will eventually
     follow. 
3. Over the signaling channel in #2, C sends a request. S opens a 
   data connection by sending another SYN signal. Data can now flow.

#1 = assumption: knows IP address
#2 = end-to-end signal
#3 = end-to-end data


Arch #2: Internet with DNS
--------------------------
1. Assumption: C must know S's hostname
2. C does a DNS request to it's local resolver
   - This 'signal' is along a different path than the e2e path that
     the data will eventually take
3. Same as #2 above
4. Same as #3 above.

#1 = assumption: knows hostname
#2 = end-to-middle signal
#3 = end-to-end signal
#4 = end-to-end data


Arch #3: With SIP/ICE/NAT-Traversal
-----------------------------------
1. Assumption: C must know S's URI
2. C sends 'INVITE' to S over SIP
   - This path _may_ be different from the ultimate e2e data path
3. S responds with a transient IP address/port pair over SIP
4. Same as #3 above
5. Same as #4 above

#1 = assumption: knows URI 
#2 = end-to-middle-to-end signal (possible disjoint from data-path)
#3 = end-to-middle-to-end signal (possible disjoint from data-path)
#4 = end-to-end signal
#5 = end-to-end data


Arch #4: With TURN relay in addition with SIP/ICE/...
-----------------------------------------------------
1. Assumption: C must know S's URI
2. Same as #2 above
3. Same as #3 above, except returns a TURN server's address
4. C sends a SYN to the TURN server, TURN server connects to S
5. For data conection, S connects to TURN server, which connects to C

#1 = assumption: knows URI
#2 = end-to-middle-to-end signal (possible disjoint from data-path)
#3 = end-to-middle-to-end signal (possible disjoint from data-path)
#4 = end-to-middle-to-end signal (along data-path)
#5 = end-to-middle-to-end data

  
So basically, I was shooting for terms to differentiate the various
components of these architectures.


a) end-to-middle signal                  (DNS, UPnP, ....)
b) end-to-middle-to-end signal           (SIP, i3, TURN, NSIS, ...)
   b1) not necessarily along data path     (SIP, i3, ...)
   b2) along the data path                 (TURN, NSIS, ...)
       b21) same "flow"                      (TURN, ...)
       b22) different "flow"                 (NSIS, ...)
c) end-to-end signal                     (TCP SYN, ...)
d) end-to-end data                       (TCP Data, ...) 
e) end-to-middle-to-end data             (TURN Data)




-- 
Saikat
_______________________________________________
OFF-PATH-BOF mailing list
OFF-PATH-BOF@ietf.org
https://www1.ietf.org/mailman/listinfo/off-path-bof