tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Costin Manolache <>
Subject Re: GSoC Tomcat SPDY Connectors
Date Mon, 05 Apr 2010 04:11:48 GMT
On Sun, Apr 4, 2010 at 6:36 PM, Felix Kurth <> wrote:

> Hi
> I am still working on my Proposal for GSoC.
> I had a closer look at the sources of org/apache/coyote and also
> modules/tomcat-lite/java/org/apache/tomcat/lite/http.
> Now I have more than one Idea how to achieve the implementation of a SPDY
> connector.
> At the moment I guess it is most feasible to implement SPDY connector by
> sticking close to the model used in Http11NioProtocol or Http11Protocol or
> Http11AprProtocol and theire related classes. For the SPDY tcp session
> multiplexing i would stick to the SpdyConnector at tomcat_lite but i don?t
> think i can reuse it just like it is due to the different auxiliary classes
> used in tomcat_lite and tomcat implementation.

There is a coyote.lite.LiteProtocolHandler that does the adaptation.

> From the Hint in the mail  104983 at the mailinglist I got the Idea that,
> to be able to fully Implement the SSL feature for the SPDY, it is necessary
> to use the APREndpoint from the org/apache/tomcat/util/net libary. Did i get
> that right Costin?

Yes, so far 'next protocol negotiation' is only supported in openssl, so you
need apr. You may need additional JNI, not sure how much of TLS extensions
are exposed.

> It might also be feasible to extend and overwrite the HttpProcessor and
> InternalBuffer and some more to introduce the SPDY multiplexing as the layer
> below HTTP. At least not so much duplicated code would be produced.

Most of the code in connectors is highly duplicated and a bit fragile.

> I am wondering about how exactly the server_push/hint will be enabled. I
> would probably use one of the ActionHook actions but which?
The question is how to expose it at servlet level - you can define new
ActionHooks, but they don't look very well used directly in a servlet.


  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message