Apple Plans To Release Rendezvous As Open Source
Snuffub writes "According to MacCentral, Apple announced during an interview today that they would be releasing Rendezvous, their implementation of the zeroconf standard, under an open source license. I can't see this as being anything but great news for everyone involved -- the community gets a mature implementation of an emerging technology, and Apple benefits as more devices are created to support Rendezvous. For everyone interested, you'll be able to download the source from Apple's site in a couple weeks." uglyhead69 adds: "The article is light on details and doesn't mention what license will be used, but it's probably safe to assume that it's the APSL."
I believe Windows XP's Universal Plug and Play is similar to this... it auto-discovers network components, such as gateways, etc and allows the OS to determine the external IP address, for example, which is useful in some applications. But this seems a whole lot cooler... and now that it's open source, hopefully we'll see it get integrated into a lot more OSes. Apple is really good when it comes to the "innovation" and "ease-of-use" way of doing things.
I'd really like to be able to take my iBook (or any networked laptop, really) into a public place with the AirPort card turned on and have it not only pick up a base station signal, but every once in a while send out a signal over the wireless card to see if there are any other non-base-stationed wireless cards present that might want to hook up for a small wireless mini-LAN. This sounds like the kind of thing Rendezvous would be a great start for. It'd be a good way to meet people, too. Set up your machine with a little program that does the 'ping' for other machines and advertises whatever it is.
Ping.
iBook, OS 10.2, anyone around?
It'd be like combining Wardriving with those weird "Beep if someone you'll consider hot is nearby." things they were selling in Japan a while ago.
My own pointless vanity vintage computing page
I like to think of Rendezvous as a much smarter analogue to NetBEUI, which I often refer to as the "butt sniffing protocol" that Windows machines use to detect each other in the absence of IP networking.
"There is no night so forlorn, no mood so bleak, that it cannot be infused with pleasure by tender meat..." - R.W. Apple
You know, it is funny you mention that, because I've been wondering if/when Apple might introduce automatic clustering. The way I understand it, the threading implementation in Darwin is such that threads can not only be transferred between processors, but also between computers too. Rendezvous could let you find all the other computers on the network that will let you run code (in a sandbox, perhaps) and automatically throw threads to them if it will help.
Imagine the Photoshop benchmarks if everything was spread across a rack of XServes!
<DUCKS>
--
The internet is the greatest source of biased information in the history of mankind.
As I read the APSL, it's simply and open licence that also ensures that Apple remains removed from you. That seems perfectly reasonable. GNU doesn't like it because of the termination clause, but when you think about it, it's entirely nessesary. What if a version with your modifications becomes the norm, even becomes packaged with Apple machines. If that happens, and you get accused of infringing on someone elses patented work, Apple could be in serious trouble. By terminating the agreement and stopping distribution of your code, Apple can keep themselves free from you. Just because they terminate does not mean they will sue you. As near as I can tell, the APSL is a very very open license for a corporation and is what we arround here might call a Good Thing (TM).
OTOH, I seem to have picked up a flaw in the GPL, which may be the reason corporations have been slow to take up software released under the GPL. If as you say, proprietary or APSL and other less open licensed software was not permissable within GPL software, many companies would not want to take up that software. The reason being is many companies develop their own private modifications to software. For example, I worked for a time at a well know power company which shall remain nameless. This company had a software suit which they had purchased which provided for the creation and movement of troubleshooting "tickets". The software in it's basic form was useable, but the company had other needs. They wrote modifications to the software (with the original creators permission) to run within their networks and throughout the company. If under a GPL license the company would have had to opensource their modifications and release them under the GPL, the company would not have taken up the GPL software.
Freedom is a good thing, but forcing people to open their code is almost as bad as the closed code is.
T Money
World Domination with a plastic spoon since 1984
This might be a bit redundant, but it seems to me that the most interesting thing about all this is that Apple seems to have hit on a business model that actually makes money off open source software. First came OSX, which isn't really much more of a modifed PPC port of FreeBSD (Darwin) with a wicked nice (and nicely engineered) GUI (Aqua) slapped on top. Now we have Rendezvous, where Apple is making their implementation of an open standard open source, in hopes that its broad adoption will encourage people to buy Apple's software. Imagine what these guys could do with Ogg. . .
So maybe the moral of the story is this:
Of course, you can't attribute all (or even most) of Apple's financial success to their OSS endeavours, but (and I speak from personal experience here) OSX has changed Macs from cute little toys to a viable and intiguing alternative to x86 hardware. And if Rendezvous takes off, not only will it be a boon for the community, but Apple could do quite nicely as well. In the end though, Apple might be a pretty unique case: Apple is primarily a hadware vendor, and Apple's involvement with OSS primarily adds value to the hardware it sells (I'll buy a TiBook because it's the only game in town for running OSX), and there aren't a heck of a lot of hardware vendors who are in a position to duplicate what Apple is doing.
Apple have adopted open standards in just about everything they've done without trying to damage them a la M$ & Kerberos. I've seen plenty of Embrace but absolutely no Extend nor Extinguish. Please point some out ...
They've based their entire OS core on BSD/Mach and then went on to release the sources, including those of the usual services. I just downloaded bootpd a minute ago, BTW.
Alison
"It is a miracle that curiosity survives formal education." - Albert Einstein
...if the so-called "community" would spend less time playing wannabe lawyers arguing about licensing minutiae and spend more time developing new applications for users. The users you need to attract have never heard of Richard Stallman, buy shrinkwrapped software (including Linux, if and when they do use it), and judge an OS by the quality and range of applications available to run on it.
/. insults to users as too stupid to know what's good for them. In reality, they decide your future.)
Endless iterations of the same traditional Unix toolset, tools for the server side, and attempts to mimic Office and the Windows interface, won't cut it. Be imaginative.
When I've tried to explain Linux to people who make corporate buying decisions, their questions boil down to: Why buy a cheap knock-off when the real thing is available?
(Please try to refrain from the usual
-- Slashdot: When Public Access TV Says "No"
You raise some points that call for rebuttal. (If you see me ignoring them, it means I think they're not worth rebutting.)
> What's wrong with TFTP or NFS or any other network filesystem?
Ever tried to deploy a distributed NFS server? By that I mean: if the primary NFS server goes down, a secondary automatically and transparently serves as a replacement without the NFS client ever having to be redirected? Such things exist. None of them are cheap.
> Then what do you call it? Because using a database sounds like a very good
> way to maintain cache coherency. You would rather state be strewn across the network?
You *already* have state strewn across the network, i.e. the availability states of the various processes that comprise the distributed system. Why try to maintain a cache of that state in a database when the processes can use the network to discover and locate one another directly?
Have you every tried to deploy a replicated database manager? Every transaction on the database must be ACID for this to work with high reliability. (ACID is an acronym, stands for Atomic Consistent Independent and Durable.) Easy to do with a monolithic database manager. Much harder to do with a replicated system. Again, such things exist. None of them are cheap.
My point: distributed systems with more single points of failure provide less reliability than systems with fewer. Rendezvous eliminates an important single point failure mode.
--
jhw