From owner-cvs-all@FreeBSD.ORG Fri Dec 15 21:45:56 2006 Return-Path: X-Original-To: cvs-all@freebsd.org Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 1739B16A501; Fri, 15 Dec 2006 21:45:56 +0000 (UTC) (envelope-from rrs@cisco.com) Received: from sj-iport-2.cisco.com (sj-iport-2-in.cisco.com [171.71.176.71]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6FC4E43CBA; Fri, 15 Dec 2006 21:44:06 +0000 (GMT) (envelope-from rrs@cisco.com) Received: from sj-dkim-4.cisco.com ([171.71.179.196]) by sj-iport-2.cisco.com with ESMTP; 15 Dec 2006 13:45:50 -0800 X-IronPort-AV: i="4.12,176,1165219200"; d="scan'208"; a="352279306:sNHT47928528" Received: from sj-core-5.cisco.com (sj-core-5.cisco.com [171.71.177.238]) by sj-dkim-4.cisco.com (8.12.11/8.12.11) with ESMTP id kBFLjnLv025828; Fri, 15 Dec 2006 13:45:49 -0800 Received: from xbh-sjc-221.amer.cisco.com (xbh-sjc-221.cisco.com [128.107.191.63]) by sj-core-5.cisco.com (8.12.10/8.12.6) with ESMTP id kBFLjhjc026493; Fri, 15 Dec 2006 13:45:48 -0800 (PST) Received: from xfe-sjc-212.amer.cisco.com ([171.70.151.187]) by xbh-sjc-221.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Fri, 15 Dec 2006 13:45:47 -0800 Received: from [127.0.0.1] ([171.68.225.134]) by xfe-sjc-212.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Fri, 15 Dec 2006 13:45:46 -0800 Message-ID: <45831767.1080908@cisco.com> Date: Fri, 15 Dec 2006 16:45:11 -0500 From: Randall Stewart User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050920 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Julian Elischer References: <200612151201.kBFC1qEv006825@repoman.freebsd.org> <4582A1E0.1050503@freebsd.org> <4582A6C9.8010009@FreeBSD.org> <20061215055704.A65183@xorpc.icir.org> <20061215145655.GA13912@crodrigues.org> <4582FC91.2030205@elischer.org> In-Reply-To: <4582FC91.2030205@elischer.org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 15 Dec 2006 21:45:46.0798 (UTC) FILETIME=[60FEE4E0:01C72092] DKIM-Signature: v=0.5; a=rsa-sha256; q=dns/txt; l=1670; t=1166219149; x=1167083149; c=relaxed/simple; s=sjdkim4002; h=Content-Type:From:Subject:Content-Transfer-Encoding:MIME-Version; d=cisco.com; i=rrs@cisco.com; z=From:=20Randall=20Stewart=20 |Subject:=20Re=3A=20cvs=20commit=3A=20src/lib/libc/net=20Makefile.inc=20s ctp_sys_calls.c=20src/sys/sys=0A=20param.h |Sender:=20; bh=k0kcULZP9orSKg/wouahNvV+VKSGfDb7yVlhJkqNS8g=; b=RN7dXLNR+/J/Yx4qG8mWHEVH8A8xF15dlR8LNA1q8VjvLHC+3yViH/bAIwNjdFSkF+Olfzv/ aWTTX6/PnVkHTJrihWMHscqPE0qCiL3cXWMKPnpPoMPecE6T4lhGcBBf; Authentication-Results: sj-dkim-4; header.From=rrs@cisco.com; dkim=pass (sig from cisco.com/sjdkim4002 verified; ); Cc: Craig Rodrigues , src-committers@FreeBSD.org, cvs-all@FreeBSD.org, cvs-src@FreeBSD.org Subject: Re: cvs commit: src/lib/libc/net Makefile.inc sctp_sys_calls.c src/sys/sys param.h X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Dec 2006 21:45:56 -0000 Julian Elischer wrote: > Craig Rodrigues wrote: > >> On Fri, Dec 15, 2006 at 05:57:04AM -0800, Luigi Rizzo wrote: >> >>> i think Andre's question was this: >>> normally we use {set|get}sockopt() to configure the socket >>> as desired for special features (e.g. multicast is one). >>> >>> Why is it undesirable to use the same kind of overloading >>> for sctp ? >> >> >> I think some of the reasons for why a new sockets API >> was introduced for SCTP was outlined in: >> http://www.ietf.org/internet-drafts/draft-ietf-tsvwg-sctpsocket-14.txt > > > which says: > -------------- > 8. New Interfaces > > Depending on the system, the following interface can be implemented > as a system call or library function. > --------------- > The latter is what I'd expect.. > > syscalls is 'unusual' and unique to this protocol. > > >> >> ...but I'll let Randall chime in too. :) >> > There are only 4 new system calls.. a) sctp_generic_sendmsg() b) sctp_generic_sendmsg_iov() c) sctp_generic_recvmsg() d) sctp_peeloff() Peeloff is a lot like accept() .. it returns a new socket. It could be move to a socket option petty easily.. Michael Tuexen already did one for Apple :-) a/b are the same in reality its just one accepts an IOV which I anticipate will get added to the socket api eventually. In general a/b/c are there for efficency.. an app hits these heavily.. and going through socket options OR packing and unpacking CMSG structures (both in the user land library and in the kernel) is a HUGE cpu waste... R -- Randall Stewart NSSTG - Cisco Systems Inc. 803-345-0369 803-317-4952 (cell)