Commit Graph

132 Commits

Author SHA1 Message Date
Patrick McManus
4ade0830ac bug 528222 Basic SPDY web transport support. r=honzab r=bsmith sr=biesi
patch 0
2011-12-02 10:28:56 -05:00
Luca Tettamanti
176a05ea98 Bug 702941 Disable HTTP pipelining Winstone when talking to Servlet Engine r=mcmanus 2011-11-17 11:41:53 -05:00
Ehsan Akhgari
478ad1a412 Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
Michael Wu
0fe7772ece Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
Kyle Huey
f32aeb3e20 Bug 671053: Explicitly drop nsHttpConnection's ref to the callbacks at transaction close rather than waiting for connection reuse/expiration. r=mcmanus 2011-07-14 11:09:48 -07:00
Patrick McManus
0dc5f70e07 bug 658580 revert isalive() from 654201 to fix an alternate way r=honzab 2011-06-15 10:24:09 -04:00
Matt Brubeck
fcee22a556 Back out 58c903b0db40 (bug 658580) temporarily to get m-i in a known good state. 2011-06-15 09:39:42 -07:00
Patrick McManus
7e4d2c95c4 bug 658580 revert isalive() from 654201 to fix an alternate way r=honzab 2011-06-15 10:24:09 -04:00
Patrick McManus
b3bd91823a 604796 - close our idle HTTP connection when server closes its end r=honzab 2011-05-16 09:32:37 -04:00
Patrick McManus
057d9b2801 bugzilla 640213 Implement RFC 2616 "Upgrade" (Section 14.42) r=biesi sr=bz 2011-05-19 19:43:37 -04:00
Patrick McManus
72faebc800 Bug 654201 - avoid nsHttpConnection::IsAlive() running event loop for unused SSL connections r=honzab sr=biesi 2011-05-19 15:06:44 -04:00
Phil Ringnalda
d1ce898fd9 Back out 40d44ce2377e (bug 640213) on suspicion of causing Windows crashes and timeouts in media tests 2011-05-14 20:13:57 -07:00
Patrick McManus
0d44042e98 Bug 640213 - Implement HTTP 2616 Upgrade. r=biesi, sr=bz. 2011-05-14 18:55:54 +01:00
Daniel Holbert
58260aa464 Merging cedar with mozilla-central. 2011-05-13 17:17:56 -07:00
Patrick McManus
e7b47aa617 bug 654201 - an idle persistent connection could be run with the wrong security callbacks r=honzab 2011-05-13 13:28:30 -07:00
Patrick McManus
92379099bb bug 640003 - websockets, nsIIOService2::NewChannelFromURIWithProxyFlags() r=biesi sr=bz 2011-05-13 13:53:27 -04:00
Honza Bambas
0ef13e73e4 Bug 526207: Make IP address and port information available to HTTP activity observers. r=biesi 2011-04-10 10:33:08 -07:00
Patrick McManus
df2c4d6aaf bugzilla 595316 remove static cast of nsAHttp* objs r=honzab 2011-04-08 14:37:16 -04:00
Patrick McManus
c1ff70d4e6 624739 - sort idle persistent http connections by pereceived server cwnd 2011-04-08 14:36:47 -04:00
Patrick McManus
0a5c32765a bug 623948 - Accelerate TCP connection retries in HTTP r=honzab 2011-03-31 15:38:30 -04:00
Ehsan Akhgari
a37a42a15a Backout the latest cedar merge wholesale until I test the correctness of the merge locally. This commit takes the tree state back to changeset 8d3f6093c425 (the last known good changeset before the merge) 2011-04-01 12:23:48 -04:00
Patrick McManus
c8ecb7eec9 bug 623948 - Accelerate TCP connection retries in HTTP r=honzab 2011-03-31 15:38:30 -04:00
Patrick McManus
3cfaf8a522 624374 - remove unused nsHttpConnection::mLock. r=honzab.moz@firemni.cz, a=jst@mozilla.com 2011-02-02 10:53:06 -08:00
Patrick McManus
1986f956e3 bug 628832 - fix regression in http/0.9 detection from 363109; r=zbarsky a=blocking-2.0
* instead of making (dis)-allow 0.9 a property of connection info,
  work off a state machine that engages in the liberal skipping of
  junk before response headers only immediately after a no-content
  response on the same connection.

* when scanning for response headers in a large amount of junk place a
  non infinite limit on that (128KB).. the only known use case for
  this is skipping illegal message bodies in 304's and those just
  aren't that big.
2011-01-27 13:34:39 -05:00
Patrick McManus
e946f6d944 bug 623921: Out of an abundance of caution back out feature: 592284 - HTTP Syn Retry r=honzab a=backout 2011-01-07 11:11:22 -05:00
Patrick McManus
e50da8cf3f Bug 613977 - Intermittent invalid certificate error prompt in security tests causing timeouts r=honzab a=beta-N 2011-01-05 08:37:45 -05:00
Patrick McManus
ca2469bdb4 Bug 613977 - Intermittent invalid certificate error prompt (partial) r=honzab a=blocking-beta9
Bug 614677 - Connection is reset message appears intermittently
Bug 614950 - Connections stall occasionally after 592284 landed

A couple of follow-on changes to 592284 rolled together to prevent
diff conflicts

1] Set the securitycallback information for unused speculative
connections in the connection manager to be the new cloned connection
rather than the one they originated on. (613977)

2] When adding unused speculative connections to the connection
manager, due so with a short timeout (<= 5 seconds) as some servers
get grumpy if they haven't seen a request in that time. Most will
close the connection, but some will just sit there quietly and RST
things when the connection is used - so if you don't use the
connection quickly don't use it at all. This is probably a L4 load
balancer issue, actually. Mozillazine illustrates the
problem. Connections are made in bursts anyhow, so the reuse optimization is
likely still quite useful. (614677 and 614950)

3] mark every connection in the connection manager persistent
conneciton pool as "reused". This allows the transaction to be
restarted if a RST is recvd upon sending the requests (see #2) - with
the conservative timeout this is now a rare event, but still possible
so recovery is the right thing to do. (614677 and 614950)

4] obtain an nshttpconnection object from the connection manager,
subject to the max connection constraints, at the same time as
starting the backup conneciton. If we defer that until recycling time
the exceeded limits of the SocketService can cause problems for other
connections.

also re-enables the syn retry feature by default.

r+ honzab
2010-12-16 08:50:36 -05:00
Michal Novotny
6f3283b1e7 bug 363109 - body of HTTP 304 response is treated as a HTTP/0.9 response to subsequent HTTP request. r=biesi, sr=bz, a=blocker 2010-12-01 02:02:52 +02:00
Patrick McManus
f08a5468f7 Bug 592284 - Accelerate TCP connection retries in HTTP. r=honzab a=blocking2.0
Losing a TCP SYN requires a long painful (typically 3 second) delay
before being retried. This patch creates a second parallel connection
attempt for any nsHttpConnection which has not become writable before
a timeout occurs.

If you assume .5% packet loss, this converts a full 3 second delay
from a 1 in 200 event into a 1 in 40,000 event.

Whichever connection establishes itself first is used. If another one
has been started and it does connect before the one being used is
closed then the extra one is handed to the connection manager for use
by a different transaction - essentially a persistent connection with
0 previous transactions on it. (Another way to think about is
pre-fetching a 3WHS on a high latency connection).

The pref network.http.connection-retry-timeout controls the amount of
time in ms to wait for success on the initial connection before beginning
the second one. Setting it to 0 disables the parallel connection, the
default is 250.
2010-11-21 09:50:36 +01:00
Patrick McManus
89e0083211 Bug 593386 - HTTP Pipeline Blacklist annotations. r=jduell
Add EFAServer, Nestscape Enterprise 4/5/6, and Weblogic <=6 to
server pipeline blacklist, joining iis/4, iis/5, and nses/3.

The previous code did 3 strcasestr()s on every http transaction to check
the old blacklist - it did that even if pipelining was configured off.

The new code creates indexes to the lookups according to the first
char and changes the comparison to straight strncmp()s which are
totally fine for finding these signatures... Servers that begin with A
don't need any string operations now, and even servers that begin with
M have gone from 3 strcasestr()s to 2 strcncmp()s which is definitely
better.
2010-09-03 21:35:49 -04:00
Jon Hemming
4c7b0c341b Bug 591881 - Suspend pruning of idle connections when possible. r=dwitte a=blocking-fennec 2010-10-14 17:28:43 -07:00
Mitchell Field
bc63774d7e Bug 542222 - Reduce recursion in netwerk makefiles. 2010-06-05 21:18:12 -04:00