专利名称:一种数字化变电站内加速IPv6地址空间搜索的方法
技术领域:
本发明属于变电站内数据通信领域,具体涉及一种电力行业的数字化变电站内用 黄金分割比加速IPv6地址空间搜索的方法。
背景技术:
IP协议是互联网的核心协议。目前广泛使用的IPv4协议是在上世纪70年代末期 设计的,无论从计算机本身发展还是从互联网规模和网络传输速率来看,IPv4已经很难适 应要求。IPv4地址总量为2的32次方个即4, 294, 967, 296,但32位的IPv4地址已远远不 够用,专家预计全球IPv4地址资源将于2012年耗尽。 采用长度为128位IP地址的IPv6协议,能够解决IPv4地址不足的难题,并且在
地址容量、安全性、网络管理、移动性以及服务质量等方面有明显的改进。 但将同时引起一些其它问题。例如,用IPv4有限地址空间搜索算法无法回避IPv6
海量地址空间的搜索问题,128位的IPv6地址将引起IPv6数据包的较大延时。 变电站内的二次系统数字化过程中大量采用网络化IP技术,IPv6数据包的延时
和快速地址空间搜索将直接影响数字化变电站的正常工作,影响信息采集、测量、控制、保
护、计量和监测等基本功能及支持电网实时自动控制、智能调节、在线分析决策、协同互动
等高级应用功能。 未来,电力数据通信网络过渡为IPv6后,数字化变电站内的电力终端采用IPv6协 议。采用长度为128位IP地址的IPv6协议,能够解决IPv4地址不足的难题,但将同时面 临一些新问题亟待解决。例如,用IPv4有限地址空间搜索算法无法很好解决IPv6海量地 址空间的搜索问题,128位的IPv6地址将引起IPv6数据包的较大延时。这些问题若不解 决,将影响数字化变电站的信息采集、测量、控制、保护、计量和监测等基本功能及支持电网 实时自动控制、智能调节、在线分析决策、协同互动等高级应用功能。
发明内容
本发明的目的是解决IPv6地址空间的快速搜索问题,并减少IPv6数据包的延时。
本发明提出了一种数字化变电站内加速IPv6地址空间搜索的方法,包括以下步 骤 1. 1)输入一段IPv6地址范围A1至A2,计算该段IPv6地址的黄金分割点A3 ;
1. 2)判断所要搜索的IPv6地址是否在地址范围(l+A3)至A2之间。
1. 3)若所查找的地址是在(l+A3)至A2之间,则计算该段IPv6地址的黄金分割点 A4 ; 1. 4)判断所要搜索的IPv6地址是否在地址范围(l+A4)至A2之间; 1. 5)若所查找的地址是在地址范围(l+A4)至A2之间,则在地址范围(l+A4)至
A2之间查找所要搜索的IPv6地址。 1.6)若否,所要搜索的地址不是在地址范围(l+A4)至A2之间,则在地址范围
5(l+A3)至A4之间查找所要搜索的IPv6地址; 1. 7)若否,所查找的地址不在地址范围Al至A3之间,则计算IPv6地址Al至A3 之间的黄金分割点A5 ; 1. 8)判断所要搜索的IPv6地址是否在地址范围(l+A5)至A3之间; 1. 9)若所要搜索的地址是在地址范围(l+A5)至A3之间,则在地址范围(l+A5)至
A3之间查找所要搜索的IPv6地址; 1. 10)若否,地址不是在地址范围(l+A5)至A3之间,则计算IPv6地址Al至A5之 间的黄金分割点A6 ; 1. 11)判断所要搜索的IPv6地址是否在地址范围(l+A6)至A5之间; 1. 12)若所要搜索的地址是在地址范围(l+A6)至A5之间,则在地址范围(l+A6)
至A5之间查找所要搜索的IPv6地址; 1. 13)若否,所要搜索的地址不在地址范围(l+A6)至A5之间,则在地址范围Al至 A6之间查找所要搜索的IPv6地址。 其中,所述步骤l. 1)、1.3)、1.7)禾Pl. 10)中采用黄金分割比查找,根据一段IPv6 地址范围A1至A2,计算地址黄金分割点A3、A4、A5、A6,其步骤如下
2. 1) Al至A2计算黄金分割点A3的具体过程是,先定义中间变量C21和C31 如下定义(:21 = (A2-A》为电力终端IPv6地址的二进制数A2和Al之差后转换的十 进制数,定义Q = (A3-A》为电力终端IPv6地址的二进制数A3和Al之差后转换的
十进制数,则"^《a618计算黄金分割点A3精确的解析表达式为A3 = A一B^,其中<formula>formula see original document page 6</formula>
为十进制数C21与
乘积后转换的二进制数并取二进制数的整数
2
部分; 2. 2)计算黄金分割点A4的具体过程是,先定义中间变量C23和C43如下定义(:2 =(A2_A3)为电力终端IPv6地址的二进制数A2和A3之差后转换的十进制数,定义(^二
(A4-A3)为电力终端IPv6地址的二进制数A4和Al之差后转换的十进制数,则7;
<formula>formula see original document page 6</formula>
计算黄金分割点A4精确的解析表达式为A4 = ~+823,其中523 =
为十进制数
C23与
2
乘积后转换的二进制数并取二进制数的整数部分; 2.3)计算黄金分割点A5的具体过程是,先定义中间变量C31和C51如下定义Q =(A3_A》为电力终端IPv6地址的二进制数A3和Al之差后转换的十进制数,定义C^二
(A5_A》为电力终端IPv6地址的二进制数A5和Al之差后转换的十进制数,则#《a618
^31计算黄金分割点A5精确的解析表达式为A5 = A,B^,其中丑
<formula>formula see original document page 7</formula>为十进制数
C31与
2
乘积后转换的二进制数并取二进制数的整数部分; 2.4)计算黄金分割点A6的具体过程是,先定义中间变量C51和C61如下定义。5 =(A5_A》为电力终端IPv6地址的二进制数A5和Al之差后转换的十进制数,定义(^二
(Ae-A》为电力终端IPv6地址的二进制数A6和Al之差后转换的十进制数,则"^
计算黄金分割点A6精确的解析表达式为A6 = A,B^其中^ =
<formula>formula see original document page 7</formula>乘积后转换的二进制数并取二进制数的整数部分 其中,包括对黄金分割点A3、 A4、A5、A6进行校验的过程,其步骤如下 3. 1)根据一段IPv6地址范围A1至A2,通过上述过程求得A3、A4、A5、A6后,为了
保证具体实施的正确性,再进行校验,若有错误,则需要重新计算; 3.2)具体校验过程如下,计算C21、C31、C41、C51、C61 ; 定义C21 = (A2_A》为电力终端IPv6地址的二进制数A2和Al之差后转换的十进
制数;
制数;
制数;
制数;
定义C31 = (A3-A》为电力终端IPv6地址的二进制数A3和Al之差后转换的十进 定义C41 = (A4-A》为电力终端IPv6地址的二进制数A4和Al之差后转换的十进 定义C51 = (A5-A》为电力终端IPv6地址的二进制数A5和Al之差后转换的十进 3. 3)黄金分割点A3、A4、A5、A6的校验关系为
<formula>formula see original document page 7</formula>
数字化变电站IPv6地址A1、A2、A3、A4、A5、A6见图1。 数字化变电站内用黄金分割比加速IPv6地址空间搜索的方法见图2。 本发明的有益效果是
IPv6地址空间搜索平均速度大大加快,进而可以减少IPv6数据包的延时c
下面结合附图对本发明进一步说明。 图1是本发明涉及的IPv6地址A1、A2、A3、A4、A5、A6坐标图; 图2是本发明的方框图; 图3是本发明的具体实施例; 图4是本发明的具体实施过程; 图5是本发明的原理图之一; 图6是本发明的原理图之二。
具体实施例方式
图5中,A1、A2、A3、A4、A5、A6为数字化变电站IPv6地址,也是本发明的方法所涉 及的黄金分割点。 输入一段IPv6地址范围,例如在Al至A2之间,应用本发明的方法计算IPv6地址 黄金分割点A3。在A3和A2之间,应用本发明的方法计算IPv6地址黄金分割点A4。在Al 和A3之间,应用本发明的方法计算IPv6地址黄金分割点A5。在A1和A5之间,应用本发明 的方法计算IPv6地址黄金分割点A6。 计算黄金分割点A3的具体过程是,先定义中间变量C21和C31如下。定义C21 =(A2_A》为电力终端IPv6地址的二进制数A2和Al之差后转换的十进制数,定义C^二
(A3_A》为电力终端IPv6地址的二进制数A3和Al之差后转换的十进制数。则^
0.618
计算黄金分割点A3精确的解析表达式为A3 = &+821,其中521 = j —1
<formula>formula see original document page 8</formula>
为十进制数
<formula>formula see original document page 8</formula>
L乘积后转换的二进制数并取二进制数的整数部分。 计算黄金分割点A4的具体过程是,先定义中间变量C23和C43如下。定义C23 =(A2_A3)为电力终端IPv6地址的二进制数A2和A3之差后转换的十进制数,定义(^二
(A4-A3)为电力终端IPv6地址的二进制数A4和Al之差后转换的十进制数。则"^1
<formula>formula see original document page 8</formula>
为十进制数
计算黄金分割点A4精确的解析表达式为A4 = ~+823,其中523 = ^~^C
C23与^^i乘积后转换的二进制数并取二进制数的整数部分。 2 计算黄金分割点A5的具体过程是,先定义中间变量C31和C51如下。定义C3 =(A3_A》为电力终端IPv6地址的二进制数A3和Al之差后转换的十进制数,定义C^二(A5_A》为电力终端IPv6地址的二进制数A5和Al之差后转换的十进制数。则7^" 0.618
<formula>formula see original document page 9</formula>
计算黄金分割点A5精确的解析表达式为A5 = A,B^其中^ =<formula>formula see original document page 9</formula>
为十进制数
C31与
<formula>formula see original document page 9</formula>
乘积后转换的二进制数并取二进制数的整数部分 计算黄金分割点A6的具体过程是,先定义中间变量C51和C61如下。定义C5 =(A5_A》为电力终端IPv6地址的二进制数A5和Al之差后转换的十进制数,定义(^二
(Ae-A》为电力终端IPv6地址的二进制数A6和Al之差后转换的十进制数。则T " 0.618
51
计算黄金分割点A6精确的解析表达式为A6 = A,B^其中^ =
2
51
为十进制数
C51与
2
乘积后转换的二进制数并取二进制数的整数部分 根据Al至A2,通过上述过程求得A3、 A4、 A5、 A6后,为了保证具体实施的正确性, 再进行校验,若有错误,则需要重新计算。 具体校验过程如下,计算C21、 C31、 C41、 C51、 C61。其中,C21、 C31、 C51和C61以
上已有定义,定义(:41= (A4-A》为电力终端IPv6地址的二进制数A4和Al之差后转换的十 进制数。则地址之间的关系为
A4、A5
<formula>formula see original document page 9</formula>
该校验过程的逻辑关系见图6。即对地址Al至A2进行规一化处理后,A1、A2、A3、 A6分别对应规一化值(保留3位小数)0、0. 236、0. 382、0. 618、0. 854、 1。 本发明的具体实施过程见图4。即包括五个具体实施过程 S4. 1发送源端的电力终端发出IPv6数据包; S4. 2解析该IPv6包的目的地址; S4.3用本发明寻址;
S4. 4快速发现IPv6包的目的地址并传递该IPv6包; S4. 5宿电力终端接受IPv6数据包。 本发明可以解决的具体技术问题举例如下。
数字化变电站对网络通信技术和相应设备在可靠性、实时性、稳定性等方面有着 十分严格的要求。未来,随着智能电网的建设,数字化变电站的过程层(Process Level)、 间隔层(Bay Level)和站控层(Station Level)内部及其相互之间的网络将采用IPv6网 络。使用本发明的方法加速IPv6地址空间搜索,可以保证生产控制大区和管理信息大区的 各类信息通信的实时性。具体实施时,可以将本发明的方法内置在数字化变电站IPv6网络 内的IP v6工业以太网交换机内和IP v6工业路由器内,参见图3。也可以将本发明的方法 内置在数字化变电站的过程层、间隔层和站控层内的IPv6终端内。 此处已经根据特定的示例性实施例对本发明进行了描述。对本领域的技术人员来 说在不脱离本发明的范围下进行适当的替换或修改将是显而易见的。示例性的实施例仅是 例证性的,而不是对本发明的范围的限制,本发明的范围由所附的权利要求定义。
权利要求
一种数字化变电站内加速IPv6地址空间搜索的方法,其特征在于,包括以下步骤1.1)输入一段IPv6地址范围A1至A2,计算该段IPv6地址的黄金分割点A3;1.2)判断所要搜索的IPv6地址是否在地址范围(1+A3)至A2之间;1.3)若所查找的地址是在(1+A3)至A2之间,则计算该段IPv6地址的黄金分割点A4;1.4)判断所要搜索的IPv6地址是否在地址范围(1+A4)至A2之间;1.5)若所查找的地址是在地址范围(1+A4)至A2之间,则在地址范围(1+A4)至A2之间查找所要搜索的IPv6地址。1.6)若否,所要搜索的地址不是在地址范围(1+A4)至A2之间,则在地址范围(1+A3)至A4之间查找所要搜索的IPv6地址;1.7)若否,所查找的地址不在地址范围A1至A3之间,则计算IPv6地址A1至A3之间的黄金分割点A5;1.8)判断所要搜索的IPv6地址是否在地址范围(1+A5)至A3之间;1.9)若所要搜索的地址是在地址范围(1+A5)至A3之间,则在地址范围(1+A5)至A3之间查找所要搜索的IPv6地址;1.10)若否,地址不是在地址范围(1+A5)至A3之间,则计算IPv6地址A1至A5之间的黄金分割点A6;1.11)判断所要搜索的IPv6地址是否在地址范围(1+A6)至A5之间;1.12)若所要搜索的地址是在地址范围(1+A6)至A5之间,则在地址范围(1+A6)至A5之间查找所要搜索的IPv6地址;1.13)若否,所要搜索的地址不在地址范围(1+A6)至A5之间,则在地址范围A1至A6之间查找所要搜索的IPv6地址。
2. 根据权利要求1所述的黄金分割地址空间搜索的方法,其特征在于,所述步骤1. 1)、 1. 3) 、 1. 7)和1. 10)中采用黄金分割比查找,根据一段IPv6地址范围A1至A2,计算地址 黄金分割点A3、 A4、 A5、 A6,其步骤如下2. 1)A1至A2计算黄金分割点A3的具体过程是,先定义中间变量C21和C31如下定义 c2i= (a2-Ai)为电力终端IPv6地址的二进制数A2和Al之差后转换的十进制数,定义C^二(A3_A》为电力终端IPv6地址的二进制数A3和Al之差后转换的十进制数,则3<formula>formula see original document page 2</formula>计算黄金分割点A3精确的解析表达式为A3 = A,B^,其中A,= <formula>formula see original document page 2</formula>为十进制数<formula>formula see original document page 2</formula> 乘积后转换的二进制数并取二进制数的整数部分2. 2)计算黄金分割点A4的具体过程是,先定义中间变量C23和C43如下定义C2 (A2_A3)为电力终端IPv6地址的二进制数A2和A3之差后转换的十进制数,定义C^ =(A4_A3)为电力终端IPv6地址的二进制数A4和Al之差后转换的十进制数,则计算黄金分割点A4精确的解析表达式为A4 = ~+823,其中<formula>formula see original document page 0</formula>为十进制数C23与<formula>formula see original document page 0</formula>乘积后转换的二进制数并取二进制数的整数部分;[2. 3)计算黄金分割点A5的具体过程是,先定义中间变量C31和C51如下定义C3 (A3_A》为电力终端IPv6地址的二进制数A3和Al之差后转换的十进制数,定义C51 =(A5_A》为电力终端IPv6地址的二进制数A5和Al之差后转换的十进制数,则"^<formula>formula see original document page 0</formula>计算黄金分割点A5精确的解析表达式为A5 = A,B^其中^ =<formula>formula see original document page 0</formula>为十进制数C31与<formula>formula see original document page 0</formula>乘积后转换的二进制数并取二进制数的整数部分;[2. 4)计算黄金分割点A6的具体过程是,先定义中间变量C51和C61如下定义C5 (A5_A》为电力终端IPv6地址的二进制数A5和Al之差后转换的十进制数,定义C61 =(Ae-A》为电力终端IPv6地址的二进制数A6和Al之差后转换的十进制数,则"^计算黄金分割点A6精确的解析表达式为A6 = A,B^其中^ =<formula>formula see original document page 0</formula>为十进制数C51与<formula>formula see original document page 0</formula>乘积后转换的二进制数并取二进制数的整数部分
3.根据权利要求l-2任一所述的黄金分割地址空间搜索的方法,,其特征在于,包括对 黄金分割点A3、 A4、 A5、 A6进行校验的过程,其步骤如下3. 1)根据一段IPv6地址范围A1至A2,通过上述过程求得A3、A4、A5、A6后,为了保证 具体实施的正确性,再进行校验,若有错误,则需要重新计算;3. 2)具体校验过程如下,计算C21、C31、C41、C51、C61 ;定义(:21= (A2-A》为电力终端IPv6地址的二进制数A2和Al之差后转换的十进制数 定义(:31= (A3-A》为电力终端IPv6地址的二进制数A3和Al之差后转换的十进制数 定义(:41= (A4-A》为电力终端IPv6地址的二进制数A4和Al之差后转换的十进制数 定义(:51= (A5-A》为电力终端IPv6地址的二进制数A5和Al之差后转换的十进制数 3. 3)黄金分割点A3、A4、A5、A6的校验关系为<formula>formula see original document page 3</formula><formula>formula see original document page 4</formula>
全文摘要
本发明属于变电站内数据通信领域,具体涉及一种电力行业的数字化变电站内用黄金分割比加速IPv6地址空间搜索的方法,本发明解决了IPv6地址空间的快速搜索问题,并且可以加速IPv6地址空间搜索进而缩短IPv6数据包的延时。
文档编号H04L29/12GK101795304SQ20101012492
公开日2010年8月4日 申请日期2010年3月12日 优先权日2010年3月12日
发明者张海亮, 苗新, 郝为民, 陈希 申请人:中国电力科学研究院