一种流媒体点播系统中时间相关的对等网络组织方法

文档序号:7953445阅读:167来源:国知局
专利名称:一种流媒体点播系统中时间相关的对等网络组织方法
技术领域
本发明属于计算机应用领域,是一种流媒体点播系统中时间相关的对等网络组织方法。
背景技术
流媒体技术的应用一直是在互联网上传播多媒体信息的主要方式,随着宽带网的日益普及,流媒体点播服务的受关注程度也正日渐提高。
传统的流媒体点播机制将大量待点播的流媒体数据存放在一组集中管理的视频服务器上,视频服务器负责响应每个客户端的点播请求。在这种客户/服务器系统模式下,视频服务器承担了全部的工作。当点播的用户不断增加时,视频服务器最终将达到其能力极限。为了增强系统的服务能力,常用的办法是增加视频服务器的数量,然而在增强系统服务能力的同时,网络带宽也需要进行相应的提高。基于这种方案的系统,其实现代价较高并且有限增加的视频服务器数量和网络带宽也难以满足无限增加的点播需求。因此找到一项适合于点播系统的技术迫在眉睫。
对等网络技术是近年来兴起的一项利用终端桌面PC计算能力以及终端网络带宽在用户之间进行文件共享的新技术,它具有使用灵活性、可扩展性、健壮性、负载均衡等诸多优点,因此它为流媒体服务的普及提供了一种良好的技术基础。基于对等网络的流媒体点播方法使得节点P能够互相分享已有的数据而不用全部集中到视频服务器端获取数据,从而大大减轻了视频服务器和网络的负担。
目前存在的基于对等网络的点播系统大都按照“树形“逻辑结构来组织系统中的节点,例如P2VOD(T.Do,K.A.Hua,and M.Tantaoui.“P2VoDproviding fault tolerant video-on-demand streaming in peer-to-peerenvironment”,in Proc.of IEEE ICC’04,Paris,France,Jun.2004.)和P2Cast(Y.Guo,K.Suh,J.Kurose,and D.Towsley.“P2CastPeer-to-peer Patching Scheme for VoD Service”,in Proc.of the 12thWorld Wide Web Conference(WW’03),Budapest,Hungary,May 2003.),与传统的流媒体点播系统相比它们更充分地利用了系统中各个节点的资源,使得系统不仅是在稳定性而且在可扩展性方面都有了很大的提高。然而,当系统中的节点较为频繁地加入或退出时,系统为了维护这种“树形”的逻辑网络组织结构需要花费相当大的代价,特别是当某些关键性的节点失效时,“树形”的逻辑网络组织结构几乎需要重构,从而使得系统产生颠覆性影响。因此“树形“结构的网络组织方法不能很好地适应于对等网络点播系统。

发明内容
本发明的目的在于提供一种流媒体点播系统中时间相关的对等网络组织方法,该方法保证了系统的稳定性和动态性,消除了“单点失效“,并提高了系统中节点获取信息的准确性。
本发明提供的一种流媒体点播系统中时间相关的对等网络组织方法,包括以下步骤(1)系统中任一节点P创建该节点的普通节点列表、“邻居”节点列表和“伙伴”节点列表;(2)节点P获取与其处于同一频道的所有节点的节点信息,并加入其普通节点列表中;(3)节点P判断其普通节点列表中的各节点的当前播放时间是否与其当前播放时间邻近,如果是,进入步骤(4);否则,进入步骤(9);(4)节点P与和它当前播放时间邻近的各节点建立“邻居”关系;(5)节点P判断当前时间与其上一次发送信息的时间的间隔是否达到交流周期,如果是,进入步骤(6);否则,进入步骤(7);(6)节点P先向其“邻居”节点发送更新信息和拓扑维护信息;再通过信息标识符判断接收到的信息的类型,如果是加入信息,进入步骤(A1);如果是退出信息,进入步骤(B1);如果是更新信息,进入步骤(C1);如果是拓扑维护信息,进入步骤(D1);否则回到步骤(5);(A1)节点P将收到的加入信息中关于节点的信息加入其普通节点列表中;(A2)收到加入信息的节点判断收到的信息是否失效,如果是,回到步骤(5);否则,进入(A3);(A3)收到加入信息的节点将收到的加入信息中被转发的次数n加1,然后转发给其所有的“邻居”节点,完成后回到步骤(5);(B1)节点P将收到的退出信息中的关于节点的信息从节点P的“邻居”节点列表中删除,然后进入步骤(B2);(B2)步骤(B1)中收到退出信息的节点判断收到的信息是否失效,如果是,回到步骤(5);否则,进入步骤(B3);(B3)满足步骤(B2)条件的节点将收到的退出信息中被转发的次数n加1,然后转发给其所有的“邻居”节点,完成后回到步骤(5);(C1)节点P将收到的更新信息中关于节点的信息在其“邻居”节点列表中更新,然后回到步骤(5);(D1)节点P判断其普通节点列表中是否存在与收到的拓扑维护信息中节点标识符相同的节点,如果是,进入(D2);否则,进入步骤(D3);(D2)步骤(D1)中收到拓扑维护信息的节点将该拓扑维护信息中关于节点的信息在其普通节点列表中更新,然后进入步骤(D4);(D3)步骤(D1)中收到拓扑维护信息的节点将该拓扑维护信息中关于节点的信息加入其普通节点列表中;(D4)步骤(D1)中收到拓扑维护信息的节点将该拓扑维护信息中关于节点的信息判断该拓扑维护信息是否失效,如果是,回到步骤(5);否则,进入步骤(D5);(D5)满足步骤(D4)条件的节点将收到的拓扑维护信息中被转发的次数n加1,然后转发给从其“邻居”节点中随机选择的多个节点,完成后回到步骤(5);
(7)节点P判断其“邻居”节点是否具有它所需要的数据,如果是,该“邻居”节点为“伙伴”节点,进入步骤(8);否则,回到步骤(5);(8)节点P和邻居节点互相将对方的节点信息加入其“伙伴”节点列表中,然后互相将对方的节点信息从其“邻居”节点列表中删除;(9)判断节点P是否播放结束,如果是,向其所有的“邻居“节点发送退出信息,然后结束;否则,回到步骤(3)。
上述步骤(2)包括以下步骤(2.1)节点P使用要观看的频道的标识符和其当前播放时间作为请求条件向索引服务器发起请求;(2.2)索引服务器查询数据库中的时间表后将与节点P播放时间邻近的节点的节点信息反馈给请求节点;(2.3)节点P将接收的节点信息加入其普通节点列表中。
上述步骤(4)包括以下步骤(4.1)节点P判断其“邻居”节点数目是否达到上限值, m是系统中节点的数目,如果是,进入步骤(5);否则,进入步骤(4.2);(4.2)节点P与和它当前播放时间邻近的各节点建立TCP网络连接;(4.3)节点P向与其网络连接的节点发起请求;(4.4)被请求节点收到节点P的请求后,判断其“邻居”节点数目是否达到上限值,如果是,发送拒绝信息,然后进入步骤(5);否则,进入步骤(4.5);(4.5)被请求节点判断其“邻居”列表中是否已经存在节点P的节点信息,如果是,发送拒绝信息,然后进入步骤(5);否则,进入步骤(4.6);(4.6)被请求节点将节点P的节点信息加入其“邻居”节点列表中,然后通知节点P;(4.7)节点P收到被请求节点回应的信息后将被请求节点的节点信息加入其“邻居”节点列表中;(4.8)判断节点P是否第一次进入系统,如果是,进入步骤(4.9);否则,进入步骤(5);(4.9)节点P向其所有的“邻居”节点发送加入信息。
本发明由节点首先挑选出与其播放时间邻近的节点,然后选取那些缓存有其所需数据的节点,二者之间建立连接。具体而言,本发明具有以下特征(1)稳定性节点P通过定期地交流它们当前的时间信息使得所有节点都能够不停的补充对其有用的节点信息,当系统中有节点失效或正常退出时其他节点不至于受到很大的影响,从而保证了系统的稳定性。
(2)动态性节点P通过节点信息来发现对其有用的节点,并且自适应的与这些有用的节点建立关系,不受其他因素的影响。
(3)消除“单点失效“节点P定期交流它们的当前播放时间,因此它们能够及时、快速的寻找到许多与其播放时间邻近并且能提供数据的节点。所以,系统不可能因为某个节点突然失效而不能正常工作,从而消除了“单点失效“。
(4)系统中节点获取的信息的准确性节点P会定期交流它们当前的时间信息,因此当它们的信息发生变化时,它们会立即通知相关的节点,以保证这些相关节点获取的节点信息的准确性。


图1为本发明方法的流程示意图;图2为节点列表的关系结构图;图3为“邻居”关系建立过程图;图4为步骤(6.2)的接收信息流程图;图5为实例的网络组织图。
具体实施例方式
本发明根据对等网络中流媒体点播系统的需要建立了一种时间相关的对等网络,下面结合附图和实例对本发明作详细的说明。
如图1所示,进入点播系统的所有节点均按以下步骤组织对等网络(1)节点P创建该节点的普通节点列表、“邻居”节点列表和“伙伴”节点列表用于存放节点信息;节点信息包括节点标识符、节点所观看频道的频道标识符、节点的IP地址和端口、节点网关的IP地址和端口、节点缓存数据的起始位置、终止位置和节点的当前播放时间。普通节点列表即附图中的表A,用于记录与节点P处于同一频道的所有节点的节点信息。“邻居”节点列表即附图中的表B,用来记录节点P的“邻居”节点的节点信息,“邻居”节点是指当前播放时间与节点P邻近的节点。依据系统中节点的缓存容量设定一个基准播放时间差,通常的范围是100秒-600秒,当二节点的播放时间之差小于该基准播放时间差时,称二节点邻近。“伙伴”节点列表即附图中的表C,用于记录节点P的“伙伴”节点的节点信息,“伙伴”节点是指“邻居”节点中具有节点P所需要数据的节点。设节点P的当前播放时间为T,其“邻居”节点缓存数据的起始位置为T1,终止位置为T2,当满足T1<T<T2时,称节点P的“邻居”节点具有它所需要的数据。
“伙伴”节点列表是“邻居”节点列表的子集,“邻居”节点列表是普通节点列表的子集,三种节点列表的关系如图2所示。
(2)节点P获取与其处于同一频道的所有节点的节点信息,并将这些节点信息加入其普通节点列表中,具体步骤如下;(2.1)节点P使用要观看的频道的标识符和其当前播放时间作为请求条件向索引服务器发起请求;(2.2)索引服务器查询数据库中的时间表后将与节点P播放时间邻近的节点的节点信息反馈给请求节点;(2.3)节点P将接收的节点信息加入其普通节点列表中;(3)节点P判断其普通节点列表中的各节点的当前播放时间是否与其当前播放时间邻近,如果是,进入步骤(4);否则,进入步骤(9);
(4)节点P与和它当前播放时间邻近的各节点(即附图中的节点Q)建立“邻居”关系,如图3所示,其过程为(4.1)节点P判断其“邻居”节点数目是否达到上限值, m是系统中节点的数目,如果是,就进入步骤(5);否则,进入步骤(4.2);(4.2)节点P与和它当前播放时间邻近的各节点建立TCP网络连接;(4.3)节点P向与其网络连接的节点发起请求,请求的内容包括一串标识字符(REQUEST)和节点P缓存数据的起始位置和终止位置;(4.4)被请求节点收到节点P的请求后,判断其“邻居”节点数目是否达到上限值,如果是,发送一串标识字符(REJECT)表示拒绝请求,然后进入步骤(5);否则,进入步骤(4.5);(4.5)被请求节点判断其“邻居”列表中是否已经存在节点P的节点信息,如果是,就发送一串标识字符(REJECT)表示拒绝请求,然后进入步骤(5);否则,进入步骤(4.6);(4.6)被请求节点将节点P的节点信息加入其“邻居”节点列表中,然后通知节点P,通知的内容包括一串字符(OK)和被请求节点缓存数据的起始位置和终止位置;(4.7)节点P收到被请求节点回应的信息后将被请求节点的节点信息加入其“邻居”节点列表中;(4.8)判断节点P是否第一次进入系统,如果是,进入步骤(4.9);否则,进入步骤(5);(4.9)节点P向其所有的“邻居”节点发送加入信息,节点的加入信息包括信息标识符(JOIN)、该节点标识符、该节点所观看频道的频道标识符、该节点的IP地址和端口、该节点网关的IP地址和端口、该节点缓存数据的起始位置、终止位置、该节点的当前播放时间和该信息在系统中已经被转发的次数n;(5)节点P判断当前时间与其上一次发送信息的时间的间隔是否达到交流周期,设节点P第一次发送信息的时间为其进入系统的时间,交流周期由系统的硬件配置和网络带宽决定,通常取值为30秒。如果是,进入步骤(6);否则,进入步骤(7);
(6)节点P与其“邻居”节点交流信息,过程如下;(6.1)节点P向其“邻居”节点发送更新信息和拓扑维护信息;节点的更新信息包括信息标识符(UPDATE)、该节点标识符、该节点所观看频道的频道标识符、该节点的IP地址和端口、该节点网关的IP地址和端口、该节点缓存数据的起始位置、终止位置、该节点当前播放时间位置和被转发的次数n。
节点的拓扑维护信息包括信息标识符(MAINTAIN)、该节点标识符、该节点所观看频道的频道标识符、该节点的IP地址和端口、该节点网关的IP地址和端口、该节点缓存数据的起始位置、终止位置、该节点当前播放时间和被转发的次数n。
(6.2)节点P通过信息标识符判断接收到的信息的类型,如果是加入信息,进入步骤(A1);如果是退出信息,进入步骤(B1);如果是更新信息,进入步骤(C1);如果是拓扑维护信息,进入步骤(D1);否则回到步骤(5)。如图4所示,过程如下(A1)节点P将收到的加入信息中关于节点的信息(即该节点标识符、该节点的IP地址和端口、该节点网关的IP地址和端口、该节点缓存数据的起始位置、终止位置和该节点的当前播放时间)加入其普通节点列表中,然后进入步骤(A2);(A2)步骤(A1)中收到加入信息的节点判断收到的信息是否失效,如果是,回到步骤(5);否则,进入(A3);本发明中,信息是否失效是通过判断该加入信息在系统中已经被转发的次数是否达到其生存周期来确定,生存周期由系统中节点的数目和系统的网络带宽决定,通常取值为3-5。
(A3)满足步骤(A2)条件的节点将收到的加入信息中被转发的次数n加1,然后转发给其所有的“邻居”节点,完成后回到步骤(5);(B1)节点P将收到的退出信息中的关于节点的信息(即该节点标识符、该节点的IP地址和端口、该节点网关的IP地址和端口、该节点缓存数据的起始位置、终止位置和该节点的当前播放时间)从节点P的“邻居”节点列表中删除,然后进入步骤(B2);
(B2)步骤(B1)中收到退出信息的节点判断收到的信息是否失效,如果是,回到步骤(5);否则,进入步骤(B3);(B3)满足步骤(B2)条件的节点将收到的退出信息中被转发的次数n加1,然后转发给其所有的“邻居”节点,完成后回到步骤(5);(C1)节点P将收到的更新信息中关于节点的信息(即该节点标识符、该节点的IP地址和端口、该节点网关的IP地址和端口、该节点缓存数据的起始位置、终止位置和该节点的当前播放时间)在其“邻居”节点列表中更新,然后回到步骤(5);(D1)节点P判断其普通节点列表中是否存在与收到的拓扑维护信息中节点标识符相同的节点,如果是,进入(D2);否则,进入步骤(D3);(D2)步骤(D1)中收到拓扑维护信息的节点将该拓扑维护信息中关于节点的信息(即该节点标识符、该节点的IP地址和端口、该节点网关的IP地址和端口、该节点缓存数据的起始位置、终止位置和该节点的当前播放时间)在其普通节点列表中更新,然后进入步骤(D4);(D3)步骤(D1)中收到拓扑维护信息的节点将该拓扑维护信息中关于节点的信息加入其普通节点列表中;(D4)步骤(D1)中收到拓扑维护信息的节点将该拓扑维护信息中关于节点的信息判断该拓扑维护信息是否失效,如果是,回到步骤(5);否则,进入步骤(D5);(D5)满足步骤(D4)条件的节点将收到的拓扑维护信息中该信息在系统中已经被转发的次数加1,然后转发给从其“邻居”节点中随机选择的多个节点,完成后回到步骤(5);(7)节点P判断其“邻居”节点是否具有它所需要的数据,如果是,该“邻居”节点为“伙伴”节点,进入步骤(8);否则,回到步骤(5);(8)节点P和邻居节点互相将对方的节点信息加入其“伙伴”节点列表中,然后互相将对方的节点信息从其“邻居”节点列表中删除;(9)判断节点P是否播放结束,如果是,向其所有的“邻居“节点发送退出信息,节点的退出信息包括信息标识符(DROP)、该节点标识符、该节点所观看频道的频道标识符、该节点的IP地址和端口、该节点网关的IP地址和端口、该节点缓存数据的起始位置、终止位置、该节点的当前播放时间和被转发的次数n,然后结束;否则,回到步骤(3)。
至此,流媒体点播系统就完成了时间相关的对等网络组织。
实例利用本发明所阐述的时间相关的对等网络组织方法,实验室提供了1个视频服务器,1个索引服务器以及10台普通PC机,每台PC的缓存容量为30M,根据这个缓存容量设定基准播放时间差为300秒。PC机的硬件配置如下

PC 1-10分别称为节点1、节点2……节点10。某时刻,根据节点1……节点9的播放时间组织的对等网络如图5所示。根据系统的硬件配置设定系统中节点的“邻居”节点的上限值为4,各信息的生存周期是3,各信息的交流周期是30秒。
节点10加入时,索引服务器返回给它邻近的节点3和节点5,此时节点3和节点5的“邻居”节点数目分别为1和2,因此节点10能够与两节点建立“邻居”关系。节点5缓存数据的终止位置是00:03:20,节点3的当前播放时间是00:01:53,两个时间的差值在0秒和300秒之间,因此二者建立“伙伴”关系。
到达信息交流周期时,节点1从其“邻居”节点中随机选择了节点4发送拓扑维护信息,该信息被节点4转发到节点2,节点2收到信息后首先将关于节点1的信息加入其普通节点列表中,然后它判断该信息中的在系统中被转发的次数1是否小于信息的生存周期3,继续将该信息进行转发。节点2的当前播放时间为00:07:45,其普通节点列表中的节点1的当前播放时间为00:04:12,它们的当前播放时间之差小于300秒,而且它们的“邻居”节点数目都没有达到上限值,因此二者建立“邻居”关系。节点2缓存数据的起始位置和终止位置分别是00:03:00和00:08:00,节点1的当前播放时间是00:04:12,它处于节点2缓存数据的起始位置和终止位置之间,因此二者建立“伙伴”关系。
同上述方式,节点8与节点9也会建立“邻居”关系,并最终建立“伙伴”关系。节点P通过定期交流信息维护了“邻居”这层关系,在“邻居”关系的基础上它们能够寻找到更多的“伙伴”节点,保证服务的性能。
经多次测试,采用本发明所论述的时间相关的对等网络组织方法,同一频道上的节点都能够非常流畅地观看节目,整个系统能够稳定地工作。
权利要求
1.一种流媒体点播系统中时间相关的对等网络组织方法,包括以下步骤(1)系统中任一节点(P)创建该节点的普通节点列表、“邻居”节点列表和“伙伴”节点列表;(2)节点(P)获取与其处于同一频道的所有节点的节点信息,并加入其普通节点列表中;(3)节点(P)判断其普通节点列表中的各节点的当前播放时间是否与其当前播放时间邻近,如果是,进入步骤(4);否则,进入步骤(9);(4)节点(P)与和它当前播放时间邻近的各节点建立“邻居”关系;(5)节点(P)判断当前时间与其上一次发送信息的时间的间隔是否达到交流周期,如果是,进入步骤(6);否则,进入步骤(7);(6)节点(P)先向其“邻居”节点发送更新信息和拓扑维护信息;再通过信息标识符判断接收到的信息的类型,如果是加入信息,进入步骤(A1);如果是退出信息,进入步骤(B1);如果是更新信息,进入步骤(C1);如果是拓扑维护信息,进入步骤(D1);否则回到步骤(5);(A1)节点(P)将收到的加入信息中关于节点的信息加入其普通节点列表中;(A2)收到加入信息的节点判断收到的信息是否失效,如果是,回到步骤(5);否则,进入(A3);(A3)收到加入信息的节点将收到的加入信息中被转发的次数n加1,然后转发给其所有的“邻居”节点,完成后回到步骤(5);(B1)节点(P)将收到的退出信息中的关于节点的信息从节点(P)的“邻居”节点列表中删除,然后进入步骤(B2);(B2)步骤(B1)中收到退出信息的节点判断收到的信息是否失效,如果是,回到步骤(5);否则,进入步骤(B3);(B3)满足步骤(B2)条件的节点将收到的退出信息中被转发的次数n加1,然后转发给其所有的“邻居”节点,完成后回到步骤(5);(C1)节点(P)将收到的更新信息中关于节点的信息在其“邻居”节点列表中更新,然后回到步骤(5);(D1)节点(P)判断其普通节点列表中是否存在与收到的拓扑维护信息中节点标识符相同的节点,如果是,进入(D2);否则,进入步骤(D3);(D2)步骤(D1)中收到拓扑维护信息的节点将该拓扑维护信息中关于节点的信息在其普通节点列表中更新,然后进入步骤(D4);(D3)步骤(D1)中收到拓扑维护信息的节点将该拓扑维护信息中关于节点的信息加入其普通节点列表中;(D4)步骤(D1)中收到拓扑维护信息的节点将该拓扑维护信息中关于节点的信息判断该拓扑维护信息是否失效,如果是,回到步骤(5);否则,进入步骤(D5);(D5)满足步骤(D4)条件的节点将收到的拓扑维护信息中被转发的次数n加1,然后转发给从其“邻居”节点中随机选择的多个节点,完成后回到步骤(5);(7)节点(P)判断其“邻居”节点是否具有它所需要的数据,如果是,该“邻居”节点为“伙伴”节点,进入步骤(8);否则,回到步骤(5);(8)节点(P)和邻居节点互相将对方的节点信息加入其“伙伴”节点列表中,然后互相将对方的节点信息从其“邻居”节点列表中删除;(9)判断节点(P)是否播放结束,如果是,向其所有的“邻居“节点发送退出信息,然后结束;否则,回到步骤(3)。
2.根据权利要求1所述的方法,其特征在于步骤(2)包括以下步骤(2.1)节点(P)使用要观看的频道的标识符和其当前播放时间作为请求条件向索引服务器发起请求;(2.2)索引服务器查询数据库中的时间表后将与节点(P)播放时间邻近的节点的节点信息反馈给请求节点;(2.3)节点(P)将接收的节点信息加入其普通节点列表中。
3.根据权利要求1或2所述的方法,其特征在于步骤(4)包括以下步骤(4.1)节点(P)判断其“邻居”节点数目是否达到上限值, m是系统中节点的数目,如果是,进入步骤(5);否则,进入步骤(4.2);(4.2)节点(P)与和它当前播放时间邻近的各节点建立TCP网络连接;(4.3)节点(P)向与其网络连接的节点发起请求;(4.4)被请求节点收到节点(P)的请求后,判断其“邻居”节点数目是否达到上限值,如果是,发送拒绝信息,然后进入步骤(5);否则,进入步骤(4.5);(4.5)被请求节点判断其“邻居”列表中是否已经存在节点(P)的节点信息,如果是,发送拒绝信息,然后进入步骤(5);否则,进入步骤(4.6);(4.6)被请求节点将节点(P)的节点信息加入其“邻居”节点列表中,然后通知节点(P);(4.7)节点(P)收到被请求节点回应的信息后将被请求节点的节点信息加入其“邻居”节点列表中;(4.8)判断节点(P)是否第一次进入系统,如果是,进入步骤(4.9);否则,进入步骤(5);(4.9)节点(P)向其所有的“邻居”节点发送加入信息。
全文摘要
本发明公开了一种流媒体点播系统中时间相关的对等网络组织方法,各节点执行以下步骤①创建节点列表;②记录与其处于同一频道所有节点的节点信息;③判断其普通节点列表中的各节点的当前播放时间是否与其邻近;④与当前播放时间邻近的各节点建立“邻居”关系;⑤判断当次与上次发送信息的时间间隔是否达到交流周期;⑥与各“邻居”节点交流信息;⑦判断其“邻居”节点是否缓存有所需要的数据;⑧与缓存有它所需要的数据的节点建立“伙伴”关系;⑨判断播放是否结束。本发明由节点挑选出播放时间邻近的节点,再选取缓存有其所需数据的节点,并建立连接。本发明保证了系统的稳定性和动态性,消除了“单点失效“,并提高了节点获取信息的准确性。
文档编号H04L29/02GK1885812SQ20061001917
公开日2006年12月27日 申请日期2006年5月29日 优先权日2006年5月29日
发明者金海 , 廖小飞, 周怡, 程斌 申请人:华中科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1