<div dir="ltr"><div><div><div><div>Hello!<br><br></div>This is a good question, and the answer may not be what you expect at first.<br><br></div>The "problem" is that snort checks the port LAST*, so that rule would, in fact, be seen as a poor performer.  The reason we check the port last is because we found that with properly written rules, the port check would almost always succeed.  Early versions of snort checked ports first and it was actually slower overall this way.<br>
<br></div><div>It's worth noting that your example rule would be a poor performer regardless of the pcre used because it doesn't have a content match, which means it would enter on EVERY packet, especially since you also didn't include a "flow" option.  All rules should have a good content match that will help snort know if it should bother evaluating any of the rule options and a flow option to further reduce the number of packets it evaluates.<br>
</div><div><br></div><div>(*) Rules that use some preprocessors, like http_inspect, in some ways effectively check the port first because http_inspect has its own rule option tree and that tree is only run on ports that are seen and/or configured as http, but in general you should never assume the port specification is going to provide any performance benefits.<br>
<br></div><div><br></div>Thanks,<br><br></div>~Patrick<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Jan 8, 2014 at 11:35 AM, Balasubramaniam Natarajan <span dir="ltr"><<a href="mailto:bala150985@...11827..." target="_blank">bala150985@...11827...</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Hi<br><br></div><div>Let us consider a snort signature with a CPU expensive PCRE match as show below[1].<br>
<br></div><div>Would the PCRE consume a lot of CPU cycles if the entire traffic which this snort saw is just port 80 to the HOME_NET ?<br>

</div><div><br>[1]<br></div><div>alert tcp any any -> $HOME_NET 888 (msg:"Most CPU expensive PCRE"; pcre:"/.+/i"; rev:1; sid:100001)<br></div><div><br></div><div>My answer would be no ?  Is there any other contradicting answer to the same ?  My doubt is due to the fact that I saw a peculiar case where the traffic was not on port 888 and still this sort of a rule managed to bubble up the worst performers in pref-profiling.<span class="HOEnZb"><font color="#888888"><br>


</font></span></div><span class="HOEnZb"><font color="#888888"><div><div><div><br>-- <br>Regards,<br>Balasubramaniam Natarajan<br><a href="http://www.blog.etutorshop.com" target="_blank">www.blog.etutorshop.com</a><br>
</div></div></div></font></span></div>
<br>------------------------------------------------------------------------------<br>
Rapidly troubleshoot problems before they affect your business. Most IT<br>
organizations don't have a clear picture of how application performance<br>
affects their revenue. With AppDynamics, you get 100% visibility into your<br>
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!<br>
<a href="http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk" target="_blank">http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk</a><br>_______________________________________________<br>

Snort-users mailing list<br>
<a href="mailto:Snort-users@lists.sourceforge.net">Snort-users@...4626...ceforge.net</a><br>
Go to this URL to change user options or unsubscribe:<br>
<a href="https://lists.sourceforge.net/lists/listinfo/snort-users" target="_blank">https://lists.sourceforge.net/lists/listinfo/snort-users</a><br>
Snort-users list archive:<br>
<a href="http://sourceforge.net/mailarchive/forum.php?forum_name=snort-users" target="_blank">http://sourceforge.net/mailarchive/forum.php?forum_name=snort-users</a><br>
<br>
Please visit <a href="http://blog.snort.org" target="_blank">http://blog.snort.org</a> to stay current on all the latest Snort news!<br></blockquote></div><br><br clear="all"><br>-- <br>Patrick Mullen<br>Response Research Manager<br>
Sourcefire VRT
</div>