<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://www.kerneltrap.org"  xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>KernelTrap - PF</title>
 <link>http://www.kerneltrap.org/taxonomy/term/471/0</link>
 <description></description>
 <language>en-local</language>
<item>
 <title>C2K8 OpenBSD Hackathon</title>
 <link>http://www.kerneltrap.org/OpenBSD/C2K8_OpenBSD_Hackathon</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/news/openbsd&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/K-OpenBSD_0.gif&quot; alt=&quot;OpenBSD news&quot; title=&quot;Articles about OpenBSD.&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;&quot;&lt;i&gt;The OpenBSD Foundation is pleased to announce that it has completed arrangements with the University of Alberta in Edmonton to host the 2008 Annual OpenBSD Developer&#039;s Conference (C2K8 Hackathon) from June 7 to June 15, 2008,&lt;/i&gt;&quot; stated &lt;a href=&quot;http://www.openbsdfoundation.org/press/pressrelease-2.txt&quot;&gt;an announcement by the OpenBSD Foundation&lt;/a&gt;, continuing:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&quot;The facility support from the University of Alberta Computer Science Department will provide C2K8 the best facilities yet for the annual OpenBSD Developer Conference. C2K8 will be the 10th annual event of its kind. Previous hackathons have produced tools such as the PF firewall, OpenBGP, relayd and spamd, as well as innumerable critical improvements to OpenBSD, OpenSSH, and related projects.&lt;/p&gt;
&lt;p&gt;&quot;This year, the OpenBSD Foundation will disburse approximately $15,000 to support C2K8, enabling more than 50 OpenBSD developers from around the world to attend this important event. The Foundation thanks all who have generously donated the resources to make C2K8  possible.&quot;&lt;/p&gt;&lt;/blockquote&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://www.kerneltrap.org/OpenBSD/C2K8_OpenBSD_Hackathon&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.kerneltrap.org/OpenBSD/C2K8_OpenBSD_Hackathon#comments</comments>
 <category domain="http://www.kerneltrap.org/c2k8">C2k8</category>
 <category domain="http://www.kerneltrap.org/hackathon">hackathon</category>
 <category domain="http://www.kerneltrap.org/OpenBSD">OpenBSD</category>
 <category domain="http://www.kerneltrap.org/OpenBSD_Foundation">OpenBSD Foundation</category>
 <category domain="http://www.kerneltrap.org/OpenSSH">OpenSSH</category>
 <category domain="http://www.kerneltrap.org/PF">PF</category>
 <category domain="http://www.kerneltrap.org/news/openbsd">OpenBSD news</category>
 <pubDate>Thu, 29 May 2008 01:01:51 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">16212 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>Fair Queuing For ALTQ</title>
 <link>http://www.kerneltrap.org/DragonFlyBSD/Fair_Queuing_For_ALTQ</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/news/dragonflybsd&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/K-FlyBSD_1.gif&quot; alt=&quot;DragonFlyBSD&quot; title=&quot;DragonFlyBSD&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;&quot;&lt;i&gt;I have a question for the PF/ALTQ masters out there,&lt;/i&gt;&quot; Matthew Dillon began on the DragonFlyBSD kernel mailing list, having recently switched from using a Cisco router to a DragonFlySD server running PF.  &quot;&lt;i&gt;I am trying to configure PF in a manner similar to what Cisco&#039;s fair-queue algorithm does.  Cisco&#039;s algorithm basically hashes TCP and UDP traffic based on the port/IP pairs, creating a bunch of lists of backlogged packets and then schedules the packets at the head of each list.&lt;/i&gt;&quot;  He went on to explain that he was unsuccessfully trying to configure the same thing with PF, &quot;&lt;i&gt;neither CBQ nor HFSC seem to work well.   I can separate certain types of traffic but the real problem is when there are multiple TCP connections that are essentially classified the same, and one is hogging the outgoing bandwidth.  So the question is, is there a PF solution for that or do I need to write a new ALTQ mechanic to implement fair queueing?&lt;/i&gt;&quot;&lt;/p&gt;
&lt;p&gt;Not finding a solution, he followed with a series of patches implementing what he needed.  He explained the resulting logic noting, &quot;&lt;i&gt;unless something comes up I am going to commit this to DragonFly on Friday and call it done.  I would be pleased if other projects picked up some or all of the work&lt;/i&gt;&quot;:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&quot;The queues are scanned from highest priority to lowest priority; if the packet bandwidth on the queue does not exceed the bandwidth parameter and a packet is available, a packet will be chosen fro that queue; if a packet is available but the queue has exceeded the specified bandwidth, the next lower priority queue is scanned (and so forth); if NO lower priority queues either have packets or are all over the bandwidth limit, then a packet will be taken from the highest priority queue with a packet ready; packet rate can exceed the queue bandwidth specification (but will not exceed the interface bandwidth specification, of course), but under full saturation the average bandwidth for any given queue will be limited to the specified value.&quot;&lt;/p&gt;&lt;/blockquote&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://www.kerneltrap.org/DragonFlyBSD/Fair_Queuing_For_ALTQ&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.kerneltrap.org/DragonFlyBSD/Fair_Queuing_For_ALTQ#comments</comments>
 <category domain="http://www.kerneltrap.org/ALTQ">ALTQ</category>
 <category domain="http://www.kerneltrap.org/Cisco">Cisco</category>
 <category domain="http://www.kerneltrap.org/DragonFlyBSD">DragonFlyBSD</category>
 <category domain="http://www.kerneltrap.org/Matthew_Dillon">Matthew Dillon</category>
 <category domain="http://www.kerneltrap.org/packet_filter">packet filter</category>
 <category domain="http://www.kerneltrap.org/PF">PF</category>
 <category domain="http://www.kerneltrap.org/news/dragonflybsd">DragonFlyBSD</category>
 <pubDate>Thu, 10 Apr 2008 19:45:07 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">15960 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>Interview: Ryan McBride</title>
 <link>http://www.kerneltrap.org/node/2873</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/taxonomy/term/15&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/K-Interviews.gif&quot; alt=&quot;Interviews&quot; title=&quot;Interviews&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;Ryan McBride works full time on OpenBSD development.  His first contribution was adding IPv6 support to PF, OpenBSD&#039;s stateful packet filter.  More recently he was the primary developer of CARP, the Common Address Redundancy Protocol, a patent-free alternative to HSRP and VRRP.&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://www.kerneltrap.org/node/2873&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.kerneltrap.org/node/2873#comments</comments>
 <category domain="http://www.kerneltrap.org/taxonomy/term/473">CARP</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/470">IPv6</category>
 <category domain="http://www.kerneltrap.org/KernelTrap_interview">KernelTrap interview</category>
 <category domain="http://www.kerneltrap.org/OpenBSD">OpenBSD</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/474">OpenBSD 3.5</category>
 <category domain="http://www.kerneltrap.org/packet_filter">packet filter</category>
 <category domain="http://www.kerneltrap.org/PF">PF</category>
 <category domain="http://www.kerneltrap.org/Ryan_McBride">Ryan McBride</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/15">OpenBSD feature interview</category>
 <pubDate>Wed, 07 Apr 2004 11:38:53 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">2873 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>Feature:  Porting The PF Stateful Packet Filter</title>
 <link>http://www.kerneltrap.org/node/627</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/taxonomy/term/38&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://amailbox.org/files/category_pictures/K-FreeBSD_1.gif&quot; alt=&quot;FreeBSD feature article&quot; title=&quot;FreeBSD feature article&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;/taxonomy/term/97&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://140.211.166.79/files/category_pictures/K-OpenBSD_1.gif&quot; alt=&quot;OpenBSD feature article&quot; title=&quot;OpenBSD feature article&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;The upcoming release of &lt;a href=&quot;http://openbsd.org/33.html&quot; target=&quot;new&quot;&gt;OpenBSD 3.3&lt;/a&gt; on May 1&#039;st will include, among many other improvements, a notably enhanced version of &lt;a href=&quot;http://www.benzedrine.cx/pf.html&quot; target=&quot;new&quot;&gt;PF&lt;/a&gt;, OpenBSD&#039;s stateful packet filter.  Some of the more significant enhancements to PF include: &#039;queues&#039;, allowing for per-rule bandwidth control [&lt;a href=&quot;/node.php?id=505&quot;&gt;story&lt;/a&gt;]; &#039;pool options&#039;, allowing one to utilize multiple uplinks and to intelligently redirect traffic to multiple servers; &#039;anchors&#039;, which allow one to divide packet filtering rule lists into logical pieces; &#039;tables&#039;, efficiently allowing for very large lists; and other parser improvements that make an already friendly syntax more human readable.&lt;/p&gt;
&lt;p&gt;PF replaced its predecessor, &lt;a href=&quot;http://coombs.anu.edu.au/~avalon/&quot; target=&quot;new&quot;&gt;IPF&lt;/a&gt;, with the release of OpenBSD 3.0 in December of 2001.  Since that time, this impressive and relatively new packet filter has grown a faithful following (myself included), and continues to evolve rapidly with each new OpenBSD release.  Perhaps the greatest compliment, developers have begun to port PF to other operating systems.  Back in January, Joel Wilsson &lt;a href=&quot;http://news.gw.com/netbsd.tech.net/7739&quot; target=&quot;new&quot;&gt;announced&lt;/a&gt; his effort to port PF to &lt;a href=&quot;http://netbsd.org/&quot; target=&quot;new&quot;&gt;NetBSD&lt;/a&gt;.  And more recently, Pyun YongHyeon &lt;a href=&quot;http://www.deadly.org/article.php3?sid=20030325141427&quot; target=&quot;new&quot;&gt;announced&lt;/a&gt; his port for &lt;a href=&quot;http://freebsd.org/&quot; target=&quot;new&quot;&gt;FreeBSD&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I approached Pyun to learn more about his recent porting efforts.  In the following article he explains why he began working on this port, and what FreeBSD users can expect from the project.  Additionally, I spoke with PF creator Daniel Hartmeier [&lt;a href=&quot;/node.php?id=477&quot;&gt;interview&lt;/a&gt;], PF developer Henning Brauer, and OpenBSD creator Theo de Raadt [&lt;a href=&quot;/node.php?id=6&quot;&gt;interview&lt;/a&gt;].  They all reflect on these recent porting efforts, as well as the exciting new features found in OpenBSD&#039;s PF.&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://www.kerneltrap.org/node/627&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.kerneltrap.org/node/627#comments</comments>
 <category domain="http://www.kerneltrap.org/ALTQ">ALTQ</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/499">Daniel Hartmeier</category>
 <category domain="http://www.kerneltrap.org/FreeBSD">FreeBSD</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/421">Henning Brauer</category>
 <category domain="http://www.kerneltrap.org/NetBSD">NetBSD</category>
 <category domain="http://www.kerneltrap.org/OpenBSD">OpenBSD</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/497">OpenBSD 3.3</category>
 <category domain="http://www.kerneltrap.org/packet_filter">packet filter</category>
 <category domain="http://www.kerneltrap.org/PF">PF</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/500">Pyun YongHyeon</category>
 <category domain="http://www.kerneltrap.org/Theo_de_Raadt">Theo de Raadt</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/38">FreeBSD feature article</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/97">OpenBSD feature article</category>
 <pubDate>Tue, 08 Apr 2003 21:52:00 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">627 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>OpenBSD:  ALTQ Merged With PF</title>
 <link>http://www.kerneltrap.org/node/505</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/news/openbsd&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/K-OpenBSD_0.gif&quot; alt=&quot;OpenBSD news&quot; title=&quot;Articles about OpenBSD.&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;Henning Brauer announ