Apple shifts from AFP file sharing to SMB2 in OS X 10.9 Mavericks
In OS X Mavericks, Apple will begin migrating from its own legacy Apple Filing Protocol to Microsoft's SMB2 in an effort to enhance performance, security and cross platform file sharing.
Macs running OS X 10.9 Mavericks will automatically default to using SMB2 when talking to each other, and fall back to AFP when file sharing with Macs running previous versions of OS X or when working with Time Machine backups.
From AFP to SMB2
Apple has maintained and enhanced its own AFP file sharing since it was first introduced in the late 1980s as part of the original Macintosh's easy-to-use AppleTalk networking system (below). The company then transitioned AFP from its own proprietary AppleTalk transport to the Internet's TCP/IP, where it has remained the default protocol for Mac to Mac "personal file sharing" on OS X.
SMB ("Server Message Block") originated at IBM, but was popularized and greatly expanded by Microsoft as the default Windows File Sharing protocol. Like Apple, Microsoft transitioned its SMB file sharing protocol from its original NetBIOS transport to TCP/IP.
In the late 90s, Microsoft attempted to rename SMB as CIFS (the "Common Internet File System") in an effort to make it sound more like a cross platform standard, although the new name and the use of SMB as the Internet's file sharing protocol never really took off.
While proprietary to Microsoft, the SMB protocol was reverse engineered to create the Samba open source project to allow Unix-like operating systems to share files with Windows PCs. Apple incorporated Samba into OS X 10.2 to support file and network directory services with Windows PCs, resulting in the simple option to enable Windows File Sharing on Macs.
With the release of Windows Vista, Microsoft greatly revamped SMB to clear out old legacy complications and enhance its performance, capabilities and security. This resulted in SMB2. Microsoft further enhanced its SMB2 protocol with version 2.1 in Windows 7 and a 2.2 version for Windows 8 that is also referred to as SMB 3.0. Apple doesn't distinguish between these variants in its own documentation.
From Samba to SMBX
Samba didn't initially support Microsoft's new SMB2; additionally, the project decided to move its future development (including support for SMB2) to the more strict GPLv3 license. That prevented Apple from realistically using the software commercially.
For OS X 10.7 Lion, Apple wrote its own software for Windows File Sharing under the name "SMBX" to replace Samba, adding initial support for Microsoft's SMB2 at the same time.
Rather than maintaining both AFP and SMBX in parallel, Apple is now consolidating its future efforts in its own implementation of Microsoft's SMB2 protocol. Macs running OS X 10.9 Mavericks will use SMB2 as their default file sharing protocol when connecting to each other or to PCs running Windows Vista, 7 or 8.
In a public technology overview, Apple says, "SMB2 is superfast, increases security, and improves Windows compatibility."
SMB2 is superfast, increases security, and improves Windows compatibility.
The company also outlines that "SMB2 features Resource Compounding, allowing multiple requests to be sent in a single request. In addition, SMB2 can use large reads and writes to make better use of faster networks as well as large MTU support for blazing speeds on 10 Gigabit Ethernet. It aggressively caches file and folder properties and uses opportunistic locking to enable better caching of data. Itâs even more reliable, thanks to the ability to transparently reconnect to servers in the event of a temporary disconnect."
Apple will continue to support AFP for file sharing with Macs running previous versions of OS X and with Time Machine backup systems. OS X Mavericks also includes support for NFS v3 and v4, which are commonly used on Linux and Oracle's Solaris for automounting file shares.
Support for Windows ACLs; NTFS remains read only
Apple's development of OS X has similarly incorporated other technologies from Microsoft's Windows, including support for Windows-style ACLs (Access Control Lists), a more robust and fine-grained system for implementing file-based permissions that offered a variety of improvements over the existing BSD Unix-style permissions used in prior versions of OS X.
Support for ACLs, introduced in OS X 10.4 Tiger in 2004, helped enhance connectivity between Macs and PCs and Windows Active Directory services.
In terms of file systems, OS X Mavericks continues to use HFS+, with support for file system journaling. OS X continues to support Microsoft's basic FAT32 file system and includes read-only support for Windows' default NTFS.