Inside Mac OS X 10.7 Lion Server: Apple replaces Samba for Windows networking services

1246

Comments

  • Reply 61 of 107
    nhtnht Posts: 4,522member
    Quote:
    Originally Posted by ksec View Post


    Aside from the argument of GPL for a secound.



    What alternative could Apple use? I mean Samba took YEARS to be developed into current state.



    I mean Apple cant just invent something out of nothing.........



    Well, Apple doesn't seem too keen on CDDL solutions either but they could go with a port of CFIS and grab ZFS if so inclined. Not likely as they are rumored to be building their own next gen filesystem.



    They certainly have the resources to buy and tailor a commercial solution as well or strike a deal with Microsoft. Samba took YEARS because no one was pouring much cash into the development. There's maybe 30-40 commiters for Samba with a core team of a dozen or so. That's like 20 times the size of the Gimp team (2 devs) but it's not all that as I don't think Samba is corporate sponsored with full time corporate devs. Jeremy will correct me if I'm wrong.



    Ohloh vastly overestimates the effort and cost for projects. (I have a good feel for how much the ones I worked cost and the Ohloh estimates were insanely high...how? Because I actually knew the staff years that went into them and the salaries of the coders involved.



    So using their numbers as the worst case replicating Samba is 371 staff years and $20M. Cost wise that's chump change for Apple and they can buy a commercial implementation that will be 80% of what they want.
  • Reply 62 of 107
    Quote:
    Originally Posted by nht View Post


    Of course we're not talking about your not wasting Samba team resources. Just everyone else's.







    And of course the it never occurred to you that forcing MS to pseudo distribute GPL v3 code that they wouldn't be able to adhere to their end of the agreement (coupon).







    When the shoe fits.







    Yes, one way sharing is always good for GPL projects and you would approve.



    Nice of you guys to tell BSD devs about MS-DOS seekdir/telldir bug workaround when you guys found the bug. Oh, wait. You didn't. Not your job I suppose and I dunno if they count as upstream, downstream or just not all that important regardless.



    Your accusing others of wasting time because you guys opted for GPL is an amusing pattern. I remember you kvetching about userland API access in Solaris and Sun wasting their time (which of course would have been far better spent supporting you) reinventing the wheel with native cifs support in their kernel. I recall you being such a whiny little brat that Alan had to bitchslap you for being such a drama queen on his blog.



    Why do folks "reinvent the wheel"? Because the wheel you provide comes with shackles...so much for being "free".



    "When the shoe fits." - no, it's still rather childish I'm afraid.



    Still, I do see that you have some history to recount, as you seem to know Alan. Are you someone I know and have worked with at Connectathon or the SNIA events perhaps ? You don't have to hide behind a pseudonym. I don't. As I recall we had an interesting and lively discussion on Alan's blog. You don't need to resort to words like "bitchslap" to make a point. Correct language is usually enough when you have the facts on your side.



    We told the *BSD developers about the telldir() bug many years before it got fixed on that platform. We didn't write such a workaround lightly, and tried for several years to get them to acknowledge it as a problem, and create a fix. Unfortunately it was an Apple employee (who shall remain nameless, as he doesn't work there anymore :-), who was on one of the *BSD core teams, who assured us that what *BSD was completely POSIX compliant, and we would just have to work around it.



    Still I'm glad they eventually fixed it :-).



    Yes, Sun's efforts would have been better spent working with us on Samba, as I pointed out to them before they even licensed the AS/U code from AT&T. All of their work seems to have given them little traction in the storage space. Most products out there are still based on Samba, and even OpenSolaris OEM's (other than Oracle of course) are looking to move off Sun's (more accurately the code they purchased) rather poorly architectured kernel implementation.



    The good thing about the external forks of OpenSolaris are that they remove Sun's rather obstructionist attitude, and allow us to be more creative when working with the external OpenSolaris community. I'm sure you're looking forward to what we come up with :-).



    Jeremy.
  • Reply 63 of 107
    Quote:
    Originally Posted by nht View Post


    You mean where they blew the doors off the SPECsfs benchmark...for NFS speeds? Where's the benchmarks for CIFS?



    http://www.spec.org/sfs2008/results/sfs2008.html



    If you have the benches to show that Samba is faster than Solaris CFIS feel free to post them.



    Unfortunately I'll have to wait until IBM sees fit to publish what they have. Still, I work closely with developers on the Team so I'm rather confident :-).



    Jeremy.
  • Reply 64 of 107
    Quote:
    Originally Posted by nht View Post


    Well, Apple doesn't seem too keen on CDDL solutions either but they could go with a port of CFIS and grab ZFS if so inclined. Not likely as they are rumored to be building their own next gen filesystem.



    They certainly have the resources to buy and tailor a commercial solution as well or strike a deal with Microsoft. Samba took YEARS because no one was pouring much cash into the development. There's maybe 30-40 commiters for Samba with a core team of a dozen or so. That's like 20 times the size of the Gimp team (2 devs) but it's not all that as I don't think Samba is corporate sponsored with full time corporate devs. Jeremy will correct me if I'm wrong.



    Ohloh vastly overestimates the effort and cost for projects. (I have a good feel for how much the ones I worked cost and the Ohloh estimates were insanely high...how? Because I actually knew the staff years that went into them and the salaries of the coders involved.



    So using their numbers as the worst case replicating Samba is 371 staff years and $20M. Cost wise that's chump change for Apple and they can buy a commercial implementation that will be 80% of what they want.



    There are some sponsored full time corporate devs. About 3-4 working on the Samba3 codebase, and about 2-3 working on the Samba4 AD server. So that's not quite as large as you estimated, but in the right ballpark.



    I think you're approximately right on the estimation to reproduce Samba, it's not that hard (at least for SMB2, SMB1 is a little trickier because of all the special cases). The hard part of working on Samba was *discovering* all the implementation details when working with the Microsoft clients. Once that information is out there it's pretty easy to read from the Samba code and replicate using our test suites.



    The good reason for using Samba is that most of the core original developers are still working on it. Even Microsoft don't have that (all their devs made too much money and quit years ago :-). Having that history with the protocols and implementations and so being able to fix things quickly is one of the intangibles that makes Samba more useful and valuable to corporations (IMHO of course).



    Jeremy.
  • Reply 65 of 107
    nhtnht Posts: 4,522member
    @jeremy As far as I know we've never met unless it was at a GSOC conference/meetup/whatever. All of my OSS stuff is in a completely different domain.
  • Reply 66 of 107
    mrstepmrstep Posts: 513member
    Quote:
    Originally Posted by hezetation View Post


    You're probably wasting your breath, the GPLv3 crowd I think is stuck in their utopian fallacy where everyone just shares software code for free & you never have to pay for anything ever again. OpenSource has been a huge success in large part because of the willingness of corporations to contribute to it, now with GPLv3 it will go the way of the hobbiest again & we'll go back to the old days or proprietary solutions that don't work together well. Congrats, you just gave Microsoft their comeback, they're already locked into the proprietary game.



    It's actually really funny, in its own strange way. I was just reading about the latest Debian distro having install problems if you have hardware that doesn't have... wait for it... open source FIRMWARE! Yep, got to find an open source firmware if you want that ethernet / video / whatever to work with their install package. Stallman and the GPLv3 folks are pushing the envelope of killing their own movement.



    In terms of their utopian vision, it has essentially backfired, and I assume they're trying to address the now traditional problem with Open Source which is that companies, not end users, end up being the biggest benefactors. Companies have mostly not had to pay for the Open tools they use, but certainly have been profiting from them - and users STILL end up with something proprietary that they can't modify and examine at will. Of course, the idea that most users have any interest in doing so is part of Stallman's bizarre world-view to begin with.



    And in some cases companies invest in FOSS - like, say, Apple and WebKit - and then have someone else come along and pick it up, re-package it, and push it as their own (Chrome!). Hey, speaking of companies that could afford to pay... Anyway, I guess I'm just too 'pro-prietary'.
  • Reply 67 of 107
    Quote:
    Originally Posted by lowededwookie View Post


    ...

    I had a feeling Mac OS X Server was going to be rolled into Mac OS X and distributed as a simple server for home networking. I felt it when Apple released it with the Mac Mini Server, it felt more likely when the iPad was released, and seemed to make more sense when Apple ditched the XServe.



    I so can't wait for this release.



    I should have seen it coming too. Apple 'thinks' strategically and dumping XServe seemed isolated.

    Smart move.



    J.
  • Reply 68 of 107
    cjrcjr Posts: 6member
    Quote:
    Originally Posted by Booga View Post


    They could easily have licensed a bunch of source from Microsoft. Or not... cifs isn't exactly rocket science, especially when you have Apple's resources.



    There are other open source CIFS implementations. Sun bought one and open sourced it; it is in OpenSolaris/OpenIndiana and Solaris 11.



    Apple had no problems with the CDDL license attached to dtrace, so should have no problems with the CDDL license on Sun's CIFS code.
  • Reply 69 of 107
    Quote:
    Originally Posted by mrstep View Post


    It's actually really funny, in its own strange way. I was just reading about the latest Debian distro having install problems if you have hardware that doesn't have... wait for it... open source FIRMWARE!



    Firmware is just another name for what you refer to as a "driver" - they can't legally distribute a GPL product with non-gpl drivers. And if you keep up with any of that stuff, binary "blob" drivers are looked down upon because they usually suck.



    Quote:

    And in some cases companies invest in FOSS - like, say, Apple and WebKit - and then have someone else come along and pick it up, re-package it, and push it as their own (Chrome!). Hey, speaking of companies that could afford to pay... Anyway, I guess I'm just too 'pro-prietary'.



    You received free, you give free. Chrome is mostly BSD anyhow. If apple or anyone else wanted they can take all the improvements for themselves.



    I know that's totally evil for the people here, but whatever.
  • Reply 70 of 107
    d-ranged-range Posts: 396member
    Quote:
    Originally Posted by [email protected] View Post


    Hate to drag you back into the real world, but IBM, Netgear, CISCO, Google, Symantec and other are regular contributors to GPLv3 Samba, and have products based on it, or using it. It's a shame Apple doesn't feel confident enough to do the same (especially since they employ a Samba Team member with direct commit access to our repository) but that's their call.



    Cheers,



    Jeremy.



    I think that -even despite the fact that you are so close to the fire as a Samba dev- need to be dragged back into the real world yourself. The fact that some companies contribute and use some GPLv3 code for some things, does not imply GPLv3 is not preventing other companies to do the same for other things.



    Example from 'the real world': I've been working as a software engineer at various companies for about 10 years now, all of them who created very specific, industrial software, all related to IC design and production. All software full of highly confidential and/or patented, non-trivial technology that can impossibly be 'shared' or licensed with anyone because it's exacly, you know, what they make their money from. At all these companies even GPLv2 was considered 'toxic' and it was absolutely out of the question that GPLv2 code was used in anything but standalone, low-risk simple front-end stuff. MIT license, BSD license, all of them no problem at all, but commercial companies are allergic to GPL code and will avoid it as much as possible.



    Now as I understand (I don't know all the details) GPLv3 is even more restrictive. Hence, you can be 100% sure that this means that by licensing your code under GPLv3, many companies, especially software companies, will avoid your software like the plague. Using it to solve common practical problems is fine, but using it to build your software around: out of the question.
  • Reply 71 of 107
    Quote:
    Originally Posted by CraigAppleW View Post


    I know little about the topic. But I wonder aloud:

    1. Apple has seemed less than committed to professional users lately. Is this another sign?

    2. Apple discontinued it's pro Mac server...is this related?

    3. One can only wonder how committed Apple is to mixed networks. They seem increasingly proprietary.

    4. Could Apple just be playing hardball/chicken with the Samba people?



    I will be needed to invest in a robust mixed network in the next year. I wonder how this will impact us little guys who aren't network gurus.



    1. In what way is it a sign? And a sign of what, exactly?

    2. Goto the Apple online store, click on MacPro, notice how one of them says server? it's actually a new addition. The XServer is also still alive and kicking.

    3. The only proprietary networking I see in OS X is afp. Other than that, it has everything else.

    4. Apple are very picky with their licenses and they obviously don't like the GPLv3. Plus, with this new, in house tech, they have complete control over it rather than waiting for an open source team to complete it when they feel like it.



    This is beneficial in every way I can think of.
  • Reply 72 of 107
    Will the new SMB include the DFS client functionality?
  • Reply 73 of 107
    tallest skiltallest skil Posts: 43,388member
    Quote:
    Originally Posted by benanderson89 View Post


    2. Goto the Apple online store, click on MacPro, notice how one of them says server? it's actually a new addition.



    Much larger and less easily rackable, but sure, "new addition".



    Quote:

    The XServer is also still alive and kicking.



    If by 'alive' you mean 'discontinued' and by 'kicking' you mean 'removed from the Apple Store', then yes.
  • Reply 74 of 107
    Quote:
    Originally Posted by d-range View Post


    I think that -even despite the fact that you are so close to the fire as a Samba dev- need to be dragged back into the real world yourself. The fact that some companies contribute and use some GPLv3 code for some things, does not imply GPLv3 is not preventing other companies to do the same for other things.



    Example from 'the real world': I've been working as a software engineer at various companies for about 10 years now, all of them who created very specific, industrial software, all related to IC design and production. All software full of highly confidential and/or patented, non-trivial technology that can impossibly be 'shared' or licensed with anyone because it's exacly, you know, what they make their money from. At all these companies even GPLv2 was considered 'toxic' and it was absolutely out of the question that GPLv2 code was used in anything but standalone, low-risk simple front-end stuff. MIT license, BSD license, all of them no problem at all, but commercial companies are allergic to GPL code and will avoid it as much as possible.



    Now as I understand (I don't know all the details) GPLv3 is even more restrictive. Hence, you can be 100% sure that this means that by licensing your code under GPLv3, many companies, especially software companies, will avoid your software like the plague. Using it to solve common practical problems is fine, but using it to build your software around: out of the question.



    I've been doing this for nearly 30 years, both proprietary and Open Source, so I think I have a wider perspective about this, also from "the real world" :-).



    I wasn't talking about all software for all things being GPLv3. There are a range of licenses designed to do a range of things. I happen to think GPLv3 is a great license to collaboratively build an SMB/SMB2 server, and the companies I mentioned agree, and participate. It's a shame Apple don't think the same way, but that's just life.
  • Reply 75 of 107
    nhtnht Posts: 4,522member
    Quote:
    Originally Posted by cjr View Post


    There are other open source CIFS implementations. Sun bought one and open sourced it; it is in OpenSolaris/OpenIndiana and Solaris 11.



    Apple had no problems with the CDDL license attached to dtrace, so should have no problems with the CDDL license on Sun's CIFS code.



    Hmmm...I thought licensing was why they dumped ZFS. Perhaps it was the potential patent issues but I thought that got resolved.
  • Reply 76 of 107
    d-ranged-range Posts: 396member
    Quote:
    Originally Posted by [email protected] View Post


    I've been doing this for nearly 30 years, both proprietary and Open Source, so I think I have a wider perspective about this, also from "the real world" :-).



    I wasn't talking about all software for all things being GPLv3. There are a range of licenses designed to do a range of things. I happen to think GPLv3 is a great license to collaboratively build an SMB/SMB2 server, and the companies I mentioned agree, and participate. It's a shame Apple don't think the same way, but that's just life.



    I'm not saying GPLv3 is bad or that Samba should not use it, just that it would probably see more use and more contributions if it had a license more like the BSD license. That would allow software companies to actively incorporate and contribute to the project instead of just using it as-is and deploying it alongside the stuff they write themselves. The example I gave where software companies often shun GPL licensed code or try to work around it in ways that allows them to use GPL code without 'infecting' their own codebase was just meant as an example to show how GPL licensing *does* in fact limit usefulness for other companies than just Apple.



    The fact that GPLv3 asks even more 'freedom' from people using GPLv3 licensed code does not really help here. After everything I've read about GPLv3 I'm still not sure what good it brings compared to GPLv2.
  • Reply 77 of 107
    Quote:
    Originally Posted by nht View Post


    Hmmm...I thought licensing was why they dumped ZFS. Perhaps it was the potential patent issues but I thought that got resolved.



    I don't think it was the licensing but rather the lawsuit between Sun and NetApp that scuttled that ship.
  • Reply 78 of 107
    Quote:
    Originally Posted by d-range View Post


    I'm not saying GPLv3 is bad or that Samba should not use it, just that it would probably see more use and more contributions if it had a license more like the BSD license. That would allow software companies to actively incorporate and contribute to the project instead of just using it as-is and deploying it alongside the stuff they write themselves. The example I gave where software companies often shun GPL licensed code or try to work around it in ways that allows them to use GPL code without 'infecting' their own codebase was just meant as an example to show how GPL licensing *does* in fact limit usefulness for other companies than just Apple.



    The fact that GPLv3 asks even more 'freedom' from people using GPLv3 licensed code does not really help here. After everything I've read about GPLv3 I'm still not sure what good it brings compared to GPLv2.



    Oh I understand that GPL licensing limits the use for some companies, but I still think it was the right choice for Samba. You have to remember the context - back in the early 1990's DOS and NetWare were kings, Windows and SMB were up-coming technologies, but Microsoft (and IBM of course) refused to release the documentation describing how it worked. There were several proprietary versions that were also written without help from Microsoft. The third-party SMB market was fragmented and no one understood all of the proprietary technology.



    Samba unified these implementations into one. I think the reason we were able to do this was due to the GPL-share-alike provisions. Had we been permissively licensed the temptation for companies to discover one more "secret" bit of the protocol and keep it to themselves would have been overwhelming. Remember, it's not like Apache where most the protocols they were implementing were open. We're now at the point where it's now significantly easier to reproduce an SMB server - partly due to Samba being FLOSS (and thus readable) and our test suite (which Microsoft now use for Windows), partly due to Microsoft's documentation dump after the EU lawsuit. So we're kind of a victim of our own success here :-). Still, that's not a bad place to be.



    The main good GPLv3 brings over GPLv3 is better software patent protection for the project. If you've been following the news recently I hope you see why this is becoming more and more important. Sort of off-topic, but software patents really are a threat to all software engineers, they don't distinguish between open source or proprietary code :-(.



    Jeremy.
  • Reply 79 of 107
    cjrcjr Posts: 6member
    Quote:
    Originally Posted by nht View Post


    Hmmm...I thought licensing was why they dumped ZFS. Perhaps it was the potential patent issues but I thought that got resolved.



    Apple and Sun haven't said why Apple dropped ZFS. The best rumours were to do with patent liabilities, but also ZFS wasn't very good at handling things like removable drives, that Mac users expected to "Just Work".



    As Apple had already put CDDL code (dtrace) in the kernel and system libraries I don't think CDDL was the issue.



    An ex-Apple filesystem guy is beta testing a Mac ZFS solution at http://tenscomplement.com/ if you're interested in ZFS. There's also the mac-zfs project at http://code.google.com/p/maczfs/
  • Reply 80 of 107
    Quote:
    Originally Posted by d-range View Post


    I think that -even despite the fact that you are so close to the fire as a Samba dev- need to be dragged back into the real world yourself. The fact that some companies contribute and use some GPLv3 code for some things, does not imply GPLv3 is not preventing other companies to do the same for other things.



    Example from 'the real world': I've been working as a software engineer at various companies for about 10 years now, all of them who created very specific, industrial software, all related to IC design and production. All software full of highly confidential and/or patented, non-trivial



    ...








    None of what you are saying is the least bit relevant. We are talking about the reverse engineered version of someone else's file system here. This isn't the hot new arcane technology we're talking about. This is simple stuff that everyone needs to be able to share and use to communicate.



    SAMBA is the perfect example of something that is outside of the core business and is so far removed from your core competitive advantage as a company, that there is no value in keeping it proprietary.



    There really is ZERO value to there being any proprietary aspects associated with it.



    That includes both the source code of the implementation as well as any underlying patents.



    Apple simply shouldn't be doing anything that makes the GPL3 a problem.



    At this point, Apple users should be scared and suspicious rather than making up all sorts of lame excuses. Of course they are not but that's another matter.



    If anything, this seems to be part of a larger strategic move away from open systems. Apple has begun to focus primarily on systems that are inherently hostile to Free Software (even of the GPL2 variety).
Sign In or Register to comment.