Don’t Get Stuck Riding A Dinosaur: Next-Gen Interfaces And Protocols Explained
Don’t Get Stuck Riding A Dinosaur: Next-Gen Interfaces And Protocols ExplainedStorage subsystems have historically been a performance bottleneck, the slow member of the team that holds everything up. In recent years, innovations in non-volatile storage have given us fast SSDs that have helped break through this impasse and dramatically increase performance.
Actually, today’s SSDs are almost too fast. With certain workloads, they can take current storage protocols and architectures to the brink. All of a sudden, the bottleneck is back, only this time it might not be the fault of the drive itself. Are the days of fast storage with no speed limit over before they can begin?
Help is on the way. Emerging technologies will soon be available, and they have the potential to give modern SSDs all the bandwidth they need to be as fast as they can be. If, however, wars have been fought and finished between storage upgrade cycles at your business, then choosing the right next-gen technology for your business will be of the utmost importance.
From Point A To Point B
The manufacturers of today’s top SSDs like to boast about what’s under the hood of their drives – the specific storage controller, the type of NAND Flash, etc. – but there’s rarely a lot of fuss made over the drive’s interface, the conduit through which data passes into and out of the drive. Say you have two have two sailboats, each alike from stern to bow. One sails on calm waters with a strong wind in its sails; the other has to battle choppy waters and stormy weather. Which one do you think travels faster?
It seems crazy to send a boat out into rough waters, but the equivalent of this happens all the time with storage drives and less than ideal interfaces. The first of these is Serial ATA (SATA), which is the predominant storage interface of client systems. SATA devices can operate in one of two modes. First, there’s the tried and true (but terribly out of shape and infrequently used) IDE mode, which sticks around primarily to maximize compatibility with older devices, like CD-ROM drives, for example. IDE mode’s biggest weakness is that it only allows one command at a time across the SATA bus. Remember, it’s out of shape.
The other, more current and popular, mode is Advanced Host Controller Interface (AHCI). A major improvement from IDE, AHCI offers a number of perks, including native command queuing (NCQ) and hotplugging. It’s a great deal faster, too, as NCQ optimizes the order a drive executes read and write instructions.
How NCQ works. Source: http://bit.ly/15x1Uuz. Creative Commons Attribution-Share Alike 3.0 Unported license.
However, AHCI is no spring chicken itself, as it too is weighed down with inefficiencies that newer technologies have recognized and improved. These inefficiencies hampered AHCI in terms of performance and capabilities. Consumers can, by and large, deal with the shortcomings – SATA AHCI is by far the dominant implementation in desktop systems – but shortcomings don’t play well within the enterprise.
This is one of the reasons the SCSI command set has been such a force in business storage for three decades (kind of staggering when you think about it). More specifically, SCSI offers a host of benefits, including multi-path drive access, failover, dual ports, superior error reporting and recovery, and hot-swappable drive replacement. These are just a select few of the five dozen SCSI commands that have made the protocol so widespread, with implementations ranging from USB to iSCSI (via TCP/IP).
As they moved from a parallel to a serial interface, SATA drives utilized the consumer-level ATA command set while plug-compatible SAS drives employed SCSI. SAS drives command a considerable share of the high-end enterprise storage market, and SCSI is equally popular on the protocol front. It will soon face stiff competition in the form of two upstart protocols, NVM Express (NVMe) and SCSI Over PCI Express (SOP).
