69 citations found. Retrieving documents...
D. Engler and M. F. Kaashoek. Dpf: Fast, flexible message demultiplexing using dynamic code generation. In Proc. SIGCOMM '96 Conference, pages 53--59, Stanford, CA, USA, August 1992.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents  Next 50

Vulnerabilities in Synchronous IPC Designs - Shapiro (2003)   (3 citations)  (Correct)

.... most notably by Liedtke [20, 21] Ford [8] and Shapiro [31] Though the KeyKOS capability invocation mechanism [11] predates it, most of the current work on thread migrating IPC derives in some measure from the lightweight remote procedure call work by Bershad [2] Work on packet filtering [26, 24, 6] is similar in flavor to the more restricted filtering performed by filtering indirectors. We are not aware of such filters being used to defer packet processing, nor do they appear to have been used to filter dynamically tagged messages. Use of registers to speed interprocess communication was ....

D. Engler and M. F. Kaashoek. Dpf: Fast, flexible message demultiplexing using dynamic code generation. In Proc. SIGCOMM '96 Conference, pages 53--59, Stanford, CA, USA, Aug. 1992.


Resource Control of Untrusted Code in an Open Network Environment - Menage (2003)   (2 citations)  (Correct)

....is that of improved performance due to reduced abstractions, rather than the goal of improved QoS enforcement that underlies Nemesis. As such, its notions of resource isolation between processes are less well defined. The Exokernel permits extension in several ways. Dynamic Packet Filters [Engler96] allow applications to pass flow demultiplexing specifications down to the network driver. Untrusted Deterministic Functions [Kaashoek97] UDFs) allow library based file systems to pass metadata parsing routines down to the kernel, where they may be safely executed. By initially emulating the ....

Dawson R. Engler and M. Frans Kaashoek. DPF: Fast, Flexible Message Demultiplexing using Dynamic Code Generation. In SIGCOMM [SIG96], pages 53--59. (p 34)


Towards Unifying Inheritance and Automatic Program Specialization - Schultz   (Correct)

....of the implementation. 6.1 Considerations Lapis has been designed to aggressively and unconditionally optimize the code provided by the programmer to generate a specialized implementation of each class. While specialization can be useful when applied to performance critical parts of programs [5, 6, 17, 23, 34, 39], applying specialization globally would normally result in either non termination or code explosion. For this reason, it must be possible to only apply specialization to selected parts of the program, a feature normally referred to as modular specialization [13] To use Lapis in realistic ....

D.R. Engler and M.F. Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In SIGCOMM Symposium on Communications Architectures and Protocols, pages 26--30, Stanford University, CA, August 1996. ACM Press.


Programming Language Optimizations for Modular Router.. - Kohler, Morris, Chen   (Correct)

....3 Classification code with and without click fastclassifier. tions, similar to BPF s [3] to optimize them further. Still, a special purpose classification element built for a single task can beat any generic classifier. This is the essential insight behind compilers dynamic code generation [7] and program specialization partial evaluation techniques. Users could address both of these sources of overhead within the Click framework. For example, they could write big, coarse grained elements to reduce inter element packet transfer, or write specialized elements rather than general ones. ....

Dawson Engler and M. Frans Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proc. ACM SIGCOMM Conference (SIGCOMM '96), pages 53--59, August 1996.


Service Introduction in an Active Network - Wetherall (1999)   (16 citations)  (Correct)

....to the demultiplexing performed using the Ethernet type and IP protocol fields within traditional implementations of link layer and IP endpoints. It is also a basis for capsule forwarding that is known to be efficient from prior research on packet filters [ Yahara et al. 1994, Bailey et al. 1994, Engler and Kaashoek, 1996 ] and more recent research on layer four switching techniques [ Srinivasan et al. 1998, Lakshman and Stiliadis, 1998 ] Once identified by demultiplexing, the corresponding routine is executed to forward the capsule. This occurs within an execution model that is constrained in a number of ....

Dawson R. Engler and M. Frans Kaashoek. DPF: Fast, Flexible Message Demultiplexing using Dynamic Code Generation. In SIGCOMM '96, Stanford, CA, August 1996. ACM.


Migrating Sockets for Networking with Quality of Service Guarantees - Yau, Lam (1997)   (2 citations)  (Correct)

....loadable kernel modules. On the receive side, packet arrivals to a network interface are processed by the interrupt handler of the interface. Kernel level code must then demultiplex the packets to their destination processes. Traditionally, such demultiplexing is performed by packet filters [5, 12] (also known as packet classifiers in [1] Our system makes use of packet filters, but, in addition, can exploit exclusive packet receiver information exported by Migrating Sockets to perform active packet demultiplexing. A network endpoint that is an exclusive packet receiver has the property ....

D.R. Engler and M.F. Kaashoek. DPF: fast, flexible message demultiplexing using dynamic code generation. In Proc. ACM SIGCOMM '96, Stanford, CA, August 1996.


xPF: Packet Filtering for Low-Cost Network Monitoring - Ioannidis, Anagnostakis.. (2002)   (Correct)

....to recognize when two filters use similar patterns. If MPF detects similarities, it merges the predicates forming a single predicate. PathFinder [7] improved on MPF with a re designed filtering engine that was better matched to the pattern matching transformation. Another approach, DPF [14], employs dynamic code generation to exploit run time knowledge to achieve even better performance. Finally, BPF [8] allows for packet filters to be expressed in a high level language and be compiled down to native code using just in time compilation. It utilizes a verifier to guarantee the ....

D. R. Engler and M. F. Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proceedings of SIGCOMM, pages 53--59,


Towards Automatic Specialization of Java Programs - Schultz, Lawall, Consel, Muller (1999)   (18 citations)  (Correct)

....but has a limited applicability, because the process is error prone. Recently, tools have been developed to automatically specialize programs [1 3, 7, 8, 18, 19] Applications of program specialization are emerging in a number of fields, including scientific code [3, 4, 8] systems software [13, 24], and computer graphics [15] with very promising results. However, automatic specialization of object oriented programs remains uninvestigated. Given the existing base of experience with imperative languages, we construct a specializer to optimize object oriented programs, specifically programs ....

D.R. Engler and M.F. Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In SIGCOMM Symposium on Communications Architectures and Protocols, pages 26--30, Stanford University, CA, August 1996. ACM Press.


Escort: Securing Scout Paths - Spatscheck (1999)   (1 citation)  (Correct)

....the optimized case as no translation is necessary, but it at the same time limits the applicability of the solution. The 156 lack of filtering makes it unsuitable for more advanced proxies such as firewalls. Another research topic related to this paper is that of efficiently classifying packets [5, 27]. Of particular note are new algorithms to do fast routing table lookups based on variable length IP address prefixes [16, 82] It is easy to imagine such techniques being extended to support fast IP filtering. Such an advance would be complementary to connection splicing, which can also exploit ....

Dawson Engler and M. Frans Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proceedings of SIGCOMM '96 Symposium, pages 53--59, Stanford, CA, August 1996. ACM.


FIRE: Flexible Intra-AS Routing Environment - Partridge, Snoeren, Strayer.. (2001)   (8 citations)  (Correct)

....a well known and highly portable specification language. For performance reasons, we restrict FIRE BPF filters to the IP header. Even with this limitation, however, the BPF kernel implementation is not adequate for filtering at line speed. We chose to implement Dynamic Packet Filtering (DPF) [17] in the FreeBSD kernel with a device driver interface similar to BPF. Our kernel DPF implementation provides multiple filter sets, each of which is individually accessible using standard UNIX file system semantics (and permissions) One particular filter set is known as the uberfilter.AllIP ....

D. Engler and M. F. Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proc. ACM SIGCOMM '96, pages 53-- 59, Aug. 1996.


On the Performance of Multithreaded Architectures for.. - Crowley, Fiuczynski.. (2000)   (4 citations)  (Correct)

....and enforce bandwidth allocation. TCP IP Offload TCP IP processing from Internet Web servers to the network interface. Web Switching [1] Web load balancing and proxy cache monitoring. Virtual Private Network IP Security (IPSec) Encryption (3DES) and Authentication (MD5) Data Transcoding [8] Converting a multimedia data stream from one format to another within the network. Duplicate Data Suppression[15] Reduce superfluous duplicate data transmission over high cost links. Table 1. Representative tasks and application specific packet processing routines. 5 second, the network ....

....done with it. Web requests, for example, are identified as TCP packets destined for port 80. A packet classifier would take a packet, or packet header, as input and return as a result the target application. Much work has been done to design packet classifiers in both hardware [2, 11] and software [5, 8, 21]. Packet classification in network devices has often been implemented in custom silicon in the interests of high performance. However, the state of the art today in software based packet classification provides good performance and greater flexibility than ASIC solutions. In this study, we ....

[Article contains additional citation context not shown here]

D.R. Engler and M.F. Kaashoek. DPF: Fast, Flexible Message Demultiplexing using Dynamic Code Generation. Proceedings of the ACM Communication Architectures, Protocols, and Applications (SIGCOMM '96), 1996.


Fine-Grained Dynamic Instrumentation Of Commodity Operating.. - Tamches (2001)   (34 citations)  (Correct)

....locations where kernel code can be inserted, can be almost any machine code instruction within the kernel. Runs on a commodity kernel. This enables instrumentation under real world workloads. It is worthwhile to note that much recent operating system research has taken place on custom kernels [10, 11, 21, 34, 35, 36, 37, 47, 59, 61, 62, 68, 73, 74, 75, 81, 82, 83, 84]; this dissertation shows that run time instrumentation is feasible on a commodity kernel. Runs on an unmodified kernel. This contribution is important, because requiring a modified or somehow customized kernel, even an otherwise commodity one, would likely preclude an instrumentation tool s ....

....be compared to KernInst s. The focus is on kernel instrumentation, though user level instrumentation tools are also discussed, since existing kernel instrumentation systems are few. 2.1. 1 Extensibility in Research Kernels Extensible operating systems such as SPIN [10, 11, 37, 68, 84] Exokernel [34, 35, 36, 47], VINO [81, 82, 83, 87] Cache Kernel [21] Scout [41, 59, 61, 62] and Synthetix [23, 24, 73, 74, 75] allow user level processes to download code into the kernel, offering a coarse grained means of changing kernel code dynamically. SPIN allows applications to change the operating system s ....

[Article contains additional citation context not shown here]

D.R. Engler and M.F. Kaashoek. DPF: Fast, Flexible Message Demultiplexing Using Dynamic Code Generation. ACM Applications, Technologies, Architectures and Protocols for Computer Communication (SIGCOMM), Stanford CA, August 1996.


Optimizing TCP Forwarder Performance - Spatscheck, Hansen, Hartman.. (2000)   (25 citations)  (Correct)

....in the optimized case as no translation is necessary, but it at the same time limits 12 the applicability of the solution. The lack of filtering makes it unsuitable for more advanced proxies such as firewalls. Another research topic related to this paper is that of e#ciently classifying packets [1, 7]. Of particular note are new algorithms to do fast routing table lookups based on variable length IP address prefixes [4, 14] It is easy to imagine such techniques being extended to support fast IP filtering. Such an advance would be complementary to connection splicing, which can also exploit ....

Dawson Engler and M. Frans Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proceedings of SIGCOMM '96 Symposium, pages 53--59, Stanford, CA, August 1996. ACM.


Optimizing TCP Forwarder Performance - Spatscheck, Hansen, Hartman.. (1998)   (25 citations)  (Correct)

....in the optimized case as no translation is necessary, but it at the same time limits the applicability of the solution. The lack of filtering makes it unsuitable for more advanced proxies such as firewalls. Another research topic related to this paper is that of efficiently classifying packets [1, 6]. Of particular note are new algorithms to do fast routing table lookups based on variable length IP address prefixes [3, 13] It is easy to imagine such techniques being extended to support fast IP filtering. Such an advance would be complementary to connection splicing, which can also exploit ....

D. Engler and M. F. Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proceedings of SIGCOMM '96 Symposium, pages 53--59, Stanford, CA, Aug. 1996. ACM.


Evaluating the Performance of Demultiplexing Strategies for.. - Gokhale, Schmidt (1997)   (8 citations)  (Correct)

....to application endpoints [13] A number of schemes to implement fast and efficient packet filters are available. These include the BSD Packet Filter (BPF) 12] the Mach Packet Filter (MPF) 21] PathFinder [1] demultiplexing based on automatic parsing [11] and the Dynamic Packet Filter (DPF)[3]. Most existing demultiplexing strategies are implemented within the OS kernel. However, to optimally reduce ORB endsystem demultiplexing overhead requires a vertically integrated architecture that extends from the OS kernel to the application servants. Since our ORB is currently implemented in ....

Dawson R. Engler and M. Frans Kaashoek. DPF: Fast, Flexible Message Demultiplexing using Dynamic Code Generation. In Proceedings of ACM SIGCOMM '96 Conference in Computer Communication Review, pages 53-- 59, Stanford University, California, USA, August 1996. ACM Press.


APF: A Modular Language for Fast Packet Classification - Lambright, Debray (1996)   (Correct)

....hope that any network oriented application program will be able to accomplish acceptable performance. For this reason, packet classification has been targeted by numerous researchers as a potential performance bottleneck that may be amenable to optimization in various forms (see, for example, [1, 3, 7, 9, 10]) Because of the rapid spread and evolution of networked applications in recent years, the quest for high performance packet classification has been paralleled by a demand for the ability to specify and use flexible application specific protocols. The use of application specific protocols, in ....

....strategies to improve locality, and transformations on the finite automaton to reduce memory traffic. We omit a more complete discussion due to space limitations. 4. The automaton may be compiled into abstract machine code that is then incrementally compiled to native code at runtime (see, e.g. [2, 5, 6, 7]) Such an approach would offer both quick installation and runtime efficiency. Indeed, such alternative implementation strategies can be supported within the same compiler, and selected by the user, so as to offer a great deal of overall flexibility. In the current prototype implementation, an ....

[Article contains additional citation context not shown here]

D. R. Engler, DPF: Fast, Flexible Message Demultiplexing using Dynamic Code Generation, Technical Report MIT/LCS/TM533, May 1996.


The Cache Location Problem - Krishnan, Raz, Shavitt   (23 citations)  (Correct)

....in Section 5. We conclude with discussions in Section 6. 1. 1 Related Work Transparent en route caches were suggested for load balancing by Heddaya and Mirdad [20] They point to the use of run time code generation techniques to dynamically download high performance packet filters to the kernel [14]. Zhang et al. 34] also advocated the use of en route caches, but do not address the placement problem. In a typical transparent cache implementation [7, 6] traffic is filtered by a designated L4 switch and diverted to the cache. Commercial products that are built for transparent operation and ....

D. R. Engler and M. F. Kaashoek. Dpf: Fast, flexible message demultiplexing using dynamic code generation. In ACM SIGCOMM'96, Aug. 1996. Stanford University, CA, USA.


Packet Classification using Tuple Space Search - Srinivasan, Suri, Varghese (1999)   (35 citations)  (Correct)

....the insertion of a filter (that has addresses and ports that match the request) that allows the inbound response to be passed. This requires very fast update times. 4 Related Work For several years, packet filters have been used for demultiplexing of incoming packets directly to user processes [10, 1, 6]. The first packet filtering scheme (to our knowledge) that avoids a linear search through the set of filters is PathFinder [1] However, PathFinder only allows filters that have wild card fields at the end of the filter (for instance, D;S; is allowed, but not (D; Prot; SrcPort) For ....

....end of the filter (for instance, D;S; is allowed, but not (D; Prot; SrcPort) For such a restricted case, all filters can be merged into a generalized trie (with hash tables replacing array nodes) and filter lookup can be done in time proportional to the number of packet fields. DPF [6] uses the PathFinder idea of merging filters into a trie but adds the idea of using dynamic code generation for extra performance. However, it is unclear how to handle intermixed wildcards and specified fields, such as (D; Prot; SrcPort) using these schemes. Because our problem allows more ....

D. Engler and M. F. Kaashoek. DPF: Fast, Flexible Message Demultiplexing using Dynamic Code Generation. Proc. of ACM Sigcomm, 1996.


Declarative Specialization of Object-Oriented Programs - Volanschi, Consel, Muller.. (1997)   (21 citations)  (Correct)

....but has a limited applicability, because of the complexity of such a task. Recently, some tools have been developed to automatically specialize programs [1, 3, 11, 4, 25, 26, 10] Applications of such tools are emerging in a number of fields, including scientific code [4, 5, 12] systems software [19, 29], computer graphics [21, 2] with already very promising results. In essence, these automatic tools are transformation engines: they implement a set of program transformations which may be directly accessible to the programmer [18] or generated by some program analyses based on the usage context ....

D. Engler and M. Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In SIGCOMM Symposium on Communications Architectures and Protocols, Stanford University, CA, Aug. 1996. ACM Press.


Fast, Optimized Sun RPC Using Automatic Program.. - Muller, Marlet.. (1997)   (3 citations)  (Correct)

.... Charles Consel , Calton Pu , Ashvin Goel Recently, a semi automatic approach to program transformation has been developed; it extends the C language to include syntactic constructs aimed at building code at run time[9] It has been used for a realistic system application, namely the packet filter [10]. This work demonstrates that exploiting invariants can produce significant speedups for demultiplexing messages. This result has been obtained at the cost of manually rewriting a new algorithm that adapts to the specific usage context. Automatic program transformation. Program transformation has ....

D.R. Engler and M.F. Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In SIGCOMM96 [33].


Static and Dynamic Program Compilation by Interpreter.. - Thibault, Consel, al. (2000)   (5 citations)  (Correct)

....to a given application. Packet filters are written using a dedicated bytecode language, and are loaded into the kernel where they are traditionally interpreted at the expense of high computational cost [25] The BPF [24] is considered as a reference implementation for many optimization techniques [13, 30]. 10 Table 2. BPF benchmarks (time in seconds) Interpreter CT Spec. CT Speedup RT Spec. RT Speedup Pentium 3.32 0.98 3.40 1.95 1.70 Sparc (original) 2.62 0.68 3.89 1.57 1.67 Sparc (modified) 0.40 6.56 1.31 2.01 Load 32 bit value case BPFLD BPFW BPFABS: k = pc k; if (k ....

D.R. Engler and M.F. Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In SIGCOMM Symposium on Communications Architectures and Protocols, pages 26--30, Stanford University, CA, August 1996. ACM Press.


The User-Safe Device I/O Architecture - Alexander (1997)   (7 citations)  (Correct)

....and deliver it to it. The more computationally expensive task of determining whether a packet is valid (that the headers are well formed and that all checksums and CRCs are consistent) can be left to the client. 18 This demultiplexing can be achieved by using ecient packet lters [Yuhara94, Engler96] The Ethernet DDM [Black97] contains a packet ltering engine that is used to identify the recipient of all received packets. The lter code executed by the engine is computed by the DCM (known as the Flow Manager) and downloaded to the DDM via a privileged interface. The Flow Manager computes ....

....is not a connection oriented network, so there is normally no VCI that can be used to demultiplex received packets to the appropriate channel. The demultiplexing problem can be solved by using packet lters to delve inside the Ethernet frame data to examine higher level protocol headers [Yuhara94, Engler96] The Nemesis Ethernet driver [Black97] uses a packet lter in the transmit direction as well, to ensure that applications are sending messages with properly formed headers i.e. they are not attempting to spoof their IP source address or such like. U Net FE uses a di erent approach. It takes a ....

Dawson R. Engler and M. Frans Kaashoek. DPF: Fast, Flexible Message Demultiplexing using Dynamic Code Generation. In Proceedings of SIGCOMM-96, pages 53-59, August 1996. (pp 54, 121)


Characterizing Processor Architectures for.. - Crowley.. (2000)   (26 citations)  (Correct)

....Table 2. Benchmark characteristics. 4 of 12 schedule these concurrent operations such that each pipeline stage is occupied. Varying degrees of programmability may be used to implement each of these stages. Much work has been done to design packet classifiers in both hardware [2, 8] and software [3, 5, 16]. For this study, we assume that all packet classification is performed in dedicated hardware that is ideal in the sense that it is never the performance bottleneck in the system. The experiments discussed in this paper consider both hardware and software implementations of the packet storage ....

D.R. Engler and M.F. Kaashoek. DPF: Fast, Flexible Message Demultiplexing using Dynamic Code Generation. Proceedings of the ACM Communication Architectures, Protocols, and Applications (SIGCOMM '96), 1996.


Packet Types - Chandra, McCann (1999)   (2 citations)  (Correct)

....salient features: ffl Packet specifications are types in our language. ffl The fundamental operation on packets is checking their membership in a type. Efficient implementations of such type checkers can be created by using existing techniques for construction of fast packet filters (e.g. DPF [9]) ffl Layering of protocols is expressed as successive specialization on types. ffl A filter for a packet is simply a more constrained type. The role of our language is analogous to yacc , in that it abstracts away the packet grammar into a separate specification language, and automatically ....

....or less in size, and that fit inside a pair of bytes aligned at a 2byte address. This restriction allows us to generate fast code, but the restriction could be removed if full generality is desired. Another alternative would be to use an alignment inference scheme, such as the one proposed in [9]. Here is the C code that we generate to extract a value that occupies up to 2 bytes. 8 In this code, bitaddr contains the start offset of the field in the protocol data unit in bits, and bitsize is the number of bits occupied by the field. mptr is the pointer to the buffer that contains the ....

[Article contains additional citation context not shown here]

Dawson R. Engler and M. Frans Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proceedings of ACM SIGCOMM'96 Conference on Applications, Technologies, Architectures and Protocols for Computer Communication, 1996.


The Cache Location Problem - Krishnan, Raz, Shavitt (2000)   (23 citations)  (Correct)

....in Section V. We conclude with discussions in Section VI. A. Related Work Transparent en route caches were suggested for load balancing by Heddaya and Mirdad [20] They point to the use of run time code generation techniques to dynamically download high performance packet filters to the kernel [14]. Zhang et al. 34] also advocated the use of en route caches, but do not address the placement problem. In a typical transparent cache implementation [7] 6] traffic is filtered by a designated L4 switch and diverted to the cache. Commercial products that are built for transparent operation ....

D. R. Engler and M. F. Kaashoek. Dpf: Fast, flexible message demultiplexing using dynamic code generation. In ACM SIGCOMM '96, Aug. 1996. Stanford University, CA, USA.


VISA: Netstation's Virtual Internet SCSI Adapter - Van Meter, al (1998)   (8 citations)  (Correct)

....BSDderived operating systems. However, many recent innovations in TCP IP implementations are not present. Several research projects have implemented fast demultiplexing packet filters which simplify the process of determining the data destination address on packet reception [DWB 93, YBMM94, EK96, Kay95] Adoption of such an approach should eliminate the associated bcopy and complement other per packet processing improvements. Partridge demonstrated that the per packet CPU cost for UDP processing can be reduced by 26 40 relative to the stock 4.3BSD SunOS 4.1.1 implementation on a SPARC ....

Dawson R. Engler and M. Frans Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proc. SIGCOMM '96, pages 53--59. ACM, ACM, October 1996.


Building Reliable, High-Performance Communication.. - Liu, Kreitz, van.. (1999)   (6 citations)  (Correct)

....The first three steps do not affect the layering abstraction itself. However, the final two steps require generating special code for common cases. Finding common cases and compressing headers is far beyond the capabilities of current compiler optimization techniques, and therefore previous work [1, 2, 9, 21] involves hand optimization or at least significant annotation of the code. Both [1] and [13] report that this is a difficult and errorprone process, which is consistent with our own experience in trying to do so. Chapter 5 of [10] shows how such optimizations can be formalized using predicates ....

....subset of the TCP protocol, and to generate an implementation, but a general problem with this approach is that it does not scale easily to arbitrary protocol stacks. Finding common execution paths is not always trivial. Packet classifiers help analyzing common paths in communication systems [2, 9, 24]. In operating system research there is related work on locating and optimizing common paths. Synthesis [19] which influenced systems as Scout, Aegis, SPIN and Synthetix, uses a run time code generator to optimize the most frequently used kernel routines. 23] describes work on optimizing ....

ENGLER, D., AND KAASHOEK, M. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proceedings of the ACM SIGCOMM Conference (1996), pp. 53--59.


The Detour Framework for Packet Rerouting - Collins (1998)   (15 citations)  (Correct)

....arbitrary prefix matching is permitted, but, because we fix the set of granularities at compile time, these restrictions are no great threat to us. Given the separation in the model, it is even possible to implement a flow database on top of a language based classification engine such as DPF [Eng96]. We would like to explore this avenue in the future, and perhaps compare routing using modern language classifiers to routing using advanced data structure classifiers. 5 Egress nodes Until now we have ignored the issue of how packets enter and leave the Detour domain from and to the normal ....

Engler and Kaashoek. DPF: Fast, Flexible MEssage Demultiplexing using Dynamic Code Generation. SIGCOMM '96. October 1996.


Packet Classification using Tuple Space Search - Srinivasan, Suri, Varghese (1999)   (35 citations)  (Correct)

....a filter (that has addresses and ports that match the request) that allows the inbound response to be passed. This requires very fast update times. 4 Related Work For several years, packet filters have been used for demultiplexing of incoming packets directly to user processes [MJ93, BGP 94, EK96] The first packet filtering scheme (to our knowledge) that 4 avoids a linear search through the set of filters is PathFinder [BGP 94] However, PathFinder only allows filters that can have wild card fields at the end of the filter (for instance, D; S; is allowed, but not (D; Prot; ....

....end of the filter (for instance, D; S; is allowed, but not (D; Prot; SrcPort) For such a restricted case, all filters can be merged into a generalized trie (with hash tables replacing array nodes) and filter lookup can be done in time proportional to the number of packet fields. DPF [EK96] uses the PathFinder idea of merging filters into a trie but adds the idea of using dynamic code generation for extra performance. However, it is unclear how to handle intermixed wildcards and specified fields, such as (D; Prot; SrcPort) using these schemes. Because our problem allows more ....

D. Engler and M. F. Kaashoek. DPF: Fast, Flexible Message Demultiplexing using Dynamic Code Generation. Proceedings of ACM Sigcomm'96, (August), 1996.


Packet Classification using Tuple Space Search - Srinivasan, Suri, Varghese (1999)   (35 citations)  (Correct)

....the insertion of a filter (that has addresses and ports that match the request) that allows the inbound response to be passed. This requires very fast update times. 4 Related Work For several years, packet filters have been used for demultiplexing of incoming packets directly to user processes [10, 1, 6]. The first packet filtering scheme (to our knowledge) that avoids a linear search through the set of filters is PathFinder [1] However, PathFinder only allows filters that have wild card fields at the end of the filter (for instance, D;S; is allowed, but not (D; Prot; SrcPort) For ....

....end of the filter (for instance, D;S; is allowed, but not (D; Prot; SrcPort) For such a restricted case, all filters can be merged into a generalized trie (with hash tables replacing array nodes) and filter lookup can be done in time proportional to the number of packet fields. DPF [6] uses the PathFinder idea of merging filters into a trie but adds the idea of using dynamic code generation for extra performance. However, it is unclear how to handle intermixed wildcards and specified fields, such as (D; Prot; SrcPort) using these schemes. Because our problem allows more ....

D. Engler and M. F. Kaashoek. DPF: Fast, Flexible Message Demultiplexing using Dynamic Code Generation. Proc. of ACM Sigcomm, 1996.


BPF+: Exploiting Global Data-flow Optimization in a.. - Begel, McCanne, Graham (1999)   (3 citations)  (Correct)

.... a new virtual machine abstraction based on pattern matching that achieved impressive performance enhancements and was amenable to hardware implementation [2] and DPF enhanced Pathfinder s core model with dynamic code generation (DCG) to exploit runtime knowledge for even greater performance [7]. An alternative approach to the imperative style of packet filtering was explored by Jayaram and Cytron [13] A filter specification takes the form of a set of rules written as a context free grammar. An LR parser then interprets the grammar on the fly for each processed packet. More recent work ....

Dawson R. Engler and M. Frans Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proceedings of ACM SIGCOMM '96, pages 53--59, Stanford, CA, August 1996.


Exokernels, Protocol implementation and Erlang - Knutsson, Gunningberg (1999)   (Correct)

....packet merging (see section 3.2) As the code is downloaded, the kernel will test to see if this packet filter conflicts with any previously downloaded packet filters. If not, it will be merged with the previous packet filters. The implementation of packet filters, Dynamic Packet Filters (DPF)[14], used in the Aegis and XOK exokernels differs from most other implementations[31, 6, 28, 40] in that it compiles the packet filters to machine code, rather than using an interpreter. This makes installation of packet filters slower than in other systems, but the demultiplexing performance is ....

....6, 28, 40] in that it compiles the packet filters to machine code, rather than using an interpreter. This makes installation of packet filters slower than in other systems, but the demultiplexing performance is reported to be on the order of 10 20 times faster than the other systems[14, 13]. Fortunately, packet filter installation is only needed at connection setup and closing time. If a programmer knows beforehand that he will need multiple connection during the lifetime of the application, a filter that matches the packets of all connections can be downloaded at startup, rather ....

D.R. Engler and M.F. Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proceedings of ACM SIGCOMM 1996, pages 53--59, August 1996.


Evaluating the Performance of Demultiplexing Strategies for.. - Gokhale, Schmidt (1997)   (8 citations)  (Correct)

....to application endpoints [11] A number of schemes to implement fast and efficient packet filters are available. These include the BSD Packet Filter (BPF) 10] the Mach Packet Filter (MPF) 17] PathFinder [1] demultiplexing based on automatic parsing [9] and the Dynamic Packet Filter (DPF) [3]. However, related work on demultiplexingdeals with lower layers of the protocol stack (transport layer and below) as opposed to the CORBA middleware. In addition, most of these demultiplexing strategies are implemented within the OS kernel. To optimally reduce ORB endsystem demultiplexing ....

Dawson R. Engler and M. Frans Kaashoek. DPF: Fast, Flexible Message Demultiplexing using Dynamic Code Generation. In Proceedings of ACM SIGCOMM '96 Conference in Computer Communication Review, pages 53--59, Stanford University, California, USA, August 1996. ACM Press.


Transparent En-Route Cache Location for Regular Networks - Krishnan, Raz, Shavitt (1998)   (2 citations)  (Correct)

....in rings. We conclude our results in Section 6. 1.1. Related work. Transparent en route caches were suggested for load balancing by Heddaya and Mirdad [HM97] They point to the use of run time code generation techniques to dynamically download high performance packet filters to the kernel [EK96] Zhang et al. ZFJ97] also advocated the use of en route caches, but do not address the placement problem. Transparent caches could be implemented with packet filter techniques used by firewalls or by new active network techniques [TSS 97] Cisco s CacheEngine [Cis97] currently designed for ....

Dawson R. Engler and M. Frans Kaashoek. Dpf: Fast, flexible message demultiplexing using dynamic code generation. In ACM SIGCOMM'96, August 1996. Stanford University, CA, USA.


The Design and Implementation of a High-Performance Active.. - Nygren (1998)   (11 citations)  (Correct)

....ranging from multicast to convergecast to network management to data caching. Some of these applications may demonstrate deficiencies in the existing system. Over the years, much research has been performed about improving performance at end nodes by providing extensible network layers[33][10]. Some of these have demonstrated substantial performance gains over existing systems. It may be possible to achieve similar performance gains by using active network protocols. Active networks should also be useful for implementing easily customizable replacements for existing protocols. For ....

Dawson R. Engler and M. Frans Kaashoek. DPF: Fast, Flexible Message Demultiplexing using Dynamic Code Generation. In Proceedings of the ACM SIGCOMM '96 Conference on Communication Architectures, Protocols, and Applications, pages 53--59, Stanford, California, August 1996.


WebWave: Globally Load Balanced Fully Distributed Caching of.. - Heddaya, Mirdad (1997)   (28 citations)  (Correct)

....but only briefly. From the architectural point of view, a WebWave cache server needs to be able to insert a packet filter into the router associated with it, so that only document request packets that are highly likely to hit in the cache, are extracted from their normal path. Engler and Kaashoek [13] use run time code generation techniques to dynamically download high performance packet filters into the kernel. Their measured overhead rivals that of hand crafted kernel code (a packet can be filtered in 1.51 microseconds) This demonstrates the feasibility, in principle, of our architectural ....

....the convergence rate of WebWave can be estimated by fl t where 0 fl 1. WebWave requires routers to accept packet filtering code that extracts packets relevant to the protocol. Such injectable filters can be implemented very efficiently, as has been shown by numerous experimental efforts [1, 2, 13, 30]. Although the focus of our load balancing objective is on a single tree, it will be important, in the future, to evaluate how WebWave functions in the context of the forest of overlapping routing trees that is the Internet. Other future work includes analyzing WebWave for stability, especially ....

Dawson R. Engler and M. Frans Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proc. of ACM SIGCOMM'96 Conference on Applications, Technologies, Architectures and Protocols for Computer Communication, Aug. 1996.


Multiprocessing with the Exokernel Operating System - Chen (2000)   Self-citation (Kaashoek)   (Correct)

....by that waiting processor prior to reseting the boolean value. Hence, the overhead of each lock operation is constant. 2.2.3 Read Write Locks On some shared resources, read operations occur much more frequently than write operations. For example, SMP Xok uses the Dynamic Packet Filtering system [14] to filter network packets. An application downloads packet filters for network packets it wants to receive. The kernel constructs a decision tree based on these filters. When a packet arrives, the destination of the packet can be determined by searching the decision tree using a simple ....

....one member initially. A tcpsocket object represents a TCP socket. A handle to the first tcpsocket object is returned as the socket descriptor. The bind and connect procedures each create a new packet filter and an associated packet ring for the given socket. Dynamic packet filters (DPF filters) [14] and packet rings are interfaces exposed by an exokernel to support user level networking. When a packet arrives in a device driver, the kernel passes the packet through a filtering system and identifies a packet ring which the packet is copied onto. Applications can free packet ring entries as ....

D. Engler and M. F. Kaashoek. DPF: fast, flexible message demultiplexing using dynamic code generation. In ACM Communication Architectures, Protocols, and Applications (SIGCOMM) 1996, pages 53--59, 1996.


The Click Modular Router - Kohler (2000)   (64 citations)  Self-citation (Kaashoek)   (Correct)

....inner loop efficient on a Pentium Pro, that loop is just 13 instructions long and most tests necessary in practice seem to be equality or inequality tests against constants. Classifier optimizes its decision tree to avoid redundant tests. There are several approaches in the literature [2, 4, 17]; Classifier s approach is most similar to BPF s [4] Its core optimization is a form of redundant predicate elimination [52] which eliminates tests whose results can be statically determined. Optimization can be very effective, reducing the size of real Classifier decision trees by two thirds ....

....of Click s language tools, click fastclassifier, addresses this cost by compiling specialized source code for each Classifier in a configuration. This tool expands optimized tree structure into explicit code branches and inlines all constants, for an effect somewhat like dynamic code generation [17]. Thus, the conventional optimization strategies for decision trees tree minimization and compilation are split in Click between the element itself and a specialized optimization tool. Click fastclassifier is described further in Section 6.2. All of Classifier s tree creation and optimization ....

[Article contains additional citation context not shown here]

Dawson Engler and M. Frans Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proc. ACM SIGCOMM '96 Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication, pages 53--59, August 1996. 123


Programming Language Techniques for Modular Router.. - Kohler, Chen.. (2000)   (4 citations)  Self-citation (Kaashoek)   (Correct)

....inside compounds) The fast classifier tool both changes the configuration program and compiles new element classes. It depends intimately on the semantics of Classifier, but requires little graph analysis or manipulation. Similar optimization strategies have been developed for BPF [2] DPF [8], and other packet filters. The Click language provides a generic context for this filter optimization work, showing that it exemplifies a class of optimizations where a faster element is swapped in for a slower one. For example, a tool that generated new element classes for some other element ....

Dawson Engler and M. Frans Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proc. ACM SIGCOMM Conference (SIGCOMM '96), pages 53--59, August 1996.


Applying Exokernel Principles to Conventional Operating Systems - Jannotti (1997)   Self-citation (Kaashoek)   (Correct)

....common path to highly optimized applications that make use of exokernel abstractions will likely be a gradual migration from applications written for Posix compliant systems. 1.2.1 Cheetah Cheetah makes use of low level access to the network and to the disk. For network access, Cheetah uses DPF [3]. To access the disk, Cheetah currently uses a very low level interface that XN has made obsolete. XN provides an equally flexible interface to the disk, but solves protection difficulties of the older interface. Since experiments indicate that XN s overhead compared to the older interface is ....

Dawson R. Engler and M. Frans Kaashoek. DPF: Fast, Flexible Message Demultiplexing using Dynamic Code Generation. In Proceedings of the ACM SIGCOMM '96 Conference on Communication Architectures, Protocols, and Applications, pages 53--59, Stanford, California, August 1996.


High-Performance Application-Specific Networking - Wallach (1997)   (2 citations)  Self-citation (Kaashoek)   (Correct)

....specify patterns describing the packets that they are interested in (e.g. all IP packets sent to port 80) and an in kernel packet filter engine examines each incoming message, determining the matching application and delivering the message to it. Packet filters can be implemented efficiently [22]. Another technique sometimes used by user level communication systems implemented on top of ATM networks is to use the virtual circuit index of the incomingmessage as an application identifier [60] Any technique used by user level communication to demultiplex messages may also be used by ....

....interfaces Aegis provides protected access to two network devices: a 10 Mbits s Ethernet and a 155 Mbits s AN2 (Digital s ATM network) 5.3. 1 Ethernet interface The Ethernet device is securely exported by a packet filter engine [41] The Aegis implementation of the packet filter engine, DPF [22], uses dynamic code generation. DPF exploits dynamic code generation in two ways: by using it to eliminate interpretation overhead by compiling packet filters to executable code when they are installed into the kernel, and by using User application pointer Kernel pointer M M M M Figure 5 2. The ....

[Article contains additional citation context not shown here]

D.R. Engler and M.F. Kaashoek. DPF: fast, flexible message demultiplexing using dynamic code generation. In ACM Communication Architectures, Protocols, and Applications (SIGCOMM '96), pages 53--59, Stanford, CA, USA, August 1996.


Decentralizing UNIX Abstractions in the Exokernel Architecture - Pulido (1997)   Self-citation (Kaashoek)   (Correct)

....process wants access to a resource, it presents a capability. If that capability dominates any of the capabilities associated with the resource, the process is granted access. The networking device is protected by a packet filter engine [13] The XOK implementation of the packet filter engine, DPF [5], uses dynamic code generation to obtain high performance. 3.3 Implementation of Major Abstractions and Mechanisms 3.3.1 Bootstrapping, Fork and Exec A recurring problem with any OS implementation is bootstrapping: how to initialize and setup the system when it starts. After the first process is ....

D.R. Engler and M.F. Kaashoek. DPF: fast, flexible message demultiplexing using dynamic code generation. In ACM Communication Architectures, Protocols, and Applications (SIGCOMM) 1996, pages 53--59, Stanford, CA, USA, August 1996.


The Exokernel Operating System Architecture - Engler (1998)   (12 citations)  Self-citation (Engler)   (Correct)

....making them less efficient than in kernel demultiplexing routines. One of the distinguishing features of the packet filter engine used by our prototype exokernel is that it compiles packet filters to machine code at runtime, increasing demultiplexing performance by more than an order of magnitude [28, 31]. 3 Sharing the network interface for outgoing messages is easier. Messages are simply copied from application space into a transmit buffer. In fact, with appropriate hardware support, transmission buffers can be mapped into application space just as easily as physical memory pages [23] An ....

....they can be trusted to track that file system s disk blocks. Obviously, unrestricted applications cannot similarly be trusted. The chapter is organized as follows. The next four sections discuss different language based subsystems, which form the spine for our experiences and lessons: DPF [31], our packet filter engine; application specific message handlers (ASHs) 25, 92, 93] a networking system which invokes downloaded code on message arrival; XN [48] the disk protection subsystem described in Chapter 4, which contains our most interesting use of downloaded code; and finally, ....

[Article contains additional citation context not shown here]

D.R. Engler and M.F. Kaashoek. DPF: fast, flexible message demultiplexing using dynamic code generation. In ACM Communication Architectures, Protocols, and Applications (SIGCOMM) 1996, pages 53--59, Stanford, CA, USA, August 1996.


Network Subsystems Reloaded: A High-Performance.. - Sinha, Sarat, Shapiro (2004)   (Correct)

No context found.

D. Engler and M. F. Kaashoek. Dpf: Fast, flexible message demultiplexing using dynamic code generation. In Proc. SIGCOMM '96 Conference, pages 53--59, Stanford, CA, USA, August 1992.


Nomadic Operating Systems - Hansen, Henriksen (2002)   (Correct)

No context found.

Engler, Dawson R. and M. Frans Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In SIGCOMM, pages 53--59, 1996.


Operating System Support for Planetary-Scale Network.. - Bavier, Bowman, Chun, .. (2004)   (16 citations)  (Correct)

No context found.

D. R. Engler and M. F. Kaashoek. DPF: fast, flexible message demultiplexing using dynamic code generation. In Proc. SIGCOMM '96, pages 53--59, Stanford, CA, Aug 1996.


Active Network Monitoring and Control: The SENCOMM.. - Jackson, Sterbenz.. (2002)   (2 citations)  (Correct)

No context found.

D. Engler and M. F. Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proceedings of ACM SIGCOMM '96, pages 53--59, Stanford, California, Aug. 1996.


High-Speed I/O: The Operating System as a Signalling Mechanism - Burnside, Keromytis (2003)   (Correct)

No context found.

D. R. Engler and M. F. Kaashoek. DPF: Fast, Flexible Message Demultiplexing using Dynamic Code Generation. In Proceedings of ACM SIGCOMM, August 1996.


Dynamic Optimization through the use of Automatic Runtime.. - Whaley (1999)   (3 citations)  (Correct)

No context found.

D. Engler and M. F. Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proceedings of the ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, volume 26,4 of ACM SIGCOMM Computer Communication Review, pages 53--59, New York, August 26--30 1996. ACM Press.


On the Performance Impact of Supporting QoS . . . - Kandlur, Mehra, Saha   (Correct)

No context found.

D. Engler and M. F. Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proc. of ACM SIGCOMM, pages 53--59, October 1996.

First 50 documents  Next 50

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC