Slow Negotiation

Negotiation of a connection using SSH 2 is very slow on some devices. Karl is currently investigating to see whether anything can be done to further speed up the connection, or whether these devices are just too slow!

Device List

The following devices are known to be slow. Please update this list with the make, model and approximately how long it takes to connect.

  • Blackberry 7280 (few minutes, sometimes fails)
  • BlackBerry 7100i (1-2 mins)
  • Blackberry 7105t (2+ mins)
  • Motorola A630 (2 mins)
  • Motorola E398 (2 mins)
  • Motorola Krzr K1 (2 mins)
  • Motorola Razr V3 (2 mins)
  • Motorola Slvr L7 (2 mins)
  • Motorola V600 (2 mins)
  • Motorola C390 (~2 mins)
  • Motorola PEBL U6 (3 mins - connection drops)
  • Nokia 2610 (around 1min 30sec - connection drops rarely with key size 256)
  • Nokia 6020 (few minutes - connection drops)
  • Nokia 6070 (few minutes and error with key size 512, a minute but works when 32)
  • Nokia 6101 (2 mins)
  • Nokia 6220 (few minutes - connection drops sometimes)
  • Nokia 6021 (few minutes - connection drops)
  • Nokia 6820 (3 mins - times out sometimes)
  • Samsung A840 (few mins to negotiation, writer throws io exception, few more mins to OK, shows key, but never gets to authentication)
  • Sanyo SCP-2300 (5 mins - connection drops/timesout)
  • Siemens MC60 (10 mins)
  • Nokia 6021 (2m20s - connection drops, successful connection with key size 64 in 1min to 1,5mins)
  • Nokia 6103 v04.61 (ca. 3 mins)

Here is some tcpdump output from the server side (using Nokia 6103)

0.000000 212.23.xxx -> 88.198.yyy TCP 1611 > ssh [SYN] Seq=0 Len=0 MSS=1380 TSV=382459610 TSER=0 WS=1 
0.000045 88.198.yyy -> 212.23.xxx TCP ssh > 1611 [SYN, ACK] Seq=0 Ack=1 Win=5792 Len=0 MSS=1460 TSV=404379912 TSER=382459610 WS=6
0.009435 212.23.xxx -> 88.198.yyy TCP 1611 > ssh [ACK] Seq=1 Ack=1 Win=68400 Len=0 TSV=382459611 TSER=404379912
0.016014 88.198.yyy -> 212.23.xxx SSH Server Protocol: SSH-2.0-OpenSSH_4.3p2 Debian-9
0.024771 212.23.xxx -> 88.198.yyy TCP 1611 > ssh [ACK] Seq=1 Ack=32 Win=68400 Len=0 TSV=382459612 TSER=404379916
0.921277 212.23.xxx -> 88.198.yyy SSH Client Protocol: SSH-2.0-SSH/MidpSSH
0.921459 88.198.yyy -> 212.23.xxx TCP ssh > 1611 [ACK] Seq=32 Ack=21 Win=5824 Len=0 TSV=404380142 TSER=382459702
0.922281 88.198.yyy -> 212.23.xxx SSHv2 Server: Key Exchange Init
0.931267 212.23.xxx -> 88.198.yyy TCP 1611 > ssh [ACK] Seq=21 Ack=744 Win=68400 Len=0 TSV=382459703 TSER=404380142
2.930583 212.23.xxx -> 88.198.yyy SSHv2 Client: Key Exchange Init
2.966898 88.198.yyy -> 212.23.xxx TCP ssh > 1611 [ACK] Seq=744 Ack=173 Win=6912 Len=0 TSV=404380654 TSER=382459903
... This is when it says "Negotiating" ...
62.982232 212.23.xxx -> 88.198.yyy SSHv2 Client: Ignore
62.982274 88.198.yyy -> 212.23.xxx TCP ssh > 1611 [ACK] Seq=744 Ack=189 Win=6912 Len=0 TSV=404395657 TSER=382465908
77.450877 212.23.xxx -> 88.198.yyy SSHv2 Client: Diffie-Hellman Key Exchange Init
77.450912 88.198.yyy -> 212.23.xxx TCP ssh > 1611 [ACK] Seq=744 Ack=333 Win=7936 Len=0 TSV=404399274 TSER=382467355
77.455388 88.198.yyy -> 212.23.xxx SSHv2 Server: New Keys
77.560685 212.23.xxx -> 88.198.yyy TCP 1611 > ssh [ACK] Seq=333 Ack=1400 Win=68400 Len=0 TSV=382467366 TSER=404399275
137.383071 212.23.xxx -> 88.198.yyy SSHv2 Client: Ignore
137.421156 88.198.yyy -> 212.23.xxx TCP ssh > 1611 [ACK] Seq=1400 Ack=349 Win=7936 Len=0 TSV=404414266 TSER=382473348
197.403185 212.23.xxx -> 88.198.yyy SSHv2 Encrypted request packet len=16
197.403222 88.198.yyy -> 212.23.xxx TCP ssh > 1611 [ACK] Seq=1400 Ack=365 Win=7936 Len=0 TSV=404429260 TSER=382479351
207.043209 212.23.xxx -> 88.198.yyy SSHv2 Encrypted request packet len=16
207.043232 88.198.yyy -> 212.23.xxx TCP ssh > 1611 [ACK] Seq=1400 Ack=381 Win=7936 Len=0 TSV=404431670 TSER=382480315
... About now the prompt is there ...
208.775304 212.23.xxx -> 88.198.yyy SSHv2 Encrypted request packet len=52
208.775341 88.198.yyy -> 212.23.xxx TCP ssh > 1611 [ACK] Seq=1400 Ack=433 Win=7936 Len=0 TSV=404432103 TSER=382480488
208.775608 88.198.yyy -> 212.23.xxx SSHv2 ssh > 1611 [PSH, ACK] Seq=1400 Ack=433 Win=7936 Len=52 TSV=404432103 TSER=382480488[Malformed Packet]
208.881467 212.23.xxx -> 88.198.yyy TCP 1611 > ssh [ACK] Seq=433 Ack=1452 Win=68400 Len=0 TSV=382480499 TSER=404432103
209.748969 212.23.xxx -> 88.198.yyy SSHv2 Encrypted request packet len=84
209.750517 88.198.yyy -> 212.23.xxx SSHv2 Encrypted response packet len=36
209.853453 212.23.xxx -> 88.198.yyy TCP 1611 > ssh [ACK] Seq=517 Ack=1488 Win=68400 Len=0 TSV=382480596 TSER=404432347
210.826539 212.23.xxx -> 88.198.yyy SSHv2 Encrypted request packet len=60
210.826848 88.198.yyy -> 212.23.xxx SSHv2 Encrypted response packet len=52
210.931686 212.23.xxx -> 88.198.yyy TCP 1611 > ssh [ACK] Seq=577 Ack=1540 Win=68400 Len=0 TSV=382480704 TSER=404432616
211.907115 212.23.xxx -> 88.198.yyy SSHv2 Encrypted request packet len=76
211.944613 88.198.yyy -> 212.23.xxx TCP ssh > 1611 [ACK] Seq=1540 Ack=653 Win=7936 Len=0 TSV=404432896 TSER=382480801
 
troubleshooting-slow-negotiation.txt · Last modified: 2007/11/29 16:02 by 72.245.94.185
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki