Re: [Taps] TCP components

Joe Touch <touch@isi.edu> Fri, 19 June 2015 22:11 UTC

Return-Path: <touch@isi.edu>
X-Original-To: taps@ietfa.amsl.com
Delivered-To: taps@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 206B81B2B68 for <taps@ietfa.amsl.com>; Fri, 19 Jun 2015 15:11:32 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.91
X-Spam-Level:
X-Spam-Status: No, score=-6.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 16MY8gCsUEnF for <taps@ietfa.amsl.com>; Fri, 19 Jun 2015 15:11:31 -0700 (PDT)
Received: from vapor.isi.edu (vapor.isi.edu [128.9.64.64]) (using TLSv1 with cipher ECDHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 12F361B2B63 for <taps@ietf.org>; Fri, 19 Jun 2015 15:11:31 -0700 (PDT)
Received: from [128.9.160.81] (nib.isi.edu [128.9.160.81]) (authenticated bits=0) by vapor.isi.edu (8.13.8/8.13.8) with ESMTP id t5JMBCwG019766 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT); Fri, 19 Jun 2015 15:11:16 -0700 (PDT)
To: Mohamed Oulmahdi <m.oulmahdi@gmail.com>
References: <5579768E.5060402@tik.ee.ethz.ch> <A3EF3A19-0E37-42E6-8D17-94164EBA7FDD@ifi.uio.no> <154FD7B7-9A01-43EC-927D-B9D71F1BC38D@tik.ee.ethz.ch> <57DC7DAB-7054-41BE-8515-626353782BBC@ifi.uio.no> <5581B81B.4090500@isi.edu> <725D4141-40AB-4E30-9409-96813C80905B@tik.ee.ethz.ch> <33CA72C2-D0EC-43A1-B766-D34F3636961B@ifi.uio.no> <23AACB56-2044-4E89-930B-C7D501AD7184@tik.ee.ethz.ch> <E788A309-869F-49E0-832D-429E0DA0E2F9@ifi.uio.no> <DA987915-C664-40D9-B527-9A686BA01013@tik.ee.ethz.ch> <C2962821-4DF2-44CD-BBEF-49520B5BA4D3@ifi.uio.no> <5584400C.5080406@isi.edu> <CAJ+dxNCN3Pj4x707hr50V-GZHJvQM_S8cx1g3NTZne086T3sOQ@mail.gmail.com>
From: Joe Touch <touch@isi.edu>
Message-ID: <5584937F.2030408@isi.edu>
Date: Fri, 19 Jun 2015 15:11:11 -0700
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.0.1
MIME-Version: 1.0
In-Reply-To: <CAJ+dxNCN3Pj4x707hr50V-GZHJvQM_S8cx1g3NTZne086T3sOQ@mail.gmail.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 7bit
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
Archived-At: <http://mailarchive.ietf.org/arch/msg/taps/R5EGN9kXESNj_dZbJ7TvAL_qt54>
Cc: Brian Trammell <ietf@trammell.ch>, "taps@ietf.org" <taps@ietf.org>, Mirja Kühlewind <mirja.kuehlewind@tik.ee.ethz.ch>, Michael Welzl <michawe@ifi.uio.no>, touch@isi.edu
Subject: Re: [Taps] TCP components
X-BeenThere: taps@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Discussions on Transport Services <taps.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/taps>, <mailto:taps-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/taps/>
List-Post: <mailto:taps@ietf.org>
List-Help: <mailto:taps-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/taps>, <mailto:taps-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 19 Jun 2015 22:11:32 -0000


On 6/19/2015 2:39 PM, Mohamed Oulmahdi wrote:
>
> Of course, no one use a protocol without knowing the service it offers.
> When the application requests a TCP connection, it really request a
> reliable and ordered connection oriented service. The protocols
> primitives are used to each one to offer a part of this service.

My point is that the API primitives do define the service offered in 
this case. You can't use TCP without using OPEN; OPEN exists only 
because TCP is connection-oriented.

Similarly, SEND/RECEIVE are handled in-order and the byte order within 
each call is preserved - which indicates that this is a byte stream 
service. The lack of boundary marking within the SEND/RECEIVE calls - 
and the indication that SEND/RECEIVE block boundaries are not preserved 
- indicates that this is a byte stream service with no internal boundaries.

All of this can be gleaned from the API in section 3.8 of RFC 793.

 > The
> difficulty occurs when several protocols are available, with mainly a
> certain service overlapping.

You're getting far ahead of the conversation, IMO. This document needs 
to start by explaining the services we already have before jumping into 
a "service of services" model.

I don't disagree with the goal, but it's impractical to develop a 
meta-interface when the base interface has not been described.

Joe