Bug 0 review pls

Dan Shearer dan at shearer.org
Tue Jun 3 18:41:19 UTC 2008

On Tue, Jun 03, 2008 at 06:00:49PM +0200, Mark Schouten wrote:

Good comments. I'll answer at length, because I can use the text
elsewhere :-)

> On Tue, 2008-06-03 at 07:37 -0500, Luke wrote:
> > (Ubuntu especially) should continue to push into better server
> > management and technologies SIMILAR to MS, I think we should be
> > careful about focusing too much on MS-swappable technologies.
> You should not focus on how to copy M$. You should focus on making the
> opensource stuff work. 

Absolutely 100% the way I see it too. So long as there's understanding
about what the real protocols involved actually are, and where the
opportunties are to do new and radically useful things. And about how
long and how much effort it takes for a new communications mechanism to
become suitable for large-scale use, and become acceptable for
large-scale use (the answers are: a long time, and a lot of effort :-)

To address a very common area of concern first, there are two important
protocols Microsoft uses that free software doesn't have any better *or*
pragmatically useful alternative to:

  * CIFS for file and resource-related tasks (not AD.) 
    Comments: Linux doesn't have any networked filesystems that are even
    close to as functional as CIFS, nor are there any relevant
    standards, nor is there any chance of a from-scratch effort
    succeeding in finite time. There are some interesting experimental
    network filesystems in Linux, but they don't pass the 'pragmatically
    useful' test in that you can't put someone else's terrabytes on them
    right now nor does anyone seem interested in making that possible.
    The fact that the most functional Unix <-> Unix filesystem also
    happens to be the only fully-functional filesystem for Windows
    clients is helpful. But for practical purposes today on any ordinary
    network, you get more functionality for less work with CIFS. And,
    interestingly, free software is leading the charge in some areas as
    CIFS is developed; Microsoft is learning from Samba how to do
    clustered CIFS, for example, which turns out to be a lot better than
    clustered NFS. And SMB2 shows promise of being a collaborative
    effort, with a community ready to participate who have already
    gathered around Samba as Microsoft obeys the regulators and lets the
    engineers collaborate on taking SMB2 forward. Microsoft sent its
    most senior CIFS engineers to the SambaXP conference and they were
    actively participating.

  * MAPI over MSRPC for Exchange-type groupware.

    Comments: This is a Microsoft protocol, and it delivers unique
    benefits compared to anything in RFC space (if you don't count the
    Notes protocol, which you shouldn't.) The unique benefit comes from
    something that RFC standards in calendaring and email can't match by
    their very design: every object in a MAPI store is considered a
    groupware object, and is acted on by the same operations. RFC
    standards by contrast have no concept of groupware and nothing you
    can do in software will truly smooth that over. There are very
    different operations for mail and calendaring and the servers are
    very different. When you want another kind of MAPI object, you just
    create it, and all existing clients and servers can use it.

There is also one special case of a truly bad protocol that nevertheless
we have to implement well in free software, and that is Active
Directory.  No matter that AD is a corrupted melange of
LDAP/Kerberos/DNS/MSRPC/more, its ubiquity means that it is a
requirement for success on most of today's networks behind the firewall.
That's another story and I won't go into it here, but AD is an
essential. A bit like FAT filesystem support or Frontpage extensions in
their day, this is something we just have to do in order to develop
better and better solutions.  And here I am on the Ubuntu Server list,
which was the OS that first included likewise-open; take a bow, people.
You truly get it :-)

> Please do not try to copy M$, including their non-standard solutions. 

Relax, we're not :-) I wrote a paper in 1998 and presented it in Paris
in 1999 on "How to Replace Windows NT with Linux" that started with
using standard protocols for everything possible. The people in the
Samba and OpenChange teams who deal with this stuff every day really do
understand the value of open standards. 

So, with OpenChange, have a look at *how* we're implementing the very
useful MAPI protocol. Oh yes, we're doing it compatibly. We talk to
Exchange and Outlook natively. But look deeper: the MAPI layer is a thin
disguise over well-known OSS components underneath. In the tradition of
unix tools, we're assembling known-reliable bits and glueing them
together. Bits that are the better for being used like this, but not
tied to openchange in any way. With Samba, when the CIFS protocol needed
extra Unix features, it got them. With MAPI, when we want to do better,
we will. First we want to get the Linux world to parity in groupware,
then we'll do what we always do and keep making it better. 

If you're familiar with programming, come and give us a hand at
openchange.org. There's plenty to do that doesn't require specialised

I could say somewhat similar but different things about Samba, but my
dinner is calling me so I won't just now :-)

> Go for the slower but safer approach..

In the three areas I have highlighted, there is no such approach. In
other areas, very interesting areas, progress is neither slow nor at
times particularly safe! For example, point-to-point protocols, and
anonymous systems, and vastly distributed computing. And modern kinds of
virtualisation, and amazing new on-disk filesystems, and even a 3D open
source printer whose goal is to be able to print itself. It's a fun time
to be in technology and no, Linux doesn't need to bow and scrape to any
other OS. 


Dan Shearer
dan at shearer.org

More information about the ubuntu-server mailing list