[ https://issues.apache.org/jira/browse/TS-2431?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Leif Hedstrom updated TS-2431: ------------------------------ Fix Version/s: (was: 5.1.0) 5.0.0 > Add SPDY supporting to ATS > -------------------------- > > Key: TS-2431 > URL: https://issues.apache.org/jira/browse/TS-2431 > Project: Traffic Server > Issue Type: New Feature > Components: HTTP > Reporter: Yunkai Zhang > Assignee: Yunkai Zhang > Fix For: 5.0.0 > > Attachments: 0001-TS-2431-Preparation-of-SPDY-protocol.V3.patch, > 0002-TS-2431-Add-autoconf-options-for-SPDY.V3.patch, > 0003-TS-2431-Extends-and-optimizes-FetchSM.V3.patch, > 0004-TS-2431-Implement-dechunk-supporting-in-FetchSM.V3.patch, > 0005-TS-2431-Migrate-Taobao-SPDY-plugin-to-ATS-core.V3.patch, > 0006-TS-2431-Add-SSL-supporting-for-SPDY.V3.patch, > 0007-TS-2431-Set-proto_type-properly-for-HttpSM.V3.patch, > 0008-TS-2431-Add-client_req_proto_type-cqpt-field-into-lo.V3.patch, > 0009-TS-2431-Close-SPDY-request-when-SPDY-is-not-endabled.V3.patch, > 0010-TS-2431-Fix-infinite-loop-when-reading-the-fist-byte.V3.patch, > 0011-TS-2431-Fix-dechunking-on-FetchSM-s-response-data.V3.patch, > 0012-TS-2431-Set-the-water-mark-of-resp_buffer-with-INT64.V3.patch, > 0013-TS-2431-Set-eof-flag-to-prevent-spdy-client-hang.V3.patch, > 0014-TS-2431-Ignore-fetch-errors-after-FETCH_BODY_DONE.V3.patch > > > I must say, sorry for my late. And now, I have finished the first version, > the migration of Taobao SPDY plugin to ATS core. > But seriously speaking, the migration to ATS core is finished *partially*. I > had tried to remove the dependency of *fetcher* library created by @Quehan > and create a specific VC for each http request in spdy sm, but I found it was > too difficult, so I give up temporarily. > Let me push this series patches to here before it's perfect enough, at least, > this series can statisfy TAOBAO's current demand (in fact, this version has > had good performance in our testing, but it can do much better I think). > I had thought another solution instread of recreating a new VC for each http > request in spdy sm, which will replace FetchSM's function and speed up SPDY > protocol, but will not change the framework of this version. So I can hacking > it based on these patches in the future. > == *UPDATE* == > - From now on, SPDY can work with SSL, Cheers! > ==How to test it== > - Install *spdylay* library, here is URL of this lib: > Download spdylay library: https://github.com/tatsuhiro-t/spdylay > - Use '--enable-spdy' option to compile ATS: > {code} > $ ./configure --enable-spdy > $ make all && make install > {code} > - SPDY can work with SSL now, it depends on OpenSSL >= 1.0.1. You can use > '--with-openssl=<dir>' option to tell ATS where to search it: > {code} > $ ./configure --enable-spdy --with-openssl=/path/to/openssl-1.01 > {code} > - Need not to config anything if you just want to test SPDY without SSL. > The code can recognize SPDY or HTTP by reading this first byte of request. > - When test SPDY+SSL, you may need to configure SSL key properly for ATS. > - You can use *spdycat* in spdylay(or other SPDY client) to do request, for > example: > {code} > # SPDY without SSL > $ spdycat -3 -v --no-tls http://localhost/b.txt > # SPDY + SSL > $ spdycat -3 -v https://localhost/b.txt > {code} > - You can enable debuging logs of SPDY: > {code} > CONFIG proxy.config.diags.debug.enabled INT 1 > CONFIG proxy.config.diags.debug.tags STRING spdy > {code} > ==TODO=== > - Migrate spdy configuration to ATS records.config > Any feedbacks are welcome. -- This message was sent by Atlassian JIRA (v6.1.5#6160)