Log-in |

Introduction

 The Packet Event Framework project is a follow-on to FireEngine, which will provide a framework for fine-grain modularity of the network stack based on the execution of a series of event functions as specified by the IP classifier.

 PEF will provide the following benefits:

  • Better observability as the framework will support dynamic changes to an event vector.
  • Performance improvement due to:
    • Smaller code footprint by executing the code needed based on packet classification only.
    • Iterative execution of events which leads to smaller stack depth.
    • Fewer parses of the packet. Packet parsing is done once at classification time.
  • Support for multiple vertical perimeters(squeue_t), so a packet can traverse from one squeue_t to the next. Currently FireEngine supports a single IP squeue_t requiring packet processing to use both STREAMS based queuing and FireEngine IP squeue_t queuing. As a result, a packet can be processed totally within PEF and does not require any STREAMS processing.
  • CMT(Chip Multi-Threading) based processors will additionally benefit from the multiple squeue_t support through pipe-lined processing of a connection. Multiple cores and/or threads of a core can process different layers of the stack. Also, packet fanout of packets such that multiple packets can be simultaneously processed.

Document

Man pages are available here for most of the main PEF functions and data structures.

Also a PEF white paper is available here.

Download

 The BFU archive for SPARC and i386/AMD64 platform, the complete source codes, and the source code patch are available here.

last modified by admin on 2009/10/26 13:04
Collectives
Project


© Sun Microsystems Inc. 2009
XWiki Enterprise 1.8.2.19075 - Documentation
Terms Of Use | Privacy | Trademarks | Copyright Policy | Site Guidelines | Site map | Help
Your use of this web site or any of its content or software indicates your agreement to be bound by these Terms of Use.