macOS SMB Speed Throttling & Network Share File Pollution
Resolving 10x SMB throughput drops caused by mandatory packet signing (/etc/nsmb.conf) and preventing .DS_Store / AppleDouble pollution.
n -h macos-smbTrap 1: The SMB Packet Signing Speed Throttle
Starting with macOS 10.13.4 High Sierra, Apple configured the macOS SMB client to force packet signing (signing_req=yes) on every outbound SMB connection by default.
The Symptom:
When connecting a Mac to a TrueNAS, Synology, Windows Server, or Samba share over 1GbE, 2.5GbE, or 10GbE LAN:
- Transfer speeds plummet from 110 MB/s down to 15-25 MB/s.
- CPU usage spikes on both the Mac and the NAS as cryptographic hashes are generated for every single data frame.
The Remediation:
Disable mandatory SMB packet signing in /etc/nsmb.conf:
sudo tee /etc/nsmb.conf << 'EOF'
[default]
signing_req=no
EOF
*Disconnect the network share and reconnect. LAN transfer speeds will immediately return to line-rate (110+ MB/s on 1GbE, 280+ MB/s on 2.5GbE, 1+ GB/s on 10GbE).*
---
Trap 2: .DS_Store and ._* AppleDouble Pollution
Every time macOS Finder navigates into a folder on a network share, it creates:
1. .DS_Store: Stores desktop view preferences, icon sizes, and scroll positions.
2. ._<filename>: AppleDouble sidecar files created on filesystems that lack native macOS extended attributes.
The Problem:
Windows and Linux users see folders littered with hundreds of hidden dotfiles, triggering sync conflicts and cluttered backups.
The Remediation:
Instruct macOS Finder never to create .DS_Store files on network shares:
defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool TRUE
Restart Finder for the setting to take effect:
killall Finder