Maighstir: Not only that, but a
distributed, rather than centralised, matchmaking service, so that one company taking their servers down wouldn't affect the service as a whole (those clients connecting there would of course have to change their config, but the service would still be available, and everyone would be able to find people connecting to different matchmaking servers).
Also player-run game servers (dedicated or otherwise, preferably options for both) so that a game can still be run when the company decides to no longer support it and would shut their own servers down.
Magnitus: Yeah, he purpose behind open-sourcing the backend (with the right kind of license) of the match-making service would be that anyone could run the software for free, having only to pay for the underlying infrastructure (ie, the servers themselves).
From there, devs would make the game in such a way that you can plug the domain-name of the protocol-compatible service you want to use in-game (and potentially login credential for back-end operators that charge for the privilege of accessing their service).
Have you used newsgroups? Do you remember them? Any message sent to a group on one server would appear at all others that also hosted the same group (and it was up to the server admins to decide which groups they'd mirror/host, meaning many disabled
bin and its subgroups because they took up a fuckload of storage space, and mostly consisted of pirated software). This similar to what I mean with distributed, if I log in to the, say, Unreal Tournament lobby on one server, I would see users in the same lobby on any other server connected to the network, and would be able to invite them to my game - the user names would be unique throughout the network rather than simply to the server (or they'd have the server name attached to them, similar to an email address).