SMB3 Multi-Channel (Re: What I'm working on)

Stefan (metze) Metzmacher metze at samba.org
Fri May 23 05:38:06 MDT 2014


Hi,

I've just started my
https://git.samba.org/?p=metze/samba/wip.git;a=shortlog;h=refs/heads/master3-multi-channel
branch. There's some work in progress that prepares the data structures
for multi-channel.

Currently we have:

smbXsrv_connection:
    -> smbd_server_connection (legacy mainly used for VFS modules).
    -> smbXsrv_session_table
    -> smbXsrv_tcon_table
    -> smbXsrv_open_table

This will change into

smbXsrv_client:
    -> smbXsrv_connections ( a linked list)
    -> smbd_server_connection (legacy mainly used for VFS modules).
    -> smbXsrv_session_table
    -> smbXsrv_tcon_table
    -> smbXsrv_open_table

In way is to move all per connection state from smbd_server_connection
to smbXsrv_connection.

smbd_server_connection will just remain with the FSA-layer structure
so that vfs modules don't need to change much. With multi-channel
smbd_server_connection will represent a connected client
not a single connection anymore.

At the SMB-layer we'll introduce smbXsrv_client to hold the global state
of a specific client (identified by client_guid), it will then
have a list of smbXsrv_connection structure to represent individual
connections. The fd-passing will be used to transfer incoming connections
to the correct smbd. There will be one smbXsrv_client per smbd.

metze

Am 23.05.2014 01:06, schrieb Michael Adam:
> Hi,
> 
> as part of our preparations for implementing
> SMB3 features multi-channel and RDMA, I am
> currently working on adding support for fd-passing
> to our (local) messaging, so that we can later pass fds for
> tcp connections or unix domain sockets (for the
> rdma proxy channel) from one smbd to another.
> 
> Implementing fd-passing has been made possible
> by Volker's recent rewrite of messaging to use
> unix main socket messaging (using variants of
> send and receive) instead of messaging.tdb and signals.
> 
> The state is in my master-fd-passing branch in
> git://git.samba.org/obnox/samba/samba-obnox.git
> 
> https://git.samba.org/?p=obnox/samba/samba-obnox.git;a=shortlog;h=refs/heads/master-fd-passing
> 
> It is not very far yet, but I wanted to share
> the status anyways.
> 
> Cheers - Michael
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 263 bytes
Desc: OpenPGP digital signature
URL: <http://lists.samba.org/pipermail/samba-technical/attachments/20140523/25b44959/attachment.pgp>


More information about the samba-technical mailing list