Vulnerabilities / Threats // Insider Threats
6/24/2013
12:29 PM
George Crump
George Crump
Commentary
Connect Directly
RSS
E-Mail
50%
50%

Should You Use Software-Defined Flash Storage?

"Software definition" leverages the processor's power to do things that used to require dedicated hardware. So, what does that mean for flash?

Have you noticed how everyone seems to be adding the words "software-defined" to their market term? In some cases this is just marketing gone wild. In other cases it is an appropriate description of the technology. We have software-defined storage, software-defined networking and the software-defined data center. I expect to hear to a CEO describe their entire organization as "software defined" any day now.

All this software definition is changing how technologies are developed. An excellent example is flash-based storage.

What Is Software Definition?

The use (and overuse) of the term software-defined is really about leveraging the power of the Intel CPU to do things in software that we used to do with dedicated hardware. Doing so should reduce costs and increase flexibility. As I described in my last column, "How Software-Defined Storage Impacts SSD," it can even help with adoption of hardware, like flash media and appliances.

Software-Defined Flash

The value of software definition is now working its way into the flash community and is the subject of much debate. The flash controller performs a variety of management functions that extend the life of the media and improve performance. Typically this flash intelligence is embedded as silicon or a field programmable gate array (FPGA), but now some flash vendors are starting to perform these management functions using the CPU of the host or storage system that the device is being installed on.

[ For more on software-defined storage, see Software-Defined Storage Vs. Traditional Storage Systems. ]

The upside of this method should be more rapid deployment of capabilities and functionality. It should also lead to lower development cost for the vendor. In theory this should lead to less-expensive products that are more feature rich. We have not, for the most part, seen this theory translate to reality. Most flash systems and devices that count on host CPUs to perform management functions are the same price as hardware-based flash systems and typically are at feature parity.

The other potential advantage of software-based flash management is that as you upgrade the CPU in the host you could see better flash performance. How much of this is reality is dependent on your application and whether you will actually carry your SSD investment between generations of servers as you upgrade them. In our experience this is not the case.

The downside of counting on the host CPU to execute the flash management functions is that it could impact flash and/or host performance when under stress. While the vendors that perform their flash management in hardware make a big deal about this potential problem, we have not seen a situation where it is apparent. As most IT professionals know, there is plenty of excess CPU resources in the typical data center today. Burning a few of those cycles on flash management routines should not be a major problem for most.

Should You Use Software-Defined Flash?

This is, at least right now, one of those situations where "it depends" doesn't apply. More appropriately, at least for right now, in most data centers it doesn't matter. You need to judge the flash device or storage system on its total merits. Does it deliver the performance you need, with a feature set you can live with at a price you can afford? While the advantages of hardware-based flash management or software-based management may become more apparent in the future, at least for today they are a wash.

Comment  | 
Print  | 
More Insights
Register for Dark Reading Newsletters
White Papers
Flash Poll
Current Issue
Cartoon
Video
Slideshows
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2014-3341
Published: 2014-08-19
The SNMP module in Cisco NX-OS 7.0(3)N1(1) and earlier on Nexus 5000 and 6000 devices provides different error messages for invalid requests depending on whether the VLAN ID exists, which allows remote attackers to enumerate VLANs via a series of requests, aka Bug ID CSCup85616.

CVE-2014-3464
Published: 2014-08-19
The EJB invocation handler implementation in Red Hat JBossWS, as used in JBoss Enterprise Application Platform (EAP) 6.2.0 and 6.3.0, does not properly enforce the method level restrictions for outbound messages, which allows remote authenticated users to access otherwise restricted JAX-WS handlers ...

CVE-2014-3472
Published: 2014-08-19
The isCallerInRole function in SimpleSecurityManager in JBoss Application Server (AS) 7, as used in Red Hat JBoss Enterprise Application Platform (JBEAP) 6.3.0, does not properly check caller roles, which allows remote authenticated users to bypass access restrictions via unspecified vectors.

CVE-2014-3490
Published: 2014-08-19
RESTEasy 2.3.1 before 2.3.8.SP2 and 3.x before 3.0.9, as used in Red Hat JBoss Enterprise Application Platform (EAP) 6.3.0, does not disable external entities when the resteasy.document.expand.entity.references parameter is set to false, which allows remote attackers to read arbitrary files and have...

CVE-2014-3504
Published: 2014-08-19
The (1) serf_ssl_cert_issuer, (2) serf_ssl_cert_subject, and (3) serf_ssl_cert_certificate functions in Serf 0.2.0 through 1.3.x before 1.3.7 does not properly handle a NUL byte in a domain name in the subject's Common Name (CN) field of an X.509 certificate, which allows man-in-the-middle attackers...

Best of the Web
Dark Reading Radio
Archived Dark Reading Radio
Dark Reading continuing coverage of the Black Hat 2014 conference brings interviews and commentary to Dark Reading listeners.