Are There Alternatives to UPnP?
semanticgap asks: "I am thinking of putting together a PC based home entertainment system (media server in the basement talking to various computers around the house and controllable via some sort of a remote control device, etc.) as a fun project with emphasis on writing software. I've been reading up on the current state of affairs, and it looks like the protocol for this sort of a thing is UPnP (Universal Plug-n-Pray). It seems to provide all the functionality I want, but I don't like the fact that it is developed by Microsoft, nor do I like it in general - it relies heavily on things like UUID's, HTTPMU and other Microsoft-ish hacks. So I thought I'd ask Slashdot community - is UPnP going to gain acceptance, or are there alternatives to it?"
It can hardly be universal if it is proprietary to Microsoft. Instead, it will be Microsoft-centric and doubtful that other operating systems would use it.
Ouch! The truth hurts!
Sure, just watch the WB-P instead. No one is forcing you to watch T'Pol on Enterprise, you know!
http://developer.apple.com/macosx/rendezvous/j ini/
http://developer.java.sun.com/developer/products/
The fact the uPnP is being thrust upon the world by Microsoft guarantees that it will be a winning "standard" (gag). Already it is widely deployed on Win2k and XP and as these system's market penetration continues, after a while everyone will have it.
You, however, asked if there are alternatives. Of course there are. None will likely have the market penetration that uPnP will have but a possibly strong contender will be Apple's Rendevzous, recently announced here on Slashdot. It uses Apple's "Open Source" license.
There are no alternatives, you dumbass. It's universal plug and play.
The Linux UPnP Internet Gateway Device Project
Also note that MS isn't the only folks supplying UPnP, Intel also developed a lot which is now Open Sourced.
Rendevous & Zeroconf information:
-
IETF Zero Configuration Networking (Zeroconf) Group
-
IETF Zeroconf on Apple Rendezvous and Zeroconf
-
Apple's Customer-pitch for Rendezvous
-
Apple's Developer-pitch for Rendezvous
Here's an earlier Apple implementation called SLP (RFC 2608) also used by Novell:Finally, for completeness here is UPnP:
I don't read ACs: If a post isn't worth so much as a nom de plume to its author then I wont bother either.
Jini is a java based service delivery system that is a great alternative to UPnP. I'm currently working on a network based music player so I can play mp3's on my home stereo and control it from anywhere with a web browser.
First, let me address UPnP and Microsoft. Yes, UPnP was originally conceived by MS, and MS has written themselves onto the steering committee forever. However, the UPnP membership agreement precludes any member from owning the technology outright, and says that anyone who offers technology to the forum must do so without encumberance. Even Microsoft. UPnP is NOT proprietary to MS.
Second, the technology. Everything in UPnP can be had for free. We've developed (and are successfully selling) two UPnP protocol stacks, one in ANSI C and one in Java. This was all home-grown, and we didn't need to license anything from anyone except the UPnP forum.
As mentioned before to use the technology, you need to be a UPnP Forum member. Membership is free, and the only real restriction is that anything you suggest for inclusion be done so without encumberance. Anyone can join. If you join, and don't want to donate technology, then don't bring it up. It's as easy as that.
The underlying standards are either pre-existing standards or build by the UPnP Forum. A case in point is Auto-IP, which does the ad-hoc network configuration. It's based on an IETF draft (draft-ietf-ipv4-autoconfig-05), which was originally authored by someone at Apple. I wouldn't be too surprised if it's very similar to Auto-IP. It's too bad that Apple didn't get involved earlier, we'd only have one uniform way to do this, instead of two Again, this isn't a MS invention.
There are a lot of UPnP implementations available. Intel did indeed provide a GPL protocol stack that you can download from their site. It builds on Linux nicely, and give you sample apps, etc. We have our two stacks that will begin appearing in cheap applicances Real Soon Now (tm) thanks to our silicon-builder-friends.
Alternatives to UPnP? Not really, at least not in one place. Many folks who responded to this message address only the Auto-IP part, where the box gets its IP address (FYI, Auto-IP on a net with DHCP is pretty much just DHCP). What they're missing is the juice of UPnP, where there's a protocol for device discovery and control. All the control and discovery is without any a-priori knowlege or configuration! (N.b., UPnP and Plug&Play are entirely different beasts: UPnP is on a network, Plug&Play and Kudzu are a single box)
E.g., your UPnP PVR is on a net with your UPnP phone (they're both coming). They know about each other, thanks to UPnP. Phone rings, PVR pauses automatically and puts up caller ID. You pick up the phone, talk, hang up, PVR starts again. Your washing machine tells you it's time to switch the load over, not only on the TV, but on your UPnP Zaurus or iPaq (reality today), or perhaps your electronic picture frame. You want to listen to your MP3 library from your home server. Easy. Your iPaq, Zaurus, stereo receiver, anything, knows in advance how to search for media sources, get a list of titles available, and start spooling it down. Click and go.
Our demos are much, much cooler than that even, but I don't know how much I can say.
To answer your question, sure there are alternatives, but they're in many disjoint parts. I'd suggest getting Intel's kit, and playing with it, seeing what you can do with it. Whether you do that, or play with disjoint parts, you'll be experimenting, but UPnP will take off fairly soon now.
HTTP over UDP is a hack, and the RFC is written by someone at Microsoft.
IMHO, the Rendezvous method of using DNS SRV records for service discovery is much better, because DNS has been around for ages, and we know it works. Only time will show what sorts of problems will appear with UPnP's HTTPU reliance.
First one that comes to mind is reliability - UDP doesn't perform well on busy networks (and its not unlikely that the network over which these packets will travel will indeed be busy - imagine 802.11b maxed out while a video is being streamed over it). UPnP requires devices to resend their messages after an interval because of UDP's unreliable nature - but if I hit "play" on my remote control, I want the thing to play instantly, not a few seconds later.
Another one is scale - large amounts of data can't be sent over UDP. As it looks right now, the packets shouldn't be large, but we don't know what the future holds - as devices get more complicated and support more features, the UPnP service description messages could get fairly large.
Of course the above is a moot point given that there are no other protocols that do this....
grisha.org
One of the design goals was for all this to work
;-)
on an unmanaged network. If you rely on DNS, that
sort of breaks one of the design goals, doesn't it?
From my view, it seems to be a pretty solid
protocol. That's not to say that there aren't
better ways to do things, but it's been a finished
protocol for two years now, which is a lot further
than it would have gotten had it been an academic
exercise to keep up with the perfect-way-to-do-it-today.
For any problem, you'll always find a better solution of you look long enough!
UUIDs can be produced any way you want, as long ;-)
as they're "guaranteed" to be unique. A lot of
folks use the MAC address since they're supposedly
unique, but then munge them in some way, such as
munging them with the date the board was made,
or something like that. But what if you don't
have a MAC address?
He said Rendezvous, not DNS. Rendezvous is based on the DNS protocol, to create an unmanaged DNS solution.
-BrentHash your device boot time plus a random delay.
-I like my women like I like my tea: green-
From your recommendation it appears you have no clue what Universal Plug and Play even is.
WTF!!!!!!
What the hell is Linux 8.0
Linux "numbering schemes" are a pile of marketing crap, made up by the distribution peoplel.
And if you bought a Banshee new then you are even more or a git than your "Linux 8.0" comment makes you out to be - I got one of those new about 3 years ago.
Why dont you go and learn what you are talking about before posting.
Linux isn't about version numbers, if anything the distributions should be numbered after the Kernel.
Besides running Debian as I do, I dont run ANY kind of version, I have the apps I need, the kernal I need and it works - who cares if its Linux XP or whatever.
I have nothing against Macs. I really haven't used one that much. But to say that a comparable computer is cheaper is plain ridiculous.
I just built a 2.53 GHz P4, 512MB DDR PC3200, GeForce 4 ti4600, 48X CD-RW, 80GB HD system for $1400. That's with a monitor, a good PSU, a quality case, and the Abit IT7 MAX motherboard. If you didn't know, that specific motherboard has 8 USB ports on it (some USB 2.0), 2 firewire ports, and built-in LAN.
That's not a crappy system. Trust me.. it'd probably out perform most Macs, if not all. (Unfortunately, I think it's a bit hard to benchmark equally between two operating systems, yet alone two different hardware types. Although I guess timing filters works.)
So what were you saying about Macs being better than PCs? Oh, I guess I didn't have my operating system pre-installed. Oh well.
My Journal - 1,337 fans and countin
Interesting... Would you care to elaborate on what application was this protocol intended to solve, i.e. was it the same kind of stuff as UPnP, or something different altogether? Also, why ICMP? And lastly - was UPnP available at the time of writing and what you think of UPnP in general, if anything? Thanks!
grisha.org
I just built a 2.53 GHz P4, 512MB DDR PC3200, GeForce 4 ti4600, 48X CD-RW, 80GB HD system for $1400.
Good for you. But you're comparing a home built system with commodity parts to a top quality system from a top notch vendor.
If you want to do price comparisons, compare Apples prices to IBMs. IBM is about the only quality PC manufacturer left anymore, now that Dell has gone the way of Gateway.
But its silly to compare something you put together yourself to something produced by a company with a warantee (And a warantee that covers the parts working together, rather than your collection which covers individual parts.) etc.
Furthermore, it doesn't sound like you saved that much money-- a comparable mac would cost about the same, if not less. And again, you're getting a quality system. I'm sure you bought what you think was the best quality parts, but you don't have the 100,000 unit experience with your suppliers that tier one manufacturers do. Hopefully you got good parts, but you don't have the guarantee.
So, based on your example, saying a comparable mac is cheaper is not ridiculous, it seems spot on. You could have saved $400 and gotten an iMac. Not as good a video card, but then that video card is about $400.
Yeah, and you guys panned the ipod too: http://apple.slashdot.org/article.pl?sid=01/10/23
As much as I hate to say it, I have to side with you on this one. I was just at Fry's Electronics today to pick up a printer and started using one of the OSX boxes over there. Oh my lord, it was soo nice, and came with everything you'd ever want. It had a huge flatscreen monitor with it, also... for 2400 dollars, which is a damn good deal. Tack on another 200 and you can grab that thingee el gator or whatever sells that can turn an Apple into a full fledge Tivo/DVD recorder. (RCA/RF in)
I run a P4-1.8ghz right now, but I have a feeling the next computer I get will definately be an Apple. They've just changed so much over the years that I can't help but to love them now.
Now only to get used to OSX's wierdnesses. (Every OS has them, just every one of them have different weirdnesses)
-- This space for lease, low setup fee, inquire within!
"[Regarding UPNP]It seems to provide all the functionality I want, but I don't like the fact that it is developed by Microsoft"
See, this is what defines a dumbass. The functionality is provided, the technology is here, you admit that this is what you need, but then you disparage it just because it was developed by microsoft. Swallow your perceived pride and just use the damn stuff instead of looking for a less-functional alternative.
I think, therefore I am an Atheist.
The IEEE Computer Society Magazine published in August an article on this topic. There are a lot of alternatives to UPnP: Sun, Hewlett-Packard, Apple, etc.
Unfortunately, I don't have the magazine here, so I cannot say much. Here is the index of the magazine, here abstract of the article, and here is the article in PDF (but you must pay 19$ US for it).
If you are actually interested, e-mail me (pgq AT poboxes DOT com) and I'll send you a summary.
Okay, then compare this my friend. First off, let me point out that I use and thoroughly enojy 2 Mac's of my own. They are among several of my primary computers, which include home-builts, Dell, Compaq, etc. Anyway, let's compare my two primary use systems. System 1: Power Mac G4 Dual 1GHz 512MB RAM 1 80GB HDD ti4 Onboard sound, lan, etc. Super Drive 90 Days free phone support. 1 Year depot service and parts warranty. Purchased from MacConnection on 6/14/02 for $2,999 My other system is: Compaq EVO W4000 Dual Xeon 2.0GHz Intel P4 Shipped with W2K Professional pre-installed 512MB RAM CD-RW 20GB 10k RPM SCSI HDD 120GB 7200 RPM ATA-100 HDD Onboard LAN, sound, etc. Matrox g400 Dual head Video card 3 Years On-site parts and labor and phone support. Purchased from Compaq for $1,999 - 06/02/02 I run Linux (SuSE 8.0) on the Compaq. I can tell you that for comparible functions (3D rendering, 2D filters, etc....the type of stuff I use them for) the Compaq will toast the Mac. Again, I love the Mac, but faster??? cheaper??? Hardley. ER
Just keep telling yourself that. A commodity 2ghz PC costs around 500 - 700$. A "top quality" pc costs 1000 - 1500$.
Religion is a gateway psychosis. -- Dave Foley
Why is it people think you can' upgrade imacs?
I even hear people say you can't upgrade powermacs, which is totally absurd.
Medal of Honor on my lowly iMac G4 runs at least 30fps at max resolution and with all the effects turned on. I really doubt that his experience is suffering on a nicer machine (And certainly not compared to a PC- the graphics card does all the work.) If he's getting 60fps instead of 80fps, then its silly to complain- you can't perceive more than about 30 fps anyway.
If he wanted a Ti video card, he could have bought one. I don't see what the big deal is-- PC weenies seem to think that you can't put a different video card in a mac.
Yeah, and you guys panned the ipod too: http://apple.slashdot.org/article.pl?sid=01/10/23
What about the crashing part the above poster mentioned?
Anyhow, MOH:AA is definately not the most demanding game. With newer, more demanding games like Battlefield 1942 and UT2k3, the Mac might maintain a good framerate most of the time, but there will be spots where it drops below 20. That's not a good thing.
Macs might be more polished, and I bet you can connect your camera to your Mac (since we all know that stuff like that on a PC is only done in hollywood), or whatever, but.. they're just not as fast for the price. Especially in the long term, when I don't have to buy a whole new system for a faster processor.
My Journal - 1,337 fans and countin
I've never had MOHAA crash on me.
I love how you're telling me how UT2k3 won't run fast on a Mac -=- this is a game that isn't even out yet.
You're just expressing your bigotry. You don't know how UT will perform.
Macs, generally, are faster and a bit cheaper than PCs. Even for gaming.
Yeah, and you guys panned the ipod too: http://apple.slashdot.org/article.pl?sid=01/10/23