1 / 12

Series DFA for Memory-Efficient Regular Expression Matching

Series DFA for Memory-Efficient Regular Expression Matching. Author: Tingwen Liu, Yong Sun, Li Guo , and Binxing Fang Publisher : CIAA 2012(  International Conference on Implementation and Application of Automata ) Presenter : Sih -An Pan Date: 2014/5/7. Introduction.

walker
Download Presentation

Series DFA for Memory-Efficient Regular Expression Matching

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. Series DFA for Memory-Efficient RegularExpression Matching Author:TingwenLiu, Yong Sun, Li Guo, and BinxingFang Publisher: CIAA 2012( International Conference on Implementation and Application of Automata) Presenter: Sih-An Pan Date: 2014/5/7 Department of Computer Science and Information Engineering National Cheng Kung University, Taiwan R.O.C.

  2. Introduction We focus on state reduction by cutting complex RegExesinto well-designed and ordered RegEx fragments that can be compiled into compact DFAs. We propose Series DFA (SDFA) that concatenates the compact DFAs with epsilon transitions in the order of their appearance. Computer & Internet Architecture Lab

  3. State Complexity for RegExes Computer & Internet Architecture Lab

  4. Main Idea of SDFA RegEx1: ba[^a]*bad.{2}cd RegEx2: de[^e]{3} It first locates all unconstrained and constrained repetitions in the two RegExes, and then cut them into five fragments. Fragment1: ba Fragment2:^[^a]*bad Fragment3: ^.{2}cd Fragment4:de Fragment5: ^[^e]{3} Computer & Internet Architecture Lab

  5. Main Idea of SDFA We call a RegEx as its fragments’ father, each fragment as its son. For a given RegEx, the first (last) fragment is called its eldestson(youngestson), correspondingly other fragments are non-eldestsons(non-youngestsons). Fragments ba and de, which are the eldestsons of the two RegExes, are compiled into a composite DFA. Computer & Internet Architecture Lab

  6. Main Idea of SDFA Computer & Internet Architecture Lab

  7. Main Idea of SDFA RegEx1: ba[^a]*bad.{2}cd RegEx2: de[^e]{3} Computer & Internet Architecture Lab

  8. Optimization in Cutting Process Cutting at the repetitions of any character range will have low memory size but high memory bandwidth as each fragment is too short. In contrast, cutting only at the repetitions of wildcards will have low memory bandwidthbut high memory size. We introduce a threshold μ: if the size of a character range is more than μ, we think the range is large enough to be cut at the positions of its repetitions. Computer & Internet Architecture Lab

  9. Optimization in Matching Process This specialty can be exploited to decrease memory bandwidth. As left-most matching is enough to know the fired RegExes, once a RegEx is reported it is safe to set its all non-eldestson DFAs inactive forever. SDFA is able to ensure that the fragment DFAs of one RegEx will never be accessed by other RegExes. Computer & Internet Architecture Lab

  10. Experimental Results Computer & Internet Architecture Lab

  11. Experimental Results Computer & Internet Architecture Lab

  12. Experimental Results Computer & Internet Architecture Lab

More Related