408 errors

Please register or login

Welcome to ScubaBoard, the world's largest scuba diving community. Registration is not required to read the forums, but we encourage you to join. Joining has its benefits and enables you to participate in the discussions.

Benefits of registering include

  • Ability to post and comment on topics and discussions.
  • A Free photo gallery to share your dive photos with the world.
  • You can make this box go away

Joining is quick and easy. Log in or Register now!

Status
Not open for further replies.

dfx

Contributor
Messages
1,834
Reaction score
632
Location
Binbrook, ON
# of dives
200 - 499
I keep getting 408 errors from SB, as shown below. They occur randomly and can't be reproduced. The error appears immediately, so it's not an actual timeout occurring. An immediate page reload brings up the actual page. SB is the only website where I get those errors.

Screenshot - 051214 - 19:15:24.jpg
 
After some testing, it seems that this is probably caused by "speculative pre-connects" done by various browsers.

The underlying issue is that if a web server received a connection but didn't receive any data within that connection when the timeout occurs, it should simply disconnect the socket without producing an error (HTTP 1.1 specifies that connections should be treated as persistent by default). The 408 error should only be produced if the server received some data, but not enough for a complete request. The SB server seems to behave incorrectly here in that it produces a 408 error even if no data at all was received within the connection. This is what throws the browser off when it finally gets around to use the connection.

The browsers also have a timeout for such connections so that they close them if they're not used within a certain time (seems to be around 10 seconds). If the server's timeout is longer than the browser's timeout, then that should also fix the problem, even if it's not possible to eliminate the 408 messages. The timeout on the SB server is very very short.

Code:
tabasco:~# telnet www.scubapro.com 80
Trying 184.106.52.2...
Connected to webprod.johnsonoutdoors.com.
Escape character is '^]'.
Connection closed by foreign host.



tabasco:~# telnet www.edge-gear.com 80
Trying 216.139.230.227...
Connected to www.edge-gear.com.
Escape character is '^]'.
Connection closed by foreign host.



tabasco:~# telnet www.hendersonusa.com 80
Trying 66.228.32.74...
Connected to www.hendersonusa.com.
Escape character is '^]'.
Connection closed by foreign host.



tabasco:~# telnet www.mares.com 80
Trying 193.41.201.188...
Connected to www.mares.com.
Escape character is '^]'.
Connection closed by foreign host.



tabasco:~# telnet dfx.at 80
Trying 2001:470:1f0b:380::dead:f00d...
Connected to dfx.at.
Escape character is '^]'.
Connection closed by foreign host.



tabasco:~# telnet www.scubaboard.com 80
Trying 69.28.64.170...
Connected to scubaboard.com.
Escape character is '^]'.
HTTP/1.0 408 Request Time-out
Cache-Control: no-cache
Connection: close
Content-Type: text/html

<html><body><h1>408 Request Time-out</h1>
Your browser didn't send a complete request in time.
</body></html>
Connection closed by foreign host.
 
Thanks, maybe PM Howarde with a link - he hasn't seen this thread yet.
 
I've seen it. The timeout is not short.
 
Must be you. The time out is much longer.

Sent from my DROID RAZR HD using Tapatalk
 
Additionally, an error 408 is not a server timeout (or exceeded the max execution time), that would be an error 504 or gateway timeout.
 
Code:
tabasco:~# time telnet www.scubaboard.com 80
Trying 69.28.64.170...
Connected to scubaboard.com.
Escape character is '^]'.
HTTP/1.0 408 Request Time-out
Cache-Control: no-cache
Connection: close
Content-Type: text/html


<html><body><h1>408 Request Time-out</h1>
Your browser didn't send a complete request in time.
</body></html>
Connection closed by foreign host.


real    0m12.183s
user    0m0.000s
sys    0m0.012s
tabasco:~#

How would that be caused by anything on my side?

---------- Post added May 20th, 2014 at 08:19 AM ----------

From my server, totally unrelated network:

Code:
dfx@kermit:~$ time telnet www.scubaboard.com 80
Trying 69.28.64.170...
Connected to scubaboard.com.
Escape character is '^]'.
HTTP/1.0 408 Request Time-out
Cache-Control: no-cache
Connection: close
Content-Type: text/html


<html><body><h1>408 Request Time-out</h1>
Your browser didn't send a complete request in time.
</body></html>
Connection closed by foreign host.


real    0m12.251s
user    0m0.000s
sys    0m0.000s
dfx@kermit:~$
 
Code:
tabasco:~# time telnet www.scubaboard.com 80
Trying 69.28.64.170...
Connected to scubaboard.com.
Escape character is '^]'.
HTTP/1.0 408 Request Time-out
Cache-Control: no-cache
Connection: close
Content-Type: text/html


<html><body><h1>408 Request Time-out</h1>
Your browser didn't send a complete request in time.
</body></html>
Connection closed by foreign host.


real    0m12.183s
user    0m0.000s
sys    0m0.012s
tabasco:~#

How would that be caused by anything on my side?

---------- Post added May 20th, 2014 at 08:19 AM ----------

From my server, totally unrelated network:

Code:
dfx@kermit:~$ time telnet www.scubaboard.com 80
Trying 69.28.64.170...
Connected to scubaboard.com.
Escape character is '^]'.
HTTP/1.0 408 Request Time-out
Cache-Control: no-cache
Connection: close
Content-Type: text/html


<html><body><h1>408 Request Time-out</h1>
Your browser didn't send a complete request in time.
</body></html>
Connection closed by foreign host.


real    0m12.251s
user    0m0.000s
sys    0m0.000s
dfx@kermit:~$

I'm not going to tell you why this is what I would expect to see from your test.
 
Status
Not open for further replies.
https://www.shearwater.com/products/peregrine/

Back
Top Bottom