[
https://issues.apache.org/jira/browse/TS-3153?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14189030#comment-14189030
]
Sudheer Vinukonda commented on TS-3153:
---------------------------------------
This approach only works for new sessions initiated by the client - If the
client reuses the same spdy session for multiple domains (assuming the certs
match), then, this will not work.
Below are some browser behavior examples:
http://www.chromium.org/spdy/spdy-protocol/spdy-protocol-draft3-1#TOC-4.3-One-Connection-Per-Domain
{code}
4.3 One Connection Per Domain
SPDY attempts to use fewer connections than other protocols have traditionally
used. The rationale for this behavior is because it is very difficult to
provide a consistent level of service (e.g. TCP slow-start), prioritization, or
optimal compression when the client is connecting to the server through
multiple channels.
Through lab measurements, we have seen consistent latency benefits by using
fewer connections from the client. The overall number of packets sent by SPDY
can be as much as 40% less than HTTP. Handling large numbers of concurrent
connections on the server also does become a scalability problem, and SPDY
reduces this load.
The use of multiple connections is not without benefit, however. Because SPDY
multiplexes multiple, independent streams onto a single stream, it creates a
potential for head-of-line blocking problems at the transport level. In tests
so far, the negative effects of head-of-line blocking (especially in the
presence of packet loss) is outweighed by the benefits of compression and
prioritization.
{code}
https://bugzilla.mozilla.org/show_bug.cgi?id=528288#c60
{code}
The spdy host coalescing (aka ip pooling or de-sharding), requires a little bit
of cert verification. See
https://groups.google.com/forum/#!topic/spdy-dev/UW0_X2GaMSQ
This basically means that if host A and B share the same IP address then the
SPDY connection for A can be used for transactions of host B if the cert we are
using for host A would be acceptable for host B (and the coalesce feature is
enabled, of course). The canonical example here is that A==foo.domain.com and
B==bar.domain.com and A's cert is *.domain.com. This is how the google services
operate, as a pertinent example. But if A's cert covered just foo.domain.com we
don't want to put the requests for bar.domain.com down that pipe.
{code}
> Ability to disable protocols based on SNI information
> -----------------------------------------------------
>
> Key: TS-3153
> URL: https://issues.apache.org/jira/browse/TS-3153
> Project: Traffic Server
> Issue Type: Improvement
> Components: HTTP/2, SPDY
> Reporter: Bryan Call
> Fix For: 5.2.0
>
> Attachments: TS-3153.diff
>
>
> We are running into problems where certain origin servers are having issues
> when SPDY is enabled. It would be great to have more control over when
> protocols are enabled.
> One way to do this would be to add a protocol options to the entry in the
> ssl_multicert config. We wound then add additional entries for domains that
> need to disable the protocols. All protocols should be enabled by default.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)