You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mina.apache.org by "Arun Prem (JIRA)" <ji...@apache.org> on 2011/08/08 08:11:27 UTC

[jira] [Created] (VYSPER-292) Detecting unexpected network disconnects

Detecting unexpected network disconnects
----------------------------------------

                 Key: VYSPER-292
                 URL: https://issues.apache.org/jira/browse/VYSPER-292
             Project: VYSPER
          Issue Type: Bug
          Components: connection handshake
            Reporter: Arun Prem


This is similar to the one mentioned in the issue 286. Since there are no ways found to reopen the issue (which was already marked as 'Resolved'), I'm creating a new issue.

As a solution for the issue reported in 286, it is suggested to add a shutdown hook. But it seems it won't address the cases of unexpected network disconnects as given in the following scenario.

1. User1 logs in. The status is set as 'Available' by default.
==> User1's status is reflected in the messenger window of other logged in users.

2. Disconnect User1's workstation from the network.
==> Other user's list disappears from User1 messenger window.

3. Check the status of User1 from the messenger window of other logged in users.
==> User1's status still remains in the same for all other users.

Expected: User1's status should be made offline to other users as soon as the network disconnects.

The questions is how to detect the unexpected network disconnects for User1 and broadcast the status (as offline) to other logged-in users.

Thanks... 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Issue Comment Edited] (VYSPER-292) Detecting unexpected network disconnects

Posted by "Arun Prem (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-292?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13086208#comment-13086208 ] 

Arun Prem edited comment on VYSPER-292 at 8/17/11 9:17 AM:
-----------------------------------------------------------

Thank you for your comments and ideas. 

As of now, we've implemented Client-to-Server ping which keeps sending heart beats to the server on predetermined intervals (every 5 seconds, for instance). The server determines the status of the client accordingly.

In our opinion, this approach does not create unnecessary traffic congestion from the server.

      was (Author: gpgarun):
    Thank you for your comments and ideas. 

As of now, we've implemented Client-to-Server ping which keeps sending heart beats to the server on predetermined intervals (every 5 seconds, for instance). The server determines the status of the client as 'Active' by detecting it.

In our opinion, this approach does not create unnecessary traffic congestion from the server.
  
> Detecting unexpected network disconnects
> ----------------------------------------
>
>                 Key: VYSPER-292
>                 URL: https://issues.apache.org/jira/browse/VYSPER-292
>             Project: VYSPER
>          Issue Type: Bug
>          Components: connection handshake
>            Reporter: Arun Prem
>
> This is similar to the one mentioned in the issue 286. Since there are no ways found to reopen the issue (which was already marked as 'Resolved'), I'm creating a new issue.
> As a solution for the issue reported in 286, it is suggested to add a shutdown hook. But it seems it won't address the cases of unexpected network disconnects as given in the following scenario.
> 1. User1 logs in. The status is set as 'Available' by default.
> ==> User1's status is reflected in the messenger window of other logged in users.
> 2. Disconnect User1's workstation from the network.
> ==> Other user's list disappears from User1 messenger window.
> 3. Check the status of User1 from the messenger window of other logged in users.
> ==> User1's status still remains in the same for all other users.
> Expected: User1's status should be made offline to other users as soon as the network disconnects.
> The questions is how to detect the unexpected network disconnects for User1 and broadcast the status (as offline) to other logged-in users.
> Thanks... 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (VYSPER-292) Detecting unexpected network disconnects

Posted by "Arun Prem (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-292?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13086208#comment-13086208 ] 

Arun Prem commented on VYSPER-292:
----------------------------------

Thank you for your comments and ideas. 

As of now, we've implemented Client-to-Server ping which keeps sending heart beats to the server on predetermined intervals (every 5 seconds, for instance). The server determines the status of the client as 'Active' by detecting it.

In our opinion, this approach does not create unnecessary traffic congestion from the server.

> Detecting unexpected network disconnects
> ----------------------------------------
>
>                 Key: VYSPER-292
>                 URL: https://issues.apache.org/jira/browse/VYSPER-292
>             Project: VYSPER
>          Issue Type: Bug
>          Components: connection handshake
>            Reporter: Arun Prem
>
> This is similar to the one mentioned in the issue 286. Since there are no ways found to reopen the issue (which was already marked as 'Resolved'), I'm creating a new issue.
> As a solution for the issue reported in 286, it is suggested to add a shutdown hook. But it seems it won't address the cases of unexpected network disconnects as given in the following scenario.
> 1. User1 logs in. The status is set as 'Available' by default.
> ==> User1's status is reflected in the messenger window of other logged in users.
> 2. Disconnect User1's workstation from the network.
> ==> Other user's list disappears from User1 messenger window.
> 3. Check the status of User1 from the messenger window of other logged in users.
> ==> User1's status still remains in the same for all other users.
> Expected: User1's status should be made offline to other users as soon as the network disconnects.
> The questions is how to detect the unexpected network disconnects for User1 and broadcast the status (as offline) to other logged-in users.
> Thanks... 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (VYSPER-292) Detecting unexpected network disconnects

Posted by "Bernd Fondermann (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/VYSPER-292?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13084992#comment-13084992 ] 

Bernd Fondermann commented on VYSPER-292:
-----------------------------------------

As I said in my comment VYSPER-286#29/Jun/11 07:33, TCP/IP is unable to detect this kind of disconnect _as_long_as_ there is no data sent over the wire - neither side of the connection will detect it.
On the other hand, in the basic XMPP protocol, the server doesn't ping its clients, for good reasons.

Still, a solution would be to implement a server-to-client ping, but be aware of the fact that clients not under your control might not support it, it generates a lot more traffic and for flakey network connections this might cause unceccessary reconnects. Ping support is already present in the Vysper codebase, but servers do not ping clients regularily (and I certainly don't want to support it by default). See also http://xmpp.org/extensions/xep-0199.html

As a side note, please let us discuss these kind of topics on the dev list first and create new JIRA issues second. Thank you.


> Detecting unexpected network disconnects
> ----------------------------------------
>
>                 Key: VYSPER-292
>                 URL: https://issues.apache.org/jira/browse/VYSPER-292
>             Project: VYSPER
>          Issue Type: Bug
>          Components: connection handshake
>            Reporter: Arun Prem
>
> This is similar to the one mentioned in the issue 286. Since there are no ways found to reopen the issue (which was already marked as 'Resolved'), I'm creating a new issue.
> As a solution for the issue reported in 286, it is suggested to add a shutdown hook. But it seems it won't address the cases of unexpected network disconnects as given in the following scenario.
> 1. User1 logs in. The status is set as 'Available' by default.
> ==> User1's status is reflected in the messenger window of other logged in users.
> 2. Disconnect User1's workstation from the network.
> ==> Other user's list disappears from User1 messenger window.
> 3. Check the status of User1 from the messenger window of other logged in users.
> ==> User1's status still remains in the same for all other users.
> Expected: User1's status should be made offline to other users as soon as the network disconnects.
> The questions is how to detect the unexpected network disconnects for User1 and broadcast the status (as offline) to other logged-in users.
> Thanks... 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Resolved] (VYSPER-292) Detecting unexpected network disconnects

Posted by "Bernd Fondermann (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/VYSPER-292?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bernd Fondermann resolved VYSPER-292.
-------------------------------------

    Resolution: Won't Fix

We can't detect TCP/IP disconnects easily. Use Server-to-client Ping instead, if you really think it's a good idea.

> Detecting unexpected network disconnects
> ----------------------------------------
>
>                 Key: VYSPER-292
>                 URL: https://issues.apache.org/jira/browse/VYSPER-292
>             Project: VYSPER
>          Issue Type: Bug
>          Components: connection handshake
>            Reporter: Arun Prem
>
> This is similar to the one mentioned in the issue 286. Since there are no ways found to reopen the issue (which was already marked as 'Resolved'), I'm creating a new issue.
> As a solution for the issue reported in 286, it is suggested to add a shutdown hook. But it seems it won't address the cases of unexpected network disconnects as given in the following scenario.
> 1. User1 logs in. The status is set as 'Available' by default.
> ==> User1's status is reflected in the messenger window of other logged in users.
> 2. Disconnect User1's workstation from the network.
> ==> Other user's list disappears from User1 messenger window.
> 3. Check the status of User1 from the messenger window of other logged in users.
> ==> User1's status still remains in the same for all other users.
> Expected: User1's status should be made offline to other users as soon as the network disconnects.
> The questions is how to detect the unexpected network disconnects for User1 and broadcast the status (as offline) to other logged-in users.
> Thanks... 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (VYSPER-292) Detecting unexpected network disconnects

Posted by "Arun Prem (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/VYSPER-292?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Arun Prem updated VYSPER-292:
-----------------------------

    Issue Type: Sub-task  (was: Bug)
        Parent: VYSPER-286

> Detecting unexpected network disconnects
> ----------------------------------------
>
>                 Key: VYSPER-292
>                 URL: https://issues.apache.org/jira/browse/VYSPER-292
>             Project: VYSPER
>          Issue Type: Sub-task
>          Components: connection handshake
>            Reporter: Arun Prem
>
> This is similar to the one mentioned in the issue 286. Since there are no ways found to reopen the issue (which was already marked as 'Resolved'), I'm creating a new issue.
> As a solution for the issue reported in 286, it is suggested to add a shutdown hook. But it seems it won't address the cases of unexpected network disconnects as given in the following scenario.
> 1. User1 logs in. The status is set as 'Available' by default.
> ==> User1's status is reflected in the messenger window of other logged in users.
> 2. Disconnect User1's workstation from the network.
> ==> Other user's list disappears from User1 messenger window.
> 3. Check the status of User1 from the messenger window of other logged in users.
> ==> User1's status still remains in the same for all other users.
> Expected: User1's status should be made offline to other users as soon as the network disconnects.
> The questions is how to detect the unexpected network disconnects for User1 and broadcast the status (as offline) to other logged-in users.
> Thanks... 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (VYSPER-292) Detecting unexpected network disconnects

Posted by "Arun Prem (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/VYSPER-292?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Arun Prem updated VYSPER-292:
-----------------------------

    Issue Type: Bug  (was: Sub-task)
        Parent:     (was: VYSPER-286)

> Detecting unexpected network disconnects
> ----------------------------------------
>
>                 Key: VYSPER-292
>                 URL: https://issues.apache.org/jira/browse/VYSPER-292
>             Project: VYSPER
>          Issue Type: Bug
>          Components: connection handshake
>            Reporter: Arun Prem
>
> This is similar to the one mentioned in the issue 286. Since there are no ways found to reopen the issue (which was already marked as 'Resolved'), I'm creating a new issue.
> As a solution for the issue reported in 286, it is suggested to add a shutdown hook. But it seems it won't address the cases of unexpected network disconnects as given in the following scenario.
> 1. User1 logs in. The status is set as 'Available' by default.
> ==> User1's status is reflected in the messenger window of other logged in users.
> 2. Disconnect User1's workstation from the network.
> ==> Other user's list disappears from User1 messenger window.
> 3. Check the status of User1 from the messenger window of other logged in users.
> ==> User1's status still remains in the same for all other users.
> Expected: User1's status should be made offline to other users as soon as the network disconnects.
> The questions is how to detect the unexpected network disconnects for User1 and broadcast the status (as offline) to other logged-in users.
> Thanks... 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira