日志文章

2008年08月13日 23:32:36

Tracker服务器源码分析之三:HTTPHandler 类-

作者:小马哥

日期:2004-6-7


本篇文章分析 HTTPHandler类,它在 HTTPHandler.py 文件中。

上一篇我们讲到, RawServer 只负责网络 I/O,也就是从网络上读取和发送数据,至于读到的数据如何分析,以及应该发送什么样的数据,则交给 Handler 类来处理。如果是用 c++ 来实现的话,那么 Handler 应该是一个接口类(提供几个虚函数作为接口),但是 python 动态语言的特性,并不需要专门定义这么一个接口类,所以实际上并没有 Handler 这么一个类。任何一个提供了以下成员函数的类,都可以作为一个 Handler 类来与 RawServer 配合,它们是:


external_connection_made():在建立新的连接的时候被调用

data_came_in():连接上有数据可读的时候被调用

connection_flushed():当在某个连接上发送完数据之后被调用


  HTTPHandler 就是这样一个 Handler 类,它具备以上接口。

  HTTPHandler 代码很少,因为它把主要工作又交给 HTTPConnection 了。

  我们看 HTTPHandler 类的这几个函数:


l       external_connection_made()

每当新来一个连接的时候,就创建一个 HTTPConnection 类。


l       data_came_in()

当连接上有数据可读的时候,调用 HTTPConnection::data_came_in()。我们接下去看HTTPConnection::data_came_in()


我们知道,BT client端与 tracker服务器之间是通过tracke HTTP 协议来进行通信的。HTTP协议分为请求(request)和响应(response),具体的协议请看相关的 RFC 文档。我这里简单讲一下。

tracke 服务器来说,它读到的数据是 client 端的HTTP 请求。


HTTP请求以行为单位,行的结束符是“回车换行”,也就是 ascii 字符 \r”和“\n”。


第一行是请求的 URL,例如:

GET   /announce?ip=aaaaa;port=bbbbbbb HTTP/1.0


这行数据被空格分为三部分,

第一部分GET表示命令,其它命令还有POSTHEAD等等,常用的就是GET了。

第二部分是请求的URL,这里是 /announce?ip=aaaaa;port=bbbbbbb。如果是普通的上网浏览网页,那么URL 就是我们要看的网页在该web服务器上的相对路径。但是,这里的URL仅仅是交互信息的一种方式,client 端把要报告给 tracker 的信息,放在URL中,例子里面是 ip port,更详细的信息请看“BT协议规范”中 tracker 协议部分。

第三部分是HTTP协议的版本号,在程序中忽略。


接下来的每一行,都是HTTP协议的消息头部分,例如:


Accept-encoding:gzip


通过消息头,tracker服务器可以知道 client端的一些信息,这其中比较重要的就是 Accept-encoding,如果是 gzip ,那么说明 client 可以对 gzip 格式的数据进行解压,那么tracker服务器就可以考虑用 gzip 把响应数据压缩之后再传回去,以减少网络流量。我们可以在代码中看到相应的处理。

在消息头的最后,是一个空行,表示消息头结束了。对GETHEAD命令来说,消息头的结束,也就意味着整个client端的请求结束了。而对 POST 命令来说,可能后面还跟着其它数据。由于我们的 tracker服务器只接受 GET HEAD 命令,所以在协议处理过程中,如果遇到空行,那么就表示处理结束。



HTTPConnection::data_came_in() 用一个循环来进行协议分析:

首先是寻找行结束符号:


i = self.buf.index('\n')


(我认为仅仅找 \n”并不严谨,应该找 \r\n”这个序列)。

如果没有找到,那么 index() 函数会抛出一个异常,而异常的处理是返回 True,表示数据不够,需要继续读数据。

如果找到了,那么 i 之前的字符串就是完整的一行。于是调用协议处理函数,代码是:


self.next_func = self.next_func(val)


HTTPConnection 的初始化的时候,有这么一行代码:


self.next_func = self.read_type


next_func 是用来保存协议处理函数的,所以,第一个被调用的协议处理函数就是 read_type()。它用来分析client端请求的第一行。在 read_type() 的最后,我们看到:

return self.read_header


这样,在下一次调用 next_func 的时候,就是调用 read_header()了,也就是对 HTTP 协议的消息头进行分析。


下面先看 read_type()

它首先把 GET 命令中的 URL 部分保存到 self.path中,因为这是 client端最关键的信息,后面要用到。

然后检查一下是否是GET或者HEAD命令,如果不是,那么说明数据有错误。返回None,否则return self.read_header


接下来我们看read_header()

这其中,最重要的就是对空行的处理,因为前面说了,空行表示协议分析结束。

在检查完 client 端是否支持 gzip 编码之后,调用:


r = self.handler.getfunc(self, self.path, self.headers)


通过一层层往后追查,发现 getfunc() 实际是 Tracker::get(),也就是说,真正对 client 端发来的请求进行分析,以及决定如何响应,是由 Tracker 来决定的。是的,这个 Tracker 在我们tracker 服务器源码分析系列的第一篇文章中就已经看到了。在创建 RawServer 之后,马上就创建了一个 Tracker 对象。所以,要了解 tracker 服务器到底是如何工作的,需要我们深入进去分析 Tracker 类,那就是我们下一篇文章的工作了。


在调用完 Tracker::get() 之后,返回的是决定响应给 client 端的数据,

if r is not None:

self.answer(r)

最后,调用 answer() 来把这些数据发送给 client 端。


answer() 的分析,我们在下一篇分析 Tracker类的文章中一并讲解。


l       connection_flushed()

tracker服务器用的是非阻塞的网络 I/O ,所以不能保证在一次发送数据的操作中,把要发送的数据全部发送出去。

这个函数,检查在某个连接上需要发送的数据,是否已经全部被发送出去了,如果是的话,那么关闭这个连接的发送端。(为什么仅仅关闭发送端,而不是完全关闭这个连接了?疑惑)。




Tags: BT  

类别: 网络协议 |  评论(9) |  浏览(1774) |  收藏
9楼 [匿名]培训考证 2009年10月21日 23:50:24 Says:
您好!有需要社工、药师、人力资源管理师、经济师、企业培训师、注册税务师、监理工程师、管理咨询师、外语职称考试、计算机及在职研究生免费咨询服务,为您的企业培训找到合适的老师,为您的个人提升提供绿色通道,我们将为您真诚服务!详情请登录:http://www.szpx6688.cn/热线电话:075583190298 QQ:358526773 295549145
8楼 [匿名]AA 2009年10月18日 10:49:04 Says:
[URL=http://www.airforceoneshop.com/]Air force 1 shoes[/URL] [URL=http://www.airforceoneshop.com/]Nike air force one[/URL] [URL=http://www.airforceoneshop.com/]Nike air force [/URL] [URL=http://www.airforceoneshop.com/]Air force 1 mens[/URL] [URL=http://www.airforceoneshop.com/]Air force one[/URL] [URL=http://www.shoesshoe.co.uk/]UGG Boots [/URL] [URL=http://www.shoesshoe.co.uk/]UGG Shoes[/URL] [URL=http://www.shoesshoe.co.uk/]Discount UGG[/URL] [URL=http://www.shoesshoe.co.uk/]UGG Australia[/URL] [URL=http://www.shoesshoe.co.uk/]UGG Sale[/URL] [URL=http://www.shoesshoe.co.uk/]UGG Online [/URL] [URL=http://www.reviewups.com/]UGG Boots[/url] [URL=http://www.reviewups.com/]UGG Australia[/url] [URL=http://www.reviewups.com/]UGG Shoes[/url] [URL=http://www.reviewups.com/]UGG Sale[/url] [URL=http://www.reviewups.com/]Lebron Shoes[/url] [URL=http://www.reviewups.com/]Cheap UGG[/url] http://www.reviewups.com/
7楼 [匿名]GHD-CHI 2009年10月15日 05:31:00 Says:
<a href=http://www.brandghd.com/>Cheap GHD</a>
<a href=http://www.brandghd.com/>Discount CHI</a>
<a href=http://www.brandghd.co.uk/>Sale Hair Straighteners</a>
<a href=http://www.brandghd.co.uk/>GHD Hair Straighteners</a>
<a href=http://www.brandghd.co.uk/>CHI Hair Straighteners</a>
http://www.brandghd.co.uk/
6楼 [匿名]timberland supr 2009年10月12日 15:15:41 Says:
<a href=http://www.timberlandlike.com/>Timberland USA</a>
<a href=http://www.timberlandlike.com/>Timberland Boots</a>
<a href=http://www.timberlandlike.com/>Timberlands Shoes</a>
<a href=http://www.timberlandlike.com/>discount timberland</a>
<a href=http://www.timberlandlike.com/>Waterproof Boots</a>
<a href=http://www.timberlandlike.com/>Chukka Boots Sale</a>
http://www.timberlandlike.com/
<a href=http://www.somuch.co.uk/>UGG UK</a>
<a href=http://www.somuch.co.uk/>UGG Sale</a>
<a href=http://www.somuch.co.uk/>UGG Bailey Button</a>
<a href=http://www.somuch.co.uk/>UGG Boots</a>
http://www.somuch.co.uk/
<a href=http://www.thesuprashoes.com/>Supra Shoes</a>
<a href=http://www.thesuprashoes.com/>Supra Skytop Shoes</a>
<a href=http://www.thesuprashoes.com/>Supra Footware Sale</a>
<a href=http://www.thesuprashoes.com/>Discount supra Shoes</a>
<a href=http://www.thesuprashoes.com/>Official supra</a>
http://www.thesuprashoes.com/
5楼 [匿名]ecsgsroger 2009年10月11日 05:38:17 Says:
[url=http://www.ecshow.co.uk/]ugg uk[/url] [url=http://www.ecshow.co.uk/]ugg sale[/url] [url=http://www.ecshow.co.uk/]ugg boots[/url] [url=http://www.ecshow.co.uk/ugg-bailey-button-c-134.html]UGG Bailey Button[/url] [url=http://www.ecshow.co.uk/ugg-knightsbridge-c-141.html]UGG KnightsBridge[/url] [url=http://www.ecshow.co.uk/ugg-classic-cardy-c-121.html]UGG Classic Cardy[/url] [url=http://www.ecshow.co.uk/ugg-classic-tall-c-122.html]UGG Classic Tall[/url] [url=http://www.ecshow.co.uk/ugg-classic-short-c-120.html]UGG Classic Short[/url] [url=http://www.ecshow.co.uk/ugg-classic-mini-c-124.html]UGG Classic Mini[/url] [url=http://www.ecshow.co.uk/ugg-classic-crochet-c-125.html]UGG Classic Crochet[/url] [url=http://www.ecshow.co.uk/ugg-lo-pro-button-c-135.html]ugg lo pro button[/url] [url=http://www.ecshow.co.uk/ugg-nightfall-boots-c-126.html]UGG Nightfall boots[/url] [url=http://www.ecshow.co.uk/ugg-sundance-boots-c-127.html]UGG Sundance Boots[/url] [url=http://www.ecshow.co.uk/ugg-ultra-short-boots-c-128.html]UGG Ultra Short Boots[/url] [url=http://www.ecshow.co.uk/ugg-tasmina-sandals-c-130.html]UGG Tasmina Sandals[/url] [url=http://www.ecshow.co.uk/ugg-amelie-suede-c-131.html]UGG Amelie Suede[/url] [url=http://www.ecshow.co.uk/ugg-halendi-sandals-c-132.html]UGG Halendi Sandals[/url] [url=http://www.ecshow.co.uk/ugg-gypsy-sandals-c-133.html]UGG Gypsy Sandals[/url] [url=http://www.ecshow.co.uk/ugg-lo-pro-button-c-135.html]UGG Lo Pro Button Boots[/url] [url=http://www.ecshow.co.uk/ugg-coquette-casual-c-136.html]UGG Coquette Casual[/url] [url=http://www.ecshow.co.uk/ugg-womens-rainier-c-137.html]UGG Rainier[/url] [url=http://www.ecshow.co.uk/ugg-new-arrival-5389-c-139.html]UGG 5389[/url] [url=http://www.ecshow.co.uk/ugg-infants-erin-baby-c-140.html]UGG Erin Baby Boots[/url] [url=http://www.ecshow.co.uk/ugg-classic-tall-new-c-123.html]UGG Classic Tall Boots[/url] [url=http://www.ecshow.co.uk/ugg-bailey-button-c-134.html]ugg bailey button boots[/url] [url=http://www.ecshow.co.uk/ugg-bailey-button-c-134.html]bailey button boots[/url] [url=http://www.ecshow.co.uk/]nike shox[/url] [url=http://www.ecshow.co.uk/]nike dunk[/url] [url=http://www.ecshow.co.uk/]nike airmax[/url] [url=http://www.ecshow.co.uk/]supra shoes[/url] [url=http://www.ecshow.co.uk/prada-shoes-c-88.html]prada shoes[/url] [url=http://www.ecshow.co.uk/bape-shoes-c-35.html]bape shoes[/url] [url=http://www.ecshow.co.uk/lacoste-shoes-c-70.html]lacoste shoes[/url] [url=http://www.ecshow.co.uk/nike-nba-c-61.html]nike nba shoes[/url] [url=http://www.ecshow.co.uk/new-shox-nz-shoes-mens-c-92_112.html]shox nz shoes[/url] [url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]nike dunk sb shoes[/url] [url=http://www.ecshow.co.uk/ato-shoes-c-115.html]ato shoes[/url] [url=http://www.ecshow.co.uk/shox-r3-shoes-mens-c-92_97.html]shox R3 shoes[/url] [url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]nike high dunk sb[/url] [url=http://www.ecshow.co.uk/nike-shox-c-92.html]shox nike shoes[/url] [url=http://www.ecshow.co.uk/nike-shox-c-92.html]shox shoes[/url] [url=http://www.ecshow.co.uk/nike-shox-c-92.html]men's shox[/url] [url=http://www.ecshow.co.uk/nike-shox-c-92.html]womens shox[/url] [url=http://www.ecshow.co.uk/nike-shox-c-92.html]shox shoes online[/url] [url=http://www.ecshow.co.uk/]dunk shoes[/url] [url=http://www.ecshow.co.uk/nike-airmax-c-13.html]air max shoes[/url] [url=http://www.ecshow.co.uk/supra-shoes-c-6.html]mens supra[/url] [url=http://www.ecshow.co.uk/mens-supra-muska-skytop-shoes-c-6_8.html]supra muska skytop[/url] [url=http://www.ecshow.co.uk/mens-supra-muska-skytop-shoes-c-6_8.html]supra skytop[/url] [url=http://www.ecshow.co.uk/womens-supra-muska-skytop-shoes-c-6_9.html]womens supra shoes[/url] [url=http://www.ecshow.co.uk/mens-supra-muska-skytop-shoes-c-6_8.html]supra muska shoes[/url] [url=http://www.ecshow.co.uk/supra-shoes-c-6.html]supra shoes online[/url] [url=http://www.ecshow.co.uk/mens-lacoste-shua-lace-c-70_75.html]lacoste shua lace[/url] [url=http://www.ecshow.co.uk/nike-dunk-c-64.html]dunk sb shoes[/url] [url=http://www.ecshow.co.uk/nike-dunk-c-64.html]mens dunk[/url] [url=http://www.ecshow.co.uk/nike-dunk-c-64.html]women dunk[/url] [url=http://www.ecshow.co.uk/mens-low-nike-dunk-sb-c-64_67.html]dunk low sb[/url] [url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]dunk high sb[/url] [url=http://www.ecshow.co.uk/lacoste-shoes-c-70.html]mens lacoste shoes[/url] [url=http://www.ecshow.co.uk/lacoste-shoes-c-70.html]lacoste shoes online[/url] [url=http://www.ecshow.co.uk/new-shox-nz-shoes-mens-c-92_112.html]shox nz shoes[/url] [url=http://www.ecshow.co.uk/shox-r4-shoes-mens-c-92_100.html]shox r4 shoes[/url] [url=http://www.ecshow.co.uk/shox-r3-shoes-mens-c-92_97.html]shox r3 shoes[/url] [url=http://www.ecshow.co.uk/shox-oz-shoes-mens-c-92_96.html]shox oz shoes[/url] [url=http://www.ecshow.co.uk/new-shox-nz-shoes-mens-c-92_112.html]mens shox nz[/url] [url=http://www.ecshow.co.uk/new-shox-nz-shoes-womens-c-92_111.html]women shox nz shoes[/url] [url=http://www.ecshow.co.uk/mens-low-nike-dunk-sb-c-64_67.html]mens low nike dunk sb[/url] [url=http://www.ecshow.co.uk/mens-mid-nike-dunk-sb-c-64_66.html]mens mid nike dunk sb[/url] [url=http://www.ecshow.co.uk/womens-high-nike-dunk-sb-c-64_68.html]womens high nike dunk sb[/url] [url=http://www.ecshow.co.uk/womens-low-nike-dunk-sb-c-64_69.html]womens low nike dunk sb[/url] [url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]mens high nike dunk sb[/url] [url=http://www.ecshow.co.uk/nike-dunk-c-64.html]nike dunks[/url] [url=http://www.ecshow.co.uk/nike-airmax-c-13.html]nike air max[/url] [url=http://www.ecshow.co.uk/nike-dunk-c-64.html]nike dunk sale[/url] [url=http://www.ecshow.co.uk/mens-lacoste-swerve-c-70_85.html]lacoste swerve[/url] [url=http://www.ecshow.co.uk/mens-lacoste-protect-laser-c-70_74.html]lacoste protect[/url] [url=http://www.ecshow.co.uk/mens-prada-shoes-c-88_90.html]mens prada shoes[/url] [url=http://www.ecshow.co.uk/nike-mens-air-max-2009-shoes-c-13_25.html]nike air max 2009[/url] [url=http://www.ecshow.co.uk/nike-air-max-90-mens-shoes-c-13_14.html]nike air max 90[/url] http://www.ecshow.co.uk/
4楼 [匿名]ugg boots 2009年09月29日 01:50:52 Says:
[url=http://www.ecshow.co.uk/]nike shox[/url]
[url=http://www.ecshow.co.uk/]nike dunk[/url]
[url=http://www.ecshow.co.uk/]nike airmax[/url]
[url=http://www.ecshow.co.uk/]supra shoes[/url]
[url=http://www.ecshow.co.uk/prada-shoes-c-88.html]prada shoes[/url]
[url=http://www.ecshow.co.uk/bape-shoes-c-35.html]bape shoes[/url]
[url=http://www.ecshow.co.uk/lacoste-shoes-c-70.html]lacoste shoes[/url]
[url=http://www.ecshow.co.uk/nike-nba-c-61.html]nike nba shoes[/url]
[url=http://www.ecshow.co.uk/new-shox-nz-shoes-mens-c-92_112.html]shox nz shoes[/url]
[url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]nike dunk sb shoes[/url]
[url=http://www.ecshow.co.uk/ato-shoes-c-115.html]ato shoes[/url]
[url=http://www.ecshow.co.uk/shox-r3-shoes-mens-c-92_97.html]shox R3 shoes[/url]
[url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]nike high dunk sb[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]shox nike shoes[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]shox shoes[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]men's shox[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]womens shox[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]shox shoes online[/url]
[url=http://www.ecshow.co.uk/]dunk shoes[/url]
[url=http://www.ecshow.co.uk/nike-airmax-c-13.html]air max shoes[/url]
[url=http://www.ecshow.co.uk/]cheap shox shoes[/url]
[url=http://www.ecshow.co.uk/supra-shoes-c-6.html]mens supra[/url]
[url=http://www.ecshow.co.uk/mens-supra-muska-skytop-shoes-c-6_8.html]supra muska skytop[/url]
[url=http://www.ecshow.co.uk/mens-supra-muska-skytop-shoes-c-6_8.html]supra skytop[/url]
[url=http://www.ecshow.co.uk/womens-supra-muska-skytop-shoes-c-6_9.html]womens supra shoes[/url]
[url=http://www.ecshow.co.uk/mens-supra-muska-skytop-shoes-c-6_8.html]supra muska shoes[/url]
[url=http://www.ecshow.co.uk/supra-shoes-c-6.html]supra shoes online[/url]
[url=http://www.ecshow.co.uk/mens-lacoste-shua-lace-c-70_75.html]lacoste shua lace[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]dunk sb shoes[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]mens dunk[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]women dunk[/url]
[url=http://www.ecshow.co.uk/mens-low-nike-dunk-sb-c-64_67.html]dunk low sb[/url]
[url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]dunk high sb[/url]
[url=http://www.ecshow.co.uk/lacoste-shoes-c-70.html]mens lacoste shoes[/url]
[url=http://www.ecshow.co.uk/lacoste-shoes-c-70.html]lacoste shoes online[/url]
[url=http://www.ecshow.co.uk/new-shox-nz-shoes-mens-c-92_112.html]shox nz shoes[/url]
[url=http://www.ecshow.co.uk/shox-r4-shoes-mens-c-92_100.html]shox r4 shoes[/url]
[url=http://www.ecshow.co.uk/shox-r3-shoes-mens-c-92_97.html]shox r3 shoes[/url]
[url=http://www.ecshow.co.uk/shox-oz-shoes-mens-c-92_96.html]shox oz shoes[/url]
[url=http://www.ecshow.co.uk/new-shox-nz-shoes-mens-c-92_112.html]mens shox nz[/url]
[url=http://www.ecshow.co.uk/new-shox-nz-shoes-womens-c-92_111.html]women shox nz shoes[/url]
[url=http://www.ecshow.co.uk/mens-low-nike-dunk-sb-c-64_67.html]mens low nike dunk sb[/url]
[url=http://www.ecshow.co.uk/mens-mid-nike-dunk-sb-c-64_66.html]mens mid nike dunk sb[/url]
[url=http://www.ecshow.co.uk/womens-high-nike-dunk-sb-c-64_68.html]womens high nike dunk sb[/url]
[url=http://www.ecshow.co.uk/womens-low-nike-dunk-sb-c-64_69.html]womens low nike dunk sb[/url]
[url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]mens high nike dunk sb[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]nike dunks[/url]
[url=http://www.ecshow.co.uk/]supra shoes uk[/url]
[url=http://www.ecshow.co.uk/nike-airmax-c-13.html]nike air max[/url]
[url=http://www.ecshow.co.uk/]ugg bailey button[/url]
[url=http://www.ecshow.co.uk/ugg-lo-pro-button-c-135.html]ugg lo pro button[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]nike dunk sale[/url]
[url=http://www.ecshow.co.uk/ugg-bailey-button-c-134.html]bailey button boots[/url]
[url=http://www.ecshow.co.uk/]nike shoes[/url]
[url=http://www.ecshow.co.uk/bape-shoes-c-35.html]bape [/url]
[url=http://www.ecshow.co.uk/mens-lacoste-swerve-c-70_85.html]lacoste swerve[/url]
[url=http://www.ecshow.co.uk/mens-lacoste-protect-laser-c-70_74.html]lacoste protect[/url]
[url=http://www.ecshow.co.uk/mens-prada-shoes-c-88_90.html]mens prada shoes[/url]
[url=http://www.ecshow.co.uk/nike-mens-air-max-2009-shoes-c-13_25.html]nike air max 2009[/url]
[url=http://www.ecshow.co.uk/nike-air-max-90-mens-shoes-c-13_14.html]nike air max 90[/url]
[url=http://www.ecshow.co.uk/]ugg sale[/url]
[url=http://www.ecshow.co.uk/ugg-classic-short-c-120.html]UGG Classic Short [/url]
[url=http://www.ecshow.co.uk/ugg-classic-cardy-c-121.html]UGG Classic Cardy [/url]
[url=http://www.ecshow.co.uk/ugg-classic-tall-c-122.html]UGG Classic Tall [/url]
[url=http://www.ecshow.co.uk/ugg-classic-mini-c-124.html]UGG Classic Mini [/url]
[url=http://www.ecshow.co.uk/ugg-classic-crochet-c-125.html]UGG Classic Crochet [/url]
[url=http://www.ecshow.co.uk/ugg-nightfall-boots-c-126.html]UGG Nightfall boots[/url]
[url=http://www.ecshow.co.uk/ugg-sundance-boots-c-127.html]UGG Sundance Boots[/url]
[url=http://www.ecshow.co.uk/ugg-ultra-short-boots-c-128.html]UGG Ultra Short Boots[/url]
[url=http://www.ecshow.co.uk/ugg-tasmina-sandals-c-130.html]UGG Tasmina Sandals[/url]
[url=http://www.ecshow.co.uk/ugg-amelie-suede-c-131.html]UGG Amelie Suede [/url]
[url=http://www.ecshow.co.uk/ugg-halendi-sandals-c-132.html]UGG Halendi Sandals[/url]
[url=http://www.ecshow.co.uk/ugg-gypsy-sandals-c-133.html]UGG Gypsy Sandals[/url]
[url=http://www.ecshow.co.uk/ugg-bailey-button-c-134.html]UGG Bailey Button Boots[/url]
[url=http://www.ecshow.co.uk/ugg-lo-pro-button-c-135.html]UGG Lo Pro Button Boots[/url]
[url=http://www.ecshow.co.uk/ugg-coquette-casual-c-136.html]UGG Coquette Casual [/url]
[url=http://www.ecshow.co.uk/ugg-womens-rainier-c-137.html]UGG Rainier[/url]
[url=http://www.ecshow.co.uk/ugg-new-arrival-5389-c-139.html]UGG 5389[/url]
[url=http://www.ecshow.co.uk/ugg-infants-erin-baby-c-140.html]UGG Erin Baby Boots[/url]
[url=http://www.ecshow.co.uk/ugg-classic-tall-new-c-123.html]UGG Classic Tall Boots [/url]
[url=http://www.ecshow.co.uk/ugg-knightsbridge-c-141.html]UGG KnightsBridge [/url]
[url=http://www.ecshow.co.uk/]ugg boots[/url]
[url=http://www.ecshow.co.uk/]ugg uk[/url]
http://www.ecshow.co.uk/
3楼 [匿名]ugg boots 2009年09月26日 22:05:43 Says:
[url=http://www.ecshow.co.uk/]nike shox[/url]
[url=http://www.ecshow.co.uk/]nike dunk[/url]
[url=http://www.ecshow.co.uk/]nike airmax[/url]
[url=http://www.ecshow.co.uk/]supra shoes[/url]
[url=http://www.ecshow.co.uk/prada-shoes-c-88.html]prada shoes[/url]
[url=http://www.ecshow.co.uk/bape-shoes-c-35.html]bape shoes[/url]
[url=http://www.ecshow.co.uk/lacoste-shoes-c-70.html]lacoste shoes[/url]
[url=http://www.ecshow.co.uk/nike-nba-c-61.html]nike nba shoes[/url]
[url=http://www.ecshow.co.uk/new-shox-nz-shoes-mens-c-92_112.html]shox nz shoes[/url]
[url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]nike dunk sb shoes[/url]
[url=http://www.ecshow.co.uk/ato-shoes-c-115.html]ato shoes[/url]
[url=http://www.ecshow.co.uk/shox-r3-shoes-mens-c-92_97.html]shox R3 shoes[/url]
[url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]nike high dunk sb[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]shox nike shoes[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]shox shoes[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]men's shox[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]womens shox[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]shox shoes online[/url]
[url=http://www.ecshow.co.uk/]dunk shoes[/url]
[url=http://www.ecshow.co.uk/nike-airmax-c-13.html]air max shoes[/url]
[url=http://www.ecshow.co.uk/]cheap shox shoes[/url]
[url=http://www.ecshow.co.uk/supra-shoes-c-6.html]mens supra[/url]
[url=http://www.ecshow.co.uk/mens-supra-muska-skytop-shoes-c-6_8.html]supra muska skytop[/url]
[url=http://www.ecshow.co.uk/mens-supra-muska-skytop-shoes-c-6_8.html]supra skytop[/url]
[url=http://www.ecshow.co.uk/womens-supra-muska-skytop-shoes-c-6_9.html]womens supra shoes[/url]
[url=http://www.ecshow.co.uk/mens-supra-muska-skytop-shoes-c-6_8.html]supra muska shoes[/url]
[url=http://www.ecshow.co.uk/supra-shoes-c-6.html]supra shoes online[/url]
[url=http://www.ecshow.co.uk/mens-lacoste-shua-lace-c-70_75.html]lacoste shua lace[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]dunk sb shoes[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]mens dunk[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]women dunk[/url]
[url=http://www.ecshow.co.uk/mens-low-nike-dunk-sb-c-64_67.html]dunk low sb[/url]
[url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]dunk high sb[/url]
[url=http://www.ecshow.co.uk/lacoste-shoes-c-70.html]mens lacoste shoes[/url]
[url=http://www.ecshow.co.uk/lacoste-shoes-c-70.html]lacoste shoes online[/url]
[url=http://www.ecshow.co.uk/new-shox-nz-shoes-mens-c-92_112.html]shox nz shoes[/url]
[url=http://www.ecshow.co.uk/shox-r4-shoes-mens-c-92_100.html]shox r4 shoes[/url]
[url=http://www.ecshow.co.uk/shox-r3-shoes-mens-c-92_97.html]shox r3 shoes[/url]
[url=http://www.ecshow.co.uk/shox-oz-shoes-mens-c-92_96.html]shox oz shoes[/url]
[url=http://www.ecshow.co.uk/new-shox-nz-shoes-mens-c-92_112.html]mens shox nz[/url]
[url=http://www.ecshow.co.uk/new-shox-nz-shoes-womens-c-92_111.html]women shox nz shoes[/url]
[url=http://www.ecshow.co.uk/mens-low-nike-dunk-sb-c-64_67.html]mens low nike dunk sb[/url]
[url=http://www.ecshow.co.uk/mens-mid-nike-dunk-sb-c-64_66.html]mens mid nike dunk sb[/url]
[url=http://www.ecshow.co.uk/womens-high-nike-dunk-sb-c-64_68.html]womens high nike dunk sb[/url]
[url=http://www.ecshow.co.uk/womens-low-nike-dunk-sb-c-64_69.html]womens low nike dunk sb[/url]
[url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]mens high nike dunk sb[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]nike dunks[/url]
[url=http://www.ecshow.co.uk/]supra shoes uk[/url]
[url=http://www.ecshow.co.uk/nike-airmax-c-13.html]nike air max[/url]
[url=http://www.ecshow.co.uk/]ugg bailey button[/url]
[url=http://www.ecshow.co.uk/ugg-lo-pro-button-c-135.html]ugg lo pro button[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]nike dunk sale[/url]
[url=http://www.ecshow.co.uk/ugg-bailey-button-c-134.html]bailey button boots[/url]
[url=http://www.ecshow.co.uk/]nike shoes[/url]
[url=http://www.ecshow.co.uk/bape-shoes-c-35.html]bape [/url]
[url=http://www.ecshow.co.uk/mens-lacoste-swerve-c-70_85.html]lacoste swerve[/url]
[url=http://www.ecshow.co.uk/mens-lacoste-protect-laser-c-70_74.html]lacoste protect[/url]
[url=http://www.ecshow.co.uk/mens-prada-shoes-c-88_90.html]mens prada shoes[/url]
[url=http://www.ecshow.co.uk/nike-mens-air-max-2009-shoes-c-13_25.html]nike air max 2009[/url]
[url=http://www.ecshow.co.uk/nike-air-max-90-mens-shoes-c-13_14.html]nike air max 90[/url]
[url=http://www.ecshow.co.uk/]ugg sale[/url]
[url=http://www.ecshow.co.uk/ugg-classic-short-c-120.html]UGG Classic Short [/url]
[url=http://www.ecshow.co.uk/ugg-classic-cardy-c-121.html]UGG Classic Cardy [/url]
[url=http://www.ecshow.co.uk/ugg-classic-tall-c-122.html]UGG Classic Tall [/url]
[url=http://www.ecshow.co.uk/ugg-classic-mini-c-124.html]UGG Classic Mini [/url]
[url=http://www.ecshow.co.uk/ugg-classic-crochet-c-125.html]UGG Classic Crochet [/url]
[url=http://www.ecshow.co.uk/ugg-nightfall-boots-c-126.html]UGG Nightfall boots[/url]
[url=http://www.ecshow.co.uk/ugg-sundance-boots-c-127.html]UGG Sundance Boots[/url]
[url=http://www.ecshow.co.uk/ugg-ultra-short-boots-c-128.html]UGG Ultra Short Boots[/url]
[url=http://www.ecshow.co.uk/ugg-tasmina-sandals-c-130.html]UGG Tasmina Sandals[/url]
[url=http://www.ecshow.co.uk/ugg-amelie-suede-c-131.html]UGG Amelie Suede [/url]
[url=http://www.ecshow.co.uk/ugg-halendi-sandals-c-132.html]UGG Halendi Sandals[/url]
[url=http://www.ecshow.co.uk/ugg-gypsy-sandals-c-133.html]UGG Gypsy Sandals[/url]
[url=http://www.ecshow.co.uk/ugg-bailey-button-c-134.html]UGG Bailey Button Boots[/url]
[url=http://www.ecshow.co.uk/ugg-lo-pro-button-c-135.html]UGG Lo Pro Button Boots[/url]
[url=http://www.ecshow.co.uk/ugg-coquette-casual-c-136.html]UGG Coquette Casual [/url]
[url=http://www.ecshow.co.uk/ugg-womens-rainier-c-137.html]UGG Rainier[/url]
[url=http://www.ecshow.co.uk/ugg-new-arrival-5389-c-139.html]UGG 5389[/url]
[url=http://www.ecshow.co.uk/ugg-infants-erin-baby-c-140.html]UGG Erin Baby Boots[/url]
[url=http://www.ecshow.co.uk/ugg-classic-tall-new-c-123.html]UGG Classic Tall Boots [/url]
[url=http://www.ecshow.co.uk/ugg-knightsbridge-c-141.html]UGG KnightsBridge [/url]
[url=http://www.ecshow.co.uk/]ugg boots[/url]
[url=http://www.ecshow.co.uk/]ugg uk[/url]
http://www.ecshow.co.uk/
2楼 [匿名]ugg boots 2009年09月23日 04:31:12 Says:
[url=http://www.ecshow.co.uk/]nike shox[/url]
[url=http://www.ecshow.co.uk/]nike dunk[/url]
[url=http://www.ecshow.co.uk/]nike airmax[/url]
[url=http://www.ecshow.co.uk/]supra shoes[/url]
[url=http://www.ecshow.co.uk/prada-shoes-c-88.html]prada shoes[/url]
[url=http://www.ecshow.co.uk/bape-shoes-c-35.html]bape shoes[/url]
[url=http://www.ecshow.co.uk/lacoste-shoes-c-70.html]lacoste shoes[/url]
[url=http://www.ecshow.co.uk/nike-nba-c-61.html]nike nba shoes[/url]
[url=http://www.ecshow.co.uk/new-shox-nz-shoes-mens-c-92_112.html]shox nz shoes[/url]
[url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]nike dunk sb shoes[/url]
[url=http://www.ecshow.co.uk/ato-shoes-c-115.html]ato shoes[/url]
[url=http://www.ecshow.co.uk/shox-r3-shoes-mens-c-92_97.html]shox R3 shoes[/url]
[url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]nike high dunk sb[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]shox nike shoes[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]shox shoes[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]men's shox[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]womens shox[/url]
[url=http://www.ecshow.co.uk/nike-shox-c-92.html]shox shoes online[/url]
[url=http://www.ecshow.co.uk/]dunk shoes[/url]
[url=http://www.ecshow.co.uk/nike-airmax-c-13.html]air max shoes[/url]
[url=http://www.ecshow.co.uk/]cheap shox shoes[/url]
[url=http://www.ecshow.co.uk/supra-shoes-c-6.html]mens supra[/url]
[url=http://www.ecshow.co.uk/mens-supra-muska-skytop-shoes-c-6_8.html]supra muska skytop[/url]
[url=http://www.ecshow.co.uk/mens-supra-muska-skytop-shoes-c-6_8.html]supra skytop[/url]
[url=http://www.ecshow.co.uk/womens-supra-muska-skytop-shoes-c-6_9.html]womens supra shoes[/url]
[url=http://www.ecshow.co.uk/mens-supra-muska-skytop-shoes-c-6_8.html]supra muska shoes[/url]
[url=http://www.ecshow.co.uk/supra-shoes-c-6.html]supra shoes online[/url]
[url=http://www.ecshow.co.uk/mens-lacoste-shua-lace-c-70_75.html]lacoste shua lace[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]dunk sb shoes[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]mens dunk[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]women dunk[/url]
[url=http://www.ecshow.co.uk/mens-low-nike-dunk-sb-c-64_67.html]dunk low sb[/url]
[url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]dunk high sb[/url]
[url=http://www.ecshow.co.uk/lacoste-shoes-c-70.html]mens lacoste shoes[/url]
[url=http://www.ecshow.co.uk/lacoste-shoes-c-70.html]lacoste shoes online[/url]
[url=http://www.ecshow.co.uk/new-shox-nz-shoes-mens-c-92_112.html]shox nz shoes[/url]
[url=http://www.ecshow.co.uk/shox-r4-shoes-mens-c-92_100.html]shox r4 shoes[/url]
[url=http://www.ecshow.co.uk/shox-r3-shoes-mens-c-92_97.html]shox r3 shoes[/url]
[url=http://www.ecshow.co.uk/shox-oz-shoes-mens-c-92_96.html]shox oz shoes[/url]
[url=http://www.ecshow.co.uk/new-shox-nz-shoes-mens-c-92_112.html]mens shox nz[/url]
[url=http://www.ecshow.co.uk/new-shox-nz-shoes-womens-c-92_111.html]women shox nz shoes[/url]
[url=http://www.ecshow.co.uk/mens-low-nike-dunk-sb-c-64_67.html]mens low nike dunk sb[/url]
[url=http://www.ecshow.co.uk/mens-mid-nike-dunk-sb-c-64_66.html]mens mid nike dunk sb[/url]
[url=http://www.ecshow.co.uk/womens-high-nike-dunk-sb-c-64_68.html]womens high nike dunk sb[/url]
[url=http://www.ecshow.co.uk/womens-low-nike-dunk-sb-c-64_69.html]womens low nike dunk sb[/url]
[url=http://www.ecshow.co.uk/high-nike-dunk-sb-for-mens-c-64_65.html]mens high nike dunk sb[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]nike dunks[/url]
[url=http://www.ecshow.co.uk/]supra shoes uk[/url]
[url=http://www.ecshow.co.uk/nike-airmax-c-13.html]nike air max[/url]
[url=http://www.ecshow.co.uk/]ugg bailey button[/url]
[url=http://www.ecshow.co.uk/ugg-lo-pro-button-c-135.html]ugg lo pro button[/url]
[url=http://www.ecshow.co.uk/nike-dunk-c-64.html]nike dunk sale[/url]
[url=http://www.ecshow.co.uk/ugg-bailey-button-c-134.html]bailey button boots[/url]
[url=http://www.ecshow.co.uk/]nike shoes[/url]
[url=http://www.ecshow.co.uk/bape-shoes-c-35.html]bape [/url]
[url=http://www.ecshow.co.uk/mens-lacoste-swerve-c-70_85.html]lacoste swerve[/url]
[url=http://www.ecshow.co.uk/mens-lacoste-protect-laser-c-70_74.html]lacoste protect[/url]
[url=http://www.ecshow.co.uk/mens-prada-shoes-c-88_90.html]mens prada shoes[/url]
[url=http://www.ecshow.co.uk/nike-mens-air-max-2009-shoes-c-13_25.html]nike air max 2009[/url]
[url=http://www.ecshow.co.uk/nike-air-max-90-mens-shoes-c-13_14.html]nike air max 90[/url]
[url=http://www.ecshow.co.uk/]ugg sale[/url]
[url=http://www.ecshow.co.uk/ugg-classic-short-c-120.html]UGG Classic Short [/url]
[url=http://www.ecshow.co.uk/ugg-classic-cardy-c-121.html]UGG Classic Cardy [/url]
[url=http://www.ecshow.co.uk/ugg-classic-tall-c-122.html]UGG Classic Tall [/url]
[url=http://www.ecshow.co.uk/ugg-classic-mini-c-124.html]UGG Classic Mini [/url]
[url=http://www.ecshow.co.uk/ugg-classic-crochet-c-125.html]UGG Classic Crochet [/url]
[url=http://www.ecshow.co.uk/ugg-nightfall-boots-c-126.html]UGG Nightfall boots[/url]
[url=http://www.ecshow.co.uk/ugg-sundance-boots-c-127.html]UGG Sundance Boots[/url]
[url=http://www.ecshow.co.uk/ugg-ultra-short-boots-c-128.html]UGG Ultra Short Boots[/url]
[url=http://www.ecshow.co.uk/ugg-tasmina-sandals-c-130.html]UGG Tasmina Sandals[/url]
[url=http://www.ecshow.co.uk/ugg-amelie-suede-c-131.html]UGG Amelie Suede [/url]
[url=http://www.ecshow.co.uk/ugg-halendi-sandals-c-132.html]UGG Halendi Sandals[/url]
[url=http://www.ecshow.co.uk/ugg-gypsy-sandals-c-133.html]UGG Gypsy Sandals[/url]
[url=http://www.ecshow.co.uk/ugg-bailey-button-c-134.html]UGG Bailey Button Boots[/url]
[url=http://www.ecshow.co.uk/ugg-lo-pro-button-c-135.html]UGG Lo Pro Button Boots[/url]
[url=http://www.ecshow.co.uk/ugg-coquette-casual-c-136.html]UGG Coquette Casual [/url]
[url=http://www.ecshow.co.uk/ugg-womens-rainier-c-137.html]UGG Rainier[/url]
[url=http://www.ecshow.co.uk/ugg-new-arrival-5389-c-139.html]UGG 5389[/url]
[url=http://www.ecshow.co.uk/ugg-infants-erin-baby-c-140.html]UGG Erin Baby Boots[/url]
[url=http://www.ecshow.co.uk/ugg-classic-tall-new-c-123.html]UGG Classic Tall Boots [/url]
[url=http://www.ecshow.co.uk/ugg-knightsbridge-c-141.html]UGG KnightsBridge [/url]
[url=http://www.ecshow.co.uk/]ugg boots[/url]
[url=http://www.ecshow.co.uk/]ugg uk[/url]
http://www.ecshow.co.uk/
1楼 [匿名]roger 2009年09月18日 08:13:45 Says:
[url=http://www.headphonesshow.com/]bose headphones[/url]
[url=http://www.headphonesshow.com/bose-headphones-in-ear-p-12232.html]bose headphones in ear[/url]
[url=http://www.headphonesshow.com/bose-headphones-on-ear-p-12233.html]bose headphones on ear [/url]
[url=http://www.headphonesshow.com/]pioneer headphones [/url]
[url=http://www.headphonesshow.com/pioneer-hdj1000-p-12308.html]pioneer hdj 1000[/url]
[url=http://www.headphonesshow.com/]dvd sale[/url]
[url=http://www.headphonesshow.com/]cheap dvds[/url]
[url=http://www.headphonesshow.com/dvd-sale-movies-dvd-c-11_13.html]movie dvds[/url] http://www.headphonesshow.com/
发表评论
看不清楚,换一张