连接维持装置、连接维持方法和连接维持程序与流程

文档序号:15885778发布日期:2018-11-09 18:51阅读:170来源:国知局
连接维持装置、连接维持方法和连接维持程序与流程

本发明涉及连接维持装置、连接维持方法和连接维持程序。

背景技术

存在多个据点经由ip(internetprotocol:互联网协议)网络与监视中心连接,各据点内的终端向监视中心内的中心装置发送信息的系统。在该系统中,终端与中心装置始终维持tcp(transmissioncontrolprotocol:传输控制协议)连接来进行通信。

根据要使用的网络,有时要动态地变更终端的ip地址。利用分组头中包含的发送方ip地址、目的地ip地址、发送方端口编号和目的地端口编号这4者的组合来识别tcp连接。在终端的ip地址被变更的情况下,在来自终端的分组中发送方ip地址被变更,在来自中心装置的分组中目的地ip地址被变更。由此,无法利用相同的tcp连接。即,当终端的ip地址被变更时,无法维持终端与中心装置之间的tcp连接。为了基于tcp再次连接,需要在终端与中心装置之间进行新的分组通信。在使用按量付费制的网络的情况下,通信量成为问题。在使用延迟较大的网络的情况下,再次连接之前的时间延迟成为问题。

针对该问题,在专利文献1中公开有如下方法:以不依赖于ip地址的形式生成识别tcp连接的独立标识符,在全部分组中插入所生成的标识符。通过使用该标识符来识别tcp连接,能够防止由于ip地址的变更而切断tcp连接。

现有技术文献

专利文献

专利文献1:日本特开2004-343805号公报



技术实现要素:

发明要解决的课题

在专利文献1的方法中,需要在全部分组中追加独立标识符。由此,分组大小增大。其结果是,通信数据量增加。

本发明的目的在于,维持基于tcp或其他连接型协议的连接而不会增加通信数据量。

用于解决课题的手段

本发明的一个方式的连接维持装置具有:通信控制部,其进行在建立基于连接型协议的连接后发送的对内分组的转送处理;以及头改写部,其参照存储在存储器中的将作为发送方端口编号和目的地端口编号中的任意一方的识别端口编号和发送方地址的组合与唯一的临时地址对应起来登记的对内表,如果所述对内分组的识别端口编号和所述对内分组的发送方地址的组合即第1组合已登记在所述对内表中,则在由所述通信控制部进行所述对内分组的转送处理之前,将所述对内分组的发送方地址改写成与所述第1组合对应的临时地址,如果所述第1组合未登记在所述对内表中,且所述对内分组的识别端口编号和与所述对内分组的发送方地址不同的发送方地址的组合即第2组合已登记在所述对内表中,则在由所述通信控制部进行所述对内分组的转送处理之前,将所述对内分组的发送方地址改写成与所述第2组合对应的临时地址。

发明效果

在本发明中,利用分组中原来包含的发送方端口编号和目的地端口编号中的任意一方,以识别基于连接型协议的连接。不需要追加识别连接的独立标识符,因此,能够维持连接而不会增加通信数据量。

附图说明

图1是示出实施方式1的通信系统的结构的框图。

图2是示出实施方式1的据点连接维持装置的结构的框图。

图3是示出实施方式1的中心连接维持装置的结构的框图。

图4是示出实施方式1的据点连接维持装置的动作的流程图。

图5是示出实施方式1的据点连接维持装置的动作的流程图。

图6是示出实施方式1的据点连接维持装置的据点侧更新处理的步骤的流程图。

图7是示出实施方式1的据点连接维持装置的动作的流程图。

图8是示出实施方式1的中心连接维持装置的动作的流程图。

图9是示出实施方式1的中心连接维持装置的中心侧登记处理的步骤的流程图。

图10是示出实施方式1的中心连接维持装置的中心侧更新处理的步骤的流程图。

图11是示出实施方式1的中心连接维持装置的动作的流程图。

图12是示出实施方式1的通信系统的各装置的地址的表。

图13是示出实施方式1的中心连接维持装置的临时地址列表的表。

图14是示出实施方式1的通信系统中发送接收的分组的头信息的图。

图15是示出实施方式1的据点连接维持装置的对外表和对内表的表。

图16是示出实施方式1的中心连接维持装置的对内表和对外表的表。

图17是示出实施方式1的通信系统中发送接收的分组的头信息的图。

图18是示出实施方式1的通信系统的各装置的地址的表。

图19是示出实施方式1的据点连接维持装置的对外表和对内表的表。

图20是示出实施方式1的通信系统中发送接收的分组的头信息的图。

图21是示出实施方式1的中心连接维持装置的对内表和对外表的表。

图22是示出实施方式1的通信系统中发送接收的分组的头信息的图。

图23是示出实施方式1的据点连接维持装置的对外表和对内表的表。

图24是示出实施方式1的中心连接维持装置的对内表和对外表的表。

图25是示出实施方式1的通信系统中发送接收的分组的头信息的图。

图26是示出实施方式1的据点连接维持装置的对外表和对内表的表。

图27是示出实施方式1的变形例的据点连接维持装置的结构的框图。

图28是示出实施方式1的变形例的中心连接维持装置的结构的框图。

具体实施方式

下面,使用附图对本发明的实施方式进行说明。另外,在各图中,对相同或相当的部分标注相同标号。在实施方式的说明中,对相同或相当的部分适当省略或简化说明。

实施方式1

***结构的说明***

参照图1对本实施方式的远程监视系统500的结构进行说明。

在远程监视系统500中,一个监视中心100和多个据点110a、110b、110c经由网络120连接。据点110a、110b、110c可以是任意的场所或建筑物,但是,在本实施方式中是工厂。在据点110a、110b、110c中各设置有至少一台终端111a、111b、111c。在监视中心100中设置有至少一台中心装置102。在本实施方式中据点数为3个,但是,也可以是1个,还可以是2个,还可以是4个以上。

终端111a收集据点110a内的设备的信息。终端111a与中心装置102始终或在一定期间内维持基于连接型协议的连接,利用该连接,向中心装置102发送设备的信息。在据点110a中,通常,在终端111a的下属连接有计测器、传感器这样的各种设备,但是,在图1中省略这些设备的记载。

在终端111a与网络120之间设置有据点连接维持装置112a。在据点110a中,针对一台终端111a设置一台据点连接维持装置112a。在中心装置102与网络120之间设置有中心连接维持装置101。在监视中心100中,针对一台中心装置102设置一台中心连接维持装置101。终端111a与网络120之间发送接收的分组全部经由据点连接维持装置112a。同样,中心装置102与网络120之间发送接收的分组全部经由中心连接维持装置101。

据点连接维持装置112a和中心连接维持装置101都是具有napt(networkaddressporttranslation:网络地址端口转换)功能的连接维持装置。这些连接维持装置通过地址的转换,从终端111a和中心装置102隐藏动态变更的终端111a的实际地址。具体而言,据点连接维持装置112a使用napt表,进行分配给终端111a的本地地址与分配给据点连接维持装置112a且相当于终端111a的实际地址的全局地址的转换。中心连接维持装置101使用napt表,进行该全局地址与分配给中心装置102的本地地址的转换。各个连接维持装置动态更新napt表,由此对应于地址的变更。具体而言,据点连接维持装置112a检测到分配给据点连接维持装置112a的地址变更时,对据点连接维持装置112a内的napt表进行更新。中心连接维持装置101接收到使用据点连接维持装置112a内的napt表转换后的分组时,自动更新中心连接维持装置101内的napt表。

利用分组头中包含的发送方地址、目的地地址、发送方端口编号和目的地端口编号这4者的组合来识别终端111a与中心装置102之间的基于连接型协议的连接。在本实施方式中,即使终端111a的实际地址被变更,也从终端111a和中心装置102隐藏该地址,分配给终端111a和中心装置102的地址不需要变更。由此,能够接着利用相同的tcp连接。即,即使终端111a的实际地址被变更,也能够维持终端111a与中心装置102之间的连接。

网络120可以是任意的分组交换型网络,但是,在本实施方式中是ip网络。关于经由据点连接维持装置112a和中心连接维持装置101的分组,只要发送方地址、目的地地址、发送方端口编号和目的地端口编号包含在头中即可,可以是任意的通信数据,但是,在本实施方式中是ip分组。发送方地址和目的地地址都可以是任意体系的地址,但是,在本实施方式中是ip地址,具体而言是ipv4地址。在终端111a与中心装置102之间的连接中利用的协议可以是任意的连接型协议,但是,在本实施方式中是tcp。

终端111b、111c具有与终端111a相同的功能,因此省略与终端111b、111c有关的说明。

在据点110b、110c中还设置有据点连接维持装置112b、112c。据点连接维持装置112b、112c具有与据点连接维持装置112a相同的功能,因此省略与据点连接维持装置112b、112c有关的说明。

参照图2对据点连接维持装置112a的结构进行说明。

据点连接维持装置112a是计算机。据点连接维持装置112a具有处理器201、存储器202、网络接口203这样的硬件。处理器201经由信号线而与其他硬件连接,对这些其他硬件进行控制。

作为功能要素,据点连接维持装置112a具有地址取得部301、表更新部302、头改写部303和通信控制部304。地址取得部301、表更新部302和头改写部303各自的功能(以下为据点连接维持装置112a的“部”的功能)通过软件实现。通信控制部304的功能通过网络接口203实现。

处理器201是进行处理的ic(integratedcircuit:集成电路)。具体而言,处理器201是cpu(centralprocessingunit:中央处理单元)。

在存储器202中存储有对外表305和对内表306。具体而言,存储器202是闪存或ram(randomaccessmemory:随机存取存储器)。

网络接口203与网络120连接。网络接口203包含经由网络120接收分组的接收机和经由网络120发送分组的发送机。具体而言,网络接口203是通信芯片或nic(networkinterfacecard:网络接口卡)。

在存储器202中存储有实现据点连接维持装置112a的“部”的功能的程序。该程序被读入到处理器201中,由处理器201执行。在存储器202中还存储有os(operatingsystem:操作系统)。处理器201一边执行os,一边执行实现据点连接维持装置112a的“部”的功能的程序。另外,实现据点连接维持装置112a的“部”的功能的程序的一部分或全部也可以组入到os中。

实现据点连接维持装置112a的“部”的功能的程序和os也可以存储在辅助存储装置中。具体而言,辅助存储装置是闪存或hdd(harddiskdrive:硬盘驱动器)。辅助存储装置中存储的程序和os被载入到存储器202中,由处理器201执行。

据点连接维持装置112a可以仅具有一个处理器201,也可以具有多个处理器201。多个处理器201可以协作执行实现据点连接维持装置112a的“部”的功能的程序。

表示据点连接维持装置112a的“部”的处理结果的信息、数据、信号值和变量值存储在存储器202、辅助存储装置或处理器201内的寄存器或高速缓冲存储器中。

实现据点连接维持装置112a的“部”的功能的程序也可以存储在磁盘、光盘这样的移动记录介质中。实现据点连接维持装置112a的“部”的功能的程序相当于本实施方式的连接维持程序。

据点连接维持装置112b和据点连接维持装置112c的结构与据点连接维持装置112a的结构相同,因此省略说明。

参照图3对中心连接维持装置101的结构进行说明。

中心连接维持装置101是计算机。与据点连接维持装置112a同样,中心连接维持装置101具有处理器211、存储器212和网络接口213这样的硬件。下面,针对中心连接维持装置101的结构,主要对与据点连接维持装置112a的结构的差异进行说明。

作为功能要素,中心连接维持装置101具有表更新部402、头改写部403和通信控制部404。表更新部402、头改写部403各自的功能(以下为中心连接维持装置101的“部”的功能)通过软件实现。通信控制部404的功能通过网络接口213实现。

在存储器212中存储有临时地址列表401、对外表405和对内表406。并且,在存储器212中存储有实现中心连接维持装置101的“部”的功能的程序。该程序被读入到处理器211中,由处理器211执行。

实现中心连接维持装置101的“部”的功能的程序也可以存储在磁盘、光盘这样的移动记录介质中。实现中心连接维持装置101的“部”的功能的程序也相当于本实施方式的连接维持程序。

***动作的说明***

参照图2对据点连接维持装置112a的动作进行说明。据点连接维持装置112a的动作相当于本实施方式的连接维持方法。

通信控制部304进行对内分组的转送处理和对外分组的转送处理。即,通信控制部304对据点连接维持装置112a与外部的分组发送接收进行处理。

对内表306是将识别端口编号和对应端口编号的组合与任意的实际端口编号对应起来进行登记的表。识别端口编号是发送方端口编号和目的地端口编号中的任意一方即可,但是,在本实施方式中是发送方端口编号。对应端口编号是发送方端口编号和目的地端口编号中的另一方,因此,在本实施方式中是目的地端口编号。对外表305是将对内表306中登记的识别端口编号和对应端口编号的组合作为相反的组合跟与对内表306相同的实际端口编号对应起来进行登记的表。

在本实施方式中,对内表306是记载有对由通信控制部304从网络120接收到的分组的发送方地址、目的地地址、发送方端口编号和目的地端口编号进行转换的规则的napt表。对外表305是记载有对由通信控制部304从终端111a接收到的分组的发送方地址、目的地地址、发送方端口编号和目的地端口编号进行转换的规则的napt表。任何napt表的规则都由指定作为转换对象的分组的“条件”与“转换后的值”的组构成。

头改写部303在接收到对内分组的情况下参照对内表306,在接收到对外分组的情况下参照对外表305。

作为一个例子,假设已接收到为了建立tcp连接而发送的对内分组即第1分组p11。如果第1组合c11已登记在对内表306中,则头改写部303在由通信控制部304进行第1分组p11的转送处理之前,将第1分组p11的识别端口编号改写成与第1组合c11对应的实际端口编号。该动作相当于从后述步骤s21进入步骤s24时的动作。第1组合c11是第1分组p11的识别端口编号与第1分组p11的对应端口编号的组合。如果第1组合c11未登记在对内表306中,且第2组合c12已登记在对内表306中,则头改写部303在由通信控制部304进行第1分组p11的转送处理之前,将第1分组p11的识别端口编号改写成与第2组合c12对应的实际端口编号。该动作相当于从后述步骤s21经由步骤s22和步骤s26进入步骤s24时的动作。第2组合c12是与第1分组p11的识别端口编号不同的识别端口编号和第1分组p11的对应端口编号的组合。

作为另一个例子,假设已接收到对外分组即第2分组p12。如果第3组合c13已登记在对外表305中,则头改写部303在由通信控制部304进行第2分组p12的转送处理之前,将第2分组p12的识别端口编号改写成与第3组合c13对应的实际端口编号。该动作相当于从后述步骤s11进入步骤s14时的动作。第3组合c13是第2分组p12的对应端口编号和第2分组p12的识别端口编号的组合。

这样,在本实施方式中,头改写部303根据napt表的规则来改写分组头。

在已接收到第1分组p11的例子中,如果第1组合c11未登记在对内表306中且第2组合c12已登记在对内表306中,则表更新部302将对内表306中的第2组合c12更新成第1组合c11。该情况下,表更新部302还将对外表305中作为相反的组合而登记的第2组合c12更新成与第1组合c11相同的组合。这些动作相当于从后述步骤s31进入步骤s32时的动作。

这样,在本实施方式中,表更新部302对napt表的规则进行更新。

地址取得部301从网络120接收地址。

据点连接维持装置112b和据点连接维持装置112c的动作与据点连接维持装置112a的动作相同,因此省略说明。

参照图3对中心连接维持装置101的动作进行说明。中心连接维持装置101的动作也相当于本实施方式的连接维持方法。

通信控制部404进行对内分组的转送处理和对外分组的转送处理。即,通信控制部404对中心连接维持装置101与外部的分组发送接收进行处理。

对内表406是将识别端口编号和发送方地址的组合与唯一的临时地址对应起来进行登记的表。如上所述,识别端口编号是发送方端口编号和目的地端口编号中的任意一方即可,但是,在本实施方式中是发送方端口编号。对外表405是将对内表406中登记的识别端口编号和发送方地址的组合作为识别端口编号和目的地地址的组合跟与对内表406相同的临时地址对应起来进行登记的表。

在本实施方式中,对内表406是记载有对由通信控制部404从网络120接收到的分组的发送方地址、目的地地址、发送方端口编号和目的地端口编号进行转换的规则的napt表。对外表405是记载有对由通信控制部404从中心装置102接收到的分组的发送方地址、目的地地址、发送方端口编号和目的地端口编号进行转换的规则的napt表。任何napt表的规则都由指定作为转换对象的分组的“条件”和“转换后的值”的组构成。

头改写部403在接收到对内分组的情况下参照对内表406,在接收到对外分组的情况下参照对外表405。

作为一个例子,假设已接收到建立tcp连接后发送的对内分组即第1分组p21。如果第1组合c21已登记在对内表406中,则头改写部403在由通信控制部404进行第1分组p21的转送处理之前,将第1分组p21的发送方地址改写成与第1组合c21对应的临时地址。该动作相当于从后述步骤s51进入步骤s55时的动作。第1组合c21是第1分组p21的识别端口编号与第1分组p21的发送方地址的组合。如果第1组合c21未登记在对内表406中且第2组合c22已登记在对内表406中,则头改写部403在由通信控制部404进行第1分组p21的转送处理之前,将第1分组p21的发送方地址改写成与第2组合c22对应的临时地址。该动作相当于从后述步骤s51经由步骤s52和步骤s58进入步骤s55时的动作。第2组合c22是第1分组p21的识别端口编号和与第1分组p21的发送方地址不同的发送方地址的组合。

作为另一个例子,假设已接收到为了建立tcp连接而发送的对内分组即第2分组p22。头改写部403在由通信控制部404进行第2分组p22的转送处理之前,将第2分组p22的识别端口编号改写成如后所述由表更新部402新登记的识别端口编号。该动作相当于从后述步骤s51经由步骤s52和步骤s57进入步骤s55时的动作。

作为又一个例子,假设已接收到对外分组即第3分组p23。如果第3组合c23已登记在对外表405中,则头改写部403在由通信控制部404进行第3分组p23的转送处理之前,将第3分组p23的目的地地址改写成与第3组合c23对应的临时地址。该动作相当于从后述步骤s81进入步骤s82时的动作。第3组合c23是第3分组p23的识别端口编号与第3分组p23的目的地地址的组合。

这样,在本实施方式中,头改写部403根据napt表的规则来改写分组头。

在已接收到第1分组p21的例子中,如果第1组合c21未登记在对内表406中且第2组合c22已登记在对内表406中,则表更新部402将对内表406中的第2组合c22更新成第1组合c21。该情况下,表更新部402还将对外表405中作为识别端口编号和目的地地址的组合而登记的第2组合c22更新成与第1组合c21相同的组合。这些动作相当于从后述步骤s71进入步骤s72时的动作。

在已接收到第2分组p22的例子中,如果与第2分组p22的识别端口编号相同的识别端口编号已登记在对内表406中,则表更新部402将对内表406中未登记的识别端口编号和第2分组p22的发送方地址的组合与对内表406中未登记的临时地址对应起来新登记在对内表406中。该动作相当于从后述步骤s61经由步骤s62和步骤s63进入步骤s64时的动作。

这样,在本实施方式中,表更新部402对napt表的规则进行更新。

临时地址列表401是对各据点的终端的临时地址进行管理的列表。在临时地址列表401中按照每个临时地址记录有“使用状况”。临时地址是系统管理者事前设定的地址。系统管理者在不与中心装置102的地址重复的条件下,设定与远程监视系统500内存在的终端的数量相同或比其更多的临时地址。

下面,对据点连接维持装置112a的动作进行详细说明。具体而言,对据点连接维持装置112a从终端111a接收到分组时、据点连接维持装置112a从网络120接收到分组时以及从网络120分配的地址被变更时的3个动作进行说明。

参照图4对据点连接维持装置112a从终端111a接收到分组时的动作进行说明。

在步骤s11中,头改写部303在通信控制部304从终端111a接收分组时,确认接收分组的发送方地址、目的地地址、发送方端口编号和目的地端口编号这4者的组合是否已作为“条件”登记在对外表305内。在已登记的情况下进行步骤s14的处理,在未登记的情况下进行步骤s12的处理。

在步骤s14中,头改写部303根据对应的“转换后的值”,改写接收分组的地址和端口编号。在步骤s15中,通信控制部304发送改写后的分组。

在步骤s12中,表更新部302确认接收分组的syn标志和ack标志。在syn标志为“1”且ack标志为“0”的情况下进行步骤s16的处理,在除此以外的情况下进行步骤s13的处理。

在步骤s16中,表更新部302将对发送方地址进行转换的规则登记在对外表305中。具体而言,表更新部302登记接收分组的发送方地址、目的地地址、发送方端口编号和目的地端口编号作为“条件”,登记仅将发送方地址转换成据点连接维持装置112a的地址后的值作为“转换后的值”。这样,能够将终端111a的私有地址转换成据点连接维持装置112a的全局地址,进行网络120内的通信。

接着,在步骤s17中,表更新部302将逆转换规则登记在对内表306中,该逆转换规则是对针对利用对外表305中登记的规则转换后的接收分组的应答分组进行逆转换的规则。具体而言,表更新部302登记使在步骤s16中登记的规则的发送方地址与目的地地址、发送方端口编号与目的地端口编号分别相反,进而使“条件”和“转换后的值”相反后的内容。然后,进行步骤s14和步骤s15的处理。即,头改写部303根据对外表305中追加的规则,改写接收分组的发送方地址。然后,通信控制部304发送改写后的分组。

在步骤s13中,表更新部302丢弃接收分组。

参照图5对据点连接维持装置112a从网络120接收到分组时的动作进行说明。

在步骤s21中,头改写部303在通信控制部304从网络120接收分组时,确认接收分组的发送方地址、目的地地址、发送方端口编号和目的地端口编号这4者的组合是否已作为“条件”登记在对内表306内。在已登记的情况下进行步骤s24的处理,在未登记的情况下进行步骤s22的处理。

在步骤s24中,头改写部303根据对应的“转换后的值”,改写接收分组的地址和端口编号。在步骤s25中,通信控制部304发送改写后的分组。

在步骤s22中,表更新部302确认接收分组的syn标志和ack标志。在syn标志为“1”且ack标志为“1”的情况下进行步骤s26的据点侧更新处理,在除此以外的情况下进行步骤s23的处理。

在步骤s26的据点侧更新处理之后,进行步骤s24和步骤s25的处理。

在步骤s23中,表更新部302丢弃接收分组。

参照图6对步骤s26的据点侧更新处理进行说明。

在步骤s31中,表更新部302确认是否已登记接收分组的发送方端口编号作为对内表306内的“条件”的发送方端口编号。这里确认的仅是发送方端口编号,即使其他项目不同也没有问题。在已登记的情况下进行步骤s32的处理,在未登记的情况下进行步骤s33的处理。

在步骤s32中,表更新部302将相应规则的“条件”的目的地端口编号变更成接收分组的目的地端口编号。表更新部302还将与相应规则对应的逆转换规则的“转换后的值”的发送方端口编号变更成接收分组的目的地端口编号。

在步骤s33中,表更新部302丢弃接收分组。

另外,在步骤s31中,表更新部302也可以仅针对相当于第2组合c12的、发送方端口编号和目的地端口编号这2者的组合确认登记。

参照图7对从网络120分配的地址被变更时的动作进行说明。

地址取得部301从网络120接受地址的分配,将所分配的地址保存在存储器212中。在所保存的地址与新从网络120分配的地址不同的情况下,将所保存的地址作为旧地址,将新分配的地址作为新地址执行以下处理。

在步骤s41中,表更新部302确认是否在对外表305内存在包含旧地址的规则。在存在相应规则的情况下进行步骤s42的处理,在不存在相应规则的情况下进行步骤s43的处理。

在步骤s42中,表更新部302将记载有旧地址的部分全部变更成新地址。

在步骤s43中,表更新部302确认是否在对内表306内存在包含旧地址的规则。在存在相应规则的情况下进行步骤s44的处理。

在步骤s44中,表更新部302将记载有旧地址的部分全部变更成新地址。

下面,对中心连接维持装置101的动作进行详细说明。具体而言,对中心连接维持装置101从网络120接收到分组时以及中心连接维持装置101从中心装置102接收到分组时的2个动作进行说明。

参照图8对中心连接维持装置101从网络120接收到分组时的动作进行说明。

在步骤s51中,头改写部403在通信控制部404从网络120接收分组时,确认接收分组的发送方地址、目的地地址、发送方端口编号和目的地端口编号这4者的组合是否作为“条件”已登记在对内表406内。在已登记的情况下进行步骤s55的处理,在未登记的情况下进行步骤s52的处理。

在步骤s55中,头改写部403根据对应的“转换后的值”,改写接收分组的地址和端口编号。在步骤s56中,通信控制部404发送改写后的分组。

在步骤s52中,表更新部402确认接收分组的syn标志和ack标志。在syn标志为“1”且ack标志为“0”的情况下进行步骤s57的中心侧登记处理,在syn标志为“0”的情况下进行步骤s58的中心侧更新处理,在除此以外的情况下进行步骤s54的处理。

在步骤s57的中心侧登记处理之后,进行步骤s55和步骤s56的处理。

在步骤s58的中心侧更新处理之后,进行步骤s55和步骤s56的处理。

在步骤s54中,表更新部402丢弃接收分组。

参照图9对步骤s57的中心侧登记处理进行说明。

在步骤s61中,表更新部402确认接收分组的发送方端口编号是否作为对内表406内的“条件”的发送方端口编号进行了登记。这里确认的仅是发送方端口编号,即使其他项目不同也没有问题。在已登记的情况下进行步骤s62的处理,在未登记的情况下进行步骤s63的处理。

在步骤s62中,头改写部403将接收分组的发送方端口编号变更成对内表406内未登记的发送方端口编号。然后,进行步骤s63的处理。

在步骤s63中,表更新部402从临时地址列表401中选择一个未使用的临时地址。在步骤s64中,表更新部402将对发送方地址进行转换的规则登记在对内表406中。具体而言,表更新部402登记接收分组的发送方地址、目的地地址、发送方端口编号和目的地端口编号作为“条件”,登记将发送方地址转换成在步骤s63中选择出的临时地址且将目的地地址转换成中心装置102的地址后的值作为“转换后的值”。另外,在进行了步骤s62的处理的情况下,对内表406中登记的发送方端口编号是变更后的编号。

接着,在步骤s65中,表更新部402将对内表406中登记的规则的逆转换规则登记在对外表405中。具体而言,表更新部402登记使在步骤s64中登记的规则的发送方地址和目的地地址、发送方端口编号和目的地端口编号分别相反进而使“条件”和“转换后的值”相反后的内容。

参照图10对步骤s58的中心侧更新处理进行说明。

在步骤s71中,表更新部402确认接收分组的发送方端口编号是否作为对内表406内的“条件”的发送方端口编号进行了登记。这里确认的仅是发送方端口编号,即使其他项目不同也没有问题。在已登记的情况下进行步骤s72的处理,在未登记的情况下进行步骤s73的处理。

在步骤s72中,表更新部402将相应规则的“条件”的发送方地址变更成接收分组的发送方地址。表更新部402还将与相应规则对应的逆转换规则的“转换后的值”的目的地地址变更成接收分组的发送方地址。

在步骤s73中,表更新部402丢弃接收分组。

参照图11对中心连接维持装置101从中心装置102接收到分组时的动作进行说明。

在步骤s81中,头改写部403在通信控制部404从中心装置102接收分组时,确认接收分组的发送方地址、目的地地址、发送方端口编号和目的地端口编号这4者的组合是否作为“条件”登记在对外表405内。在已登记的情况下进行步骤s82的处理,在未登记的情况下进行步骤s84的处理。

在步骤s82中,头改写部403根据对应的“转换后的值”,改写接收分组的地址和端口编号。在步骤s83中,通信控制部404发送改写后的分组。

在步骤s84中,表更新部402丢弃接收分组。

根据这些动作,说明如何进行具体的分组交换。

作为例子,设系统结构为图1的结构。假设对各装置分配有图12所示的ip地址。在图12中,动态分配据点连接维持装置112a、112b、112c的ip地址,除此以外的ip地址固定。分配给中心装置102和终端111a、111b、111c的ip地址是私有ip地址。中心连接维持装置101和据点连接维持装置112a、112b、112c保持有实际上在来自网络120的连接中使用的全局ip地址。设在中心连接维持装置101的临时地址列表401中存储有图13所示的值。设据点连接维持装置112a、112b、112c的对外表305和对内表306以及中心连接维持装置101的对外表405和对内表406分别是空的。

该状态下,假设从据点110a的终端111a朝向中心装置102请求tcp连接。图14示出此时发送的分组501的头信息。在发送方地址中设定有终端111a的ip地址“192.168.0.1”,在目的地地址中设定有中心连接维持装置101的ip地址“192.0.2.1”。tcp的syn标志意味着tcp连接的请求,在最初发送的分组中必定为“1”。tcp的ack标志意味着针对从对方发送的分组的应答,在最初发送的分组中必定为“0”。发送方端口编号和目的地端口编号是由应用决定的值,这里分别为“123”和“456”。

终端111a发送的分组501到达据点连接维持装置112a。据点连接维持装置112a进行图4所示的动作。

在初始状态下,据点连接维持装置112a的对外表305是空的,因此,在步骤s11的判定处理之后,进行步骤s12的判定处理。在图14的分组501中,syn标志为“1”且ack标志为“0”,因此进行步骤s16和步骤s17的处理。在步骤s16和步骤s17中,表更新部302在对外表305和对内表306中分别登记规则。图15示出登记后的各表。然后,进行步骤s14和步骤s15的处理。在步骤s14中,头改写部303使用图15的对外表305改写图14的分组501。图14示出改写后的分组502的头信息。发送方地址从终端111a的ip地址“192.168.0.1”改写成据点连接维持装置112a的ip地址“203.0.113.10”。在步骤s15中,通信控制部304发送改写后的分组502。

据点连接维持装置112a发送的分组502经由网络120到达中心连接维持装置101。中心连接维持装置101进行图8所示的动作。

在初始状态下,中心连接维持装置101的对内表406是空的,因此,在步骤s51的判定处理之后,进行步骤s52的判定处理。在图14的分组502中,syn标志为“1”且ack标志为“0”,因此进行图9所示的步骤s57的中心侧登记处理。在该时点,中心连接维持装置101的对内表406是空的,因此,在步骤s61的判定处理之后,进行步骤s63的处理。这里,在步骤s63中,假设表更新部402从图13的临时地址列表401中选择未使用的临时地址“10.0.0.1”。接着,进行步骤s64和步骤s65的处理。在步骤s64和步骤s65中,表更新部402在对内表406和对外表405中分别登记规则。图16示出登记后的各表。然后,进行步骤s55和步骤s56的处理。在步骤s55中,头改写部403使用图16的对内表406改写图14的分组502。图14示出改写后的分组503的头信息。发送方地址从据点连接维持装置112a的ip地址“203.0.113.10”改写成临时地址“10.0.0.1”。目的地地址从中心连接维持装置101的ip地址“192.0.2.1”改写成中心装置102的ip地址“172.16.0.1”。在步骤s56中,通信控制部404发送改写后的分组503。

中心连接维持装置101发送的分组503到达中心装置102。接收到图14的分组503的中心装置102识别出通信对方的ip地址是临时地址“10.0.0.1”。在图14的分组503中,意味着tcp连接的请求的syn标志为“1”,因此,中心装置102针对tcp连接的请求进行应答。图17示出此时发送的分组511的头信息。在发送方地址中设定中心装置102的ip地址“172.16.0.1”,在目的地地址中设定临时地址“10.0.0.1”。tcp的syn标志为“1”。tcp的ack标志也为“1”。发送方端口编号和目的地端口编号是与接收到的分组503相反的值,这里分别为“456”和“123”。

中心装置102发送的分组511到达中心连接维持装置101。中心连接维持装置101进行图11所示的动作。

中心连接维持装置101的对外表405成为图16的状态。图17的分组511的发送方地址、目的地地址、发送方端口编号和目的地端口编号作为“条件”登记在对外表405内,因此,在步骤s81的判定处理之后,进行步骤s82和步骤s83的处理。在步骤s82中,头改写部403使用图16的对外表405改写图17的分组511。图17示出改写后的分组512的头信息。发送方地址从中心装置102的ip地址“172.16.0.1”改写成中心连接维持装置101的ip地址“192.0.2.1”。目的地地址从临时地址“10.0.0.1”改写成据点连接维持装置112a的ip地址“203.0.113.10”。在步骤s83中,通信控制部404发送改写后的分组512。

中心连接维持装置101发送的分组512经由网络120到达据点连接维持装置112a。据点连接维持装置112a进行图5所示的动作。

据点连接维持装置112a的对内表306成为图15的状态。图17的分组512的发送方地址、目的地地址、发送方端口编号和目的地端口编号作为“条件”登记在对内表306内,因此,在步骤s21的判定处理之后,进行步骤s24和步骤s25的处理。在步骤s24中,头改写部303使用图15的对内表306改写图17的分组512。图17示出改写后的分组513的头信息。目的地地址从据点连接维持装置112a的ip地址“203.0.113.10”改写成终端111a的ip地址“192.168.0.1”。在步骤s25中,通信控制部304发送改写后的分组513。

据点连接维持装置112a发送的分组513到达终端111a。接收到图17的分组513的终端111a识别出已建立tcp连接,向中心装置102通知通信的开始。此后,能够在终端111a与中心装置102之间进行使用tcp连接的通信。但是,这里,设在建立tcp连接后通知通信的开始之前,如图18所示,分配给据点连接维持装置112a的ip地址被变更成“203.0.113.11”。对该情况下也维持终端111a与中心装置102之间的tcp连接的情况进行说明。

据点连接维持装置112a检测ip地址的变更,进行图7所示的动作。其结果是,对外表305和对内表306被更新。图19示出更新后的各表。

该状态下,假设从终端111a朝向中心装置102通知通信的开始。图20示出此时发送的分组521的头信息。发送方地址、目的地地址、发送方端口编号和目的地端口编号与图14的分组501相同。tcp的syn标志为“0”。tcp的ack标志为“1”。

终端111a发送的分组521到达据点连接维持装置112a。据点连接维持装置112a进行图4所示的动作。

据点连接维持装置112a的对外表305成为图19的状态。图20的分组521的发送方地址、目的地地址、发送方端口编号和目的地端口编号作为“条件”登记在对外表305内,因此,在步骤s11的判定处理之后,进行步骤s14和步骤s15的处理。在步骤s14中,头改写部303使用图19的对外表305改写图20的分组521。图20示出改写后的分组522的头信息。发送方地址从终端111a的ip地址“192.168.0.1”改写成据点连接维持装置112a的新的ip地址“203.0.113.11”。在步骤s25中,通信控制部304发送改写后的分组522。

据点连接维持装置112a发送的分组522经由网络120到达中心连接维持装置101。中心连接维持装置101进行图8所示的动作。

中心连接维持装置101的对内表406成为图16的状态。图20的分组522的发送方地址、目的地地址、发送方端口编号和目的地端口编号未作为“条件”登记在对内表406内,因此,在步骤s51的判定处理之后,进行步骤s52的判定处理。在图20的分组522中,syn标志为“0”,因此,进行图10所示的步骤s58的中心侧更新处理。在对内表406中存在使“条件”的发送方端口编号具有与图20的分组522的发送方端口编号“123”相同的编号的规则,因此,在步骤s71的判定处理之后,进行步骤s72的处理。在步骤s72中,表更新部402对相应规则的“条件”的发送方地址和与相应规则对应的逆转换规则的“转换后的值”的目的地地址进行变更。图21示出变更后的各表。然后,进行步骤s55和步骤s56的处理。在步骤s55中,头改写部403使用图21的对内表406改写图20的分组522。图20示出改写后的分组523的头信息。发送方地址从据点连接维持装置112a的新的ip地址“203.0.113.11”改写成临时地址“10.0.0.1”。目的地地址从中心连接维持装置101的ip地址“192.0.2.1”改写成中心装置102的ip地址“172.16.0.1”。在步骤s56中,通信控制部404发送改写后的分组523。

中心连接维持装置101发送的分组523到达中心装置102。图20的分组523的ip地址和端口编号与分配给据点连接维持装置112a的ip地址被变更之前的相同。由此,能够维持终端111a与中心装置102之间的tcp连接。

最后,对该状态下从据点110b的终端111b朝向中心装置102请求tcp连接的情况进行说明。

图22示出此时发送的分组531的头信息。在发送方地址中设定终端111b的ip地址“192.168.0.1”,在目的地地址中设定中心连接维持装置101的ip地址“192.0.2.1”。tcp的syn标志为“1”。tcp的ack标志为“0”。发送方端口编号和目的地端口编号分别为“123”和“456”。

终端111b发送的分组531到达据点连接维持装置112b。据点连接维持装置112b进行图4所示的动作。

在初始状态下,据点连接维持装置112b的对外表305是空的,因此,在步骤s11的判定处理之后,进行步骤s12的判定处理。在图22的分组531中,syn标志为“1”且ack标志为“0”,因此进行步骤s16和步骤s17的处理。在步骤s16和步骤s17中,表更新部302在对外表305和对内表306中分别登记规则。图23示出登记后的各表。然后,进行步骤s14和步骤s15的处理。在步骤s14中,头改写部303使用图23的对外表305改写图22的分组531。图22示出改写后的分组532的头信息。发送方地址从终端111b的ip地址“192.168.0.1”改写成据点连接维持装置112b的ip地址“203.0.113.20”。在步骤s15中,通信控制部304发送改写后的分组532。

据点连接维持装置112b发送的分组532经由网络120到达中心连接维持装置101。中心连接维持装置101进行图8所示的动作。

中心连接维持装置101的对内表406成为图21的状态。图22的分组532的发送方地址、目的地地址、发送方端口编号和目的地端口编号未作为“条件”登记在对内表406内,因此,在步骤s51的判定处理之后,进行步骤s52的判定处理。在图22的分组532中,syn标志为“1”且ack标志为“0”,因此,进行图9所示的步骤s57的中心侧登记处理。在对内表406中存在使“条件”的发送方端口编号具有与图22的分组532的发送方端口编号“123”相同的编号的规则,因此,在步骤s61的判定处理之后,进行步骤s62和步骤s63的处理。这里,在步骤s62中,头改写部403选定不与其他规则重复的编号“124”,对分组532的发送方端口编号进行变更。然后,在步骤s63中,表更新部402从图13的临时地址列表401中选择未使用的临时地址“10.0.0.2”。接着,进行步骤s64和步骤s65的处理。在步骤s64和步骤s65中,表更新部402在对内表406和对外表405中分别登记规则。图24示出登记后的各表。然后,进行步骤s55和步骤s56的处理。在步骤s55中,头改写部403使用图24的对内表406改写图22的分组532。图22示出改写后的分组533的头信息。发送方地址从据点连接维持装置112b的ip地址“203.0.113.20”改写成临时地址“10.0.0.2”。目的地地址从中心连接维持装置101的ip地址“192.0.2.1”改写成中心装置102的ip地址“172.16.0.1”。在步骤s56中,通信控制部404发送改写后的分组533。

中心连接维持装置101发送的分组533到达中心装置102。接收到图22的分组533的中心装置102识别出通信对方的ip地址是临时地址“10.0.0.2”。在图22的分组533中,意味着tcp连接的请求的syn标志为“1”,因此,中心装置102针对tcp连接的请求进行应答。图25示出此时发送的分组541的头信息。在发送方地址中设定中心装置102的ip地址“172.16.0.1”,在目的地地址中设定临时地址“10.0.0.2”。tcp的syn标志为“1”。tcp的ack标志也为“1”。发送方端口编号和目的地端口编号分别成为“456”和“124”。

中心装置102发送的分组541到达中心连接维持装置101。中心连接维持装置101进行图11所示的动作。

中心连接维持装置101的对外表405成为图24的状态。图25的分组541的发送方地址、目的地地址、发送方端口编号和目的地端口编号作为“条件”登记在对外表405内,因此,在步骤s81的判定处理之后,进行步骤s82和步骤s83的处理。在步骤s82中,头改写部403使用图24的对外表405改写图25的分组541。图25示出改写后的分组542的头信息。发送方地址从中心装置102的ip地址“172.16.0.1”改写成中心连接维持装置101的ip地址“192.0.2.1”。目的地地址从临时地址“10.0.0.2”改写成据点连接维持装置112b的ip地址“203.0.113.20”。在步骤s83中,通信控制部404发送改写后的分组542。

中心连接维持装置101发送的分组542经由网络120到达据点连接维持装置112b。据点连接维持装置112b进行图5所示的动作。

据点连接维持装置112b的对内表306成为图23的状态。图25的分组542的发送方地址、目的地地址、发送方端口编号和目的地端口编号未作为“条件”登记在对内表306内,因此,在步骤s21的判定处理之后,进行步骤s22的判定处理。在图25的分组542中,syn标志为“1”且ack标志为“1”,因此,进行图6所示的步骤s26的据点侧更新处理。在对内表306中存在使“条件”的发送方端口编号具有与图25的分组542的发送方端口编号“456”相同的编号的规则,因此,在步骤s31的判定处理之后,进行步骤s32的处理。在步骤s32中,表更新部302对相应规则的“条件”的目的地端口编号和与相应规则对应的逆转换规则的“转换后的值”的发送方端口编号进行变更。图26示出变更后的各表。然后,进行步骤s24和步骤s25的处理。在步骤s24中,头改写部303使用图26的对内表306改写图25的分组542。图25示出改写后的分组543的头信息。目的地地址从据点连接维持装置112b的ip地址“203.0.113.20”改写成终端111b的ip地址“192.168.0.1”。目的地端口编号从“124”改写成“123”。在步骤s25中,通信控制部304发送改写后的分组543。

据点连接维持装置112b发送的分组543到达终端111b。接收到图25的分组543的终端111b识别出已建立tcp连接,向中心装置102通知通信的开始。此后,能够在终端111b与中心装置102之间进行使用tcp连接的通信。

***实施方式的效果的说明***

在本实施方式中,利用分组中原来包含的发送方端口编号和目的地端口编号中的任意一方,以识别tcp连接。不需要追加识别tcp连接的独立标识符,因此,能够维持tcp连接而不会增加通信数据量。

在本实施方式中,据点连接维持装置112a具有头改写功能、napt表、napt表追加功能和第1napt表更新功能。头改写功能是对接收分组的发送方地址、目的地地址、发送方端口编号和目的地端口编号中的任意一方或全部进行转换来转送分组的功能。napt表是记录有对接收分组进行转换的规则的列表的表。规则由使用发送方地址、目的地地址、发送方端口编号和目的地端口编号中的至少一方确定改写对象分组的“条件”以及与“条件”一致的分组的发送方地址、目的地地址、发送方端口编号和目的地端口编号中的至少一方的“转换后的值”表示。napt表追加功能是根据接收分组的内容而动态地在napt表中追加规则的功能。第1napt表更新功能是检测分配给据点连接维持装置112a的ip地址的变更而对napt表进行更新的功能。

在本实施方式中,据点连接维持装置112a还具有第2napt表更新功能。第2napt表更新功能是在接收到仅一部分与napt表中包含的“条件”相应的分组时对napt表进行更新的功能。在napt表中,作为“条件”必定包含发送方端口编号,除此以外,只要包含发送方地址、目的地地址和目的地端口编号中的至少一方即可。第2napt表更新功能是在接收到仅包含发送方端口编号的一部分与“条件”一致的分组时对napt表进行更新的功能。另外,在napt表中,作为“条件”,也可以必定包含目的地端口编号,除此以外,包含发送方地址、目的地地址和发送方端口编号中的至少一方。该情况下,第2napt表更新功能是在接收到仅包含目的地端口编号的一部分与“条件”一致的分组时对napt表进行更新的功能。

在本实施方式中,通过采用上述功能和napt表,不用在通常的分组中追加新的区域也不用产生新的分组,就能够在终端111a的ip地址动态变更的环境下,维持终端111a与中心装置102之间的tcp连接。

***其他结构***

在本实施方式中,据点连接维持装置112a的“部”的功能通过软件实现,但是,作为变形例,据点连接维持装置112a的“部”的功能也可以通过硬件实现。同样,在本实施方式中,中心连接维持装置101的“部”的功能通过软件实现,但是,作为变形例,中心连接维持装置101的“部”的功能也可以通过硬件实现。针对这些变形例,主要对与本实施方式的差异进行说明。

参照图27对本实施方式的变形例的据点连接维持装置112a的结构进行说明。

据点连接维持装置112a具有处理电路209、网络接口203这样的硬件。

处理电路209是实现据点连接维持装置112a的“部”的功能的专用电子电路。具体而言,处理电路209是单一电路、复合电路、程序化的处理器、并行程序化的处理器、逻辑ic、ga(gatearray:门阵列)或fpga(field-programmablegatearray:现场可编程门阵列)。或者,具体而言,处理电路209是asic(applicationspecificintegratedcircuit:面向特定用途的集成电路)。

据点连接维持装置112a的“部”的功能可以通过一个处理电路209实现,也可以分散在多个处理电路209中实现。

作为另一个变形例,据点连接维持装置112a的“部”的功能也可以通过软件和硬件的组合实现。即,也可以是据点连接维持装置112a的“部”的一部分功能通过专用电子电路实现,其余功能通过软件实现。

将处理器201、存储器202和处理电路209统称作“处理电路系统(processingcircuitry)”。即,无论据点连接维持装置112a的结构是图2所示的结构还是图27所示的结构,据点连接维持装置112a的“部”的功能都通过处理电路系统实现。

参照图28对本实施方式的变形例的中心连接维持装置101的结构进行说明。

与上述变形例的据点连接维持装置112a同样,中心连接维持装置101具有处理电路219、网络接口213这样的硬件。下面,针对该变形例的中心连接维持装置101的结构,主要对与上述变形例的据点连接维持装置112a的结构的差异进行说明。

处理电路219是实现中心连接维持装置101的“部”的功能的专用电子电路。

作为另一个变形例,中心连接维持装置101的“部”的功能也可以通过软件和硬件的组合实现。即,也可以是中心连接维持装置101的“部”的一部分功能通过专用电子电路实现,其余功能通过软件实现。

将处理器211、存储器212和处理电路219也统称作“处理电路系统”。即,无论中心连接维持装置101的结构是图3所示的结构还是图28所示的结构,中心连接维持装置101的“部”的功能都通过处理电路系统实现。

也可以将据点连接维持装置112a的“部”或中心连接维持装置101的“部”改写成“工序”、“步骤”或“处理”。

以上说明了本发明的实施方式,但是,也可以部分地实施该实施方式。具体而言,可以仅采用该实施方式的据点连接维持装置112a的功能要素中的一部分功能要素。也可以仅采用该实施方式的中心连接维持装置101的功能要素中的一部分功能要素。另外,本发明不限于该实施方式,能够根据需要进行各种变更。

标号说明

100:监视中心;101:中心连接维持装置;102:中心装置;110a、110b、110c:据点;111a、111b、111c:终端;112a、112b、112c:据点连接维持装置;120:网络;201:处理器;202:存储器;203:网络接口;209:处理电路;211:处理器;212:存储器;213:网络接口;219:处理电路;301:地址取得部;302:表更新部;303:头改写部;304:通信控制部;305:对外表;306:对内表;401:临时地址列表;402:表更新部;403:头改写部;404:通信控制部;405:对外表;406:对内表;500:远程监视系统;501、502、503、511、512、513、521、522、523、531、532、533、541、542、543:分组。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1