专利名称:用于实现服务请求的方法和装置的制作方法
技术领域:
本发明通常涉及数据处理领域,尤其涉及用于在多动态主机配置协议(DHCP)服务器环境中实现对公共数据库的服务请求的方法和装置。
背景技术:
请求注解(RFC)2131描述了动态主机配置协议(DHCP)。DHCP提供一种框架,用于在传输控制协议/因特网协议(TCP/IP)网络上将配置信息传递到主机。DHCP基于自举(Bootsrap)协议(BOOTP),其添加了自动分配可再使用的网络地址的能力和额外的配置选项。DHCP自动将IP地址分配到在TCP/IP网络上登录的目标设备,从而消除了手动分配永久IP地址的需要。
当多因特网小型计算机系统接口(ISCSI)主机总线适配器(HBA)安装在系统中时,可能由于微型DHCP服务器对启动器(initiator)的DHCP分组的应答而引起广播风暴。由于每个ISCSI适配器端口具有其自身的IP堆栈并可视为独立的DHCP服务器,因此可能发生广播风暴。
需要一种在多动态主机配置协议(DHCP)服务器环境中实现对公共数据库的服务请求的有效机制。
发明内容
本发明的原理性方面提供一种用于在多动态主机配置协议(DHCP)服务器环境中实现对公共数据库的服务请求的方法和装置。本发明的其它重要方面提供一种实际上不具有负面效果、并克服了现有技术设备的许多缺点的、用于在多动态主机配置协议(DHCP)服务器环境中实现对公共数据库的服务请求的方法和装置。
简而言之,提供一种用于在多动态主机配置协议(DHCP)服务器环境中实现对公共数据库的服务请求的方法和装置。提供DHCP授权高速缓存来实现多个DHCP服务器到公共数据库的同步访问。DHCP授权高速缓存包括多个元素,每个元素用于存储多个项,这些项包括客户标识符、ISCSI DHCP路由器指针、ISCSI DHCP路由器指针候选(alternate)和时间戳。DHCP授权高速缓存包括初始设置为0的项指针。在第一时间周期(诸如两秒),向DHCP授权高速缓存查询特定客户标识符的第一DHCP服务器被返回授权成功来提供特定的客户标识符。在第一时间周期后,诸如在两秒后,如果其它DHCP服务器使用该特定客户标识符查询DHCP授权高速缓存,则要求使用特定客户标识符查询DHCP授权高速缓存的第一DHCP服务器在第一时间周期返回授权成功来服务特定客户标识符之前等待第二时间周期(诸如一秒)。
通过下列附图所示的本发明优选实施例的详细描述可以更好地理解本发明的上述和其它目标。
图1是图解根据优选实施例的多动态主机配置协议(DHCP)服务器网络系统的方框图,该系统包括用于实现对公共数据库的服务请求的方法的装置;图2是图解根据优选实施例的用于实现对公共数据库的服务请求的方法的、图1的多DHCP服务器网络系统装置的DHCP授权高速缓存的方框图;图3是图解根据优选实施例的图2的DHCP授权高速缓存的初始程序加载(IPL)初始化的流程图;和图4、5、6和7是图解根据优选实施例的图2的DHCP授权高速缓存的功能流程图。
具体实施例方式
现在参照附图1,显示了根据优选实施例的用于实现对公共数据库的服务请求的多动态主机配置协议(DHCP)服务器网络系统(由附图标记100表示)。多DHCP服务器网络系统100图解根据优选实施例的用于实现对公共数据库的服务请求的方法的示例性环境。
多DHCP服务器网络系统100包括多个DHCP服务器102,它们中的每一个连接到虚拟DHCP服务器104。多DHCP服务器系统100包括连接到虚拟DHCP服务器104的根据优选实施例的DHCP授权高速缓存106,用于通过多DHCP服务器102来实现到因特网存储名服务器(iSNS)DHCP数据库108的同步访问,以便为相应ISCSI网络接口卡(NIC)目标主机总线适配器(HBA)110提供启动参数。每个ISCSI NIC目标HBA 110连接到服务器系统112(诸如,由New York,Armonk的美国国际商用机器公司制造并销售的iSeries服务器系统)中包含的相应一个DHCP服务器。
多个DHCP服务器102中的每一个用作到虚拟DHCP服务器104的路由器。如参照图2-7说明并描述的那样,在根据优选实施例的高速缓存算法中,DHCP服务器称为DHCP路由器。每个ISCSI NIC目标HBA 110是具有NIC功能的对DHCP 102发送Tx和接收Rx的多功能适配器。DHCP授权高速缓存106实现用于控制对iSNS DHCP数据库108的访问的算法。
虚拟DHCP服务器104是访问由iSNS DHCP数据库108定义的分区范围(wide)数据库的DHCP服务器。iSNS DHCP数据库108包含具有对于iSNS(ISCSI名服务器)和多个DHCP服务器102来说是公共的数据的数据对象。
在启动器(initiator)(诸如New York,Armonk的美国国际商用机器公司制造并销售的iSeries服务器)116中的ISCSI NIC HBA 114是启动设备。ISCSI NIC HBA 114包括请求启动参数的DHCP客户码的固件。
现在参照图2,显示了根据优选实施例的用于实现对公共数据库的服务请求的多DHCP服务器网络系统100的装置的示例性DHCP授权高速缓存106。根据优选实施例的DHCP授权高速缓存106包括多个元素200,例如元素200,0-31。DHCP授权高速缓存106的每个元素200具有多个项,包括客户标识符202、ISCSI DHCP路由器指针204、ISCSI DHCP路由器指针候选206、时间戳208。根据优选实施例的DHCP授权高速缓存106包括初始设置为0的项指针210。
参照图3,显示了根据优选实施例的DHCP授权高速缓存106的示例性初始程序加载(IPL)初始化。如方框300所示,首先包括客户标识符202、ISCSI DHCP路由器指针204、ISCSI DHCP路由器指针候选206和时间戳208的元素200的所有高速缓存项设置为0或空。其次项指针210或项计数器在元素200,0-31达到31后被初始化为0。
根据优选实施例的特征,通过仅等待设定的时间周期(例如2秒),使用绝对时间差来允许从时间戳损坏中自动恢复。如果DHCP服务器在给予授权的同时发生故障,则通过仅仅等待诸如两秒的时间周期来启用到备用(alternate)服务器的自动恢复。
图4、5、6和7是图解根据优选实施例的DHCP授权高速缓存106的功能的流程图。
现在参照图4,显示了根据优选实施例的DHCP授权高速缓存106的功能的示例性步骤。如方框402所示,DHCP服务器102使用客户标识符作为密钥并在指针中传送到ISCSI DHCP路由器对象来查询DHCP授权高速缓存106。如方框404所示,DHCP授权高速缓存106使用客户标识符作为密钥搜索与密钥客户标识符匹配的项客户标识符106。
如判决方框406所示,执行匹配的检查。如果没有发现匹配,则示例性步骤前进到图5。如果发现与密钥客户标识符匹配的项客户标识符202,则如方框408所示,项指针210设置为紧随所发现的项202的元素200。如果项号码为32(使用示例元素200,0-31),则项指针210设置为0。
接下来如判决方框410所示,执行对应的ISCSI DHCP路由器指针204的匹配的检查。如果没有发现对应的ISCSI DHCP路由器指针204的匹配,则示例性步骤前进到图6。
当发现对应的ISCSI DHCP路由器指针204的匹配时,则如方框412所示,识别当前时间戳和高速缓存200中的时间戳208之间的绝对差。
如判决方框414所示,执行时间差是否小于2秒的检查。如果时间差不小于2秒,则示例性步骤前进到图7。当时间差小于2秒时,则如方框416所示,返回授权成功。
现在参照图5,当在图4的判决方框406中没有发现与密钥客户标识符匹配的项客户标识符202时,则如方框500所示,将一项添加到DHCP授权高速缓存106中的、由计数器或项指针210所指的间隙中。如方框500所示,首先客户标识符插入到DHCP授权高速缓存106中的、由计数器或项指针210所指的间隙中。其次,高速缓存项200中的ISCSI DHCP路由器指针204设置为搜索值。第三,高速缓存项中的时间戳208设置为当前时间。第四,ISCSIDHCP路由器指针候选206设置为0。第五,项指针加1,并且如果项号码为32(使用示例元素200,0-31),则项指针设置为0。然后,如方框502所示,返回授权成功。
现在参照图6,当发现客户标识符的匹配,但是在图4的判决方框410没有发现对应的ISCSI DHCP路由器指针时,则如方框600所示识别当前时间戳和高速缓存200中的时间戳208之间的绝对差。如判决方框602所示,执行时间差是否小于2秒的检查。如果时间差小于2秒,则如方框604所示,ISCSI DHCP路由器指针候选206设置为在搜索中使用的ISCSI DHCP路由器指针。然后,如方框606所示,返回授权失败。
如果时间差不小于2秒,则如方框608所示,高速缓存项中的ISCSI DHCP路由器指针204设置为搜索中使用的ISCSI DHCP路由器指针,高速缓存项中的ISCSI DHCP路由器指针候选206设置为0,并且高速缓存项中的时间戳设置为当前时间。然后,如方框610所示,返回授权成功。
参照图7,当在图4中的判决方框414发现的时间差不小于2秒时,则如方框700所示,识别当前时间戳和高速缓存元素200中的时间戳208之间的绝对差。如判决方框702所示,执行时间差是否大于3秒的检查。如果时间差大于3秒,则如方框704所示,高速缓存项中的ISCSI DHCP路由器指针204设置为在搜索中使用的ISCSI DHCP路由器指针,高速缓存项中的ISCSI DHCP路由器指针候选206设置为0,并且高速缓存项中的时间戳设置为当前时间。然后,如方框706所示,返回授权成功。
否则,当时间差不大于3秒时,则如判决方框708所示,执行检查来确定高速缓存项中的ISCSI DHCP路由器指针候选206是否为0。如果高速缓存项中的ISCSI DHCP路由器指针候选206不为0,则如方框710所示,返回授权失败。否则,当缓存项中的高速缓存项中的ISCSI DHCP路由器指针候选206为0时,则如方框712所示返回授权成功。
虽然参照附图中所示的本发明实施例的详细内容描述了本发明,但是这些详细内容不意欲涵盖所附权利要求中声明的本发明的范围。
权利要求
1.一种用于在多动态主机配置协议(DHCP)服务器环境中实现对公共数据库的服务请求的装置,其中该服务器环境包括多个DHCP服务器和多个因特网小型计算机系统接口(ISCSI)适配器,所述装置包括DHCP授权高速缓存,用于实现多个DHCP服务器到公共数据库的同步访问,所述DHCP授权高速缓存包括多个元素,每个元素用于存储多个项,这些项包括客户标识符、ISCSI DHCP路由器指针、ISCSI DHCP路由器指针候选和时间戳,并且所述DHCP授权高速缓存包括项指针;连接到所述DHCP授权高速缓存的虚拟DHCP服务器,所述虚拟DHCP服务器用于在第一时间周期向所述DHCP授权高速缓存查询特定客户标识符并且向第一DHCP服务器返回授权成功来为特定的客户标识符服务,并且在第一时间周期后响应于其它DHCP服务器使用该特定客户标识符查询所述DHCP授权高速缓存,要求第一DHCP服务器在返回所述授权成功来为特定客户标识符服务之前等待第二时间周期。
2.如权利要求1所述的用于在多DHCP环境中实现对公共数据库的服务请求的装置,其中所述DHCP授权高速缓存包括32个元素0-31,并且其中所述项指针是在到达项31之后循环到项0的计数器。
3.如权利要求1所述的用于在多DHCP环境中实现对公共数据库的服务请求的装置,其中包括所述客户标识符、所述ISCSI DHCP路由器指针、所述ISCSI DHCP路由器指针候选和所述时间戳的所述多个项中的每一个以及所述DHCP授权高速缓存的所述项指针都在初始程序加载(IPL)时初始化为0。
4.如权利要求1所述的用于在多DHCP环境中实现对公共数据库的服务请求的装置,其中所述虚拟DHCP服务器使用特定客户标识符作为密钥来查询所述DHCP授权高速缓存,并且以DHCP服务器的ISCSI DHCP路由器指针传递来进行查询。
5.如权利要求4所述的用于在多DHCP环境中实现对公共数据库的服务请求的装置,其中所述虚拟DHCP服务器响应于识别客户标识符项与用作密钥的特定客户标识符的匹配,检查所述DHCP服务器的ISCSI DHCP路由器指针与所述ISCSI DHCP路由器指针的对应匹配项来进行查询。
6.如权利要求5所述的用于在多DHCP环境中实现对公共数据库的服务请求的装置,其中所述虚拟DHCP服务器响应于识别与用于进行查询的DHCP服务器的ISCSI DHCP路由器指针匹配的所述ISCSI DHCP路由器指针的对应项,识别当前时间和所述时间戳之间的绝对差。
7.如权利要求6所述的用于在多DHCP环境中实现对公共数据库的服务请求的装置,其中所述虚拟DHCP服务器响应于识别所述绝对差大于所述第一时间周期并小于所述第二时间周期,向第一DHCP服务器返回授权失败。
8.如权利要求1所述的用于在多DHCP环境中实现对公共数据库的服务请求的装置,其中所述第一时间周期大约为2秒。
9.如权利要求1所述的用于在多DHCP环境中实现对公共数据库的服务请求的装置,其中所述第二时间周期大约为1秒。
10.如权利要求4所述的用于在多DHCP环境中实现对公共数据库的服务请求的装置,其中特定客户标识符包含在启动器DHCP请求中。
11.如权利要求1所述的用于在多DHCP环境中实现对公共数据库的服务请求的装置,其中多个ISCSI适配器中的每一个连接到多个DHCP服务器中的相应一个服务器上。
12.如权利要求11所述的用于在多DHCP环境中实现对公共数据库的服务请求的装置,其中多个ISCSI适配器中的每一个是目标主机总线适配器(HBA)。
13.如权利要求12所述的用于在多DHCP环境中实现对公共数据库的服务请求的装置,包括连接到多个ISCSI目标主机总线适配器的多个启动器ISCSI主机总线适配器(HBA)。
14.一种用于在多动态主机配置协议(DHCP)服务器环境中实现对公共数据库的服务请求的方法,其中该服务器环境包括多个DHCP服务器和多个因特网小型计算机系统接口(ISCSI)适配器,所述方法包括步骤提供DHCP授权高速缓存,用于实现多个DHCP服务器到公共数据库的同步访问;在所述DHCP授权高速缓存中保持多个元素和项指针,每个元素用于存储多个项,每个项包括客户标识符、ISCSI DHCP路由器指针、ISCSI DHCP路由器指针候选和时间戳;提供连接到所述DHCP授权高速缓的虚拟DHCP服务器,所述虚拟服务器用于在第一时间周期向所述DHCP授权高速缓存查询特定客户标识符并且向第一DHCP服务器返回授权成功来为特定的客户标识符服务,并且响应于其它DHCP服务器在第一时间周期后使用特定客户标识符查询所述DHCP授权高速缓存,要求第一DHCP服务器在返回所述授权成功来为特定客户标识符服务之前等待第二时间周期。
15.如权利要求14所述的用于在多DHCP环境中实现对公共数据库的服务请求的方法,其中,包括所述客户标识符、所述ISCSI DHCP路由器指针、所述ISCSI DHCP路由器指针候选和所述时间戳的所述多个项中的每一个以及所述DHCP授权高速缓存的所述项指针都在初始程序加载(IPL)期间初始化为0。
16.如权利要求14所述的用于在多DHCP环境中实现对公共数据库的服务请求的方法,其中所述虚拟DHCP服务器使用特定客户标识符作为密钥来查询所述DHCP授权高速缓存,并且以DHCP服务器的ISCSI DHCP路由器指针传送来进行查询。
17.如权利要求16所述的用于在多DHCP环境中实现对公共数据库的服务请求的方法,其中所述虚拟DHCP服务器响应于识别客户标识符项与用作密钥的特定客户标识符的匹配,检查所述DHCP服务器的所述ISCSI DHCP路由器指针与所述ISCSI DHCP路由器指针的对应匹配项来进行查询。
18.如权利要求17所述的用于在多DHCP环境中实现对公共数据库的服务请求的方法,其中所述虚拟DHCP服务器响应于识别与用于进行查询的DHCP服务器的所述ISCSI DHCP路由器指针匹配的所述ISCSI DHCP路由器指针的对应项,识别当前时间和所述时间戳之间的绝对差。
19.如权利要求18所述的用于在多DHCP环境中实现对公共数据库的服务请求的方法,其中所述虚拟DHCP服务器响应于识别所述绝对差大于所述第一时间周期并小于所述第二时间周期,向第一DHCP服务器返回授权失败。
20.如权利要求18所述的用于在多DHCP环境中实现对公共数据库的服务请求的方法,其中所述虚拟DHCP服务器响应于识别所述绝对时间差大于所述第一时间周期和所述第二时间周期,向第一DHCP服务器返回授权成功。
全文摘要
提供用于在多动态主机配置协议(DHCP)服务器环境中实现对公共数据库的服务请求的方法和装置。提供DHCP授权高速缓存来实现多个DHCP服务器到公共数据库的同步访问。DHCP授权高速缓存包括多个元素,每个元素用于存储多个项,这些项包括客户标识符、ISCSI DHCP路由器指针、ISCSI DHCP路由器指针候选和时间戳,并且DHCP授权高速缓存包括初始设置为0的项指针。
文档编号H04L29/12GK1905557SQ20061007533
公开日2007年1月31日 申请日期2006年4月10日 优先权日2005年7月28日
发明者约瑟普·科斯, 孟骏 申请人:国际商业机器公司