Re: [Tsvwg] SCTP support for Solaris

Vlad Yasevich <vladislav.yasevich@hp.com> Wed, 07 January 2009 15:24 UTC

Return-Path: <tsvwg-bounces@ietf.org>
X-Original-To: tsvwg-archive@optimus.ietf.org
Delivered-To: ietfarch-tsvwg-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id B934A3A69B6; Wed, 7 Jan 2009 07:24:01 -0800 (PST)
X-Original-To: tsvwg@core3.amsl.com
Delivered-To: tsvwg@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 530EA3A69B6 for <tsvwg@core3.amsl.com>; Wed, 7 Jan 2009 07:24:00 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -106.599
X-Spam-Level:
X-Spam-Status: No, score=-106.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id EE6q0dCQuomz for <tsvwg@core3.amsl.com>; Wed, 7 Jan 2009 07:23:59 -0800 (PST)
Received: from g1t0026.austin.hp.com (g1t0026.austin.hp.com [15.216.28.33]) by core3.amsl.com (Postfix) with ESMTP id 69C4F3A6877 for <tsvwg@ietf.org>; Wed, 7 Jan 2009 07:23:59 -0800 (PST)
Received: from g5t0012.atlanta.hp.com (g5t0012.atlanta.hp.com [15.192.0.49]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by g1t0026.austin.hp.com (Postfix) with ESMTPS id 373DBC06B; Wed, 7 Jan 2009 15:23:45 +0000 (UTC)
Received: from [192.168.98.100] (pool-71-255-130-196.cncdnh.east.verizon.net [71.255.130.196]) by g5t0012.atlanta.hp.com (Postfix) with ESMTPSA id 8C70110026; Wed, 7 Jan 2009 15:23:44 +0000 (UTC)
Message-ID: <4964C8FF.9080103@hp.com>
Date: Wed, 07 Jan 2009 10:23:43 -0500
From: Vlad Yasevich <vladislav.yasevich@hp.com>
User-Agent: Thunderbird 2.0.0.4 (X11/20070604)
MIME-Version: 1.0
To: Randall Stewart <rrs@lakerest.net>
References: <378D168A-A299-4798-BF35-F97AD254BAE7@lurchi.franken.de> <49266BB0.8070908@sun.com> <52970.72.78.222.225.1227296961.squirrel@webmail.eecis.udel.edu> <492A7020.6020208@sun.com> <8A3B5057-3D34-415B-92C5-0EB0DE300131@lakerest.net> <492A928E.4070208@sun.com> <DB841DF3-C8DB-417A-A846-7F76CA1DFF57@lurchi.franken.de> <492ADE24.9080007@sun.com> <C37A1A87-07FF-4FC4-AD97-92B884B8AA25@lurchi.franken.de> <492B7A5D.3090107@sun.com> <20081125045620.GA14604@openss7.org> <178E7662-4128-4F6F-BFD6-3F51B7FC3B48@lurchi.franken.de> <492C1DC2.4060604@sun.com> <285DDEEC-A174-402B-B1FF-C46D27881690@lurchi.franken.de> <320CE8A9-7D00-41F6-8FAD-68EDBCED2B20@lakerest.net>
In-Reply-To: <320CE8A9-7D00-41F6-8FAD-68EDBCED2B20@lakerest.net>
X-Enigmail-Version: 0.95.7
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
Cc: Michael Tüxen <Michael.Tuexen@lurchi.franken.de>, tsvwg <tsvwg@ietf.org>
Subject: Re: [Tsvwg] SCTP support for Solaris
X-BeenThere: tsvwg@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Transport Area Working Group <tsvwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://www.ietf.org/mailman/private/tsvwg>
List-Post: <mailto:tsvwg@ietf.org>
List-Help: <mailto:tsvwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsvwg>, <mailto:tsvwg-request@ietf.org?subject=subscribe>
Sender: tsvwg-bounces@ietf.org
Errors-To: tsvwg-bounces@ietf.org

Randall Stewart wrote:
> Sorry for seeing this so late :-(
> 
> 
> On Nov 25, 2008, at 3:13 PM, Michael Tüxen wrote:
> 
>>>
>> So the idea is to be able to be able to provide a some cmghdr
>> structure, each one for
>> - The PPID
>> - The stream id
>> - Sending ordered/unordered
>> - the PR-SCTP policy
>> - the PR-SCTP value
>> - the SCTP-AUTH keyid
>> - the flags (from the sndrcv info flags)
>> - the context
>> - and a couple more that I forgot...
>>
>> The experience I had is that people avoid using the the
>> cmghdr stuff... That is why we added sctp_sendmsg() which
>> was just a wrapper added to handle the cmghdr stuff..
> 
> 
> I tend to agree with you here Michael. I have taught
> quite a few classes on the SCTP socket API.. where you
> get blood curdling screams, groans and moans is when you
> try to get folks to use the cmsg stuff. Its real ugly
> and quite awkward to use. Most folks just plain do not
> want to use it.
> 
> No matter what we do, I think having something simple
> to use is far better. Even if that means wrapping a library
> call to work with the cmsg headers (like lk-sctp does).
> 
> R
> 

Then we'll just have to state that sctp_sendmsg() can not be
used when any new extension that would require additional parameters
to be passed down since it can't really handle them without
an API change.

One such extension that recently came up during implementation
is the new partial reliability policy stuff.  Currently, sctp_sendmsg
can take a pr_value, allowing it to specify the value as applied to
a given policy, but there is no documented way to specify the policy.

Thus one could preserve the old behavior of defaulting to timeout policy,
or one could hack something in an non-interoperable manner using flags or
something else.

As it stands right now, sctp_sendmsg() is underspecified wrt to PR policy.

-vlad