CN103002067B - 虚拟机的ip地址的获取方法 - Google Patents

虚拟机的ip地址的获取方法 Download PDF

Info

Publication number
CN103002067B
CN103002067B CN201210568414.5A CN201210568414A CN103002067B CN 103002067 B CN103002067 B CN 103002067B CN 201210568414 A CN201210568414 A CN 201210568414A CN 103002067 B CN103002067 B CN 103002067B
Authority
CN
China
Prior art keywords
address
virtual machine
available
pool
tail
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210568414.5A
Other languages
English (en)
Other versions
CN103002067A (zh
Inventor
王慧谦
王玉洁
樊兴军
李绍辉
王学强
陈志荣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xinjiang Zhongke Suguang Cloud Computing Co.,Ltd.
Original Assignee
SHUGUANG CLOUD COMPUTING TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHUGUANG CLOUD COMPUTING TECHNOLOGY Co Ltd filed Critical SHUGUANG CLOUD COMPUTING TECHNOLOGY Co Ltd
Priority to CN201210568414.5A priority Critical patent/CN103002067B/zh
Publication of CN103002067A publication Critical patent/CN103002067A/zh
Application granted granted Critical
Publication of CN103002067B publication Critical patent/CN103002067B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明一种虚拟机的IP地址的获取方法,其特征在于,包括:IP管理系统获取一组IP地址中所有具有不可用IP地址的第一IP地址池,并且确定最后一个第一IP地址池的不可用尾地址;IP管理系统确定一组IP地址中的可用尾地址;以及IP管理系统确定不可用尾地址和可用尾地址之间的IP地址的数量大于或等于虚拟机所需要的IP地址的数量,并且紧邻最后一个不可用IP地址连续地获取可用IP地址作为连续可用IP地址。可以快速获取虚拟机的IP地址,并且获取的IP地址为连续IP地址,从而可以将同一工作组中的虚拟机的IP地址限定在同一IP地址池中,便于通过IP地址对虚拟机进行管理。

Description

虚拟机的IP地址的获取方法
技术领域
本发明一般地涉及计算机技术领域,更具体地来说,涉及用于虚拟机的IP地址的获取和划分方法。
背景技术
随着计算机硬件处理能力的提高和虚拟化技术的发展,构建以虚拟化技术为基础的服务平台,特别是融合了虚拟化技术的云计算平台,可以有效地扩大硬件的容量,提高资源利用率,简化软件配置过程,进而降低企业运行和维护计算机软硬件的成本。
在以虚拟化技术为基础的云计算平台中,为不同系统需求的应用提供服务的单元通常是虚拟机。虚拟机是在云计算平台上,利用逻辑资源模拟出的、具有完整硬件功能和系统功能的、独立运行的计算机系统。这些虚拟机系统完全就像真正的计算机那样进行工作,例如可以安装操作系统、安装应用程序、访问网络资源等等。用户创建虚拟机后为使其能够如物理机一样收发数据,需建立虚拟网络并为其分配IP地址。在当前业界主流云计算操作系统中,大多均使用DHCP(动态主机设置协议)的方式自动为虚拟机分配动态IP地址。
现有技术中提供了一种IP地址段的管理方法,对于任意一个包含未划分地址段的IP地址段,将其作为父地址段,其中,所述方法包括步骤:获得所述父地址段上包含的未划分地址段;计算每个未划分地址段中包含的地址个数;根据所述每个未划分地址段中包含的地址个数遍历掩码,找到与所述每个未划分地址段的掩码;根据所述掩码确定本次匹配划分出的完整地址段。该IP地址段的管理方法能够在一定程度上满足用户的需求。
然而,当利用该IP地址段的管理方法为工作组中的多个虚拟机分配IP地址时,不仅分配速度慢,而且不能将一个工作组中的虚拟机的IP地址限定在具有连续IP地址的IP地址池中,即,一个工作组中的虚拟机的IP地址可能处于不同IP地址池中,所以不便于对工作组中的虚拟机的IP地址进行管理。尤其是为多个工作组中的虚拟机分配IP地址时,虽然分配完以后的所有IP地址都是已知的,但由于分配的IP地址是随机的,虚拟机的IP地址无规律可循且不能保持同一工作组的IP地址是连续的,所以不便于通过IP地址对多个工作组进行管理。
发明内容
针对现有技术中当为工作组中的多个虚拟机分配IP地址时,不仅分配速度慢,而且不能将一个工作组中的虚拟机的IP地址限定在具有连续IP地址的IP地址池中的缺陷,本发明提出了能够解决上述缺陷的虚拟机的IP地址的划分方法。
根据本发明的一方面,提供了一种虚拟机的IP地址的获取方法,其特征在于,包括:IP管理系统获取一组IP地址中所有具有不可用IP地址的第一IP地址池,并且确定最后一个第一IP地址池的不可用尾地址;IP管理系统确定一组IP地址中的可用尾地址;以及IP管理系统确定不可用尾地址和可用尾地址之间的IP地址的数量大于或等于虚拟机所需要的IP地址的数量,并且在最后一个不可用IP地址之后连续地获取可用IP地址作为连续可用IP地址。
优选地,分别通过以下公式获取不可用尾地址的第一值和可用尾地址的第二值:第一值为:PoolValue1=a×224+b×216+c×28+d,其中,a.b.c.d为最后一个第一IP地址池的尾地址;以及第二值为:PoolValue2=e×224+f×216+g×28+h,其中,e.f.g.h为一组IP地址池的尾地址。
优选地,IP地址的获取方法还包括:IP管理系统将第二值和第一值之间的差值与虚拟机所需要的IP地址的数量进行比较;以及如果差值大于或等于虚拟机所需要的IP地址的数量,则IP管理系统在最后一个不可用IP地址之后连续地获取可用IP地址作为连续可用IP地址。
优选地,IP管理系统将连续可用IP地址作为可用IP地址池。
优选地,IP地址的获取方法还包括:IP管理系统将可用IP地址池中的多个连续可用IP地址分配给虚拟机。
优选地,IP地址的获取方法还包括:当虚拟机的数量增加并且第一值和第二值之间的IP地址的数量大于虚拟机所需要的IP地址的数量时,IP管理系统将紧邻可用IP地址池的尾地址的增加的虚拟机的数量的连续IP地址分配给增加的虚拟机。
优选地,IP地址的获取方法还包括:当虚拟机的数量减少时,IP管理系统将可用IP地址池中分配给虚拟机的第一个连续可用IP地址之前或分配给虚拟机的最后一个连续可用IP地址之后的IP地址删除。
根据本发明的另一方面,提供了本发明提供了一种虚拟机的IP地址的划分方法,其特征在于,包括:IP管理系统获取一组IP地址中所有具有不可用IP地址的第一IP地址池,并且确定每个第一IP地址池中第一不可用IP地址的第一值和第二不可用IP地址的第二值;IP管理系统根据虚拟机的所需IP地址的数量确定IP地址池的类型,并根据IP地址池的类型将一组IP地址连续地划分成多个第二IP地址池,并确定每个第二IP地址池中第一IP地址的第三值和第二IP地址的第四值;以及IP管理系统确定具有均不介于第一值和第二值之间的第三值和第四值的第二IP地址池,并将其中IP地址作为连续可用IP地址。
优选地,不同类型的IP地址池具有不同数量的IP地址。
优选地,不同类型的IP地址具有2n个IP地址,其中,2n-1<所需IP地址的数量≤2n,n>5或者0<所需IP地址的数量≤2n,n=5。
优选地,每个第一IP地址池中第一不可用IP地址是每个第一IP地址池的首地址并且每个第一IP地址池中第二不可用IP地址是每个第一IP地址池的尾地址;以及每个第二IP地址池中第一IP地址是每个第二IP地址池中的首地址并且每个第二IP地址是每个第二IP地址池中的尾地址。
优选地,第一值、第二值、第三值以及第四值分别通过以下公式而获得:第一值为:PoolValue1=a×224+b×216+c×28+d,第二值为:PoolValue2=a×224+b×216+c×28+d+s,其中,a.b.c.d为每个第一IP地址池的首地址并且s为每个第一IP地址池中的IP地址的数量;第三值为:PoolValue3=e×224+f×216+g×28+h,第四值为:PoolValue4=e×224+f×216+g×28+h+t,其中,e.f.g.h为每个第二IP地址池中的首地址并且t为每个第二IP地址池中的IP地址的数量;以及每个第一IP地址池的第一值和第二值生成二维数组PoolValue[][2],其中,二维数组PoolValue[][2]是以第一值为第一列和第二值为第二列的i*2的二维矩阵,i为第一IP地址池的数量。
优选地,IP地址的划分方法还包括:生成二维数组PoolValue[][2]之后,根据二维矩阵的第一列PoolValue[i][0]从小到大对二维数组的行进行排序。
优选地,IP管理系统将第一个具有连续可用IP地址的第二IP地址池作为可用IP地址池,并且将其他具有连续可用IP地址的第二IP地址池作为预留IP地址池。
优选地,IP地址的划分方法还包括:IP管理系统将可用IP地址池中的多个连续可用IP地址分配给虚拟机并删除可用IP地址池中在分配给虚拟机的第一个连续可用IP地址之前以及在分配给虚拟机的最后一个连续可用IP地址之后的连续可用IP地址,其中,将第一个连续可用IP地址和最后一个连续可用IP地址之间的IP地址作为用户IP地址池。
优选地,IP地址的划分方法还包括:当虚拟机的数量增加时,如果增加后的虚拟机的总数量小于或等于用户IP地址池中IP地址的数量,则IP管理系统将用户IP地址池中未分配的IP地址分配给增加的虚拟机。
优选地,IP地址的划分方法还包括:当虚拟机的数量增加时,如果增加后的虚拟机的总数量大于用户IP地址池中IP地址的数量,则在IP管理系统将与第一个连续可用IP地址和最后一个连续可用IP地址紧邻的附加连续可用IP地址添加至用户IP地址池中,并将增加的用户IP地址池中未分配的IP地址分配给增加的虚拟机。
优选地,IP地址的划分方法还包括:当虚拟机的数量增加时,将增加的用户IP地址池中未分配的IP地址分配给增加的虚拟机之后,IP管理系统将预留IP地址池中的连续可用的IP地址分配给剩余未被分配IP地址的虚拟机。
优选地,IP地址的划分方法还包括:IP管理系统将用户IP地址池或者预留IP地址池中分配给虚拟机的第一个连续可用IP地址之前或分配给虚拟机的最后一个连续可用IP地址之后的IP地址删除。
利用本发明的虚拟机的IP地址的获取方法和划分方法,不仅可以大大提高获取IP地址的速度,而且可以将获取的一组IP地址划分为在具有连续IP地址的可用IP地址池中,从而将一个工作组中的虚拟机的IP地址限定在具有连续IP地址的可用IP地址池中。可以根据用户需要,将具有分配给虚拟机的IP地址的可用IP地址池进行减小或扩展处理,并且保证减小后的可用IP地址池或者扩展后的IP地址池仍具有连续IP地址。从而便于管理员对同一集群或者同一工作组中的的虚拟机进行管理。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。在附图中:
图1为根据本发明的第一实施例的虚拟机的IP地址的获取方法的整体流程图;
图2为根据本发明的第一实施例的虚拟机的IP地址的获取方法的具体流程图;
图3为根据本发明的第二实施例的虚拟机的IP地址的划分方法的整体流程图;以及
图4为根据本发明的第二实施例的虚拟机的IP地址的划分方法的具体流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
IP管理系统根据IP地址范围添加与其相对应的一组IP地址。IP地址范围是根据IP地址和掩码确定的多个IP地址。具体地,IP管理系统根据IP地址范围约束系统中与其相对应的一组IP地址。IP地址范围是根据IP地址子网和掩码确定的拥有多个IP地址的地址空间域。这可以通过用户输入来获取IP地址范围,即,当IP地址空间子网为a.b.c.d并且掩码值为rangemask时,则IP地址空间域中可管理的IP地址的数量为2(32-RangeMask)个。例如,当IP地址为192.168.0.0并且子网掩码值rangemask为24时,IP地址的数量为28=256个子网地址,即,IP地址为192.168.0.0至192.168.0.255。因此,使用IP地址子网和掩码规定一个IP地址范围,也就是IP管理系统根据IP地址范围管理与其相对应的一组IP地址。
IP管理系统在添加的IP范围中搜索所有已使用IP地址池,如果没有搜索到已使用IP地址池,则IP管理系统可以直接从这一组IP地址中获取连续的虚拟机所需要数量的IP地址,并且直接分配给系统所管辖的组织,例如,虚拟机。如果IP管理系统搜索到已使用IP地址池,则通过以下虚拟机的IP地址的获取方法和/或划分方法来找到可用IP地址池。
图1为根据本发明的第一实施例的虚拟机的IP地址的获取方法的整体流程图。虚拟机的IP地址的获取方法100包括:在步骤102中,IP管理系统获取一组IP地址中所有具有不可用IP地址的第一IP地址池,并且确定最后一个第一IP地址池的不可用尾地址。具体地,可以直接从一组IP地址的后部开始搜索不可用IP地址池,该不可用IP地址池就是最后一个不可用IP地址池。然后确定该不可用IP地址池的不可用尾地址,也就是从一组IP地址的后部最先找到的不可用IP地址。
在步骤104中,IP管理系统确定一组IP地址中的可用尾地址。在一个实施例中,例如,当IP地址为192.168.0.0并且子网掩码值rangemask为24时,则该组IP地址的尾地址为192.168.0.255。
在步骤106中,IP管理系统确定不可用尾地址和可用尾地址之间的IP地址的数量大于或等于虚拟机所需要的IP地址的数量,并且在最后一个不可用IP地址之后连续地获取可用IP地址作为连续可用IP地址。IP管理系统可以确定该一组IP地址池后部的可用IP地址的数量,并从这些连续可用的IP地址中连续地获取紧邻不可用尾地址的虚拟机所需要的数量的连续IP地址,即,在最后一个不可用IP地址之后的IP范围尾地址空间中获取虚拟机所需要的数量的连续IP地址。
通过该实施例的虚拟机的IP地址获取方法可以迅速找到连续可用IP地址。大幅减少了获取可用IP地址的时间,因此,当一组IP地址尾部的可用IP地址能够满足虚拟机的需求的情况下,这种获取方法是一种简单可行的方法。
图2为根据本发明的第一实施例的虚拟机的IP地址的获取方法的具体流程图。虚拟机的IP地址的获取方法200包括:在步骤202中,IP管理系统获取一组IP地址中所有具有不可用IP地址的第一IP地址池,确定最后一个第一IP地址池的不可用尾地址和一组IP地址的可用尾地址并且通过公式获取不可用尾地址的第一值和可用尾地址的第二值。具体地,IP管理系统通过以上方法获取不可用尾地址和可用尾地址。然后,分别通过以下公式获取不可用尾地址的第一值和可用尾地址的第二值:第一值为:PoolValue1=a×224+b×216+c×28+d,其中,a.b.c.d为最后一个第一IP地址池的尾地址;以及第二值为:PoolValue2=e×224+f×216+g×28+h,其中,e.f.g.h为一组IP地址池的尾地址。
IP地址的获取方法200还包括:在步骤204中,IP管理系统将第二值和第一值之间的差值与虚拟机所需要的IP地址的数量进行比较;以及如果差值大于或等于虚拟机所需要的IP地址的数量,则IP管理系统紧邻最后一个不可用IP地址连续地获取可用IP地址作为连续可用IP地址。具体地,IP管理系统通过将不可用尾地址和可用尾地址分别转换为第一值和第二值,就可以通过可用尾地址和不可用尾地址的差值来直接获取一组IP地址中尾部IP地址的数量,从而可以迅速判断出该尾部IP地址的数量是否能够满足虚拟机所需要的数量。在能够满足虚拟机的所需要的数量的情况下,IP管理系统紧邻最后一个不可用IP地址连续地获取可用IP地址作为连续可用IP地址。然后,IP管理系统将连续可用IP地址作为可用IP地址池。
IP地址的获取方法200还包括:在步骤206中,IP管理系统将可用IP地址池中的多个连续可用IP地址分配给虚拟机。从而保证分配给虚拟机的IP地址在同一可用IP地址池中,而且虚拟机的IP地址是连续的。
IP地址的获取方法还包括:在步骤208中,当虚拟机的数量增加并且第一值和第二值之间的IP地址的数量大于虚拟机所需要的IP地址的数量时,IP管理系统将紧邻可用IP地址池的尾地址的增加的虚拟机的数量的连续IP地址分配给增加的虚拟机。由于该可用IP地址池前面为不可用IP地址池,所以当虚拟机的数量增加并且第一值和第二值之间的IP地址的数量大于增加后的虚拟机所需要的IP地址的数量时,IP管理系统可以将可用IP地址池后面的虚拟机增加的数量的IP地址添加至可用IP地址池,然后将添加的这部分IP地址分配给增加的虚拟机。从而保证增加后的虚拟机的IP地址仍然处于具有连续可用IP地址的同一可用IP地址池中。
IP地址的获取方法还包括:在步骤210中,当虚拟机的数量减少时,IP管理系统将可用IP地址池中分配给虚拟机的第一个连续可用IP地址之前或分配给虚拟机的最后一个连续可用IP地址之后的IP地址删除。当虚拟机的数量减少时,如果减少的虚拟机与可用IP地址池中的前部或后部IP地址相对应,则IP管理系统可以将可用IP地址池中分配给虚拟机的第一个连续可用IP地址之前或分配给虚拟机的最后一个连续可用IP地址之后的IP地址删除。IP管理系统没有删除可用IP地址池的中间的IP地址,从而保证删除部分IP地址后,可用IP地址池中的IP地址仍然是连续的IP地址,实现将同一工作组中的虚拟机的IP地址限定在同一可用IP地址池中,从而便于通过IP地址对工作组中的虚拟机进行管理。
当IP管理系统确定不可用尾地址和可用尾地址之间的IP地址的数量小于虚拟机所需要的IP地址的数量,或者在虚拟机的数量增加情况下,不可用尾地址和可用尾地址之间的IP地址的数量小于增加的虚拟机所需要的IP地址的数量时,IP管理系统通过以下第二实施例的划分方法在一组IP地址中的查找可用IP地址池,而不是从一组IP地址的尾部查找可用IP地址池。
图3为根据本发明的第二实施例的虚拟机的IP地址的划分方法的整体流程图。虚拟机的IP地址的划分方法300包括:在步骤302中,IP管理系统获取一组IP地址中所有具有不可用IP地址的第一IP地址池,并且确定每个第一IP地址池中第一不可用IP地址的第一值和第二不可用IP地址的第二值。具体地,IP管理系统在一组IP地址中获取所有具有不可用IP地址的IP地址池,作为第一IP地址池,并且确定所有第一IP地址池中的第一不可用IP地址的第一值和第二不可用IP地址的第二值。其中,每个第一IP地址池中第一不可用IP地址是每个第一IP地址池的首地址并且每个第一IP地址池中第二不可用IP地址是每个第一IP地址池的尾地址;以及每个第二IP地址池中第一IP地址是每个第二IP地址池中的首地址并且每个第二IP地址是每个第二IP地址池中的尾地址。
在步骤304中,IP管理系统根据虚拟机的所需IP地址的数量确定IP地址池的类型,并根据IP地址池的类型将一组IP地址连续地划分成多个第二IP地址池,并确定每个第二IP地址池中第一IP地址的第三值和第二IP地址的第四值。其中,不同类型的IP地址池具有不同数量的IP地址。不同类型的IP地址(即,IP地址空间)具有2n个IP地址,其中,2n-1<所需IP地址的数量≤2n,n>5或者0<所需IP地址的数量≤2n,n=5。
例如,当用户所需的IP地址的数量m为0<m≤25时,将该用户的IP地址池确定为一类IP地址池:255.255.255.224(32个IP地址);当用户所需的IP地址的数量m为25<m≤26时,将该用户的IP地址池确定为二类IP地址池:255.255.255.192(64个IP地址);当用户所需的IP地址的数量m为26<m≤27时,将该用户的IP地址池确定为三类IP地址池:255.255.255.128(128个IP地址);当用户所需的IP地址的数量m为27<m≤28时,将该用户的IP地址池确定为四类IP地址池:255.255.255.0(256个IP地址);当用户所需的IP地址的数量m为28<m≤29时,将该用户的IP地址池确定为五类IP地址池:255.255.254.0(512个IP地址);以及当用户所需的IP地址的数量m为29<m≤210时,将该用户的IP地址池确定为六类IP地址池:255.255.252.0(1024个IP地址)等。然后,根据IP地址池的类型将一组IP地址连续地划分为多个IP地址池,其中,每一个IP地址池都具有多个连续IP地址。在一个实施例中,例如,当IP地址池的类型为一类时,将一组IP地址连续地划分为多个IP地址池,其中,每一个IP地址池都具有32个连续IP地址。从而,这种划分方法能够保证一个工作组的虚拟机的IP地址具有连续的IP地址。
在步骤306中,IP管理系统确定具有均不介于第一值和第二值之间的第三值和第四值的第二IP地址池,并将其中IP地址作为连续可用IP地址。具体地,IP管理系统确定第二IP地址池中不包括不可用IP地址,也就是说,第二IP地址池中的所有的IP地址都是可用IP地址,并且其中的可用IP地址是连续的。
通过这种划分方法可以获取的连续可用IP地址,从而将同一工作组中的虚拟机的IP地址限定为连续的IP地址,也就是限定在具有连续地址的可用IP地址池中,因此便于管理员通过IP地址对同一工作组中的虚拟机进行管理。
由于IP地址分为4段,所以比较期间分别对不同段进行比较,增加了计算量。因此,为了简化比较步骤的复杂性,第一值、第二值、第三值以及第四值可以分别通过以下公式而获得:
第一值为:PoolValue1=a×224+b×216+c×28+d,(1)
第二值为:PoolValue2=a×224+b×216+c×28+d+s,(2)
其中,a.b.c.d为每个第一IP地址池的首地址并且s为每个第一IP地址池中的IP地址的数量;
第三值为:PoolValue3=e×224+f×216+g×28+h,(3)
第四值为:PoolValue4=e×224+f×216+g×28+h+t,(4)
其中,e.f.g.h为每个第二IP地址池中的首地址并且t为每个第二IP地址池中的IP地址的数量;以及每个第一IP地址池的第一值和第二值生成二维数组PoolValue[][2],其中,二维数组PoolValue[][2]是以第一值为第一列和第二值为第二列i的二维矩阵,i为第一IP地址池的数量(即,IP地址池的个数)。
将4段IP地址通过以上公式(1)和(2)转换为与每个第一IP地址池的首地址和尾地址相对应的第一值和第二值,并且通过以上公式(3)和(4)转换为与每个第二IP地址池中的首地址和尾地址相对应的第三值和第四值。其中,每个所述第一IP地址池中的IP地址的数量可以通过掩码进行计算。例如,当第一IP地址池的首地址为a.b.c.d并且掩码为MaskValue1时,第一IP地址池中的IP地址的数量为s=2(32-MaskValue1);当第二IP地址池的首地址为e.f.g.h并且掩码为MaskValue2时,第二IP地址池中的IP地址的数量为t=2(32-MaskValue2)。因此,通过公式可以容易地算出第一值、第二值、第三值以及第四值。为了便于进行存储和计算,第一IP地址池中的首地址的第一值和尾地址的第二值可以生成二维数组,也就是i*2的二维矩阵。在生成二维数组PoolValue[][2]之后,根据二维矩阵的第一行PoolValue[i][0]从小到大对二维数组的行进行排序,从而生成有序二维数组。IP管理系统将有序二维数组与第三值和第四值进行比较,确定具有均不介于第一值和第二值之间的第三值和第四值的第二IP地址池,并将其中IP地址作为连续可用IP地址。因此,通过将相应的地址分别转换为第一值、第二值、第三值以及第四值,大幅简化了比较步骤,从而将复杂的比较步骤转换为数字比较步骤,提高了计算速度。
图4为根据本发明的第二实施例的虚拟机的IP地址的划分方法的具体流程图。IP管理系统将第一个具有连续可用IP地址的第二IP地址池作为可用IP地址池,并且将其他具有连续可用IP地址的第二IP地址池作为预留IP地址池。IP地址的划分方法400包括:在步骤402中,IP管理系统将可用IP地址池中的多个连续可用IP地址分配给虚拟机并删除可用IP地址池中在分配给虚拟机的第一个连续可用IP地址之前以及在分配给虚拟机的最后一个连续可用IP地址之后的连续可用IP地址,其中,将第一个连续可用IP地址和最后一个连续可用IP地址之间的IP地址作为用户IP地址池。从而保证虚拟机的IP地址处于同一用户IP地址池中。具体地,IP管理系统将可用IP地址池中的连续可用IP地址分配给虚拟机之后,为了保持可用IP地址池中的IP地址的连续性,将可用IP地址池中前部和后部的未分配的连续的IP地址删除而没有删除中间的IP地址,从而将删除后的可用IP地址池作为用户IP地址池。
IP地址的划分方法400还包括:在步骤404中,当虚拟机的数量增加时,如果增加后的虚拟机的总数量小于或等于用户IP地址池中IP地址的数量,则IP管理系统将用户IP地址池中未分配的IP地址分配给增加的虚拟机。具体地,当增加后的虚拟机的总数量小于或等于用户IP地址池中的IP地址的数量时,IP管理系统可以首先将该用户IP地址池中未分配的IP地址分配给增加的虚拟机。在虚拟机增加的情况下,也将虚拟机的IP地址限定在具有连续IP地址的用户IP地址池中。
IP地址的划分方法400还包括:在步骤406中,当虚拟机的数量增加时,如果增加后的虚拟机的总数量大于用户IP地址池中IP地址的数量,则在IP管理系统将与第一个连续可用IP地址和最后一个连续可用IP地址紧邻的附加连续可用IP地址添加至用户IP地址池中,并将增加的用户IP地址池中未分配的IP地址分配给增加的虚拟机。具体地,如果用户IP地址池中的IP地址的数量不足时,IP管理系统在用户IP地址池的周围搜索连续可用的IP地址,并且将搜索到的连续可用的IP地址添加至用户IP地址池中,然后将用户IP地址池中未分配的IP地址分配给增加的虚拟机。因此,在虚拟机增加的情况下,也将虚拟机的IP地址限定在具有连续IP地址的用户IP地址池中。
IP地址的划分方法400还包括:在步骤408中,当虚拟机的数量增加时,将增加的用户IP地址池中未分配的IP地址分配给增加的虚拟机之后,IP管理系统将预留IP地址池中的连续可用的IP地址分配给剩余未被分配IP地址的虚拟机。具体地,如果增加的用户IP地址池中的IP地址不足时,IP管理系统将增加的用户IP地址池中的未分配的IP地址分配给增加的虚拟机,并且剩余的虚拟机作为另一工作组,将预留IP地址池中的IP地址分配给剩余的未分配IP地址的虚拟机,即,另一工作组中的虚拟机。因此,该步骤能够保证在虚拟机的增加数量较大时,也保证同一工作组的虚拟机的IP地址处于具有连续IP地址的同一IP地址池中。
IP地址的划分方法400还包括:在步骤410中,IP管理系统将用户IP地址池或者预留IP地址池中第一个连续可用IP地址之前或最后一个连续可用IP地址之后的IP地址删除。通过该步骤可以将用户IP地址池或者预留IP地址池的前部或后部未分配的IP地址或者不需要的IP地址删除,以供其他用户使用,从而提高了IP地址的利用率。
如果IP管理系统通过这两种方法均无法获取满足条件的可用IP地址池时,则通知用户重新输入IP地址范围和虚拟机所需要的IP地址的数量以在另一组地址上实施这两种方法,来获取满足条件的可用IP地址。
利用本发明的虚拟机的IP地址的获取方法和划分方法,不但可以在尽量少的时间内获取虚拟机需要的IP地址,而且保证将同一工作组中的虚拟机的IP地址限定在具有连续IP地址的IP地址池中,从而便于管理员通过IP地址对同一工作组中的虚拟机进行管理。此外,在虚拟机的数量变化时,相应地改变IP地址池,从而确保IP地址池中的IP地址连续,因此可以也可以实现将同一工作组中的虚拟机的IP地址限定在具有连续IP地址的IP地址池中。该方法尤其在为多个工作组中的虚拟机分配IP地址具有优势,通过将同一工作组中的虚拟机的IP地址限定在具有连续IP地址的同一IP地址池中,可以便于利用多个IP地址池中的IP地址对多个工作组进行管理。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种虚拟机的IP地址的获取方法,其特征在于,包括:
IP管理系统获取一组IP地址中所有具有不可用IP地址的第一IP地址池,并且确定最后一个所述第一IP地址池的不可用尾地址;
所述IP管理系统确定所述一组IP地址中的可用尾地址;以及
所述IP管理系统确定所述最后一个第一IP地址池的不可用尾地址和所述可用尾地址之间的IP地址的数量大于或等于所述虚拟机所需要的IP地址的数量,并且在所述最后一个第一IP地址池的不可用尾地址之后连续地获取可用IP地址作为连续可用IP地址。
2.根据权利要求1所述的IP地址的获取方法,其特征在于,分别通过以下公式获取所述最后一个第一IP地址池的不可用尾地址的第一值和所述一组IP地址中的可用尾地址的第二值:
所述第一值为:PoolValue1=a×224+b×216+c×28+d,其中,a.b.c.d为所述最后一个所述第一IP地址池的不可用尾地址;以及
所述第二值为:PoolValue2=a×224+b×216+e×28+f,其中,a.b.e.f为所述一组IP地址池的可用尾地址。
3.根据权利要求2所述的IP地址的获取方法,其特征在于,还包括:所述IP管理系统将所述第二值与所述第一值之间的差值与所述虚拟机所需要的IP地址的数量进行比较;以及
如果所述差值大于或等于所述虚拟机所需要的IP地址的数量,则所述IP管理系统在紧邻所述最后一个第一IP地址池的不可用尾地址之后连续地获取可用IP地址作为连续可用IP地址。
4.根据权利要求3所述的IP地址的获取方法,其特征在于,
所述IP管理系统将所述连续可用IP地址作为可用IP地址池。
5.根据权利要求4所述的IP地址的获取方法,其特征在于,还包括:
所述IP管理系统将所述可用IP地址池中的多个连续可用IP地址分配给所述虚拟机。
6.根据权利要求5所述的IP地址的获取方法,其特征在于,当虚拟机的数量增加并且所述第一值和所述第二值之间的IP地址的数量大于在虚拟机的数量增加后所述虚拟机所需要的IP地址的数量时,还包括:所述IP管理系统将紧邻所述可用IP地址池的尾地址且在该尾地址之后的增加的虚拟机的数量的连续IP地址分配给所述增加的虚拟机。
7.根据权利要求5所述的IP地址的获取方法,其特征在于,当虚拟机的数量减少时,还包括:所述IP管理系统将所述可用IP地址池中的已分配给虚拟机的第一个连续可用IP地址之前或已分配给所述虚拟机的最后一个连续可用IP地址之后的IP地址删除。
CN201210568414.5A 2012-12-24 2012-12-24 虚拟机的ip地址的获取方法 Active CN103002067B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210568414.5A CN103002067B (zh) 2012-12-24 2012-12-24 虚拟机的ip地址的获取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210568414.5A CN103002067B (zh) 2012-12-24 2012-12-24 虚拟机的ip地址的获取方法

Publications (2)

Publication Number Publication Date
CN103002067A CN103002067A (zh) 2013-03-27
CN103002067B true CN103002067B (zh) 2016-12-28

Family

ID=47930199

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210568414.5A Active CN103002067B (zh) 2012-12-24 2012-12-24 虚拟机的ip地址的获取方法

Country Status (1)

Country Link
CN (1) CN103002067B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104348873B (zh) * 2013-08-05 2019-03-29 中兴通讯股份有限公司 虚拟网元自动装载及虚拟机ip地址获取的方法与系统
CN105589749B (zh) * 2014-12-30 2018-11-27 中国银联股份有限公司 云计算环境下的网络ip资源分配方法及装置
CN113014682B (zh) * 2019-12-20 2023-09-15 中兴通讯股份有限公司 实现网络动态性的方法、系统、终端设备及存储介质
CN112202937B (zh) * 2020-09-30 2021-11-30 中国核动力研究设计院 一种仪控仿真系统ip分配方法、系统、设备及存储介质
CN115022289B (zh) * 2022-05-31 2023-08-15 苏州浪潮智能科技有限公司 一种连续可用ip地址检测方法、装置、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102474531A (zh) * 2009-09-17 2012-05-23 国际商业机器公司 地址服务器

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060024674A (ko) * 2004-09-14 2006-03-17 엘지전자 주식회사 이동통신 단말기의 아이피 할당 방법
US8966082B2 (en) * 2009-02-10 2015-02-24 Novell, Inc. Virtual machine address management
CN102377830A (zh) * 2010-08-13 2012-03-14 Tcl集团股份有限公司 一种ip地址配置方法
CN102291470A (zh) * 2011-08-17 2011-12-21 清华大学 一种ip地址分配方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102474531A (zh) * 2009-09-17 2012-05-23 国际商业机器公司 地址服务器

Also Published As

Publication number Publication date
CN103002067A (zh) 2013-03-27

Similar Documents

Publication Publication Date Title
CN103002067B (zh) 虚拟机的ip地址的获取方法
CN105224392B (zh) 一种虚拟计算资源配额管理方法及平台
CN103078965B (zh) 虚拟机的ip地址管理方法
CN103827825B (zh) 虚拟资源对象组件
CN105068874B (zh) 一种结合Docker技术的资源按需动态分配方法
CN102479099B (zh) 虚拟机管理系统及其使用方法
CN105242957A (zh) 一种云计算系统调配gpu资源到虚拟机的方法及系统
DE112010003453T5 (de) Verfahren, Einheit und System zum Suchen von virtuellen Ressourcen
CN104679594B (zh) 一种中间件分布式计算方法
CN107346264A (zh) 一种虚拟机负载均衡调度的方法、装置和服务器设备
CN104270421A (zh) 一种支持带宽保证的多租户云平台任务调度方法
CN106331210A (zh) 一种云计算网络中的ip地址分配方法及装置
CN106254471A (zh) 一种异构云环境下资源统一调度方法及系统
CN106776960A (zh) 基于微容器实现的大数据云平台
CN106462599A (zh) 缓存存储器与工作进程的关联
US20190149436A1 (en) Service resource management system and method thereof
CN104935455A (zh) 簇构造方法及其设备
CN104199724B (zh) 一种基于性价比的虚拟化资源调度优化方法
CN106250202A (zh) 一种云平台自动化开通虚拟机的装置及方法
Ibrahim et al. MAHA: Migration-based adaptive heuristic algorithm for large-scale network simulations
CN111866190B (zh) 基于项目分级管理的多租户管理方法、装置和系统
CN104461736B (zh) 资源分配与搜索方法、资源分配与搜索系统和云服务器
CN103002068B (zh) 虚拟机的ip地址的划分方法
CN104579896B (zh) 一种虚拟网络的划分方法及装置
Kumar et al. An extended approach to Non-Replicated dynamic fragment allocation in distributed database systems

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: 100193 Beijing, Haidian District, northeast Wang West Road, building 8, building 36, floor 5

Patentee after: Shuguang Cloud Computing Group Co.,Ltd.

Address before: 100193 Beijing, Haidian District, northeast Wang West Road, building 8, building 36, floor 5

Patentee before: DAWNING CLOUD COMPUTING TECHNOLOGY Co.,Ltd.

CP01 Change in the name or title of a patent holder
TR01 Transfer of patent right

Effective date of registration: 20180628

Address after: 830011 the Xinjiang Uygur Autonomous Region Urumqi hi tech Industrial Development Zone (new urban area) 2015-735, No. 258 Cyberport, high tech street.

Patentee after: Urumqi Zhongke Shuguang cloud computing Co.,Ltd.

Address before: 100193 5 floor, 36 building, No. 8 Northeast Road, Haidian District, Beijing.

Patentee before: Shuguang Cloud Computing Group Co.,Ltd.

TR01 Transfer of patent right
CP03 Change of name, title or address

Address after: 830011 the Xinjiang Uygur Autonomous Region Urumqi hi tech Industrial Development Zone (new urban area) 2015-735, No. 258 Cyberport, high tech street.

Patentee after: Xinjiang Zhongke Suguang Cloud Computing Co.,Ltd.

Country or region after: Zhong Guo

Address before: 830011 the Xinjiang Uygur Autonomous Region Urumqi hi tech Industrial Development Zone (new urban area) 2015-735, No. 258 Cyberport, high tech street.

Patentee before: Urumqi Zhongke Shuguang cloud computing Co.,Ltd.

Country or region before: Zhong Guo

CP03 Change of name, title or address