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 think Apple should allow the Open Source developer community access to the code bacause ...
oh wait. they already have?
Wearing pants should always be optional.
Recent interview post here. Stuart is awesome (he wrote Bolo).
The last Stevenote showed this off, a PowerbookG4 being walked in range of a Rendezvous enabled HP printer, they were configured on the fly by the OS and in seconds they were able to print to it. No wires, multiple users, no configuration. Besides iTunes p2p music library (it automatically locates other Rendezvous enabled Mac's and adds their music library to yours, streaming wise, it doesn't actually transfer the music ;) )
Many, many possibilities here.
From Apple's point of view, anything that puts Microsoft outside a large pool of functionality is good. Essentially, it's an attempt to conduct a reverse embrace and extend. Take something that was already there, improve it, then give it back.
Apple isn't doing this out of selfless motives. But the fact is, they're doing it. Pretty cool indeed. I've been using 10.2 since the public release, and I'm impressed by Rendezvous, and I can't wait to use it with Linux as well.
Read the EFF's Fair Use FAQ
I implemented one of the Zeroconf internet drafts on Linux for a class project. It can be found here. :)
It is in no way a complete implementation, but got me an 'A' grade
The statement below is true.
The statement above is false.
Suppose you want to write a distributed system.
Lots of processes running on an array of machines. Say for example you have a data center full of racks of 1U servers, and each one is cranking away on some part of the application code. You have redundant processes scattered around too, so if one machine takes a dive, you want the whole application to stay up and running anyway.
Imagine you're the administrator of this system. How do you tell each little process in the system what IP address and TCP port to use so that every other process in the system knows where to find it?
Without Rendezvous, you have several options-- all of them unappealing. You might start with some kind of application specific configuration file format and a cobbled-together system for distributing such data around to all the hosts in the system. You might instead store such network configuration in some directory server on the network, like DNS or LDAP or some kind of custom front end to some kind of evil database backend.
Either way, you quickly encounter what we veterans like to call "the cache coherency problem," i.e. the information in the directory must be consistent at all times with the actual state of the processes in the system. Whenever processes start, stop, migrate or change their profile, you have to update the directory. Solving this problem with existing technology can be expensive. If you don't solve it, then single-point failure modes proliferate and the system becomes exponentially more difficult to manage the larger it gets.
With Rendezvous, the network itself is the directory service. Since all the little processes in the system are responsible for their own advertisements, there is no cache coherency problem. You don't have to assign addresses and ports to all your processes because the application can simply assign itself a set of abstract service names and discover all the instances of those services on the network with Rendezvous service discovery. No configuration files to keep updated. No dynamic updates to LDAP or DNS servers that might get overloaded, or may not be running or in the right place when they need to be.
Of course, there are alternatives to consider. You might think to use SLP (RFC 2608-2610), which you can download now from www.openslp.org, but strangely... SLP hasn't managed to get much traction in industry. Some say that's because it's too unwieldy to use effectively.
You should compare Rendezvous with OpenSLP and see which one you think is better.
--
jhw
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
hand me-downs. You mean like:
The Floppy Drive, no we had that first
The home computer, no we had that first too
The mouse, no we had that one first
The GUI, no Xerox had that but didn't want it, we got it and made it good.
Oh I know SCSI, no wait, that was another first for us.
You must mean USB, well yeah Intel developed that first, but they just sat on it, Apple ran with it and wow, now look where it is.
Oh you mean 64 bit processors for consumers, no wait that was us too.
You must mean M$ programs, no wait we had those first too.
Oh well
T Money
World Domination with a plastic spoon since 1984
I don't think you understand what Rendezvous does very well at all. It does not allow remote execution of code; it enables you to advertise and discover services on the network.
This means you don't need to know IP addresses and well known ports, or run port scanners to discover services. If your machine doesn't want to be found by Rendezvous, don't advertise your services with it.
One key thing that makes it smarter than UDDI and the like is that it is service-centric, not device-centric. You don't have to find a machine and try to open special ports to see if it has a webserver or SLP printer or SMTP relay or whatever, instead, you ask for a service that you already know the protocol for, and you find out if any devices that implement it are available.
...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"
Billy Gates wrote:
3 229) that gives my reasons for believing that Apple did not use the DMCA. If OWC wants to change my mind, they can show me the letter from Apple legal that mentions the DMCA.
h tml) on open source databases.
> According to news.com [com.com]apple is using
> the dmca
Yesterday, I wrote a posting "First version of this story did *not* mention DMCA" (read it at http://slashdot.org/comments.pl?sid=38907&cid=416
> to make sure its itools software does not work
> with any other dvd player but there own internal
> ones
This has nothing to do with iTools (which kinda indicates that you might not have read the article you are refering to). Apple created *iDVD* to sell their SuperDrive equipped Macs. OWC was trying to warp iDVD so they could use it to sell OWC's own DVD drives. OWC was stealing Apple's work, against Apple's license, in order to compete with Apple in the DVD drive market. Apple is the victim here.
> Apple does not care about the opensource
> community
Ha! They have released Darwin and Quick Time Streaming Server (and next month Rendevous) as open source.
OS X includes such well loved open source and free software as GCC, Emacs, Apache, and Perl.
They provide documentation on using open source, such as this page (http://developer.apple.com/internet/macosx/osdb.
And Apple ships with Macs (compressed on the hard drive but available and free for install) and in the OS X retail boxes a free copy of their development suite (which now includes GCC 3.1). Upgrades are free for the download, or $20 for a FedEx-ed CD. This enables any Mac user that wants to, to develop as much open source as their little heart desires, without having to pay for development tools.
> like Enron care about profits above all else.
Companies have to care about their profits because their first duty is to their shareholders. But in order to get those profits (and they have to be real, not cooked books), they have to care about their customers and keeping them happy.
Apple does care about their customers, their shareholders, and even tries to benefit the industry as a whole (Firewire, Rendevous). In contrast, Microsoft takes their customers for granted, uses them, manipulates them, treats them like criminals. Microsoft also doesn't pay shareholders dividends, and their stock prices are no longer going up and up. Microsoft acquired more congresscritters than Enron, because they donated three times what Enron did in the 2000 elections. You can compare one of these two companies to Enron. The one isn't Apple.
BTW, thank you Apple, for gifting Rendevous to the open source community. It was an unexpected, and most pleasant surprise.
Yatta Jaguar!
"It's a miracle! The sea water has once again created new life."
Moll, "Rebirth of Mothra 2"