Yesterday, Visuality Systems released the beta of their new NQ Storage stack, which brings Microsoft’s SMB protocol to OEM storage arrays. This established company has been the main supplier of SMB support in the embedded device market for over a decade, but NQ Storage brings their technology to the enterprise. Eight well-known storage array companies have already licensed the Visuality Systems codebase, suggesting that a wave of advanced SMB 2 and SMB 3 support is about to be unleashed.
Storage OEM’s Need SMB!
I’m a big fan of Microsoft’s storage protocol, SMB, at least in its latest incarnation. It’s a feature-rich way for clients to connect to storage systems, and offers scalability and performance that few can match. But unlike a UNIX-native protocol like NFS, SMB hasn’t been easy to implement in third-party devices, leaving Windows Server as the only really competent array.
A few years back, a company called Likewise developed a decent CIFS/SMB implementation and many storage OEMs began integrating their stack. But EMC Isilon purchased Likewise in 2012, leading to a bit of a panic among competing vendors. Another source appeared about that time, HvNAS, promising SMB 2 and SMB 3 support. But they too were purchased in 2014, this time by NetApp.
The storage array companies desperately need an SMB implementation, but these acquisitions left few choices. Samba is one option, open source and developing support for SMB 2 and 3 thanks to newfound friendliness with Microsoft. But most product companies object to the GPLv3 license used by Samba, and some also want more enterprise support. After Likewise and HvNAS, many decided to take the plunge and write their own SMB stack, with mixed results.
But there was another source code implementation of CIFS and SMB available to OEM’s: Visuality Systems’ NQE (NetQuick Embedded). Founded in 1998, Visuality developed a SMB stack for embedded products like printers and home network devices and quickly gained market share. Today, just about every device in the consumer space that supports CIFS or SMB uses either Visuality’s NQE or an older pre-GPLv3 version of Samba. I bet you have their software running in your home or office right now!
Introducing Visuality Systems NQ Storage
The acquisitions of Likewise and HvNAS left a vacuum in the market, and Visuality Systems is ready to fill it with their new enterprise-ready product, NQ Storage. Unlike NQE, which was hyper-focused on small embedded systems, NQ Storage is intended for use inside enterprise storage arrays. And Visuality is promising full support for the latest SMB technologies, including SMB Direct and clustering applications.
The heart of NQ Storage is an extensible SMB engine. This is where Visuality is implementing the core SMB protocol and features. Visuality is also developing the necessary supporting infrastructure, including SMB Direct and standard network sockets on the transport side and an off-the-shelf virtual file system (VFS). But companies are free to use their own transport or filesystem if they like, and the whole lot can be run on just about any POSIX-compliant operating system.
Version 1.0 of NQ Storage was released in beta on November 30, 2015, with a GA build expected by the end of Q1 2016. As I’ve written before, not all storage solutions will support the entire SMB protocol. Today, NQS supports a solid set of mainstream SMB 2 and 3 features:
- Protocol Dialects:
- SMB 2.0.1 and 2.0.2
- SMB 3.0.0 and 3.0.2
- Message signing
- SMB Encryption
- AD Domain integration
- Scale-out shares
- Persistent file handles
Assuming NQ Storage functions as promised (I haven’t tested it!), a storage OEM could plug this stack into their existing storage array software and support applications like Hyper-V and SQL Server on Microsoft Windows Server right out of the box. And of course Windows PC’s would be right at home, too.
SMB 3.1 and More
Visuality Systems tells me that they intend to support everything Microsoft does related to storage in SMB and pass this functionality on to their customers. Their roadmap already includes the SMB 3.1.1 dialect, along with SMB Direct and more. Considering their pace of development so far, it seems likely that they will achieve this goal.
NQ Storage 1.1 is scheduled for a Q3 2016 beta and Q4 2016 release. The roadmap currently includes the following additional features:
- Protocol Dialects:
- SMB 3.1.1
- SMB Direct (SMB over RDMA)
- Remote VSS
- SWN (witness protocol)
SMB Direct has been a remarkable success for Microsoft in Windows Server, with many of their newest features using this technology for clustering and communication. I haven’t seen much end-user take-up of RDMA, however. This is surprising since performance, whether over InfiniBand or Converged Ethernet, is really astonishing!
The addition of Witness protocol ought to be useful for OEM’s wishing to develop highly-available multi-controller SMB systems to challenge Microsoft’s impressive Scale-Out File Server. And Remote VSS is welcome in most Windows Server environments, though it will be interesting to see how it plugs into existing snapshot and CDP technologies.
Microsoft’s place in the datacenter is secure, and Windows Server really hums with SMB 2/3 storage. The enterprise storage industry needed an alternative to Samba and do-it-yourself SMB servers, and it’s good to see Visuality Systems step up with NQ Storage. Although I have not seen it in action, their OEM claims sound good and their roadmap looks right. I’ll be watching their development, and I suggest that my storage OEM readers get in touch with them!