On Thu Mar 20 00:15:38 2008, Carlo v. Loesch wrote:
Richard Dobson typeth:
| The biggest issue with simply directing presence stanzas to the remote | domain and then letting that fan it out by itself (rather than using | something like the repeaters here) is that it means privacy lists (or
| anything which works in a similar way to them, i.e. being able to
| selectively stop presence going to roster items without changing your | subscription) stop working at entirely, and I can't really see a way | around that without using a concept such as repeaters where you are | specifically telling the remote server who you want it fanned out to.

It's a very XMPP-as-it-is point of view, but from an outsider's point
of view I'd like to mention that the XMPP notion of polite presence
silence might feel morally hypocritical: Why can't I have the honesty towards my non-friend to let him know that I no longer intend to send him presence? Why do I asymmetrically keep on accepting his presence,
instead? A technological step that makes it harder to implement such
asymmetry, seems to be a leap towards fairness.


Whether that's true or not, protocols do not make political or moral statements, and nor should they. Protocols just enable what people want to do, whether you agree with that or not. There's a name for organizations which dictate moral stances and attempt to enforce them, and whilst we've already got the sainthood, I'd rather not be a cardinal of XMPP. :-)


| Of course an evil server could still forward it to people you have not | told it to but that will always be so as as you say its out of your | hands, but at least with repeaters non-evil servers actually have an
| idea of where you want the presence stanzas to go.

I wouldn't call a server "evil" that undermines hypocrisy by
letting its users know when they are being presence-abused.


It's not a question of evil or not. The protocol does what people want. Conceptually, the information a user transmits, or causes to be transmitted on their behalf, should be under their control. I have no more moral right to your presence information than I do to your messages, or your bank card's PIN code.

If there's to be any moral impact of the protocol design, it is simply that we should enable the user to enforce that their outgoing information conforms to their own set of moral values - we cannot do the same in reverse, because - morally - we cannot allow people to enforce their moral views on others.

It's a hard life, trying to be morally neutral.


Repeaters are a technological improvement, although the XEP should
mention the people who made such type of suggestions in the first
place - and dropping the morally doubtful concept of privacy lists
for a more fair and efficient strategy, would be even better.
But XMPP is no arena for drastic measures. Let's wait a few more
years... until repeaters are too expensive for scalability.

I'm not yet convinced that repeaters *are* a technological improvement, quite yet, so this is, to a degree, quite encouraging talk. I'll write another message on this, though.

It strikes me as a happy coincidence for you that your moral stance happens to yield an efficient method of moving presence fan-out off the user's server. I feel I ought to point out that this doesn't make it any "more moral".

If we consider a case where no privacy lists were in use, and if we handle roster synchronization, and if we ignore directed presence, and if we assume that users could and must trust (or, are morally obliged to trust) remote servers (quite a bunch of ifs, there), we could perform remote fan-out of presence based on the remote server's roster data.

I would point out that if (like us, as it happens) users' rosters are stored in a per-user file, that reverse roster lookup is going to be exceedingly painful. It's not too bad if you're using SQL or LDAP, either of which can just use an index and be done with it - although of course the more indexes there are, the slower simple addition/removal operations will be, as well as increasing contention.

So sure, there's a protocol efficiency gain to be made here, but it's important to consider the impact it'll have on servers, as well as the impact on the security model.

Dave.
--
Dave Cridland - mailto:[EMAIL PROTECTED] - xmpp:[EMAIL PROTECTED]
 - acap://acap.dave.cridland.net/byowner/user/dwd/bookmarks/
 - http://dave.cridland.net/
Infotrope Polymer - ACAP, IMAP, ESMTP, and Lemonade

Reply via email to