RE: cifsd/nfsd interop

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> 
> On Thu, Apr 22, 2021 at 4:31 AM Namjae Jeon <namjae.jeon@xxxxxxxxxxx> wrote:
> >
> > This adds a document describing ksmbd design, key features and usage.
> >
> > Signed-off-by: Namjae Jeon <namjae.jeon@xxxxxxxxxxx>
> > Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
> > Signed-off-by: Hyunchul Lee <hyc.lee@xxxxxxxxx>
> > Acked-by: Ronnie Sahlberg <lsahlber@xxxxxxxxxx>
> > Signed-off-by: Steve French <stfrench@xxxxxxxxxxxxx>
> > ---
> >  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.
> > +==============================
> > +=================================================
> > +




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux