xpf: Packet Filtering for Low-Cost Network Monitoring
|
|
|
- Leon Jenkins
- 10 years ago
- Views:
Transcription
1 xpf: Packet Filtering for Low-Cost Network Monitoring S. Ioannidis K. G. Anagnostakis J. Ioannidis A. D. Keromytis CIS Department, University of Pennsylvania AT&T Labs Research CS Department, Columbia University Abstract The ever-increasing complexity in network infrastructures is making critical the demand for network monitoring tools. While the majority of network operators rely on low-cost open-source tools based on commodity hardware and operating systems, the increasing link speeds and complexity of network monitoring applications have revealed inefficiencies in the existing software organization, which may prohibit the use of such tools in high-speed networks. Although several new architectures have been proposed to address these problems, they require significant effort in re-engineering the existing body of applications. In this paper we present an alternative approach that addresses the primary sources of inefficiency without significantly altering the software structure. Specifically, we enhance the computational model of the Berkeley Packet Filter (BPF) to move much of the processing associated with monitoring into the kernel, thereby removing the overhead associated with context switching between kernel and applications. The resulting packet filter, called xpf, allows new tools to be more efficiently implemented and existing tools to be easily optimized for high-speed networks. We present the design and implementation of xpf as well as several example applications that demonstrate the efficiency of our approach. 1 Introduction Network monitoring is becoming an increasingly important function in a modern IP-based network infrastructure. This is mostly due to the stateless nature of the IP service, which requires appropriate control loops to be implemented by observing and responding to network behavior. For the majority of networks, such functions are implemented using commodity components: PC workstations or servers running free operating systems and open-source monitoring tools [2, 10, 12, 15, 22, 1, 21, 5]. Most of these tools rely on the Berkeley Packet Filter (BPF) facility [18], which allows them to capture packets from the network interface. However, as the speed of network links continues to increase, the use of commodity components and BPF is becoming inefficient [9, 20, 23]. Additionally, the increasing complexity and sophistication of network monitoring tools further adds to the processing burden of a monitoring system. Finally, BPF performance degrades rapidly as the number of concurrent applications increases [5]. There have been several studies on optimizing the packet filter [8], efficient network interface access [20], as well as system architectures designed specifically for network monitoring [6, 17, 15, 4]. Most network monitoring applications, however, do not need elaborate packet filters (and therefore cannot take advantage of the aforementioned optimizations) to demultiplex packet streams into different processes; instead, a single process receives all the packets and does its own packet handling. On the other hand, monitoring-specific system architectures provide a rich and complex set of functions, but require significant effort for re-implementing the existing body of tools. Finally, these architectures are not widely available, and are thus less likely to be mature enough to be adopted in the near future. In this study we attempt to provide efficient network monitoring capabilities with minimal changes to existing infrastructure. This is achieved by using BPF itself as the engine for executing monitoring applications, rather than a mechanism for demultiplexing packets to applications in user-space. To make this possible, we enhance BPF by enriching the computing model it provides. Specifically, we introduce persistent memory support and remove the restriction of forward-only branches. In this way, monitoring applications execute inside the packet filter and only need to communicate with user-space code in order to perform functions such as storing or communicating data to the user or higher-level applications. The resulting system achieves high performance and low system overheads without altering the general system structure. At the same time, the simplicity, portability and compatibility with existing tools and the appealing maturity and stability of existing infrastructure are retained.
2 2 Design The principal goal of our design is to reduce the context switching overheads associated with the BPF approach by moving as much of the packet processing as possible into the filter machine. In essence, we use BPF as a virtual machine to execute monitoring applications inside the kernel, rather than as a tool for demultiplexing packets to applications. There are two primary restrictions in the current design of BPF that do not allow this. The first one is that filters cannot maintain state across invocations (remember that filter code is invoked with every packet arrival). This makes it hard to write any BPF programs that maintain state, unless such state is communicated to user-space with every filter invocation. The second restriction is the lack of backward jump support, which significantly limits the development of more sophisticated filters. For example, looking up a value in a table, or any program that uses loops cannot be implemented in BPF. We have extended the BPF filter machine to remove these two restrictions; we provide persistent memory for each filter, mechanisms for memory management, and support for safely allowing backward jumps using lightweight run-time checks. Adding memory The original BPF filter architecture involves a very simple filter interpreter that executes assembly-like instructions; there is an accumulator, an index register, an implicit program counter, some scratch memory, and, of course, the actual filter program. The scratch memory in the original BPF code is small (usually 64 bytes), as it is only meant to be used during a single filter execution. We have added the ability to have memory that is maintained between subsequent calls to the BPF filter code, so that state can be kept. This persistent memory is accessed using the age-old concept of bank switching. Two of the unused opcodes in the original BPF interpreter are redefined to switch the active memory bank to either the original scratch memory area, or the persistent memory; their mnemonics are BPF BSS and BPF BSP (for Bank Switch to Scratch and Bank Switch to Persistent, respectively). This allows the same instructions to be used for accessing the memory, with all the addressing modes provided by the BPF code. These, however, are not enough; we add indexed load and store instructions; thus, when the addressing mode BPF NDX is used, the memory location pointed to by the contents of the X register, offset by the immediate operand, are recalled into or stored from the accumulator. Naturally, before the memory is accessed, the effective address is checked to verify that it lies within the bounds of what was allocated, or within the bounds of the scratch memory as in the original code. Since packet filter code can be written that effectively discards the copy of the packet it received, multiple invocations of the filter code can happen and computations performed based on the contents of each packet without having to pay the penalty of a context switch to user-mode. Since there is no difference in the execution speed between scratch memory accesses and persistent memory accesses, and the scratch memory is not initialized to anything upon filter invocation anyway, there is no need to keep switching between the two; if a filter wants to use persistent memory, it simply bank-switches to it at the beginning of its execution; some part may be used as scratch, and some other part as permanent storage. The code that uses the scratch memory is retained for compatibility with older programs that do not use the persistent memory feature, so that some scratch memory will always be present without having to explicitly allocate any. Persistent memory is allocated for each open instance of the BPF device (effectively, once per file descriptor since BPF file descriptors are rarely dup()-ed). This memory is managed with a set of ioctl() system calls. The first BIOC- MALLOC call allocates a block of memory and returns a handle, a small integer that is used by subsequent calls to refer to the allocated block of memory. Two calls, BIOCM- READ and BIOCMWRITE are used to read from and write to the block of memory specified by a handle which is also passed as an argument. Finally, the BIOCMSWITCH call sets the active block of memory that is to be used by the packet filter. There are three options for this call: the newly switched-to block can be left untouched (to keep whatever contents it had since the last time it was activated), set to zeroes, or get a copy of the contents of the currently-active block. Note that only one such block can be accessed by the BPF code at any time; the BPF code s bank-switching selects between the internal scratch and the currently-active persistent block. The user-level switching selects between alternate persistent blocks. This is useful because the switching happens atomically and definitely not while a filter is executing; thus we can have a filter executing and populating statistics or timestamps in one block while a user level program is manipulating another, effectively having the equivalent of double-buffering. The persistent storage can be used for a number of purposes. The most obvious is to use it for keeping statistics counters, timestamps, etc., which can be periodically read from a user-level program. Another use is to use part of it as a look-up table, since the table can be pre-computed by the user-level program and loaded into the filter. Look-up tables can also be used to compute complicated functions. Eliminating branch restrictions Bounding execution time in BPF is ensured by eliminating backward jumps. This has the advantage of providing us with an upper bound for the execution time: linear to the length of the program. However, such a programming model is hard to program in and rather limiting. Another possible approach is to execute each installed filter as a kernel thread and context
3 Maximum loss-free rate (packets per second) Filter processing load (instructions per packet) xpf BPF counter, we instruct the filter to consume an arbitrary number of processing cycles, in order to infer the system monitoring capacity, as we describe next. Our test platform consists of two 1GHz Pentium III PCs with 256MB SDRAM, and 1 Gbit/s Ethernet interfaces (NetGear GA bit PCI based with Alteon chipset). One PC is used as the traffic generator and the other one runs xpf, the filter described above and instrumentation tools. We measure the maximum loss-free rate of traffic that the system can receive and process for different processing loads per packet. The results are presented in Figure 1, showing the improvement of xpf which becomes larger as the traffic rate increases, demonstrating the scalability of our approach. Figure 1: Performance of BPF vs. xpf 3.2 Applications switch between threads when they exceed their allocated time slot. This approach is too heavy weight for our purposes, which is round-robin execution of monitoring functions on incoming packets. Notice that the filter is effectively an interpreted virtual machine, with an outer loop doing an instruction fetch at the current program counter and interpreting it. Thus, our solution is to simply have a counter of how many BPF instructions have been executed since the filter started running, and take an exception when the number is exceeded. The exception handler jumps to a predefined location in the filter code, where a cleanup operation can be performed before terminating the filter; during the execution of the exception handler, only forward jumps are allowed, so that its execution time is finite. 3 Experiments A prototype of xpf has been implemented as part of the OpenBSD [3] operating system. We demonstrate the performance benefits of xpf and describe three sample filter programs for NetFlow-like accounting, trajectory sampling, and round-trip time estimation respectively. These modules were originally implemented on the FLAME architecture [4] and were re-implemented in xpf. 3.1 Measurements For outlining the performance and scalability of xpf, we have implemented a simple benchmark application that simply counts packets received by the filter. In standard BPF, every packet needs to be passed to the application to increment the counter. Using xpf, the counter is incremented inside the filter, eliminating the need for context switching for each packet. In addition to incrementing the NetFlow-like accounting Implementing an accounting package such as NetraMet [10] for providing per-flow accounting similar to NetFlow [11] using BPF requires every packet to be copied to user-space. The user-space part would then take care of looking up the flow associated with the packet, and incrementing the appropriate counters. It is possible to perform all computation inside the kernel, by instrumenting xpf with the appropriate functionality, for maintaining the flow database, looking up packets and incrementing counters. In certain intervals, the packet filter would need to call the user-space function to collect the current data and pass them on to the user for further processing or storage. Trajectory sampling Trajectory sampling, developed by Duffield and Grossglauser[13], is a technique for coordinated sampling of traffic across multiple measurement points, effectively providing information on the spatial flow of traffic through a network. The key idea is to sample packets based on a hash function over the invariant packet content (e.g., excluding fields such as the TTL value that change from hop to hop) so that the same packet will be sampled on all measured links. Network operators can use this technique to measure traffic load, traffic mix, oneway delay and delay variation between ingress and egress points, yielding important information for traffic engineering and other network management functions. Although the technique is simple to implement, we are not aware of any monitoring system or router implementing it at this time. We have implemented trajectory sampling as an xpf filter that works as follows. First, we compute a hash function on the invariant part of the packet. If, where controls the sampling rate, the packet is not processed further. If!" we compute a second hash function #$ on the packet header that, with high probability, uniquely identifies a flow with a
4 label (e.g., TCP sequence numbers are ignored at this stage, since they change over the lifetime of the TCP connection). If this is a new flow, we create an entry into a hash table, storing flow information (such as IP address, protocol, port numbers etc.). Additionally, we store a timestamp along with! into a separate data structure. If the flow already exists, we do not need to store all the information on the flow, so we just log the packet. For the purpose of this study we did not implement a mechanism to transfer logs from the kernel to a user-level module or management system; at the end of the experiment the logs are stored in a file for analysis. Passive RTT estimator We have implemented a simple application for measuring the round-trip delays observed over a network link by TCP connections. Round-trip delays are an important metric for understanding end-to-end performance, mostly due to its central role in TCP congestion control[16]. Additionally, measuring the round-trip times observed by users over a specific ISP provides a reasonable indication of the quality of the service provider s infrastructure, as well as its connectivity to the rest of the Internet. Finally, observations on the evolution of roundtrip delays over time can be used to detect network anomalies on shorter time scales, or to determine the improvement (or deterioration) of service quality over longer periods of time. For example, an operator can use this tool to detect service degradation or routing failures in an upstream provider, and take appropriate measures (e.g., redirecting traffic to a backup provider), or simply have answers for user questions. The implementation of this application is fairly simple and efficient. We watch for TCP SYN packets passing through the monitored link, indicating a new connection request, and then watch for the matching TCP ACK packet in the same direction. The difference in time between these two packets is a reasonable approximation of the round-trip time between the two ends of the connection. For every SYN packet received, we store a timestamp into a hashtable. As the first ACK after a SYN usually has a sequence number which is the SYN packet s sequence number plus one, this number is used as the key for hashing. Thus, in addition to watching for SYN packets, the application only needs to look into the hash table for every ACK received. The hash table can be appropriately sized depending on the number of flows and the required level of accuracy. 4 Related Work The concept of a packet filter was first proposed by Mogul et al. more than ten years ago in [19]. There has been extensive research in the area since then, trying to refine the filtering model. The most widely used packet filter is BPF [18] which uses a register-model instruction set, unlike the stack machine model used by [19]. Each filter is run on every incoming packet which imposes high overhead on user-level programs using it. The Mach Packet Filter (MPF) [24] enhances the BPF model by demultiplexing filter specifications 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 safety properties of the resulting code. There is a fundamental difference in the goals of our enhanced BPF and in the scope of the above efforts. The enhancements to BPF proposed in this paper provide capabilities that are specific to the application domain of network monitoring, where the BPF machine is used more to compute rather than filter. Hence, although some specific optimizations such as the just-in-time compiler of [8] could easily be incorporated to make network monitoring applications even more efficient, the above efforts are mostly orthogonal to our enhanced BPF design. 5 Summary and concluding remarks We have shown that efficient network monitoring is possible, to some extent, without introducing complex new infrastructure. This is accomplished using simple extensions to the Berkeley Packet Filter (BPF) that allow the filter mechanism to perform monitoring functions. In this way, monitoring functions can safely and efficiently execute in the system kernel, hereby eliminating the system overheads associated with context switching. xpf can be used to support existing and new applications while allowing commodity systems to satisfy the growing demand for network monitoring at increasing network speeds. Acknowledgements This work was supported by the DoD University Research Initiative (URI) program administered by the Office of Naval Research under Grant N , and DARPA under Contracts F MOD P0001 and F We would also like to thank the anonymous reviewers for their constructive review, and Jonathan Smith for his valuable comments and suggestions throughout the course of this work.
5 References [1] EtherReal. [2] Tcpdump/Libpcap Web page. [3] The OpenBSD Operating System. [4] K. G. Anagnostakis, S. Ioannidis, S. Miltchev, J. Ioannidis, M. B. Greenwald, and J. M. Smith. Efficient packet monitoring for network management. In Proceedings of the 8th IEEE/IFIP Network Operations and Management Symposium (NOMS), April [5] K. G. Anagnostakis, S. Ioannidis, S. Miltchev, and J. M. Smith. Practical network applications on a leightweight active management environment. In Proceedings of the 3rd IFIP International Working Conference on Active Networks (IWAN), October [6] J. Apisdorf, k claffy, K. Thompson, and R. Wilder. OC3MON: Flexible, Affordable, High Performance Statistics Collection. In Proceedings of the 1996 LISA X Conference, October [7] M. L. Bailey, B. Gopal, M. A. Pagels, L. L. Peterson, and P. Sarkar. Pathfinder: A pattern-based packet classifier. In Proceedings of the First USENIX Symposium on Operating System Design and Implementation, pages , November [8] A. Begel, S. McCanne, and S. L. Graham. BPF+: Exploiting global data-flow optimization in a generalized packet filter architecture. In Proceedings of SIGCOMM, pages , August [9] B. Bershad et al. Extensibility, safety and performance in the SPIN operating system. In Proc. 15-th Symposium on Operating Systems Principles, pages , December [10] N. Brownlee. Traffic Flow Measurement: Experiences with NeTraMet. RFC2123, March [11] Cisco Corporation. NetFlow services and applications. [12] L. Deri and S. Suin. Effective Traffic Measurement using ntop. IEEE Communications Magazine, 38(5): , May [13] N. Duffield and M. Grossglauser. Trajectory sampling for direct traffic observation. In Proceedings of SIG- COMM, pages August [14] D. R. Engler and M. F. Kaashoek. DPF: Fast, flexible message demultiplexing using dynamic code generation. In Proceedings of SIGCOMM, pages 53 59, August [15] K. Keys, D. Moore, R. Koga, E. Lagache, M. Tesch, and k claffy. The Architecture of CoralReef: An Internet Traffic Monitoring Software Suite. In PAM 2001 Workshop, April [16] T. V. Lakshman and U. Madhow. The performance of TCP/IP for networks with high bandwidth-delay products and random loss. IEEE/ACM Transactions on Networking, 5(3): , June [17] G. R. Malan and F. Jahanian. An Extensible Probe Architecture for Network Protocol Performance Measurement. In Proceedings of SIGCOMM, September [18] S. McCanne and V. Jacobson. The BSD Packet Filter: A New Architecture for User-level Packet Capture. In Proceedings of the Winter 1993 USENIX Conference, pages , January [19] J. Mogul, R. Rashid, and M. Accetta. The Packet Filter: An Efficient Mechanism for User-level Network Code. In Proceedings of the Eleventh ACM Symposium on Operating Systems Principles, pages 39 51, November [20] J. C. Mogul and K. K. Ramakrishnan. Eliminating receive livelock in an interrupt-driven kernel. ACM Transactions on Computer Systems, 15(3): , August [21] V. Paxson. Bro: a system for detecting network intruders in real-time. Computer Networks, 31(23-24): , [22] M. Roesch. Snort - Leightweight Intrusion Detection for Networks. In Proceedings of the 1999 LISA Conference, November [23] Steve Muir and Jonathan Smith. AsyMOS - An Asymetric Multiprocessor Operating System. In Proceedings of the 1998 IEEE 1st Conference on Open Architectures and Network Programming (OPE- NARCH 98), April [24] M. Yuhara, B. N. Bershad, C. Maeda, and J. E. B. Moss. Efficient packet demultiplexing for multiple endpoints and large messages. In Proceedings of the 1994 Winter Usenix Conference, pages , January 1994.
ECE 578 Term Paper Network Security through IP packet Filtering
ECE 578 Term Paper Network Security through IP packet Filtering Cheedu Venugopal Reddy Dept of Electrical Eng and Comp science Oregon State University Bin Cao Dept of electrical Eng and Comp science Oregon
A Summary of Network Traffic Monitoring and Analysis Techniques
http://www.cse.wustl.edu/~jain/cse567-06/ftp/net_monitoring/index.html 1 of 9 A Summary of Network Traffic Monitoring and Analysis Techniques Alisha Cecil, [email protected] Abstract As company intranets
Design of an Application Programming Interface for IP Network Monitoring
Design of an Application Programming Interface for IP Network Monitoring Michalis Polychronakis, Kostas Anagnostakis, Arne Øslebø, Evangelos P. Markatos Institute of Computer Science Foundation for Research
ACHILLES CERTIFICATION. SIS Module SLS 1508
ACHILLES CERTIFICATION PUBLIC REPORT Final DeltaV Report SIS Module SLS 1508 Disclaimer Wurldtech Security Inc. retains the right to change information in this report without notice. Wurldtech Security
ncap: Wire-speed Packet Capture and Transmission
ncap: Wire-speed Packet Capture and Transmission L. Deri ntop.org Pisa Italy [email protected] Abstract With the increasing network speed, it is no longer possible to capture and transmit network packets at
MONITORING AVAILABLE BANDWIDTH OF UNDERLYING GRID NETWORKS
MONITORING AVAILABLE BANDWIDTH OF UNDERLYING GRID NETWORKS Marcia Zangrilli Bruce B. Lowekamp, advisor Department of Computer Science College of William and Mary Abstract Harnessing the complete power
The ISP Column A monthly column on all things Internet
The ISP Column A monthly column on all things Internet Just How Good are You? Measuring Network Performance February 2003 Geoff Huston If you are involved in the operation of an IP network, a question
Improving the Database Logging Performance of the Snort Network Intrusion Detection Sensor
-0- Improving the Database Logging Performance of the Snort Network Intrusion Detection Sensor Lambert Schaelicke, Matthew R. Geiger, Curt J. Freeland Department of Computer Science and Engineering University
An Infrastructure for Passive Network Monitoring of Application Data Streams
An Infrastructure for Passive Network Monitoring of Application Data Streams Deb Agarwal, José María González, Goujun Jin, Brian Tierney Computing Sciences Directorate Lawrence Berkeley National Laboratory
Chapter 3. Internet Applications and Network Programming
Chapter 3 Internet Applications and Network Programming 1 Introduction The Internet offers users a rich diversity of services none of the services is part of the underlying communication infrastructure
co Characterizing and Tracing Packet Floods Using Cisco R
co Characterizing and Tracing Packet Floods Using Cisco R Table of Contents Characterizing and Tracing Packet Floods Using Cisco Routers...1 Introduction...1 Before You Begin...1 Conventions...1 Prerequisites...1
Effects of Interrupt Coalescence on Network Measurements
Effects of Interrupt Coalescence on Network Measurements Ravi Prasad, Manish Jain, and Constantinos Dovrolis College of Computing, Georgia Tech., USA ravi,jain,[email protected] Abstract. Several
How To Classify Network Traffic In Real Time
22 Approaching Real-time Network Traffic Classification ISSN 1470-5559 Wei Li, Kaysar Abdin, Robert Dann and Andrew Moore RR-06-12 October 2006 Department of Computer Science Approaching Real-time Network
Putting it on the NIC: A Case Study on application offloading to a Network Interface Card (NIC)
This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE CCNC 2006 proceedings. Putting it on the NIC: A Case Study on application
Monitoring high-speed networks using ntop. Luca Deri <[email protected]>
Monitoring high-speed networks using ntop Luca Deri 1 Project History Started in 1997 as monitoring application for the Univ. of Pisa 1998: First public release v 0.4 (GPL2) 1999-2002:
Gigabit Ethernet Packet Capture. User s Guide
Gigabit Ethernet Packet Capture User s Guide Copyrights Copyright 2008 CACE Technologies, Inc. All rights reserved. This document may not, in whole or part, be: copied; photocopied; reproduced; translated;
Cisco IOS Flexible NetFlow Technology
Cisco IOS Flexible NetFlow Technology Last Updated: December 2008 The Challenge: The ability to characterize IP traffic and understand the origin, the traffic destination, the time of day, the application
10 Gbit Hardware Packet Filtering Using Commodity Network Adapters. Luca Deri <[email protected]> Joseph Gasparakis <joseph.gasparakis@intel.
10 Gbit Hardware Packet Filtering Using Commodity Network Adapters Luca Deri Joseph Gasparakis 10 Gbit Monitoring Challenges [1/2] High number of packets to
DESIGN AND VERIFICATION OF LSR OF THE MPLS NETWORK USING VHDL
IJVD: 3(1), 2012, pp. 15-20 DESIGN AND VERIFICATION OF LSR OF THE MPLS NETWORK USING VHDL Suvarna A. Jadhav 1 and U.L. Bombale 2 1,2 Department of Technology Shivaji university, Kolhapur, 1 E-mail: [email protected]
Dos & DDoS Attack Signatures (note supplied by Steve Tonkovich of CAPTUS NETWORKS)
Dos & DDoS Attack Signatures (note supplied by Steve Tonkovich of CAPTUS NETWORKS) Signature based IDS systems use these fingerprints to verify that an attack is taking place. The problem with this method
Network congestion control using NetFlow
Network congestion control using NetFlow Maxim A. Kolosovskiy Elena N. Kryuchkova Altai State Technical University, Russia Abstract The goal of congestion control is to avoid congestion in network elements.
A Passive Method for Estimating End-to-End TCP Packet Loss
A Passive Method for Estimating End-to-End TCP Packet Loss Peter Benko and Andras Veres Traffic Analysis and Network Performance Laboratory, Ericsson Research, Budapest, Hungary {Peter.Benko, Andras.Veres}@eth.ericsson.se
The ntop Project: Open Source Network Monitoring
The ntop Project: Open Source Network Monitoring Luca Deri 1 Agenda 1. What can ntop do for me? 2. ntop and network security 3. Integration with commercial protocols 4. Embedding ntop 5. Work in
Packet-Marking Scheme for DDoS Attack Prevention
Abstract Packet-Marking Scheme for DDoS Attack Prevention K. Stefanidis and D. N. Serpanos {stefanid, serpanos}@ee.upatras.gr Electrical and Computer Engineering Department University of Patras Patras,
Internet Management and Measurements Measurements
Internet Management and Measurements Measurements Ramin Sadre, Aiko Pras Design and Analysis of Communication Systems Group University of Twente, 2010 Measurements What is being measured? Why do you measure?
High-Performance IP Service Node with Layer 4 to 7 Packet Processing Features
UDC 621.395.31:681.3 High-Performance IP Service Node with Layer 4 to 7 Packet Processing Features VTsuneo Katsuyama VAkira Hakata VMasafumi Katoh VAkira Takeyama (Manuscript received February 27, 2001)
IP Addressing Introductory material.
IP Addressing Introductory material. A module devoted to IP addresses. Addresses & Names Hardware (Layer 2) Lowest level Ethernet (MAC), Serial point-to-point,.. Network (Layer 3) IP IPX, SNA, others Transport
Chapter 3. TCP/IP Networks. 3.1 Internet Protocol version 4 (IPv4)
Chapter 3 TCP/IP Networks 3.1 Internet Protocol version 4 (IPv4) Internet Protocol version 4 is the fourth iteration of the Internet Protocol (IP) and it is the first version of the protocol to be widely
ICOM 5026-090: Computer Networks Chapter 6: The Transport Layer. By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 UPRM
ICOM 5026-090: Computer Networks Chapter 6: The Transport Layer By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 Outline The transport service Elements of transport protocols A
Firewalls and IDS. Sumitha Bhandarkar James Esslinger
Firewalls and IDS Sumitha Bhandarkar James Esslinger Outline Background What are firewalls and IDS? How are they different from each other? Firewalls Problems associated with conventional Firewalls Distributed
Research on Errors of Utilized Bandwidth Measured by NetFlow
Research on s of Utilized Bandwidth Measured by NetFlow Haiting Zhu 1, Xiaoguo Zhang 1,2, Wei Ding 1 1 School of Computer Science and Engineering, Southeast University, Nanjing 211189, China 2 Electronic
Using Fuzzy Logic Control to Provide Intelligent Traffic Management Service for High-Speed Networks ABSTRACT:
Using Fuzzy Logic Control to Provide Intelligent Traffic Management Service for High-Speed Networks ABSTRACT: In view of the fast-growing Internet traffic, this paper propose a distributed traffic management
Configuring Flexible NetFlow
CHAPTER 62 Note Flexible NetFlow is only supported on Supervisor Engine 7-E, Supervisor Engine 7L-E, and Catalyst 4500X. Flow is defined as a unique set of key fields attributes, which might include fields
ΕΠΛ 674: Εργαστήριο 5 Firewalls
ΕΠΛ 674: Εργαστήριο 5 Firewalls Παύλος Αντωνίου Εαρινό Εξάμηνο 2011 Department of Computer Science Firewalls A firewall is hardware, software, or a combination of both that is used to prevent unauthorized
An apparatus for P2P classification in Netflow traces
An apparatus for P2P classification in Netflow traces Andrew M Gossett, Ioannis Papapanagiotou and Michael Devetsikiotis Electrical and Computer Engineering, North Carolina State University, Raleigh, USA
A Protocol Based Packet Sniffer
Available Online at www.ijcsmc.com International Journal of Computer Science and Mobile Computing A Monthly Journal of Computer Science and Information Technology IJCSMC, Vol. 4, Issue. 3, March 2015,
APPLICATION NOTE 211 MPLS BASICS AND TESTING NEEDS. Label Switching vs. Traditional Routing
MPLS BASICS AND TESTING NEEDS By Thierno Diallo, Product Specialist Protocol Business Unit The continuing expansion and popularity of the Internet is forcing routers in the core network to support the
Transport Layer Protocols
Transport Layer Protocols Version. Transport layer performs two main tasks for the application layer by using the network layer. It provides end to end communication between two applications, and implements
Collecting Packet Traces at High Speed
Collecting Packet Traces at High Speed Gorka Aguirre Cascallana Universidad Pública de Navarra Depto. de Automatica y Computacion 31006 Pamplona, Spain [email protected] Eduardo Magaña Lizarrondo
Firewalls Overview and Best Practices. White Paper
Firewalls Overview and Best Practices White Paper Copyright Decipher Information Systems, 2005. All rights reserved. The information in this publication is furnished for information use only, does not
DiCAP: Distributed Packet Capturing Architecture for High-Speed Network Links
DiCAP: Distributed Packet Capturing Architecture for High-Speed Network Links Cristian Morariu, Burkhard Stiller Communication Systems Group CSG, Department of Informatics IFI, University of Zürich Binzmühlestrasse
STANDPOINT FOR QUALITY-OF-SERVICE MEASUREMENT
STANDPOINT FOR QUALITY-OF-SERVICE MEASUREMENT 1. TIMING ACCURACY The accurate multi-point measurements require accurate synchronization of clocks of the measurement devices. If for example time stamps
Quantifying the Performance Degradation of IPv6 for TCP in Windows and Linux Networking
Quantifying the Performance Degradation of IPv6 for TCP in Windows and Linux Networking Burjiz Soorty School of Computing and Mathematical Sciences Auckland University of Technology Auckland, New Zealand
Stability of QOS. Avinash Varadarajan, Subhransu Maji {avinash,smaji}@cs.berkeley.edu
Stability of QOS Avinash Varadarajan, Subhransu Maji {avinash,smaji}@cs.berkeley.edu Abstract Given a choice between two services, rest of the things being equal, it is natural to prefer the one with more
Multicast-based Distributed LVS (MD-LVS) for improving. scalability and availability
Multicast-based Distributed LVS (MD-LVS) for improving scalability and availability Haesun Shin, Sook-Heon Lee, and Myong-Soon Park Internet Computing Lab. Department of Computer Science and Engineering,
Enabling Flow-level Latency Measurements across Routers in Data Centers
Enabling Flow-level Latency Measurements across Routers in Data Centers Parmjeet Singh, Myungjin Lee, Sagar Kumar, Ramana Rao Kompella Purdue University Abstract Detecting and localizing latency-related
Software Defined Networking (SDN) - Open Flow
Software Defined Networking (SDN) - Open Flow Introduction Current Internet: egalitarian routing/delivery based on destination address, best effort. Future Internet: criteria based traffic management,
Optimizing TCP Forwarding
Optimizing TCP Forwarding Vsevolod V. Panteleenko and Vincent W. Freeh TR-2-3 Department of Computer Science and Engineering University of Notre Dame Notre Dame, IN 46556 {vvp, vin}@cse.nd.edu Abstract
Sage ERP Accpac Online
Sage ERP Accpac Online Mac Resource Guide Thank you for choosing Sage ERP Accpac Online. This Resource Guide will provide important information and instructions on how you can get started using your Mac
Sage 300 ERP Online. Mac Resource Guide. (Formerly Sage ERP Accpac Online) Updated June 1, 2012. Page 1
Sage 300 ERP Online (Formerly Sage ERP Accpac Online) Mac Resource Guide Updated June 1, 2012 Page 1 Table of Contents 1.0 Introduction... 3 2.0 Getting Started with Sage 300 ERP Online using a Mac....
Replication on Virtual Machines
Replication on Virtual Machines Siggi Cherem CS 717 November 23rd, 2004 Outline 1 Introduction The Java Virtual Machine 2 Napper, Alvisi, Vin - DSN 2003 Introduction JVM as state machine Addressing non-determinism
Signature-aware Traffic Monitoring with IPFIX 1
Signature-aware Traffic Monitoring with IPFIX 1 Youngseok Lee, Seongho Shin, and Taeck-geun Kwon Dept. of Computer Engineering, Chungnam National University, 220 Gungdong Yusonggu, Daejon, Korea, 305-764
4 Internet QoS Management
4 Internet QoS Management Rolf Stadler School of Electrical Engineering KTH Royal Institute of Technology [email protected] September 2008 Overview Network Management Performance Mgt QoS Mgt Resource Control
LOW OVERHEAD CONTINUOUS MONITORING OF IP NETWORK PERFORMANCE
LOW OVERHEAD CONTINUOUS MONITORING OF IP NETWORK PERFORMANCE Mandis Beigi, Raymond Jennings, and Dinesh Verma IBM Thomas J. Watson Research Center 30 Saw Mill River Road, Hawthorne, NY 10532 e-mail: {mandis,
Performance Evaluation of Linux Bridge
Performance Evaluation of Linux Bridge James T. Yu School of Computer Science, Telecommunications, and Information System (CTI) DePaul University ABSTRACT This paper studies a unique network feature, Ethernet
IP - The Internet Protocol
Orientation IP - The Internet Protocol IP (Internet Protocol) is a Network Layer Protocol. IP s current version is Version 4 (IPv4). It is specified in RFC 891. TCP UDP Transport Layer ICMP IP IGMP Network
Efficacy of Live DDoS Detection with Hadoop
Efficacy of Live DDoS Detection with Hadoop Sufian Hameed IT Security Labs, NUCES, Pakistan Email: [email protected] Usman Ali IT Security Labs, NUCES, Pakistan Email: [email protected] Abstract
Time has something to tell us about Network Address Translation
Time has something to tell us about Network Address Translation Elie Bursztein Abstract In this paper we introduce a new technique to count the number of hosts behind a NAT. This technique based on TCP
Removing The Linux Routing Cache
Removing The Red Hat Inc. Columbia University, New York, 2012 Removing The 1 Linux Maintainership 2 3 4 5 Removing The My Background Started working on the kernel 18+ years ago. First project: helping
INTRODUCTION TO FIREWALL SECURITY
INTRODUCTION TO FIREWALL SECURITY SESSION 1 Agenda Introduction to Firewalls Types of Firewalls Modes and Deployments Key Features in a Firewall Emerging Trends 2 Printed in USA. What Is a Firewall DMZ
Quality of Service (QoS) on Netgear switches
Quality of Service (QoS) on Netgear switches Section 1 Principles and Practice of QoS on IP networks Introduction to QoS Why? In a typical modern IT environment, a wide variety of devices are connected
Network Layer IPv4. Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS. School of Computing, UNF
Network Layer IPv4 Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF IPv4 Internet Protocol (IP) is the glue that holds the Internet together.
ΕΠΛ 475: Εργαστήριο 9 Firewalls Τοίχοι πυρασφάλειας. University of Cyprus Department of Computer Science
ΕΠΛ 475: Εργαστήριο 9 Firewalls Τοίχοι πυρασφάλειας Department of Computer Science Firewalls A firewall is hardware, software, or a combination of both that is used to prevent unauthorized Internet users
Extensible and Scalable Network Monitoring Using OpenSAFE
Extensible and Scalable Network Monitoring Using OpenSAFE Jeffrey R. Ballard [email protected] Ian Rae [email protected] Aditya Akella [email protected] Abstract Administrators of today s networks are
Application of Netflow logs in Analysis and Detection of DDoS Attacks
International Journal of Computer and Internet Security. ISSN 0974-2247 Volume 8, Number 1 (2016), pp. 1-8 International Research Publication House http://www.irphouse.com Application of Netflow logs in
Internet Infrastructure Measurement: Challenges and Tools
Internet Infrastructure Measurement: Challenges and Tools Internet Infrastructure Measurement: Challenges and Tools Outline Motivation Challenges Tools Conclusion Why Measure? Why Measure? Internet, with
ISSN: 2321-7782 (Online) Volume 3, Issue 4, April 2015 International Journal of Advance Research in Computer Science and Management Studies
ISSN: 2321-7782 (Online) Volume 3, Issue 4, April 2015 International Journal of Advance Research in Computer Science and Management Studies Research Article / Survey Paper / Case Study Available online
Announcements. No question session this week
Announcements No question session this week Stretch break DoS attacks In Feb. 2000, Yahoo s router kept crashing - Engineers had problems with it before, but this was worse - Turned out they were being
Network Security TCP/IP Refresher
Network Security TCP/IP Refresher What you (at least) need to know about networking! Dr. David Barrera Network Security HS 2014 Outline Network Reference Models Local Area Networks Internet Protocol (IP)
Secure SCTP against DoS Attacks in Wireless Internet
Secure SCTP against DoS Attacks in Wireless Internet Inwhee Joe College of Information and Communications Hanyang University Seoul, Korea [email protected] Abstract. The Stream Control Transport Protocol
Transparent Optimization of Grid Server Selection with Real-Time Passive Network Measurements. Marcia Zangrilli and Bruce Lowekamp
Transparent Optimization of Grid Server Selection with Real-Time Passive Network Measurements Marcia Zangrilli and Bruce Lowekamp Overview Grid Services Grid resources modeled as services Define interface
Internet Protocols. Addressing & Services. Updated: 9-29-2012
Internet Protocols Addressing & Services Updated: 9-29-2012 Virtual vs. Physical Networks MAC is the part of the underlying network MAC is used on the LAN What is the addressing mechanism in WAN? WAN is
Interpreters and virtual machines. Interpreters. Interpreters. Why interpreters? Tree-based interpreters. Text-based interpreters
Interpreters and virtual machines Michel Schinz 2007 03 23 Interpreters Interpreters Why interpreters? An interpreter is a program that executes another program, represented as some kind of data-structure.
Introduction to Passive Network Traffic Monitoring
Introduction to Passive Network Traffic Monitoring CS459 ~ Internet Measurements Spring 2015 Despoina Antonakaki [email protected] Active Monitoring Inject test packets into the network or send packets
Internet Traffic Measurement
Internet Traffic Measurement Internet Traffic Measurement Network Monitor Placement Measurement Analysis Tools Measurement Result Reporting Probing Mechanism Vantage Points Edge vs Core Hardware vs Software
Stateful Inspection Technology
Stateful Inspection Technology Security Requirements TECH NOTE In order to provide robust security, a firewall must track and control the flow of communication passing through it. To reach control decisions
Job Reference Guide. SLAMD Distributed Load Generation Engine. Version 1.8.2
Job Reference Guide SLAMD Distributed Load Generation Engine Version 1.8.2 June 2004 Contents 1. Introduction...3 2. The Utility Jobs...4 3. The LDAP Search Jobs...11 4. The LDAP Authentication Jobs...22
Enabling Practical SDN Security Applications with OFX (The OpenFlow extension Framework)
Enabling Practical SDN Security Applications with OFX (The OpenFlow extension Framework) John Sonchack, Adam J. Aviv, Eric Keller, and Jonathan M. Smith Outline Introduction Overview of OFX Using OFX Benchmarks
Network reconnaissance and IDS
Network reconnaissance and IDS CS642: Computer Security Professor Ristenpart h9p://www.cs.wisc.edu/~rist/ rist at cs dot wisc dot edu University of Wisconsin CS 642 Let s play over the network Target
Secure Software Programming and Vulnerability Analysis
Secure Software Programming and Vulnerability Analysis Christopher Kruegel [email protected] http://www.auto.tuwien.ac.at/~chris Operations and Denial of Service Secure Software Programming 2 Overview
UPPER LAYER SWITCHING
52-20-40 DATA COMMUNICATIONS MANAGEMENT UPPER LAYER SWITCHING Gilbert Held INSIDE Upper Layer Operations; Address Translation; Layer 3 Switching; Layer 4 Switching OVERVIEW The first series of LAN switches
