zxx的专栏

Come on! Let's Hello World! !

【Linux网络编程】同步,异步,阻塞,非阻塞

同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能不同,比如wiki,就认为asynchronous IO和non-blocking I...

2013-09-27 10:40:05

阅读数 2137

评论数 1

隐蔽的内存泄漏——pthread_create 属性设置不当导致

遇到了同样的问题。。 最近解决了一个隐蔽的内存泄漏问题,我们的进程是HA模式,用户不停的切换,会导致内存不停的增长,切换一次,再切回来内存便增加8M左右。原因就是是pthread_create后的僵死线程没有释放导致的内存持续增长。 pthread_create (&...

2013-02-14 00:34:01

阅读数 1303

评论数 0

【P2P网络】Extension for Peers to Send Metadata Files翻译稿

Extension for Peers to Send Metadata Files 这个扩展的目的是为了在最初没有.torrent文件的情况仍然能够加入swarm并能够完成下载。这个扩展能让客户端从peer哪里下载metadata。这让支持magnet link成为了可能,magnet l...

2013-01-28 16:24:49

阅读数 14153

评论数 0

【P2P网络】BitTorrent协议中文版4

Peer wire protocol (TCP) 概述 peer(端)协议使片(piece)的交换变得容易,片的描述请参考元信息文件。 注意:原来的规范在描述peer协议时,也使用术语piece“(片)”,但是这不同于元信息文件里面的术语“piece(片)”,由于这个原因,在本规范中,将使用...

2013-01-26 12:25:43

阅读数 3801

评论数 0

【P2P网络】BitTorrent协议中文版3

Tracker HTTP/HTTPS Protocol Tracker是一个响应HTTP GET请求的HTTP/HTTPS服务。这个请求包含来自客户端的度量信息,这些信息能够帮助Tracker全面地统计torrent。Tracker的响应包含一个peers列表,这个列表能够帮助客户端加入到t...

2013-01-26 12:24:12

阅读数 1650

评论数 0

【P2P网络】BitTorrent协议中文版2

元信息文件结构(Metainfo File Structure) 元信息文件里面的所有数据都以B编码方式编码,B编码规范请参考本系列文档之B编码。 元信息文件(就是平常咱们经常接触到的以.torrent为后缀的文件)的内容是一个B编码的dictionary,包含下面列出的键(key),其中字符串类...

2013-01-26 12:21:36

阅读数 1440

评论数 0

【P2P网络】BitTorrent协议中文版1

鉴定 BitTorrent是由布莱姆·科恩设计的一个端对端(peer to peer)文件共享协议,此协议使多个peers通过不可信任的网络的文件传输变得更容易。 目的 此规范的目的是详细介绍 BitTorrent 协议规范 v1.0 。Bram 的协议规范网站 http://www.bit...

2013-01-26 12:20:08

阅读数 2310

评论数 0

【网络编程小Tip】linux recvfrom延迟问题,导致处理时出现错误包

今天在调试网络程序时,查看日志文件,发现很多的处理数据都提示,包错误,数据不完整等信息,但是用wireshark捕包确发现这些报文都是正确的,并没有错误。后来经过仔细分析原因如下:       由于是异步网络通信,尽管我的每个报文大小都是1024以内,基本可以保证无分包现象,但是可能导致recv...

2012-12-23 16:25:49

阅读数 1108

评论数 0

【P2P网络】DHT协议基础1:Kademlia翻译稿

转载自:http://blog.csdn.net/hoping/article/details/5307320 Kademlia :一种基于 XOR 度量的 P2P 信息系统 Petar Maymounkov and David Mazieres {petar,dm}@cs.ny...

2012-10-18 23:39:27

阅读数 2340

评论数 0

【P2P网络】磁力链接转换为种子文件 magnet to torrent

作者:zxx 1.前言       将种子文件转换为磁力链接很简单,只需要在种子文件的infohash码前面加上magnet:?xt=urn:btih:即可,相信大家在迅雷,utorrent等主流软件上也都能发现这个功能。       但是将磁力链接转换为种子文件就不那么简单了,因为sha-1算法...

2012-09-12 15:02:32

阅读数 611006

评论数 45

【P2P网络】BitTorrent的DHT协议(译自官方版本)

译者前序 DHT协议早在2005年就已经成为了官方BitTorrent协议的一部份,但是我竟然一直没有找到国内的官方翻译稿,所以将其进行翻译,若文中错误,欢迎各位指正。 其次,若想彻底理解DHT协议的原理,建议各位阅读Kademlia协议,在本博客中,有其翻译稿,参见DHT协议基础1,2. ...

2012-09-12 14:00:06

阅读数 25199

评论数 4

【HTTP协议】Transfer-Encoding: chunked 长度不确定的http报文

Transfer-Encoding: chunked 表示输出的内容长度不能确定,普通的静态页面、图片之类的基本上都用不到这个。 但动态页面就有可能会用到,但我也注意到大部分asp,php,asp.net动态页面输出的时候大部分还是使用Content-Length,没有使用Transfer-...

2012-09-05 19:39:47

阅读数 7076

评论数 0

提示
确定要删除当前文章?
取消 删除