Sunday, September 25, 2011

DIFFUSE for FreeBSD

The FreeBSD Foundation is pleased to announce that Swinburne University of Technology's Centre for Advanced Internet Architectures has been awarded a grant to implement DIFFUSE for FreeBSD.

DIFFUSE (Distributed Firewall and Flow-shaper Using Statistical Evidence) is an extension to the FreeBSD IPFW firewall subsystem developed by CAIA. It allows IPFW to classify traffic based on statistical properties of flows being observed in realtime, and instantiate network actions across a distributed set of "action nodes" for particular flows if required.

This project will tidy up and integrate the existing DIFFUSE prototype into FreeBSD, and incorporate a number of important new features. Integration of DIFFUSE into FreeBSD will increase FreeBSD's utility to designers and implementers of FreeBSD-based networking infrastructure.

Network architects frequently require the ability to classify different traffic types flowing across a network, typically using packet inspection capabilities of base system tools such as ipfw and pf. Traffic classification then enables the provision of customized service levels to different traffic types (such as priority packet queuing and forwarding, or allocation of specific bandwidth guarantees).

DIFFUSE uses machine learning techniques to enable robust and efficient classification of IP traffic flows based on their unique statistical properties in addition to traditional inspection of packet header or payload contents. DIFFUSE also allows traffic classification to occur in one place (e.g. in the core of a network) and trigger traffic shaping and differentiation elsewhere (e.g. at the edges of a network). DIFFUSE has applications in ISP, residential broadband and large corporate network scenarios to name a few.

The project will conclude the end of October 2011.

Implementing xlocale APIs

The FreeBSD Foundation is pleased to announce that David Chisnall has been awarded a grant to implement xlocale APIs to enable porting libc++.

The C standard library (libc) is one of the most important parts of a UNIX system as most programs interact with the kernel through interfaces written in C. Porting code between platforms with similar libc implementations is trivial and if something is supported by libc, higher-level languages can use it without being reimplemented.

Over time, the C language has slowly evolved to modern multicore systems, but there are still some places that are problematic. One of these is localization as C began originally had no localization support. FreeBSD libc and Darwin libc (used by Mac OS X) are similar, making it much easier to port code from OS X to FreeBSD than from OS X to Linux. The libc used by OS X supports a set of extended locale functions (xlocale) that allow locale to be set on a per-thread basis.

Additionally, libc++, from the LLVM project, was originally developed on Darwin, so it uses xlocale for most of the C++ locale support. The lack of this support is the primary obstacle to porting it to FreeBSD.

Once xlocale is supported in FreeBSD libc, we can port libc++ to FreeBSD, giving us an MIT-licensed C++11 standard library implementation. This, in conjunction with Clang and libcxxrt, means that the entire C++ stack in FreeBSD will be free of any GNU code. This leaves the linker as the only significant obstacle to a GPL-free FreeBSD 10.

The project will conclude the end of September 2011.

Tuesday, September 13, 2011

Participate in Software Freedom Day

This Saturday, September 17, is Software Freedom Day (SFD). SFD is an annual global event that encourages open source software users to reach out to their local community to educate others about the benefits of using open source.

Frederic Muller, President of SFI, the non-profit organization behind Software Freedom Day, has been very helpful in encouraging FreeBSD users to participate in SFD. FreeBSD is listed as a partner on the SFD website. In addition, the FreeBSD logo is included on the cover letter and a copy of PC-BSD was included with the 210 packages that were shipped to the pre-registered teams. He also added the FreeBSD news RSS feed to planet SFD so that other SFD participants will get FreeBSD updates.

Julian H. Stacey has also been helpful in spreading the word and will be participating with the Munich team.

BSD user groups are encouraged to put together a team and to register it on the SFD wiki. If you have not participated in SFD before, take a moment to read through the Start Guide for instructions on how to promote your team. If you do register a team, leave a comment so that we can mention it on the @bsdevents twitter feed.


Friday, August 12, 2011

Accepting Travel Grant Applications for EuroBSDCon 2011

Calling all FreeBSD developers needing assistance with travel expenses to EuroBSDCon 2011.

The FreeBSD Foundation will be providing a limited number of travel grants to individuals requesting assistance. Please fill out and submit the Travel Grant Request Application by September 5, 2011 to apply for this grant.

How it works:

This program is open to FreeBSD developers of all sorts (kernel hackers, documentation authors, bugbusters, system administrators, etc). In some cases we are also able to fund non-developers, such as active community members and FreeBSD advocates.

(1) You request funding based on a realistic and economical estimate of travel costs (economy airfare, trainfare, ...), accommodations (conference hotel and sharing a room), and registration or tutorial fees. If there are other sponsors willing to cover costs, such as your employer or the conference, we prefer you talk to them first, as our budget is limited. We are happy to split costs with you or another sponsor, such as just covering airfare or board.

If you are a speaker at the conference, we expect the conference to cover your travel costs, and will most likely not approve your direct request to us.

(2) We review your application and if approved, authorize you to seek reimbursement up to a limit. We consider several factors, including our overall and per-event budgets, and (quite importantly) the benefit to the community by funding your travel.
Most rejected applications are rejected because of an over-all limit on travel budget for the event or year, due to unrealistic or uneconomical costing, or because there is an unclear or unconvincing argument that funding the applicant will directly benefit the FreeBSD Project. Please take these points into consideration when writing your application.

(3) We reimburse costs based on actuals (receipts), and by check or bank transfer. And, we do not cover your costs if you end up having to cancel your trip. We require you to submit a report on your trip, which we may show to current or potential sponsors, and may include in our semi-annual newsletter.

There's some flexibility in the mechanism, so talk to us if something about the model doesn't quite work for you or if you have any questions. The travel grant program is one of the most effective ways we can spend money to help support the FreeBSD Project, as it helps developers get together in the same place at the same time, and helps advertise and advocate FreeBSD in the larger community.

Wednesday, August 10, 2011

Semi-Annual Newsletter Available

We are pleased to announce the publication of The FreeBSD Foundation's 2011 Semi-Annual Newsletter. In this edition:

  • Letter From the President
  • Fundraising Update
  • Development Project Updates
  • IPv6 support in FreeBSD and PC-BSD
  • Implementing support of GEM, KMS, and DRI for Intel Drivers
  • Resource Containers Project
  • Feed-Forward Clock Synchronization Algorithms Project
  • Five New TCP Project
  • libcxxrt C++ Runtime Available Under BSD License
  • Conference Updates
  • AsiaBSDCon 2011
  • BSDCan 2011
  • 2011 Grant and Travel Grant Recipients
  • NYI Testimonial
  • Foundation Update
  • Financials
You can help to support the FreeBSD Project by making a donation to the Foundation.

Thursday, June 16, 2011

BSDCan Trip Report: Baptiste Daroussin

The Foundation recently sponsored Baptiste Daroussin to attend BSDCan 2011. Here is his trip report:

This year I had the privilege to attend BSDCan 2011 thanks to the generous sponsorship of the Foundation. I was invited by Erwin Lansing to participate in the Ports Workgroup by presenting the project I am working on with Julien Laffaye: pkgng. That was really important to me because I was able to meet Julien face to face and have a real discussion with him about the future of pkgng. I delivered two presentations for pkgng, one during the Developer Summit (for the Ports Workgroup) and one during the BSDCan short talk. I have to confess that I wasn't really confident about the presentations as it was the first time I had to make a technical presentation in English (I now dread to watch the videos if any) and also the first time we publicly discussed pkgng.

The Ports Workgroup was really interesting and pkgng couldn't have beeen made public at a better time. It fits exactly the need for a better way to distribute packages and perform binary upgrades in the future. We received really good feedback from people concerning pkgng and the project gained a new member, Will Andrews, which brings in new views to further pkgng development. During BSDCan and since then Will has contributed a lot of good code to the project and it was a great pleasure to meet him.

BSDCan is not only technical but also human. I was privileged to meet and discuss with many people and put a face on login names. I was able to meet in person my mentor, Thomas Abthorpe, as well as Rene Ladan who had been my vacation mentor and with whom I have often worked. I have been able to discover the best place in Ottawa to get good Scottish whisky :).

BSDCan was not only about the good points as I was there to present a project that I was expecting to be quite controversial. But it was greatly accepted, and we now have a lot of work to finish it! But it seems that was not enough for some people as I was personally punished during BSDCan when the portmgrs forced me to become one of them! It's unfair :)

Monday, June 13, 2011

BSDCan Trip Report: Julien Laffaye

The Foundation recently sponsored Julien Laffaye to attend BSDCan 2011. Here is his trip report:

During my trip in Ottawa, I met Baptiste Daroussin, with whom I developed the pkg_install replacement pkgng. It was nice to meet face-to-face and to discuss the future goals of pkgng development. I also met Will Andrews (who was interested by our project and has since joined our effort), Thomas Abthorpe and Rene Ladan. I was also able to put a face to many FreeBSD logins for the first time.

Indeed, the main purpose of my trip to Ottawa was to present pkgng in the Ports and Binary Package workgroup at the FreeBSD DevSummit. In the working group, we discussed issues such as the state of packages building. The agreement was that the project should build packages sets weekly, and monthly sets with an extended support. This approach raised some concerns for the disk space required by the mirrors, and we had a very interesting discussion about the current infrastructure of the project. Here, the agreement was to setup a kind of Content Distribution Network. The main idea behind this new policy of package building is to facilitate the installation and upgrade process of binary packages.

I was very pleased that our effort has been well received. We had a discussion about the state of pkgng, and if it should be commited into HEAD for the 9 release. We thought that pkgng will be ready around the date targeted by the 9 release, but we preferred to have more time to test it. So the agreement was to ship it in 10, and maybe in 9.1 but not as the default package manager.

Then we talked about the migration process and defined the tasks that must be done to make it happen. At the end of the workgroup, we had a very clear list of tasks, and each team (the Ports managers, the cluster administrators and pkgng developers)
knew their part in the process.