<div dir="ltr">There is still an uncovered point<br>where both servers have online users and they connect.<br><br><br><div class="gmail_quote">On Sat, Oct 30, 2010 at 3:31 PM, Sergey Dobrov <span dir="ltr">&lt;<a href="mailto:binary@jrudevels.org">binary@jrudevels.org</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div class="im">On 10/30/2010 08:27 PM, pablo platt wrote:<br>
&gt;<br>
&gt;<br>
&gt; On Sat, Oct 30, 2010 at 3:22 PM, Sergey Dobrov &lt;<a href="mailto:binary@jrudevels.org">binary@jrudevels.org</a><br>
</div><div class="im">&gt; &lt;mailto:<a href="mailto:binary@jrudevels.org">binary@jrudevels.org</a>&gt;&gt; wrote:<br>
&gt;<br>
&gt;     On 10/30/2010 08:00 PM, pablo platt wrote:<br>
&gt;     &gt; Hi<br>
&gt;     &gt;<br>
&gt;     &gt; I understand that xmpp federation is similar to mail servers.<br>
&gt;     &gt; There is some kind of verification and stanzas are sent in a fire and<br>
&gt;     &gt; forget way.<br>
&gt;     &gt; A server doesn&#39;t need to keep track of the presence of users from<br>
&gt;     other<br>
&gt;     &gt; servers<br>
&gt;     &gt; or other kind of distributed state except for the actual connection.<br>
&gt;     &gt;<br>
&gt;     &gt; I couldn&#39;t find info about how to handle failures.<br>
</div>&gt;     &gt; Let&#39;s say <a href="http://host1.com" target="_blank">host1.com</a> &lt;<a href="http://host1.com" target="_blank">http://host1.com</a>&gt; &lt;<a href="http://host1.com" target="_blank">http://host1.com</a>&gt; on<br>

<div class="im">&gt;     server1 has <a href="mailto:user1@host1.com">user1@host1.com</a> &lt;mailto:<a href="mailto:user1@host1.com">user1@host1.com</a>&gt;<br>
</div>&gt;     &gt; &lt;mailto:<a href="mailto:user1@host1.com">user1@host1.com</a> &lt;mailto:<a href="mailto:user1@host1.com">user1@host1.com</a>&gt;&gt; and <a href="http://host2.com" target="_blank">host2.com</a><br>

&gt;     &lt;<a href="http://host2.com" target="_blank">http://host2.com</a>&gt; &lt;<a href="http://host2.com" target="_blank">http://host2.com</a>&gt; on server2 has<br>
&gt;     &gt; <a href="mailto:user2@host2.com">user2@host2.com</a> &lt;mailto:<a href="mailto:user2@host2.com">user2@host2.com</a>&gt; &lt;mailto:<a href="mailto:user2@host2.com">user2@host2.com</a><br>
<div class="im">&gt;     &lt;mailto:<a href="mailto:user2@host2.com">user2@host2.com</a>&gt;&gt;<br>
&gt;     &gt; user1 and user2 has each other on their rosters.<br>
&gt;     &gt; user1 is already logged in and now user2 is logging in and sending a<br>
&gt;     &gt; presence stanza.<br>
&gt;     &gt; host2 pass the presence stanza to host1 with the to attribute and a<br>
&gt;     &gt; presence probe.<br>
&gt;     &gt; host1 pass the presence to user1 and respond with user1&#39;s presence.<br>
&gt;     &gt; host1 doesn&#39;t remember that user2 is online and the opposite.<br>
&gt;     &gt;<br>
&gt;     &gt; 1.server2 has a power failure and it is back up in few minutes.<br>
&gt;     &gt; Does host2 need to send offline presence for all its users to hsot1?<br>
&gt;     &gt;<br>
&gt;     No, If user is offline too long, user will see remote-server-timeout<br>
&gt;     error if it sent any stanza to him.<br>
&gt;<br>
&gt;     &gt; 2. server2 is running but the connection to server1 is lost for<br>
&gt;     few minutes.<br>
&gt;     &gt; When the connection is back, the online users are not in sync.<br>
&gt;     &gt; How do I handle this situation?<br>
&gt;     &gt;<br>
&gt;     TCP gives you a guarantee that data will be delivered to a recipient.<br>
&gt;     This problem is occured only if connection was down too long. And the<br>
&gt;     answer is the same such 1.<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; What about users that logged in when server2 was down?<br>
</div>remote-server-not-found or timeout error in presence if server will be<br>
down more than timeout value.<br>
<div class="im"><br>
&gt; What if server1 is restarted, it won&#39;t know about online users in server2.<br>
</div>When users on server2 will log in they will send probes and users on<br>
server 1 will inform about them statuses.<br>
<div class="im"><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;     &gt; 3. When host1 sends a stanza to a user on host2 that is offline,<br>
&gt;     &gt; does host2 respond with an error?<br>
&gt;     &gt;<br>
&gt;     It&#39;s related on stanza kind and server&#39;s settings. If you send a message<br>
&gt;     you will store it in the offline storage for example. But if you send iq<br>
&gt;     stanza to a full jid server will return service-unavailable error.<br>
&gt;<br>
&gt;     &gt; Is there a doc explaining s2s implementation?<br>
&gt;<br>
&gt;     RFC 3920<br>
&gt;<br>
&gt;<br>
&gt; RFC 3920 is too general<br>
&gt; I think that a section dedicated to all aspects of s2s will be very helpful.<br>
&gt;<br>
</div>I think it&#39;s enough.<br>
<div class="im"><br>
&gt;<br>
&gt;<br>
&gt;     &gt;<br>
&gt;     &gt; Thanks<br>
&gt;     &gt;<br>
&gt;     &gt;<br>
&gt;     &gt;<br>
&gt;     &gt;<br>
&gt;     &gt;<br>
&gt;     &gt;<br>
&gt;     &gt;<br>
&gt;     &gt;<br>
&gt;     &gt; _______________________________________________<br>
&gt;     &gt; JDev mailing list<br>
&gt;     &gt; Forum: <a href="http://www.jabberforum.org/forumdisplay.php?f=20" target="_blank">http://www.jabberforum.org/forumdisplay.php?f=20</a><br>
&gt;     &gt; Info: <a href="http://mail.jabber.org/mailman/listinfo/jdev" target="_blank">http://mail.jabber.org/mailman/listinfo/jdev</a><br>
&gt;     &gt; Unsubscribe: <a href="mailto:JDev-unsubscribe@jabber.org">JDev-unsubscribe@jabber.org</a><br>
</div>&gt;     &lt;mailto:<a href="mailto:JDev-unsubscribe@jabber.org">JDev-unsubscribe@jabber.org</a>&gt;<br>
<div class="im">&gt;     &gt; _______________________________________________<br>
&gt;<br>
&gt;<br>
&gt;     --<br>
&gt;     With best regards,<br>
&gt;     Sergey Dobrov,<br>
&gt;     XMPP Developer and JRuDevels.org founder.<br>
&gt;<br>
&gt;     _______________________________________________<br>
&gt;     JDev mailing list<br>
&gt;     Forum: <a href="http://www.jabberforum.org/forumdisplay.php?f=20" target="_blank">http://www.jabberforum.org/forumdisplay.php?f=20</a><br>
&gt;     Info: <a href="http://mail.jabber.org/mailman/listinfo/jdev" target="_blank">http://mail.jabber.org/mailman/listinfo/jdev</a><br>
&gt;     Unsubscribe: <a href="mailto:JDev-unsubscribe@jabber.org">JDev-unsubscribe@jabber.org</a><br>
</div>&gt;     &lt;mailto:<a href="mailto:JDev-unsubscribe@jabber.org">JDev-unsubscribe@jabber.org</a>&gt;<br>
&gt;     _______________________________________________<br>
<div><div></div><div class="h5">&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; JDev mailing list<br>
&gt; Forum: <a href="http://www.jabberforum.org/forumdisplay.php?f=20" target="_blank">http://www.jabberforum.org/forumdisplay.php?f=20</a><br>
&gt; Info: <a href="http://mail.jabber.org/mailman/listinfo/jdev" target="_blank">http://mail.jabber.org/mailman/listinfo/jdev</a><br>
&gt; Unsubscribe: <a href="mailto:JDev-unsubscribe@jabber.org">JDev-unsubscribe@jabber.org</a><br>
&gt; _______________________________________________<br>
<br>
<br>
--<br>
With best regards,<br>
Sergey Dobrov,<br>
XMPP Developer and JRuDevels.org founder.<br>
<br>
_______________________________________________<br>
JDev mailing list<br>
Forum: <a href="http://www.jabberforum.org/forumdisplay.php?f=20" target="_blank">http://www.jabberforum.org/forumdisplay.php?f=20</a><br>
Info: <a href="http://mail.jabber.org/mailman/listinfo/jdev" target="_blank">http://mail.jabber.org/mailman/listinfo/jdev</a><br>
Unsubscribe: <a href="mailto:JDev-unsubscribe@jabber.org">JDev-unsubscribe@jabber.org</a><br>
_______________________________________________<br>
</div></div></blockquote></div><br></div>