From owner-freebsd-hackers@FreeBSD.ORG Fri Mar 19 14:02:07 2010 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id CFA5C106564A for ; Fri, 19 Mar 2010 14:02:07 +0000 (UTC) (envelope-from the.kfx@gmail.com) Received: from mail-ew0-f228.google.com (mail-ew0-f228.google.com [209.85.219.228]) by mx1.freebsd.org (Postfix) with ESMTP id 642A38FC1A for ; Fri, 19 Mar 2010 14:02:07 +0000 (UTC) Received: by ewy28 with SMTP id 28so1344518ewy.13 for ; Fri, 19 Mar 2010 07:02:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:date:received:message-id :subject:from:to:content-type; bh=8MpMAoLDnvbo4JIVg/0+9tytLAWgLEk6dzk06eNLuVs=; b=eUm1cISF+jNnHvq5Qf6LesxzKuTvtJBIP0hEP4+MPGigVugvk1Vdbu0jbE8+kWeNY3 b/Nz3t4wgSJa0dO3tHFepQrY7yHcwl6HOHTKQIQF6PaHegMC+G6tTB89t1I6XhrhgALQ vioUeWd4VWRSwZOu//LwuZPxK81QrJfjt2GQA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=OlijhLmrPFlnGdXZb8RG4piSi4bq5u1F6815dTpH6VNmZJ9KTDu5e5o5wX5Fisafkm oEiKIjQ71SLQesn60+pajMCiy4yN1cFdToRexPEq9hadihMwT6nwUgL825OLoJbx5Z6s NRTBkrE6aYcTz2jMQBMNV0To2gbYP2eFhJsac= MIME-Version: 1.0 Received: by 10.213.16.77 with HTTP; Fri, 19 Mar 2010 06:36:25 -0700 (PDT) Date: Fri, 19 Mar 2010 15:36:25 +0200 Received: by 10.213.1.148 with SMTP id 20mr427442ebf.89.1269005785204; Fri, 19 Mar 2010 06:36:25 -0700 (PDT) Message-ID: <7f9bf5711003190636k1aab3r2adce891e9acaad@mail.gmail.com> From: Atis To: freebsd-hackers@freebsd.org Content-Type: text/plain; charset=ISO-8859-1 Subject: Google Summer of Code 2010 ideas X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Mar 2010 14:02:08 -0000 Hello, I'm looking forward to participating in Google Summer of Code 2010. Interested in networking related projects. I have a little previous FreeBSD experience (no programming), but I have ~5 years industry C/C++ programming experience, some familiarity with Linux kernel, and interest in learning something new :) >From reading http://www.freebsd.org/projects/ideas/index.html and http://wiki.freebsd.org/Networking I selected some projects of interest. Since not all of them have their respective mentors mentioned, I'm sending this to the list. Potential projects: 1) TCP/IP regression test suite This project idea already was included in previous years, and there was some work done by Zach Riggle (2009), Victor Hugo Bilouro (2008) and by Nanjun Li (2007). Could you give a broad outline what features of this project were already completed by the work in previous summers of code, and what new work is expected to be done in this year? Weren't their results good enough or were they simply incomplete? I realise that a complete TCP test suite could be a huge effort, but exactly what features are missing? Is the work of this year supposed to be build on the work by previous years, or to start something new? 2) SCPS, Space Communication Protocol Standards This is probably my first project choice if all goes well. Space protocols - this sounds very cool :) and is related to my research interests (IP protocols over lossy networks). The first question is - do these protocols also have some practical value? This is not-so-new family of protocols, but it seems that very few implementations exist. On the one hand, this could be a good thing, because now there a chance for FreeBSD to be the first OS with open source SCPS implementation. On the other hand - lack of use seems to imply lack of importance and usefulness. The second question - is complete implementation of all the protocols supposed? At first glance it seem that e.g. SCPS Security Protocol simply duplicates the functionality already present in IPSec. Still, support for all protocols may be needed for interoperability and completeness of the implementation. Also, the amount of work required for this project is very unclear at the moment. 3) "Implement optimized trie lookups for forwarding.", from http://wiki.freebsd.org/Networking. Even though this is not listed as "summer of code" idea, it sounds interesting, but what exactly does this task imply? Was there some mailing list discussions related to the problems with current approach and potential improvements? (What keywords to use in search?) The first improvement idea that comes in mind is to replace the old radix tree with a kind of LPC-trie, but does that make sense? In any case, this project probably is over my head, especially the issues with SMP and locking. Maybe in the future? :) My initial ideas also included experimenting with a kind or routing cache for FreeBSD, but after reading some (very interesting) old mailing list discussions I gave up these thoughts :) So, which one of these three ideas would be the most useful and feasible? Or would you suggest something completely else for someone with my background? -- ~Atis