搜索
您的当前位置:首页基于覆盖网络多路径与并行TCP的传输技术

基于覆盖网络多路径与并行TCP的传输技术

来源:世旅网
第30卷第5期

 

2010年5月

文章编号:1001-9081(2010)05-1171-05

计算机应用

JournalofComputerApplications

 

Vol.30No.5May2010

基于覆盖网络多路径与并行TCP的传输技术

桂勇哲,张进宇

(北京大学信息科学技术学院,北京100871)(gyz@net.pku.edu.cn;zjy@net.pku.edu.cn)

摘 要:设计并实现了一种结合了“并行TCP”和“多路径”的数据传输技术,利用覆盖网络中的节点作为中转节点,在数据传输过程中,采用多条性能优良的间接路径,并且在每一条路径上开启多个TCP连接。解决了以下三个关键问题:1)如何选取性能相对优良的路径;2)如何动态地为网络路径选择最佳的并行TCP连接数;3)如何根据网络背景流量的变化,在多条路径之间动态地调度分配数据包。所实现的数据传输技术完全基于应用层,不需要修改TCP协议也不需要下层路由器的支持,简单有效地提高了网络传输速度。关键词:数据传输;路径选择;动态选择;最优并行TCP连接数;对等网中图分类号:TP393  文献标志码:ADatatransfertechnologybasedonoverlaymulti2pathingandparallelTCP

GUIYong2zhe,ZHANGJin2yu

(SchoolofElectronicsEngineeringandComputerScience,PekingUniversity,Beijing100871,China)

Abstract:Anewtechnologycombining\"parallelTCP\"and\"multi2pathing\"wasdesignedandimplemented.Itused

overlaynetworknodesasinterimnodes.Besides,intheprocessofdatatransmission,itusedmorethanoneexcellentperformanceindirectpath,andopenedmultipleTCPconnectionsoneachone.Threekeyproblemsweresolved:howtoselectthepathwithhigherperformance;howtodynamicallyselectthebestparallelTCPconnectionnumber;howtodynamicallyarrangedatapackagesinmultiplepathsaccordingtonetworkflow.Theproposedtechnologyistotallyimplementedbasedonapplicationlayer,anddoesnotneedtomodifyTCPprotocolandrouteprotocol,whichimprovesthespeedofdatatransmissionsimplyandeffectively.

Keywords:datatransfer;pathselection;dynamicselection;bestparallelTCPconnectionnumber;Peer2to2Peer(P2P)network

0 引言

TransmissionControlProtocol(TCP)

[1]

从网络拓扑的角度来分析问题。从下层的网络拓扑结构来看,互联网是高度冗余的,端到端的传输实际上只采用了其中

被设计用于在不可

的一条路径。由于路由协议的局限性,下层的路由协议不能保证得到的路径是最优路径,在30%~80%的情况下可以找到一条更优的路径[10]。因此,通过利用网络中的多条冗余路径能够有效地提高网络传输速度。

本文介绍一种新技术,能同时采用多条网络路径进行数据传输,并在每条路径上使用并行TCP技术来提高网络传输速度。所采用的路径位于覆盖网络上,因此并不需要底层的路由器支持。考虑到网络背景流量变化,本文所选择的路径以及并行TCP的参数设置并不是固定不变的,而是利用即时的传输速度作为衡量标准,对网络的实际情况作出估计,并动态地选择路径与并行TCP连接数。考虑到TCP连接数过多会导致网络更易于拥塞,设计了新的算法MGet。MGet不追求极大化网络传输速度,而是用较少的TCP连接数去获取足够好的带宽,既提高网络传输速度,又在一定程度上兼顾公平。在网络拓扑结构的分析中已经有结果表明,在90%的情况下两跳路径能够提供与多跳路径一样好的性能[11],这一点可以用来简化路径选择问题。

靠的IP层网络上提供可靠、有序的点到点字节流传输,并保证效率与公平性。但TCP设计于1960—1970年,有很多时代

局限性。当时T1link(1.544Mbps)是最快的网络,而现在

100Mbps、1000Mbps的网络已经非常普遍。TCP应用在当前

的网络下效率出现了问题,对网络的利用并不理想善TCP在长肥网络中的表现,如:High2SpeedTCP

TCP

[5]

[4]

[2-3]

。因

此,有许多研究工作试图通过修改TCP的拥塞控制算法以改

,Scalable

,BicTCP等。

[6]

与以上技术相比,并行TCP是一种工作在应用层的数据传输技术。通过在一条网络路径上并行使用多个TCP连接,可以简单有效地提高端到端的网络传输速度。文献[7-8]为并行TCP建立模型,分析了提高传输速度的原因:并行TCP改变了TCP缓冲区的大小限制,提高了拥塞窗口的增长速度,从而能获得更高的网络传输速度。尽管并行TCP已经被证明能够有效地提高网络传输速度,但是它同时会带来不公平性[9]。TCP连接数过多会导致网络出现拥塞,过少则不能充分利用网络,如何选择适当的TCP连接数是一个关键问题。

多路径是另一种能够有效提高网络传输速度的技术,它

1 提高端到端网络传输速度

本文着重解决如何提高端到端网络传输速度的问题。假

  收稿日期:2009-11-09;修回日期:2009-12-23。  作者简介:桂勇哲(1984-),男,吉林吉林人,硕士研究生,主要研究方向:分布式系统、计算机网络; 张进宇(1971-),重庆人,讲师,博士研究生,主要研究方向:网络存储、流媒体技术。

1172    计算机应用第30卷

设有一个Source源服务器和一个Destination目的服务器,两者间可以通过多条路径传输数据。基于文献[11]给出的研究结果,两跳的间接路径可以提供足够好的性能,因此只使用两跳的间接路径,即一个中转节点(Relay)对应一条Source→Relay→Destination的间接路径,如图1所示。

成功传输,并且对应的传输速度大于t时,称该次传输是成功的;否则是失败的。在后面的实际测试中,由于较好的路径传输速度可以超过1MBps,因此设置t为10KBps。当然不能简单地因一次传输失败就认为该路径不可用,需要通过多次的传输来判断。同时由于使用传输速度小于t的路径,探测路径会消耗大量时间,因此要避免过多的探测。为每条路径设置了一个生命值L,Li为路径i的生命值。每当路径表现不好时,Li会减少;表现好时Li会增加;Li为零时,就不再使用该路径。Li最小为0,最大为Lmax。需要通过k条路径来传输数据,所以有k个进程进行数据传输。每个进程会重复以下步骤,根据之前的数据记录,彼此间独立地选取一条路径进行传输,并更新路径传输速度等数据。1)选择路径:

a)p概率下,从Rg中取出性能最好的路径进行数据传输,即从Rg中取出Ti值最大的路径(Li>0)进行数据传输;

b)(1-p)概率下,从Rb中取出一个路径(Li>0)进行数据传输。

2)传输结束后,更新路径的Ti值:

a)如果Ti≥t,则Li++,将该节点放入Rg中;b)如果Ti由之前的分析可知,在p概率下使用路径进行数据传输,(1-p)概率下使用较差的路径对路径进行探测。当没有好的路径时,所有的进程都会去尝试使用较差的路径,与使用一个探测进程专门进行探测的方法相比,MGet大大加快了路径探测速度。假设R中共有100个路径,只有1条路径较好,传输速度大于t:如果采用100个进程传输数据,一个进程探测(专门探测网络)的方式,那么最坏情况下需要100次探测才能够判断出哪条路径可用;而在MGet中,由于没有可用路径,Rg为空,此时100个进程都会使用较差路径进行数据传输,对路径进行探测,与前一种方法相比只需要1/100的时间就完成了路径的探测工作。

在MGet中,L值初始为Lmax,当路径连续Lmax次传输速度小于t,则该路径被认为是不可用的。通过这个参数的设置,避免了过多重复地探测坏路径导致的时间消耗,提高了传输效率。

图1 网络拓扑模型

为了描述问题,定义数据传输的源节点为S,目的节点为

D,用R来表示所有中继节点的集合,Ri为第i个中继节点,中继节点数目为N,所要选取的路径数为k。需要解决的问题为:在由一个源节点S,一个目的节点D,N个中继节点组成的网络中,选取R的一个子集,包含k个节点,使得通过这k个节点传输数据,并选择合适的参数,借助并行TCP技术,尽可能快地传输数据。由于网络动态变化,所选择的节点集合也应动态变化,保证一直可以获得较高的数据传输速度。

这个问题可以分为两个子问题来解决:1)使用路径选择算法选择路径;2)使用自适应的数据传输算法在路径上选择恰当的TCP连接数,利用并行TCP传输数据。

2 路径选择算法

路径选择算法需要从多条路径中选择出性能较好的路径用于数据传输。由于网络背景流量不断变化,在不同时段同一路径的性能也会相差很多。路径选择算法需要监测网络的变化,并实时动态地改变所选用的路径。本文的目的是提高网络数据传输速度,因此直接使用路径的传输速度作为衡量标准。为了避免统一的路径探测消耗大量的时间,MGet没有在数据传输开始前对所有的路径进行探测。当针对大小不同的数据传输需求时,对所有路径先进行统一的探测并不合适。为了能够尽快开始传输数据,获得较高的启动速度,将对路径的探测结合在数据的传输过程中,在数据的传输过程中判断出哪些路径性能更好,从而选择更好的路径进行数据传输。

Ti表示路径i的传输速度,每传输一个数据块后,Ti都会

被更新。针对网络数据传输的问题,我们认为传输速度越高,路径越好,反之越差。网络的动态变化,使得传输速度Ti在某些时段会比较好,某些时段会比较差。突发流量有可能导致某些路径在短时间内性能有剧烈变化。由于不好的路径有变好的可能,因此需要保证对所有路径都进行探测。将路径分为两个集合,一个集合中包含较好的路径(用Rg表示),另一集合中包含较差的路径(用Rb表示),路径最初按照历史数据(此前的测量中有记录该路径的数据传输速度)分配在两个集合中。按一定概率在两个集合选取路径:以概率p在Rg中选择一条路径进行数据传输,以概率(1-p)在Rb中也选择一条路径进行数据传输。使用好的路径实际上是一次正常的数据传输,而使用较差的路径实际上是对该路径的一次探测。这样就保证了使用所有的路径,p越大,说明更倾向于使用较好的路径,用于探测的时间就越少。修改p实际上就修改了在数据传输与探测上的时间分配。

由于实际问题的需要,当一条路径的传输速度过低时,认为该路径性能太差无法使用。设置一个阈值t,当一条路径传输速度小于t时,认为该路径是无法使用的。当一个数据块被

3 自适应的并行TCP传输算法

在选取路径后,采用并行TCP的技术来进一步提高网络

传输速度。称能够获得最高传输速度的TCP连接数为最优TCP连接数。如何得到最优TCP连接数,是并行TCP中的一个关键问题。在这方面也已经有了一些研究工作,如

[12]

GridFTP2APT算法。该算法基于以下公式[13]:

3

NWN(1-p)G≈min,

R2R

-3+BRN2

-1

6+21pp

33p

3

=-2+

2BRN2+3

其中:N为并行TCP的连接数;W为每个TCPsocket的缓冲区大小;B为链路的瓶颈带宽;R为TCP连接的往返时延(Round2TripTime,RTT)。以上式子表明当N的数目增加时获得的带宽G会增加,但是N过大时反而会导致获得的带宽

如图2,可以看到随并行数增加,吞吐量增加,当超过G下降。

一定阈值后,并行TCP连接数的增加反而会导致吞吐量

下降。

第5期

GridFTP2APT

[12]

桂勇哲等:基于覆盖网络多路径与并行TCP的传输技术1173    

认为,当TCP连接数增长时,传输速度会有一个极大值出现,对应的最优TCP连接数为10~30。而在实际的测量中,测量结果并不能很好地满足这一点。选取两条路径进行测量,使得TCP连接数从1逐渐增加,并记录获得的传输速度,得到结果如图3、4。图3测试的是两台千兆网卡的服务器,分别位于北京邮电大学和兰州大学,RTT为22ms。图4测量的两台服务器分别位于中国科技大学和上海交通大学,RTT为25ms。使用iperf[14]进行测量,每次测量使用10s的传输时间,TCP的buffer为默认的16KB。

在GridFTP2APT中得到了最优的TCP连接数后,就会在此后的传输过程中一直使用,这实际上是认为网络的情况不会再发生变化。但网络背景流量的变化会使得最优TCP连接数发生改变,因此需要一种动态的算法,能够随着网络状况的变化自适应地改变TCP连接数目,保证始终能够得到较好的传输速度。

为了获知一般情况下合适的TCP连接数,以及最优TCP连接数的分布,我们尝试在大学堂[15]的系统中,任选两台服务器构成一组服务器,并通过测量得到这两台服务器间传输数据时的最优TCP连接数。分别对30组服务器进行了测量,得到的最优TCP连接数的分布情况如图5所示。

图2 并行TCP连接数与实际吞吐量模型(GridFTP2APT)

图5 最优TCP连接数分布

图3 实测中并行TCP连接数与吞吐量关系

(北京邮电大学—兰州大学)

对每组服务器进行100次测量,每次使用的TCP连接数

由1增加到100,获得的最大带宽为Tmax,Tmax对应的TCP连接数即测出的最优TCP连接数。

从图5可以看出,50%的情况下,最优数在90~100。参照图3、4,当TCP连接数增加时,网络传输速度增长幅度会放缓,但是仍然会有缓慢增加,因此最优数在90~100分布较广符合我们的预期。

本文还定义了一个新的值,即较优的TCP连接数:当TCP连接数从1开始增加时,最先到达Tmax的90%的TCP连接数,称为较优的TCP连接数。对应30组服务器的较优的TCP连接数分布如图6所示。

图4 实测中并行TCP连接数与吞吐量关系

(中国科技大学—上海交通大学)

我们注意到,随着TCP连接数目的增加所获得的传输速度随之增加,且增加的幅度逐渐变缓,但是并没有出现极大值点。我们还注意到,由于网络测量是即时测量,而网络背景流量时刻变化,所测得的传输速度有着极大的即时性,波动很大。因此,无法通过一次测量来准确判断网络状况。为了解决这个问题,GridFTP2APT中作出了以下假设:利用1s的时间来传输数据,获得的传输速度值可以准确地反映网络。但是我们的测量结果却显示,即使将测量时间延长到10s,所得到的结果仍然有着很大的波动,此时仅用一次的测量值来判断是否是最优显然是不可能的。

图6 较优TCP连接数分布

从图6可以看出,较优的TCP连接数分布有了很大变

化,主要分布在10~50。该结果表明,使用较少的连接数就可以获得较好的传输速度。同时我们还知道,TCP连接数大量增加后,容易导致网络拥塞,路由器中的队列长度增加,进而导致RTT增加[13]。当这种现象发生后,再继续增加TCP连接数会拥塞网络,得到的速度增长也较少,同时对其他的网络使用者也不够公平。而使用较少的TCP连接数即能获得

1174    计算机应用第30卷

足够好的传输速度还能一定程度上避免网络拥塞,兼顾公平。当TCP连接数增加时,获得的传输速度随之增加。当使用一个TCP连接时获得的传输速度为t0,每增加一个TCP连接,传输速度增加t′,随着TCP连接数增多,每次能够获得的会逐渐减少。这是因为TCP连接数的增加会导致网络的拥t′

塞,所带来的速度提升也随之减少了。t′的变化,一定程度上反应了网络是否繁忙。

基于以上分析,设计了新的算法如下所示。TCP连接数按指数增加或减少,系数为a、b、c为判断增加还是减少TCP连接数的阈值(b>c):当增加TCP连接数获得的连接速度与不增加TCP连接数获得的速度之比大于等于b时,继续增加TCP连接数;小于c时,减少TCP连接数;小于等于b,大于等于c时,保持TCP连接数不变。

同样考虑到网络波动,当需要减少TCP连接数时,利用多次传输结果进行判断。设置badTimes和threshold值:badTimes表示增长TCP连接数,但是没能够获得预期速度提升的次数;threshold为一个阈值,当badTimes大于threshold时,减少TCP连接数。

算法步骤描述如下。

1)TCP连接数为0时,对应的传输速度G(0)为0。2)初始化并行TCP连接数N:

N←N0;N0为预设的TCP连接数初始值。

3)通过N个TCP连接并行传输一个文件块,并获得对应的传输速度G(N):

a)当G(N)>G(N-1)3b时:N←N3a(继续增加TCP连接数);badTimes←0。

在这里,N-1表示上一次使用该路径传输时使用的TCP连接数。

b)当G(N)badTimes++;

5 实验测试

为了测试性能,选取两台服务器,分别位于中国科技大学与上海交通大学,100MBps网卡,RTT为30ms。测试中,a,b,c分别设置为1.2,1.1,1.05。

为了考量算法实际效果,在不同的时段进行测试,从上午10点到凌晨2点每一个小时进行一次测量。将TCP的连接数由1增加到100,将最优TCP连接数下得到的带宽与MGet进行比较,如图7所示。可以看到,所获得的带宽已经与最优值非常接近。

图7 可获得最佳带宽与MGet获得的带宽

图8将MGet提到的结果与最优结果进行了比较,每个点

代表了在该时间点,MGet获得的带宽与最优值的比。可以看到MGet获得的传输速度超过了最优值的85%。只有20:00、21:00的结果相对较差,在65%~75%。对比图7可以发现,此时的网络状况非常不好,最优情况下数据传输速度也只有20Mbps。在这种情况下,MGet不会进一步增加TCP连接数。比较实际得到的带宽,最优为20Mbps,实际得到的为14Mbps,也足够好。

如果badTimes>Threshold:N←N-1;

badTimes←0(多次失败,降低TCP连接数)。重复步骤3)。

在实现中a=1.2,b=1.1,c=1.05,即TCP连接数每次增长20%,如果传输速度增长大于10%,则继续增长TCP连接数;如果传输速度的增长幅度多次小于5%,则减少TCP连接数;当增长幅度在5%~10%时,连接数会保持稳定不变。

4 获取代理

由于MGet只采用两跳的路径,因此问题得到了简化。

MGet只要求中转节点运行http、sock5等代理服务器程序。

图8 MGet获得带宽与最优值的比较

因此,与其他的多路径算法相比,MGet布置起来更为简单,甚至不需要控制中转节点:利用网上已有的大量代理服务器,就可以为数据传输提速。

目前,网络上有许多代理服务器资源,可以匿名登录使用。有许多站点提供相关信息,如http://proxycn.com等。通过登录相关站点查询,在一天内就找到了221个可用的代理服务器。这些代理服务器都可以作为中转节点,为数据传输提速。与其他的多路径算法相比,本文方法中采用的中转节点只需要支持代理协议,更容易布置。MGet能够利用网络上的大量服务器,扩大系统规模,获得更快的数据传输速度。

图9比较了算法实际所使用的TCP连接数与最优TCP连接数。可以很清楚地看到,MGet所使用的TCP连接数小于最优TCP连接数,所使用的TCP连接数为最优情况下TCP连接数的49%,获得的带宽为最优情况下的89%。

将路径选择算法与并行TCP传输算法结合起来,在大学堂系统[15]中进行了实际的数据传输测试。选取系统中位于不同自治系统(AutonomousSystem,AS)的18台服务器作为Relay节点,从北京大学(PKU)的两台服务器下载位于不同位置、不同大学的服务器的数据,并将结果与直接连接、迅雷[16]下载进行了比较。迅雷使用的并行TCP连接数采用了软件

第5期桂勇哲等:基于覆盖网络多路径与并行TCP的传输技术1175    

默认的最大值10。

表1、2中,162.105.146.231和162.105.221.100为PKU的两台服务器IP,从这两台服务器采用不同的方式下载其他服务器的数据,对应的下载速度如表中所示。从北京大学到兰州大学(lza.grids.cn)、西北工业大学(xba.grids.cn)、上海交通大学(sja.grids.cn)、广州网通(wta.grids.cn)、北京亦庄(www.avsvod.com)的RTT分别为33ms、17ms、26ms、160ms、135ms。

TCP传输算法,能够动态地根据网络状况进行调整,从而更好

图9 MGET采用TCP连接数与最优TCP连接数比较

目的端服务器位于全国不同省份,不同ISP,对应了不同的网络拓扑结构。从结果可以看到,在所有的测试中MGet都优于迅雷,并且在大多情况下MGet与迅雷相比都有很大的提高,在某些情况下可以提高5倍多。在146.231网段下载广州网通和北京亦庄站点的数据时,提速甚至达到了几百倍。原因是由于该网段的路由有一些特殊限制。由于迅雷在下载单一源时只使用了并行TCP技术,面对只有单一源的情况,迅雷的提高就很有限了。并行TCP技术在某些情况下提高很有限,而MGet同时借助了多路径的技术,因此能够在迅雷的基础上有一个极大的提升,并能在绝大多数情况下极大地提高网络数据传输速度。

表1 采用不同技术获得的数据传输速度比较

(由162.105.146.231→各大学)MBps

162.105.146.231

地利用网络并兼顾公平。最后,对算法的性能进行了实际的

测量分析并与迅雷进行了比较。

考虑到网络的变化,某些时段差的路径会在其他时段变好,因此本文的路径选择算法根据实时数据动态地选取路径,能够随时应对网络变化,更好地利用网络冗余带宽。

通过对并行TCP的测量数据进行分析,我们认为可以使用较少的TCP连接数,就能够获得较好的带宽。根据这一结论,本文的并行TCP传输算法动态地调整TCP连接数,在不同的网络情况下均能够获得较好的带宽,同时所使用的TCP连接数并不高,不会形成恶意竞争导致网络过于拥塞。

实验结果表明本文使用49%的TCP连接数获取了89%的带宽,避免使用过多的TCP连接,既保证了对网络带宽的充分利用也兼顾了公平性。

MGet完全基于覆盖网络,不需要底层路由器的支持,对中间节点的要求也很少,只需要支持代理协议,甚至不需要自己控制中间节点。因此MGet非常易于布置,并能够借助网络上的大量服务器,大幅度提高网络传输速度。目前MGet已经应用到了avsvodplayer(北京亦庄站点项目里实现的播放器)中,支持http下载。实现中需要处理许多细节,如设置文件块的大小,处理redirect时http的返回码,记录各个路径的历史数据等,在实现过程中克服了不少困难。

在算法中涉及到的参数如控制TCP数增长的参数a、b、

在下一步c;路径选取时的t值都会影响到算法的具体表现。

的工作中,将会分析不同的参数对结果的影响,并分析其原因,同时还将更进一步分析算法性能、效果以及适用情况。参考文献:

[1] ALLMANM,PAXSONV,STEVENSW.RFC2581,TCPconges2

tioncontrol[S].RFC,1999.

[2] CARDWELLN,SAVAGES,ANDERSONT.ModelingTCPlaten2

cy[C]//INFOCOM2000:19thAnnualJointConferenceoftheIEEEComputerandCommunicationsSocieties.Washington,DC:IEEEComputerSociety,2000,3:1742-1751.

[3] PADHYEJ,FIROIUV,TOWSLEYD,etal.ModelingTCPthrough2

pu:Asimplemodelanditsempiricalvalidation,UM2CS219982008[R]Amherst,MA,USA:UniversityofMassachusetts,1998.

[4] FLOYDS.RFC3649,HighspeedTCPforlargecongestionwindows

[S].RFC,2003.

[5] KELLYT.ScalableTCP:Improvingperformanceinhighspeedwide

areanetworks[J].ACMSIGCOMMComputerCommunicationRe2view,2003,33(2):83-91.

[6] XULISONG,HARFOUSHK,RHEEI.BinaryIncreaseCongestion

control(BIC)forfastlong2distancenetworks[C]//INFOCOM2004:Twenty2thirdAnnualJointConferenceoftheIEEEComputerandCommunicationsSocieties.Washington,DC:2004,4:2514-2524.

[7] HACKERTJ,ATHEYBD,NOBLEB.Theend2to2endperform2

anceeffectsofparallelTCPsocketsonalossywide2areanetwork[C]//Proceedingsofthe16thInternationalParallelandDistributedProcessingSymposium.Washington,DC:IEEEComputerSociety,2002:314.

[8] ALTMANE,BARMAND,TUFFINB,etal.ParallelTCPsockets:

Simplemodel,throughputandvalidation[C]//INFOCOM2006:Proceedingsofthe25thIEEEInternationalConferenceonComputerCommunications.Washington,DC:IEEEPress,2006:1-12.

IEEEPress,

连接的服务器兰州大学

西北工业大学上海交通大学广州网通北京亦庄

迅雷

1.3000.7061.0200.0080.005

连接方式直连

3.5004.0503.1400.8093.290

MGet3.3001.0501.2700.0210.015

表2 采用不同技术获得的数据传输速度比较

(由162.105.221.100→各大学)MBps

162.105.221.100

连接的服务器兰州大学

西北工业大学上海交通大学广州网通北京亦庄

迅雷

0.7620.6840.7291.1100.305

连接方式直连

3.1303.7903.3801.7003.580

MGet0.7912.7000.7621.2301.550

6 结语

将多路径与并行TCP两种有效提高网络传输速度的技术结合起来,能够极大地提高网络的端到端传输速度。本文针对端到端的传输需要,设计了新的路径选择算法与并行

(下转第1226页) 

1226    计算机应用第30卷

的离散对数问题,安全性与#J(E,K)大小正相关。E是有限域K=Fq上亏格为g的超椭圆曲线,由Hasse2Weil定理可知「(q-1)2g󰃔≤#J(E,K)≤「(q+1)2g󰃔,故#J(E,K)≈qg。如果取p=2,q=2n,#J(E,K)≈2160,在相同的安全性条件下,如果g=1(即椭圆曲线),采用有限域F2160;如果g=4,则只要取有限域F240就可以了。所以,在相同的安全强度下,所用的基域更小,密钥长度更短,具有存储效率、计算效率和通信宽带等方面的优势,适用于计算能力和储存能力有限的产品,因此建立在超椭圆曲线上的代理盲签名方案具有明显的高效性。3.2 代理盲签名方案的安全性分析

代理盲签名同时具备代理签名和盲签名的性质,通过分别分析这两种特殊签名的安全性,从而达到代理盲签名的安全性分析。3.2.1 方案的代理签名安全性分析方案满足不可伪造性 方案中只有指定的代理签名者B能代表原始签名者A产生有效的代理签名,包括原始签名人A在内的任何人都不能代表代理签名者B产生代理签名。事实上代理签名私钥xAB=(σA+xB)modt由代理签名者B和原始签名者A的私钥生成,要伪造签名必须攻击B的私钥xB及随机数,这等价于求解超椭圆曲线上Jacobian离散对数难题,攻击者不能产生一个伪造的有效代理签名。同样,其他任何人也不可能伪造原始签名者A的签名,要从A传给B的(rA,σA)中得到A的私钥xA和随机数kA是不可能的。

方案满足不可否认性 由不可伪造性可知道,由于任何人都不能伪造A的普通数字签名,所以A不能否认他的一个有效的普通签名。任何人都不能伪造B的代理签名,他也不能否认他的代理签名。

方案满足可区分性 因签名要用到A委托给B签名的代理签名公钥PAB,对原始签名人A来说,他通过PAB从而区分不同代理盲签名,满足可区分性。

方案满足可识别性 签名的验证等式h(φ(m′PAB+sD+U)‖m)=m′中用到代理签名公钥PAB,原始签名者A可以判断出代理签名者B的身份。在存在多个代理签名者的情况下,每个代理签名者PAB是不相同的,原始签名者可以将不同的代理者区分开,实现对代理者的监督,防止代理签名权力的滥用。在出现问题时,第三方也可以将原始签名者与代理签名者、不同的代理者区分开来,从而满足可识别性。

方案满足可注销性 如果原始签名者A想取消代理签名者B的签名权,只要在系统内宣布PAB的无效性,就可以达到取消B的签名权。3.2.2 方案的盲签名安全性分析

方案满足盲性 m=α(m′是由信息-β)modt中m′

(上接第1175页)参考文献:

[9] HACKERT,NOBLEB,ATHEYB.Improvingthroughputand

maintainingfairnessusingparallelTCP[C]//INFOCOM2004:Twenty2thirdAnnualJointConferenceoftheIEEEComputerand

CommunicationsSocieties.Washington,DC:IEEEPress,2004,4:2480-2489.

[10] SAVAGES,COLLINSA,HOFFMANE,etal.Theend2to2end

effectsofInternetpathselection[J].ACMSIGCOMMComputerCommunicationReview,1999,29(4):289-299.[11] HANJ,WATSOND,JAHANIANF.Topologyawareoverlaynet2

works[C]//INFOCOM2005:24thAnnualJointConferenceof

theIEEEComputerandCommunicationsSocieties.Washington,DC:IEEEComputerSociety,2005:2554-2565.

-1

m的Hash值以及α,β的任意性决定的,代理签名人不可能得

到任何原始消息,盲性对原始签名者A和代理签名者B是成

立的。

方案满足不可追踪性 代理签名者B也不能把公开后消息m和它以前的签名建立关联,满足不可追踪性。事实上消息拥有者S在公布签名(m′,s,U)后,代理签名者B保留了盲

),建立关联的不可追踪概率是1-(1/t2),而t是签名(m,sB′

一个大素数,故概率接近1。

4 结语超椭曲线密码体制作为当前流行的椭圆曲线的推广,倍受国内外重视,是研究热点。本文首先将椭圆曲线签名方案推广到超椭圆曲线上,并基于超椭圆曲线提出同时具有代理签名和盲签名特点的代理盲签名方案,可证明该方案是正确、安全可靠的。

本文提出签名方案可以充分利用超椭圆曲线密码体制的安全性和高效性,用它来解决面向工程应用的签名方案,特别适合电子现金、电子选举和电子拍卖等方面,具有广阔的应用前景。参考文献:

[1] MAMBOM,USUDAK,OKAMOTOE.Proxysignaturefordelega2

tingsigningoperation[C]//Proceedingofthe3ACMConfercenceonComputerandCommunicationsSecurity.NewYork:ACMPress,1996:48-57.

[2] CHAUMDL.Blindsignaturessystem:USA,4759063[P].1983.[3] LINWD,JANJK.Asecuritypersonallearningtoolsusingaproxy

blindsignaturescheme[C]//ProceedingsofInternationalConfer2enceonChineseLanguageComputing.Illinois,USA:ChineseLan2guageComputerSocietyKnowledgeSystemsInstitute,2000:273-277.

[4] KOBLITZN.Hyperellipticcryptosystems[J].JournalofCryptolo2gy,1989,1(3):139-150.[5] SILVERMANJH.Thearithmeticofellipticcurves[M].Beijing:

BeijingWorldPublishingCorporation,1999:31-34,66-68.[6] KOBLITZN.Algebraicaspectsofcryptography[M].Berlin:Spring2

er2Verlag,1997:117-154,155-178.

[7] CANTORDG.ComputingintheJacobianofahyperellipticcurves

[J].MathematicsofComputation,1987,48(177):95-101.[8] (加)HANKERSOND,MENEZESA,VANSTONES.椭圆曲线密

码学导论[M].张焕国,译.北京:电子工业出版社,2005:90-97.

[9] 赵泽茂.数字签名理论[M].北京:科学出版社,2007:155-159.[10] 张方国,王常杰,王育民.一个基于超椭圆曲线的消息恢复签名

方案[J].西安电子科技大学学报:自然科学版,2001,28(4):

430-433.

[12] ITOT,OHSAKIH,IMASEM.GridFTP2APT:Automaticparal2

lelismtuningmechanismfordatatransferprotocolGridFTP[C]//ProceedingsoftheSixthIEEEInternationalSymposiumonClusterComputingandtheGrid.Washington,DC:IEEEComputerSocie2ty,2006:454-461.

[13] ITOT,OHSAKIH,IMASEM.Onparametertuningofdatatrans2

ferprotocolGridFTPforwide2areagridcomputing[C]//Broad2Nets2005:2ndInternationalConferenceonBroadbandNetworks.Washington,DC:IEEEPress,2005,2:1338-1344.

[14] iperf[CP/OL].[2009-05-25].http://sourceforge.net/pro2

jects/iperf/.

[15] 大学堂[CP/OL].[2009-05-18].http://www.grids.cn.[16] 迅雷[CP/OL].[2009-05-18].http://www.xunlei.com.

因篇幅问题不能全部显示,请点此查看更多更全内容

Top