首页 > 分享 > SPDY(ATS)测试总结

SPDY(ATS)测试总结

2014年1月16日     浏览数:3,726 发表评论 阅读评论

SPDY(ATS)测试总结

环境:Centos 6.5 x86_64

openssl 版本要为 1.0.0d以上的版本 支持NPN(Next Protocol Negotiation)

Support for NPN was added in OpenSSL (1.0.0d+)

需要spdylay 库支持,Centos 6 上,需要升级libxml2 和libevent(默认的rpm包版本不支持ssl)的开发库。

spdycat -a  要求 ibxml2 >= 2.7.7 

shrpx 要求 libevent-openssl >= 2.0.8

升级libxml2 和libevent 的方法

wget ftp://rpmfind.net/linux/fedora/linux/development/rawhide/source/SRPMS/l/libxml2-2.9.1-2.fc20.src.rpm

wget ftp://rpmfind.net/linux/fedora-secondary/development/rawhide/source/SRPMS/l/libevent-2.0.18-3.fc19.src.rpm

然后重新build 一下包,执行rpm -Uvh xxx.rpm

注意:升级lib event 的时候,由于libevent-2.0.18-3.fc19.src.rpm 出来的包没有libevent-

headers 包。会造成update 失败,处理方法是先rpm -e libevent-headers --nodeps ,然后再执行升级

spdylay安装方法

spdylay官方地址

git clone https://github.com/tatsuhiro-t/spdylay.git

fedora 目录下面有spec 文件,可以直接生成rpm包。本人喜欢rpm,使用维护方便

ats spdy 目前只支持http patch

ats 安装配置(patch后可以自己生成rpm包)

git clone git-wip-us.apache.org/repos/asf/trafficserver.git

然后patch 

patch -p1 <../spdy-patch/0001-TS-2431-Preparation-of-SPDY-protocol.patch
patch -p1 <../spdy-patch/0002-TS-2431-Add-autoconf-options-for-SPDY.patch
patch -p1 <../spdy-patch/0003-TS-2431-Extends-and-optimizes-FetchSM.patch
patch -p1 <../spdy-patch/0004-TS-2431-Implement-dechunk-supporting-in-FetchSM.patch 
patch -p1 <../spdy-patch/0005-TS-2431-Migrate-Taobao-SPDY-plugin-to-ATS-core.patch 

接着执行autoreconf -i
./configure --prefix=/usr/local/spdy --enable-spdy 
make
make install

配置remap 频道。
map http://www.a.com/   http://www.a.com/

打开debug tag

CONFIG proxy.config.diags.debug.enabled INT 1
CONFIG proxy.config.diags.debug.tags STRING spdy

测试:

1.使用spdycat (暂时只支持http)

spdycat -3 -v --no-tls http://www.a.com/111.txt


2.chrome 测试

chrome 启动的时候添加如下参数  --use-spdy=no-ssl

打开浏览器后,输入 chrome://net-internals/#spdy

SPDY Enabled: true
Use Alternate Protocol: false
Force SPDY Always: true
Force SPDY Over SSL: false
Next Protocols: 

现在 Force SPDY Over SSL: false  产关闭状态,打开www.a.com/111.txt 可以正常访问。

打开非spdy的站不可用。因Next Protocols:为空。不支持http 1.1 等。

chrome 不加参数启动spdy信息如下:

SPDY Enabled: true
Use Alternate Protocol: true
Force SPDY Always: false
Force SPDY Over SSL: true
Next Protocols: http/1.1,spdy/2,spdy/3,spdy/3.1

几个启动参数详解:

http://www.chromium.org/spdy/spdy-tools-and-debugging

--use-spdy=ssl
    Forces Chrome to always use SPDY, even if not negotiated over SSL
--use-spdy=no-ssl
    Forces Chrome to always use SPDY, but without SSL

在访问的时候,可以参看traffic.out 中的debug 输出
分类: 分享 标签:
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.