AUTHOR: NIZAR BEN NEJI, ADEL BOUHOULA PUBLISHER: IEEE INTERNATIONAL CONFERENCE,2011 PRESENTER: KAI-YANG LIU DATE:2011/08/31 1 NAF Conversion: An Efficient.

Slides:



Advertisements
Similar presentations
A Fast and Memory Efficient Dynamic IP Lookup Algorithm Based on B-Tree Author:Yeim-Kuan Chang and Yung-Chieh Lin Publisher: 2009 International Conference.
Advertisements

A Ternary Unification Framework for Optimizing TCAM-Based Packet Classification Systems Author: Eric Norige, Alex X. Liu, and Eric Torng Publisher: ANCS.
Chapter 2: Data Representation
Principles of Computer Architecture Miles Murdocca and Vincent Heuring Chapter 2: Data Representation.
1 TCAM Razor: A Systematic Approach Towards Minimizing Packet Classifiers in TCAMs Department of Computer Science and Information Engineering National.
CENG536 Computer Engineering Department Çankaya University.
Faculty of Computer Science © 2006 CMPUT 229 Floating Point Representation Operating with Real Numbers.
CS 447 – Computer Architecture Lecture 3 Computer Arithmetic (2)
Floating Point Numbers
Floating Point Numbers. CMPE12cGabriel Hugh Elkaim 2 Floating Point Numbers Registers for real numbers usually contain 32 or 64 bits, allowing 2 32 or.
On the Code Length of TCAM Coding Schemes Ori Rottenstreich (Technion, Israel) Joint work with Isaac Keslassy (Technion, Israel) 1.
Fast Filter Updates for Packet Classification using TCAM Authors: Haoyu Song, Jonathan Turner. Publisher: GLOBECOM 2006, IEEE Present: Chen-Yu Lin Date:
Floating Point Numbers. CMPE12cCyrus Bazeghi 2 Floating Point Numbers Registers for real numbers usually contain 32 or 64 bits, allowing 2 32 or 2 64.
1 Fast Packet Classification using Group Bit Vector Author: Tong Liu, Huawei Li, Xiaowei Li, Yinhe Han Publisher: IEEE GLOBECOM 2006 Presenter: Hsin-Mao.
Firewall Policy Queries Author: Alex X. Liu, Mohamed G. Gouda Publisher: IEEE Transaction on Parallel and Distributed Systems 2009 Presenter: Chen-Yu Chang.
1 On Constructing Efficient Shared Decision Trees for Multiple Packet Filters Author: Bo Zhang T. S. Eugene Ng Publisher: IEEE INFOCOM 2010 Presenter:
Efficient Multidimensional Packet Classification with Fast Updates Author: Yeim-Kuan Chang Publisher: IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 4, APRIL.
2-1 Computer Organization Part Fixed Point Numbers Using only two digits of precision for signed base 10 numbers, the range (interval between lowest.
Floating Point Numbers
Chapter Chapter Goals Know the different types of numbers Describe positional notation.
Fast binary and multiway prefix searches for pachet forwarding Author: Yeim-Kuan Chang Publisher: COMPUTER NETWORKS, Volume 51, Issue 3, pp , February.
Address Lookup in IP Routers. 2 Routing Table Lookup Routing Decision Forwarding Decision Forwarding Decision Routing Table Routing Table Routing Table.
The IEEE Format for storing float (single precision) data type Use the “enter” key to proceed through the show.
Existing Range Encoding Schemes Presenter: Kai-Yang, Liu Date: 2011/11/23.
3. Representing Integer Data
1 Efficient packet classification using TCAMs Authors: Derek Pao, Yiu Keung Li and Peng Zhou Publisher: Computer Networks 2006 Present: Chen-Yu Lin Date:
A prefix-based approach for managing hybrid specifications in complex packet filtering Author: Nizar Ben Neji, Adel Bouhoula Publisher: Computer Networks.
Simple Data Type Representation and conversion of numbers
Lecture 5.
CS105 INTRODUCTION TO COMPUTER CONCEPTS BINARY VALUES & NUMBER SYSTEMS Instructor: Cuong (Charlie) Pham.
Binary Real Numbers. Introduction Computers must be able to represent real numbers (numbers w/ fractions) Two different ways:  Fixed-point  Floating-point.
2-1 Chapter 2 - Data Representation Principles of Computer Architecture by M. Murdocca and V. Heuring © 1999 M. Murdocca and V. Heuring Chapter Contents.
Fixed-Point Arithmetics: Part II
2-1 Chapter 2 - Data Representation Principles of Computer Architecture by M. Murdocca and V. Heuring © 1999 M. Murdocca and V. Heuring Principles of Computer.
Floating Point. Agenda  History  Basic Terms  General representation of floating point  Constructing a simple floating point representation  Floating.
Fixed and Floating Point Numbers Lesson 3 Ioan Despi.
CSC 221 Computer Organization and Assembly Language
Number Representation
Fast Packet Classification Using Bloom filters Authors: Sarang Dharmapurikar, Haoyu Song, Jonathan Turner, and John Lockwood Publisher: ANCS 2006 Present:
Multi-Field Range Encoding for Packet Classification in TCAM Author: Yeim-Kuan Chang, Chun-I Lee and Cheng-Chien Su Publisher: INFOCOM 2011 Presenter:
ECE 2110: Introduction to Digital Systems Signed Addition/Subtraction.
On Adding Bloom Filters to Longest Prefix Matching Algorithms
1 Fast packet classification for two-dimensional conflict-free filters Department of Computer Science and Information Engineering National Cheng Kung University,
Cross-Product Packet Classification in GNIFS based on Non-overlapping Areas and Equivalence Class Author: Mohua Zhang, Ge Li Publisher: AISS 2012 Presenter:
Binary Arithmetic.
IT11004: Data Representation and Organization Floating Point Representation.
Security of Using Special Integers in Elliptic Scalar Multiplication Mun-Kyu Lee o Jin Wook Kim Kunsoo Park School of CSE, Seoul National University.
Range Enhanced Packet Classification Design on FPGA Author: Yeim-Kuan Chang, Chun-sheng Hsueh Publisher: IEEE Transactions on Emerging Topics in Computing.
Parallel tree search: An algorithmic approach for multi- field packet classification Authors: Derek Pao and Cutson Liu. Publisher: Computer communications.
1 Space-Efficient TCAM-based Classification Using Gray Coding Authors: Anat Bremler-Barr and Danny Hendler Publisher: IEEE INFOCOM 2007 Present: Chen-Yu.
Packet Classification Using Multi- Iteration RFC Author: Chun-Hui Tsai, Hung-Mao Chu, Pi-Chung Wang Publisher: 2013 IEEE 37th Annual Computer Software.
COMPUTER ARITHMETIC Binary Coded Decimal Presented By Chung Wai Chow.
1 CE 454 Computer Architecture Lecture 4 Ahmed Ezzat The Digital Logic, Ch-3.1.
Department of Computer Science Georgia State University
Addition and Subtraction
Introduction To Computer Science
Dr. Clincy Professor of CS
AN ON-CHIP IP ADDRESS LOOKUP ALGORITHM
William Stallings Computer Organization and Architecture 7th Edition
ECEG-3202 Computer Architecture and Organization
Binary Prefix Search Author: Yeim-Kuan Chang
COMS 161 Introduction to Computing
Efficient Huffman Decoding
IT11004: Data Representation and Organization
Worst-Case TCAM Rule Expansion
Presentation transcript:

AUTHOR: NIZAR BEN NEJI, ADEL BOUHOULA PUBLISHER: IEEE INTERNATIONAL CONFERENCE,2011 PRESENTER: KAI-YANG LIU DATE:2011/08/31 1 NAF Conversion: An Efficient Solution for the Range Matching Problem in Packet Filters

Introduction 2 The cause of the coexistence of range based and prefix based fields within the filtering rules. In this paper, we deal with prefix-based solutions. The available solutions usually require that the filtering rules must be written only in prefix format. Arbitrary ranges need to be usually converted into standard prefixes when dealing with prefix based solutions.

Direct Range to Prefix Conversion 3

Exmaple 4

Direct Range to Prefix Conversion In the worst case, the w-bit range [1, 2 w −2] is split into 2w−2 prefixes. For example, the 4-bit worst case range [1,14] requires 6 prefixes as follows: 5

Non-Adjacent Form 6 Every integer n has a unique non-adjacent form (NAF). NAF is a signed binary representation (SBR) of length k and of the form n = where the digits are in {−1, 0, 1} satisfying the property that a i ×a i+1 = 0 Example: 47 is = and the NAF form is

Proposed Technique 7 Notations and Terminology: 1. w is the size of the packet header field to be inspected. 2. A w-bit range R = [l, u]satisfies 0 ≤ l ≤ 2 w −1 (lower bound) and 0 ≤u ≤ 2 w −1 (upper bound) where l ≤ u.

Proposed Technique 8 3. Adjacent ranges: Two w-bit ranges [l1, u1] and [l2, u2] are adjacent if l2 = u Consecutive elementary ranges: Two elementary ranges[l1, u1] and [l2, u2] are consecutive if they are adjacent and they have same widths or consecutive power of 2 widths. => |width1−width2| = min(width1, width2)

Conversion Algorithm of a Single Range 9 Lower{ } is a list of Integers and it stores lower bounds of ranges, Upper{ } is a list of Integers and it stores upper bounds of ranges, Sign{ } is a binary list and it stores signs as 0s and 1s,the zero value means “ + ” and one means “ - ”.

Example 10

Example Case 1: difference equals to zero Ex: [4,7],[8,11] [4,7] = 01** U1+1=L2, L2=(1000) 2 [8,11] = 10** max(width1,width2)=4 => L2 mod (2.max(midth1,width2))= 0 ∴ can’t be converted 11

Example Case 2: difference equals to width1 Ex: [6,7],[8,11] [6,7] = 011* U1+1=L2, L2=(1000) 2 [8,11] = 10** max(width1,width2)=4 => L2 mod (2.max(midth1,width2))= 0 ∴ can’t be converted 12

Matching Algorithm 13 Two main phases: searching for the longest matching prefix and then searching for the shortest prefix that doesn’t match. Ex: A. 2 = (0010)2 B. 4 = (0100)2.

Performance Analysis 14 Worst Expansion Case The worst expansion case for DRPC algorithm gives for the w-bit range of the form [1, 2 w −2] 2w-2 prefixes. The proposed algorithm: → Only 3 prefixes

The Worst Case for the NAF Conversion 15 The worst case expansion is only w prefixes Example:

General Case of the Worst Result 16

Average Expansion Case 17

Special Cases 18 Converting multiple ranges: 1. Two intersecting ranges [a, b] and [c, d] and c≤b 2.Two disjoint ranges such that b+1<c Left and right extremal ranges: Left: [ 0, a ] with 0 ≤a≤2 W -1 ; Worst:[ 0, 2 W -2] Right: [ b, 2 W -1 ] with 0 ≤b≤2 W -1 ; Worst:[ 1, 2 W -1]

Special Cases 19 Negation of an arbitrary range: The negation of the w-bit range [a, b] gives two extremal w-bit ranges [ 0, a−1] and [b+1, 2w−1]. Worst case of DRPC : 2w-2 prefixes given by the range of the form Worst case of NAF conversion : w prefixes given by the negation of the range of the form: