Juli Mallett
2013-Feb-14 00:17 UTC
Contract integrating FreeBSD's TCP/IP stack in userland.
All, Looking for someone who is interested in taking a userland port of FreeBSD's TCP/IP stack (or doing one from scratch) and integrating it with an open-source WAN optimization project, WANProxy (http://wanproxy.org/). The target application is slightly-quirky C++, but I think the actual integration should be fairly straightforward, just a matter of moving data from one kind of data buffer to another, and providing alternate implementations of a couple of classes. In addition to just wiring up a stack, I'd need for it to operate in inline proxy deployments, so that it could transparently proxy connections, accepting incoming ones to any port and IP address, and establishing new outgoing ones. This is probably straightforward and obvious to anyone who would be interested in this kind of work, but I'm happy to provide more information if needed. All of the work would be open-sourced, and if there's any changes needed to the base stack to ease the task of using it for transparent proxies, I'd love to see them contributed back to the main tree. I believe Kip Macy's libplebnet work is in fairly good shape and would provide a suitable base for this work, but I'm willing to listen to the opinion of the person actually doing the work. I am quite certain that I want FreeBSD's TCP implementation in particular, and not to use lwIP or another intended-to-be-embedded stack, however. If you're sure you know better, I'm happy to listen. I do not need much in the way of traditional management and/or configuration, which I know was some of the focus of libplebnet; I don't really need netstat or ifconfig or whatever. I can handle packet input/output, or you can just hook it up to BPF or pcap if that's what you're comfortable with. Here's the rub: I can put more money into this work if I can meet some immediate needs with it. My inclination has been that a month or two would be ideal for handling integration well, etc., but I would really like to find someone who can work with minimal oversight and get it done in 3-4 weeks, with some initial code drops for testing sooner. When quoting a cost and time estimate, please do keep that in mind. Sooner is better; if you don't need to sleep and have nothing else going in your life and want to do it in two weeks, I'll be quite glad to hear from you, indeed. Thanks, Juli.