(转)T/TCP TCP事物协议的学习

转自:http://blog.sina.com.cn/s/blog_466c66400100049v.html

 

T/TCP 的性能个UDP相当,但可靠性和TCP一样.主要是因为它省去了tcp一开始建立连接时候的三次握手.
一个事物中,请求和得到结果,3种协议所传输的分组数和时间开销分别为:
UDP:2   RTT+SPT
T/TCP:3 (RTT+SPT)+
TCP:9  2RTT+SPT

其中是RTT是网络一次往返时间.SPT是服务器处理时间.
 
T/TCP协议比udp协议多出来的一点点时间开销,是因为在本地机器上多做了一些运算.如果处理器非常好,这个时间开销可以忽略不计.
 
 
T/TCP协议的好处:
省去3次握手的时间.
减少了网络上传播分组数.减少路由的压力.
 
应用方向: 对与处理时间短,传输时间相对较长的应用来说,非常有益处.比如http.
 
T/TCP协议使用方法:
client端: 省去connect函数,使用sendto函数指定MSG_EOF.来取代connect,write,shutdown.
server端:将send添加一个MSG_EOF标志.
 
ok,就这样简单,能带来性能将近一倍的提高.
 
如果构造一个这样的服务器:本人已经实现.
采用t/tcp协议,epoll 做为网络i/o,bdb做为数据源,当然要带cache.效率将是相当可关的.
如果数据源是文件, 就使用sendfile()进行传输,它可以实现零copy.

 

posted on 2009-10-17 22:24  feney  阅读(1361)  评论(0编辑  收藏  举报