high-speed policy-based packet forwarding using efficient multi-dimensional range matching lakshman...

19
High-Speed Policy- Based Packet Forwarding Using Efficient Multi- dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

Upload: ernest-bruce

Post on 18-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

High-Speed Policy-Based Packet Forwarding Using

Efficient Multi-dimensional Range Matching

Lakshman and StiliadisACM SIGCOMM 98

Page 2: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

Abstract

Internet Service Providers (ISP) would like to provide differentiated services using the same shared, connectionless network infrastructure.

The key mechanism is the packet classification function that parses the headers of the packets, and after determining their context,

classifies them based on administrative policies or real-time reservation decisions.

Page 3: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

Packet classification is Complex, and thus the bottleneck in the gigabit links Currently implemented at lower-speed edge routers Not based on multiple fields

This paper presents new packet classification schemes that can classify packets at rates of a million packets per second using range matches on more than 4 packet header

fields with a worst-case and traffic-independent

performance metric by checking amongst a few thousand filtering rules

Page 4: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

Introduction

Packet Filtering/Packet Classification Forwarding engines must be able to

identify the context of packets, apply the necessary actions so as to satisfy the user

requirements. Such actions may be

the dropping of unauthorized packets, redirection of packets to proxy servers, special queuing and scheduling actions, routing decisions based on a criteria other than the

destination address

Page 5: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

The specification of the packet classification policies must allow aggregations in their definitions.

Classification algorithms must be be able to process rules that define combinations of ranges of values.

If the algorithms can only handle exact values and do not support aggregation, preprocessing is required to translate the ranges to exact values.

Page 6: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

A trend worth noting is that even though packet filtering was thought of as a tool

necessary only at the network access points and mainly for firewall or security applications,

it is now becoming apparent that it is a valuable tool for performing traffic engineering and meeting the new service requirements of the commercial Internet.

The main consequence of these new uses is that all packet classification actions must be performed at

wire-speed, i.e., the forwarding engines must have enough processing power to be able to process every arriving packet without queuing.

Page 7: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

Design Goals

The Requirement for Real-Time Operation Traditional router architectures are based on

flow-cache architectures to classify packets. The complete header of the first packet of a flow is

processed through a slow path. The header is then inserted into a cache or hash table

together with the action that must be applied all packets of the same flow.

When subsequent packets of that flow arrive, the corresponding action can be determined from the cache or hash table.

Page 8: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

Three problems with the cache-based architectures:

1. The number of simultaneous flows is extremely high. The use of ∴ hardware caches is extremely difficult.

Caches of such size will most likely be implemented as hash tables since hash tables can be scaled to these sizes. However, the O(1) look-up time of a hash table is an average case result and the worst-case performance of a hash table can be poor.

2. The performance of cache-based schemes is heavily traffic dependent.

3. A commercial Internet infrastructure should be robust and should provide predictable performance at all times.

Page 9: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

Criteria for efficient packet classification and system constraints:

1. The algorithm must be fast enough for Gigabit routers.2. The algorithm must process every packet at wire-speed.3. Classification rules must be based on several fields of

the packet header, including source and destination IP addresses, source and destination port numbers, protocol type, and Type-of-Service. The rules must be able to specify ranges and not just exact values.

4. Two-dimensional requirement for multicast lookup and RSVP reservations that use either wild-card filters or CIDR aggregations.

Page 10: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

5. Priorities are imposed on the rules for multiple match.6. Updates of rules are rare compare to searches in the d

ata structures.7. Memory accesses are expensive and are the dominant

factor in determining the worst-case execution time.8. Memory is organized in words of size w and the cost of

accessing a word is the same as the cost of accessing any subset of bits in a word.

9. Memory cost can be relatively low if technologies such as Synchronous Dynamic RAMS (SDRAMs) are used.

10. For operation at very high speed the algorithm must be amenable to hardware implementation.

Page 11: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

Previous Work Most previous papers were targeted mainly

for an end-point and their main goal was to isolate packets that are destined to specific protocols or to specific connections. Linear parsing but do not scale to high speed

The first hardware implementation of packet filters fast enough to support an OC-12 link restricted to only a small number of rules (< 12) The pipeline implementation results in O(1) performance

using O(N) processing elements for O(N) rules. cannot scale to a large number of filter rules ( a linear ∵

number of processing elements). for rules with exact matching and not with ranges.

Page 12: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

Point Location Problem

The general packet classification problem can be viewed as a point location problem in multidimensional space.

This is a classic problem in Computational Geometry and numerous results have been reported in literatures.

Page 13: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

Definition of the point location problem Given a point in a d-dimensional space, and a set o

f n d-dimensional objects, find the object that the point belongs to.

Most algorithms reported in the literature deal with the case of non-overlapping objects or specific arrangements of hyper-planes or hyper-surfaces of bounded degree.

For d > 3 dimensions, the best algorithms have either an O(logd-1 n) complexity with O(n) space, or an O(log n) time-complexity with O(nd) space. not directly useful for high speed packet filtering

Page 14: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

“No-queuing before processing” Any packet queuing delays are only acceptable

after the classification step is performed, because it is the header processing (including packet filtering) operation that enables the router to determine the quality-of-service (QOS) level to be accorded to a particular packet.

Page 15: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98
Page 16: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98
Page 17: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98
Page 18: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98
Page 19: High-Speed Policy-Based Packet Forwarding Using Efficient Multi-dimensional Range Matching Lakshman and Stiliadis ACM SIGCOMM 98

Figure 5: Operation of the 2-dimensional algorithm when one dimension includes only intervals created by prefixes and the propagation technique is used.