[ 
https://issues.apache.org/jira/browse/SSHD-85?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Bill Kuker updated SSHD-85:
---------------------------
    Description: 
When I am forwarding connections from a Client to a port on the SSH Server 
through the SSH Client to a Remote Server on the SSH Client network:

Client --(a)---> SSH Server <===[ssh]===> SSH Client --(b)--> Remote Server

 if the Remote Server sends some bytes and immediately closes the connection 
(b) to the SSH Client the SSH Server will close the connection (a) to the 
client before all of those bytes are sent to the SSH Client.

This is probably a race condition. If I run one connection at a time it works 
99% of the time, but if I use a load generator (a completely separate process) 
to max out all 4 cores I can make it fail (I do not get all the bytes from 
Remote Server at Client) 99% of the time. Also by running about 100 
simultaneous requests I get maybe a 20% failure rate.

If the Remote Server is something like Telnet (Open for a while, user closes 
connection) everything seems fine, but the the Remote Server is a web server 
with keep alive disabled, and many small requests are made, many images, htmls, 
css are truncated.

Sorry I can't be more precise with this, but I hope anyone else having a 
similar trouble can help fill out this bug with details.

*Update in 2017*

I have provided a maven project with a unit test that has a 100% failure rate 
on my desktop without resorting to creating artificial load. It is a lot 
simpler!

  was:
When I am forwarding connections from a Client to a port on the SSH Server 
through the SSH Client to a Remote Server on the SSH Client network:

Client --(a)---> SSH Server <===[ssh]===> SSH Client --(b)--> Remote Server

 if the Remote Server sends some bytes and immediately closes the connection 
(b) to the SSH Client the SSH Server will close the connection (a) to the 
client before all of those bytes are sent to the SSH Client.

This is probably a race condition. If I run one connection at a time it works 
99% of the time, but if I use a load generator (a completely separate process) 
to max out all 4 cores I can make it fail (I do not get all the bytes from 
Remote Server at Client) 99% of the time. Also by running about 100 
simultaneous requests I get maybe a 20% failure rate.

If the Remote Server is something like Telnet (Open for a while, user closes 
connection) everything seems fine, but the the Remote Server is a web server 
with keep alive disabled, and many small requests are made, many images, htmls, 
css are truncated.

Sorry I can't be more precise with this, but I hope anyone else having a 
similar trouble can help fill out this bug with details.


> Port Forward closes connection before all bytes are sent
> --------------------------------------------------------
>
>                 Key: SSHD-85
>                 URL: https://issues.apache.org/jira/browse/SSHD-85
>             Project: MINA SSHD
>          Issue Type: Bug
>    Affects Versions: 0.2.0, 1.4.0
>         Environment: Windows or Linux, JSCH Client
>            Reporter: Bill Kuker
>            Assignee: Guillaume Nodet
>         Attachments: MINA-Port-Forward.txt, SSHD-85_testcase.txt
>
>
> When I am forwarding connections from a Client to a port on the SSH Server 
> through the SSH Client to a Remote Server on the SSH Client network:
> Client --(a)---> SSH Server <===[ssh]===> SSH Client --(b)--> Remote Server
>  if the Remote Server sends some bytes and immediately closes the connection 
> (b) to the SSH Client the SSH Server will close the connection (a) to the 
> client before all of those bytes are sent to the SSH Client.
> This is probably a race condition. If I run one connection at a time it works 
> 99% of the time, but if I use a load generator (a completely separate 
> process) to max out all 4 cores I can make it fail (I do not get all the 
> bytes from Remote Server at Client) 99% of the time. Also by running about 
> 100 simultaneous requests I get maybe a 20% failure rate.
> If the Remote Server is something like Telnet (Open for a while, user closes 
> connection) everything seems fine, but the the Remote Server is a web server 
> with keep alive disabled, and many small requests are made, many images, 
> htmls, css are truncated.
> Sorry I can't be more precise with this, but I hope anyone else having a 
> similar trouble can help fill out this bug with details.
> *Update in 2017*
> I have provided a maven project with a unit test that has a 100% failure rate 
> on my desktop without resorting to creating artificial load. It is a lot 
> simpler!



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to