IPv4地址复用转换器中信标主机设置方法转让专利

申请号 : CN200910089343.9

文献号 : CN101616193B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李星包丛笑

申请人 : 清华大学

摘要 :

IPv4地址复用转换器中信标主机设置方法属于计算机网络通信技术领域,其特征在于,根据互联网控制信令协议ICMP没有端口域的特点,当多个计算机共享单个IPv4地址时,由IPv4地址复用转换器指定信标主机,并由信标主机处理ICMP协议,此方法可用于多个计算机共享单个IPv4地址的网络管理、维护和查错。

权利要求 :

1.IPv4地址复用转换器中信标主机设置方法,其特征在于,根据互联网控制信令协议ICMP没有端口域的特点,当多个计算机共享单个IPv4地址时,通过以下步骤处理ICMP分组:步骤(1):初始化:

对于每一个IPv4地址,定义IPv4地址复用转换器的复用比,所选复用比是一个IPv4地址同时供多个计算机使用的计算机数量,同时规定每一个计算机所能够使用的端口号范围;

在IPv4地址复用转换器中定义共享IPv4地址网络的某台主机为信标主机A,并且指明该信标主机A所能够使用的端口号范围;

IPv4地址复用转换器位于不共享IPv4地址的网络和共享IPv4地址的网络之间,在共享IPv4地址的网络中使用隧道的方法或地址转换/协议转换的方法实现IPv4地址的共享;

步骤(2):所述IPv4地址复用转换器依次按以下步骤对从不共享IPv4地址网络的分组到共享IPv4地址网络的分组进行转换:步骤(2.1):检查分组的IPv4地址是否为需要转换的地址范围,如是,执行步骤(2.2),如不是,则丢弃该分组,返回执行步骤(2.1);

步骤(2.2):检查分组是否为ICMP分组或其他不带端口号的分组,如是,将该分组传送给信标主机A,如不是,执行步骤(2.3);

步骤(2.3):根据端口号范围,利用步骤(1)所规定的各个计算机所能使用的端口号范围,将该分组传送给该计算机;返回执行步骤(2.1);

步骤(3):所述IPv4地址复用转换器依次按以下步骤对从共享IPv4地址网络的分组到不共享IPv4地址网络的分组进行转换:步骤(3.1):检查分组的IPv4地址是否为需要转换的地址范围,如是,执行步骤(3.2),如不是,则丢弃该分组,返回执行步骤(3.1);

步骤(3.2):检查分组的端口号是否符合步骤(1)所规定的各个计算机所能使用的端口号范围,如是,执行步骤(3.3),如不是,则丢弃该分组,返回执行步骤(3.1);

步骤(3.3):把分组传送到不共享IPv4地址的网络,返回执行步骤(3.1)。

说明书 :

IPv4地址复用转换器中信标主机设置方法

技术领域

[0001] IPv4地址复用转换器中信标主机设置方法属于计算机互联网通信技术领域。

背景技术

[0002] 互联网已经成为全世界最重要的信息基础设施,但目前互联网广泛使用的第四版32
网络协议IPv4的地址的寻址范围只有2 ,即43亿地址,根据目前IPv4地址的分配速度,预计在2011年之后,IPv4地址即将分配完毕。
[0003] 目前中国网民人口的绝对数已经成为世界第一,但互联网的普及率只有22%,远低于世界发达国家的水平(70%)。同时,平均每个中国网民仅有0.6个IPv4地址。因此,对于中国来说,IPv4地址是无法满足需求的。这个问题对于印度等其它发展中国家来说,都是非常严重的。
[0004] 解决上述问题目前基本上有两种技术路线,即采用下一代互联网协议标准(IPv6)和采用地址转换端口映射技术(NAPT)。
[0005] 国际互联网工程组(IETF)设计的第六版网络协议IPv6,它的地址寻址范围有128
2 ,能够满足互联网长期发展的需求。但由于种种原因,IPv6协议于IPv4协议是不兼容的,不能互联互通。IETF建议的方法是同时运行IPv4和IPv4协议,即双栈方法。但IPv4地址的缺乏使双栈实施发生困难。同时双栈的建设成本和运行成本也大于单独运行IPv4或IPv6单栈的成本。
[0006] 目前工业界大量使用的是地址转换端口映射技术(NAPT),其基本原理是基于互联网通信的五元组概念,即“协议、原地址、原端口、目的地址、目的端口”唯一地确定一个通信16
的进程。端口的寻址范围为2 ,即65,536个。因此,如果每个计算机的通信进程只有1个,则从理论上讲1个IPv4地址通过地址转换端口映射可以同时支持6万个以上的计算机通信。在NAPT中,这个映射关系由转换设备维护。
[0007] 因此,NAPT可以解决近期的IPv4地址短缺的问题,IPv6可以从根本上解决IPv4地址短缺的问题。在从NATPT到IPv6的过渡过程中,利用地址端口复用技术使多个计算机设备共享同一个IPv4地址是可行的方案。但是,由于网络运行管理中使用的重要的网络控制消息协议ICMP没有端口号,因此会带来网络运行、管理和查错的问题。
[0008] 本发明的基本原理是在于,根据互联网控制信令协议ICMP没有端口域的特点,当网络中多个计算机共享单个IPv4地址时,在其中指定信标主机,并由信标主机处理ICMP协议,此方法可用于多个计算机共享单个IPv4地址的网络管理、维护和查错。

发明内容

[0009] 根据互联网控制信令协议ICMP没有端口域的特点,当多个计算机共享单个IPv4地址时,通过以下步骤处理ICMP分组:
[0010] 步骤(1):初始化
[0011] 对于每一个IPv4地址,定义IPv4地址复用转换器的复用比,所选复用比是一个IPv4同时供多个计算机使用的计算机数量,同时规定每一个计算机所能够使用的端口号范围;
[0012] 在IPv4地址复用转换器中定义共享IPv4地址网络的某台主机为信标主机A,并且指明该信标主机A所能够使用的端口号范围;
[0013] IPv4地址复用转换器位于不共享IPv4地址的网络和共享IPv4地址的网络之间,在共享IPv4地址的网络中使用隧道的方法或地址转换/协议转换的方法实现IPv4地址的共享;
[0014] 步骤(2):所述IPv4地址复用转换器依次按以下步骤对从不共享IPv4地址网络的分组到共享IPv4地址网络的分组进行转换
[0015] 步骤(2.1):检查分组的IPv4地址是否为需要转换的地址范围,如是,执行步骤(2.2),如不是,则丢弃该分组,返回执行步骤(2.1);
[0016] 步骤(2.2):检查分组是否为ICMP分组或其他不带端口号码的分组,如是,将该分组传送给信标主机A,如不是,执行步骤(2.3);
[0017] 步骤(2.3):根据端口的范围,利用步骤(1)所规定的各个计算机所能使用的端口范围,将该分组传送给该计算机;返回执行步骤(2.1);
[0018] 步骤(3):所述IPv4地址复用转换器依次按以下步骤对从共享IPv4地址网络的分组到不共享IPv4地址网络的分组进行转换:
[0019] 步骤(3.1):检查分组的IPv4地址是否为需要转换的地址范围,如是,执行步骤(3.2),如不是,则丢弃该分组,返回执行步骤(3.1);
[0020] 步骤(3.2):检查分组的端口是否符合步骤(1)所规定的各个计算机所能使用的端口范围,如是,执行步骤(3.3),如不是,则丢弃该分组,返回执行步骤(3.1);
[0021] 步骤(3.3):把分组传送到不共享IPv4地址的网络,返回执行步骤(3.1)。
[0022] 当所述IPv4地址复用转换器收到从共享IPv4地址网络的计算机传来的分组时,并当IPv4地址复用转换器需要产生ICMP分组时,产生的ICMP分组将返回给该计算机,而不是传送给信标主机;当所述IPv4地址复用转换器收到从不共享IPv4地址网络的计算机传来的分组时,并当IPv4地址复用转换器需要产生ICMP分组时,按RFC标准进行处理;
[0023] 本发明可用于多个计算机共享单个IPv4地址的网络管理、维护和查错。

附图说明

[0024] 图1:IPv4地址和端口复用的信标主机设置方法工作流程;
[0025] 图2:;信标主机的接入方式。

具体实施方式

[0026] 本发明的信标主机的接入方式如图2所示。当计算机1至计算机N共享同一个IPv4地址(58.200.192.10)时,每个计算机只能使用65,536个端口的一部分,如计算机1只能使用R1(端口0至1023),计算机2只能使用R2(端口1024至2047)等。从不共享IPv4地址的网络送来的分组在IPv4地址复用转换器中将根据规定的端口使用规则,利用隧道或地址转换得方法把分组送到相应的计算机。当ICMP分组从不共享IPv4地址的网络送来时,由于ICMP没有对应得端口号,因此无法送到特定的计算机。
[0027] 但ICMP对于网络运行、网络管理和网络查错又非常重要。如常用的ping工具就是使用ICMP协议。因此,我们在共享同一个IPv4地址的计算机中选择1台典型、可靠的主机构成信标主机,例如上述例子中我们可以选择计算机2作为信标主机,在IPv4地址复用转换器中进行相应配置。
[0028] 这样从非共享IPv4地址计算机发送到到共享IPv4地址的计算机58.200.192.10,且端口范围在1024指2047的非ICMP分组将送到计算机2,同时虽然ICMP分组没有端口号,但根据此例中IPv4地址复用转换器中的规定,ICMP分组也将送到这个信标主机进行处理。比如非共享IPv4地址的主机ping58.200.192.10的ICMP分组将送到信标主机(即计算机2)处理,其返回的ICMP分组可以作为对于共享58.200.192.10地址网络的所有计算机的可达性和网络性能的参考。
[0029] 因此本发明可以解决共享IPv4地址的网络的运行、管理和差错问题。