The FreeBSD Foundation is a 501(c)(3) non-profit organization dedicated to supporting the FreeBSD Project. The Foundation gratefully accepts donations from individuals and businesses, using them to fund projects which further the development of the FreeBSD operating system.

By meeting our fund-raising goal, we will be able to increase our project development funding, purchase more needed equipment for the Project's infrastructure, and support more FreeBSD related conferences.

Please help us continue to support the FreeBSD Project and community by making a donation to The FreeBSD Foundation.

Tuesday, December 21, 2010

The FreeBSD Foundation is pleased to announce that Julien Ridoux and Darryl Veitch at the University of Melbourne have been awarded a grant to implement support of feed-forward clock synchronization algorithms.

The Network Time Protocol (NTP) is widely used for synchronization over the network and the ntpd daemon is the current reference synchronization algorithm. The system clock in FreeBSD is currently designed with ntpd in mind, leading to strong feedback coupling between the kernel and the synchronization daemon.

The RADclock is an example of an alternative class of synchronization algorithms based on feed-forward principles. This project will provide the core support for feed-forward algorithms, so that alternatives to ntpd can be developed and tested. The central motivation for this is the strong potential of such approaches for highly robust and accurate synchronization.

Beyond this, virtualization is one of the next major challenges faced by time keeping systems. The current feedback synchronization model is complex and introduces its own dynamics, an approach that is not suited to the requirements of virtualization. Feed-forward based synchronization offers a cleaner and simpler approach, which is capable of providing accurate time keeping over live migration of virtual machines.

Saturday, December 4, 2010

The FreeBSD Foundation is pleased to announce that Swinburne University's Technology's Centre for Advanced Internet Architectures has been awarded a grant to implement five new TCP congestion control algorithms in FreeBSD.

Correctly functioning congestion control (CC) is crucial to the efficient operation of the Internet and IP networks in general. CC dynamically balances a flow's throughput against the inferred impact on the network, lowering throughput to protect the network as required.

The FreeBSD operating system's TCP stack currently utilizes the defacto standard NewReno loss-based CC algorithm, which has known problems coping with many aspects of modern data networks like lossy or large bandwidth/delay paths. There is significant and ongoing work both in the research community and industry to address CC related problems, with a particular focus on TCP because of its ubiquitous deployment and use.

Swinburne University of Technology's ongoing work with FreeBSD's TCP stack and congestion control implementation has progressively matured. This project aims to refine their prototypes and integrate them into FreeBSD.

Thursday, November 25, 2010

Justin Gibbs, President of the FreeBSD Foundation, writes about the end-of-year fundraising campaign:

As the year is winding down I'm writing this note to remind you of the motivation behind the FreeBSD Foundation's work, its benefits to you, and to ask for your financial assistance in making our work possible.

Ten years ago, I created the FreeBSD Foundation to repay a debt I owe to the FreeBSD project. While working on FreeBSD I learned the fundamentals of sound software design, how to successfully manage a large code base, and experienced the challenges of release engineering. Beyond the benefits of this education, FreeBSD has provided a robust platform that has allowed me to build several successful commercial products while being well paid to work on an operating system I love.
Today, through my volunteer work with the FreeBSD Foundation, I'm still paying down this debt.

This year, despite the slow pace of the economic recovery, the FreeBSD Foundation has an impressive list of accomplishments:

How do our activities benefit you? If you are a company using FreeBSD, our work to strengthen the FreeBSD community ensures the continued viability of FreeBSD and a large pool of developers to tap into. If you are an end user, our work brings you new features and access to conferences. And if you are a FreeBSD developer, the FreeBSD Foundation is providing the resources needed to make your next innovation possible.

The FreeBSD project thrives through the hard work of our community, but it also requires financial backing. This year we set a fund-raising goal of $350,000. We are pleased to report that we are half way there, but we need your help to reach our goal. Every donation, no matter its size, helps to make our work possible. As a non-profit with very low overhead, your donation is the best way to invest in FreeBSD. Please make that investment today.

Wednesday, November 10, 2010

FreeBSD developer Bjoern Zeeb, who recently completed the FreeBSD Jail Based Virtualization Project, has been awarded the Itojun Service Award. From the press release:

The second Itojun Service Award was presented today at this week’s Internet Engineering Task Force (IETF) meeting in Beijing, China. Bjoern A. Zeeb received the award for his dedicated work to make significant improvements in open source implementations of IPv6. IPv6 is the next generation of Internet protocol that will help ensure the continued rapid growth of the Internet as a platform for innovation.

First awarded last year, the Itojun Service Award honours the memory of Dr. Jun-ichiro “itojun” Hagino, who passed away in 2007, aged just 37. The award, established by the friends of itojun and administered by the Internet Society (ISOC), recognises and commemorates the extraordinary dedication exercised by itojun over the course of IPv6 development.

“For many years, Bjoern has been a committed champion of, and contributor to, implementing IPv6 in open source operating systems used in servers, desktops, and embedded computer platforms, including those used by some of the busiest websites in the world,” said Jun Murai of the Itojun Service Award committee and Founder of the WIDE Project. “On behalf of the Itojun Service Award committee, I am extremely pleased to present this award to Bjoern for his outstanding work in support of IPv6 development and deployment.”

The Itojun Service Award is focused on pragmatic contributions to developing and deploying IPv6 in the spirit of serving the Internet. The award, expected to be presented annually, includes a presentation crystal, a US$3,000 honorarium, and a travel grant.

“This is a great honour, and I would like to thank the people who recommended me for the award and the committee for believing my work was valuable. I never met Itojun but he was one of the people helping me, and I have the highest respect for his massive foundational work,” said Bjoern A. Zeeb. “As the Internet community works to roll out IPv6 to more and more people all around the globe, we also need to help others–developers, businesses, and users–understand and use the new Internet protocols so that the vision Itojun was working so hard for comes true.”

Each Internet-connected device uses an IP address and, with the number of Internet-connected devices growing rapidly, the supply of unallocated IPv4 addresses is expected to be exhausted within the next year. To help ensure the continued rapid growth of the Internet, IPv6 provides a huge increase in the number of available addresses. And, while the technical foundations of IPv6 are well established, significant work remains to expand the deployment and use of IPv6.

IPv6 was developed within the Internet Engineering Task Force (IETF), the Internet’s premier standards-making body responsible for the development of protocols used in IP-based networks. IETF participants represent an international community of network designers, operators, vendors, and researchers involved in the technical operation of the Internet and the continuing evolution of Internet architecture.

Tuesday, October 26, 2010

Efstratios Karatzas, the 2010 Google Summer of Code student who worked on the Audit Kernel Events project, has sent in his trip report for the EuroBSDCon DevSummit. This was his first FreeBSD conference and his first opportunity to meet other FreeBSD developers in person. He writes:

Attending the conference was a great way for me to get more involved with the FreeBSD project. The most significant part of the trip was getting to know all sorts of people actively working on the project, from kernel hackers to bugmeisters and doc people.

The 15 minute length presentations at the Dev Summit were helpful in getting informed about what other people are working on at the moment and also provided an understanding of how different teams operate in the scope of the FreeBSD project. Unfortunately, there weren't any people actively involved with parts of my work besides our pf maintainer, but I still had some very interesting talks with all sorts of people: a dinner with andre@ giving a mini lecture on kernel architecture and a talk with hps@ about memory mapping pop into mind. Another positive impact that the trip had on me was to encourage me to work harder and support the project to the best of my abilities. All in all, it was a great trip indeed.

The FreeBSD Foundation is a proud sponsor of MeetBSD California, which will be held in Mountain View, California November 5-6. There will be a Foundation booth at this event with lots of swag and informational brochures. Be sure to stop by to say hi, get your questions answered, suggest ideas for future funded projects, and consider making a donation.

If you are in the California area and have a commit bit (src, ports, or docs) or have participated in a FreeBSD Google Summer of Code project, you're welcome to sign up for the DevSummit the day before the conference. If you need to be sponsored (i.e. don’t have a FreeBSD commit bit), let Kris know and he’ll add you to the wiki page.

Thursday, October 21, 2010

The Foundation was a sponsor of this year's KyivBSD, held in Kiev, Ukraine on September 25. Alexander Yerenkow, the conference organizer, provided this report on the conference:

KyivBSD was the second installment in a newly created series of BSD-related conferences held in the Ukraine. The conference was attended by people from the Ukraine as well as Russia, Belarus, and Kazakhstan. The Foundation's financial support helped to make both this and last year's conference possible.

This year we were able to attract new partners and sponsors. Last year it was difficult to attract local companies as many were unfamiliar with BSD. This year, having last year's success as an example, was a lot easier. The local branch of D-Link was interested in sponsoring the conference and gave away three brand new WiFi routers. We received proposals from a few companies to place advertisements at the conference for money, but at the moment, we have no need for additional funds. We saw first-hand that many companies, individuals, and users have become more aware of FreeBSD and believe that the conference played a role in raising this awareness.

During the conference we ran a lottery with donated placards, books and routers for prizes. The funds raised from the lottery will be donated back to the Foundation at the end of this year.

The day after the conference we proctored the BSDA certification, which was the nearest certification event this fall for exam candidates from Russia and Kazakhstan. We were happy to provide them with the opportunity to take the exam.

Looking forward to next year, we hope to attract even more companies and attendees.

Monday, October 18, 2010

Max Khon has completed the DAHDI Project and provides the following report:

I am pleased to announce the completion of the DAHDI/FreeBSD project.

DAHDI (Digium/Asterisk Hardware Device Interface) is an open-source device driver framework and a set of HW drivers for E1/T1, ISDN digital and FXO/FXS analog cards.

The main goal of this funded project was to make it possible to use FreeBSD as a base system for software PBX solutions.

Currently, most of the DAHDI bits have been ported, including the DAHDI framework itself, HW drivers, TDMoE drivers, drivers for software and HW echo cancellation (Octasic, VPMADT032) and HW transcoding (TC400B). The project is hosted in the official DAHDI SVN repository.

misc/dahdi in the FreeBSD ports collection now contains the most recent bits of DAHDI/FreeBSD and also some stuff that is not available in DAHDI/FreeBSD SVN due to licensing and copyright restrictions. These include the OSLEC echo canceller and the experimental zaphfc driver.

I will continue periodic merges from DAHDI/Linux SVN on a regular basis and roll out new DAHDI/FreeBSD releases. These will most likely be synchronized with DAHDI/Linux releases.

Thursday, October 14, 2010

The Foundation sponsored several developers and summer of code students to attend last week's EuroBSDCon. We'll publish the trip reports as they come in. Brooks has already sent his and his report is as follows:

EuroBSDCon 2010 was a small, productive conference with a well organized developers summit. I arrived on Wednesday, October 6th and met a group of developers for dinner. The next morning we headed to the Karlsruhe Institute of Technology for the developers summit. The format was 15-minute talk & discussion sessions in the morning and longer meetings in the afternoon. In the morning we heard about and discussed USB, toolchains, documentation, NanoBSD, pf, jails, and virtual private servers. In the toolchain session I provided a quick review of the current state of affairs followed by a general discussion. The progress of clang's integrated assembler was of particular interest.

Useful outcomes from the initial discussion included identification of the need for people to drive both libgcc and libc++ replacement efforts. Much of libgcc has been replaced by compiler-rt, but we may need to write a few components and we need to package it appropriately. More work will be required for libc++, but there are patches available to make it work on Linux.

After lunch, topics for larger discussion were solicited and we broke up into groups. I lead a small discussion of toolchain issues. Koop Mast reported that nearly half of the ports collection now builds with clang and three ports have fixes in the works which will unblock over 5000 more ports. Ed Schouten volunteered to work on a libgcc replacement. As a prototype we decided to start by replacing all the parts of libgcc which have counterparts in compiler-rt and then see what's left. Koop expressed interest in trying to to get libc++ building as a port. One long pole dependency we found is support for POSIX 1003.1-2008 per-thread locales. Functions such as newlocale(), uselocale(), and freelocale() will need to be added to libc. Another issue we discussed was if we actually need a /usr/bin/as. It's not clear that anything in the base system needs it and most things that use an assembler directly actually use something like NASM. If we don't need it in the base that will make things easier since currently there isn't a gas replacement as part of llvm/clang.

Other topics of the afternoon included inet6, USD, documentation, and cluster administration.

The next day followed the same format with morning talks on PC-BSD; FreeNAS; kernel event timers; problem reports; ports tinderboxes; GSoC projects: NFS event auditing, optional kernel subsystem registration,ringmap, and accessing subsystems via libraries; and finally a general GSoC discussion. In the GSoC discussion there seemed to be general agreement that recent FreeBSD additions including the soc-status mailing list and the multidimensional ranking system we used for proposals this year were good ideas. There was a suggestion that we should make sure mentors instruct their students to provided some overall context in their soc-status proposals.

In the afternoon, discussions covered ports, pc-bsd, bugbusting, ringmap, cluster administration, event timers, and freenas. I joined the cluster administration discussion and working session where we talked about the status of the various clusters as well as some possibilities for new mirror systems as well as the fact that we're nearly ready to go with the things required to let us build ports with
quarterly releases.

After the days summit we adjourned to the developers summit dinner which was quite excellent. Over all the summit was well organized and the format worked well. My only complaints where a catering error which left us without snacks on the second day and that soliciting ideas for breakout sessions with a quick meeting before they started probably wouldn't scale to a larger group such as the BSDCan devsummit. For something like that some of the techniques from un-conferences would be appropriate.

The main conference was a normal two track format with a keynote at the beginning. Saturday began with an opening speech and then phk give a provocative overview of the system tools philosophy where he argued that we need to bring the power to Unix tools like grep to structured data (primarily XML). I think he made a good case and it certainly stirred up a good bit of controversy. I then attended the next four talks on Track 1. Three of those were virtualization with Bjoern Zeeb talking about jails and vimage, Jamie Gritton talking about his new jail management framework which includes config file support, and Klaus Ohrhallinger talking about his work on virtual private systems (VPS) which is essentially VIMAGE taken to the logical extreme and includes support for live migration of virtual instances. The fourth talk was on netpgp and the ability to use ssh host and user keys to sign and
encrypt data. I left the talk knowing that you could do that, but with no idea why you would want to. The final session I attended was on recent developments in pf on OpenBSD. It sounds like they greatly simplified some aspects of the code at the cost of breaking most users configuration files. If FreeBSD were to adopt this code it would need to be as yet another firewall. The day ended with the conference organizers asking me to give a FreeBSD status report on Sunday.

On Sunday I worked on slides for the status report during early talks. I did catch Martin Matuska's talk on ZFS which included detailed coverage of the current state of ZFS both technically and politically along with upcoming features in v28. While attending that talk I missed a talk on binary package updates which I would have liked to hear. In the afternoon I wrapped up my slides and the presented a FreeBSD status report along with reports on NetBSD, OpenBSD, and PC-BSD. Between the projects there were both sharp distinctions on some things like the toolchain and near total agreement on others like moving to mandoc for manpage rendering. On the toolchain front, OpenBSD is beginning to move from gcc 2 and 3 to various pre-GPLv3 versions of 4. NetBSD has been spending a fair bit of time on pcc, but has also imported a GPLv3 binutils and plans to import gcc 4.5 soon. While putting slides together I found it that pretty impressive to pull together a set of features from the last several months as well as works in progress. It was also interesting to see how many of the features were partially funded by the foundation.

All in all the conference came off well. I do fear that if we had more attendees in the future that we would need a different venue, but that will be many years away. I'm looking to next year's conference in the Netherlands.

Monday, October 4, 2010

The FreeBSD Foundation is a proud sponsor of EuroBSDCon. Several of the Foundation Directors will be at the conference later this week. We'll have a booth in the booth area with Foundation brochures and swag and you're welcome to drop by to give feedback, ask questions, and/or make a donation. Hope to see some of you there!

Saturday, September 25, 2010

Rui Paulo recently committed to FreeBSD HEAD the userland DTrace support, marking the completion of this FreeBSD Foundation sponsored project. Rui summarizes his work as follows:

DTrace, which originated on Solaris 10, is a comprehensive tracing framework that allows the instrumentation of software. FreeBSD has had DTrace support since 7.0, but until now tracing userland programs was not possible. Now that this project is complete, anyone can use DTrace with userland programs.

Tracing and instrumenting userland programs is very important because it allows the understanding of what's going on, especially on highly complex systems such as databases, web servers, and language interpreters. Since DTrace on FreeBSD now has the ability to instrument both the kernel and the userland program, you can get very meaningful data on how your program is behaving and why.

Companies building products on FreeBSD now have the ability to create better products and find about problems faster then before.

Monday, September 6, 2010

The FreeBSD Foundation will be represented at the *BSD booth during Ohio Linuxfest this upcoming Saturday in Columbus, Ohio. This conference is free, but you need to register by midnight this Wednesday.

The *BSD booth will be available from 8:30 to 19:30 and we'll have Foundation pamphlets and swag available and can accept cash donations. As always, donations will be recorded on the Foundation website.

Thursday, August 26, 2010

Bjoern Zeeb has provided a summary regarding the completion of the funded portion of the FreeBSD Jail Based Virtualization Project:

I am happy to report that the funded parts of the FreeBSD Jail Based Virtualization project are completed. Some of the results have been shipping with 8.1-RELEASE while others are ready to be merged to HEAD.

Jails have been the well known operating system level virtualization technique in FreeBSD for over a decade. The import of Marko Zec's network stack virtualization has introduced a new way for abstracting subsystems. As part of this project, the abstraction framework has been generalized. Together with Jamie Gritton's flexible jail configuration syscalls, this will provide the infrastructure for, and will ease the virtualization of, further subsystems without much code duplication. The next subsystems to be virtualized will likely be SYSV/Posix IPC to help, for example, PostgreSQL users. This will probably be followed by the process namespace.

Along with the framework, debugging facilities, such as the interactive kernel debugger, have been enhanced so that every new subsystem will be able to immediately make use of these improvements without modifying a single line of code. Libjail and jls can now work on core dumps and netstat is able to query individual live network stacks attached to jails.

For the virtual network stack, work was focused on network stack teardown, a concept introduced with the network stack virtualization. The primary goal was to prototype a shutdown of the (virtual) network stacks from top to bottom, which means letting interfaces go last rather than first and still being able to cleanly shutdown TCP connections. Good progress was made, but a lot of code over the last two decades was never written in a way to be cleanly stopped. Work on this will have to continue, along with virtualizing the remaining network subsystems to allow long term stability and a leak and panic free shutdown. As a side effect, users of non-virtualized network stacks will also benefit, as other general network stack problems are identified and fixed along the way.

I am happy to see more early adopters, former OpenSolaris users, and people contributing code or reporting problems and would like to encourage people to further support this project.

My special thanks go the FreeBSD Foundation and CK Software GmbH for having sponsored this project, as well as to John Baldwin and Philip Paeps for helping with review and excellent suggestions.

BOULDER, CO, August 10, 2010 — The FreeBSD Foundation, a 501(c)(3) non-profit organization dedicated to supporting the FreeBSD Project and community, today announced that NYI, a New York City-based, mission-critical data services provider, will be mirroring key West coast infrastructure at NYI's 999 Frontier Road data center in Bridgewater, New Jersey, a recently opened 40,000 square foot facility.

In addition to providing enterprise-grade redundancy and reliability for the Project's infrastructure, the East coast mirror will reduce latency during heavy download times, distribute load between the two coasts, and allow for up-to-date backups of all Project data that can be synchronized via high-speed Internet connections.

"Having a well-connected, secondary site with NYI's amenities to host FreeBSD project infrastructure means that we can move services between sites when doing scheduled maintenance to improve reliability for FreeBSD developers and users," said Simon L. Nielsen, FreeBSD.org administrative team. He added, "The new site also enables us to expand significantly the available hardware for FreeBSD package building, allowing the FreeBSD ports team to perform QA test builds and quickly produce binary FreeBSD packages for end-users."

"We are long-time open-source advocates," said Phillip Koblence, VP Operations, NYI. "The FreeBSD Foundation in particular represents everything that got us into technology in the first place. With this deployment, we take our commitment to a new level in the hope that what we are doing lays the foundation for next-generation data centers built around FreeBSD. As many people in the community know, NYI's 999 Frontier Road facility features many of the Project's efforts, as everything from PDUs to the servers run FreeBSD."

The East coast mirror at 999 Frontier is also notable because it replaces aging and inadequate hardware; provides dual-configuration so that experimental vs. production runs can be separated out, allowing changes to the ports system to be evaluated continuously rather the interrupting production flow; deploys to multiple sites, providing resiliency in the event of a failure; provides build capacity required to support the ports ABI changes required to improve the foundations for binary package support while maintaining ports-stable regression testing.

The FreeBSD Foundation is pleased to have been able to fund the purchase of the hardware. Brad Davis, Mark Linimon, and Simon Nielsen from the FreeBSD Project worked on the configuration, along with key members of the NYI team.

About The FreeBSD Foundation
The FreeBSD Foundation is a 501(c)(3) non-profit organization dedicated to supporting the FreeBSD Project and community. The Foundation gratefully accepts donations from individuals and businesses, using them to fund and manage projects, sponsor FreeBSD events, Developer Summits and provide travel grants to FreeBSD developers. In addition, the Foundation represents the FreeBSD Project in executing contracts, license agreements, and other legal arrangements that require a recognized legal entity. The FreeBSD Foundation is entirely supported by donations. More information about The FreeBSD Foundation is available on the web.
About NYI
Established in 1996, NYI is headquartered in the heart of the Wall Street area and owns and maintains its own data centers, including 999 Frontier, a newly opened 40,000 square foot facility in Bridgewater, New Jersey. The company's core services include colocation, dedicated servers, web and email hosting, and managed services, as well as turnkey disaster recovery and business continuity solutions from its Bridgewater location. With high-bandwidth connectivity partners AboveNet, Verizon Business, Optimum Lightpath, and AT&T, NYI specializes in mission-critical data services for the financial services industry, in addition to customers from a broad range of industries, including media, law, fashion, architecture, life sciences and real estate. NYI is SAS 70 Type II-compliant, in additon to being both PCI and HIPAA compliant. For more information, visit.

Sunday, August 8, 2010

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

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.

You request funding based on a realistic and economical estimate of travel costs, accommodations, 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.

Once received, 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 the benefit to the community by funding your travel. If approved, we require you to submit a report on your trip, which we may show to current or potential sponsors, and may include here and 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.

Monday, July 19, 2010

We are pleased to announce that Max Khon has been awarded a grant to finish the DAHDI (formerly known as Zaptel) FreeBSD driver port.

The purpose of the DAHDI/FreeBSD project is to make it possible to use FreeBSD as a base system for software PBX solutions.

DAHDI (Digium/Asterisk Hardware Device Interface) is an open-source device driver framework and a set of hardware drivers for E1/T1, ISDN digital and FXO/FXS analog cards. Asterisk is one of the most popular open source software PBX solutions.

This funded project includes porting the DAHDI framework and hardware drivers for E1/T1, FXO/FXS analog, and ISDN digital cards to FreeBSD. This also includes TDMoE support, software and hardware echo cancellation (Octasic, VPMADT032) and hardware transcoding support (TC400B). The work is ongoing in the official DAHDI SVN repository with the close collaboration with DAHDI folks at Digium.

The project is nearing its completion: DAHDI framework and HW drivers telephony cards has been ported and tested. There are a number of success stories from early adopters who use E1/T1 and FXO/FXS cards on FreeBSD for several months.

Thursday, July 15, 2010

On July 3, Lawrence Stewart committed SIFTR (Statistical Information For TCP Research) to HEAD. SIFTR was part of the Improvements to the FreeBSD TCP Stack project that the Foundation funded last year. SIFTR is a kernel module that logs a range of statistics on active TCP connections to a log file. It provides the ability to make highly granular measurements of TCP connection state, aimed at system administrators, developers and researchers.

Friday, July 2, 2010

We are pleased to announce that Edward Tomasz Napierala has been awarded a grant to implement resource containers and a simple per-jail resource limits mechanism.

Unlike Solaris zones, the current implementation of FreeBSD Jails does not provide per-jail resource limits. As a result, users are often forced to replace jails with other virtualization mechanisms. The goal of this project is to create a single, unified framework for controlling resource utilisation, and to use that framework to implement per-jail resource limits. In the future, the same framework might be used to implement more sophisticated resource controls, such as Hierarchical Resource Limits, or to implement mechanisms similar to AIX WLM. It could also be used to provide precise resource usage accounting for administrative or billing purposes.

"It's great that the Foundation decided to fund this project", Edward noted. "It will make jail-based virtualization a much better choice in many scenarios, for example for Virtual Private Server providers."

Tuesday, June 29, 2010

There will be a FreeBSD Foundation booth during MeetBSD Poland this Friday and Saturday. Feel free to drop by the booth to learn more about the Foundation's efforts, check out the cool Foundation swag (baseball caps and toques), pick up our latest brochure, and/or make a donation to the Foundation.

Rui Paulo has been awarded a grant to add DTrace userland support to FreeBSD.

DTrace is a general purpose and lightweight tracing framework that allows administrators, developers and users to investigate causes of system failure or performance bottlenecks. The FreeBSD operating system has had support for kernel-only DTrace since FreeBSD 8.0, but DTrace userland support was missing. Having userland support in DTrace allows inspection of userland software itself and its correlation with the kernel, thus allowing a much better picture of what exactly is going on behind the scenes.

This project will first concentrate on adding libproc support for symbol to address mapping, address to symbol mapping, breakpoint setup and the rtld interactions with DTrace. Next it will focus on DTrace process control, importing the pid provider and adapting it to FreeBSD and porting the userland statically defined probe provider (usdt). Finally it will bring in the plockstat provider.

"By having userland DTrace support, companies can make their products perform much better on FreeBSD due to the fact that they now have access to this amazing tool," said FreeBSD developer Rui Paulo. He also said, "When we mix the userland support with the kernel side DTrace support, we can also make FreeBSD a better operating system because we can investigate performance bottlenecks much easier."

Monday, June 21, 2010

This project includes several enhancements to the existing FreeBSD SNMP framework, including SNMPv3-compliant user authentication, packet encryption and view-based access control. In addition, the project also includes a new module that will allow full SNMP management and monitoring of the FreeBSD wireless networking stack. When the project is completed, FreeBSD should be the OS of choice when building open source-based embedded wireless appliances due to the advanced capabilities of its wireless network stack, and the light-weight, secure and complete management solution that bsnmpd(1) will provide out of the box. Existing FreeBSD installations that use bsnmpd(1) for monitoring will also benefit from the added security and finer-grained access-control to SNMP data.

"SNMP is the defacto standard for network monitoring," said Shteryana Shopova, FreeBSD developer. She also added, "SNMP is used everywhere - in network servers, switches, routers, firewalls, workstations, ip phones, printers, UPSs, all sorts of embedded appliances. I am happy to have the opportunity to work on several additions to bsnmpd(1) that have been requested by the FreeBSD community."

Saturday, June 12, 2010

Last month the FreeBSD DevSummit was once again held the two days prior to BSDCan. While the DevSummit is aimed primarily at FreeBSD Developers, some invitees were from other organizations that use, contribute to, or are otherwise interested in the development of FreeBSD. Such a mix offers opportunities to discuss pain points and ways to collaborate.

One of the invited speakers was Greg Smith from 2ndQuadrant, a company that provides professional services and support for PostgreSQL. Greg wrote about his experience at the DevSummit on the 2ndQuadrant blog and has given permission to repost that entry here. It should be noted that the FreeBSD Foundation is currently funding a project for userspace DTrace.

This week I did something I'd prefer to never repeat: I left the country, did something useful, and made it back again in the same day. The occasion was the FreeBSD Developer Summit, held just before BSDCan--the convention that happens in Ottawa the week before PGCon every year. So I get to head right back again next week, but stay a while that time.

The FreeBSD developers were nice enough to sponsor my trip so that we could talk about both the business and technical hurdles that I felt were keeping the sort of companies I work with from deploying their databases on FreeBSD more often than they do. My slightly updated slides are available on our talks page, I cleaned up a couple of things from what was presented (the most important rewording I'll talk about below).

I was very pleased at how friendly and receptive the developers were even to some of my critical comments. FreeBSD and PostgreSQL have very like minded communities: open for any purpose BSD license, academic roots, developers focused on stability, and even a strong documentation culture. There's been plenty of cross-over too.

Much of the PostgreSQL infrastructure has been run using FreeBSD jails for quite some time (although plans are moving to use more Debian in its place, details on why at Inside the PostgreSQL Project Infrastructure). My running joke during the talk was that if PostgreSQL developers are eating their own dog food by deploying critical infrastructure that depends on the database, much of that has been served in a FreeBSD bowl. (The lunch at the conference session was pizza, much better choice)

And there's been plenty of FreeBSD development that's used PostgreSQL benchmarking as a measuring stick for the success of their advances. The very popular Introducing FreeBSD 7.0 slides that not only showed their achieving performance parity against Linux during that release, it doubled as a document showing how PostgreSQL outscales MySQL. Cheers all around for community driven, BSD licensed code.

One bit of audience contention during my talk came from my assertion that not having support for Emulex fiber channel cards in FreeBSD was preventing a significant amount of "big iron" adoption for databases, due to their perception as the market leader for connecting up expensive hardware like SANs. The guys from FreeBSD hardware and support vendor iXsystems called me out on that, suggesting that the alternative vendor here--QLogic--is both completely trusted by the big boys and has top notch FreeBSD driver quality.

I did a bit more research into whether I was suffering from sampling bias from the set of people I'd talked to about this, and it looks like that was the case. While Emulex claims they've been named Sun's "Best-in-Class Supplier for OEM products", and all the Sun FC cards I've personally run into came from them, there are tons of Sun rebrands of both Emulex and QLogic cards. Same thing is true at all the other vendors I mentioned in my talk; you can get FC cards from both manufacturers via HP and Dell too. I think my general point, that not supporting both Emulex and QLogic hurts the perception of FreeBSD as a serious choice for large businesses, still stands; it's just not quite as bad as I'd feared. Accordingly, I tweaked the wording in the slides I'm publishing, to better match reality here than the ones I presented.

In additional to the solid core they've been growing for years, FreeBSD's license has allowed them to incorporate two very valuable features Sun released as open-source, ZFS and DTrace, into their operating system, both of which are incompatible with Linux's license and are extremely valuable for PostgreSQL deployments. It's still not ideal yet; FreeBSD DTrace can currently be used only by root for example. Limitations such as these have in the past kept me from being particularly motivated to work with FreeBSD. The existence of a free commercial Solaris that ran on generic hardware, combined with the steady progress and open enough community around OpenSolaris, satisfied my needs better. While not many of my PostgreSQL installations have been on Solaris, its has a monopoly share for hosting the terabyte scale databases I've worked with. High quality filesystem snapshots via ZFS and the additional piece of mind you get from disk block checksums alone justified those platform decisions.

The problem today is that hating everything about how Oracle does business is what got me working with PostgreSQL in the first place, and now that they own Sun they're doing the same things to Solaris. No more Solaris on non-Sun hardware, serious cutbacks on the open-source version (OpenSolaris looks like a walking corpse to me), cutting off even basic OS patches unless you have a support contract--that's what we've seen just in the first round from Oracle here. Solaris isn't free in any sense of the word again, we're right back to the same dynamics that pushed me away from them and toward Linux fifteen years ago.

But I continue to be dissapointed at how little focus there is on quality control in Linux. How poorly the filesystem mechanics work for the sorts of database work I do doesn't help either. The Linux OOM killer might as well be named the Linux PostgreSQL Hater for how it acts on my servers. And those sexy Solaris features I know work so well for databases, still not there (even if SystemTap is getting better at DTrace emulation).

Meanwhile, FreeBSD has the whole "free" thing sorted out right in their name, and their quality control paranoia is similar to that of your typical good DBA. It looks to me like they're very close to fully assimilating ZFS and DTrace to the point where they can start improving them, rather than just working on getting the original feature set Solaris already had complete and the matching code stable. I think all of us who work on business critical PostgreSQL deployments and who value free software should do a sanity check on just what dog food we're chewing on, and start making sure there's a FreeBSD bowl there at least sometimes. From what I heard this week, the FreeBSD developers are gearing for another round of chewing on ours too. They're looking into database oriented performance improvements as part of future development, and they're not any happier about using MySQL for that than I am about running PostgreSQL on Solaris. Looks like it might be bowls of dog food all around. Nobody said that leading the software industry was going to be tasty.

The Foundation is pleased to be a sponsor for MeetBSD, to be held in Krakow, Poland July 2-3. Tomasz Dudzisz, one of the organizers of MeetBSD, recently sent a thank you to the FreeBSD Foundation Board of Directors:

We would like to thank you for your generous donation which we received a few days ago. Your contribution makes it possible for us to organize the best BSD event in our part of Europe. With the help of donations from supporters such as you, we can give a great chance for participants to talk to the FreeBSD project's contributors in person.

We believe that high-calibre technical content of the offered lectures and unforgettable atmosphere of the side talks make meetBSD one of the greatest UNIX-oriented conference not only in Poland but world wide.

We hope for your continued support in the future. Once again thank you for your generous donation.

Thanks! We agree that sponsoring conferences provides many benefits to the FreeBSD community.

Wednesday, June 9, 2010

One of the proposals selected for funding earlier this year was for jail based virtualization. Bjoern Zeeb, the developer being funded, recently provided an update on the progress of this project:

Bjoern A. Zeeb has been awarded a grant to improve FreeBSD's jail based virtualization infrastructure and to continue to work on the virtual network stack. His employer, CK Software GmbH is matching the Foundation's funding with hours.

FreeBSD has been well known for its jail based virtualization during the last decade. With the import of the virtual network stack, FreeBSD's operating system level virtualization has reached a new level.

This project includes cleanup of two years of import work and development and, more notably, brings the infrastructure for a network stack teardown. Cleanly shutting down a network stack in FreeBSD will be the major challenge in the virtualization area to get the new feature to production ready quality for the 9.x release
lifecycle.

Further, the project includes generalization of the virtual network stack framework, factoring out common code. This will provide an infrastructure and will ease virtualization of further subsystems like SYSV/Posix IPC with minimal overhead. All further virtualized subsystems will immediately benefit from shared debugging facilities, an essential feature for early adopters of the new technology.

Improved jail based virtualization support, that continues to be very lightweight and as easily manageable as classic jails, will be a killer feature for the next few years. It will allow people to partition their FreeBSD server, run simulations
without racks of hardware, or provide thousands of virtual instances in hosting environments fairly easy and efficiently. While this follows the trend of green computing, it also adds to FreeBSD's virtualization portfolio with Xen or other more heavyweight hypervisor support, which can be mixed with jails as needed.

While work in this area will have to continue, the funding for this project will end mid-July 2010.

Thursday, June 3, 2010

Barry Steyn, Software Development Manager at RedButton, writes the following in his BSDCan trip report:

Let me start by saying that I am from Africa, South Africa to be exact. Free software is very advantageous as South Africa is not a rich country. I am using FreeBSD as a server due to its incredible stability in such an environment. Whilst I have been on the FreeBSD mailing lists for sometime, I have always wanted to meet the community. South Africa is quite far away (geographically) from the first world countries; this compounded with the price of airfare makes it very infrequently that South Africans travel. I was very fortunate to be able to attend BSDCAN 2010 with the support of the FreeBSD foundation.

There were several very interesting talks. For me, the four most interesting talks were the talks on Clang BSD, Security implications of Ipv6, Colin Percival's cryptography overview and wireless meshing under FreeBSD. The ClangBSD talk introduced me to LLVM – something that I was unfamiliar with, and am now very excited about. Ipv6 is the way of the future; after this talk, I realise that it may not happen all that smoothly! The highlight for me was Doctor Percival's talk. It was informative and humorous – the perfect combination. My business in South Africa has to do with WiFi hotspots, so I felt that the wireless meshing talk was put there just for me!

All in all, a fantastic conference. I would like to thank the coordinators of the conference (Dan Langille comes to mind, not to forget about all the volunteers) for organising such a wonderful event.

Wednesday, June 2, 2010

First I’d like to start this post by thanking the FreeBSD Foundation for funding my trip. I’ve been contemplating attending BSDCan for years and without their financial support I would have missed it this year again.

I’ve been a FreeBSD ports committer since 2006. In 2007, my commit privileges were extended to the src tree. In 2008, Pav approached me to become part of the Ports Management Team.

I’ve had the chance to meet up with a few people (Ed Maste, Garrett Cooper, Tim Kientzle) and discuss the coordination of the work that is being done and will be done on package tools as part of Google Summer of Code. During the developer summit, Mark Linimon, Erwin Lansing and myself held a discussion about the current state of packages and how to improve the user experience. A few people offered suggestions andportmgr took good note of them. I did take some time to go through the problem reports assigned to portmgr. I also attended a chat about FreeBSD mirrors along with some members of core, admins and portmgr.

There were a lot of interesting talks during the conference and obviously choices had to be made on which ones I would go see. I really enjoyed Will Backman’s keynote. The talk about the PCBSD installer was very interesting and it looked like there could be a drop-in replacement for sysinstall in the very near future. Lawrence Stewart’s talk was a good summary of what tools to use when doing FreeBSD developement work.

BSDCan 2010 was a great time, I really enjoyed it and I feel it was time spent in a productive fashion. I would like to thank the following people: Dan Langille and his volunteers for the brilliant conference they put together, Sam Leffler / Philip Paeps / Gavin Atkinson / Jonathan Anderson for sharing a room with me, Jordan Hubbard for a memorable meal in the Works Burger in Glebe and Kevin Van Vechten for the invaluable insight on American Sports and the FreeBSD Foundation, once again, for sponsoring my trip.

Attending conferences makes the difference between being a contributor and being part of a community. It is the perfect opportunity to meet new people with similar interests, meet people you’ve been exchanging emails with (putting a face on a name) and make sure you stay updated with the works in progress.

Tuesday, May 25, 2010

Recently, the Foundation sponsored Ivor Prebeg from the University of Zagreb to attend BSDCan and the FreeBSD Developer Summit. Ivor had this to say about his experiences at the conference:

I managed to make contacts and find commiters who might be willing to review and eventually commit patches I have. I had the chance to chat with Bjoern Zeeb (bz@) about VIMAGE stuff and how are we going to proceed with merging the code into HEAD and after that. Had a really great time with nice people who made me look forward to working with and meeting them again.

Besides multicast routing virtualization and IGMP snooping extensions, I learned a lot about other areas of *BSD development that I had no clue about, like packet scheduling, ClangBSD branch, mesh networks... I was also thinking about joining the ClangBSD team if I have enough free time.

I had a great time hanging out with Roman Divacky, Ed Schouten, Alexander Motin, Gavin Atkinson, Bjoern Zeeb, Marc Balmer and all the other wonderful people that made my stay in Canada even more delightful.

Wednesday, April 14, 2010

Brandon Gooch, a system administrator at Southeastern Oklahoma State University, recently wrote the Foundation to express his gratitude towards FreeBSD developers in general and the recent wireless work in particular. The Foundation is always looking to collect appreciations and success stories, as well as pain points, that if addressed, could assist in FreeBSD adoption. When was the last time you pinged a developer on IRC or sent them a quick email to let them know how much you appreciate their work? It only takes a minute to let someone know that their hard work is being put to good use by others.

With Brandon's permission, his email text is re-posted here:

I'd like to thank Rui Paulo and Bernhard Schmidt, and Sam Leffler SO much for working so hard on the 802.11 stack and driver support. In my observations, wireless networking support (or lack of) from the OS seems to be one of the biggest deal-breakers when people I know try FreeBSD (from Linux or even Windows).

Driver support in general is a Good Thing and when one of my co-workers installs FreeBSD and his or her wireless card "just works" -- it looks really good for the project.

I'm sure there are still many issues left to resolve and still more features to implement. I believe that even better support is on the way. I also know that an OS can't be "all things to all people", but the solid code and great support from the developers and community make it a real pleasure to take part in the FreeBSD ecosystem.

I'm also very proud of the efforts of the FreeBSD Xorg devs (Robert Noland in particular) and the VirtualBox devs (Bernhard Froehlich and Co.). They have helped me implement several FreeBSD-based solutions at work due the the excellent features and performance of both Xorg and VirtualBox.

I look forward to opportunities to evangelize the FreeBSD project both in my professional and personal life. Thank you for making that task much easier.

Monday, March 15, 2010

Murray Stokely has completed his captioning project, which was funded by the FreeBSD Foundation, and provides the following update:

A pilot project to improve the machine generated captions of technical conference lectures from the BSD Conferences YouTube channel has been completed. The 73 videos in this channel have been viewed over 200,000 times since the channel launched in late 2008, and the addition of human-edited transcripts to some of our most popular videos makes this content more accessible to people around the world.

In addition to the benefits to the hearing impaired, captions are very useful for international viewers as well as for the improved discoverability of this content by search engines. The improved quality of the English language transcripts also improves the quality of the automated translation of the captions into over 45 different languages. It is also now possible to search for words and phrases in the audio transcripts and get a link directly to videos that contain spoken content of that word or phrase.

For example, try searching for a famous line from one of Dr. Kirk McKusick's FreeBSD Kernel Internal Lectures. The above link will take you to the Google Video Search Result page where one of Dr. McKusick's lectures containing the phrase as long as dinosaurs and mainframes is the first result, along with a snippet of the transcript from his lecture, just as you would see the snippet from text content on a web page. A dozen of our most popular videos of FreeBSD technical content are now captioned and fully indexed allowing users to search for very technical terms and get access to lecture material from BSD Conferences.

Sunday, March 14, 2010

The FreeBSD Foundation is pleased to announce that Erwin Lansing has joined the Board of Directors. For those of you who haven't met Erwin, here is his bio:

Erwin previously worked for an rapidly expanding webhosting startup and now holds a position as Network Systems Engineer at the Danish incumbent ISP, TDC. He joined the FreeBSD Ports Development Team in 2003 and has been a member of the Ports Management Team since 2005. He is mainly working on the package building cluster, creating and distributing ready-to-install binary packages of 3rd party software for FreeBSD, in addition to regression testing the integration of FreeBSD with 3rd party software projects.

Friday, February 19, 2010

Late yesterday, Paweł Jakub Dawidek committed HAST to HEAD, marking the completion of this Foundation sponsored project. We asked Pawel to write a few words about the project. He says:

HAST is ready!

I'm very happy to report to FreeBSD users that the HAST project I was working on for the last three months is ready for testing and already committed to the HEAD branch.

I'll describe what HAST does in few words. HAST allows for synchronous block-level replication of any storage media (called GEOM providers, using FreeBSD nomenclature) over a TCP/IP network for fast failure recovery. HAST provides storage using the GEOM infrastructure, meaning it is file system and application independent and can be combined with any existing GEOM class. In case of a primary node failure, the cluster will automatically switch to the secondary node, check and mount the UFS file system or import the ZFS pool, and continue to work without missing a single bit of data.

I must admit the project was quite challenging, not only from the technical point of view, but also because it was sponsored by the FreeBSD Foundation. The FreeBSD Foundation has a great reputation and is known to select the projects it funds very carefully. I felt strong pressure that should I fail, the FreeBSD Foundation's reputation might be hurt. Of course, not a single dollar would be spent on a failed project, but the FreeBSD community's expectations were very high and I really wanted to do a good job.

During the work a number of people contacted me privately offering help, explaining how important HAST is for FreeBSD and giving me the motivation to soldier on.

I hope that HAST will meet the community's expectations and I myself am looking forward to using it :)

Monday, January 25, 2010

The FreeBSD Foundation is soliciting the submission of proposals for work relating to any of the major subsystems or infrastructure within the FreeBSD operating system. Proposals will be evaluated based on desirability, technical merit, and cost-effectiveness. Download the PDF of the complete Guidelines if you are interested in a submission.

Proposals must include the following:

A detailed description of what is being proposed, how it will benefit the FreeBSD project, and why the work is needed. Also include your name, email address, mailing address, phone number, and involvement in the FreeBSD Project.

You need to include a timeline and costing for the project. This includes your fees, compensation for reviewer, and taxes. We would also like you to include a rough estimated breakdown of how the money will be spent. Also include the estimated man hours.

Technical reviewers are very important to the project. It lends to accountability on the project. The Foundation does not have the staffing resources to provide detailed source code review, but feels that detailed technical review of funded projects as they proceed is extremely important. The reviewer may request to be compensated for their time they spend on the project. It is important that the reviewer is familiar with what you plan to accomplish. The person should be a recognized FreeBSD contributor. Include in your proposal the name of the reviewer and what criteria you used to select this person. Please include this cost in your final project cost.

Proposals must include milestones for which partial payments can be made. In addition to the milestones, a completion target date must be proposed with the completed project placed into the FreeBSD source repository. A proposal will be rejected if a target completion date is not submitted. Payments will only be made when milestones are reached and the project has been completed.

All proposals must be in US dollars.

Proposals are open to all developers, including non-FreeBSD committers, but developers without access to commit to the source tree must provide details about how the completion guidelines will achieved.

Friday, January 22, 2010

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 January 29, 2010 to apply for this grant.

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.

Friday, January 1, 2010

George Neville-Neil has written the lead article for the January issue of the Open Source Business Resource (OSBR) and the FreeBSD Foundation is the sponsor for this month's issue. The entire issue is available as a PDF and George's article is also available in HTML. You are welcome to host/translate a copy of the PDF or article elsewhere as long as you attribute George as the author and the OSBR as the original publication source.

From the article's abstract:

The processes that open source projects use to produce new work and maintain the quality of their code base is a subject that comes up infrequently in discussions of open source. One reason for this is that engineers and programmers are usually loathe to deal with issues that are not directly related to the piece of code or technology that they are working on.

Successful businesses know that good processes lead to continued success. The attributes that attract a business to an open source project are stability, reliability, and longevity. Stability gives a business the confidence to invest time into developing products on the project's platform, safe in the knowledge that the next incremental step in development won't be torpedoed by some unforeseen change. Reliability is often not associated with open source and many projects are perceived as being too cutting edge for a business to build upon. Longevity is of value as many businesses are inherently conservative in their approaches, attempting to reduce the risks of adopting any technique or technology. One way to reduce risk is to work with an open source project that has a proven track record of delivering quality products, on schedule.

This article attempts to dispel the myth of the perceived tension between a formally run business and the apparently less formally run open source projects with which a business interacts. We describe how one particular open source project has developed processes which provide its users, customers, and partners with a product that is stable, reliable, and long lived.