Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    SSD (Solid State Drive) and pfSense (Important)

    Scheduled Pinned Locked Moved Hardware
    140 Posts 57 Posters 165.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      tester_02
      last edited by

      They way I see the issue with SSD's was that a CF adapter with a decent card was around $80 locally.  I could pickup a new 40gb drive at the same price on the day I was looking at it (I actually had a spare drive and used that instead).
        Intel controllers are decent even with OS's that don't support trim (1.2.3), and I just wanted a quiet system.  I remember reading at the time the large amount of data the ssd can write per day before wearing out.  I just could not see pfsense doing that, so I put the ssd in (speed was not a factor).  It's lasted a long time, and it allowed me a full install (squid/snort).
        I think if it did die in the next year, I'd put another one in.  I don't like the CF flashing, and like the quiet compared to a laptop drive (there is also the issue of laptop drives not being rated for constant usage).

      Next time I'd either run another drive with 2.0 (new freebsd is trim aware I believe), or I'd go with one of the newer kingston v100 drives that have more aggressive garbage collection for non trim aware os's (apple).

      1 Reply Last reply Reply Quote 0
      • D
        dreamslacker
        last edited by

        @stephenw10:

        I think you may be underestimating the number of cells in a 30GB drive available for wear leveling.
        If it were true that SSDs would wear out rapidly wouldn't we be seeing more failures among all the SSD netbooks and macbook airs?

        Consider that Intel said, upon launching their 80GB X-25:

        Our MLC SSD can allow a user to write 100GB/day every day for five years without wearing out the drive

        However that doesn't tie in with the second post in this thread. 16GB drive, 2.5 months, dead!

        I suspect that it's very dependent on the algorithms in the drive controller.

        Then again I ran Windows 98 from a 128MB CF card for a few years with no problems!  ::) (though I did disable swap)

        Steve

        The Sandforce controllers don't write directly to the NAND flash and they do have overprovisioning.
        eg.  A 120GB Sandforce has only about 110GB of usable space but 128GB of real NAND flash.

        What they do is to actually compute the hash of the data and write the hash out.  This is actually compressed so it takes up even less space.
        For log files and similarly highly compressible data, this results in less data being written to the cells.  When the data is requested on a read, the controller takes the hash and generates the parity data to restore it.
        Furthermore, the overprovisioned space will also reduce the actual wear on the usable area.  That is why Sandforce can claim 0.5X write amplification.  i.e.  On the average, only half the amount of cells are being written to for an average set of data being stored to the drive.

        That said, this is very different from wear levelling itself.  Wear levelling is more related to how writes are spread out throughout the cells to ensure that wear and tear is evened out.

        1 Reply Last reply Reply Quote 0
        • F
          FJSchrankJr
          last edited by

          Our MLC SSD can allow a user to write 100GB/day every day for five years without wearing out the drive

          However that doesn't tie in with the second post in this thread. 16GB drive, 2.5 months, dead!

          I suspect that it's very dependent on the algorithms in the drive controller.

          Then again I ran Windows 98 from a 128MB CF card for a few years with no problems!  ::) (though I did disable swap)

          Steve

          The Sandforce controllers don't write directly to the NAND flash and they do have overprovisioning.
          eg.  A 120GB Sandforce has only about 110GB of usable space but 128GB of real NAND flash.

          What they do is to actually compute the hash of the data and write the hash out.  This is actually compressed so it takes up even less space.
          For log files and similarly highly compressible data, this results in less data being written to the cells.  When the data is requested on a read, the controller takes the hash and generates the parity data to restore it.
          Furthermore, the overprovisioned space will also reduce the actual wear on the usable area.  That is why Sandforce can claim 0.5X write amplification.  i.e.  On the average, only half the amount of cells are being written to for an average set of data being stored to the drive.

          That said, this is very different from wear levelling itself.  Wear levelling is more related to how writes are spread out throughout the cells to ensure that wear and tear is evened out.

          Supposedly industrial/commercial flash memory can do up to 200k writes per cell compared to the 10k most consumer grade
          flash can do. I wonder if there is a SSD out there that uses this grade of flash though I would imagine it costs a fortune!

          nevertheless running on embedded pfSense and a cheap SSDNow 100 8GB is more than adequate for us.

          I have a question off topic a bit for someone:

          I am running about 1GB of ram and about 74% is in use which should not be the case. In researching this a bit I noticed
          about 5200 processes running so_recv  inetd. We heavily use NAT reflection here so can anyone explain how NAT redirection is handled
          in pfSense? This morning memory usage is down to 20% and the processes are down to 2000 however NAT reflection stopped working.

          Trying to trace the problem but need to understand how pfSense is handling reflections. Probably the wrong place to post this.

          FJS - Embedded Systems Engineer
          Pictures are worth a thousand words, but <u>posting config.xml backups are worth 10,000</u>.  Alter the IPs, change anything revealing but leave subnets intact. Use find and replace. Please try to keep it brief on the description.
          ALWAYS disable TSO  & LRO EXCEPT CHKSUM IF SUPPORTED. TSO/LRO breaks traffic, pf scrub and this goes for any passive device inline

          1 Reply Last reply Reply Quote 0
          • F
            FJSchrankJr
            last edited by

            SSD that can do 2,000,000 writes? Industrial/military?

            They show a picture of a fighter jet on the home page:
            http://www.delkinoem.com/sata-drive-industrial.html#tab-2

            Just hope they don't take the cheap route and use a Kingston SSD in military unmanned aerial vehicles…

            FJS - Embedded Systems Engineer
            Pictures are worth a thousand words, but <u>posting config.xml backups are worth 10,000</u>.  Alter the IPs, change anything revealing but leave subnets intact. Use find and replace. Please try to keep it brief on the description.
            ALWAYS disable TSO  & LRO EXCEPT CHKSUM IF SUPPORTED. TSO/LRO breaks traffic, pf scrub and this goes for any passive device inline

            1 Reply Last reply Reply Quote 0
            • D
              dreamslacker
              last edited by

              @FJSchrankJr:

              Supposedly industrial/commercial flash memory can do up to 200k writes per cell compared to the 10k most consumer grade
              flash can do. I wonder if there is a SSD out there that uses this grade of flash though I would imagine it costs a fortune!

              nevertheless running on embedded pfSense and a cheap SSDNow 100 8GB is more than adequate for us.

              It's called SLC; we're looking at 2 to 3 times the price of a similar unit using the regular MLC stuff.

              The main thing is that most newer controllers are geared towards using cheaper MLC flash and so you typically get slower SSDs when you're on the look out for SLC.

              1 Reply Last reply Reply Quote 0
              • F
                FJSchrankJr
                last edited by

                @dreamslacker:

                @FJSchrankJr:

                Supposedly industrial/commercial flash memory can do up to 200k writes per cell compared to the 10k most consumer grade
                flash can do. I wonder if there is a SSD out there that uses this grade of flash though I would imagine it costs a fortune!

                nevertheless running on embedded pfSense and a cheap SSDNow 100 8GB is more than adequate for us.

                It's called SLC; we're looking at 2 to 3 times the price of a similar unit using the regular MLC stuff.

                The main thing is that most newer controllers are geared towards using cheaper MLC flash and so you typically get slower SSDs when you're on the look out for SLC.

                Yes noticed the speed was much slower.

                FJS - Embedded Systems Engineer
                Pictures are worth a thousand words, but <u>posting config.xml backups are worth 10,000</u>.  Alter the IPs, change anything revealing but leave subnets intact. Use find and replace. Please try to keep it brief on the description.
                ALWAYS disable TSO  & LRO EXCEPT CHKSUM IF SUPPORTED. TSO/LRO breaks traffic, pf scrub and this goes for any passive device inline

                1 Reply Last reply Reply Quote 0
                • D
                  dreamslacker
                  last edited by

                  @FJSchrankJr:

                  Yes noticed the speed was much slower.

                  SLC NAND flash is actually faster on the whole than MLC.  Largely due to the fact that it doesn't need to be written to in blocks.  However, most current SSDs using SLC are geared towards enterprise usage where data security and reliability is very important.
                  You can't just wipe the data on an SSD like you would with a mechanical drive using a degaussing wand.

                  Hence, these SSDs will have additional ECC parity which reduces the performance and also encryption built-in.  The end result is an SSD that is slower than its MLC counterpart.  Furthermore, most controllers would be ported over directly from their MLC counterparts so you lose the cell level write capabilities anyway.

                  1 Reply Last reply Reply Quote 0
                  • F
                    FJSchrankJr
                    last edited by

                    Actually did not know that… Up until the other day I didn't even realize there was industrial flash capable of that. Sure beats the days of EPROM and UV erasers.

                    FJS - Embedded Systems Engineer
                    Pictures are worth a thousand words, but <u>posting config.xml backups are worth 10,000</u>.  Alter the IPs, change anything revealing but leave subnets intact. Use find and replace. Please try to keep it brief on the description.
                    ALWAYS disable TSO  & LRO EXCEPT CHKSUM IF SUPPORTED. TSO/LRO breaks traffic, pf scrub and this goes for any passive device inline

                    1 Reply Last reply Reply Quote 0
                    • P
                      patoforu
                      last edited by

                      @FJSchrankJr:

                      However that doesn't tie in with the second post in this thread. 16GB drive, 2.5 months, dead!

                      Remember that SSD is just electronics that might die for some other reason than wearing out.  I've seen cheap SSD:t breaking after just weeks of very light laptop use, and I'm sure that the NAND media were just fine, and it was the controller that died. Also note that most good SSD just go into read-only mode when they wear out and there should be no data-loss.

                      I've no experience yet with running pfsense on SSD but I'd use an quality SLC drive or large-enough (80+ GB) Intel MLC, maybe "short stroked", and would not worry about it too much. Small compact flashes are a totally different thing, of course. I've been using a 160 GB Intel drive for 1,5 years on my laptop without disabling swap or doing anything else to reduce writes (and it's a Mac without TRIM support), and I even run a program called downtimed that touches the drive every 15 seconds. Now, after writing 3.5 TB to the drive, the SMART media wearout indicator says 98, which means I've used about 2% of the drives life…I think this drive will outlive me.

                      1 Reply Last reply Reply Quote 0
                      • S
                        Switch
                        last edited by

                        My full install at home as main router/firewall was running from 2004 on Sandisk Ultra III 1 GB until it gave in January 2011. So 6-7 years.. quite good for consumer grade. But of course your mileage could vary :). I had spare 1 GB Kingston Elite Pro and I am running that for now, will see how long it will last.

                        I ordered 4 GB Trancend 133x for 10€ and I'm experimenting with 2.0 setup with that and will be taken to production when it's stable enough. No need for expensive SSD:s.

                        1 Reply Last reply Reply Quote 0
                        • stephenw10S
                          stephenw10 Netgate Administrator
                          last edited by

                          @Switch:

                          My full install at home as main router/firewall was running from 2004 on Sandisk Ultra III 1 GB until it gave in January 2011. So 6-7 years.

                          Hmm, interesting stuff. Did you have a lot of ram? Were you running any packages?

                          Steve

                          1 Reply Last reply Reply Quote 0
                          • S
                            Switch
                            last edited by

                            Yes, always have enough. I had first 512 Mb and now there is 2Gb. Snort hogs a lot of memory :), which was my only package running always and couple of diagnostic/testing tool packages like iPerf. Also I installed dashboard when it was relased.

                            I also deleted the page file at install.

                            I googled quickly and seems like Ultra III might be SLC type and it's more like professional grade. Kingston Elite Pro is also SLC. So Trancend is MLC http://reviews.pricegrabber.co.uk/laptop-memory/m/47729654/ . Should have bought Extreme III :). But I will built a setup on Trancend,  so we'll see if it really fails after couple of months.

                            I have been going to install dedicated logging service LogAnalyzer on a virtual machine http://loganalyzer.adiscon.com/ . It would be nice to have all logs in database in one place. This should also help continue life of my CF installation if the logs are really written to CF. But I thought that they are only written on local RAM disk, cause there is option Disable writing log files to the local ram disk and they disappear after reboot.

                            1 Reply Last reply Reply Quote 0
                            • stephenw10S
                              stephenw10 Netgate Administrator
                              last edited by

                              @Switch:

                              I will built a setup on Trancend,  so we'll see if it really fails after couple of months.

                              That will be useful real world data, especially for me as I'm also runing 133X Transend cards.
                              Good luck!  8)

                              Steve

                              1 Reply Last reply Reply Quote 0
                              • T
                                thanatos2k
                                last edited by

                                @FJSchrankJr:

                                SSD that can do 2,000,000 writes? Industrial/military?

                                They show a picture of a fighter jet on the home page:
                                http://www.delkinoem.com/sata-drive-industrial.html#tab-2

                                Just hope they don't take the cheap route and use a Kingston SSD in military unmanned aerial vehicles…

                                Off topic, but I worked at a large defense contractor on some bleeding edge electronics to retrofit Abrams and Bradley vehicles to plug into the Army's FCS network a couple years back, and I remember the SSD used in each one of those babies cost roughly $50K each. And it was definitely not Kingston, lol. I'd imagine a UAV or aircraft would have even greater physical requirements, although I suppose a tank has to withstand a direct RPG/explosives hit which can cause a lot of stress on computer stuff.

                                Is there any way to verify if a given CF card has wear-leveling? Or can anyone recommend a certain brand/model they know has that feature? I'd hate to buy a cheapie 16gb card thinking it would be safe and have it die a couple months out, but I'd like to save a few bucks over industrial CF at $100/pop.

                                "I know not with what weapons World War III will be fought, but World War IV will be fought with sticks and stones." - A. Einstein

                                1 Reply Last reply Reply Quote 0
                                • D
                                  dreamslacker
                                  last edited by

                                  Newegg has some low capacity SSDs for cheap.

                                  The 8GB Kingston SSDNow S100 SSD comes in at US$39.99 - http://www.newegg.com/Product/Product.aspx?Item=N82E16820139427
                                  The 16GB at US$49.99 - http://www.newegg.com/Product/Product.aspx?Item=N82E16820139428

                                  A 32GB ADATA SSD costs US$69.99 - http://www.newegg.com/Product/Product.aspx?Item=N82E16820211478
                                  The OCZ Onyx 32GB weighs in at US$74.99 - http://www.newegg.com/Product/Product.aspx?Item=N82E16820227510

                                  With prices like these, I don't think you should bother looking for CF cards with wear levelling controllers.  Most of them would be SLC based industrial units that cost an arm and a leg.  A SSD would definitely have wear levelling built-in and can plausibly be cheaper.

                                  If you must use a CF card, then you can look for the Transcend CF300 and CF100i units on Newegg, they use SLC NAND and have wear levelling built-in.

                                  1 Reply Last reply Reply Quote 0
                                  • J
                                    jrmitchell83
                                    last edited by

                                    Couldn't you just use an SLC drive instead of the cheap MLC drives and limit the number of writes? I would think this would be a good compromise for those that want to use packages and the full install. Of course the SLC drive will be more expensive, but you get what you pay for!  :)

                                    1 Reply Last reply Reply Quote 0
                                    • A
                                      AllGamer
                                      last edited by

                                      Thank you very much to every one that participated in this topic

                                      All of the doubts i had about using SSD / Flash Drives has been covered.

                                      Originally I had a hard time trying to figure out which image or install method was best to use, and what's the draw back if i just went with the ISO install method on to a Flash media.

                                      Well the results are quite clear, it's exactly as i though it'll be in the worse case scenario.

                                      Basically after reading all of the above, now I know i'll be better off using the nanobsd (embedded) install than the regular method via the liveCD

                                      another alternative i had in mind, and was planning to use to avoid the COM port annoyance of the nanobsd version, was to use the memstick image, which supposedly is a liveCD in a bootable usb

                                      Now my question is.

                                      would it work if i raw write the pfSense-memstick-2.0-RC3-i386-20110621-1650.img to a SSD?
                                      I'll assume yes.
                                      but then it comes the issue, how to save the configuration, and reload the configs automatically after reboot.

                                      both method has its trade off

                                      the nanobsd is already made and configured to that extend, but it lacks keyaboard and video
                                      the usb stick version offers keyboard and video, but it lacks the option to keep and auto load the configuration changes

                                      hmmmmmmm…...... perhaps a work around is to use something like Universal USB Installer ( http://www.pendrivelinux.com/universal-usb-installer-easy-as-1-2-3/ ) that works for most linux/bsd liveCDs, yet you can keep the changes you have made during the session on a CASPER partition or file in the host USB drive, which in our case will be a SSD drive or Flash drive that boots from ATA instead of USB.

                                      Any though on that?

                                      Just for reference the hardware i was using is currently running the old pfsense 1.2.3, which i plan to wipe out and install clean using a 8GB Class 6 Transcend Flash Drive on ATA-2 (EIDE) it's an old

                                      Dual Pentium 233 MMX
                                      512 RAM
                                      3x PCI 10/100/1000 Mbit/s 3Com (WAN1+WAN2+LAN)
                                      1x WiFi G (LAN)

                                      so the only upgrade is really replacing the old super slow, noisy and hot, 500Mb SCSI 10Mbyte/ HDD & SCSI controller with a 8GB SD to ATA which maxes out at 16 Mbyte/s

                                      then installing the new pfsense 2.0 to it.

                                      it's a very well kept Antique machine, which server no better purpose than just being a load balancing router/switch/firewall

                                      it's even too slow for a GUI linux  :P

                                      1 Reply Last reply Reply Quote 0
                                      • S
                                        Switch
                                        last edited by

                                        @Switch:

                                        Yes, always have enough. I had first 512 Mb and now there is 2Gb. Snort hogs a lot of memory :), which was my only package running always and couple of diagnostic/testing tool packages like iPerf. Also I installed dashboard when it was relased.

                                        I also deleted the page file at install.

                                        I googled quickly and seems like Ultra III might be SLC type and it's more like professional grade. Kingston Elite Pro is also SLC. So Trancend is MLC http://reviews.pricegrabber.co.uk/laptop-memory/m/47729654/ . Should have bought Extreme III :). But I will built a setup on Trancend,  so we'll see if it really fails after couple of months.

                                        I have been going to install dedicated logging service LogAnalyzer on a virtual machine http://loganalyzer.adiscon.com/ . It would be nice to have all logs in database in one place. This should also help continue life of my CF installation if the logs are really written to CF. But I thought that they are only written on local RAM disk, cause there is option Disable writing log files to the local ram disk and they disappear after reboot.

                                        1 GB Kingston Elite Pro gave up. Now I replaced it with Trancend 4 GB 133x and upgraded Intel pci nics to pci-e and pfsense to latest 2.0 RC3. Let's see how long it will last :)

                                        Now  GUI seems not so responsive as with 1.2.3. Could be also because of a cheapo Trancend CF.

                                        1 Reply Last reply Reply Quote 0
                                        • E
                                          Eldan
                                          last edited by

                                          I've done a lot of reading on SSDs and my understanding is that when NAND flash blocks fail due to excessive writes they become read-only, and that early total drive failure is probably a different defect not caused by excessive writes. Even with a worst case scenario (3000 write-limit, 3x write-amplification) the numbers say you should be able to write more than 8 TB to the 8 GB Kingston S100 before it's used up. Even logging 2 GB a day the drive should be useable for 10 years.

                                          Logging and, presumably, graph generation are sequential and the write amplification should be close to 1. Even swapping is mostly sequential.

                                          1 Reply Last reply Reply Quote 0
                                          • R
                                            rekd0514
                                            last edited by

                                            SSD vs SDHC vs FD vs CF

                                            Do you really need the extra speed of a SSD or would a cheap SDHC card work great? Why are there many who run CF cards, but hardly any who use FD (flash drive) or SDHC cards? Is the SSD solely for the reliability over CF and SDHC?

                                            Just curious, since I am deciding on what I will use when I build a pfsense box.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.