1 / 16

Hybrid Data Structure for IP Lookup in Virtual Routers Using FPGAs

Hybrid Data Structure for IP Lookup in Virtual Routers Using FPGAs. Authors: Oĝuzhan Erdem , Hoang Le, Viktor K. Prasanna , Cüneyt F. Bazlamaçcı Publisher: IEEE ASAP , 2011 Presenter: Jia-Wei,Yo Date: 2011/12/14. Introduction.

oriel
Download Presentation

Hybrid Data Structure for IP Lookup in Virtual Routers Using FPGAs

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. Hybrid Data Structure for IP Lookup in Virtual Routers Using FPGAs Authors: OĝuzhanErdem, Hoang Le, Viktor K. Prasanna,CüneytF. Bazlamaçcı Publisher: IEEE ASAP , 2011 Presenter: Jia-Wei,Yo Date: 2011/12/14

  2. Introduction • Several ideas use leaf pushing and an additional shared search structure to eliminate the high memory bandwidth requirement. • increases the complexity in updates • decreases the memory efficiency by introducing data redundancy in the share next hop structure. • Don’t scale well as the number of virtual routers increases.

  3. Introduction (1)A compact trie representation and a hybrid data structure for IP lookup that reduce the memory requirement. This structure does not need backtracking while preforming a search. (2)A merging algorithm that eliminates leaf pushing and simplifies the table updates in virtual routers. (3) A linear pipelined SRAM-based architecture on FPGAs that can support up to 3.1M IPv4 prefixes, while achieving a sustained throughput of 394 million lookups per second.

  4. Hybrid data structure Definition Active part (AP) of a prefix is the bit string between the most and least significant set bits of a prefix including the most significant set bit but not the least significant set bit.

  5. Hybrid data structure AP Example : 0010100* , 01001* , 1000* , 1001* 0010100* => 10* 01001* => 100* (conflict) 1000* => * 1001* => 100* (conflict)

  6. Hybrid data structure • Solve conflict prefixes • most significant set bit position (M) • number of trailing zeros (L) • Size of L is , W denote the maximum length of an IP and k is the number of virtual table. • Size of M is also ,it’s can reduce to , if the virtual ID including all 0’s is not used.

  7. Hybrid data structure-Converted

  8. Hybrid data structure-Converted

  9. Hybrid data structure-Constructing A singlebinary trie is constructed for all the prepended prefixes of the virtual tables, using only their active part. Trieis shallower and denser than a traditional binary trie. Extra information is stored at each node to distinguish the conflicted prefixes. An auxiliary data structure can be constructed for the conflicted prefixes.

  10. Hybrid data structure-Constructing

  11. Hybrid data structure-Lookup

  12. Hybrid data structure-Update Prefix insertion: If the new prefix conflicts with the existing prefixes, then the new prefix is added to the tree data structure.Otherwise, it is added to the triedata structure. Prefix deletion: The target prefix is located and its valid bit is reset. Route change: The target prefix is located and its next hop information is updated.

  13. Architecture And Implementation On FPGA There are at most W + stages in the trie pipeline

  14. Performance Xilinx ISE 12.4 with Xilinx Virtex-6 XC6VSX475T with -2 speed Clock period 5.084 ns Capable running at 197MHz Using dual-pipeline ,support 394 million lookups per second , or 126 Gbps ( for the minimum packet size of 40 Bytes )

  15. Performance The number of conflict prefix is less than 10% of the total number of prefix.

  16. Performance

More Related