[prev in list] [next in list] [prev in thread] [next in thread]
List: samba-technical
Subject: Re: cifsd/nfsd interop
From: Amir Goldstein via samba-technical <samba-technical () lists ! samba ! org>
Date: 2021-04-22 8:51:45
Message-ID: CAOQ4uxg7Xc21mkc8kgr1t-GpFHghLOZN6zbpST1GLvrH7vU9LQ () mail ! gmail ! com
[Download RAW message or body]
[re-posting for samba-technical with shorter CC list]
On Thu, Apr 22, 2021 at 11:11 AM Namjae Jeon <namjae.jeon@samsung.com> wrote:
>
> >
> > On Thu, Apr 22, 2021 at 4:31 AM Namjae Jeon <namjae.jeon@samsung.com> wrote:
> > >
> > > This adds a document describing ksmbd design, key features and usage.
> > >
> > > Signed-off-by: Namjae Jeon <namjae.jeon@samsung.com>
> > > Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
> > > Signed-off-by: Hyunchul Lee <hyc.lee@gmail.com>
> > > Acked-by: Ronnie Sahlberg <lsahlber@redhat.com>
> > > Signed-off-by: Steve French <stfrench@microsoft.com>
> > > ---
> > > Documentation/filesystems/cifs/cifsd.rst | 152
> > > +++++++++++++++++++++++ Documentation/filesystems/cifs/index.rst | 10 ++
> > > Documentation/filesystems/index.rst | 2 +-
> > > 3 files changed, 163 insertions(+), 1 deletion(-) create mode 100644
> > > Documentation/filesystems/cifs/cifsd.rst
> > > create mode 100644 Documentation/filesystems/cifs/index.rst
> > >
> > > diff --git a/Documentation/filesystems/cifs/cifsd.rst
> > > b/Documentation/filesystems/cifs/cifsd.rst
> > > new file mode 100644
> > > index 000000000000..cb9f87b8529f
> > > --- /dev/null
> > > +++ b/Documentation/filesystems/cifs/cifsd.rst
> > > @@ -0,0 +1,152 @@
> > > +.. SPDX-License-Identifier: GPL-2.0
> > > +
> > > +==========================
> > > +CIFSD - SMB3 Kernel Server
> > > +==========================
> > > +
> > > +CIFSD is a linux kernel server which implements SMB3 protocol in
> > > +kernel space for sharing files over network.
> > > +
> >
> > Hello cifsd team!
> Hi Amir,
> >
> > I am very excited to see your work posted and especially excited to learn about \
> > the collaboration with the samba team.
> Thanks!
> >
> > One of the benefits from kernel smbd implementation is improved ability to \
> > interoperate with VFS in general and nfsd in particular.
> Agreed. This seems to be an important issue, I was missing this.
> >
> > For example, I have discussed with several samba team members the option that \
> > ksmbd will serve as a kernel lease agent for samba, instead of having to work \
> > around the limitations of file lock UAPI.
> > Could you share your plans (if any) for interoperability improvements with \
> > vfs/nfsd?
> > It would be useful to add an "Interop" column to the Features table below to \
> > document the current state and future plans or just include a note about it in \
> > the Status column.
> Okay, First, I need to check your previous mails about this. Then I will update it \
> in features table.
> >
> > Off the top of my head, a list of features that samba supports partial \
> > kernel/nfsd interop with are:
> > - Leases (level 1)
> > - Notify
> > - ACLs (NT to POSIX map)
> > - Share modes
> >
> > In all of those features, ksmbd is in a position to do a better job.
> Right.
> >
> > I only assume that ksmbd implementation of POSIX extensions is a "native" \
> > implementation (i.e. a symlink is implemented as a symlink) so ksmbd and nfsd \
> > exporting the same POSIX fs would at least observe the same objects(?), but I \
> > would rather see this explicitly documented.
> Okay.
> >
> > Thanks,
> Thank you!
> > Amir.
> >
> > [...]
> >
> > > +
> > > +CIFSD Feature Status
> > > +====================
> > > +
> > > +============================== \
> > > ================================================= +Feature name \
> > > Status +============================== \
> > > ================================================= +Dialects \
> > > Supported. SMB2.1 SMB3.0, SMB3.1.1 dialects + \
> > > excluding security vulnerable SMB1. +Auto Negotiation Supported.
> > > +Compound Request Supported.
> > > +Oplock Cache Mechanism Supported.
> > > +SMB2 leases(v1 lease) Supported.
> > > +Directory leases(v2 lease) Planned for future.
> > > +Multi-credits Supported.
> > > +NTLM/NTLMv2 Supported.
> > > +HMAC-SHA256 Signing Supported.
> > > +Secure negotiate Supported.
> > > +Signing Update Supported.
> > > +Pre-authentication integrity Supported.
> > > +SMB3 encryption(CCM, GCM) Supported.
> > > +SMB direct(RDMA) Partial Supported. SMB3 Multi-channel is \
> > > required + to connect to Windows client.
> > > +SMB3 Multi-channel In Progress.
> > > +SMB3.1.1 POSIX extension Supported.
> > > +ACLs Partial Supported. only DACLs available, SACLs \
> > > is + planned for future. ksmbd generate random \
> > > subauth + values(then store it to disk) and use \
> > > uid/gid + get from inode as RID for local domain \
> > > SID. + The current acl implementation is limited \
> > > to + standalone server, not a domain member.
> > > +Kerberos Supported.
> > > +Durable handle v1,v2 Planned for future.
> > > +Persistent handle Planned for future.
> > > +SMB2 notify Planned for future.
> > > +Sparse file support Supported.
> > > +DCE/RPC support Partial Supported. a few calls(NetShareEnumAll,
> > > + NetServerGetInfo, SAMR, LSARPC) that needed as
> > > + file server via netlink interface from
> > > + ksmbd.mountd.
> > > +==============================
> > > +=================================================
> > > +
>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic