From owner-freebsd-hackers@FreeBSD.ORG Wed Apr 3 08:48:27 2013 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id CF1051C4 for ; Wed, 3 Apr 2013 08:48:27 +0000 (UTC) (envelope-from emorrasg@yahoo.es) Received: from nm14-vm0.bullet.mail.ird.yahoo.com (nm14-vm0.bullet.mail.ird.yahoo.com [77.238.189.193]) by mx1.freebsd.org (Postfix) with SMTP id 1B5ABD87 for ; Wed, 3 Apr 2013 08:48:26 +0000 (UTC) Received: from [77.238.189.51] by nm14.bullet.mail.ird.yahoo.com with NNFMP; 03 Apr 2013 08:45:08 -0000 Received: from [217.146.189.106] by tm4.bullet.mail.ird.yahoo.com with NNFMP; 03 Apr 2013 08:45:08 -0000 Received: from [127.0.0.1] by smtp122.mail.ird.yahoo.com with NNFMP; 03 Apr 2013 08:45:08 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.es; s=s1024; t=1364978708; bh=ZZaJFebpDC3+nvD4rd6RmvU90RxaeE8pbGsJmiQY5Tg=; h=X-Yahoo-Newman-Id:X-Yahoo-Newman-Property:X-YMail-OSG:X-Yahoo-SMTP:X-Rocket-Received:Date:From:To:Subject:Message-Id:In-Reply-To:References:X-Mailer:Mime-Version:Content-Type:Content-Transfer-Encoding; b=s3SCP4rSQ64MorfBANzh6Gu8rXQr22H+5TQHt35v5LOGLO7p7ilzwmPUCidW6w6T4uZivdJSI+f6sTyqpBa0GB2HgyjH5bbjwatwarOMEsXijt1Ls8aPrwzavnhLL1LNDHpjEIcLDeDVZGT6q8aUBY0xZKZHmARIPH6EQdlsa/k= X-Yahoo-Newman-Id: 954604.24170.bm@smtp122.mail.ird.yahoo.com X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: Js1SxhcVM1lZYKlLEXBLK73.jjDB6iZNknSKfcB7by4ZG.t mID.xMfddTv5YptMRr0W5W0c8W9_fierH4YNn120BpJ4xp6A8NmQ.kMUs8tr qFaL5iuLp0CHLRol1h1CxydWEBN7x0YS_WYSmiHZp_DTviJWxZQJ1y74dR9x 4gSzjxyyQXCjCoylrgkJ9bySUCkhQCeCfhB5JWSuoAH8RtZeCrafYbGXhCIJ sA359zsfOe7Y9glyZYI7qOpS3Zb3LDvxAXoGYloQhmNrsKuVs9mqODEE9S1B X22DlB9m8qjR5Sb8IQSHfK9RRlNFCTwyqjckCG.QTC_A.80jgirGoaxCGduh TJgkl4uZR7wCCyArPxuo.wFyZMunpjxRtNyzPz2Y9sfn8z3IMgJvtPZLvLPe B5Y5v1AsGKm8- X-Yahoo-SMTP: mX392iiswBAeJNdO_s.EW62LZDJR X-Rocket-Received: from camibar.emorras.eu (emorrasg@85.219.45.142 with plain) by smtp122.mail.ird.yahoo.com with SMTP; 03 Apr 2013 01:45:08 -0700 PDT Date: Wed, 3 Apr 2013 10:10:59 +0200 From: Eduardo Morras To: freebsd-hackers@freebsd.org Subject: Re: Need advice on sys5 shm and zero copy sockets Message-Id: <20130403101059.5d61f06251308cfb57df62ed@yahoo.es> In-Reply-To: <515B1C30.5080703@freebsd.org> References: <515B1C30.5080703@freebsd.org> X-Mailer: Sylpheed 3.3.0 (GTK+ 2.24.17; amd64-portbld-freebsd9.1) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Apr 2013 08:48:27 -0000 Don't have original message, i reply to a reply sorry. > On 2/8/13 4:22 AM, gary mazzaferro wrote: > > Hi, > > > > I was told to post this question here (Ken Merry), it would be a good > > place to get some help. I'm not sure this is doable without a kernel > > module, which I don't want to add. > > > > I'll explain what I'm attempting.. > > > > I'm designing a high speed rest motor for cloud execution environment. > > > > 1) I'd like to eliminate copy from the tcp stack to the application(s). > > > > 2) I'm also sharing the buffers across processes and jails. So I'd > > like to preserve the zero-copy in a msg pipe/unix socket > > > > 3) Some buffers will go to disk file systems. > > > > > > Wish list: > > 4) I'd like it to work with sctp because I like it for local networking :) > > > > 5) I'd like to provision memory pools on a per > > application/connection/ip port basis. > > > > Ultimate Goal: > > 6) Additionally, I'm injecting "code" from a foreign process into the > > workflow of another process (state machine). The connection between > > them will be a signal and shared state information. > > > > I'm assuming item (6) is a separate issue, but it may impact the direction.. > > > > I've tried shm with zero copy sockets with linux and it just will not work !! > > > > BTW, I'm returning to freebsd after far too many years > > > > cheers, > > gary For question (1) Are you using secure rest with TLS/SSL? Does your rest implementation uses openssl? If yes to both, then you don't need to use tcp. SSL already does all the work tcp does, resending lost/damaged packets and reordering received packets, so you can use plain udp without much pain. Openssl has since 0.9.8 this capability implemented with udp, don't remember if udplite. Check RFC 6347 HTH --- --- Eduardo Morras