From: Michael Adam Date: Wed, 23 Sep 2015 09:58:29 +0000 (+0200) Subject: content... X-Git-Url: http://git.samba.org/?a=commitdiff_plain;h=c7cb3e61fb918e50fd538fdc0d9d4664e3e9c227;p=obnox%2Fslides%2F2015-09-sdc-multi-channel.git content... --- diff --git a/content.wiki b/content.wiki index dd5bc78..45d3bb9 100644 --- a/content.wiki +++ b/content.wiki @@ -16,14 +16,14 @@ #* secure negotiation [4.0] #* durable handles v2 [4.0] #* '''_red_Multi-Channel_''' [WIP+] -#* SMB direct [designing/starting] -#* persistent file handles [design/tracer] -#* cluster features [design] +#* SMB direct [design] +#* cluster features [design/WIP] #** witness [WIP+] +#* persistent file handles [design/tracer] #* storage features [WIP] -# SMB 3.0.2 (Win8.1 / 2012R2): [DONE,master] +# SMB 3.0.2 (Win8.1 / 2012R2): [4.3] # SMB 3.1.1 (Win10 / 2014): -#* negotiate contexts, preauth: [DONE,master] +#* negotiate contexts, preauth: [4.3] [[[.35\textwidth]]] %<<>> @@ -126,7 +126,7 @@ ** ''Natural choice'': at SessionSetup (Bind) ** !Idea!: as early as possible, based on ClientGUID \\ % ==> per ClientGUID single process model -*<0> !But!: This may not work! \frownie +*<0> !But!: There may be problems! ... \frownie [block]> @@ -161,7 +161,7 @@ ** ''Natural choice'': at SessionSetup (Bind) ** !Idea!: as early as possible, based on ClientGUID \\ % ==> per ClientGUID single process model -*<0> !But!: This may not work! \frownie +*<0> !But!: There may be problems! ... \frownie [block]> @@ -182,7 +182,7 @@ ** ''Natural choice'': at SessionSetup (Bind) ** ''Idea'': as early as possible, based on ClientGUID \\ % ==> per ClientGUID single process model -* !But!: This may not work! \frownie +* !But!: There may be problems! ... \frownie [block]> @@ -207,12 +207,29 @@ Open.ClientGuid == Connection.ClientGuid } +<3->{ -<[block]{This may not be correct!} -There is confusion -- currently being discussed. +<[block]{The truth is...} +The Windows server does not enforce it! +[block]> +} + + +==== The Relevance of the ClientGUID ==== + +<[block]{Windows behaviour according to MS} +* The server does NOT enforce same ClientGUID in a session. +* But clients can be expected to do it. +* But it is not explicitly documented like this. +[block]> + ++<2->{ +<[block]{The good news:} +There will be documentation notes: +* Things will not work as expected when clients behave differently. +* It is OK for a server to enforce equality of ClientGUID within session. [block]> } -==== More on ClientGUID : Leases ==== +==== More digression on ClientGUID : Leases ==== <[block]{According to [MS-SMB2]} * Server Global data Structures: @@ -226,11 +243,10 @@ There is confusion -- currently being discussed. ** smb server uses ClientGuid and LeaseKey given by ObjectStore ==> !Inconsistent\! -- What to do?! - [block]> -==== Multi-Channel $\in$ Samba : pass by SessionID ==== +==== Multi-Channel $\in$ Samba : pass by SessionID (plan B) ==== <[center] <<>> @@ -247,7 +263,7 @@ There is confusion -- currently being discussed. # implement smbd message to pass a tcp socket [ess.DONE] # transfer connection in Negotiate (by ClientGUID) [ess.DONE] # implement session bind [ess.DONE] -# transfer connection in Session Bind (by SessionID) [WIP] +# transfer connection in Session Bind (by SessionID) [thinking..] # implement channel epoch numbers [WIP] # implement interface discovery [WIP] # implement test case [WIP(isn't it always?... $\smiley$)]