injects stuff from lce 2014
authorMichael Adam <obnox@samba.org>
Tue, 10 Mar 2015 12:16:33 +0000 (13:16 +0100)
committerMichael Adam <obnox@samba.org>
Tue, 10 Mar 2015 12:16:33 +0000 (13:16 +0100)
35 files changed:
BASENAME [new file with mode: 0644]
Makefile [new file with mode: 0644]
Samba_Logo_4c-grey-bbbbbb-256.png [new file with mode: 0644]
apfel_1280.jpg [new file with mode: 0644]
base-wiki.wiki [new file with mode: 0644]
base.tex [new file with mode: 0644]
beamercolorthemeobnoxsamba.sty [new file with mode: 0644]
beamerouterthemeobnoxinfolines.sty [new file with mode: 0644]
beamerthemeObnoxSamba.sty [new file with mode: 0644]
ctdb-design-daemons.dia [new file with mode: 0644]
design-ctdb-three-nodes.dia [new file with mode: 0644]
design-ctdb-three-nodes.png [new file with mode: 0644]
durable-crop-colormod-1024.jpg [new file with mode: 0644]
handout.tex [new file with mode: 0644]
handout2.tex [new file with mode: 0644]
paper.tex [new file with mode: 0644]
presentation.tex [new file with mode: 0644]
redhat-logo.png [new file with mode: 0644]
samba-chilli-flavour-crop-1280-bright2.jpg [new file with mode: 0644]
samba-chilli-flavour-crop-bright-1280.jpg [new file with mode: 0644]
samba-kisses-better-selection.jpg [new file with mode: 0644]
samba-layers.dia [new file with mode: 0644]
samba-layers.jpg [new file with mode: 0644]
samba-release-stream.dia [new file with mode: 0644]
samba-release-stream_exp.png [new file with mode: 0644]
samba-team-20141011-colorized.png [new file with mode: 0644]
samba-team-20141011.png [new file with mode: 0644]
samba.png [new file with mode: 0644]
sernet.png [new file with mode: 0644]
smb3-mc-samba.dia [new file with mode: 0644]
smb3-mc-samba_exp.png [new file with mode: 0644]
smb3-rdma-samba-v2.dia [new file with mode: 0644]
smb3-rdma-samba-v2_exp.png [new file with mode: 0644]
smb3-rdma-samba.dia [new file with mode: 0644]
smb3-rdma-samba_exp.png [new file with mode: 0644]

diff --git a/BASENAME b/BASENAME
new file mode 100644 (file)
index 0000000..702bb65
--- /dev/null
+++ b/BASENAME
@@ -0,0 +1 @@
+lce-2014-obnox-samba
diff --git a/Makefile b/Makefile
new file mode 100644 (file)
index 0000000..c0f4536
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,146 @@
+TARGET_BASE_NAME := $(shell cat BASENAME)
+
+TARGET_PRESENTATION = $(TARGET_BASE_NAME)-presentation
+TARGET_HANDOUT = $(TARGET_BASE_NAME)-handout
+TARGET_HANDOUT2 = $(TARGET_BASE_NAME)-handout2
+TARGET_PAPER = $(TARGET_BASE_NAME)-paper
+TARGET_BASE = $(TARGET_BASE_NAME)-base
+
+TARGET = $(TARGET_BASE_NAME)
+
+DIAIMAGES     = design-ctdb-three-nodes.dia ctdb-design-daemons.dia samba-layers.dia samba-release-stream.dia
+
+DIAIMAGES_PNG = design-ctdb-three-nodes.png ctdb-design-daemons.png samba-layers.png samba-release-stream.png
+
+DIAIMAGES_FIG = design-ctdb-three-nodes.fig ctdb-design-daemons.fig samba-layers.fig
+
+DIAIMAGES_SVG = design-ctdb-three-nodes.svg ctdb-design-daemons.svg samba-layers.svg
+
+#IMAGES = $(DIAIMAGES_PNG) \
+#       regedit.png \
+#       ctdb-status.png \
+#       ctdb-status-1.png \
+#       ctdb-ip.png \
+#       ctdb-ip-1.png \
+#       smbstatus.png
+
+IMAGES = $(DIAIMAGES_PNG)
+
+COMMON_DEPS = base-wiki.tex base.tex $(IMAGE)
+
+.SUFFIXES: .tex .pdf .dia .png .fig .svg .wiki
+
+.PHONY: all
+
+all: $(TARGET_PRESENTATION) $(TARGET_HANDOUT) $(TARGET_HANDOUT2)
+
+.PHONY: presentation paper handout handout2
+
+presentation: $(TARGET_PRESENTATION)
+
+paper: $(TARGET_PAPER)
+
+handout: $(TARGET_HANDOUT)
+
+handout2: $(TARGET_HANDOUT2)
+
+.PHONY: $(TARGET_PAPER) $(TARGET_PRESENTATION) $(TARGET_HANDOUT) $(TARGET_HANDOUT2)
+
+
+$(TARGET_PRESENTATION): $(TARGET_PRESENTATION).pdf
+
+$(TARGET_PRESENTATION).pdf: $(IMAGES) presentation.pdf
+       cp presentation.pdf $@
+
+presentation.pdf: presentation.tex $(COMMON_DEPS)
+
+
+$(TARGET_PAPER): $(TARGET_PAPER).pdf
+
+$(TARGET_PAPER).pdf: paper.pdf
+       cp paper.pdf $@
+
+paper.pdf: paper.tex $(COMMON_DEPS)
+
+
+$(TARGET_HANDOUT): $(IMAGES) $(TARGET_HANDOUT).pdf
+
+$(TARGET_HANDOUT).pdf: handout.pdf
+       cp handout.pdf $@
+
+handout.pdf: handout.tex $(COMMON_DEPS)
+
+
+$(TARGET_HANDOUT2): $(TARGET_HANDOUT2).pdf
+
+$(TARGET_HANDOUT2).pdf: $(IMAGES) handout2.pdf
+       cp handout2.pdf $@
+
+handout2.pdf: handout2.tex $(COMMON_DEPS)
+
+
+base.tex: base-wiki.tex
+
+base-wiki.tex: base-wiki.wiki
+
+
+.wiki.tex:
+       wiki2beamer $< > $@
+
+.tex.pdf:
+       pdflatex $<
+       pdflatex $<
+
+.dia.png:
+       @dia -e $@ $<
+
+.dia.fig:
+       @dia -e $@ $<
+
+.dia.svg:
+       @dia -e $@ $<
+
+
+.PHONY: png fig svg images
+
+png: $(DIAIMAGES_PNG)
+
+fig: $(DIAIMAGES_FIG)
+
+svg: $(DIAIMAGES_SVG)
+
+images: $(IMAGES)
+
+
+.PHONY: archive
+
+archive: $(TARGET).tar.gz
+
+$(TARGET).tar.gz: $(TARGET).tar
+       @echo "Creating $@"
+       @rm -f $(TARGET).tar.gz
+       @gzip $(TARGET).tar
+
+
+# make $(TARGET).tar phony - it vanishes by gzipping...
+.PHONY: $(TARGET).tar
+
+$(TARGET).tar: presentation handout handout2
+       @echo "Creating $@"
+       @git archive --prefix=$(TARGET)/ HEAD > $@
+       @rm -rf $(TARGET)
+       @mkdir $(TARGET)
+       @cp $(TARGET_PRESENTATION).pdf $(TARGET)
+       #@cp $(TARGET_PAPER).pdf $(TARGET)
+       @cp $(TARGET_HANDOUT).pdf $(TARGET)
+       @cp $(TARGET_HANDOUT2).pdf $(TARGET)
+       @tar rf $@ $(TARGET)/$(TARGET_PRESENTATION).pdf
+       #@tar rf $@ $(TARGET)/$(TARGET_PAPER).pdf
+       @tar rf $@ $(TARGET)/$(TARGET_HANDOUT).pdf
+       @tar rf $@ $(TARGET)/$(TARGET_HANDOUT2).pdf
+
+
+.PHONY: clean
+
+clean:
+       @git clean -f
diff --git a/Samba_Logo_4c-grey-bbbbbb-256.png b/Samba_Logo_4c-grey-bbbbbb-256.png
new file mode 100644 (file)
index 0000000..69e0591
Binary files /dev/null and b/Samba_Logo_4c-grey-bbbbbb-256.png differ
diff --git a/apfel_1280.jpg b/apfel_1280.jpg
new file mode 100644 (file)
index 0000000..4fee275
Binary files /dev/null and b/apfel_1280.jpg differ
diff --git a/base-wiki.wiki b/base-wiki.wiki
new file mode 100644 (file)
index 0000000..a4c0e90
--- /dev/null
@@ -0,0 +1,874 @@
+%
+% colors:
+%  _blue_text text_
+%  _red_text text_
+%
+
+==== Samba... ====
+
+<[center]
+<<<samba-kisses-better-selection.jpg,height=.8\textheight>>>
+[center]>
+
+
+==== Short History ====
+
+* 1.9.17: 1996/08
+* 2.0: 1999/01: domain-member, +SWAT
+* 2.2: 2001/04: NT4-DC
+* 3.0: 2003/09: AD-member, Samba4 project started
+* 3.2: 2008/07: GPLv3, experimental clustering
+* 3.3: 2009/01: clustering
+* 3.4: 2009/07: merged S3+S4 code
+* 3.5: 2010/03: experimental SMB 2.0
+* 3.6: 2011/09: SMB 2.0
+* 4.0: 2012/12: AD/DC, SMB 2.0 durable handles, 2.1, 3.0
+* 4.1: 2013/10: stability
+* 4.2: soon: AD trusts, performance, scalability, CTDB included
+
+==== Release Stream ====
+
+
+<[center]
+<<<samba-release-stream_exp.png,width=.8\textwidth>>>
+[center]>
+
+==== Release Planning ====
+
+<[center]
+\large
+@https://wiki.samba.org/index.php/Samba\_Release\_Planning@
+[center]>
+
+==== Samba Team ====
+
+<[center]
+<<<samba-team-20141011.png,height=.9\textheight>>>
+[center]>
+
+==== Samba Team ====
+
+<[center]
+<<<samba-team-20141011-colorized.png,height=.9\textheight>>>
+[center]>
+
+
+==== ====[plain]
+
+%%\transdissolve
+
+<[center]
+<[columns]
+[[[.3\textwidth]]]
+<<<samba-chilli-flavour-crop-bright-1280.jpg,height=.8\textheight>>>
+[[[.3\textwidth]]]
+<<<samba-chilli-flavour-crop-bright-1280.jpg,height=.8\textheight>>>
+[[[.3\textwidth]]]
+<<<samba-chilli-flavour-crop-bright-1280.jpg,height=.8\textheight>>>
+[columns]>
+[center]>
+
+
+
+==== Samba File Server Topics / Challenges ====
+
+# performance: scalable file server
+#* scale-up: exhaust powerful boxes
+#* scale-out: flexible all-active clusters
+#* scale-down: perform well on low-end boxes
+# interop: multi-protocol access (nfs, afp, ...)
+# server workloads / SMB features
+#* tune for: small \# of connections, threaded applications
+#* Hyper-V, ...
+#* SMB3 (clustering, RDMA, ...)
+# special file systems support (gluster, ceph, gpfs, btrfs, ...)
+# cloud / openstack?...
+%* (samba $\leftrightarrow$ cifs.ko alternative to nfs?...)
+
+
+%% ==== Samba File Serving Topics ====
+%% 
+%% * Performance
+%% * Clustering (CTDB)
+%% * SMB features (SMB3...)
+%% * Interop (protocols, NFS, AFP, ...)
+%% * special file systems support (gluster, ceph, gpfs, btrfs...)
+%% * ...
+
+%%==== Other Samba Topics ====
+%%
+%%* Auth/Domain Member
+%%* RPC server
+%%* AD Sever
+%%* ...
+
+==== Performance ====[plain]
+
+%%\transdissolve
+
+<<<samba-chilli-flavour-crop-bright-1280.jpg,height=.8\textheight>>>
+
+
+==== Performance - low end systems ====
+
+
+<[block]{Reduction of CPU usage for low profile platforms like arm (SMB2)}
+* Samba 4.0:
+** didn't saturate 1G nic (arm), CPU 100\%
+* reduced memory allocations
+* instrument SMB 2.1 multi-credit / large MTU
+* Samba 4.2:
+** saturates 1G nic (arm), CPU $<$ 100\%
+* ==> continuing
+[block]>
+
+==== Performance - DB performance ====
+
+<[block]{TDB}
+* trivial database
+* used for IPC (smbd processes)
+* cluster (CTDB): local copies
+[block]>
+
+<[block]{hot databases}
+* @locking.tdb@ (open files)
+* @brlock.tdb@ (byte range locks)
+* @notify\_index.tdb@ (for change notify)
+[block]>
+
+==== Performance - DB performance ====
+
+<[block]{problem 1}
+* fcntl byte range locks for record locks
+* contention via single kernel spinlock
+[block]>
+
+<[block]{solution}
+* alternative to fcntl: pthread robust mutexes
+* ==> massive speedup
+* ==> included in TDB 1.3.1,  Samba 4.2
+[block]>
+
+==== Performance - DB performance ====
+
+<[block]{problem 2}
+* freelist:
+** single chain, contended (@locking.tdb@)
+** gets fragmented (singly linked)
+* especially a problem in ctdb-cluster: vacuuming
+[block]>
+
+<[block]{improvements}
+* make use of small per-record freelists (dead records)
+* add automatic defragmentation upon traversal
+* ==> included in TDB 1.3.1, Samba 4.2
+[block]>
+
+==== Performance - DB performance ====
+<[block]{problem 3}
+* change notify not scalable
+[block]>
+
+<[block]{first improvement}
+* restructured @notify.tdb@ to
+** global @notify\_index.tdb@ and
+** local @notify.tdb@
+** ==> better but still not good enough for some workloads
+[block]>
+
+<[block]{next steps}
+* replace DB-approach by new scalable, async notify daemon using messaging
+* some false positives do not harm
+* ==> TODO
+[block]>
+
+
+==== Performance - scaling ====
+
+<[block]{parellelism}
+* samba is multi-process:
+** smbd child process $\leftrightarrow$ TCP connection
+** event-loop in one process
+* within a smbd process:
+** pthread-pool jobs for potentially blocking syscalls
+** ==> parallelism for reads/writes
+** default for async I/O since Samba 4.0
+[block]>
+
+==== Performance - scaling ====
+
+<[block]{messaging}
+* classical messaging:
+** messages.tdb and signals between processes
+** does not scale well
+* new massaging in Samba 4.2:
+** fast and scalable messaging based on unix datagram messages
+** ==> WIP: integrate with AD/DC messaging
+** ==> features fd-passing for sockets (SMB3 multi-channel)
+** ==> TODO: integrate into CTDB inter-node-messaging
+[block]>
+
+
+==== Interop ====[plain]
+
+%\transdissolve
+
+<[center]
+<<<samba-chilli-flavour-crop-bright-1280.jpg,height=.8\textheight>>>
+[center]>
+
+
+==== Interop-Central ====
+
+<[block]{multi-protocol access}
+* nfs (kernel, ganesha, ...)
+* afp: netatalk
+* local access
+* SMB2+ unix-extensions
+[block]>
+
+
+==== File Server Layout/Scope ====
+
+<[center]
+<<<samba-layers.jpg,height=.8\textheight>>>
+[center]>
+
+
+==== Interop - Fruit ====
+
+
+<[columns]
+[[[.9\textwidth]]]
+* MacOS 10.9: SMB 2.1 preferred file protocol
+* @vfs\_fruit@ - new module in Samba 4.2
+[[[.05\textwidth]]]
+[columns]>
+
+<[columns]
+[[[.55\textwidth]]]
+
+* spotlight
+** indexed search
+** dcerpc service
+** ==> under review
+* AAPL
+** SMB2 create context
+** speed up directory listings
+** ==> under review
+
+[[[.4\textwidth]]]
+<<<apfel_1280.jpg,width=.9\textwidth>>>
+[columns]>
+
+==== ====[plain]
+
+<[center]
+\Large
+Fruit Demo
+[center]>
+
+==== SMB features ====[plain]
+
+%\transdissolve
+
+<[center]
+<[columns]
+[[[.6\textwidth]]]
+
+[[[.3\textwidth]]]
+<<<samba-chilli-flavour-crop-bright-1280.jpg,height=.8\textheight>>>
+[columns]>
+[center]>
+
+
+==== SMB features in Samba - SMB2 ====
+
+
+<[center]
+<[columns]
+[[[.7\textwidth]]]
+
+* SMB 2.0 (Vista / 2008):
+** durable file handles [4.0]
+* SMB 2.1 (Win7 / 2008R2):
+** multi-credit / large mtu [4.0]
+** dynamic reauthentication [4.0]
+** leasing [WIP++]
+** resilient file handles [WIP-tracer]
+
+[[[.3\textwidth]]]
+<<<durable-crop-colormod-1024,width=.9\textwidth,right>>>
+[columns]>
+[center]>
+
+
+==== SMB features in Samba - SMB3 ====
+
+
+<[center]
+<[columns]
+[[[.7\textwidth]]]
+
+* SMB 3.0 (Win8 / 2012):
+** new crypto (sign/encrypt) [4.0]
+** secure negotiation [4.0]
+** durable handles v2 [4.0]
+** persistent file handles [WIP.tracer]
+** multi-channel [WIP+]
+** SMB direct [designed/starting]
+** cluster features [designing]
+*** witness [WIP]
+** storage features [WIP]
+* SMB 3.02 (Win8.1 / 2012R2): [WIP]
+* SMB 3.1 (Win10 / 2014): [ess.DONE]
+
+[[[.3\textwidth]]]
+<<<durable-crop-colormod-1024,width=.9\textwidth,right>>>
+[columns]>
+[center]>
+
+
+%%==== ====[plain]
+%%
+%%old
+%%
+%
+%%==== Clusterd Samba / CTDB (SOFS since 2007) ====
+%%
+%%<[center]
+%%<<<design-ctdb-three-nodes.png,width=.9\textwidth>>>
+%%[center]>
+
+
+
+%%% === SMB 3.0 ====
+%%% 
+%%% \transdissolve
+%%% 
+%%% +<2->{
+%%% * new crypto (signing, transport encryption)
+%%% * persistent file handles
+%%% * multi-channel
+%%% * RDMA transport (SMB direct)
+%%% * storage features
+%%% * clustering
+%%% ** witness
+%%% ** transparent failover (continuous availability)
+%%% ** all-active (scale-out)
+%%% }
+%%% 
+%%% ==== SMB3 - Goals ====
+%%% 
+%%% \transdissolve
+%%% 
+%%% +<2->{
+%%% * fault tolerance / reliability
+%%% * performance / throughput / scaling
+%%% * focus on support for server workloads \\ %
+%%% (as opposed to workstation workloads)
+%%% * especially support for:
+%%% ** Hyper-V
+%%% ** MS-SQL
+%%% * goals:
+%%% ** replace block storage in data center
+%%% ** block (SCSI) over SMB
+%%% }
+%%% 
+%%% ==== Requirements for Hyper-V ====
+%%% 
+%%% \transdissolve
+%%% 
+%%% +<2->{
+%%% * minimum requirements:
+%%% ** SMB 3.0
+%%% ** is that really all??? - maybe resilient file handles..
+%%% }
+%%% +<3->{
+%%% * desired features:
+%%% ** cluster ($\ge 2$ nodes)
+%%% ** CA / persistent handles
+%%% ** RDMA / SMB direct
+%%% ** multi channel
+%%% }
+
+%%% ==== SMB Protocol in Samba ====
+%%% 
+%%% \transdissolve
+%%% 
+%%% +<2->{
+%%% * Samba $<$ 3.5:
+%%% ** SMB 1
+%%% * Samba 3.5:
+%%% ** experimental incomplete support for SMB 2.0
+%%% * Samba 3.6:
+%%% ** official support for SMB 2.0
+%%% ** missing: durable handles
+%%% ** default server max proto: SMB 1
+%%% * Samba 4.0:
+%%% ** SMB 2.0: complete with durable handles
+%%% ** SMB 2.1: basis, multi-credit, dynamic reauthentication
+%%% ** SMB 3.0: basis, crypto, secure negotiation, durable v2
+%%% ** default server max proto: SMB 3.0
+%%% * Samba 4.1
+%%% ** SMB 3.02: basic
+%%% }
+
+%%% ====  ==== [plain]
+%%% <[center]
+%%% {\Large
+%%% Technical Details...
+%%% }
+%%% [center]>
+
+%%% ==== ====[plain]
+%%% 
+%%% \transdissolve
+%%% 
+%%% <<<samba-chilli-flavour-crop-bright-1280.jpg,height=.8\textheight>>>
+%%% 
+%%% 
+%%% 
+
+==== Multi-Channel - Windows/Protocol ====
+
+* find interfaces with interface discovery: \\ %
+@FSCTL\_QUERY\_NETWORK\_INTERFACE\_INFO@
+* bind additional TCP (or RDMA) connection (channel) to established SMB3 session (session bind)
+* windows: uses connections of same (and best quality)
+* windows: binds only to a single node
+* replay / retry mechanisms, epoch numbers
+
+==== Multi-Channel - Samba ====
+
+* samba/smbd: multi-process
+** process $\Leftrightarrow$ tcp connection
+** ==> transfer new connection to existing smbd
+** use fd-passing (sendmsg/recvmsg)
+
+* preparation: messaging rewrite using unix dgm sockets with sendmsg [DONE,4.2]
+* add fd-passing [DONE,4.2]
+* transfer connection already in negprot (ClientGUID) [ess.DONE]
+* implement channel epoch numbers [WIP]
+* implement interface discovery [WIP]
+
+==== Multi-Channel - Samba ====
+
+<[center]
+<<<smb3-mc-samba_exp.png,height=.9\textheight>>>
+[center]>
+
+==== ====[plain]
+
+<[center]
+\Large
+Multi-Channel Demo
+[center]>
+
+==== SMB Direct (RDMA) ====
+
+* windows:
+** requires multi-channel
+** start with TCP, bind an RDMA channel
+** reads and writes use RDMB write/read
+** protocol/metadata via send/receive
+
+* wireshark dissector: [DONE]
+
+* samba (TODO):
+** prereq: multi-channel / fd-passing
+** buffer / transport abstractions [TODO]
+** _red_problem_: libraries: not fork safe and no fd-passing \\ %
+==> central daemon (or kernel module) to serve as RDMA "proxy"
+
+==== SMB Direct (RDMA) - Plan ====
+
+<[center]
+<<<smb3-rdma-samba-v2_exp.png,height=.9\textheight>>>
+[center]>
+
+%%%==== SMB Direct (RDMA) - Plan ====
+%%%
+%%%+<2->{
+%%%* smbd-d (rdma proxy daemon)
+%%%** listens on unix domain socket (@/var/lib/smbd-d/socket@)
+%%%** listens for RDMA connection (as told by main smbd)
+%%%* main smbd:
+%%%** listens for TCP connections
+%%%** connects to smbd-d-socket
+%%%*** request rdma-interfaces, tell smbd-d on which to listen
+%%%** "accepts" new smb-direct connections on smdb-d-socket
+%%%}
+%%%
+%%%==== SMB Direct (RDMA) - Plan ====
+%%%
+%%%+<2->{
+%%%* client
+%%%** connects via TCP --> smbd forks child smbd (c)
+%%%** connects via RDMA to smbd-d
+%%%* smbd-d
+%%%** creates socket-pair as rdma-proxy-channel
+%%%** passes one end of socket-pair to main smbd for accept
+%%%** sends smb direct packages over proxy-channel
+%%%* main smbd
+%%%** upon receiving NegProt: pass proxy-socket to c based on ClientGUID
+%%%* c
+%%%** continues proxy-communication with smdb-d
+%%%}
+%%%+<3->{
+%%%* For @rdma\_read@ and @rdma\_write@:
+%%%** c and smbd-d establish shared memory area
+%%%}
+
+
+%%% ==== Persistent Handles ====
+%%% 
+%%% \transdissolve
+%%% 
+%%% +<2->{
+%%% * like durable file handles with strong guarantees
+%%% * framework is already there in samba (by support for durable v2)
+%%% ** ==> easy to satisfy at the protocol level
+%%% }
+%%% +<3->{
+%%% * the difficulty lies in implementing the guarantees
+%%% ** need make metadata persistent
+%%% ** but don't kill performance!
+%%% ** persistent tdbs !would! kill performance
+%%% ** ideas:
+%%% *** need to be sync
+%%% *** record-level transactions (instead of db-level)
+%%% *** only replicate to some nodes, not all
+%%% }
+
+
+%%==== Clustering Concepts (Windows) ====
+%%
+%%\transdissolve
+%%
+%%+<2->{
+%%* Cluster:
+%%** (``traditional'') failover cluster (active-passive)
+%%** protocol: @SMB2\_SHARE\_CAP\_CLUSTER@
+%%** Windows:
+%%*** runs off a cluster (failover) volume
+%%*** offers the Witness service
+%%}
+%%+<3->{
+%%* Scale-Out (SOFS):
+%%** scale-out cluster (all-active!)
+%%** protocol: @SMB2\_SHARE\_CAP\_SCALEOUT@
+%%** no client caching
+%%** Windows: runs off a cluster shared volume (implies cluster)
+%%}
+%%+<4->{
+%%* Continuous Availability (CA):
+%%**  transparent failover, persistent handles
+%%**  protocol: @SMB2\_SHARE\_CAP\_CONTINUOUS\_AVAILABILITY@
+%%**  can independently turned on on any cluster share (failover or scale-out)
+%%** ==> changed client retry behaviour!
+%%}
+
+%%% ==== Clustering -- Controlling Flags from Windows ====
+%%% 
+%%% \transdissolve
+%%% 
+%%% +<2->{
+%%% * a share on a cluster carries
+%%% ** @SMB2\_SHARE\_CAP\_CLUSTER@ $\Leftrightarrow$ the shared FS is a cluster volume.
+%%% }
+%%% +<3->{
+%%% * a share on a cluster carries
+%%% ** @SMB2\_SHARE\_CAP\_SCALEOUT@ $\Leftrightarrow$ the shared FS is a CSV
+%%% *** implies  @SMB2\_SHARE\_CAP\_CLUSTER@
+%%% }
+%%% +<4->{
+%%% * independently settable on a clustered share:
+%%% ** @SMB2\_SHARE\_CAP\_CONTINUOUS\_AVAILABILITY@
+%%% *** implies  @SMB2\_SHARE\_CAP\_CLUSTER@
+%%% }
+%%% 
+
+%%==== Clustering -- Server Behaviour ====
+%%
+%%\transdissolve
+%%
+%%+<2->{
+%%* @SMB2\_SHARE\_CAP\_CLUSTER@:
+%%** run witness service (RPC)
+%%** client can register and get notified about resource changes
+%%}
+%%+<3->{
+%%* @SMB2\_SHARE\_CAP\_SCALEOUT@:
+%%** do not grant batch oplocks, write leases, handle leases
+%%** ==> no durable handles unless also CA
+%%}
+%%+<4->{
+%%* @SMB2\_SHARE\_CAP\_CONTINUOUS\_AVAILABILITY@:
+%%** offer persistent handles
+%%** timeout from durable v2 request
+%%}
+%%
+
+%%==== Clustering -- Client Behaviour (Win8) ====
+%%
+%%\transdissolve
+%%
+%%
+%%+<2->{
+%%* @SMB2\_SHARE\_CAP\_CLUSTER@:
+%%** clients happily work if witness is not available
+%%}
+%%+<3->{
+%%* @SMB2\_SHARE\_CAP\_SCALEOUT@:
+%%** clients happily connect if @CLUSTER@ is not set.
+%%** clients DO request oplocks/leases/durable handles
+%%** clients are not confused if they get these
+%%}
+%%+<4->{
+%%* @SMB2\_SHARE\_CAP\_CONTINUOUS\_AVAILABILITY@:
+%%** clients happily connect if @CLUSTER@ is not set.
+%%** clients typically request persistent handle with RWH lease
+%%}
+
+%%%+<5->{
+%%%* Note:\\ %
+%%%Win8 sends @SMB2\_FLAGS\_REPLAY\_OPERATION@ in writes and reads (from 2nd in a row) \\ %
+%%%$\Leftrightarrow$ \\ %
+%%%The server announces @SMB2\_CAP\_PERSISTENT\_HANDLES@.
+%%%}
+
+%%% ==== Clustering -- Client Behaviour (Win8) : Retries  ====
+%%% 
+%%% +<2->{
+%%% * Test: Win8 against slightly pimped Samba (2 IPs)
+%%% }
+%%% +<3->{
+%%% * Server-Matrix (on/off):
+%%% ** persistent handle cap
+%%% ** durable handles
+%%% ** cluster share cap
+%%% ** scale out cap
+%%% ** ca share cap
+%%% }
+%%% +<4->{
+%%% * The test:
+%%% ** connect to share with explorer
+%%% ** start copying file (2G)
+%%% ** kill smbd
+%%% ** wait for the client to pop up an error dialog
+%%% ** click cancel
+%%% ** stop capture
+%%% }
+%%% 
+%%% ==== Clustering -- Client Behaviour (Win8) : Retries  ====
+%%% 
+%%% +<2->{
+%%% * only two different retry characteristics: CA $\leftrightarrow$ non-CA
+%%% }
+%%% +<3->{
+%%% * non-CA-case
+%%% ** 3 consecutive attempt rounds:
+%%% *** for each of the two IPs: \\ %
+%%% arp IP \\ %
+%%% three tcp syn attempts to IP with 0.5 sec breaks
+%%% ** ==> some 2.1 seconds for 1 round
+%%% ** between attempts:
+%%% ** dns, ping, arp ... 5.8 seconds
+%%% ** ==> _red_18 seconds_
+%%% }
+%%% +<4->{
+%%% * CA-Case
+%%% ** retries attempt rounds from above for _red_14 minutes_
+%%% }
+%%% 
+%%% 
+%%% 
+%%% ==== ====[plain]
+%%% 
+%%% \transdissolve
+%%% 
+%%% <[center]
+%%% <<<samba-chilli-flavour-crop-bright-1280.jpg,height=.8\textheight>>>
+%%% [center]>
+%%% 
+%%% 
+
+%%==== Clustering with Samba/CTDB ====
+%%
+%%+<2->{
+%%* all-active SMB-cluster with Samba and CTDB... \\ %
+%%+<3->{...since 2007! \smiley }
+%%}
+%%+<4->{
+%%* transparent for the client
+%%** CTDB:
+%%*** metadata and messaging engine for Samba in a cluster
+%%*** plus cluster resource manager (IPs, services...)
+%%** client only sees one ``big'' SMB server
+%%** we could not change the client!...
+%%** works ``well enough''
+%%}
+%%+<5->{
+%%* challenge:
+%%** how to integrate SMB3 clustering with Samba/CTDB
+%%** good: rather orthogonal
+%%** ctdb-clustering transparent mostly due to management
+%%}
+%%
+%%==== Witness Service ====
+%%
+%%+<2->{
+%%* an RPC service
+%%** monitoring of availability of resources (shares, NICs)
+%%** server asks client to move to another resource
+%%}
+%%+<3->{
+%%* remember:
+%%** available on a Windows SMB3 share $\Leftrightarrow$ @SMB2\_SHARE\_CAP\_CLUSTER@
+%%** but clients happily connect w/o witness
+%%}
+%%+<4->{
+%%* status in Samba [WIP (Metze, Gregor Beck)]:
+%%** async RPC: WIP, good progress ($\Rightarrow$ Metze's talk)
+%%** wireshark dissector: essentially done
+%%** client: in @rpcclient@ - done
+%%** server: dummy PoC / tracer bullet implementation done
+%%** CTDB: changes / integration needed
+%%}
+
+
+%%% ==== ====[plain]
+%%% 
+%%% <[center]
+%%% {\Large
+%%% !@https://wiki.samba.org/index.php/SMB3@!
+%%% }
+%%% [center]>
+%%% 
+%%% ==== ====[plain]
+%%% 
+%%% \transdissolve
+%%% 
+%%% <[center]
+%%% <[columns]
+%%% [[[.6\textwidth]]]
+%%% 
+%%% [[[.3\textwidth]]]
+%%% <<<samba-chilli-flavour-crop-bright-1280.jpg,height=.8\textheight>>>
+%%% [columns]>
+%%% [center]>
+%%% 
+
+==== SMB features in Samba ====
+
+<[center]
+\Large
+@https://wiki.samba.org/index.php/Samba3/SMB3@
+[center]>
+
+
+==== Misc ====[plain]
+
+%\transdissolve
+
+<[center]
+<<<samba-chilli-flavour-crop-bright-1280.jpg,height=.8\textheight>>>
+[center]>
+
+==== Misc ====
+
+<[block]{File Systems}
+* gpfs, gluster, ceph, btrfs...
+* support through vfs modules
+* fuse-based: avoid context switches
+* instrument SMB3 storage features (fsctls)
+[block]>
+
+==== Misc ====
+
+%%<[block]{Under the hood}
+%%* restructurings, reconsilations
+%%* ctdb moved into samba tree
+%%* published libs: talloc, tdb, tevent ...
+%%[block]>
+
+<[block]{Testing}
+* unprivileged selftest, autobuild
+* selfcontained testing: wrapper
+** socket wrapper
+** nss wrapper
+** uid wrapper
+** resolv wrapper [_red_new_]
+* externalized as separate projects:
+** ==> @http://cwrap.org/@
+** git on samba.org
+** ==> Andreas Schneider's talk
+[block]>
+
+
+==== Forecast: Cloudy ====
+
+<[block]{Possible involvement with OpenStack}
+* SMB storage service for Windows (and other) VMs
+* SMB3 storage backend for Hyper-V images
+* also: chances for AD-integration into auth
+[block]>
+
+==== Credits ====
+
+<[block]{especially but not exclusively}
+* Volker Lendecke
+* Stefan Metzmacher
+* Ralph Böhme
+* Jeremy Allison
+* David Disseldorp
+* Andreas Schneider
+[block]>
+
+
+==== Conclusion ====[plain]
+
+%%\transdissolve
+
+<<<samba-chilli-flavour-crop-bright-1280.jpg,height=.8\textheight>>>
+
+
+==== Conclusion ====
+
+<[block]{Remember}
+* Samba 4.X is quite different from 3.Y
+[block]>
+
+<[block]{What's coming?}
+* Performance: the story continues
+* Interop: strengthen strenths
+* SMB(3) features: a lot to come ( ==> cluster, hyper-v, ...)
+* Some clouds in the sky...
+[block]>
+
+
+==== Thanks for your attention! ====[plain]
+
+%\transdissolve
+
+<[center]
+<[columns]
+[[[.6\textwidth]]]
+
+{\Large
+
+Questions?
+
+--*4em--
+
+@obnox\@samba.org@
+
+@madam\@redhat.com@
+}
+[[[.3\textwidth]]]
+<<<samba-chilli-flavour-crop-bright-1280.jpg,height=.8\textheight>>>
+
+[columns]>
+[center]>
+
diff --git a/base.tex b/base.tex
new file mode 100644 (file)
index 0000000..e061bc1
--- /dev/null
+++ b/base.tex
@@ -0,0 +1,73 @@
+%%\documentclass{beamer}
+
+\usepackage[ngerman,english]{babel}
+\usepackage[utf8]{inputenc}
+\usepackage{listings}
+\usepackage{wasysym}
+
+\mode<presentation>{
+\usetheme{ObnoxSamba}
+\usepackage{pgf}
+\usepackage{multimedia}
+
+%%%\usepackage{verbatim}
+\setbeamercovered{dynamic}
+%\setbeamercovered{transparent}
+
+%\pgfdeclaremask{samba-mask}{}
+\pgfdeclareimage[width=12mm]{samba}{samba}
+%\pgfdeclareimage[width=12mm]{sernet}{sernet}
+\pgfdeclareimage[width=12mm]{redhat}{redhat-logo}
+\pgfdeclareimage[width=16mm]{sambanew}{Samba_Logo_4c-grey-bbbbbb-256}
+}
+
+\mode<article>{
+       %\usepackage[pdftex]{color}
+       \usepackage[pdftex]{hyperref}
+       \usepackage[pdftex]{graphicx}
+}
+
+%%\title[SambaFS]{Present and Future Fileserving With Samba \\
+%%\ \\
+%%LinuxCon Europe 2014}
+
+\title[SambaFS]{Sataus of SMB3 in Samba \\
+\ }
+\subtitle{Vault}
+
+%%\author[Michael Adam]{Michael Adam\\
+%%\ \\
+%%\footnotesize{\texttt{ma@sernet.de} / \texttt{obnox@samba.org}}}
+  %%\author[obnox]{Michael Adam}
+  \author[Michael Adam]{Michael Adam}
+%%\\
+%%{\footnotesize{\texttt{obnox@samba.org} / \texttt{ma@sernet.de}}}}
+\institute{Samba Team / Red Hat}
+%\date{\today}
+\date{March 12, 2015}
+%\date{2014-05-14}
+
+\begin{document}
+
+\mode<article>{
+       \maketitle
+       \tableofcontents
+       \clearpage
+}
+
+\mode<presentation>{
+       \begin{frame}[plain]
+       \titlepage
+       \end{frame}
+}
+
+\input{base-wiki}
+
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\end{document}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
diff --git a/beamercolorthemeobnoxsamba.sty b/beamercolorthemeobnoxsamba.sty
new file mode 100644 (file)
index 0000000..25e70d1
--- /dev/null
@@ -0,0 +1,40 @@
+% Copyright 2004 by Madhusudan Singh <madhusudan.singh@gmail.com>
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+
+\mode<presentation>
+
+\definecolor{darkred}{rgb}{0.8,0,0}
+
+\setbeamercolor{section in toc}{fg=black,bg=white}
+\setbeamercolor{alerted text}{fg=darkred!80!gray}
+\setbeamercolor*{palette primary}{fg=darkred!60!black,bg=gray!30!white}
+\setbeamercolor*{palette secondary}{fg=darkred!70!black,bg=gray!15!white}
+\setbeamercolor*{palette tertiary}{bg=darkred!80!black,fg=gray!10!white}
+\setbeamercolor*{palette quaternary}{fg=darkred,bg=gray!5!white}
+
+\setbeamercolor*{sidebar}{fg=darkred,bg=gray!15!white}
+
+\setbeamercolor*{palette sidebar primary}{fg=darkred!10!black}
+\setbeamercolor*{palette sidebar secondary}{fg=white}
+\setbeamercolor*{palette sidebar tertiary}{fg=darkred!50!black}
+\setbeamercolor*{palette sidebar quaternary}{fg=gray!10!white}
+
+%\setbeamercolor*{titlelike}{parent=palette primary}
+\setbeamercolor{titlelike}{parent=palette primary,fg=darkred}
+\setbeamercolor{frametitle}{bg=gray!10!white}
+\setbeamercolor{frametitle right}{bg=gray!60!white}
+%%\setbeamercolor{frametitle}{bg=white}
+%%\setbeamercolor{frametitle right}{bg=white}
+
+\setbeamercolor*{separation line}{}
+\setbeamercolor*{fine separation line}{}
+
+\mode
+<all>
diff --git a/beamerouterthemeobnoxinfolines.sty b/beamerouterthemeobnoxinfolines.sty
new file mode 100644 (file)
index 0000000..29df71f
--- /dev/null
@@ -0,0 +1,77 @@
+% Copyright 2011 by Michael Adam <obnox@samba.org>
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+\mode<presentation>
+
+%\setbeamercolor*{author in head/foot}{parent=palette tertiary}
+\setbeamercolor*{author in head/foot}{parent=palette primary,bg=white}
+\setbeamercolor*{title in head/foot}{parent=palette secondary}
+\setbeamercolor*{date in head/foot}{parent=palette primary}
+
+\setbeamercolor*{logo in head/foot}{parent=palette tertiary}
+\setbeamercolor*{logo in head/foot}{parent=palette primary}
+
+%%%%\defbeamertemplate*{footline}{obnoxinfolines theme}
+%%\defbeamertemplate*{headline}{obnoxinfolines theme}
+%%{
+%%  \leavevmode%
+%%  \hbox{%
+%%  \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}%
+%%    \usebeamerfont{author in head/foot}\insertshortauthor~~(\insertshortinstitute)
+%%  \end{beamercolorbox}%
+%%  \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,center]{title in head/foot}%
+%%    \usebeamerfont{title in head/foot}\insertshorttitle
+%%  \end{beamercolorbox}%
+%%  \begin{beamercolorbox}[wd=.333333\paperwidth,ht=2.25ex,dp=1ex,right]{date in head/foot}%
+%%    \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em}
+%%    \insertframenumber{} / \inserttotalframenumber\hspace*{2ex}
+%%  \end{beamercolorbox}}%
+%%  \vskip0pt%
+%%}
+
+%% %%\defbeamertemplate*{headline}{obnoxinfolines theme}
+%% \defbeamertemplate*{footline}{obnoxinfolines theme}
+%% {
+%%   \leavevmode%
+%%   \hbox{%
+%%   \begin{beamercolorbox}[wd=.5\paperwidth,ht=5ex,dp=1ex,left]{xy}%
+%%     \hspace*{2ex} \hbox{\pgfuseimage{sambanew}}
+%%   \end{beamercolorbox}%
+%%   \begin{beamercolorbox}[wd=.5\paperwidth,ht=5ex,dp=1ex,right]{xy}%
+%%   \hbox{\pgfuseimage{sernet}}
+%%     \hspace*{2ex}\end{beamercolorbox}}%
+%%   \vskip0pt%
+%% }
+
+%%\defbeamertemplate*{headline}{obnoxinfolines theme}
+\defbeamertemplate*{footline}{obnoxinfolines theme}
+{
+  \leavevmode%
+  \hbox{%
+  \begin{beamercolorbox}[wd=.2\paperwidth,ht=5ex,dp=1ex,left]{xy}%
+    \hspace*{2ex} \hbox{\pgfuseimage{sambanew}}
+  \end{beamercolorbox}%
+  \begin{beamercolorbox}[wd=.3\paperwidth,ht=5ex,dp=1ex,center]{author in head/foot}%
+    \usebeamerfont{author in head/foot}\scriptsize\insertshortauthor{}\hspace*{2ex}
+  \end{beamercolorbox}%
+  \begin{beamercolorbox}[wd=.3\paperwidth,ht=5ex,dp=1ex,center]{author in head/foot}%
+    \usebeamerfont{author in head/foot}\scriptsize%
+     \insertshorttitle{} (\insertframenumber{}/\inserttotalframenumber)\hspace*{2ex}
+  \end{beamercolorbox}%
+  \begin{beamercolorbox}[wd=.2\paperwidth,ht=5ex,dp=1ex,right]{xy}%
+  \hbox{\pgfuseimage{redhat}}
+    \hspace*{2ex}\end{beamercolorbox}}%
+  \vskip0pt%
+}
+
+
+\setbeamersize{text margin left=1em,text margin right=1em}
+
+\mode
+<all>
diff --git a/beamerthemeObnoxSamba.sty b/beamerthemeObnoxSamba.sty
new file mode 100644 (file)
index 0000000..1c11cde
--- /dev/null
@@ -0,0 +1,22 @@
+% Copyright 2011 by Michael Adam  <obnox@samba.org>
+% Copyright 2004 by Madhusudan Singh <madhusudan.singh@gmail.com>
+%
+% This file may be distributed and/or modified
+%
+% 1. under the LaTeX Project Public License and/or
+% 2. under the GNU Public License.
+%
+% See the file doc/licenses/LICENSE for more details.
+
+
+\mode<presentation>
+
+%%\useinnertheme[shadow=true]{rounded}
+\useoutertheme{obnoxinfolines}
+\usecolortheme{obnoxsamba}
+
+\setbeamerfont{block title}{size={}}
+\setbeamercolor{titlelike}{parent=structure,bg=white}
+
+\mode
+<all>
diff --git a/ctdb-design-daemons.dia b/ctdb-design-daemons.dia
new file mode 100644 (file)
index 0000000..aa0b06b
Binary files /dev/null and b/ctdb-design-daemons.dia differ
diff --git a/design-ctdb-three-nodes.dia b/design-ctdb-three-nodes.dia
new file mode 100644 (file)
index 0000000..d24b321
Binary files /dev/null and b/design-ctdb-three-nodes.dia differ
diff --git a/design-ctdb-three-nodes.png b/design-ctdb-three-nodes.png
new file mode 100644 (file)
index 0000000..e6fb9f2
Binary files /dev/null and b/design-ctdb-three-nodes.png differ
diff --git a/durable-crop-colormod-1024.jpg b/durable-crop-colormod-1024.jpg
new file mode 100644 (file)
index 0000000..39e617d
Binary files /dev/null and b/durable-crop-colormod-1024.jpg differ
diff --git a/handout.tex b/handout.tex
new file mode 100644 (file)
index 0000000..dd66697
--- /dev/null
@@ -0,0 +1,3 @@
+\documentclass[handout]{beamer}
+\usepackage{pgfpages}
+\input{base}
diff --git a/handout2.tex b/handout2.tex
new file mode 100644 (file)
index 0000000..b718a40
--- /dev/null
@@ -0,0 +1,4 @@
+\documentclass[handout]{beamer}
+\usepackage{pgfpages}
+\pgfpagesuselayout{2 on 1}
+\input{base}
diff --git a/paper.tex b/paper.tex
new file mode 100644 (file)
index 0000000..92bc306
--- /dev/null
+++ b/paper.tex
@@ -0,0 +1,4 @@
+\documentclass[class=article,a4paper]{beamer}
+%%\documentclass{article}
+\usepackage{beamerarticle}
+\input{base}
diff --git a/presentation.tex b/presentation.tex
new file mode 100644 (file)
index 0000000..77d4e7d
--- /dev/null
@@ -0,0 +1,2 @@
+\documentclass{beamer}
+\input{base}
diff --git a/redhat-logo.png b/redhat-logo.png
new file mode 100644 (file)
index 0000000..3ee786b
Binary files /dev/null and b/redhat-logo.png differ
diff --git a/samba-chilli-flavour-crop-1280-bright2.jpg b/samba-chilli-flavour-crop-1280-bright2.jpg
new file mode 100644 (file)
index 0000000..100fbcd
Binary files /dev/null and b/samba-chilli-flavour-crop-1280-bright2.jpg differ
diff --git a/samba-chilli-flavour-crop-bright-1280.jpg b/samba-chilli-flavour-crop-bright-1280.jpg
new file mode 100644 (file)
index 0000000..8ae8f7a
Binary files /dev/null and b/samba-chilli-flavour-crop-bright-1280.jpg differ
diff --git a/samba-kisses-better-selection.jpg b/samba-kisses-better-selection.jpg
new file mode 100644 (file)
index 0000000..dc60f9b
Binary files /dev/null and b/samba-kisses-better-selection.jpg differ
diff --git a/samba-layers.dia b/samba-layers.dia
new file mode 100644 (file)
index 0000000..067128c
Binary files /dev/null and b/samba-layers.dia differ
diff --git a/samba-layers.jpg b/samba-layers.jpg
new file mode 100644 (file)
index 0000000..c103aeb
Binary files /dev/null and b/samba-layers.jpg differ
diff --git a/samba-release-stream.dia b/samba-release-stream.dia
new file mode 100644 (file)
index 0000000..01b9ec5
Binary files /dev/null and b/samba-release-stream.dia differ
diff --git a/samba-release-stream_exp.png b/samba-release-stream_exp.png
new file mode 100644 (file)
index 0000000..1906ad1
Binary files /dev/null and b/samba-release-stream_exp.png differ
diff --git a/samba-team-20141011-colorized.png b/samba-team-20141011-colorized.png
new file mode 100644 (file)
index 0000000..2544071
Binary files /dev/null and b/samba-team-20141011-colorized.png differ
diff --git a/samba-team-20141011.png b/samba-team-20141011.png
new file mode 100644 (file)
index 0000000..169d50a
Binary files /dev/null and b/samba-team-20141011.png differ
diff --git a/samba.png b/samba.png
new file mode 100644 (file)
index 0000000..fdc9c84
Binary files /dev/null and b/samba.png differ
diff --git a/sernet.png b/sernet.png
new file mode 100644 (file)
index 0000000..6cebd97
Binary files /dev/null and b/sernet.png differ
diff --git a/smb3-mc-samba.dia b/smb3-mc-samba.dia
new file mode 100644 (file)
index 0000000..a68f991
Binary files /dev/null and b/smb3-mc-samba.dia differ
diff --git a/smb3-mc-samba_exp.png b/smb3-mc-samba_exp.png
new file mode 100644 (file)
index 0000000..258aa2d
Binary files /dev/null and b/smb3-mc-samba_exp.png differ
diff --git a/smb3-rdma-samba-v2.dia b/smb3-rdma-samba-v2.dia
new file mode 100644 (file)
index 0000000..a5cc6b5
Binary files /dev/null and b/smb3-rdma-samba-v2.dia differ
diff --git a/smb3-rdma-samba-v2_exp.png b/smb3-rdma-samba-v2_exp.png
new file mode 100644 (file)
index 0000000..ab61ff1
Binary files /dev/null and b/smb3-rdma-samba-v2_exp.png differ
diff --git a/smb3-rdma-samba.dia b/smb3-rdma-samba.dia
new file mode 100644 (file)
index 0000000..413197b
Binary files /dev/null and b/smb3-rdma-samba.dia differ
diff --git a/smb3-rdma-samba_exp.png b/smb3-rdma-samba_exp.png
new file mode 100644 (file)
index 0000000..bf5e1a9
Binary files /dev/null and b/smb3-rdma-samba_exp.png differ