在具有不同地址范围的网络中的网络单元之间进行数据交换的方法

文档序号:7606151阅读:122来源:国知局
专利名称:在具有不同地址范围的网络中的网络单元之间进行数据交换的方法
技术领域
本发明涉及一种用于布置在不同网络区域中的网络单元的数据交换的方法。
已知将网络节点设备、例如路由器或网关用于支持网络单元之间的数据交换,其中这些网络单元被布置在不同的局部的面向分组的网络区域中。
例如在应用‘因特网协议’(也简称为IP)的情况下实现面向分组的数据交换。在以下的说明中涉及因特网协议,但是本发明并不局限于该协议的采用,而是包括所有面向分组的通信方式,在这些通信方式中,用于数据交换的数据分组由数据部分和表征部分(在文献中常常称为‘报头’)组成。在此情况下,报头通常包含表征发送的网络单元的发送者地址以及表征被指定进行接收的网络单元的目标地址。
在采用仅仅在第一本地网络区域之内有效的、用于对网络单元进行寻址的(‘本地’)地址时,为了与第二网络区域的网络单元进行通信,需要将在第一网络中本地有效的地址转换成对于第二网络区域来说有效的地址。在此情况下,将发送的或被指定进行接收的网络单元的各自的IP地址用作发送者地址或目标地址。通常由连接第一和第二网络的网络节点设备例如借助分配表来执行相应的方法(在学术界作为地址转换或NAPT(网络地址和端口转换)或NAT(网络地址转换)而公知)。
在IETF(因特网工程特别工作组)的文件RFC 3027(Request forComment)中,提及了不同的应用或通信协议,在它们的应用中出现上述地址转换的问题。
在此情况下,有问题的应用的范畴是所谓的‘捆绑会话应用(Bundled Session Application)’,在该捆绑会话应用的面向分组的数据交换中,除了在各个数据分组的报头中,在各个数据分组的数据部分(‘有效载荷’)中也包含寻址信息。
这种捆绑会话应用的实例尤其是学术界中已知的通信协议SIP(会话启动协议)或H.323。
由于有效载荷中所包含的(与报头中所包含的一样)寻址信息通常是域特定的、即仅在相应的网络区域中有效,所以在过渡到另一个网络区域中之后这些寻址信息也随着所进行的地址转换而不具有有效性,因为网络节点设备根据NAT方法通常仅转换这种数据分组的报头中的地址信息。
被构造为所谓的‘应用层网关’(简称ALG)的网络节点设备对此提供了一种例外。这些ALG也将有效载荷中所包含的地址信息考虑用于类似于NAT的地址转换。但是这种ALG可以被专门设立用于相应的协议,并且此外还由于在分析和转换有效载荷数据时所需要的计算持续时间而具有时延问题。特别是在转换到所采用的通信协议或所采用的应用的较新的版本(‘升级’)时,这种ALG是不利的。在这种情况下,大多随着通信协议的升级还不利地需要改变在ALG中运行的软件。在采用这种ALG时还应注意,对于所有跨越网络区域进行通信的网络单元来说,这种ALG可用作直接的通信伙伴,这不是总是能够被保证的。
本发明的任务是,给出一种用于在与网络节点设备分开的网络单元之间交换数据的方法,其中该网络节点设备转换在所交换的数据分组的表征区域中的寻址信息,利用这些网络单元借助在所交换的数据分组的数据区域中所登记的寻址信息来确保发送的网络单元在分别相对的网络区域中有效的寻址。
该任务的解决方案在其方法方面通过一种具有权利要求1的特征的方法来实现。
根据本发明规定,数据分组在其数据区域中包含在第二网络区域中有效的发送者地址,这些数据分组由布置在第一网络区域中的第一网络单元通过转换在所交换的数据分组的表征区域中的寻址信息的网络节点设备发送到布置在第二网络区域中的第二网络单元上。在此情况下,本地地在第一网络单元中或者在中央数据库上提供在第二网络区域中有效的发送者地址。
本发明方法的主要优点在于,可以在没有其它的设计的干预的情况下将通常类型的网络节点设备、尤其是路由器或网关用于连接两个网络区域。
本发明方法可以有利地在网络单元、即面向分组的通信的端点中实施,并且因此只需要微小的编程耗费并且尤其不需要对整个系统或交换网络节点设备的任何干预。
在从属权利要求中给出了本发明的有利的改进方案。
有利地,除了在目标网络区域中有效的源地址之外,也把在该目标网络区域中有效的目标地址登记到数据区域中。
有利地以类似的方式传送第二网络单元的在第一网络区域中有效的目标地址或源地址。相应的选择,即应该在哪个方向上进行在分别相对的网络区域中有效的目标地址或源地址的发送,此外还取决于,应针对哪些网络区域进行地址转换。除了在


中所阐述的双向地址转换之外,该地址转换也可以完全仅单向地进行,例如在从第一网络区域过渡到第二网络区域中时,但不是在从第二网络区域过渡到第一网络区域中时进行。按照现有情况,技术人员将利用根据本发明思路的方法来选择对于相应的应用领域来说有利的实现。
用于确定分别在其它网络区域中有效的源地址和/或目标地址的询问过程是特别有利的。这种询问过程确保相应地址的动态的确定,而不必动用所存储的值。因此有利地取消了在中央数据库中或在分配给各个网络单元的存储区中所存储的地址的数据库维护。
以下借助附图来详细阐述具有其它优点的实施例和本发明的扩展方案。
其中图1展示了用于示意性地描述两个网络区域和连接这两个网络区域的网络节点设备的结构图;图2展示了所交换的数据分组的结构;图3A展示了用于示意性地描述第一实施形式中面向分组的询问过程的按时间顺序的流程图;图3B展示了用于示意性地描述第二实施形式中面向分组的询问过程的按时间顺序的流程图;图4展示了用于示意性地描述面向分组的数据交换的按时间顺序的流程图。
图1中示出了第一网络区域DMA和第二网络区域DMB以及连接两个网络区域DMA、DMB的网络节点设备GW。在附图中分别用点划线象征性地表示网络区域DMA、DMB。
第一网络单元A被布置在第一网络区域DMA中,而第二网络单元B被布置在第二网络区域DMB中。除了所述的网络单元A、B之外,在需要时可以在各个网络区域DMA、DMB中布置其它的(未示出的)网络单元。此外,除了网络节点设备GW之外,在需要时还可以将其它的(未示出的)网络节点设备用于网络区域A、B的连接。
给第一网络单元A分配在第一网络区域DMA中有效的地址ADA。分配给第一网络单元A的地址ADA优选地作为IP地址(‘因特网协议’)存在,但是本发明并不局限于所属的因特网协议的采用。对于分配给第一网络单元A的并在第一网络区域DMA中有效的地址ADA的值,采用‘10.1.1.1’的示范值。
给第二网络单元B分配在第一网络区域DMA中有效的具有值‘20.1.1.1’的地址ADB。对于第二网络单元B,在图1中注明了在第二网络区域DMB中有效的具有值‘21.1.1.1’的地址ADB′。由网络节点设备GW将在第一网络区域DMA中利用地址ADB和值20.1.1.1来寻址的第二网络单元B转换成在第二网络区域DMB中有效的具有值21.1.1.1的地址ADB′。相应地,由网络节点设备GW将在第二网络区域DMB中利用地址ADA′和值‘11.1.1.1’来寻址的第一网络单元A转换成在第一网络区域DMA中有效的具有值10.1.1.1的地址ADA。在此情况下,在网络节点设备中利用一种作为‘网络地址转换(NetworkAddress Translation)’或缩写NAT而已知的方法来实现地址的相应转换。
在网络节点设备GW的示图中,在朝向第一网络区域DMA的左边的区域中示出了第一网络单元A的在第一网络区域DMA中有效的地址ADA以及第二网络单元B的在第一网络区域DMA中有效的地址ADB,而在朝向第二网络区域DMB的右边的区域中示出了第一网络单元A的在第二网络区域DMB中有效的地址ADA′以及第二网络单元B的在第二网络区域DMB中有效的地址ADB′。因此在各个附图标记中的撇号(′)表明网络单元A、B的如此标记的地址ADA′、ADB′是在第二网络区域DMB中有效的。
在此情况下,各个地址ADA、ADB、ADA′、ADB′应被理解为按照应用被用作源地址或目标地址的地址ADA、ADB、ADA′、ADB′。
在图2中示出了用于面向分组的数据交换的数据分组DP的结构。数据分组DP被划分为也称为‘报头’的表征区域HEAD和也称为‘有效载荷’的包含要传输的数据的区域DATA。表征区域HEAD通常包含表征发送者(‘源’)的信息SRCE以及表征接收者(‘目的地’)的信息DEST。
以下进一步参考分别位于前面的附图的功能单元来更详细地阐述面向分组的消息的交换。
图3A展示了用于示意性地描述第一实施形式中面向分组的询问过程的按时间顺序的流程图。
时间线1、2、3以此顺序分配给第一网络单元A、网络节点设备GW以及第二网络单元B。时间线A、GW、B从上向下伸展,使得稍后的时刻t大大地低于较早的时刻。
在以下说明的询问过程中出发点在于,在所有的网络区域DMA、DMB中设置有网络节点设备GW,这些网络节点设备GW按照NAT方法仅仅在要交换的数据分组DP的表征区域中执行地址转换。因此尤其是上述的ALG(应用层网关)没有得到采用,这些ALG还转换要交换的数据分组的数据部分DATA中的地址信息。
为了执行第一实施形式中的询问过程,两个网络单元A、B交换预先规定的格式的数据分组DP1、DP1′、DP2、DP2′。关于预先规定的格式,例如可以在数据区域DATA中或在表征区域HEAD中设置确定的形式或‘标识符’或‘标志’形式的标记。在这里示出的实施形式中,从在所交换的数据分组DP1、DP1′、DP2、DP2′的各自的数据区域DATA1、DATA2中所设置的关键字‘NAT Dscv’出发。‘Dscv’在此情况下代表以下要说明的询问过程(‘Discovery’)。
第一网络单元A在第一时刻发送数据分组DP1。在表征该数据分组DP1的区域HEAD1中,将第一网络单元A的在第一网络区域中有效的网络地址ADA登记为源SRCE,以及将第二网络单元B的在第一网络区域中有效的网络地址ADB登记为目标DEST。
在网络节点设备GW上接收第一数据分组DP1。在表征区域HEAD1中,根据NAT方法将所读出的在第一网络区域DMA中有效的目标地址和源地址ADA;ADB转换成在第二网络区域DMB中有效的目标地址和源地址ADA′;ADB′。在该NAT处理之后,在紧随此后的时刻,将第一数据分组DP1利用修改后的表征区域HEAD1′作为数据分组DP1′转送到第二网络单元B上。
第二网络单元B接收数据分组DP1′,并从数据区域DATA1中的录入项‘NAT Dscv’中获知,该数据分组引入询问过程。第二网络单元B随即读出所接收的数据分组DP1′的目标地址或源地址ADA′、ADB′,并存储这些目标地址或源地址ADA′、ADB′。
在下一个时刻,第二网络单元B生成应答数据分组DP2,该应答数据分组DP2在所属的数据区域DATA2中包含关键字‘NAT Dscv RSP’,并且因此显示由第一数据分组DP1所引入的询问过程的应答(‘Response’)。
在表征第二数据分组DP2的区域HEAD2中,将第二网络单元B的在第二网络区域DMB中有效的网络地址ADB′登记为源SRCE,以及将第一网络单元A的在第二网络区域DMB中有效的网络地址ADA′登记为目标DEST。为了生成应答数据分组DP2的源SRCE和目标DEST,因此调换了从事先接收的数据分组DP1中所获知的关于源SRCE和目标DEST的信息。
此外,还在应答数据分组DP2的数据区域DATA2中登记了网络单元A的在第二网络区域DMB中有效的地址ADA′。
将应答数据分组DP2发送到网络节点设备GW上,并由该网络节点设备GW利用类似的(已经说明的)NAT修改将其作为修改后的应答消息DP2′转送到第一网络单元A上,该第一网络单元A从修改后的应答消息DP2′的数据区域DATA2中获知该网络单元A的在第二网络区域DMB中有效的地址ADA′的值并存储该值。
现在,其它的数据分组交换紧接在所述的数据分组DP1、DP1′、DP2、DP2′的交换之后,其中类似于这里所示出的那样来实现其它的(未示出的)数据分组交换,并且这次由第二网络单元B来启动。在该交换结束之后,在第二网络单元B中存储有它在第一网络区域DMA中有效的地址ADB的值。因而结束该询问过程。在不把由网络节点设备GW所转送的数据分组DP1′、DP2′也计算在内的情况下,对于根据该第一实施形式的询问过程来说,四个数据分组的交换是必要的。
图3B中示出了询问过程的第二实施形式。代替如在上一个实施例中所示出的那样互相独立地在每个方向上进行的数据交换,在不把由网络节点设备GW所转送的数据分组DP1′、DP2′也计算在内的情况下,在该实施例中仅仅交换两个数据分组DP1、DP2。
网络单元A为此在第一数据分组DP1的第一数据部分DATA1中已经插入目标信息DEST,即从网络单元A的角度看将该第一数据分组DP1发送到哪个地址,换而言之,发送到第二网络单元B的在第一网络区域DMA中有效的目标地址ADB。
网络单元B在接收时就已经可以使用该信息,以便获知它在第一网络区域DMA中拥有哪个地址ADB。
于是,网络单元B如在上述的实施例中那样将目标信息DEST、即该网络单元B以哪个地址ADA′看到网络单元A插入到应答消息DP2的数据部分DATA2中。
在第一网络单元A上接收到由网络节点设备GW以通常的方式修改的第二数据分组DP2′之后,两个网络单元A、B分别知道它们的“翻译后的”地址ADA′、ADB,因此知道地址ADA′、ADB,在相对的网络区域DMB、DMA中的分别另一个网络单元B;A以该地址ADA′、ADB对它们进行寻址。
图4展示了在询问过程之后可能的数据交换。随着了解在分别相对的网络区域DMB、DMA中的源地址ADA′;ADB,分别进行发送的网络单元A;B在所交换的数据分组DP1、DP1′;DP2、DP2′的数据部分DATA1;DATA2中将分别在另外的网络区域DMB;DMA中有效的地址ADA′;ADB用作源说明SRCE。此外,它的分别在另外的网络区域DMB;DMA中有效的地址ADA′;ADB的相应接收者A;B在与伙伴网络单元B;A通信时在所发送的数据分组的数据区域中不再(像以前那样)使用它的‘真正的’、即在它自己的网络区域DMA;DMB中有效的IP地址,而是使用由伙伴网络单元B;A已通知它的地址,即这样的地址,以该地址它在它的通信用户B;A处是已知的。
利用本发明方法能够实现在所谓的因特网电话中VoIP通信终端设备(‘Voice over Internet Protocol’)与NAT相结合的解决方案。首先从因特网电话中已知的是,如果IP地址基于因特网协议,则这些IP地址的翻译对于VoIP通信终端设备来说可能就是问题。
目前通用的诸如H.323或SIP的交换协议被规定传送IP分组的数据部分中的IP地址。因此总是当利用NAT工作的网络节点设备GW仅转换IP分组的报头HEAD中的IP地址、而不是数据部分DATA中的IP地址时,出现这种问题。
在根据图4的方法的一种实施形式中(其中那里的网络单元A、B应与voIP终端设备A、B等同),由根据标准H.225进行的通信的启动者在SETUP(建立)消息的所谓的‘用户-用户(user-user)’部分中通知所属的通信用户B、A,用哪个IP地址来应答他。因此该通信用户B、A获知,其以哪个IP地址在启动者处是可见的,而不必特意执行其它方式的‘NAT-Discovery’。相对地,该通信用户在‘ALERT’消息中或‘CONNECT’消息中的根据H.225的‘用户-用户’部分中通知该通信的启动者,该启动者以哪个IP地址是可见的。因此该启动者也可以节省其它方式的NAT-Discovery。
在应用难以确定它自己的IP地址的情况下,本方法除了其针对NAT情形的应用之外对于不使用NAT方法的情形来说也是有益的。例如在采用VPN客户(‘Virtual Private Network(虚拟专用网络)’)时,如果这些VPN客户不提供自己的所谓的‘虚拟适配器’,则情况如此。
想访问VPN客户的加密业务的应用不能使用‘物理适配器’的可容易访问的IP地址,而是必须访问VPN客户的IP地址。如果在所属的系统上不能通过标准API(‘应用编程接口’)来访问该IP地址,本发明方法则给应用呈现了通过在通信伙伴处的询问来获知它自己的地址的可能性。
权利要求
1.用于在网络单元之间进行数据交换的方法,具有布置在第一网络区域(DMA)中的具有在所述第一网络区域(DMA)中有效的地址(ADA)的第一网络单元(A),布置在第二网络区域(DMB)中的具有在所述第一网络区域(DMA)中有效的地址(ADB)的第二网络单元(B),布置在所述网络区域(DMA,DMB)之间的、用于把要发送的数据分组(DP)从所述第一网络单元(A)转送到所述第二网络单元(B)上的网络节点设备(GW),其中所述数据分组(DP)由表征区域(HEAD)和数据区域(DATA)组成,在所述数据分组(DP)的表征区域(HEAD)中进行由所述网络节点设备(GW)控制的表征要进行接收的网络单元(B)的目标地址(ADB)到在所述第二网络区域(DMB)中有效的目标地址(ADB′)的转换,其特征在于,由所述第一网络单元(A)将它的在所述数据分组(DP)的数据区域(DATA)中要说明的源地址作为所述第一网络单元的在所述第二网络区域(DMB)中有效的源地址(ADA′)在所述数据区域(DATA)中进行登记。
2.按照权利要求1的方法,其特征在于,由所述第一网络单元(A)将在所述数据分组(DP)的数据区域(DATA)中要说明的所述第二网络单元(B)的目标地址作为在所述第二网络区域(DMB)中有效的目标地址(ADB′)在所述数据区域(DATA)中进行登记。
3.按照权利要求1或2之一的方法,其特征在于,为了转送要从所述第二网络单元(B)发送到所述第一网络单元(A)上的数据分组(DP),由所述第二网络单元(B)将它的在所述数据分组(DP)的数据区域(DATA)中要说明的源地址作为所述第二网络单元的在所述第一网络区域(DMA)中有效的源地址(ADB)在所述数据区域(DATA)中进行登记。
4.按照以上权利要求之一的方法,其特征在于,为了转送要从所述第二网络单元(B)发送到所述第一网络单元(A)上的数据分组(DP),由所述第二网络单元(B)将在所述数据分组(DP)的数据区域(DATA)中要说明的所述第一网络单元(A)的目标地址作为在所述第一网络区域(DMB)中有效的目标地址(ADA)在所述数据区域(DATA)中进行登记。
5.按照以上权利要求之一的方法,其特征在于,所述网络单元(A;B)借助在所述数据交换之前进行的询问过程来确定它的分别在另外的网络区域(DMB;DMA)中有效的、要参与数据交换的网络单元(B;A)的源地址(ADA′;ADB)。
6.按照权利要求5的方法,其特征在于,所述询问过程包含以下步骤-由所述第一网络单元(A)利用在所述数据部分(DATA1)中包含的所述第二网络单元(B)的在所述第一网络区域(DMA)中有效的目标地址(ADB)发送询问消息(DP1,DP1′)到布置在所述第二网络区域(DMB)中的第二网络单元(B)上;-由所述第二网络单元(B)接收所述询问消息(DP1,DP1′),并且存储所述第二网络单元(B)的在所述第一网络区域(DMA)中有效的目标地址(ADB);-由所述第二网络单元(B)利用在所述数据部分(DATA2)中包含的所述第一网络单元(A)的在所述第二网络区域(DMB)中有效的目标地址(ADA′)发送应答消息(DP2,DP2′)到所述第一网络单元(A)上;以及-由所述第一网络单元(A)接收所述应答消息(DP2,DP2′),并且存储所述第二网络单元(B)的在所述第二网络区域(DMB)中有效的目标地址(ADA′)。
7.具有程序代码的计算机程序产品,当该计算机程序产品在分配给所述网络单元(A;B)的计算机单元上运行时,所述程序代码用于执行按照权利要求1至6之一的方法。
8.用于执行按照权利要求1至6之一的方法的网络单元。
9.按照权利要求8的网络单元,其特征在于,被布置作为面向分组地进行通信的通信终端设备。
全文摘要
本发明涉及一种用于在网络单元之间进行数据交换的方法,具有布置在第一网络区域(DMA)中的具有在第一网络区域(DMA)中有效的地址(ADA)的第一网络单元(A),布置在第二网络区域(DMB)中的具有在第一网络区域(DMA)中有效的地址(ADB)的第二网络单元(B),以及布置在所述网络区域(DMA,DMB)之间的、用于把要发送的数据分组(DP)从第一网络单元(A)转送到第二网络单元(B)上的网络节点设备(GW),其中所述数据分组(DP)由表征区域(HEAD)和数据区域(DATA)组成,并且在所述数据分组(DP)的表征区域(HEAD)中进行由网络节点设备(GW)控制的表征要接收的网络单元(B)的目标地址(ADB)到在第二网络区域(DMB)中有效的目标地址(MDB′)的转换。在此,由第一网络单元(A)将它的在所述数据分组(DP)的数据区域(DATA)中要说明的源地址作为第一网络单元的在第二网络区域(DMB)中有效的源地址(ADA′)在所述数据区域(DATA)中进行登记。
文档编号H04L29/08GK1788480SQ200480012811
公开日2006年6月14日 申请日期2004年3月5日 优先权日2003年5月12日
发明者O·魏茨 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1