分布式互联网测量服务器自动注册与管理方法转让专利

申请号 : CN200810094269.5

文献号 : CN101282249B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李星包丛笑

申请人 : 清华大学

摘要 :

分布式互联网测量服务器自动注册与管理方法属于互联网技术领域,其特征在于:新增测试服务器利用特定格式查询方法自动向注册管理服务器进行注册,经初步确认后,对该测量服务器进行功能和性能测试。通过测试后,根据测试性能优劣,对同一个自治域内的多台测量服务器进行排序。利用IP地址到自治域号码的查询方法及自治域号码到域名的查询方法,将具有最优测试性能的服务器作为沿传输路径上各自治域提供自动测量的首选服务器。数据库服务器定期轮询其中服务器以检查其“存活”状态,自动更新和维护数据库服务器的注册测量服务器列表。本发明有效地就解决了分布式服务器自动注册与管理问题,可扩展性和稳定性很好。

权利要求 :

1.一种分布式互联网测量服务器自动注册与管理方法,其特征在于以下依次完成的步骤:步骤(1)初始化:每台测量服务器连入互联网,静态配置或动态获得新增测量服务器的IP地址为x.y.z.w;

在每台测量服务器上安装多种测量工具的服务器端模块及其对应的自动注册功能模块;

在注册管理服务器上安装域名服务模块,使之具有testtool.foo.bar子域的域名服务的功能,提供形如*.testtool.foo.bar的域名解析服务;

同时,在注册管理服务器上安装与上述多种测量工具的服务器端模块对应的客户端模块;

将路由器的边界网关协议BGP路由表导入与之相连的查询服务器QS1,查询服务器QS1的域名是test1.foo.bar,QS1注册到其上一级域名服务器,其域名是*.foo.bar,用以完成用户对A和B之间传输路径上沿各自治域内边界路由器的IP地址e.f.g.h所构成的h.g.f.e..test1.foo.bar的文本域域名解析服务,从而查找到对应的自治域号码as***;

在数据库服务器DB上安装SQL数据库系统,以测量服务器IP地址、域名、自治域号码、可提供的测量功能、性能指标、注册时间这些数据项组成的记录格式保存已注册测量服务器的有关参数;

步骤(2):新增测量服务器开机运行,以特定形式构成的域名格式向注册管理服务器发送请求认证和注册信息,构成为:注册特定字符.可提供的测量功能.次高级域名.最高级域名,格式为:reg.testtool.foo.bar;

步骤(3):注册管理服务器分析查询日志,对符合上述域名格式的请求,可初步确定其可能是能提供testtool功能的新增测量服务器,且其IP地址为x.y.z.w,将其IP地址通知数据库服务器DB暂存并纪录该服务器可能提供的测量功能;不符合的,将其忽略;

步骤(4):数据库服务器DB查询在册的注册数据库列表,如果该地址不在列表中,或离上次注册时间24小时以上,执行步骤(5);如果该地址已在列表中,且离上次注册时间24小时以内,认为其已经完成注册,执行步骤(11);

步骤(5):注册管理服务器根据该新增测量服务器可能提供的测量功能,调用自己相应的测量功能客户端模块,对具有以上IP地址的测量服务器进行所设定的功能测试及性能测试;若同一自治域内有多台测量服务器,注册管理服务器将对多台测量服务器分别进行功能测试及性能测试;

步骤(6):如果通过了功能测试,注册管理服务器向查询服务器QS1查询该IP地址对应的自治域号码as***;如果没有通过功能测试,注册管理服务器通知数据库服务器将该IP地址删除;

步骤(7):将查到的以IP地址、自治域号码这些数据项组成的记录存入数据库服务器注册数据库中,并根据同一自治域内多台测量服务器的所设定的同一测量功能的测试性能进行排序,将最优性能者作为该自治域首选测量服务器提供服务;

步骤(8):将步骤(6)中查询服务器QS1查到的自治域号码,采用自治域号码到测量服务器IP地址的查找方法,向注册管理服务器逐个地发出由所得到的自治域号码和注册管理服务器域名共同构造的新域名as***.testtool.foo.bar,同时发出域名解析请求,获得具有该IP地址的测量服务器的域名;

步骤(9):数据库服务器DB将以(测量服务器IP地址,自治域号码,域名,可提供的测量功能,性能指标,注册时间)记录格式保存已注册测量服务器的有关参数,正式写入注册数据库列表;

步骤(10):数据库服务器DB定期对在册的测量服务器进行轮询,完成功能测试及性能测试,通过功能测试的,保持原来记录;不能通过功能测试的,删除原来记录,更新注册数据库列表;

步骤(11):重复步骤1-9,将多个新增测量服务器的有关信息存入数据库服务器的注册数据库中。

说明书 :

技术领域

分布式互联网测量服务器自动注册与管理方法属于互联网技术领域。

背景技术

互联网目前已经成为全世界最重要的信息基础设施。但基于包交换的互联网通信的基本原则仍然是“尽力而为”。对于有高带宽、高服务质量要求的各种网络应用,如实时视频应用(UDP:20Mbps-1200Mbps)和高速文件传输(TCP:500Mbps-5000Mbps)等,其端到端性能的保证必须依赖对网络资源进行优化配置,包括路由调整功能等。多年的实践表明:如果不使用有效的网络性能测量工具,进行大量的前期网络性能测试,找到制约高带宽、高服务质量的传输瓶颈,并根据测量测试结果优化网络带宽资源,此类应用是不能成功的。端到端网络性能的保证必须以逐跳网络性能保证为前提,所以必须在应用用户对之间端到端传输路径的关键点上部署测量服务器,使用户能够与各服务器进行逐跳性能测量,分段发现并解决故障。因此,大规模测量服务器的部署与管理是解决此类问题的前提与基础。
目前互联网上已有的其他网络测量方法及工具也很多,有的不使用测量服务器,有的使用测量服务器。即使是使用各种测量服务器的方法,如iperf等,在众多的测量服务器之间缺乏一种有效的自动管理机制。通常测量服务器管理中的新增测量服务器的注册、发现和维护等功能是由网络管理员手工添加新增服务器(删除不工作服务器)的有关信息到数据库服务器中,可扩展性很差。本发明试图解决可扩展可管理的新增互联网测量服务器向注册服务器自动注册与数据库动态管理的问题。本发明采用了域名系统(DNS)标识技术和分布式查询技术、测量功能认证技术和数据动态查询及更新技术等多种技术结合的方法很好地解决了这个问题。这个方法特别为互联网跨自治域的分布式测量服务器的自动管理提供了可扩展性好,管理性强的方案。虽然该方法由支持高性能视频应用的性能测量的需求提出,但也可用于其它所有的分布式服务器,特别是信息分发网络(CPN)中服务器的注册、优化与管理,具有非常广阔的应用前景。

发明内容

本发明的目的在于提供分布式互联网测量服务器自动注册与管理方法。分布式互联网测量服务器自动注册与管理方法,其特征在于以下依次完成的步骤:步骤(1)初始化
每台测量服务器MS连入互联网,静态配置或动态获得该新增测量服务器的IP地址为x.y.z.w;
在每台测量服务器上安装多种测量工具的服务器端模块及其对应的自动注册功能模块;
在注册管理服务器RS上安装域名DNS系统服务模块,使之具有testtool.foo.bar子域的域名服务的功能,提供形如*.testtool.foo.bar的域名解析服务;
同时,在注册管理服务器上安装与上述多种测量工具服务器端模块对应的客户端模块;
将全球边界网关协议BGP的路由表导入与之相连的BGP路由表查询服务器QS1,查询服务器QS1的域名是test1.foo.bar,QS1注册到其上一级域名服务器,其域名是*.foo.bar,用以完成用户对(此例中是用户A和用户B)之间传输路径上沿各自治域内边界路由器的IP地址x.y.z.w所构成的w.z.y.x.test1.foo.bar的文本域(TXT)域名解析服务,从而查找到对应的自治域号码as***;
在数据库服务器DB上安装SQL数据库系统,以测量服务器IP地址、域名、AS号码、可提供的测量功能、性能指标、注册时间数据项组成的记录格式保存已注册测量服务器的有关参数;
步骤(2):新增测量服务器开机运行,以特定形式构成的域名格式向注册管理服务器发送请求认证和注册信息,构成为:注册特定字符.可提供的测量功能.次高级域名.最高级域名,格式为:reg.testtool.foo.bar;
步骤(3):注册管理服务器分析查询日志,对符合上述域名格式的请求,可初步确定其可能是能提供testtool功能的新增测量服务器,且其IP地址为x.y.z.w,将其IP地址通知数据库服务器DB暂存并纪录该服务器可能提供的测量功能;不符合条件的,将其忽略;
步骤(4):数据库服务器DB查询在册的注册数据库列表,如果该地址不在列表中,或离上次注册时间24小时以上,执行步骤(5);如果该地址已在列表中,且离上次注册时间24小时以内,认为其已经完成注册,执行步骤(11);
步骤(5):注册管理服务器根据其可能提供的测量功能,调用自己相应的测量功能客户端模块,对具有以上IP地址的测量服务器进行所设定的测量功能认证及性能测试;若同一自治域内有多台测量服务器,注册管理服务器将对多台测量服务器分别进行测量功能认证及性能测试;
步骤(6):如果具有以上IP地址的测量服务器通过了功能认证及性能测试,注册服务器向查询服务器QS1查询该IP地址对应的自治域号码AS;如果没有通过测试,注册服务器通知数据库服务器将该IP地址删除;
步骤(7):将查到的以IP地址、AS自治域号码数据项组成的记录存入数据库服务器注册数据库中,并根据同一自治域内多台测量服务器的所设定的同一测量功能的测试性能进行排序,将最优性能者作为该自治域首选测量服务器提供服务;
步骤(8):将步骤(6)中查询服务器(QS1)查到的AS号码,采用自治域AS号码到测量服务器IP地址的查找方法,向注册管理服务器(RS)逐个地发出由所得到的AS号码和注册管理服务器(RS)域名共同构造的新域名as***.testtool.foo.bar,同时发出域名解析请求,获得具有该IP地址的测量服务器的域名;
步骤(9):数据库服务器DB将以(测量服务器IP地址,AS号码,域名,可提供的测量功能,性能指标,注册时间)记录格式保存已注册测量服务器的有关参数,正式写入注册数据库列表,由注册管理数据库为用户提供域名服务;
步骤(10):数据库服务器DB定期对在册的测量服务器进行轮询,完成测量功能认证和性能测试,通过测试的,保持原来记录;不能通过功能测试的,删除原来记录,更新注册数据库列表;
步骤(11):重复步骤1-9,将多个新增服务器的有关信息存入数据库服务器的注册数据库中。

附图说明

图1互联网测量服务器部署及自动注册与管理服务器连接及网络连接拓扑图;
图2本发明方法程序总体流程框图;
图3域名系统标识方法和分布式查询方法流程框图;
图4实验测试服务器部署及网络连接拓扑图。
图1中用到的部分名词解释如下:。
●RS:注册服务器(registration server)
●QS:查询服务器(query server)
●MS:测量服务器(measurement server)
●DB:数据库服务器(general management server)
●IP:互联网网络地址(Internet Protocol)
●AS:自治域号码(Autonomouse System Number)
●DNS:域名服务器(Domain Name System)
●BGP路由表:外部路由协议路由表(Border gateway Protocol Table)

具体实施方式

本发明总体方法包括:互联网测量服务器自动注册方法和测量服务器列表动态管理方法。涉及的关键技术包括:
1.新增测量服务器向注册管理服务器自动报告技术;
2.新增测量服务器测量功能和性能自动测试技术;
3.新增测量服务器IP地址到聚类组(AS号码)的查找技术;
4.聚类组自治域AS号码到测量服务器IP地址的查找方法;
5.数据库自动更新和维护技术。
互联网测量服务器自动注册方法包括第1,2,3项关键技术;测量服务器列表动态管理方法包括第2,3,4,5项关键技术。
图1所示互联网上跨多个自治域的用户A与用户B之间沿从A到B的传输路径上传输数据(穿越自治域X、Y、Z),在这些自治域中分别部署了若干测量服务器MSx1、MSx2、MSx3、MSy1、MSy2、MSz1、MSz2。其中,MSx1是新增服务器,MSx2、MSx3、MSy1、MSy2、MSz1、MSz2是已注册的测量服务器。注册管理服务器RS,查询服务器QS1,数据库服务器DB等均连接到互联网上。
互联网上任一台新增服务器的注册及所有已注册服务器的管理过程需依次完成以下步骤:
步骤1:初始化:
1)测量服务器连入互联网后,可静态配置或动态获得IP地址,新增测量服务器MSx1的IP地址为x.y.z.w;
2)在测量服务器上安装多种网络测量工具的服务器模块功能,如:iperf,ssmpd,Dvmcast等及对应的自动注册功能模块;
3)在注册管理服务器(RS)上安装域名(DNS)服务模块及多种网络测量工具对应的客户端模块;
4)在查询服务器QS1上安装域名(DNS)服务模块及可由其路由器导入的BGP路由表;
5)数据库服务器DB上安装SQL数据库系统。
步骤2:新增测量服务器开机运行(能提供Iperf测量服务),以特定格式向注册管理服务器发送特定的信息,构成为:注册特定字符.可提供的测量功能.次高级域名.最高级域名,格式为:reg.iperf.foo.bar;
步骤(3):注册管理服务器分析查询日志,对符合上述域名格式的请求,可初步确定其可能是能提供iperf功能的新增测量服务器,且其IP地址为x.y.z.w,将其IP地址通知数据库服务器DB暂存并纪录该服务器可能提供的测量功能;不符合条件的,将其忽略;
步骤(4):数据库服务器DB查询在册的注册数据库列表,如果该地址不在列表中,或离上次注册时间24小时以上,执行步骤5;如果该地址已在列表中,且离上次注册时间24小时以内,认为其已经完成注册,执行步骤11;
步骤(5):注册管理服务器根据其可能提供的测量功能,调用自己相应的测量功能客户端模块,对具有以上IP地址的测量服务器进行所设定的测量功能认证及性能测试;若同一自治域内有多台测量服器,注册管理服务器将对多台测量服务器分别进行测量功能认证及性能测试;
步骤(6):如果通过了功能测试,注册服务器向查询服务器QS1查询该IP地址对应的自治域号码AS=X;如果没有通过测试,注册服务器通知数据库服务器将该IP地址删除;
步骤(7):将查到的以IP地址、AS自治域号码数据项组成的记录存入数据库服务器注册数据库中。并根据同一自治域内多台测量服务器的所设定的同一测量功能的测试性能进行排序,将最优性能者作为该自治域首选测量服务器提供服务;
步骤(8):将步骤(6)中查询服务器(QS1)查到的AS号码,采用自治域AS号码到测量服务器IP地址的查找方法,向注册管理服务器(RS)逐个地发出由所得到的AS号码和注册管理服务器(RS)域名共同构造的新域名x.iperf.foo.bar,同时发出域名解析请求,获得具有该IP地址的测量服务器的域名;
步骤(9):数据库服务器DB将以(测量服务器IP地址,AS号码,域名,可提供的测量功能,性能指标,注册时间)记录格式保存已注册测量服务器的有关参数,正式写入注册数据库列表,由注册管理数据库为用户提供域名服务;
步骤(10):数据库服务器DB定期对在册的测量服务器进行轮询,完成功能和性能测试,通过功能测试的,保持原来记录;不能通过功能测试的,删除原来记录,更新注册数据库列表;
步骤(11):重复步骤1-9,将多个新增服务器的有关信息存入数据库服务器的注册数据库中。
本发明所用方法的程序流程框图见图2。
新增测量服务器在开机运行时,以特定格式向注册管理服务器发送特定的信息,构成为:注册特定字符.可提供的测量功能.次高级域名.最高级域名,格式为:reg.testtool.foo.bar。注册管理服务器分析查询日志,对符合上述域名格式的请求,可初步确定其可能是能提供testtool功能的新增测量服务器,且其IP地址为x.y.z.w,将其IP地址通知数据库服务器DB暂存并纪录该服务器可能提供的测量功能;
为了进一步确认该新增服务器是否就是测量服务器,注册服务器使用该测量服务器所声称能够提供的服务所对应的测量功能客户端模块与潜在的测量服务器上的测量功能服务器模块进行功能和性能测试。通过功能测试和性能测试的测量服务器将被确认,获得的测量性能数据将作为数据库自动更新某个自治域内首选测量服务器的选择依据。
网络IP地址到聚类组(AS号码)的查找方法,其核心是基于自治域号码(AS号码)的聚类方案。根据初步得到的测量服务器IP地址及从任何具有全球路由表的运行外部路由协议(BGP协议)的路由器中得到的由网络地址(IP地址)到自治域号码(AS号码)的映射,可以找到该测量服务器所在的自治域号码。为了保证分布式实现的可扩展性及可管理性,采用域名系统(DNS)统一标识和分布式查询技术来实现,如图3所示。假设查询服务QS1的域名为asn.routeview.org,在该服务器上运行DNS服务,并注册到上一级的DNS服务器,使得由*.asn.routeview.org构成的域名的解析服务由服务器QS1完成。这样,客户端如果要进行某IP地址(如a.b.c.d)的AS号码的查询,可以根据IP地址构成域名d.c.b.a.ans.routeview.org进行域名解析。QS1根据BGP路由表把查询结果作为DNS的TXT域的数据(text field),用DNS的回答包的格式返回相应的网络地址块和自治域号码(AS号码),例如as100给用户。
将已通过测量功能一致性测试的测量服务器的记录对(AS号码,测量服务器IP地址)写入数据库服务器的注册数据库中。如果同一自治域内有多台测量服务器时,对多台测量服务器的测量功能的性能数据进行比较,按照性能的好坏依次排序。
利用注册管理服务器(RS)本身具有的域名服务功能,根据获得的AS号码(as100),构成新的域名as100.testtool.foo.bar,RS根据测量服务器注册的域名数据库将查询结果用DNS的回答包的格式返回as100的测量服务器的网络IP地址w.x.y.z给用户,同时获得其域名为as100.testtool.foo.bar,由注册管理数据库为用户提供域名服务。(如图3所示)
为了保证测量服务器列表的有效性,注册服务器定期对于已注册的测量服务器进行功能和性能测试,并向数据库服务器报告。数据库服务器动态更新测量服务器列表排序,并对于不能提供服务的测试服务器,删除其记录。
该实验测试的各种服务器部署及网络连接情况如图4所示。测试环境搭建在真实的互联网主干网上,含欧亚网和教育网,分别是自治域系统AS24489和AS4538。欧亚网香港节点前后安装两台测量服务器,原有测试服务器的地址为202.179.243.3,新增测量服务器的地址为202.179.244.105,均位于自治域24489。注册服务器、查询服务器位于教育网内,注册服务器的IP地址是:202.112.35.31。
此例中,假设新增测量服务器上(202.179.244.105)安装了互联网上常用的网络测量工具Iperf服务器端软件后,该服务器内安装的由本专利描述的注册模块连续向注册服务器202.112.35.31连续发送6次域名查询请求。表1显示202.112.35.31上相应的DNS查询日志,通过分析查询日志,可初步确定具有IP地址202.179.244.105的服务器可能是新增测量服务器。
31-Mar-2007 20:56:09.188queries:info:XX+/202.179.244.105/reg1.iperf.foo.bar/A/IN
31-Mar-2007 20:56:10.155queries:info:XX+/202.179.244.105/reg2.iperf.foo.bar/A/IN
31-Mar-2007 20:56:10.509queries:info:XX+/202.179.244.105/reg3.iperf.foo.bar/A/IN
31-Mar-2007 20:56:10.873queries:info:XX+/202.179.244.105/reg4.iperf.foo.bar/A/IN
31-Mar-2007 20:56:11.380queries:info:XX+/202.179.244.105/reg5.iperf.foo.bar/A/IN
31-Mar-2007 20:56:11.925queries:info:XX+/202.179.244.105/reg6.iperf.foo.bar/A/IN
                 表1注册服务器域名查询日志
注册服务器,启动其上安装的Iperf工具客户端软件对具有202.179.244.105地址的服务器进行的功能和性能测试(在此例中为iperfTCP测试)结果如表2所示。
imini2-nms%iperf-c 202+179+244+105
--------------------------------------------------------
Client connecting to 202+179+244+105,TCP port 5001
TCP window size++64+0KBute(default)
--------------------------------------------------------
[3]local 202+112+35+32port 42578 connected with 202+179+244+105 port 5001
[3]0+0-10+1sec  93+1 MBytes  77+1 Mbits/sec
imini2-nms %■
            表2新增测试服务器功能和性能测试
测试结果表明202.179.244.105通过测试,注册管理服务器接着利用域名服务(DNS),得到202.179.244.105所对应的自治域号码为24489。然后对数据库服务器提交新增条目
AS=24489,IP=202.179.244.105,PERFORMANCE=77.1Mbps
数据库服务器比较已有记录(同一自治域内,其他已注册服务器,此例中,是具有IP地址为202.170.243.3的服务器),
AS=24489,IP=202.179.243.3,PERFORMANCE=12.3Mbps
根据性能数据比较结果,动态更新数据库内容,对于自治域AS24489,iperf测试的首选测试服务器为具有IP地址为202.179.244.105的服务器。
最后,将(202.179.244.105,as24489.iperf.test.foo.bar,24489,iperf,070331)记录格式正式存入数据库服务器注册数据库。
实验测试结果达到了预期的要求。新增测试服务器利用特定格式的查询方法自动对注册管理服务器进行注册,注册管理服务器初步确认后,对该测量服务器进行功能和性能测试,通过测试后,利用该服务器的IP地址查询其相应的自治域号码。根据测试性能优劣,对同一个自治域内的多台测量服务器进行排序,将具有最优测试性能的服务器作为沿传输路径上各自治域提供自动测量的首选服务器,提供服务。并通过域名DNS服务器获得测量服务器域名。数据库服务器定期轮询注册数据库中的服务器检查其“存活”状态,自动更新和维护数据库服务器的注册数据库服务器列表。利用DNS查询技术及数据库技术有效地就解决了大规模分布式自动注册与管理问题,可扩展性和稳定性很好。