Major-Contributions brought to the Samba Protocol by ownCloud and SerNet
ownCloud aims to deliver secure Universal File Access to all possible external storages. As of today, ownCloud can access Dropbox, Google Drive, WebDav-mounts (including Box.com), SharePoint and Microsoft One Drive (currently in Beta Test). However the most significant integration is the possibility to access Windows Network Drives.
Windows Network Drive is the Enterprise File Storage
A lot of our enterprise Customers with grown infrastructures and complex setups make use of the Windows Network Drive Integration. Our contributions to the Samba protocol stem from our experiences with these large organizations. Our aim is to reduce the complexity of the IT-Infrastructure for our customers and to overcome technical challenges that arise when running IT-Systems in large and complex environments
WannaCry makes system-administrators update their Samba Versions:
The Wannacry ransomware attack from 2017, that infected more than 200 000 Computers in more than 150 countries around the world, gladly lead a lot of System-administrators to update their samba shares. Instead of the more than 30 year old SMB1 Protocol, the Protocols SMB2 and/or SMB3 are now in favor. ownCloud uses the SMB protocol, specifically the samba client, to connect to Windows Network Drives as external storages.
Accessing files through the WebUI is a great way to access and edit files, e.g. with the Collabora Online Office Integration. In a lot of cases though, accessing files and editing them through the Web UI is not enough. When browsing a folder within the Windows Network Drive through the WebUI, a files scan is done on the fly for the folder currently viewed. This is done to ensure the user gets the latest data and file changes in the corresponding folder.
When connecting your ownCloud Clients, mobile and desktop, you also want to ensure that you are working on the latest changes. Large ownCloud Customers like Deutsche Bahn are using this ownCloud Feature to provide mobile access to files in their respective users Home Directories. ownCloud capabilities allow you to seamlessly integrate secure enterprise file sync and share features with the existing and grown structure in your company.
For this purpose ownCloud delivers a Windows Network Drive Listener.
The SMB protocol supports notifications for file changes on remote Windows SMB storage servers. Notifications are more efficient than polling for changes via file scan, as polling requires scanning the whole SMB storage. Files changed through the ownCloud Web Interface, or sync clients are automatically updated in the ownCloud file cache. This is not possible when files are changed directly on SMB storage mounts.
Windows Network Drive Listener
To cover this behavior efficiently, ownCloud provides the Windows Network Drive Listener. The listener marks changed files, and a background job updates the file metadata.
The Windows Network Drive implementation then actively sends notifications to ownCloud about changes, deletions and new Files. This, together with the Windows Network Drive listener, ensures that the data on your synchronization device is always up to date. To find out more on how to configure Windows Network Drive please check our Documentation.
Open Source Collaboration
The power of Open Source, as we understand it, is the collaboration of the best developers in their respective fields. The file sync & share specialists from ownCloud teamed up with the SAMBA professionals of SerNet, to deliver “best of breeds” expertise in implementing new Features and stability to the Open Source Protocol SMB.
Initially the ownCloud QA – Team discovered unwanted behavior in the smb-client using the SMB1 protocolV1. In some cases the smb-client could crash unexpectedly and in later versions of the SMB Client (smb-client v2 and smb-client v3using Protocol SMB2 and SMB3) the notification mechanism was just not working at all.
The ownCloud engineers handed over their experiences to the Samba professionals at SerNet. The SerNet Developer Volker Lendecke at first fixed the crashes in smb-clientV1 for SMB2 and then implemented notifications for smb-client for SMB2 and SMB3.
The patches by SerNet are available in Samba 4.8 and will be soon backported to Samba 4.7.. Since these improvements make a drastic performance boost and bring more reliability to the windows network drive integration, we recommend to use these versions. If you need the Linux packages that contain these patches for your distribution, the professionals at SerNet have your back: https://samba.plus/
More to come
Samba generally supports notifications for smbclients. Recursive Notifications although are not yet supported for file changes that occur via NFS or directly by Linux Processes. As of now authentication for the Windows Network Drive Integration works with Username and Password. ownCloud is also looking into an the implementation of the Kerberos authentication feature for an even more convenient Windows Network Drive workflow together with ownCloud.
In case you haven’t tried the ownCloud Windows Network Drive Integration please check out a free 30 day trial of our Enterprise functionalities:.