This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

CPU Required for 1Gb Throughput

Hi all,

As of last week I can count myself among one of the lucky ones that has Gigabit Fiber service (gig up and down) at home. Thank you thank you.... No more applause please! [:D]

I have been using Astaro/Sophos forever. I love everything about it. Right now it's running as a VM on VMware on a 1st gen i3 box. I have a couple of other VMs running (largely idle) so UTM gets almost all the CPU and has priority over the other VMs.

But I can only get about 200Mbps through it. As I see it I have one of two options. I can abandon the UTM and go with a less capable platform (likely a wireless router), or I can toss a butt load of CPU at my VMware box.

My question is this... Is anyone running a UTM (VM or bare metal) and getting gigabit throughput? If so what hardware setup?

Thanks


This thread was automatically locked due to age.
Parents
  • Folks have been getting full GE with p-4 xeons.  Part of the issue is the overhead of the UTM.  There's just too much completing for cpu time.  Snort is at a bad disadvantage here..most of the UTM is designed to be MT and therefore larger core counts up the performance.  Snort however is highly serialized ST which means ghz is kind for it.  If you want fast speeds you ahve to go ghz ghz ghz.  Proper motherboard AND nics are crucial as well.  

    To give you an idea the fastest max realworld 1xx utm right now maxes out at 370 mbps.  That's with nothing else one.  You have to really get up into the firebreather sg appliances before you even can THINK about getting close to GE.  Even then that's with very little if anything else turned on.  if you want to get GE AND have other stuff turned on you have to get into the 2u upper echelon of things.  

    If you want GE IPS you are going to have to have a fast cpu...fast nics and be running more than one stream at a time to get GE out of snort in the utm without spending thousands upon thousands for your home setup..[:)]
  • Thanks William!

    I wonder what I would get out of an i7-5820K over clocked to 3.8Ghz or even 4Ghz. I suspect I'll have to give up my dreams of 1Gbps for a while. There is already one company building Snort into a consumer device  (I've asked but they haven't responded on speed) so maybe some consumer friendly solutions are around the corner.

    Thanks
  • Thanks William!

    I wonder what I would get out of an i7-5820K over clocked to 3.8Ghz or even 4Ghz. I suspect I'll have to give up my dreams of 1Gbps for a while. There is already one company building Snort into a consumer device  (I've asked but they haven't responded on speed) so maybe some consumer friendly solutions are around the corner.

    Thanks


    dreams of GE no..dreams of GE in snort with anything else going..yes..[:)]

    NOW then..if you want MAXIMUM speed there's two way to go:
    1. stick with vmware.  if you do this make one vm with 2 vcpus and dedicated every single ghz the vmware host can muster to the vm.  Same for the ram and disk.

    2.  Install directly onto the hardware.

    I would go with #1.  If something happens to the host you can grab the vmdk and other files and simply move to another vmware host.  NO reinstalls and you don't loose your logs.(provided you don't have a hard disk failure and don't have a backup).
  • Thanks William!

    I wonder what I would get out of an i7-5820K over clocked to 3.8Ghz or even 4Ghz. I suspect I'll have to give up my dreams of 1Gbps for a while. There is already one company building Snort into a consumer device  (I've asked but they haven't responded on speed) so maybe some consumer friendly solutions are around the corner.

    Thanks


    if you go QC you have one option IMO to wring as much speed as you can..vurtualization.  Make a vm with 2 vcpus and dump all ghz, ram, and hdd into that vm and let it rip.
  • if you go QC you have one option IMO to wring as much speed as you can..vurtualization.  Make a vm with 2 vcpus and dump all ghz, ram, and hdd into that vm and let it rip.


    I have 2 vcpu and almost all Ghz dedicated to the VM already. It's really a question of how much is enough. How does the UTM Snort implementation handle multiple streams? Will it automatically instantiate new instances of Snort and would it leverage different cores intelligently? I'm ok with a single stream being limited but if in aggregate they can handle the traffic I'd be ok.

    Hmm... now that I think about it my ISP will give me a couple IPs. I could run all media devices though a separate instance of UTM if needed and just pin that instance to a different set of cores. That would not be as appealing but it would be better than ripping UTM out completely.

    Dan
  • I have 2 vcpu and almost all Ghz dedicated to the VM already. It's really a question of how much is enough. How does the UTM Snort implementation handle multiple streams? Will it automatically instantiate new instances of Snort and would it leverage different cores intelligently? I'm ok with a single stream being limited but if in aggregate they can handle the traffic I'd be ok.

    Hmm... now that I think about it my ISP will give me a couple IPs. I could run all media devices though a separate instance of UTM if needed and just pin that instance to a different set of cores. That would not be as appealing but it would be better than ripping UTM out completely.

    Dan


    UTM will start an instance of snort per core usually.  You don't need multiple ips and you don't need multiple utm instances either.  It really is a matter you don't have enough hardware do do GE on snort with anything else going at all.  Part of this is snort part of it is UTM.  YOu do not get into GE ratings for snort combined with other modules in UTM until the 4xx sg series of machines.  

    If you are hellbent on GE w/ips build a linux box and snort on it and make it a 4.0 ghz monster using server grade components(not a desktop board) and put that as a bridge in front of UTM.  OR get another less secure utm in a bridge and using the same hardware turn on ONLY ips in that machine(that at least makes it easier to manage snort).

    In reality getting GE with snort is highly diffulcult due to how snort works vs modern cpus:
    Capacity Planning for Snort IDS | Bulbous, Not Tapered
    I have an excerpt here:
    Snort is essentially single-threaded, which means that out of the box it doesn’t make effective use of multiple CPUs (technically there is more than one thread in a snort process, but the others are used for housekeeping tasks that don’t require much CPU power, not for scaling traffic analysis across multiple CPUs). As of August 2011, Snort on a single-CPU can be tuned to examine 200-500Mbits/sec, depending on the size of the ruleset used.

    It’s possible to scale to 10Gbits/sec by running multiple copies of snort on the same computer, each using a different CPU. A multi-snort/multi-CPU configuration is quite a lot more complex to manage than a single-cpu deployment. Traffic from high-capacity links must be divided up into 200-500Mbit/sec chunks that can be examined by a single CPU, techniques to perform this load-balancing are discussed in the next section. Additionally, startup-scripts often must be customized and it can be difficult to manage multiple configuration files and log files. In spite of the management complexity, large organizations have successfully managed high performance Snort deployments this way for many years.


    here's tipos on GE Snort
    That link has a few tips BUT if you make those kernel adjustments in UTM you will cause issues elsewhere in the system.

    Plainly put..without significant tuning and dedicated hardware OR you have a software like UTM tuned for firebreathing massive multi-core systems(like the 4xx sg series) you simply aren't going to get GE snort performance no matter what.

    If you are truly, truly hellbent on GE with IPS you have a few options.  Google "how to get gigabit performance with snort" or buy a 4xx sg appliance or higher OR buy a snort appliance directly from sourcefire.  Snort itself is capable..but it takes a ton of hardware, a ton of tuning, and either a lot of time(for roll your own solutions) or money( for sg4x or sourcefire appliance)

    Just for reference..to get a rated GE out of a cisco(sourcefire.com is being deprecated soon)dedicated ips box the MINIMUM is the firepower 7120 and that's 42k for just the chassis!  Hopefully suricata gets moving as I'm sure Cisco doesn't intend to allow snort to be had for free for much longer..[:)]
  • I wonder what I would get out of an i7-5820K over clocked to 3.8Ghz or even 4Ghz. I suspect I'll have to give up my dreams of 1Gbps for a while. 


    Won't be much faster than my i5-4670 unless you have a lot of users, or you do the VM GHz trick William mentioned. I'm not sure how HT scales in VMWare.

    Barry
  • How does the UTM Snort implementation handle multiple streams? Will it automatically instantiate new instances of Snort and would it leverage different cores intelligently? I'm ok with a single stream being limited but if in aggregate they can handle the traffic I'd be ok.


    Each stream can run on a separate Snort instance.

    afaict, a single PC hitting multiple sites is probably only one stream; you need multiple PCs/devices.

    Barry
Reply
  • How does the UTM Snort implementation handle multiple streams? Will it automatically instantiate new instances of Snort and would it leverage different cores intelligently? I'm ok with a single stream being limited but if in aggregate they can handle the traffic I'd be ok.


    Each stream can run on a separate Snort instance.

    afaict, a single PC hitting multiple sites is probably only one stream; you need multiple PCs/devices.

    Barry
Children
No Data