CN1442984B - 通信设备、网络系统和地址转换器 - Google Patents
通信设备、网络系统和地址转换器 Download PDFInfo
- Publication number
- CN1442984B CN1442984B CN031051464A CN03105146A CN1442984B CN 1442984 B CN1442984 B CN 1442984B CN 031051464 A CN031051464 A CN 031051464A CN 03105146 A CN03105146 A CN 03105146A CN 1442984 B CN1442984 B CN 1442984B
- Authority
- CN
- China
- Prior art keywords
- address
- network
- terminal
- translator
- port
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2514—Translation of Internet protocol [IP] addresses between local and global IP addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/256—NAT traversal
- H04L61/2567—NAT traversal for reachability, e.g. inquiring the address of a correspondent behind a NAT server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/30—Managing network names, e.g. use of aliases or nicknames
- H04L61/301—Name conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/251—Translation of Internet protocol [IP] addresses between different IP versions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/30—Managing network names, e.g. use of aliases or nicknames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
Abstract
本发明涉及一种可以获得从全球地址网络到专用地址网络的访问的通信设备以及网络系统。地址转换器把唯一名称分配给属于专用地址网络的相应节点并管理唯一名称下的节点。如果有来自属于全球地址网络或另一个专用地址网络的某一节点对一个节点的询问,则地址转换器获得相应的专用地址并把所获得的专用地址通知给该节点。与相应专用地址网络相关联地提供专用地址网络的DNS服务器,这些DNS服务器不属于全球地址网络上的DNS服务器的树结构,并且这些DNS服务器可以从全球地址网络访问。因此,通过全球地址网络可以实现专用地址的名称解析。
Description
技术领域
本发明涉及一种通信设备和网络系统,更具体地,所涉及的通信设备和网络系统具有:全球地址网络,网络中的节点具有各自的唯一地址;专用地址网络,具有不唯一的地址;以及地址转换器,用于转换地址以便在全球地址网络和专用地址网络之间发送数据。
背景技术
用于互联网通信的IP地址处于国际管理下。要建立互联网通信的用户需要具有IP地址(也称做正式IP地址,下面称之为全球IP地址)和域名,其中IP地址和域名在互联网上是唯一的,并由国际组织(统一控制IP地址)或该国际组织委托的管理组织(在日本为日本网络信息中心(JPNIC)或作为其执行代理的提供商)分配和登记。因此,没有获得全球IP地址的任何人不能够,也不应该建立互联网通信。
在诸如LAN(局域)的不进行互联网通信的网络上,用户可以使用任何希望的IP地址(在下面将非全球IP地址的IP地址称做非正式IP地址)。根据由IETF(国际工程任务组)(建立互联网技术标准的组织)提供的RFC(请求注解),建议一个没有连接到互联网的LAN上的终端的IP地址具有一个能够识别其为非全球IP地址的数字(即,下面称为专用IP地址的非正式地址),以便如果错误地把该具有专用IP地址的终端连接到互联网将不会出现问题(如下面详细描述的)。
近年来,随着互联网通信的快速发展,未分配的全球IP地址已经快用完了,导致有可能不能满足在需要大量的IP地址的诸如公司和本地政府的网络上分配全球IP地址的需要。为了防止全球IP地址的短缺,通常在公司的LAN中使用专用IP地址(或非正式IP地址)并使用全球IP地址以与外部网络进行互联网通信。
鉴于LAN(专用网络)数量的快速增加和互联网通信的广泛使用,急需把仅为了实现LAN内连接而已经建立在专用IP地址上的LAN连接到同样已经建立在专用IP地址上的其他网络。但是,这些需要面临如下问题:专用IP地址包括一个分配有一个固定数字的网络号,因此具有相对较小范围的可用数字来用做专用IP地址自身。由于该原因,不同网络可能共享一个专用IP地址。当可能共享一个专用IP地址的不同网络被直接互连而没有全球互联网作为中介时,希望不对分配到各个终端的专用IP地址和设置在处理地址的服务器上的数据进行变更。因此,需要一种IP地址转换装置,该装置可以在不需要变更已投入服务的不同网络环境的情况下,把使用唯一专用IP地址的不同网络进行互连。
(1)IP地址的结构:
如现有技术所公知地,遵循TCP/IP协议的、用于互联网通信的IP地址由32位组成,该32位被分配成用于识别网络的地址部分(下面称为一个网络号)和用于识别网络中的单个主机(终端)的地址部分(下面称为一个主机号)。一些公司网络是具有大量主机的大规模网络,并且大量分别具有少量主机的网络(本地网)位于广泛的地理区域中。因此,构成网络号的数字数量依据网络的规模和结构变化。在网络中使用的术语“类(class)”表示在分配给网络的网络号中使用了多少数字。
图21示出了不同类中IP地址的结构,即,A类、B类和C类。如图21所示,A类中的IP地址包括第一位“0”、表示网络号的随后7位(在图21和其他附图中被表示为NW号),和表示主机号的其余24位。图21中圆括号中的数值表示在网络号和主机号中使用的位数。B类中的IP地址包括前2位“10”(二进制符号)、表示网络号的随后14位和表示主机号的其余16位。C类中的IP地址包括前3位“111”(二进制符号)、表示网络号的随后21位和表示主机号的其余8位。在下面不对诸如D类,E类的其余类地址进行详细讨论。
如图21所示,可以把24位分配给A类的主机号。实际上,一般不会任意地把主机号分配给网络中的终端,而通常进一步把网络分层为子网。把IP地址中被分配到子网的部分称做子网号。子网号表示成主机号 的一部分。图21中示出了主机号和子网号之间的关系。网络中包含的子网数和分配给每个子网的子网号的位数是可选的。但是,通常把一个8位单元分配给子网号,如图21所示。
通常把32位IP地址划分成4个8位组,即,由逗号分隔的4个数,以十进制符号表示这4个数中的每一个。这4个十进制数中的每一个,即,在一个8位单元中的数被称为一个数字。以十进制符号代表一个类的一位或多位的数值和代表网络号或部分网络号的多位的数值(共同组成IP地址的第一个8位)。图22示出了根据上述IP地址表示方案的各类IP地址中使用的数值范围。在A类中,由于第一位为“0”,所以第一个数字在“0”到“127”(实际范围是从“0”到“126”)的数值范围内。除非另外指定,下面以十进制符号表示数字的数值。
在B类中,由于前2位是根据二进制符号的“10”,所以第一个数字在“128”到“191”的数值范围内。在C类中,第一个数字在“192到223”的数值范围内,而不是“192”到“255”的范围,因为还有D类(前4位是根据二进制符号的“1110”)和E类(前5位是根据二进制符号的“11110”)。除了第一个数字以外的3个数字中的每一个都位于可以被用做网络号或主机号(子网号)的“0”到“255”的数字范围中。如图22的右侧所示,每类IP地址可以由根据十进制符号的“10.H.H.H”(对于A类)表示。“H”代表主机号,并用一个从0到255范围内的数表示。因此,IP地址的第一个数字中的数值可以识别该IP地址的类。
全球IP地址和专用IP地址都可以采用上述IP地址结构。由IETF提供的RFC1597建议使用能够被识别为不是全球IP地址的专用IP地址。附图23示出了根据RFC1597的专用IP地址的数值。在图23中,带阴影的数值范围可以用于专用IP地址。例如,限定A类的专用IP地址中的第一个数字为根据十进制符号的“10”,并且如图23所示,限定B、C类的专用地址中的第一个和下一个数字中使用的数值。在C类中,由于专用IP地址的前2个数字中的每个都被限定为一个数值,所以可以任意使用的网络号和主机号的数量都是256个。
不同网络使用相同地址的可能性受到网络中主机数量的很大影响,并且不能确定这种可能性对某一类IP地址而言会高于其他类IP地址。但是,由于任何类的专用IP地址包含某些不能被自由使用的数值,所以可用做专用IP地址的数值选择范围比较窄,导致不同网络使用相同专用IP地址的可能性增加。结果,当在具有唯一分配的专用IP地址的两个网络间进行通信时,用户应认识到在网络中可能出现相同地址。
(2)把具有专用IP地址的终端连接到互联网的处理
下面对在使用专用IP地址的两个不同网络上的终端之间建立连接的常规处理进行说明。根据该常规处理,通过全球互联网把使用专用IP地址的网络连接到另一个网络以进行网络间通信。在日本特许公布9-233112中披露了该常规处理,并假设上述公布中披露的终端是具有全球IP地址的终端(包括服务器)对该常规处理进行说明。
附图24以框图形式示出了上述公布的图1所示的互联网络环境,并根据该公布增加了一些对其的说明。该公布中描述的术语“正式IP地址”与本说明书中引用的术语“全球IP地址”相同。在图24的说明中,根据该公布中说明使用术语“正式IP地址”。该公布中描述的术语“非正式IP地址”与本说明书中的术语“非正式IP地址”(意义比专用IP地址更宽泛)相同,并使用于图24的说明中。
仅把非正式IP地址分配给图24所示的专用网络202上的相应终端225。如果参考单个终端225,可以将其描述为终端A。假设终端A被连接到专用网络202外部的服务器205(此后称为服务器S)。
作为发送源的终端A知道发送目的地(即,服务器S)的域名,并基于该服务器S的域名(假设为“ftp.out.co.jp”)查询其IP地址。根据通过连接到互联网络201的路由器203(下面称做路由器N)的一个已知处理,连接到终端A的路由器224(下面称为路由器K),向互联网络201询问具有上述域名的终端(包括服务器)的IP地址。结果,互联网络201应答具有上述域名的服务器S的非正式IP地址,假设为“150.96.10.1”并缩写为“IP-D”。
如果假设没有地址转换器204,并且路由器N通过路由器K把非正式IP地址“150.96.10.1”发送到终端A,则终端A随后将发送把目的地址设定为上述IP地址的分组。但是,在图24所示例子中,由于专用网络202上的终端B恰好具有与上述地址IP-D相同的非正式IP地址,如果终端A设定目的地址到“150.96.10.1”,则分组可能会从终端A发送到终端B。
为了解决上述问题,如图24所示,在专用网络202和路由器N之间连接地址转换器204来转换地址。特别地,当地址转换器204从终端A接收一个包含服务器S的域名作为目的地址的IP分组时,地址转换器204向互联网络201询问服务器S的IP地址,并选择一个非正式IP地址,假设为“159.99.30.1”并缩写成“IP-C”,(该地址仅在专用网络202中作为服务器S的非正式地址是有效的,并且目前在专用网络202中没有使用该地址),并把选定的非正式IP地址“IP-C”发送到终端A。终端A随后将发送在目的地IP地址中设定了所选定的非正式IP地址“IP-C”的分组。
当从互联网络201应答服务器S的非正式IP地址“150.96.10.1”以响应上述询问时,根据非正式IP地址“IP-D”和正式IP地址“IP-C”之间的关联的存储数据,地址转换器204把从终端A发送的分组中的目的地IP地址“IP-C”转换成“IP-D”,并把具有转换的IP地址“IP-D”的分组发送到互联网络201。
分配一个非正式IP地址给终端A,假设该地址为“154.100.10.1”并缩写为“IP-A”。从而终端A在要发送的分组中把源地址设定为“IP-A”。由于非正式IP地址在互联网络201中是无效的,所以地址转换器204根据一个已知处理为终端A获得一个正式IP地址(假设为“150.47.1.1”并缩写为“IP-E”),并存储非正式IP地址“IP-A”和正式IP地址“IP-E”之间的关联数据。随后,地址转换器204把从终端A发送的分组的源IP地址中设定的“IP-A”转换成“IP-E”,并发送具有转换的IP地址“IP-E”(作为源地址)的分组。
当要把分组从服务器S发送到终端A时,服务器S设定终端A的正式IP地址“IP-E”作为分组中的目的地IP地址。地址转换器204把从服务器S接收到的分组中的目的地址“IP-E”转换成“IP-A”,并把具有转换的 地址“IP-A”的分组发送到专用网络202。因此,即使专用网络202包括具有与目的地的正式IP地址“IP-E”相同的非正式IP地址的终端225,也不会把分组发送到该终端225。
(3)转换IP地址的方法:
结合一个连接程序,上面已经对一个使用专用IP地址的网络(专用网络)上的终端在连接到互联网时转换地址的常规处理进行了描述。下面将说明转换IP地址的常规方法。
在上述示例中,使用地址转换器来转换地址。一种已知的一般地址转换处理是为路由器或防火墙服务器加入一种称为NAT(网络地址转换)或IP伪码(masquerade)(或多NAT)的功能。
NAT:首先,下面对NAT进行说明。NAT指RFC1631中描述的地址转换处理,是一种用于转换专用IP地址和全球IP地址的功能。许多廉价路由器具有NAT功能作为其特征之一。附图25说明了NAT功能,并示出了使用IP地址的网络结构和模型。在图25中,假设连接到专用网络(下面称为LAN)320的多个终端321(如果提到某一个终端也被称为终端A等)分配有所示的相应专用IP地址。
如果连接到LAN320并具有专用IP地址“10.1.1.10”的终端A要建立互联网通信,或具体地,要通过全球网络(互联网)380连接到另一个网络(未示出)上的终端,则终端A从路由器310获得一个在互联网上使用的全球IP地址,即,“20.1.1.10”。
路由器310具有NAT功能,把终端A的专用IP地址“10.1.1.10”转换成在互联网上使用的全球IP地址“20.1.1.10”,并且也把从互联网上发送的分组中设定为目的地址的全球IP地址“20.1.1.10”转换成专用IP地址“10.1.1.10”,并把具有专用IP地址“10.1.1.10”的那些分组发送到终端A。因此,在图25所示例子中,全球IP地址“20.1.1.10”和专用IP地址“10.1.1.10”相互关联。上述参考图24的转换IP地址的方法可以作为一种使用NAT功能的方法。
分配全球IP地址以进行互联网连接的处理被称为终端拨号接入。由于根据本处理,只有要建立连接的终端使用全球IP地址,所以LAN320 上的多个终端321可以共享一个全球IP地址。但是,因为能够由一个LAN320同时使用的全球IP地址的数量是由与JPNIC或其执行代理(互联网服务提供商等)协商预先确定的,所以LAN320上超过可用的全球IP地址数量的终端不能同时连接到互联网上。此外,由于LAN320上的多个终端321共享这些全球IP地址,无法从互联网对一个全球IP地址(例如,“20.1.1.10”)设定一个目的地址以指定LAN320上的某一个终端。
IP伪码(多NAT):下面对IP伪码(也称为多NAT)进行说明。IP伪码与NAT类似,不同之处在于NAT转换专用IP地址和全球IP地址,即,仅转换IP地址,而IP伪码利用一个端口号进行地址转换。如现有技术已知的,IP地址在OSI参考模型的第三层中,并根据RFC791在一个IP首部中设定目的地址和源地址。把一个端口分配给OSI参考模型的第五层(最高层)中的应用兼容性(application compatibility),并由IP层(第三层)之上的第四层中的TCP协议设定端口号。因此,端口号不设在IP首部中。端口号由各个主机(终端)局部分配。那些在已知端口号的情况下才能初始处理的应用服务所使用的端口号被固定为某些端口号。
附图26和27说明了IP伪码。图26示出了使用IP地址的网络结构和模型,并且图27以举例的方式示出了专用IP地址和全球IP地址之间的关联。在图26所示的例子中,把所示的相应专用IP地址分配给连接到专用网络(下面称为LAN)420的多个终端421(如果提到某一个终端也称为终端A等)。图26也示出了由相应的终端421使用的应用的部分中使用的端口号。由于把一个端口号分配给应用兼容性,所以在一个终端通常中设定多个端口号。但是,在图26中,端口号“23”被固定分配给Telnet(一种在所有的终端421中使用的应用程序),并在终端E中使用固定分配给FTP(文件传输协议)的端口号“21”。
根据IP伪码,多个终端421共享一个全球IP地址(或指定数量的全球IP地址),并结合该全球IP地址设定能够识别这些终端的端口号。例如,把全球IP地址“20.1.1.10”分配给所有的终端A到E以进行互联网连接,并且把相应的各个端口号分配给终端421的专用IP地址和端口号(对应于应用类型)的组合。图27示出了包括端口号的专用IP地址和全 球IP地址之间的关联。在图27所示的例子中,如果使用Telnet作为应用程序,则把用于在互联网上使用的端口号“100”分配给终端A,把端口号“101”分配给终端B,把端口号“102”分配给终端C,把端口号“103”分配给终端D,以及把端口号“104”分配给终端E。如果在终端E中还使用FTP作为应用程序,则把端口号“104”分配给Telnet(终端上的端口号“23”)并把端口号“105”分配给FTP(终端上的端口号“21”)。
如上所述,根据常规NAT和IP伪码,仅实现了从具有专用地址的终端到具有全球地址的终端的单向通信,但不能获得从具有全球地址的终端到具有专用地址的终端的访问,也不能在两个具有专用地址的网络之间进行通信。为了实现这种访问和通信,必须获得新的全球地址并将其分配到具有专用地址的终端,从而需要程序上的操作和开支。
既然由于如下技术缺陷仅能提供单向通信服务,所以NAT和IP伪码同样存在问题:
1.由于多个专用地址网络使用分别重叠的地址空间,所以无法统一那些专用地址网络上的终端。
2.基于DNS结构的当前域名解析处理没有提供从全球地址网络中获得专用地址网络上的终端的IP地址的方法。
3.全球地址网络的路由器无法处理专用地址的路由信息。所以,由于没有从专用地址网络到全球地址网络的IP路由而不能建立TCP连接。
发明内容
因此本发明的一个目的是提供一种通信设备和网络系统,可以实现到具有一个专用地址的终端的通信。
为了实现上述目的,根据本发明提供一种通信设备,该设备属于第一网络并具有第二网络,该第一网络由分别具有第一类型地址的通信设备组成,该第二网络由通信设备控制的、分别具有第二类型地址的终端组成。该通信设备包括:管理装置,用于与提供给另一个通信设备名称相 关联地管理提供给属于由另一个通信设备控制的网络终端的名称,和响应装置,响应于从终端之一接收到提供给与其通信的终端的名称,以把地址解析请求输出到由管理装置确定的相应通信设备。
为了实现上述目的,根据本发明还提供一种网络系统,该系统具有:第一网络,由分别具有第一类型地址的通信设备组成;和第二网络,由通信设备控制的、分别具有第二类型地址的终端组成。通信设备包括:第一管理装置,用于与提供给终端的名称相关联地对所控制的终端的地址进行管理;和第二管理装置,用于与管理终端地址的通信设备相关联地管理终端名称,该第二管理装置包括响应装置,响应于来自其控制的终端的通信请求,以确定另一个通信设备来解析与之通信的终端的地址;第一装置包括用于解析另一个通信设备中的地址的装置。
附图说明
结合以举例方式示出本发明的优选实施例的附图,从下面的说明中更好地理解本发明的上述以及其他目的、特征和优点。
图1是本发明的实施例的原理示意图;
图2是路由器的详细方框图;
图3是描述用于获得从专用网络上的终端A到专用网络上的终端B的访问所执行的名称解析处理的信号流程图;
图4示出了在通信目的地专用网络名称解析服务器寄存器中寄存的信息的格式;
图5是建立TCP连接的处理的信号流程图;
图6是建立TCP连接的处理的信号流程图;
图7示出了在通信目的地终端·网关IP地址/端口保存器(holder)中寄存的条目的格式;
图8是使用TCP连接来发送分组的处理的信号流程图;
图9是在完成TCP连接时把双向通信改变为单向通信的处理的信号流程图;
图10是在完成TCP连接时完成单向通信的处理的信号流程图;
图11是中断连接时恢复路由器A和路由器B之间连接的处理的信号流程图;
图12是中断连接时恢复路由器B和终端C之间连接的处理的信号流程图;
图13是执行名称解析处理时路由器A中的处理序列的流程图;
图14和15是建立TCP连接的处理的流程图;
图16是利用由图14和15所示的处理建立的TCP连接来发送分组的处理的流程图;
图17和18是完成TCP连接时由路由器A和路由器B执行的处理的流程图;
图19是中断TCP连接时恢复TCP连接的处理的流程图;
图20是中断连接时恢复路由器B和终端C之间连接的处理的流程图;
图21示出了不同类的IP地址的结构;
图22示出了不同类的IP地址中使用的数值范围;
图23示出了根据RFC1597提供的专用IP地址的数值;
图24是日本特许公布9-233112的图1所示的互联网环境的方框图,并根据本公布增加了一些描述;
图25是NAT功能的说明图;
图26示出了在IP伪码中使用IP地址的网络结构和模型;以及
图27以举例的方式示出了IP伪码中的专用IP地址和全球IP地址之间的关联。
具体实施方式
下面参考附图,对本发明的实施例进行说明。根据本发明,例如,通信设备指诸如路由器之类的节点,第一类型地址指全球地址,第二类型地址指专用地址。
图1是本发明的实施例的原理示意图。如图1所示,本发明的实施例包括多个终端A至D,一对路由器A、B和DNS服务器。
通过路由器A,终端A、B互相连接,构成专用地址网络。把专用地址192.168.0.1分配给终端A。把专用地址192.168.0.2分配给终端B。
路由器A在终端A、B之间发送分组,并且如果是通过全球地址网络发送分组则转换地址。把全球地址34.56.10.4分配给路由器A。
DNS服务器具有表示节点的IP地址和其名称(主机名称)之间关联的数据库。为了响应来自节点的询问,DNS服务器搜索数据库,并把结果发送到节点。如果来自节点的询问是关于不由DNS服务器管理的域的主机的询问,则DNS服务器把该询问发送到更高层的DNS服务器(未示出),并把结果发送到该节点。
路由器B在终端C、D之间发送分组,并且如果是通过全球地址网络发送分组则转换地址。把全球地址15.23.1.2和主机名称swan.mbb.nif.com分配给路由器B。
通过路由器B,终端C、D互相连接,构成专用地址网络。把专用地址192.168.0.2和主机名称PC-B.home-a.com分配给终端C。主机名称PC-B.home-a.com是一个FQDN(正式域名)。
图2是路由器A、B中每一个的详细方框图。如图2所示,路由器A、B均包括:IP单元10、TCP单元11、名称解析器12、专用网络目的地名称解析确定单元13、通信目的地专用网络名称解析服务器寄存器14、虚拟IP地址池单元15、通信目的地终端·网关IP地址/端口保存器16、分组发送单元17、分组发送TCP连接管理器18和通信目的地终端地址/端口协商器19。通信装置20和控制台21作为外部单元被连接到路由器A、B中的每一个。
IP单元10用于在两个节点之间发送和接收TCP分组。即,IP单元10在由IP地址识别的两个节点之间发送TCP分组。IP单元10具有一个可接收IP地址保存器10a,用来保存允许被接收的IP地址的列表。
TCP单元11建立作为在两个应用之间进行通信的协议的连接。具体地,TCP单元11最初在应用之间建立连接,然后利用所建立的连接来进行双向通信。TCP单元11具有用来改变接收端口的接收端口变更器11a。
如果基于DNS提出一个名称解析请求,则名称解析器12执行一个名称解析处理。
专用网络目的地名称解析确定单元13检查通信目的地专用网络名称解析服务器寄存器14中是否有被询问者地址的条目,并执行名称解析处理。
通信目的地专用网络名称解析服务器寄存器14存储关于用于专用网络的名称解析服务器的信息。
虚拟IP地址池单元15保存一定数量的虚拟IP地址以用于与专用网络上的节点进行通信。
通信目的地终端·网关IP地址/端口保存器16寄存那些在接收终端和发送终端间发送和接收数据时所需的节点的IP地址和虚拟IP地址,作为其条目。
分组发送单元17执行发送分组所需的处理。
分组发送TCP连接管理器18根据来自分组发送单元17的指示建立连接。
通信目的地终端地址/端口协商器19生成并发送一个通知消息和一个ACK消息。
通信装置20是一个包括传输路径的物理层。通信装置20把IP单元10提供的分组转换成电信号,并发送该电信号。通信装置20也把另一个节点发送的分组转换成电信号,并把该电信号提供给IP单元10。
控制台21是一个用于在通信目的地专用网络名称解析服务器寄存器14中寄存信息的接口。
下面对上述本发明的实施例的操作进行说明。
首先,结合图3对用于获得从专用网络上的终端A到专用网络上的终端C的访问的名称解析处理进行说明。
起初,图3所示数据通过控制台21被寄存在路由器A的通信目的地专用网络名称解析服务器寄存器14中。具体地,如图3所示的信息“_.home-a.com∥swan.mbb.nif.com”被寄存在通信目的地专用网络名称解析服务器寄存器14中。如图4所示,所寄存的信息包括一个请求解析 的名称和解析被询问者的名称解析服务器的组合。在所示例子中,“_.home-a.com”表示请求解析的名称,“swan.mbb.nif.com”表示解析被询问者的名称解析服务器。“_”代表通配符,表示一个可选字符或字符串。
然后,终端A把一个关于PC-B.home-a.com的DNS询问发送到路由器A以询问哪一个是终端C的主机名称(参见图3)。路由器A通过通信装置20、IP单元10和TCP单元11接收DNS询问,并通过名称解析发送/接收端口把DNS询问提供给名称解析器12。
名称解析器12把DNS询问发送到专用网络目的地名称解析确定单元13。专用网络目的地名称解析确定单元13搜索通信目的地专用网络名称解析服务器寄存器14中的条目,并确认是否有与该DNS询问相对应的条目。如果有,则专用网络目的地名称解析确定单元13把关于该条目的信息发送到名称解析器12。如果没有,则专用网络目的地名称解析确定单元13指示名称解析器12执行普通的名称解析处理。
如果接到指示,名称解析器12就执行普通的名称解析处理。否则的话,名称解析器12参考关于该条目的信息,并识别解析被询问者的名称解析服务器。在所示例子中,由于解析被询问者的名称解析服务器的主机名称是“swan.mbb.nif.com”并与路由器B对应,所以名称解析器12把关于“swan.mbb.nif.com”的DNS询问发送到DNS服务器以获得对应于主机名称“swan.mbb.nif.com”的地址,如图3所示。结果,DNS服务器把DNS应答“15.23.1.2”发送到服务器A,其现在知道了路由器B的地址。
接收到该地址后,专用网络目的地名称解析确定单元13把关于“PC-B.home-a.com”的DNS询问发送到作为一个具有地址“15.23.1.2”的节点的路由器B,以询问终端C(接收终端)的IP地址。
路由器B把唯一名称分配给其控制的终端C、D并管理终端C、D。为了响应DNS询问,路由器B搜索与主机名称对应的IP地址,并把该IP地址发送到路由器A。在所示例子中,路由器B获得终端C的IP地址“192.168.0.2”并把DNS应答“192.168.0.2”发送到路由器A。
把获得的终端C的IP地址提供给专用网络目的地名称解析确定单元13。然后专用网络目的地名称解析确定单元13从虚拟IP地址池单元15获得一个虚拟IP地址,并从虚拟IP地址池单元15中删除所获得的虚拟IP地址,以便防止该获得的虚拟IP地址被用于其他通信中。在所示例子中,专用网络目的地名称解析确定单元13从虚拟IP地址池单元15获得一个虚拟地址“10.0.0.1”,并从虚拟IP地址池单元15删除该虚拟地址“10001”。
然后,专用网络目的地名称解析确定单元13把获得的虚拟IP地址“10.0.0.1”作为对名称解析请求的应答发送到终端A。专用网络目的地名称解析确定单元13发送虚拟IP地址“10.0.0.1”而不是终端C的专用地址“192.168.0.2”,这是因为专用地址可能会在不同的专用网络间互相重叠。根据本实施例,为了防止专用地址的互相重叠,使用由路由器A控制的专用地址(即,与C类的专用地址不同的A类的专用地址)作为虚拟IP地址。
因此,使用通常在互联网上不使用的A类的专用地址作为虚拟IP地址。
然后,专用网络目的地名称解析确定单元13把IP地址“10.0.0.1”作为可以接收的地址寄存在可接收IP地址保存器10a中。结果,允许接收具有作为目的地址的IP地址“10.0.0.1”的分组。
然后,专用网络目的地名称解析确定单元13把作为接收终端的终端C、路由器A、路由器B和作为发送终端的终端A的IP地址作为条目,寄存在通信目的地终端·网关IP地址/端口保存器16中。具体地,如图3所示,把“192.168.0.2∥34.56.10.4:??;15.23.1.2:??∥192.168.0.1:??;10.0.0.1:??∥x”作为条目寄存在通信目的地终端·网关IP地址/端口保存器16中。在该条目中,由下面描述的处理确定的端口号被寄存在IP地址后的“??”部分中,并且“x”代表通信许可标志,如果不允许通信,则寄存“x”作为通信许可标志。如果允许通信,则寄存“○”作为通信许可标志。
下面结合图5对建立TCP连接的处理进行说明。
为了建立到终端C的端口23的TCP连接,终端A把TCP SYN消息发送到路由器A的IP地址10.0.0.1的端口23。如图5所示,源地址是192.168.0.1:Y(SRC=192.168.0.1:YY)。
由于路由器A的IP单元10在可接收IP地址保存器10a中保存IP地址10.0.0.1,所以路由器A接收该分组并通过TCP单元11把接收到的分组提供给分组发送单元17。
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16并获得一个与IP地址10.0.0.1相对应的条目。该条目表示:IP地址10.0.0.1是一个经其路由选择到地址15.23.1.2的路由选择点,所有的端口信息是未确定的,并且通信许可标志被关闭。因此,分组发送单元17检测到只完成了用于该连接的名称解析处理。
然后分组发送单元17指示分组发送TCP连接管理器18通过地址15.23.1.2来建立到地址192.168.0.2的TCP连接。
分组发送单元17把SYN消息中包含的源端口地址(YY)和目的地端口地址(23)附加到通信目的地终端·网关IP地址/端口保存器16中的对应条目中。
分组发送TCP连接管理器18通过TCP单元11建立一个到地址15.23.1.2的端口XX的TCP连接。具体地,分组发送TCP连接管理器18把TCP SYN消息发送到路由器B的地址10.0.0.1的端口23(SRC=192.168.0.1:YY)。结果,路由器B把“SYN+ACK”返回到分组发送TCP连接管理器18,后者把“ACK”发送到路由器B。“XX“表示分配到当前处理的任意固定端口值。结果,在路由器B和路由器A之间建立了TCP连接。
然后,分组发送TCP连接管理器18把与路由器B建立的连接寄存在通信目的地终端·网关IP地址/端口保存器16中。具体地,分组发送TCP连接管理器18把代表TCP的源端口和目的地端口的WW和XX寄存在通信目的地终端·网关IP地址/端口保存器16中。结果,把上述条目中的“??”改变为相应的端口。
然后,分组发送TCP连接管理器18指示通信目的地终端地址/端口协商器19把表示“地址192.168.0.2的端口23”的通知消息(MSG)从端口WW的TCP连接发送到地址15.23.1.2的端口XX。
通信目的地终端地址/端口协商器19生成表示地址192.168.0.2的端口23的通知消息,并把该生成的通知消息发送到路由器B。结果,如图5所示,把通知消息发送到路由器B。
路由器B的TCP单元11把通过端口XX接收的通知消息提供给分组发送单元17。由于提供的消息是从发送端口WW发送的、不同于SYN、ACK的第一分组,所以分组发送单元17把该消息作为通知消息并将之发送到分组发送TCP连接管理器18。
然后分组发送TCP连接管理器18建立由该通知消息指示的地址和端口号(地址192.168.0.2的端口23)之间的TCP连接。具体地,分组发送TCP连接管理器18把TCP SYN消息发送到终端C的地址192.168.0.2的端口23(SRC=192.168.0.1:YY)。结果,终端C把“SYN+ACK”返回到分组发送TCP连接管理器18,后者把“ACK”发送到终端C。最终在终端C和路由器B之间建立TCP连接。
当在终端C和路由器B之间建立TCP连接时,路由器B请求通信目的地终端地址/端口协商器19把一个ACK消息返回到路由器A,作为对该通知消息的响应。
通信目的地终端地址/端口协商器19把一个ACK消息发送到路由器A,该ACK消息表示完成了到终端C(192.168.0.2)的端口23的连接。
然后,通信目的地终端地址/端口协商器19把关于新建立连接的地址信息和端口信息存储在通信目的地终端·网关IP地址/端口保存器16中。具体地,通信目的地终端地址/端口协商器19在通信目的地终端·网关IP地址/端口保存器16中写入一个条目,该条目具有新建立连接的目的地址和端口(192.168.0.2:23)以及源地址和端口(10.0.0.1:ZZ),用于发送了通知消息的TCP连接的源地址和端口(34.56.10.4:WW)以及目的地址和端口(15.23.1.2:XX),以及打开的通信许可标志。
然后,通信目的地终端地址/端口协商器19通知分组发送TCP连接管理器18:通过从地址15.23.1.2的端口XX到地址34.56.10.4的端口WW的TCP连接,已经建立了到地址192.168.0.2的端口23的连接。
分组发送TCP连接管理器18利用“34.56.10.4:WW;15.23.1.2:XX”作为关键字来搜索通信目的地终端·网关IP地址/端口保存器16,并获得相应的条目。通过参考所获得的条目中包含的信息(参见图6),分组发送TCP连接管理器18基于发送来的ACK消息检测到:到终端A的连接在地址192.168.0.1:YY和地址10.0.0.1:23之间。
分组发送TCP连接管理器18通过TCP单元11,在地址192.168.0.1:YY和地址10.0.0.1:23之间建立连接。具体地,分组把TCP连接管理器18把“SYN+ACK”发送到终端A,并接收从终端A返回的“ACK”作为对“SYN+ACK”的响应。最终在终端A和路由器A之间建立连接(参见图6)。
最后,分组发送TCP连接管理器18把通信目的地终端·网关IP地址/端口保存器16中寄存的条目“192.168.0.2∥34.56.10.4:WW;15.23.1.2:XX∥192.168.0.1:YY;10.0.0.1:23∥x”中的通信许可标志从关闭状态(X)改变成打开状态(○)(参见图6)。
如图7所示,通信目的地终端·网关IP地址/端口保存器16中寄存的条目包括:接收终端、变更后的源IP地址、变更后的源端口、变更后的目的地IP地址、变更后的目的地端口、变更前的源IP地址、变更前的源端口、变更前的目的地IP地址、变更前的目的地端口、和通信许可标志。
“接收终端”表示终端C的IP地址(192.168.0.2),并代表仅由在互联网上建立TCP连接的路由器保存的信息。
“变更后的源IP地址”和“变更后的源端口”表示地址改变后的源IP地址和源端口号。在所示例子中,他们对应于路由器A的IP地址34.56.10.4和端口号WW。
“变更后的目的地IP地址”和“变更后的目的地端口”表示地址改变后的目的地IP地址和目的地端口号。在所示例子中,他们对应于路由器B的IP地址15.23.1.2和端口号XX。
“变更前的源IP地址”和“变更前的源端口”表示地址改变前的源IP地址和源端口号。在所示例子中,他们对应于路由器A的IP地址192.168.0.1和端口号YY。
“变更前的目的地IP地址”和“变更前的目的地端口”表示地址改变前的目的地IP地址和目的地端口号。在所示例子中,他们对应于虚拟IP地址10.0.0.1和端口号23。
“通信许可标志”代表的信息表示对该条目是否允许通信。如果对该条目允许通信,则把通信许可标志设定为“○”。如果对该条目不允许通信,则把通信许可标志设定为“X”。如果对该条目允许单向通信,则把通信许可标志设定为“△”。
下面结合图8,对利用已经由上述处理建立的TCP连接来发送分组的处理进行说明。
终端A把具有表示目的地10.0.0.1:23和源192.168.0.1:YY的首部的分组(到10.0.0.1:23(SRC=192.168.0.1:YY)的TCP数据)发送到路由器A。路由器A接收从终端A发送的分组。
由于路由器A的IP单元10在可接收IP地址保存器10a中保存地址10.0.0.1:23,IP单元10接收该分组,并通过TCP单元11把接收到的分组发送到分组发送单元17。
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,并从中获得一个相应的条目。在所示例子中,分组发送单元17获得图8所示的条目“192.168.0.2∥34.56.10.4:WW;15.23.1.2:XX∥192.168.0.1:YY;10.0.0.1:23∥○”。分组发送单元17参考该条目中包含的信息,把表示分组首部中包含的目的地IP地址和端口信息的10.0.0.1:23转换成15.23.1.2:XX,同时把表示源IP地址和端口信息的192.168.0.1:YY转换成34.56.10.4:WW。分组发送单元17对分组中的数据报不进行转换。
分组发送单元17通过TCP单元11,把已经转换了其首部的分组发送到路由器B。
路由器B接收到从路由器A发送的分组,通过端口XX读取该分组,并把该分组提供给路由器B的分组发送单元17。
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,并从中获得对应于所接收分组的条目,即,“NULL∥10.0.0.1:ZZ;192.168.0.2:23∥34.56.10.4:WW;15.23.1.2:XX∥○”。分组发送单元17参考获得的条目中包含的信息,把表示分组首部中包含的目的地IP地址和端口信息的15.23.1.2:XX转换成192.168.0.2:23,同时把表示源IP地址和端口信息的192.168.0.1:YY转换成10.0.0.1:ZZ。分组发送单元17对分组中的数据报不进行转换,并通过TCP单元11,把已经转换了其首部的分组发送到终端C。
结果,从终端A发送的分组到达属于专用地址网络的终端C。
然后,终端C生成一个分组作为对所接收分组的响应,设定该分组的目的地IP地址和端口为10.0.0.1:ZZ以及源IP地址和端口为192.168.0.2:23,并发送该分组。使用目的地IP地址10.0.0.1:ZZ以防止把该分组错误地发送到终端C所属的专用地址网络上的另一个节点。
从终端C发送的分组被路由器B接收,并被提供给路由器B的IP单元10。由于终端C的IP单元10在可接收IP地址保存器10a中保存地址10.0.0.1:ZZ,所以IP单元10接收该分组,并通过TCP单元11把接收到的分组发送到分组发送单元17。
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,并从中获得相应的条目。在所示例子中,分组发送单元17获得图8所示的条目“NULL∥10.0.0.1:ZZ/192.168.0.2:23∥34.56.10.4:WW;15.23.1.2:XX∥○”。分组发送单元17参考条目中包含的信息,把表示分组首部中包含的目的地IP地址和端口信息的10.0.0.1:ZZ转换成34.56.10.4:WW,同时把表示源IP地址和端口信息的192.168.0.2:23转换成15.23.1.2:XX。分组发送单元17对分组中的数据报不进行转换。
分组发送单元17通过TCP单元11把已经转换了其首部的分组发送到路由器A。
路由器A接收到从路由器B发送的分组,通过端口WW读取该分组,并把该分组提供给路由器A的分组发送单元17。
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,并从中获得对应于接收到的分组的条目,即,条目“192.168.0.2∥34.56.10.4:WW;15.23.1.2:XX∥192.168.0.1:YY;10.0.0.1:23∥○”。分组发送单元17参考获得的条目中包含的信息,把表示分组首部中包含的目的地IP地址和端口信息的34.56.10.4:WW转换成192.168.0.1:YY,同时把表示源IP地址和端口信息的15.23.1.2:XX转换成10.0.0.1:23。分组发送单元17对分组中的数据报不进行转换,并通过TCP单元11,把已经转换了其首部的分组发送到终端A。
结果,从终端C发送的分组到达属于专用地址网络的终端A。
根据上述处理,可以在属于相应的专用地址网络的终端A和终端C之间发送和接收分组。
下面结合图9和10,对用于结束TCP连接所执行的处理进行说明。
首先,结合图9对把双向通信改变为单向通信的处理进行说明。
当终端A把用于结束TCP连接的TCP FIN消息发送到地址10.0.0.1的端口23(SRC=192.168.0.1:YY)时,路由器A通过端口23接收该TCPFIN消息。
由于接收到的分组首部中包含的目的地址10.0.0.1被存储在可接收IP地址保存器10a中,路由器A的IP单元10判断该接收的分组为可接收分组,并通过TCP单元11把该分组提供给分组发送单元17。
分组发送单元17通知分组发送TCP连接管理器18:FIN消息来自其目的地IP地址和端口信息由10.0.0.1:23表示以及其源IP地址和端口信息由192.168.0.1:YY表示的TCP连接。
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,把表示目的地IP地址和端口信息的10.0.0.1:23转换成15.23.1.2:XX,同时把表示源IP地址和端口信息的192.168.0.1:YY转换成34.56.10.4:WW。 分组发送单元17对分组中的数据报不进行转换,并通过TCP单元11把已经转换了其首部的分组发送到路由器B。
当已经发送该分组时,路由器A的分组发送TCP连接管理器18搜索通信目的地终端·网关IP地址/端口保存器16,并等待用于响应来自其目的地IP地址和端口信息由34.56.10.4:WW表示以及其源IP地址和端口信息由15.23.1.2:XX表示的连接的FIN消息而返回的ACK消息。
路由器B通过端口XX接收从路由器A发送的分组,并把该接收的分组提供给分组发送单元17。
分组发送单元17通知分组发送TCP连接管理器18:FIN消息来自其目的地IP地址和端口信息由15.23.1.2:XX表示以及其源IP地址和端口信息由34.56.10.4:WW表示的TCP连接。
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,把表示目的地IP地址和端口信息的15.23.1.2:XX转换成192.168.0.2:23,同时把表示源IP地址和端口信息的34.56.10.4:WW转换成10.0.0.1:ZZ。分组发送单元17对分组中的数据报不进行转换,并通过TCP单元11把已经转换了其首部的分组发送到终端C。
分组发送TCP连接管理器18搜索通信目的地终端·网关IP地址/端口保存器16,并等待用于响应来自其目的地IP地址和端口信息由10.0.0.1:ZZ表示以及其源IP地址和端口信息由192.168.0.2:23表示的连接的FIN消息而返回的ACK消息。
然后,终端C接收到从路由器B发送的FIN消息,并把作为响应的TCP ACK消息发送到地址10.0.0.1的端口ZZ(SRC=192.168.0.2:23)。
路由器B通过端口ZZ接收从终端C发送的分组,并把该接收的分组提供给分组发送单元17。
分组发送单元17通知分组发送TCP连接管理器18:ACK消息来自其目的地IP地址和端口信息由10.0.0.1:ZZ表示以及其源IP地址和端口信息由192.168.0.2:23表示的TCP连接。
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,把表示目的地IP地址和端口信息的10.0.0.1:ZZ转换成34.56.10.4:WW, 同时把表示源IP地址和端口信息的192.168.0.2:23转换成15.23.1.2:XX。分组发送单元17对分组中的数据报不进行转换,并通过TCP单元11把已经转换了其首部的分组发送到终端A。
分组发送TCP连接管理器18把通信目的地终端·网关IP地址/端口保存器16中存储的相应条目“NULL∥10.0.0.1:ZZ/192.168.0.2:23∥34.56.10.4:WW;15.23.1.2:XX∥○”中的通信许可标志,从表示通信许可的“○”变更为表示单向通信的“△”。
结果,在终端C和路由器B之间的连接变为单向连接。
路由器A通过端口WW接收从路由器B发送的分组,并把接收到的分组提供给分组发送单元17。
分组发送单元17通知分组发送TCP连接管理器18:ACK消息来自其目的地IP地址和端口信息由34.56.10.4:WW表示以及其源IP地址和端口信息由15.23.1.2:XX表示的TCP连接。
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,把表示目的地IP地址和端口信息的34.56.10.4:WW转换成192.168.0.1:YY,同时把表示源IP地址和端口信息的15.23.1.2:XX转换成10.0.0.1:23。分组发送单元17对分组中的数据报不进行转换,并通过TCP单元11把已经转换了其首部的分组发送到终端A。
分组发送TCP连接管理器18把通信目的地终端·网关IP地址/端口保存器16中存储的相应条目“192.168.0.2∥34.56.10.4:WW;15.23.1.2:XX∥192.168.0.1:YY;10.0.0.1:23∥○”中的通信许可标志,从表示通信许可的“○”变更为表示单向通信的“△”。
结果,路由器B和路由器A之间以及路由器A和终端A之间的连接变为单向连接。
下面结合图10对结束来自单向通信的TCP连接的处理进行说明。
当终端C把用于结束TCP连接的TCP FIN消息发送到地址10.0.0.1的端口ZZ(SRC=192.168.0.2:23)时,路由器B通过端口ZZ接收该TCPFIN消息。
由于接收到的分组的首部中包含的目的地址10.0.0.1被存储在可接收IP地址保存器10a中,路由器B的IP单元10判断该接收的分组为可接收分组,并通过TCP单元11把该分组提供给分组发送单元17。
分组发送单元17通知分组发送TCP连接管理器18:FIN消息来自其目的地IP地址和端口信息由10.0.0.1:ZZ表示以及其源IP地址和端口信息由192.168.0.2:23表示的TCP连接。
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,把表示目的地IP地址和端口信息的10.0.0.1:ZZ转换成34.56.10.4:WW,同时把表示源IP地址和端口信息的192.168.0.2:23转换成15.23.1.2:XX。分组发送单元17对分组中的数据报不进行转换,并通过TCP单元11,把已经转换了其首部的分组发送到路由器A。
当发送了该分组时,路由器B的分组发送TCP连接管理器18搜索通信目的地终端·网关IP地址/端口保存器16,并等待用于响应来自其目的地IP地址和端口信息由15.23.1.2:XX表示以及其源IP地址和端口信息由34.56.10.4:WW表示的连接的FIN消息而返回的ACK消息。
路由器A通过端口WW接收从路由器B发送的分组,并把该接收到的分组提供给分组发送单元17。
路由器A的分组发送单元17通知分组发送TCP连接管理器18:FIN消息来自其目的地IP地址和端口信息由34.56.10.4:WW表示以及其源IP地址和端口信息由15.23.1.2:XX表示的TCP连接。
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,把表示目的地IP地址和端口信息的34.56.10.4:WW转换成192.168.0.1:YY,同时把表示源IP地址和端口信息的15.23.1.2:XX转换成10.0.0.1:23。分组发送单元17对分组中的数据报不进行转换,并通过TCP单元11把已经转换了其首部的分组发送到终端A。
分组发送TCP连接管理器18搜索通信目的地终端·网关IP地址/端口保存器16,并等待用于响应来自其目的地IP地址和端口信息由10.0.0.1:23表示以及其源IP地址和端口信息由192.168.0.1:YY表示的连接的FIN消息而返回的ACK消息。
当路由器A把TCP ACK消息发送到地址10.0.0.1的端口23(SRC=192.168.0.1:YY)以响应该FIN消息时,路由器A接收该TCPACK消息,并将其提供给分组发送单元17。
分组发送单元17通知分组发送TCP连接管理器18:ACK消息来自其目的地IP地址和端口信息由10.0.0.1:23表示以及其源IP地址和端口信息由192.168.0.1:YY表示的TCP连接。
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,把表示目的地IP地址和端口信息的10.0.0.1:23转换成15.23.1.2:XX,同时把表示源IP地址和端口信息的192.168.0.1:YY转换成34.56.10.4:WW。分组发送单元17对分组中的数据报不进行转换,并通过TCP单元11把已经转换了其首部的分组发送到路由器B。
然后分组发送TCP连接管理器18删除通信目的地终端·网关IP地址/端口保存器16中存储的相应条目“192.168.0.2∥34.56.10.4:WW;15.23.1.2:XX∥192.168.0.1:YY;10.0.0.1:23∥△”。
结果,终端A和路由器A之间的连接从单向连接变更为关闭连接(closed connection)。路由器A的分组发送TCP连接管理器18还通知可接收IP地址保存器10a停止接收作为条目中变更前的目的地IP地址的虚拟地址,即,10.0.0.1,并把该虚拟地址返回到虚拟IP地址池单元15。
路由器B通过端口XX接收从路由器A发送的分组,并把该接收到的分组提供给分组发送单元17。
分组发送单元17通知分组发送TCP连接管理器18:ACK消息来自其目的地IP地址和端口信息由15.23.1.2:XX表示以及其源IP地址和端口信息由34.56.10.4:WW表示的TCP连接。
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,把表示目的地IP地址和端口信息的15.23.1.2:XX转换成192.168.0.2:23,同时把表示源IP地址和端口信息的34.56.10.4:WW转换成10.0.0.1:ZZ。分组发送单元17对分组中的数据报不进行转换,并通过TCP单元11把已经转换了其首部的分组发送到终端C。
然后分组发送TCP连接管理器18删除通信目的地终端·网关IP地址/端口保存器16中存储的相应条目“192.168.0.2∥34.56.10.4:WW;15.23.1.2:XX∥192.168.0.1:YY;10.0.0.1:23∥△”。
结束,终端C和路由器B之间以及路由器B和路由器A之间的连接从单向连接变更为关闭连接。路由器A的分组发送TCP连接管理器18还通知可接收IP地址保存器10a停止接收作为条目中变更后的目的地IP地址的虚拟地址,即,10.0.0.1,并把该虚拟地址返回到虚拟IP地址池单元15。
根据上述处理,可以结束已经建立的连接。
下面结合图11和12,对中断连接时在路由器A和路由器B之间恢复连接的处理进行说明。
图11示出了在中断连接时恢复路由器A和路由器B之间连接的处理。
如图11所示,当中断路由器A和路由器B之间连接时,路由器A的TCP单元11和路由器B的TCP单元11检测到该连接中断。
已经检测到该连接中断的路由器A的TCP单元11把中断连接的两端(路由器A和路由器B)的IP地址和端口号通知给分组发送TCP连接管理器18。
路由器A的分组发送TCP连接管理器18利用从TCP单元11接收的数据作为关键字,来搜索通信目的地终端·网关IP地址/端口保存器16,并关闭来自该搜索结果的条目中的通信许可标志。由于“接收终端”字段不是NULL,分组发送TCP连接管理器18识别到其路由器A是一个已经在其上建立TCP的节点,并指示TCP单元11在其自己与路由器B的端口XX之间建立TCP连接。
结果,TCP单元11把TCP SYN消息发送到地址15.23.1.2的端口XX(SRC=34.56.10.4:VV),以便建立到路由器B的连接。
此时,路由器B的分组发送TCP连接管理器18利用从TCP单元11接收的数据作为关键字,来搜索通信目的地终端·网关IP地址/端口保存器16,并关闭来自该搜索结果的条目中的通信许可标志。由于“接收终端”字段不是NULL,分组发送TCP连接管理器18识别到其路由器B不是 一个已经在其上建立TCP的节点,并等待来自路由器A的连接的重新建立。
当路由器A发送的SYN消息到达路由器B时,路由器B把一个“SYN+ACK”消息发送到路由器A。路由器A返回一个ACK消息,从而重新建立路由器A和路由器B之间的连接。
当重新建立路由器A和路由器B之间的连接时,路由器A以与上述相同的方式把一个通知消息发送到路由器B。
当接收到通知消息时,路由器B发送一个ACK消息作为响应,把通信目的地终端·网关IP地址/端口保存器16中的相应条目中变更前的源端口号重写为新的端口号(VV),并打开通信许可标志。
路由器A接收该ACK消息,把通信目的地终端·网关IP地址/端口保存器16中的相应条目中变更前的源端口号重写为新的端口号(VV),并打开通信许可标志。
根据上述处理,可以在路由器A和路由器B之间的连接中断时进行重新建立并继续通信。
下面结合图12对路由器B和终端C之间的连接中断时的恢复连接处理进行说明。
如果由于一些原因中断了路由器B和终端C之间的连接,则路由器B的TCP单元11对连接的中断进行检测。
路由器B的TCP单元11把中断连接的两端(路由器B和终端C)的IP地址和端口号通知给分组发送TCP连接管理器18。
路由器B的分组发送TCP连接管理器18利用从TCP单元11接收的数据作为关键字,来搜索通信目的地终端·网关IP地址/端口保存器16,并关闭来自该搜索结果的条目中的“通信许可标志”。分组发送TCP连接管理器18指示TCP单元11在其自己与终端C的端口23之间建立TCP连接。
结果,路由器B把一个TCP SYN消息发送到终端C的地址192.168.0.2的端口23(SRC=10.0.0.1:UU)。
终端C接收到该TCP SYN消息,并把一个“SYN+ACK”消息发送到路由器B作为响应。
从终端C接收了“SYN+ACK”消息后,路由器B把一个ACK消息发送到终端C,把通信目的地终端·网关IP地址/端口保存器16中的相应条目中变更后的源端口号改变为新端口号(UU),并打开通信许可标志。
根据上述处理,可以恢复路由器B和终端C之间由于一些原因而中断的连接,以便继续通信。如果由于一些原因而中断了路由器A和终端A之间的TCP连接,则进行相同的恢复处理。
最后,参考流程图对上述实施例中执行的处理进行说明。
图13是在进行图12所示的名称解析处理时路由器A中的处理序列流程图。当名称解析请求到达路由器A时执行图13所示的处理序列。在该处理序列中假设到达路由器A的名称解析请求为“PC-B.home.com”。
步骤S10:
名称解析器12通过通信装置20、IP单元10、和TCP单元11,接收到从终端A发送的名称解析请求“PC-B.home.com”。
步骤S11:
名称解析器12把该名称解析请求发送到专用网络目的地名称解析确定单元13。
步骤S12:
专用网络目的地名称解析确定单元13搜索通信目的地专用网络名称解析服务器寄存器14,以确定是否寄存了与被询问者地址相对应的条目。如果寄存了与被询问者的地址相对应的条目,则处理进行到步骤S14。否则的话,处理进行到步骤S13。
步骤S13:
名称解析器12把该名称解析请求作为一个普通的名称解析请求进行处理。
步骤S14:
专用网络目的地名称解析确定单元13指示名称解析器12,把关于路由器B(swan.mbb.nif.com)的IP地址的询问发送到全球网络上的某一个DNS服务器。
步骤S15:
专用网络目的地名称解析确定单元13通过通信装置20、IP单元10、TCP单元11和名称解析器12,接收到从DNS服务器返回的询问结果(15.23.1.2)。
步骤S16:
专用网络目的地名称解析确定单元13指示名称解析器12,把关于接收终端B(PC-B.home-a.com)的IP地址的询问发送到地址15.23.1.2(路由器B)。
步骤S17:
专用网络目的地名称解析确定单元13通过通信装置20、IP单元10、TCP单元11和名称解析器12,接收到从路由器B返回的询问结果(192.168.0.2)。
步骤S18:
专用网络目的地名称解析确定单元13从虚拟IP地址池单元15中选择一个可选的虚拟IP地址(例如,10.0.0.1),并从虚拟IP地址池单元15中删除选定的虚拟IP地址。
步骤S19:
专用网络目的地名称解析确定单元13把虚拟IP地址(例如,10.0.0.1)作为名称解析请求的应答发送到终端A。
步骤S20:
专用网络目的地名称解析确定单元13指示可接收IP地址保存器10a,从专用网络接收一个具有作为目的地址的虚拟IP地址的分组。
步骤S21:
专用网络目的地名称解析确定单元13在通信目的地终端·网关IP地址/端口保存器16中寄存终端B、路由器A、路由器B和终端A的IP地址,作为一个条目。把通信许可标志设定为关闭状态。
下面结合图14和15,对建立TCP连接的处理进行说明。首先,参考图14说明该处理。在该处理中假设在路由器A和路由器B之间建立TCP连 接。当来自终端A的、其目的地IP地址由10.0.0.1表示以及其目的地端口由23表示的TCP SYN消息到达路由器A时,进行下面的步骤:
步骤S30:
路由器A的IP单元10参考可接收IP地址保存器10a,接收该分组(因为IP地址10.0.0.1被寄存在可接收IP地址保存器10a中),并通过TCP单元11把该分组提供给分组发送单元17。
步骤S31:
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16以寻找一个发送该分组的路由选择节点。具体地,分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,并检测到IP地址10.0.0.1是经其路由选择到IP地址15.23.1.2的路由选择点。由于所有的端口信息都没有登录,所以关闭通信许可标志,分组发送单元17检测到仅结束了名称解析处理。
步骤S32:
分组发送单元17指示分组发送TCP连接管理器18在IP地址15.23.1.2和IP地址192.168.0.2之间建立TCP连接。
步骤S33:
分组发送TCP连接管理器18在路由器A和IP地址15.23.1.2的端口XX之间建立TCP连接。结果,结合步骤S40中的处理,在路由器B和路由器A之间建立连接。
步骤S34:
分组发送TCP连接管理器18把关于步骤S33中建立的连接的TCP源和目的地端口(WW,XX)写入通信目的地终端·网关IP地址/端口保存器16中的相应条目。
步骤S35:
分组发送TCP连接管理器18指示通信目的地终端地址/端口协商器19,把关于地址192.168.0.2的端口23的通知消息从端口WW的TCP连接发送到地址15.23.1.2的端口XX。
步骤S36:
然后通信目的地终端地址/端口协商器19把关于地址192.168.0.2的端口23的通知消息从端口WW的TCP连接发送到地址15.23.1.2的端口XX。
步骤S40:
根据步骤S33中的处理,在路由器B中也建立了TCP连接。
步骤S41:
TCP单元11把通过端口XX接收到的通知消息提供给分组发送单元17。由于所提供的消息是从发送端口WW发送的不同于SYN、ACK的第一分组,分组发送单元17认为该消息是通知消息,并把该消息发送到分组发送TCP连接管理器18。
步骤S42:
然后分组发送TCP连接管理器18在由通知消息指示的地址和端口(地址192.168.0.2的端口23)之间建立TCP连接。
步骤S43:
分组发送TCP连接管理器18指示通信目的地终端地址/端口协商器19把TCP SYN消息发送到地址34.56.10.4的端口WW。通信目的地终端地址/端口协商器19通过已经建立的TCP连接来发送该SYN消息。
步骤S44:
通信目的地终端地址/端口协商器19在通信目的地终端·网关IP地址/端口保存器16中写入一个条目,该条目具有所建立的TCP连接的目的地址和端口(192.168.0.2:23)和源地址和端口(10.0.0.1:ZZ),经其已经发送通知消息的TCP连接的源地址和端口(34.56.10.4:WW)和目的地址和端口(15.23.1.2:XX),和一个打开的通信许可标志。然后处理进入图15所示的支路(1)。
结合图15对处理进行说明。
步骤S50:
通信目的地终端地址/端口协商器19通知分组发送TCP连接管理器18:通过从地址15.23.1.2的端口XX到端口WW的TCP连接建立了到地址192.168.0.2的端口23的连接。
步骤S51:
分组发送TCP连接管理器18利用“34.56.10.4/WW;15.23.1.2:XX”作为关键字,来搜索通信目的地终端·网关IP地址/端口保存器16,并检测出到发送终端的TCP连接在地址192.168.0.1:YY和地址10.0.0.1.23之间。
步骤S52:
分组发送TCP连接管理器18通过TCP单元11,在地址192.168.0.1:YY和地址10.0.0.1.23之间建立一个TCP连接。
步骤S53:
分组发送TCP连接管理器18把条目“192.168.0.2∥34.56.10.4:WW;15.23.1.2:XX∥192.168.0.1:YY;10.0.0.1:23∥X”的通信许可标志改变为打开状态。
根据上述处理,在路由器A和路由器B之间建立TCP连接。
下面结合图16对利用所建立的TCP连接来发送分组的处理进行说明。通过举例,下面对在路由器A和路由器B之间发送分组的处理进行说明。
步骤S60:
其目的地址为10.0.0.1以及其目的地端口为23的TCP DATA分组从终端A到达路由器A。
步骤S61:
由于地址10.0.0.1被寄存在可接收IP地址保存器10a中,所以路由器A的IP单元10接收该分组并通过TCP单元11把该分组发送到分组发送单元17。
步骤S62:
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,把表示目的地IP地址和端口信息的10.0.0.1:23转换成15.23.1.2:XX,同时把表示源IP地址和端口信息的192.168.0.1:YY转换成34.56.10.4:WW。分组发送单元17对分组中的数据报不进行转换。
步骤S63:
分组发送单元17通过TCP单元11发送已经转换了其地址的分组。
步骤S70:
来自路由器A的TCP DATA分组到达路由器B的端口XX。
步骤S71:
路由器B的TCP单元11接收到已经到达端口XX的DATA分组,并把该DATA分组发送到数据发送单元17。
步骤S72:
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,把表示目的地IP地址和端口信息的15.23.1.2:XX转换成192.168.0.2:23,同时把表示源IP地址和端口信息的192.168.0.1:YY转换成10.0.0.1:ZZ。分组发送单元17对分组中的数据报不进行转换。
步骤S73:
分组发送单元17通过TCP单元11,把已经转换了其地址的分组发送到PC-B.home-a.com(终端C)。
根据上述处理,利用TCP连接可以发送该分组。
下面结合图17和18,对结束TCP连接时由路由器A和路由器B执行的处理进行说明。首先,结合图17说明该处理。
步骤S80:
其目的地址为10.0.0.1以及其目的地端口为23的TCP FIN分组从终端A到达路由器A。
步骤S81:
由于地址10.0.0.1被寄存在可接收IP地址保存器10a中,路由器A的IP单元10接收该分组并通过TCP单元11把该分组发送到分组发送单元17。然后,同时执行步骤S83中的处理和步骤S82中的处理。
步骤S82:
分组发送TCP连接管理器18搜索通信目的地终端·网关IP地址/端口保存器16,并确定是否从其目的地IP地址和端口信息表示为34.56.10.4:WW以及其源IP地址和端口信息表示为15.23.1.2:XX的连接中接收到响应于FIN分组的ACK消息。如果接收到该ACK消息,则处理进行到图18中的支路(2)。否则的话,重复步骤S82的处理。
步骤S83:
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,把表示目的地IP地址和端口信息的10.0.0.1:23转换成15.23.1.2:XX,同时把表示源IP地址和端口信息的192.168.0.1:YY转换成34.56.10.4:WW。分组发送单元17对分组中的数据报不进行转换,并通过TCP单元11把该分组发送到路由器B。
步骤S90:
TCP FIN分组从路由器A到达路由器B的端口XX。
步骤S91:
TCP单元11把通过端口XX接收到的FIN分组发送到分组发送单元17。分组发送单元17通知分组发送TCP连接管理器18:该FIN分组来自其目的地IP地址和端口信息表示为15.23.1.2:XX以及其源IP地址和端口信息表示为34.56.10.4:WW的TCP连接。然后,分组发送单元17同时执行步骤S92中的处理和步骤S93中的处理。
步骤S92:
分组发送TCP连接管理器18搜索通信目的地终端·网关IP地址/端口保存器16,并确定是否从其目的地IP地址和端口信息表示为10.0.0.1:ZZ以及其源IP地址和端口信息表示为192.168.0.2:23的连接中接收到响应于FIN分组的ACK消息。如果接收到该ACK消息,则处理进行到图18中的支路(3)。否则的话,重复步骤S92的处理。
步骤S93:
分组发送单元17搜索通信目的地终端·网关IP地址/端口保存器16,把表示目的地IP地址和端口信息的15.23.1.2:XX转换成192.168.0.2:23,同时把表示源IP地址和端口信息的34.56.10.4:WW转换成10.0.0.1:ZZ。分组发送单元17对分组中的数据报不进行转换,并通过TCP单元11把该分组发送到PC-B.home-a.com。
下面结合图18说明该处理。
步骤S100:
以与路由器B中相同的操作(即,下面要描述的步骤S110至S117),发送ACK分组并变更或删除通信目的地终端·网关IP地址/端口保存器16中的条目。
步骤S110:
ACK分组到达路由器B。
步骤S111:
由于ACK分组中包含的地址10.0.0.1被寄存在可接收IP地址保存器10a中,所以路由器B的IP单元10接收该ACK分组,并通过TCP单元11把该ACK分组发送到分组发送单元17。
步骤S112:
分组发送单元17通知分组发送TCP连接管理器18:该ACK分组来自其目的地IP地址和端口信息表示为10.0.0.1:ZZ以及其源IP地址和端口信息表示为192.168.0.2:23的TCP连接。
步骤S113:
分组发送TCP连接管理器18识别到该ACK分组为图17所示步骤S92中所等待的ACK分组。分组发送TCP连接管理器18搜索通信目的地终端·网关IP地址/端口保存器16,并确定相应条目中的通信许可标志是(○),还是表示单向连接的(△),如果通信许可标志表示单向连接则处理进入步骤S114。否则的话,处理进入步骤S116。
步骤S114:
根据已经描述的处理把ACK分组发送到路由器B。
步骤S115:
分组发送TCP连接管理器18删除通信目的地终端·网关IP地址/端口保存器16中存储的相应条目。同时,分组发送TCP连接管理器18通知可接收IP地址保存器10a停止接收作为条目中变更后的目的地IP地址的虚拟地址,并把该虚拟地址返回到虚拟IP地址池单元15。
步骤S116:
根据已经描述的处理把ACK分组发送到路由器B。
步骤S117:
分组发送TCP连接管理器18把通信目的地终端·网关IP地址/端口保存器16中存储的通信许可标志改变为一个表示单向连接的值。
根据上述处理,可以结束TCP连接。
下面结合图19对中断TCP连接时恢复TCP连接进行说明。通过举例,下面对中断路由器A和路由器B之间的TCP连接时恢复该TCP连接的处理进行说明。
步骤S120:
路由器A的TCP单元11检测到路由器A和路由器B之间的TCP连接被中断。
步骤S121:
路由器A的TCP单元11把中断连接的两端(路由器A和路由器B)的IP地址和端口号通知给分组发送TCP连接管理器18。
步骤S122:
路由器A的分组发送TCP连接管理器18利用从TCP单元11接收到的数据作为关键字,来搜索通信目的地终端·网关IP地址/端口保存器16,并关闭来自该搜索结果的条目中的通信许可标志。
步骤S123:
由于“目的地终端”字段不是NULL,所以路由器A的分组发送TCP连接管理器18指示TCP单元11在其自身与路由器B的端口XX之间建立TCP连接。
步骤S124:
路由器A根据已经描述的处理发送通知消息。
步骤S125:
路由器A根据已经描述的处理接收ACK消息。
步骤S126:
分组发送TCP连接管理器18把条目中变更后的源端口号重写为新的端口号(VV)。
步骤S127:
分组发送单元17打开通信许可标志。
步骤S130:
路由器B的TCP单元11检测到路由器B和路由器A之间的TCP连接被中断。
步骤S131:
路由器B的TCP单元11把中断连接的两端(路由器A和路由器B)的IP地址和端口号通知给分组发送TCP连接管理器18。
步骤S132:
路由器B的分组发送TCP连接管理器18利用从TCP单元11接收到的数据作为关键字,来搜索通信目的地终端·网关IP地址/端口保存器16,并关闭来自该搜索结果的条目中的通信许可标志。
步骤S133:
由于“目的地终端”字段不是NULL,所以路由器B的分组发送TCP连接管理器18等待来自路由器A的连接的重新建立。
步骤S134:
路由器B接收到步骤S124中发送的通知消息。
步骤S135:
路由器B根据已经描述的处理,发送一个ACK消息以响应该通知消息。
步骤S136:
分组发送TCP连接管理器18把通信目的地终端·网关IP地址/端口保存器16中的相应条目中变更前的源端口号重写为新的端口号(VV)。
步骤S137:
分组发送TCP连接管理器18打开通信目的地终端·网关IP地址/端口保存器16的相应条目中的通信许可标志。
根据上述处理,可以在路由器A和路由器B之间的TCP连接中断时恢复该连接。
下面结合图20,对路由器B和终端C之间的连接中断时的恢复处理进行说明。
步骤S140:
路由器B的TCP单元11检测到路由器B和终端C之间的TCP连接被中断。
步骤S141:
路由器B的TCP单元11把中断连接的两端(路由器B和终端C)的IP地址和端口号通知给分组发送TCP连接管理器18。
步骤S142:
路由器B的分组发送TCP连接管理器18利用从TCP单元11接收到的数据作为关键字,来搜索通信目的地终端·网关IP地址/端口保存器16,并关闭来自该搜索结果的条目中的通信许可标志。
步骤S143:
路由器B的分组发送TCP连接管理器18指示在其自身与终端C的端口23之间建立TCP连接。结果,请求建立该TCP连接。
步骤S144:
路由器B的分组发送TCP连接管理器18变更通信目的地终端·网关IP地址/端口保存器16中的相应条目,即,把源端口号重写为新的端口号(UU)。
路由器B的分组发送TCP连接管理器18打开通信目的地终端·网关IP地址/端口保存器16中的相应条目中的通信许可标志。结果,在路由器B和终端C之间建立TCP连接。
根据上述处理,可以在中断路由器B和终端C之间的TCP连接时恢复该连接。
如上所述,根据本发明,由于把一个唯一FQDN(正式域名:由主机名、点和域名等组成的主机名,例如“www.fts.com”)分配给专用地址网络上的终端,所以不管该终端属于专用地址网络还是全球地址网络都可以具有一个唯一识别符。结果,尽管专用地址网络使用相互重叠的地址空间,也可以统一那些专用地址网络上的终端。
此外,根据本发明,与专用地址网络相关联地提供用于相应专用地址网络的DNS服务器,这些DNS服务器不属于全球地址网络上的DNS服 务器的树结构,并可以从全球地址网络对其进行访问。因此,通过全球地址网络可以实现专用地址的名称解析。
此外,根据本发明,通过一个位于专用地址网络和全球地址网络之间的边界上的路由器(地址转换器),分别建立专用地址网络中的TCP连接和全球地址网络中TCP连接,并且该路由器在TCP连接之间映射(即,交换)信息,从而可以实现从全球地址网络到专用地址网络的TCP连接。
如上所述,根据本发明,提供一种属于第一网络并具有第二网络的通信设备,该第一网络是由分别具有第一类型地址的通信设备组成的,该第二网络是由通信设备的控制并分别具有第二类型地址的终端组成的,该通信设备包括:管理装置,用于与提供给另一个通信设备的名称相关联地管理提供给属于由另一个通信设备控制的网络的终端的名称;响应装置,响应于从终端之一接收到的提供给与其进行通信的终端的名称,以把一个地址解析请求输出到由管理装置确定的相应通信设备。通过这种设置,不管终端属于专用地址网络还是全球地址网络都可以为其分配一个唯一标识符。
如上所述,根据本发明也提供了一种网络系统,具有第一网络和第二网络,该第一网络由分别具有第一类型地址的通信设备组成,该第二网络由通信设备控制的并分别具有第二类型地址的终端组成,通信设备包括:第一管理装置,用于与提供给通信设备所控制的终端的名称相关联地管理终端的地址;第二管理装置,用于与管理终端地址的通信设备相关联地管理终端名称,第二管理装置包括响应于来自通信设备控制的终端的通信请求的装置,用于确定另一个通信设备以解析与其通信的终端的地址,第一装置包括用于解析另一个通信设备中的地址的装置。通过这种设置,可以为终端分配唯一的标识符并基于该唯一标识符进行通信。
如上所述,根据本发明进一步提供了一种网络系统,该系统包括:包括具有各自唯一地址的节点的全球地址网络,具有不唯一地址的专用地址网络,和地址转换器,用于转换地址以在全球地址网络和专用地址 网络之间发送数据;该地址转换器包括:用于为专用地址网络的各个节点分配并管理唯一名称的装置;和响应于来自属于全球地址网络或另一个专用地址网络的节点的有关名称的询问的装置,用于获得并指示一个相应的专用地址。不管每个节点属于专用地址网络或全球地址网络都可以具有一个唯一的标识符。
根据本发明,还提供一种网络系统,该系统包括:包括具有各自唯一地址的节点的全球地址网络,具有不唯一地址的专用地址网络,用于转换全球地址网络中的地址的第一地址转换器,和用于在专用地址网络与全球地址网络之间转换地址的第二地址转换器;第一地址转换器和第二地址转换器具有用于建立相互独立的连接并相互交换有关连接信息的装置,以便在全球地址网络和专用地址网络之间发送和接收数据。因此,可以建立从全球地址网络到专用地址网络的连接。
上述仅为本发明的原理。此外,由于本领域的技术人员会做出大量的修正和改变,所以不应把发明严格限定为上述结构和应用,因此,所有适当的修改和等同物被认为落入权利要求及其等同物的范围内。
Claims (11)
1.一种通信设备,该通信设备属于第一网络并具有第二网络,该第一网络由分别具有全球地址的多个所述通信设备组成,该第二网络由所述通信设备控制的并分别具有专用地址的终端组成,所述通信设备包括:
第一存储装置,该第一存储装置用于与提供给多个所述通信设备中的另一个通信设备的名称相关联地存储被提供给属于由所述另一个通信设备所控制的网络的终端的名称的一部分;
专用网络目的地名称解析确定单元,该专用网络目的地名称解析确定单元响应于从终端之一接收到的提供给与其通信的终端的名称,从所述第一存储装置中搜索与该接收到的名称相对应的通信设备;以及
名称解析器,该名称解析器用于从一服务器中获得搜索到的通信设备的地址,所述服务器具有表示通信设备的地址和名称之间的关联性的数据的数据库,
其中,所述专用网络目的地名称解析确定单元把一个地址解析请求输出到具有从所述服务器获得的地址的通信设备,从具有从所述服务器获得的地址的所述通信设备接收对应于接收到的名称的终端的地址,从虚拟地址池单元获得虚拟地址,从所述虚拟地址池单元中删除所获得的虚拟地址,并且将所获得的虚拟地址发送到所述终端之一。
2.根据权利要求1所述的通信设备,其中,所述专用网络目的地名称解析确定单元将所获得的虚拟地址与从具有从所述服务器获得的地址的所述通信设备接收的地址相关联地登记到第二存储装置,并且
该通信设备进一步包括:
分组发送单元,如果从所述终端之一接收到具有所获得的虚拟地址的分组,则所述分组发送单元将所接收到的虚拟地址转换为存储在所述第二存储装置中的对应地址。
3.一种网络系统,该网络系统包括:包括各自具有唯一地址的节点的全球地址网络,包括各自具有不唯一地址的节点的第一专用地址网络,和第一地址转换器,该地址转换器用于转换地址以在全球地址网络和第一专用地址网络之间发送数据;所述第一地址转换器包括:用于为所述第一专用地址网络的各个节点分配并管理唯一名称的装置,和响应于来自属于所述全球地址网络或另一个专用地址网络的节点的有关名称的询问的装置,其用于获得并指示一个相应的专用地址,
所述网络系统进一步包括第二地址转换器,所述第二地址转换器用于转换地址以在所述全球地址网络与第二地址网络之间发送数据,所述第二地址转换器包括:
第一存储装置,该第一存储装置用于与提供给所述第一地址转换器和所述第二地址转换器中的另一个地址转换器的名称相关联地存储被提供给属于由所述另一个地址转换器所控制的专用网络的节点的名称的一部分;
专用网络目的地名称解析确定单元,该专用网络目的地名称解析确定单元响应于从属于所述专用网络中的另一个的节点之一接收到提供给与其通信的节点的名称,从所述第一存储装置中搜索与该接收到的名称相对应的地址转换器;以及
名称解析器,该名称解析器用于从一服务器中获得搜索到的地址转换器的地址,所述服务器具有表示地址转换器的地址和名称之间的关联性的数据的数据库,
其中,所述专用网络目的地名称解析确定单元把一个地址解析请求输出到具有从所述服务器获得的地址的地址转换器,从具有从所述服务器获得的地址的所述地址转换器接收对应于接收到的名称的节点的地址,从虚拟地址池单元获得虚拟地址,从所述虚拟地址池单元中删除所获得的虚拟地址,并且将所获得的虚拟地址发送到所述节点之一。
4.一种网络系统,该网络系统包括:包括各自具有唯一地址的节点的全球地址网络,包括各自具有不唯一地址的节点的第一专用地址网络,包括各自具有不唯一地址的节点的第二专用地址网络,用于在所述全球地址网络与所述第一专用地址网络之间转换地址的第一地址转换器,和用于在所述第二专用地址网络与所述全球地址网络之间转换地址的第二地址转换器;
所述第一地址转换器包括:
第一存储装置,该第一存储装置用于与提供给另一个地址转换器的名称相关联地存储被提供给属于由所述地址转换器中的另一个地址转换器所控制的专用地址网络的终端的名称的一部分;
专用网络目的地名称解析确定单元,该专用网络目的地名称解析确定单元响应于从属于所述第一专用地址网络的终端之一接收到提供给与其通信的终端的名称,从所述第一存储装置中搜索与该接收到的名称相对应的地址转换器;以及
名称解析器,该名称解析器用于从一服务器中获得搜索到的地址转换器的地址,所述服务器具有表示地址转换器的地址和名称之间的关联性的数据的数据库,
其中,所述专用网络目的地名称解析确定单元把一个地址解析请求输出到具有从所述服务器获得的地址的地址转换器,从具有从所述服务器获得的地址的所述地址转换器接收对应于接收到的名称的终端的地址,从虚拟地址池单元获得虚拟地址,从所述虚拟地址池单元中删除所获得的虚拟地址,并且将所获得的虚拟地址发送到所述终端之一,并且
其中,所述第一地址转换器包括用于在所述第一地址转换器与所述第二地址转换器之间建立连接的装置,所述第二地址转换器包括用于在所述第二地址转换器与连接到所述第二专用地址网络的终端之间建立连接的装置,所述第一地址转换器和所述第二地址转换器包括用于保持彼此的有关连接的包括从另一地址转换器获得的专用地址的信息的装置,以便在所述全球地址网络与所述第一专用地址网络和所述第二专用地址网络中的每一个网络之间发送和接收数据。
5.根据权利要求4所述的网络系统,其中,所述第一地址转换器包括第一通知装置,该第一通知装置在由发送终端建立连接时,把所述第一地址转换器与所述第二地址转换器之间的连接的信息通知给所述第二地址转换器。
6.根据权利要求5所述的网络系统,其中,所述第一地址转换器包括第二通知装置,该第二通知装置把一个与连接到所述专用地址网络的接收终端的实际专用地址不同的虚拟地址通知给所述发送终端。
7.根据权利要求6所述的网络系统,其中,所述虚拟地址包括与所述接收终端的实际专用地址不同网络类的地址。
8.根据权利要求5所述的网络系统,其中,所述第二地址转换器包括当到连接到所述专用地址网络的接收终端的连接中断时,用于通过参考来自所述第一地址转换器的连接信息来重新建立该连接的装置。
9.根据权利要求5所述的网络系统,其中,所述第一地址转换器包括当到所述第二地址转换器的连接中断时,通过参考连接到所述专用地址网络的接收终端的信息来重新建立一个到所述第二地址转换器的连接,并把新建立的连接的信息通知给所述第二地址转换器的装置;所述第二地址转换器包括根据新建立的连接的信息来更新连接的装置。
10.根据权利要求5所述的网络系统,其中,所述第一地址转换器和第二地址转换器具有用于保存表示连接状态的信息并基于该保存信息发送数据的装置。
11.根据权利要求10所述的网络系统,其中,所述表示连接状态的信息包括:代表正在建立的连接、仅单向建立的连接、或者通信能力的信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002058260A JP4010830B2 (ja) | 2002-03-05 | 2002-03-05 | 通信装置およびネットワークシステム |
JP058260/2002 | 2002-03-05 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1442984A CN1442984A (zh) | 2003-09-17 |
CN1442984B true CN1442984B (zh) | 2013-06-19 |
Family
ID=27784694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN031051464A Expired - Fee Related CN1442984B (zh) | 2002-03-05 | 2003-03-04 | 通信设备、网络系统和地址转换器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20030169766A1 (zh) |
JP (1) | JP4010830B2 (zh) |
CN (1) | CN1442984B (zh) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6502135B1 (en) | 1998-10-30 | 2002-12-31 | Science Applications International Corporation | Agile network protocol for secure communications with assured system availability |
US10511573B2 (en) | 1998-10-30 | 2019-12-17 | Virnetx, Inc. | Agile network protocol for secure communications using secure domain names |
US7418504B2 (en) | 1998-10-30 | 2008-08-26 | Virnetx, Inc. | Agile network protocol for secure communications using secure domain names |
US7010604B1 (en) | 1998-10-30 | 2006-03-07 | Science Applications International Corporation | Agile network protocol for secure communications with assured system availability |
US6839759B2 (en) | 1998-10-30 | 2005-01-04 | Science Applications International Corp. | Method for establishing secure communication link between computers of virtual private network without user entering any cryptographic information |
WO2001033364A1 (fr) * | 1999-10-29 | 2001-05-10 | Fujitsu Limited | Dispositif pour rechercher le nom d'un noeud de communication dans un reseau de communication |
JP4077351B2 (ja) * | 2003-03-28 | 2008-04-16 | 富士通株式会社 | 名前/アドレス変換装置 |
TW200605574A (en) * | 2004-02-17 | 2006-02-01 | Ginganet Corp | Address resolution apparatus, address resolution method and telecommunication system thereof |
FI116444B (fi) * | 2004-03-25 | 2005-11-15 | Teliasonera Finland Oyj | Yhteydenoton välittäminen tiedonvälitysverkkojen välillä |
US7804828B2 (en) | 2004-06-30 | 2010-09-28 | Kabushiki Kaisha Toshiba | Communication method between communication networks |
JP2006140997A (ja) * | 2004-10-13 | 2006-06-01 | Matsushita Electric Ind Co Ltd | ゲートウェイ装置、サーバ装置及びアドレス管理方法 |
WO2006116427A2 (en) * | 2005-04-26 | 2006-11-02 | Boloto Group, Inc. | Creating or maintaining relationships within a private network or virtual private network of servers and clients |
JP5132059B2 (ja) * | 2006-01-30 | 2013-01-30 | 富士通株式会社 | パケット中継方法及びパケット中継システム |
JP4635261B2 (ja) * | 2006-03-20 | 2011-02-23 | 独立行政法人情報通信研究機構 | 通信システム及びネームサーバ装置 |
JP4207065B2 (ja) * | 2006-07-26 | 2009-01-14 | 日本電気株式会社 | 資産管理システム、資産管理方法、情報処理装置およびプログラム |
WO2009100524A1 (en) * | 2008-02-12 | 2009-08-20 | Topeer Corporation | System and method for navigating and accessing resources on private and/or public networks |
CN101969478B (zh) * | 2010-10-15 | 2013-03-20 | 杭州迪普科技有限公司 | 一种智能dns报文处理方法及处理装置 |
US9241364B2 (en) * | 2012-07-03 | 2016-01-19 | Telefonaktiebolaget L M Ericsson (Publ) | Method for revocable deletion of PDN connection |
CN103067536A (zh) * | 2013-01-11 | 2013-04-24 | 清华大学 | 基于Buddy方式的端口分配方法及系统 |
CN104144157B (zh) * | 2013-05-10 | 2019-04-23 | 中兴通讯股份有限公司 | 一种tcp会话建立方法、装置、宿主节点和卫星节点 |
WO2015092876A1 (ja) * | 2013-12-18 | 2015-06-25 | 株式会社 日立製作所 | 接続管理システム、接続管理方法、および接続管理装置 |
US10225105B2 (en) * | 2015-07-08 | 2019-03-05 | Openvpn Technologies, Inc. | Network address translation |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1332552A (zh) * | 2000-03-03 | 2002-01-23 | 尼克斯兰德公司 | 使用本地ip地址和不可转换端口地址的局域网的网络地址转换网关 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5729689A (en) * | 1995-04-25 | 1998-03-17 | Microsoft Corporation | Network naming services proxy agent |
US5898830A (en) * | 1996-10-17 | 1999-04-27 | Network Engineering Software | Firewall providing enhanced network security and user transparency |
US6477577B1 (en) * | 1996-04-05 | 2002-11-05 | Fujitsu Limited | Network connection system and connection substitute correspondence client |
JP3038650B2 (ja) * | 1997-04-28 | 2000-05-08 | 日本電気株式会社 | 移動体パケット通信システムのインターネット通信方法と装置 |
US6098108A (en) * | 1997-07-02 | 2000-08-01 | Sitara Networks, Inc. | Distributed directory for enhanced network communication |
JP3641112B2 (ja) * | 1997-09-05 | 2005-04-20 | 株式会社東芝 | パケット中継装置、移動計算機装置、移動計算機管理装置、パケット中継方法、パケット送信方法及び移動計算機位置登録方法 |
JPH11122301A (ja) * | 1997-10-20 | 1999-04-30 | Fujitsu Ltd | アドレス変換接続装置 |
US6119171A (en) * | 1998-01-29 | 2000-09-12 | Ip Dynamics, Inc. | Domain name routing |
US6199112B1 (en) * | 1998-09-23 | 2001-03-06 | Crossroads Systems, Inc. | System and method for resolving fibre channel device addresses on a network using the device's fully qualified domain name |
US6480508B1 (en) * | 1999-05-12 | 2002-11-12 | Westell, Inc. | Router-based domain name system proxy agent using address translation |
US6965948B1 (en) * | 1999-11-12 | 2005-11-15 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for selective network access |
US6754706B1 (en) * | 1999-12-16 | 2004-06-22 | Speedera Networks, Inc. | Scalable domain name system with persistence and load balancing |
US6934763B2 (en) * | 2000-04-04 | 2005-08-23 | Fujitsu Limited | Communication data relay system and method of controlling connectability between domains |
US7133404B1 (en) * | 2000-08-11 | 2006-11-07 | Ip Dynamics, Inc. | Communication using two addresses for an entity |
KR100689034B1 (ko) * | 2000-08-26 | 2007-03-08 | 삼성전자주식회사 | 외부 네트워크에서 사설 아이피주소를 갖는 노드에접속하기 위한 네트워크 주소변환시스템과 방법 및 그방법을 기록한 컴퓨터로 읽을수 있는 기록매체 |
KR100645960B1 (ko) * | 2000-08-29 | 2006-11-14 | 삼성전자주식회사 | 사설망의 네트워크 노드에 접속하기 위한 시스템과 방법 |
JP4352630B2 (ja) * | 2001-04-27 | 2009-10-28 | 沖電気工業株式会社 | 接続代行装置 |
JP4186446B2 (ja) * | 2001-09-11 | 2008-11-26 | 株式会社日立製作所 | アドレス変換方法 |
US7284056B2 (en) * | 2001-10-04 | 2007-10-16 | Microsoft Corporation | Resolving host name data |
JP2003124962A (ja) * | 2001-10-18 | 2003-04-25 | Fujitsu Ltd | パケット転送装置、パケット転送方法、および、半導体装置 |
US6961783B1 (en) * | 2001-12-21 | 2005-11-01 | Networks Associates Technology, Inc. | DNS server access control system and method |
US20030154306A1 (en) * | 2002-02-11 | 2003-08-14 | Perry Stephen Hastings | System and method to proxy inbound connections to privately addressed hosts |
US6985479B2 (en) * | 2002-03-04 | 2006-01-10 | Qualcomm Incorporated | Method and apparatus for processing internet protocol transmissions |
KR100485801B1 (ko) * | 2002-03-07 | 2005-04-28 | 삼성전자주식회사 | 서로 다른 사설망에 존재하는 네트워크장치들 간의직접접속을 제공하는 망접속장치 및 방법 |
US7260649B1 (en) * | 2002-04-16 | 2007-08-21 | Cisco Technology, Inc. | Apparatus and methods for forwarding data between public networks via a private network |
US7139840B1 (en) * | 2002-06-14 | 2006-11-21 | Cisco Technology, Inc. | Methods and apparatus for providing multiple server address translation |
US7139828B2 (en) * | 2002-08-30 | 2006-11-21 | Ip Dynamics, Inc. | Accessing an entity inside a private network |
-
2002
- 2002-03-05 JP JP2002058260A patent/JP4010830B2/ja not_active Expired - Fee Related
-
2003
- 2003-02-13 US US10/366,172 patent/US20030169766A1/en not_active Abandoned
- 2003-03-04 CN CN031051464A patent/CN1442984B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1332552A (zh) * | 2000-03-03 | 2002-01-23 | 尼克斯兰德公司 | 使用本地ip地址和不可转换端口地址的局域网的网络地址转换网关 |
Also Published As
Publication number | Publication date |
---|---|
JP2003258838A (ja) | 2003-09-12 |
CN1442984A (zh) | 2003-09-17 |
US20030169766A1 (en) | 2003-09-11 |
JP4010830B2 (ja) | 2007-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1442984B (zh) | 通信设备、网络系统和地址转换器 | |
US8457014B2 (en) | Method for configuring control tunnel and direct tunnel in IPv4 network-based IPv6 service providing system | |
US5673263A (en) | Method for using an IP address-based routing protocol in an ATM environment | |
CN100472506C (zh) | 具有唯一标识的计算机网络以及为节点提供服务的nat相关方法 | |
US5425026A (en) | Multi-protocol packet switching network | |
JP3903316B2 (ja) | ネットワークエンドデバイスの物理的ロケーションを自動的に識別するシステム | |
US6324585B1 (en) | Method and apparatus for domain name service request resolution | |
CN100566328C (zh) | 网络解析域内的方法和用户分布服务器、及有关电信系统 | |
US7697509B2 (en) | Dynamic E911 updating in a VoIP telephony system | |
CN101223760A (zh) | 用于定位网络用户的方法和节点 | |
CN101263696A (zh) | 对来自多宿主主机的数据分组进行路由 | |
US9667529B2 (en) | Selecting network services based on hostname | |
JP4077351B2 (ja) | 名前/アドレス変換装置 | |
KR100454529B1 (ko) | 이동통신망 시스템 상의 패킷전송방법, 패킷전송시스템 및패킷데이터 전송 매체 | |
CN101410817A (zh) | 自动协议代理的自动配置名称空间的使用 | |
KR20000076845A (ko) | Ip 데이터 전송 시스템의 다중 arp 기능 | |
EP1187426B1 (en) | Method for using a unique IP address in a private IP address domain | |
EP1246425A1 (en) | Packet switching networks | |
Postei | Addressing mobile hosts in the ARPA Internet environment | |
US7330896B1 (en) | Correlating data streams of different protocols | |
Alhanani et al. | An overview of different techniques and algorithms for network topology discovery | |
EP1728370B1 (en) | Transmission of communication between data transmission networks | |
JP6378121B2 (ja) | ゲートウェイ装置及び通信方法 | |
CN101803343A (zh) | 根据dns信息识别子网地址范围 | |
WO2008069504A1 (en) | Method for configuring control tunnel and direct tunnel in ipv4 network-based ipv6 service providing system |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130619 Termination date: 20180304 |
|
CF01 | Termination of patent right due to non-payment of annual fee |