Slashdot Mirror


Apple Releases Rendezvous for Linux, Java, Windows

mblase writes "Apple released yesterday a developers preview of their Rendezvous technology for Windows, Linux, FreeBSD, Solaris and Java. Rendezvous is an open protocol which uses industry standard IP protocols to allow devices to automatically find each other without the need to enter IP addresses or configure DNS servers." Reader xxdarkxxmatterxx adds a link to a story at Macworld about the release."

32 of 426 comments (clear)

  1. Re:This sounds like they are getting ready by Anonymous Coward · · Score: 3, Informative

    XCode uses distcc for it's distributed compiling, distcc isn't rendezvous aware by default though, so you'll have to configure it yourself.

  2. Re:Cool. by MachineShedFred · · Score: 4, Informative

    If you look at it using a sniffer like ethereal, it's actually multicast DNS, so it will work with either IPv4 or IPv6 as it's a layer-4 thing.

    --
    Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
  3. Re:Everything working together? by switcha · · Score: 3, Informative
    Not sure of the implementations for Linux and Windows, but all of the Rendezvous stuff that I use can be turned off, app by app.

    iChat can be set to not look for Rendezvous clients, iTunes can be set to not look for playlists (or broadcast them), Safari can be set to not seek other bookmarks, printing can be set to not seek printers, or the whole protocol can be shut down. I personally only use it for iChat at work, and it never gets in the way or is annoying with anything else.

    --
    You know what? ... A little club soda *did* get that out!
  4. I should point out... by AusG4 · · Score: 5, Informative

    For anyone who is interested, Rendezvous is Apple's implementation of of ZeroConf

    While Apple's Rendezvous overview gives some decent information, the ZeroConf site provides a lot of good technical resources.

    Apple really needed ZeroConf as they transitioned to all-IP networking. Although OS X supports AppleTalk, the AppleTalk protocol has clearly seen it's day and the world is clearly moving to IP-only. Previously, when Macintosh machines were largely communicating via AppleTalk, all of the things that ZeroConf addresses were handled by the AppleTalk protocol suite (service discovery, address allocation, etc), and this ease of use that is signature to the Macintosh is important for Apple to maintain.

    That said, Apple releasing this code is pretty significant, as aside from this project, there hasn't been much use of ZeroConf in the wild.

    --
    bash-3.00$ uname -a
    SunOS panda 5.10 Generic sun4u sparc SUNW,Ultra-2
    1. Re:I should point out... by MasonMcD · · Score: 3, Informative

      Also note that Stuart Cheshire is the brainchild of ZeroConf, and he works for Apple, so Rendezvous isn't some hobbled, second-hand implementation of ZeroConf, but from the horse's mouth.

      Here's the history of ZeroConf:

      The initial seeds of Zeroconf started in a Macintosh network programmers' mailing list called net-thinkers, back in 1997 when I was still a PhD student at Stanford. We were discussing the poor state of ease-of-use for IP networking, particularly the lack of any equivalent to the old AppleTalk Chooser for browsing for services. I proposed that part of the solution might be simply to layer the existing AppleTalk Name Binding Protocol (NBP) over UDP Multicast.

  5. Re:Apple supports Internet Explorer??? by jdawg · · Score: 3, Informative

    Actually, iTunes on Mac doesn't use the WebKit either. The music store is all done with QuickTime, which is why iTunes for Windows also installs QuickTime. For more info, see Hyatt's blog-post about this:

    http://weblogs.mozillazine.org/hyatt/archives/20 04 _06.html#005666

  6. Rendezvous for Pocket PCs by drazvan · · Score: 5, Informative

    We've launched this only a few weeks ago: Pocketster. It contains an implementation of Rendezvous for the Pocket PC and it also gives you wireless filesharing capabilities (we have a new version coming out on July 6th). It's free, so give it a try if you want (that is if you have a Pocket PC). Also, you might want to check JmDNS (Java version of Rendezvous) and Howl for a Windows implementation. Razvan

  7. Re:So let's see... by webguru4god · · Score: 4, Informative
    Rendevous is some what like making each computer a DNS/DHCP/Directory server, however that's not completely accurate. Rendevous exists as an alternative to those servers for use in environments where either DNS/DHCP is not available, or is not advantageous to configure.

    A prime example of Rendevous is two Powerbooks in a cafe, both with Airport wireless. You can set up an Ad Hoc wireless network between these computers, and they will auto configure their IP's and other information so that they can talk to each other. Then open up any Rendevous enabled app and you'll be able to see the other users resources, i.e. bookmarks, printers, music, etc.

    So Rendevous is not designed to replace DNS/DHCP, but merely to find a way for network configuration when there is no established network structure. Rendevous also works on networks where DNS and DHCP are available, without any change. This is really the beauty of it, because it can determine what configuration is necessary and do whatever needed to get the computers networked, all transparently!

  8. Re:So let's see... by dOxxx · · Score: 5, Informative

    Rendezvous is based on a few underlying services: Dynamic Configuration of IPv4 Link-Local Addresses, Multicast DNS, and DNS-based Service Discovery.

    Dynamic Configuration of IPv4 Link-Local Addresses: In the absence of a DHCP server, the machine is able to configure itself with an IP address in a reserved range such that it doesn't clash with other IP addresses configured by other machines on the same network in a similar manner.

    Multicast DNS: Multicast DNS Responder services on each machine respond to multicast queries for their DNS information.

    DNS-based Service Discovery: Querying for the existence of services (HTTP, FTP, SSH, etc.) via DNS.

    So, in a sense, "everything is a DNS/DHCP/Directory server" but only for the information and services provided by that particular machine.

  9. Re:DNS-SD by cbiffle · · Score: 3, Informative

    Close, but with one exception:

    The SD component of Rendezvous doesn't use DNS servers per se. Any machine that has services (and that can be any node on the net) advertises these services using multicast DNS.

    mDNS is used both to advertise available machines, and the services on those machines. So, essentially, the service-discovery component of Rendezvous is a decentralized, local-link DNS service -- it even uses the DNS protocol (albeit multicasted).

    And for the people who keep bitching about UDP broadcasts: first of all, multicast != broadcast. But more to the point, I haven't found Rendezvous to be particularly chatty; Apple claims in its docs to have gone to lengths to prevent it from spamming the network. (The developer docs include some thinly veiled references to NetBIOS.)

  10. Re:WOW! by Cajal · · Score: 5, Informative

    UDP traffic is pretty lightweight. ZeroConf is basically just some ICMP traffic (when the nodes are assigning themselves addresses) and then DNS. Apple's implementation will aggressively cache query results, and the devices incremementally scale back their announcements.

    Another nice feature is that nodes can cache the results of other nodes' queries. Since all of the DNS traffic is mulitcast on the local subnet, every node sees every query and every response. Apple's code expolits this to further reduce the need for duplicate queries. It's a pretty nice setup.

  11. Re:Apple intruding on MS's territory? by MrLint · · Score: 4, Informative

    IIRC HP has had rendezvous support in their printers for a while now.

  12. Re:Apple intruding on MS's territory? by XMyth · · Score: 4, Informative

    It's not the concept that is a security hole...it was (is) all the buffer overflow/run exploits in Microsoft's UPnP implementation.

  13. Re:Apple intruding on MS's territory? by falcon5768 · · Score: 4, Informative
    BTW Active desktop was copied from Apple system 6... and there are already a few major and minor companies using Rendezvous most notably HP....

    No one is using UPNP that I know of.

    --

    "Slashdot, where telling the truth is overrated but lying is insightful."

  14. Some links by Midnight+Thunder · · Score: 3, Informative
    Here are some links that might be of interest:
    • jmDNS - Java implementation of mDNS - the technology that makes up Rendezvous. It was formerly known as jRendezvous by Strangeberry
    • Zeroconf - more about the technology that Rendezvous implements
    --
    Jumpstart the tartan drive.
  15. Re:Apple intruding on MS's territory? by mrtrumbe · · Score: 4, Informative
    As far as I can tell, UPNP is the superior technology.

    Many would disagree. O'Reilly wrote up a good piece about the two technologies a while back. Its a good overview of what they offer and the pros and cons of each.

    A quick rundown? Zeroconf (Rendezvous) provides a way to discover services and addresses automatically, without address duplication by multiple devices. UPnP does the same thing. The difference is that UPnP also dictates HOW to talk to devices and services, while Zeroconf forces devices to know how to talk to each other.

    Taft

  16. Re:Confusion. by Chucker23N · · Score: 4, Informative

    Rendezvous is three things:

    - automatic link-local IP addressing for cases where DHCP fails (like APIPA)
    - multicast DNS for announcing device names (.local domain)
    - service announcements and discovery via DNS-SD

    Mac OS X also supported SLP, but Rendezvous / ZeroConf is clearly the more comprehensive technology, as several projects (such as GNOME) are actually moving *over*.

  17. Re:So let's see... by Twirlip+of+the+Mists · · Score: 5, Informative

    Rendevous is some what like making each computer a DNS/DHCP/Directory server, however that's not completely accurate.

    It's not so much that it's not completely accurate as it is that it's completely wrong.

    Rendezvous has nothing to do with DNS, DHCP, or directory services. It's a service discovery framework, and that's all. Here's how it works.

    Let's say you've got some program, Foo.app, that has a feature for talking to other instances of Foo.app over the network. Doesn't matter what it is. It could be iTunes music sharing or iChat or distributed compilation or whatever you want.

    Without Rendezvous, you'd have to tell your instance of Foo.app where to find other instances. That'd require some kind of setup and some kind of maintenance.

    With Rendezvous, your instance of Foo.app sends out a single multicast message when it starts up. That message says that there's an instance of Foo.app available at our IP address. Other instances on the network receive that message and make a note of it. They maintain a list in memory of available services, all automatically, without your intervention.

    Does this involve a lot of network traffic? Not really. It requires some, but not much. When an instance of Foo.app starts up, it (1) announces its own presence, and (2) sends out a multicast request for other instances, and the other instances reply. When Foo.app shuts down, it sends out an announcement of its own termination. That's it.

    Does this involve terrible security risks? Not really. All Rendezvous does is publish the availability of services that are already running on the network. The responder daemon itself doesn't run with any privileges (on a Mac, it runs as the "nobody" user), and all Rendezvous requests are handled by that one daemon. If something magical happened and somebody was able to get mDNSResponder to run arbitrary code, there would have to be another exploitable security hole somewhere else on the system, because mDNSResponder doesn't have privilege to do anything.

    A prime example of Rendevous is two Powerbooks in a cafe, both with Airport wireless. You can set up an Ad Hoc wireless network between these computers, and they will auto configure their IP's and other information so that they can talk to each other.

    That's not Rendezvous. That's nothing more than self-assigned IP addresses. When your computer can't find a DHCP server, it self-assigns an address in the 169.254/16 network. Which means any two computers on the same network segment that have self-assigned IPs can talk to each other. This has been around since long before Rendezvous.

    So Rendevous is not designed to replace DNS/DHCP, but merely to find a way for network configuration when there is no established network structure.

    No, that's overstating it. The sole purpose of Rendezvous is service discovery. That's it. It's independent of network configuration. It works with or without DHCP, DNS, or any other network stuff. As long as you've got an IP address, Rendezvous does its thing.

    This is really the beauty of it, because it can determine what configuration is necessary and do whatever needed to get the computers networked, all transparently!

    No, no, NO! That's not Rendezvous, that's DHCP. Rendezvous is ONLY for service discovery. Rendezvous doesn't set your IP address or your routing table or your hostname resolution parameters. It doesn't do any of those things. All it does is facilitate service announcement and discovery for your applications.

    --

    I write in my journal
  18. Re:Apple intruding on MS's territory? by Freedom+Bug · · Score: 4, Informative

    grr, use preview carefully!

    That's 6 MONTHS versus 2 WEEKS.

    Bryan

  19. Re:UPNP vs zeroconf/rendezvous by harlows_monkeys · · Score: 4, Informative
    I wouldn't call UPNP "superior" by any stretch of the imagination.

    Comparisons have been done. I'd rather have low traffic and better service separation vs the "use-http-for-everything" strategy

    You are focusing on the part that doesn't matter. I suspect that in real life, you'd have a hard time finding any performance difference due to the heavier traffic. It's lost in the noise.

    The part that is important is specifying the commands and data to/from devices. We learned this lesson back with SCSI-1. When you leave important things up to each vendor (like the way Rendezvous leaves stuff in unstructured text fields for the vendors to define), you end up having to build into your host software a bunch of vendor-specific knowledge. You end up not being able to just go buy and plug in a printer or scanner or whatever and have it work, because the vendor hasn't released documentation to the Linux developers yet.

    Notice how much cleaner everything was with SCSI-2 due to having all the important commands specified in the standard, so that you could have generic disk and tape and other drivers that utilized all the device capabilities.

    It seems to me that Rendezvous is making the SCSI-1 mistake, which was understandable for SCSI-1 since they didn't have anything to apply hindsight to. The Rendezvous people should be able to look at SCSI-1, though, and see the importance of complete device specifications.

  20. They beat microsoft to the punch. by karmatic · · Score: 5, Informative

    Microsoft has been in alpha now for a bit with a product called "Windows NCD Technology" (I'm a tester). This is Apple's shot across MS's bow.

    From the alpha page, Windows Network Connected Device (NCD) Technology is a comprehensive set of Windows technologies that allow devices on a local network to discover, communicate with, and control each other.

  21. Apple did have an OS for Intel hardware by Anonymous+Writer · · Score: 4, Informative

    Around the early 90's, Apple developed a prototype operating system called Pink, which they later spun off into a company called Taligent, with the help of IBM and Hewlett Packard. Here is an old article about it and why it was canned. I remember reading something about how former Apple CEO John Scully gave a demonstration to some people of what looked like the Macintosh operating system running on a PC. As I recall it could run on both Mac and PC hardware platforms, and was designed in such a way that programmers could create programs that ran on both platforms through object-oriented programming. I purchased a book on it ages ago in which it was described as an "application system". It was meant to be a true cross-platform operating system.

    1. Re:Apple did have an OS for Intel hardware by PygmySurfer · · Score: 4, Informative

      Even later than that, early versions of Rhapsody (which became OS X) also ran on both PPC and x86. And of course, OpenStep ran on PPC, x86, AXP, PA-RISC, and who knows what else.

    2. Re:Apple did have an OS for Intel hardware by tbone1 · · Score: 3, Informative
      There must be something going on behind the scenes where Apple and Microsoft have made a deal to keep their operating systems on separate platforms.

      No there doesn't. What you see as a conspiracy is actually two companies with different business models.

      Apple makes money from selling hardware. This isn't strictly true, they're more of a solutions company than a hardware company, but selling the hardware is where they make their cash. They probably make a bit of cash from their software, but the margin must be small, given the size of their market, and they use their great software to push their hardware. Therefore, it is in Apple's best interest to make their hardware different so no one can run their software on other hardware. That keeps their margins high, and moving to the commodity platform of x86 would mean people would run Apple's low-margin software on low-margin hardware made by others, and Apple's bottom line would take a pounding.

      MicroSoft, on the other hand, makes money off software, not hardware. As of 2002 (I don't know about the latest financial report), MicroSoft makes money in three areas: their OS, Office, and the Mac Business Unit. The MacBU is tiny compared to the first two. Therefore, it is in their best interest to write the OS (and per corallary Office) for the commodity hardware, which is x86. Writing for other hardware would increase their overhead, and for what purpose? People who want Windows will get an x86 machine to run it. It's not in MicroSoft's best interest to have to support multiple platforms. Heck, they have a rough time keeping their x86 OS secure and relatively bug-free. So they plug along with x86 until it is no longer the preferred chip.

      It's probably more complicated than this, of course; I've heard of agreements and contractual obligations between Apple and IBM/Motorola and MS/Intel that reinforce this seperation, but it is probably more reinforcement than anything.

      --

      The Independent: Reverend Spooner Arrested in Friar Tuck Incident - ISIHAC, Historical Headlines
  22. Re:For all those that keep asking..... by overunderunderdone · · Score: 4, Informative

    "Insightful" my ass. "Delusional" would be the better adjective. Releasing an OS for Intel would never happen not because Jobs was paid off but because Apple is now, and always has been, a hardware company. A company that makes ~4 billion a year in hardware revenues is not going to abandon that in favor of the few hundred million they make in software.

    Apple was "paid off" but the payoff was to drop a lawsuit not to drop development of "rhapsody for Intel" and/or "rhapsody for Windows" which had already been abandoned.

  23. Re:La di da by gamgee5273 · · Score: 5, Informative
    Not the same thing... but, then you wouldn't be an AC if you wanted to be taken seriously.

    ZeroConf means a visiting professor walks into a lab at a university and can automatically print. There's zero configuration.

    It means an iTunes user can broadcast their library on the network and another iTunes user can pick it up with no problem. There's zero configuration.

    It means I can open iChat, not go onto AOL's network, and see my coworkers down the hallway with zero configuration.

    It means I can share a workgroup document we are editing in SubEthaEdit and easily invite coworkers on the LAN. There's zero configuration

    And now it means that non-Mac users can start getting in on a lot of the same stuff.

  24. No parent was right, you are wrong. by overunderunderdone · · Score: 5, Informative
    No, you are wrong... or more correctly only partly right. Rendezvous is Apple marketing-speak for zeroconf which involves, to quote the zeroconf website:
    1. Allocate addresses without a DHCP server.
    2. Translate between names and IP addresses without a DNS server.
    3. Find services, like printers, without a directory server.
    4. Allocate IP Multicast addresses without a MADCAP server.
    You are quite accurately describing point 3 whereas the parent was describing points 1,2 and 4. But ALL FOUR are rendezvous/zeroconf.
  25. Re:For all those that keep asking..... by TheRaven64 · · Score: 3, Informative

    Possible, but unlikely. The Rendezvous code is probably a small component of the platform-specific code for SEE. They could possibly port the rest to *NIX using GNUStep, but the Windows port of GNUStep is still in its infancy. If a Rendezvous stack had been the barrier to porting then they could have used an existing open source implementation of ZeroConf (Rendezvous) such as gmdns or howl.

    --
    I am TheRaven on Soylent News
  26. Re:For all those that keep asking..... by oingoboingo · · Score: 4, Informative
    Apple does NOT support running any laptop with the screen closed, because they can very easily (and do) overheat when the screen is close.

    Running a PowerBook with the lid closed is officially supported by Apple, and is mentioned in the instruction manual which is included with the machine. As long as the machine detects an external display and a USB keyboard plugged in, it will run perfectly in lid-closed mode.

    I know this is different to closing the lid and then stuffing it into a backpack to use as an overgrown iPod, but the point is that lid-closed operation is not a 'banned' operation because of heat issues. It is very much supported for certain applications.

  27. Re:UPNP vs zeroconf/rendezvous by tupps · · Score: 4, Informative

    From what I remember this technology either came from Apple or was given a major helping hand. I beleive that the head of the ZeroConf working group is an Apple employee.

    --
    Go out and get sailing!
  28. To all the naysayers. by mindstrm · · Score: 4, Informative

    - This is not Appletalk. IT is new.

    - This is open

    - The *key* feature is the mDNS system.

    - Yes, it does automatic IP allocation if there is no DHCP server.. so does Windows (though apple is much faster at it for some reason).

    - mDNS is not to be confused with "The global DNS system" that you use to lookup Address records, etc, though it can do that. mDNS is DNS adapted to multicast, for service and host discovery. HOw?

    - Instead of querying a DNS server, you query a multicast group (the link-local group in this case) and say "Who has a webserver?" or "who has ssh?" or "hey FOO, what is your IP?" or.. more importantly "Who is a real internet DNS server?" or "Who has an internet gateway?". "Who else is running itunes?".

    - a machine joining the network will broadcast once, to send out that it has joined, and what services it has, also via mDNS... so anyone listening can update their caches, etc. The opposite happens when it leaves.

    This does not create an extra burden of traffic. Previous to this, most protocols that need to find something in the network do so by rather rude broadcasts.. and usually generate quite a bit of unnecessary traffic.

    YES, having a set infrastructure, DNS servers, DHCP, etc, and using DHCP to hardcode everything else, avoiding the need for local network discovery is more efficient. The point is, this works very well WITHOUT any infrastructure.. like 10 guys sitting in a conference room with wireless cards and no servers... or 3 guys on the bus. etc.

    NO, rendezvous does not grant ACCESS to your computer.. it merely discovers advertised services... much like an X browser can find a bunch of remote X desktops, or windows TS can find all the terminal servers in the network, or the "network neighborhood" list is populated in windows. It's just a more elegant, scaleable approach.

    - mDNS is *not* dns... it is mDNS but if you understand DNS you will understand mDNS. They chose to not make a new protocol, and instead adapt an existing one... which makes it much easier to learn and work with.

  29. Re:For all those that keep asking..... by bsartist · · Score: 4, Informative

    One feature I occasionally use is concurrent editing of a document via Rendezvous.

    You appear to be mistaken concerning the role that Rendezvous plays in an app like SEE. According to the SEE FAQ, the network protocol used to implement concurrent editing is BEEP.

    What Rendezvous is used for is to automatically find other instances of SEE on the local LAN. That's not required for concurrent editing, and in fact SEE allows you to manually specify host names and/or addresses if you need to connect to a machine that Rendezvous can't find automatically.

    With this release, the SubEthaEdit team might produce a port to Windows soon

    Don't hold your breath. According to that same FAQ, SEE is Cocoa. Unless Apple decides to resurrect Yellow Box, aka OpenStep for Windows, Cocoa apps aren't easily portable to Windows.

    BEEP is an open standard though, so you might be able to find a Windows editor that speaks that protocol and works with SEE.

    --
    Lost: Sig, white with black letters. No collar. Reward if found!