1 / 14

A Fast and Scalable IPv6 Packet Classification

A Fast and Scalable IPv6 Packet Classification. Author: Xiaoju Zhou, Xiaohong Huang, Qiong Sun, Wei Yang, Yan Ma Publisher: Network Infrastructure and Digital Content, 2009. IC-NIDC 2009 Presenter: Chin-Chung Pan Date: 2010/03/10. Outline. Introduction

aileen
Download Presentation

A Fast and Scalable IPv6 Packet Classification

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Fast and Scalable IPv6 Packet Classification Author: Xiaoju Zhou, Xiaohong Huang, Qiong Sun, Wei Yang, Yan MaPublisher: Network Infrastructure and Digital Content, 2009. IC-NIDC 2009 Presenter: Chin-Chung Pan Date:2010/03/10

  2. Outline • Introduction • IPv6 PC Algorithm Aimed at the FL features • Related work • FLIN Algorithm • Basic Data Structure for a Group of Independent Sets • Algorithm Description • Update • Complexities of the Algorithm • Experimental Results

  3. Introduction • As IPv6 with a FL (flow label) in its header has been increasingly applied all over the world, well performed IPv6 PCs become crucial for ISP to support value-added services in future. • Although FL was defined in RFC2460 as a 20-bit field in IPv6 header as a flow identifier, only one published PC algorithm is specifically designed based on IPv6 FL, Source IP Address (SA) and Destination IP Address (DA).

  4. IPv6 PC Algorithm Aimed at the FL features • As defined in RFC3697, FL acts as a flow identifier associated with SA and DA to replace traditional 5-field flow identifier (SA, DA, source port, destination port and protocol number). • Twoimportant characteristics of FL are defined. One is aFL value should be created randomly and the otheris lifecycle of a FL is no more than 120 seconds. Flow Label Version Traffic Class Payload Length Next Header Hop Limit Source Address Destination Address

  5. Related work • IPv6 Packet Classification based on Flow Label, Source and Destination Addresses

  6. FLIN AlgorithmFL Decision Tree • In FLIN, a red-black tree is constructed based on FLs from rules. • FLIN based on a red-black trees will pay a small lookup cost because the tree is not perfectly balanced, but, in return, they get fast, bounded insertion and deletion operations. • Using a red-black tree, FLIN can, thus, be indicated in situations where nodes come and go frequently.

  7. FLIN AlgorithmBasic Data Structure for a Group of Independent Sets • Consider dimension i. Let R be the resulting set of ranges in this dimension. R is sorted according to the right end points. Let M be the set of selected non-overlapping ranges of R. • Step1. If R is empty, then Mis a maximum non-overlapping range set; terminate. • Step2. From R select the range r with the smallest right end point. If there are more than one such ranges, randomly select one. Add r to M. Remove r from R all ranges that overlap with r. Go to step1.

  8. FLIN AlgorithmBasic Data Structure for a Group of Independent Sets

  9. FLIN AlgorithmRemark and Reordering • To optimize the search performance of PC-SAM, the 1st index is -1, so we also remark it with -1. And the 3rd index is -1, it will be remarked as -3. Remarked indices will help to update a new rule. • Then reorders rule indices in each bi by how big their end points are. For example, e21 is the end point of rule r21, in b3, e21>e31 and e31>e13, so we have b3->1(r13 index), 7(r21 index), 8(r31 index) will be reordered into b3->1, 8, 7.

  10. FLIN AlgorithmRemark and Reordering

  11. FLIN AlgorithmUpdate • 1st step is to follow the red-black tree update process. • 2nd step, we need to search both SA and DA groups. • There are two main cases when a new rule is coming. • Case one: There is an existing bi=bx. • Case two: There is no existing start point equal to bx.

  12. FLIN AlgorithmUpdate

  13. Complexities of the Algorithm • The time require to perform red-black of FL is O(logN), and PC-SAM of (SA, DA) is O(I), N is the number of different FL values and I is the number of independent sets association with the FL so the total is O(logN+I).

  14. Experimental Results • One experimental scenario with 40000 rules as follows: There are 50 nodes (different FL values) in red-black tree and 800 rules on average for each node. • In total 90 memory access are needed. This is the worst case plain implementation. Therefore the total storage in this scenario is 1600K.

More Related