SlideShare a Scribd company logo
ECWAY TECHNOLOGIES
IEEE PROJECTS & SOFTWARE DEVELOPMENTS
OUR OFFICES @ CHENNAI / TRICHY / KARUR / ERODE / MADURAI / SALEM / COIMBATORE
CELL: +91 98949 17187, +91 875487 2111 / 3111 / 4111 / 5111 / 6111
VISIT: www.ecwayprojects.com MAIL TO: ecwaytechnologies@gmail.com

MIN-MAX A COUNTER-BASED ALGORITHM FOR REGULAR
EXPRESSION MATCHING
ABSTRACT:
We propose an NFA-based algorithm called MIN-MAX to support matching of regular
expressions (regexp) composed of Character Classes with Constraint Repetitions (CCR). MINMAX is well suited for massive parallel processing architectures, such as FPGAs, yet it is
effective on any other computing platform. In MIN-MAX, each active CCR engine (to
implement one CCR term) evaluates input characters, updates (MIN, MAX) counters, and asserts
control signals, and all the CCR engines implemented in the FPGA run simultaneously. Unlike
traditional designs, (MIN, MAX) counters contain dynamically updated lower and upper bounds
of possible matching counts, instead of actual matching counts, so that feasible matching lengths
are compactly enclosed in the counter value.

The counter-based design can support constraint repetitions of n using O({rm log} n) memory
bits rather than that of O(n) in existing solutions. MIN-MAX can resolve character class
ambiguity between adjacent CCR terms and support overlapped matching when matching
collisions are absent. We developed a set of heuristic rules to assess the absence of collision for
CCR-based regexps, and tested them on Snort and SpamAssassin rule sets. The results show that
the vast majority of rules are immune from collisions, so that MIN-MAX can cost effectively
support overlapped matching. As a bonus, the new architecture also supports fast reconfiguration
via ordinary memory writes rather than resynthesis of the entire design, which is critical for timesensitive regexp deployment scenarios.
Dotnet  min-max a counter-based algorithm for regular expression matching

More Related Content

Viewers also liked

Отчет об исполнении бюджета за I полугодие 2015 года
Отчет об исполнении бюджета за I полугодие 2015 годаОтчет об исполнении бюджета за I полугодие 2015 года
Отчет об исполнении бюджета за I полугодие 2015 года
Алексей Арешев
 
Universidad regional autonoma de los andes uniandes
Universidad regional autonoma de los   andes uniandesUniversidad regional autonoma de los   andes uniandes
Universidad regional autonoma de los andes uniandes
IsaacEg24
 
Fake reading
Fake readingFake reading
Fake readingcswstyle
 
DOC2015365076
DOC2015365076DOC2015365076
DOC2015365076
Paulina LP
 
Mandala supervicion
Mandala supervicionMandala supervicion
Mandala supervicion
Isabel Terrero
 
Hammer
HammerHammer
Dotnet distributed web systems performance forecasting using turning bands m...
Dotnet  distributed web systems performance forecasting using turning bands m...Dotnet  distributed web systems performance forecasting using turning bands m...
Dotnet distributed web systems performance forecasting using turning bands m...
Ecwaytech
 
Dotnet modeling and optimizing the performance- security tradeoff on d-ncs u...
Dotnet  modeling and optimizing the performance- security tradeoff on d-ncs u...Dotnet  modeling and optimizing the performance- security tradeoff on d-ncs u...
Dotnet modeling and optimizing the performance- security tradeoff on d-ncs u...
Ecwaytech
 
Neucon mailer-progressive-r1
Neucon mailer-progressive-r1Neucon mailer-progressive-r1
Neucon mailer-progressive-r1
Misty Smith
 
Electrical thermal plant boiler temperature and water level monitoring
Electrical thermal plant boiler temperature and water level monitoringElectrical thermal plant boiler temperature and water level monitoring
Electrical thermal plant boiler temperature and water level monitoring
Ecwayt
 
Dotnet minimally supervised novel relation extraction using a latent relatio...
Dotnet  minimally supervised novel relation extraction using a latent relatio...Dotnet  minimally supervised novel relation extraction using a latent relatio...
Dotnet minimally supervised novel relation extraction using a latent relatio...
Ecwaytech
 
Topology abstraction service for ip vp ns
Topology abstraction service for ip vp nsTopology abstraction service for ip vp ns
Topology abstraction service for ip vp ns
Ecwayt
 
Página 13
Página 13Página 13
Página 13
amaralwebdesigner
 

Viewers also liked (15)

Отчет об исполнении бюджета за I полугодие 2015 года
Отчет об исполнении бюджета за I полугодие 2015 годаОтчет об исполнении бюджета за I полугодие 2015 года
Отчет об исполнении бюджета за I полугодие 2015 года
 
Universidad regional autonoma de los andes uniandes
Universidad regional autonoma de los   andes uniandesUniversidad regional autonoma de los   andes uniandes
Universidad regional autonoma de los andes uniandes
 
Documento1
Documento1Documento1
Documento1
 
Fake reading
Fake readingFake reading
Fake reading
 
DOC2015365076
DOC2015365076DOC2015365076
DOC2015365076
 
Mandala supervicion
Mandala supervicionMandala supervicion
Mandala supervicion
 
Hammer
HammerHammer
Hammer
 
Dotnet distributed web systems performance forecasting using turning bands m...
Dotnet  distributed web systems performance forecasting using turning bands m...Dotnet  distributed web systems performance forecasting using turning bands m...
Dotnet distributed web systems performance forecasting using turning bands m...
 
Secrétaire
SecrétaireSecrétaire
Secrétaire
 
Dotnet modeling and optimizing the performance- security tradeoff on d-ncs u...
Dotnet  modeling and optimizing the performance- security tradeoff on d-ncs u...Dotnet  modeling and optimizing the performance- security tradeoff on d-ncs u...
Dotnet modeling and optimizing the performance- security tradeoff on d-ncs u...
 
Neucon mailer-progressive-r1
Neucon mailer-progressive-r1Neucon mailer-progressive-r1
Neucon mailer-progressive-r1
 
Electrical thermal plant boiler temperature and water level monitoring
Electrical thermal plant boiler temperature and water level monitoringElectrical thermal plant boiler temperature and water level monitoring
Electrical thermal plant boiler temperature and water level monitoring
 
Dotnet minimally supervised novel relation extraction using a latent relatio...
Dotnet  minimally supervised novel relation extraction using a latent relatio...Dotnet  minimally supervised novel relation extraction using a latent relatio...
Dotnet minimally supervised novel relation extraction using a latent relatio...
 
Topology abstraction service for ip vp ns
Topology abstraction service for ip vp nsTopology abstraction service for ip vp ns
Topology abstraction service for ip vp ns
 
Página 13
Página 13Página 13
Página 13
 

Similar to Dotnet min-max a counter-based algorithm for regular expression matching

Java min-max a counter-based algorithm for regular expression matching
Java  min-max a counter-based algorithm for regular expression matchingJava  min-max a counter-based algorithm for regular expression matching
Java min-max a counter-based algorithm for regular expression matching
ecwayerode
 
Min max a counter-based algorithm for regular expression matching
Min max a counter-based algorithm for regular expression matchingMin max a counter-based algorithm for regular expression matching
Min max a counter-based algorithm for regular expression matching
ecway
 
cug2011-praveen
cug2011-praveencug2011-praveen
cug2011-praveen
Praveen Narayanan
 
Iaetsd implementation of aho corasick algorithm
Iaetsd implementation of aho corasick algorithmIaetsd implementation of aho corasick algorithm
Iaetsd implementation of aho corasick algorithm
Iaetsd Iaetsd
 
IJETAE_1013_119
IJETAE_1013_119IJETAE_1013_119
IJETAE_1013_119
Amitesh Bhardwaj
 
IEEE 2014 NS2 NETWORKING PROJECTS Fast regular expression matching using sma...
IEEE 2014 NS2 NETWORKING PROJECTS  Fast regular expression matching using sma...IEEE 2014 NS2 NETWORKING PROJECTS  Fast regular expression matching using sma...
IEEE 2014 NS2 NETWORKING PROJECTS Fast regular expression matching using sma...
IEEEBEBTECHSTUDENTPROJECTS
 
Concurrent Matrix Multiplication on Multi-core Processors
Concurrent Matrix Multiplication on Multi-core ProcessorsConcurrent Matrix Multiplication on Multi-core Processors
Concurrent Matrix Multiplication on Multi-core Processors
CSCJournals
 
E031022026
E031022026E031022026
E031022026
ijceronline
 
TiReX: Tiled Regular eXpression matching architecture
TiReX: Tiled Regular eXpression matching architectureTiReX: Tiled Regular eXpression matching architecture
TiReX: Tiled Regular eXpression matching architecture
NECST Lab @ Politecnico di Milano
 
Parallelization of Coupled Cluster Code with OpenMP
Parallelization of Coupled Cluster Code with OpenMPParallelization of Coupled Cluster Code with OpenMP
Parallelization of Coupled Cluster Code with OpenMP
Anil Bohare
 
Cache performance-x86-2009
Cache performance-x86-2009Cache performance-x86-2009
Cache performance-x86-2009
Léia de Sousa
 
A dynamically reconfigurable multi asip architecture for multistandard and mu...
A dynamically reconfigurable multi asip architecture for multistandard and mu...A dynamically reconfigurable multi asip architecture for multistandard and mu...
A dynamically reconfigurable multi asip architecture for multistandard and mu...
jpstudcorner
 
3rd 3DDRESD: ReCPU 4 NIDS
3rd 3DDRESD: ReCPU 4 NIDS3rd 3DDRESD: ReCPU 4 NIDS
3rd 3DDRESD: ReCPU 4 NIDS
Marco Santambrogio
 
Automatic Compilation Of MATLAB Programs For Synergistic Execution On Heterog...
Automatic Compilation Of MATLAB Programs For Synergistic Execution On Heterog...Automatic Compilation Of MATLAB Programs For Synergistic Execution On Heterog...
Automatic Compilation Of MATLAB Programs For Synergistic Execution On Heterog...
Sara Alvarez
 
Prelim Slides
Prelim SlidesPrelim Slides
Prelim Slides
smpant
 
2017 18 ieee vlsi titles,IEEE 2017-18 BULK NS2 PROJECTS TITLES,IEEE 2017-18...
2017 18 ieee vlsi titles,IEEE 2017-18  BULK  NS2 PROJECTS TITLES,IEEE 2017-18...2017 18 ieee vlsi titles,IEEE 2017-18  BULK  NS2 PROJECTS TITLES,IEEE 2017-18...
2017 18 ieee vlsi titles,IEEE 2017-18 BULK NS2 PROJECTS TITLES,IEEE 2017-18...
Nexgen Technology
 
HOMOGENEOUS MULTISTAGE ARCHITECTURE FOR REAL-TIME IMAGE PROCESSING
HOMOGENEOUS MULTISTAGE ARCHITECTURE FOR REAL-TIME IMAGE PROCESSINGHOMOGENEOUS MULTISTAGE ARCHITECTURE FOR REAL-TIME IMAGE PROCESSING
HOMOGENEOUS MULTISTAGE ARCHITECTURE FOR REAL-TIME IMAGE PROCESSING
cscpconf
 
Design and Implementation of a Cache Hierarchy-Aware Task Scheduling for Para...
Design and Implementation of a Cache Hierarchy-Aware Task Scheduling for Para...Design and Implementation of a Cache Hierarchy-Aware Task Scheduling for Para...
Design and Implementation of a Cache Hierarchy-Aware Task Scheduling for Para...
csandit
 
Aran Khanna, Software Engineer, Amazon Web Services at MLconf ATL 2017
Aran Khanna, Software Engineer, Amazon Web Services at MLconf ATL 2017Aran Khanna, Software Engineer, Amazon Web Services at MLconf ATL 2017
Aran Khanna, Software Engineer, Amazon Web Services at MLconf ATL 2017
MLconf
 
1 Describe different types of Assemblers.Assembly language.docx
 1 Describe different types of Assemblers.Assembly language.docx 1 Describe different types of Assemblers.Assembly language.docx
1 Describe different types of Assemblers.Assembly language.docx
aryan532920
 

Similar to Dotnet min-max a counter-based algorithm for regular expression matching (20)

Java min-max a counter-based algorithm for regular expression matching
Java  min-max a counter-based algorithm for regular expression matchingJava  min-max a counter-based algorithm for regular expression matching
Java min-max a counter-based algorithm for regular expression matching
 
Min max a counter-based algorithm for regular expression matching
Min max a counter-based algorithm for regular expression matchingMin max a counter-based algorithm for regular expression matching
Min max a counter-based algorithm for regular expression matching
 
cug2011-praveen
cug2011-praveencug2011-praveen
cug2011-praveen
 
Iaetsd implementation of aho corasick algorithm
Iaetsd implementation of aho corasick algorithmIaetsd implementation of aho corasick algorithm
Iaetsd implementation of aho corasick algorithm
 
IJETAE_1013_119
IJETAE_1013_119IJETAE_1013_119
IJETAE_1013_119
 
IEEE 2014 NS2 NETWORKING PROJECTS Fast regular expression matching using sma...
IEEE 2014 NS2 NETWORKING PROJECTS  Fast regular expression matching using sma...IEEE 2014 NS2 NETWORKING PROJECTS  Fast regular expression matching using sma...
IEEE 2014 NS2 NETWORKING PROJECTS Fast regular expression matching using sma...
 
Concurrent Matrix Multiplication on Multi-core Processors
Concurrent Matrix Multiplication on Multi-core ProcessorsConcurrent Matrix Multiplication on Multi-core Processors
Concurrent Matrix Multiplication on Multi-core Processors
 
E031022026
E031022026E031022026
E031022026
 
TiReX: Tiled Regular eXpression matching architecture
TiReX: Tiled Regular eXpression matching architectureTiReX: Tiled Regular eXpression matching architecture
TiReX: Tiled Regular eXpression matching architecture
 
Parallelization of Coupled Cluster Code with OpenMP
Parallelization of Coupled Cluster Code with OpenMPParallelization of Coupled Cluster Code with OpenMP
Parallelization of Coupled Cluster Code with OpenMP
 
Cache performance-x86-2009
Cache performance-x86-2009Cache performance-x86-2009
Cache performance-x86-2009
 
A dynamically reconfigurable multi asip architecture for multistandard and mu...
A dynamically reconfigurable multi asip architecture for multistandard and mu...A dynamically reconfigurable multi asip architecture for multistandard and mu...
A dynamically reconfigurable multi asip architecture for multistandard and mu...
 
3rd 3DDRESD: ReCPU 4 NIDS
3rd 3DDRESD: ReCPU 4 NIDS3rd 3DDRESD: ReCPU 4 NIDS
3rd 3DDRESD: ReCPU 4 NIDS
 
Automatic Compilation Of MATLAB Programs For Synergistic Execution On Heterog...
Automatic Compilation Of MATLAB Programs For Synergistic Execution On Heterog...Automatic Compilation Of MATLAB Programs For Synergistic Execution On Heterog...
Automatic Compilation Of MATLAB Programs For Synergistic Execution On Heterog...
 
Prelim Slides
Prelim SlidesPrelim Slides
Prelim Slides
 
2017 18 ieee vlsi titles,IEEE 2017-18 BULK NS2 PROJECTS TITLES,IEEE 2017-18...
2017 18 ieee vlsi titles,IEEE 2017-18  BULK  NS2 PROJECTS TITLES,IEEE 2017-18...2017 18 ieee vlsi titles,IEEE 2017-18  BULK  NS2 PROJECTS TITLES,IEEE 2017-18...
2017 18 ieee vlsi titles,IEEE 2017-18 BULK NS2 PROJECTS TITLES,IEEE 2017-18...
 
HOMOGENEOUS MULTISTAGE ARCHITECTURE FOR REAL-TIME IMAGE PROCESSING
HOMOGENEOUS MULTISTAGE ARCHITECTURE FOR REAL-TIME IMAGE PROCESSINGHOMOGENEOUS MULTISTAGE ARCHITECTURE FOR REAL-TIME IMAGE PROCESSING
HOMOGENEOUS MULTISTAGE ARCHITECTURE FOR REAL-TIME IMAGE PROCESSING
 
Design and Implementation of a Cache Hierarchy-Aware Task Scheduling for Para...
Design and Implementation of a Cache Hierarchy-Aware Task Scheduling for Para...Design and Implementation of a Cache Hierarchy-Aware Task Scheduling for Para...
Design and Implementation of a Cache Hierarchy-Aware Task Scheduling for Para...
 
Aran Khanna, Software Engineer, Amazon Web Services at MLconf ATL 2017
Aran Khanna, Software Engineer, Amazon Web Services at MLconf ATL 2017Aran Khanna, Software Engineer, Amazon Web Services at MLconf ATL 2017
Aran Khanna, Software Engineer, Amazon Web Services at MLconf ATL 2017
 
1 Describe different types of Assemblers.Assembly language.docx
 1 Describe different types of Assemblers.Assembly language.docx 1 Describe different types of Assemblers.Assembly language.docx
1 Describe different types of Assemblers.Assembly language.docx
 

Dotnet min-max a counter-based algorithm for regular expression matching

  • 1. ECWAY TECHNOLOGIES IEEE PROJECTS & SOFTWARE DEVELOPMENTS OUR OFFICES @ CHENNAI / TRICHY / KARUR / ERODE / MADURAI / SALEM / COIMBATORE CELL: +91 98949 17187, +91 875487 2111 / 3111 / 4111 / 5111 / 6111 VISIT: www.ecwayprojects.com MAIL TO: ecwaytechnologies@gmail.com MIN-MAX A COUNTER-BASED ALGORITHM FOR REGULAR EXPRESSION MATCHING ABSTRACT: We propose an NFA-based algorithm called MIN-MAX to support matching of regular expressions (regexp) composed of Character Classes with Constraint Repetitions (CCR). MINMAX is well suited for massive parallel processing architectures, such as FPGAs, yet it is effective on any other computing platform. In MIN-MAX, each active CCR engine (to implement one CCR term) evaluates input characters, updates (MIN, MAX) counters, and asserts control signals, and all the CCR engines implemented in the FPGA run simultaneously. Unlike traditional designs, (MIN, MAX) counters contain dynamically updated lower and upper bounds of possible matching counts, instead of actual matching counts, so that feasible matching lengths are compactly enclosed in the counter value. The counter-based design can support constraint repetitions of n using O({rm log} n) memory bits rather than that of O(n) in existing solutions. MIN-MAX can resolve character class ambiguity between adjacent CCR terms and support overlapped matching when matching collisions are absent. We developed a set of heuristic rules to assess the absence of collision for CCR-based regexps, and tested them on Snort and SpamAssassin rule sets. The results show that the vast majority of rules are immune from collisions, so that MIN-MAX can cost effectively support overlapped matching. As a bonus, the new architecture also supports fast reconfiguration via ordinary memory writes rather than resynthesis of the entire design, which is critical for timesensitive regexp deployment scenarios.