--- /dev/null
+==== SMB3 ====
+
+<[block]{SMB3 (2012) introduced SMB clustering:}
+* Clustering - Witness
+* Continuous Availability - Persistent Handles
+* Scale Out
+[block]>
+
+<[block]{Additionally:}
+* Transport encryption
+* Multi-Channel
+* RDMA transport (SMB Direct)
+[block]>
+
+
+==== SMB Features - in Samba ====
+
+* SMB 2.0:
+** durable file handles [4.0]
+* SMB 2.1:
+** multi-credit / large mtu [4.0]
+** dynamic reauthentication [4.0]
+** leasing [4.2]
+** resilient file handles [PoC]
+* SMB 3.0:
+** new crypto (sign/encrypt) [4.0]
+** secure negotiation [4.0]
+** durable handles v2 [4.0]
+** persistent file handles [planning/PoC]
+** multi-channel [4.4 (experimental)]
+** SMB direct [designed/starting]
+** cluster features [designing]
+*** witness [WIP+]
+* SMB 3.1.1:
+** basic support [4.3]
+
+
+==== Witness - General ====
+
+New DCE/RPC Service to “witness” availability of other services, in particular SMB3 connections
+* Prompt and explicit notifications about failures in highly available systems
+* Allows Continuous Availability of SMB shares in clustered environments (together with persistent handles)
+* Controlled way of dealing with reconnects instead of detecting failures due to timeouts
+* Available since SMB3 (Windows 8 / Windows Server 2012)
+* More advanced failover mechanism than Tickle-ACK that is used within CTDB
+
+%%% ==== Witness - Failover with SMB3 in a Samba/CTDB cluster ====
+%%%
+%%% -<1>{
+%%% <[center]
+%%% <<<design-ctdb-three-nodes-with-witness-step0.png, width=.95\textwidth>>>
+%%% [center]>
+%%% }
+%%%
+%%% -<2>{
+%%% <[center]
+%%% <<<design-ctdb-three-nodes-with-witness-step1.png, width=.95\textwidth>>>
+%%% [center]>
+%%% }
+%%%
+%%% -<3>{
+%%% <[center]
+%%% <<<design-ctdb-three-nodes-with-witness-step2a.png, width=.95\textwidth>>>
+%%% [center]>
+%%% }
+%%%
+%%% -<4>{
+%%% <[center]
+%%% <<<design-ctdb-three-nodes-with-witness-step2b.png, width=.95\textwidth>>>
+%%% [center]>
+%%% }
+%%%
+%%% -<5>{
+%%% <[center]
+%%% <<<design-ctdb-three-nodes-with-witness-step3a.png, width=.95\textwidth>>>
+%%% [center]>
+%%% }
+%%%
+%%% -<6>{
+%%% <[center]
+%%% <<<design-ctdb-three-nodes-with-witness-step3b.png, width=.95\textwidth>>>
+%%% [center]>
+%%% }
+%%%
+%%% -<7>{
+%%% <[center]
+%%% <<<design-ctdb-three-nodes-with-witness-step4.png, width=.95\textwidth>>>
+%%% [center]>
+%%% }
+%%%
+%%% -<8>{
+%%% <[center]
+%%% <<<design-ctdb-three-nodes-with-witness-step5.png, width=.95\textwidth>>>
+%%% [center]>
+%%% }
+
+==== Witness - Samba ====
+
+Currently under development in Samba
+* PoC implementation available
+* Currently on hold until new DCE/RPC async infrastructure is available
+* {\footnotesize @https://wiki.samba.org/index.php/Samba3/ \\ %
+ SMB2\#Witness\_Notification\_Protocol@}
+* WIP branch: \\ %
+ {\footnotesize @https://git.samba.org/?p=gd/samba/.git;a=shortlog; \\ %
+ h=refs/heads/master-witness@}
+
+Samba Witness service will cause Windows clients to reconnect:
+* when client admin tool is used
+* when CTDB (or any other cluster resource control manager) moves resources or IP addresses
+
+==== What's next ? ====
+
+* SMB3 Multichannel (in Samba 4.4)
+* SMB3 DCE/RPC Witness service
+* SMB3 Persistent Handles / CA
+* SMB Direct (SMB3 over RDMA)
+* Multi-Protocol access (NFS,SMB...)
+* SMB2+ Unix Extensions