通信方法及通信系统 【技术领域】
本发明涉及在因特网等开放型网络上连接的信息处理装置间进行数据通信的方法及系统、用于其的装置和程序。
背景技术
在因特网等开放型网络或多个网络上连接的信息处理装置间进行无连接的数据通信的现有方法例如被公开于(日本)特开平8年第111693号公报。在该方法中,服务器及客户机的各程序通过在它们之间确立“连接”即虚拟线路来进行无连接型或连接型的网络上连接的不同装置间的通信。这种无连接型的服务器及客户机的程序在传送数据前与连接管理器进行通信。连接管理器通常是确立、维持程序间的连接的例行程序或电路。
服务器程序通过将可用服务消息发送到连接管理器,来请求连接管理器确立与远程客户机例行程序的通信。连接管理器根据该服务消息来注册可利用服务,将注册确认消息发回到服务器程序。然后,客户机程序向连接管理器发送连接请求消息,请求连接到服务器程序执行的特定的可用服务。连接管理器接收到该消息后,将对应的连接请求发送到服务器程序。然后,服务器程序将连接许可消息发送到连接管理器,连接管理器响应此而将与服务器程序和远程客户机例行程序之间确立的连接对应的虚拟线路标识符(VCI)发回到服务器程序。接着,服务器程序正在工作的服务器地网络接口使用VCI的值来传输从具有该VCI值的网络接收到的数据分组。
同样,客户机程序通过向连接管理器发送请求连接到特定的服务器例行程序的消息而被修正以确立与远程服务器例行程序的通信。连接管理器通过发送确认发回消息来确认该请求。连接管理器判断请求的服务是否由可用服务器例行程序来执行,在服务被执行的情况下与该服务器例行程序确立连接。连接管理器与服务器例行程序确立了连接后,将连接确立通知发送到客户机程序。该连接确立通知包含对应的已确立的连接的VCI值。接着,客户机程序正在工作的装置的网络接口使用VCI的值,来传输从网络接收到的、具有该VCI值的数据分组。
在该方法中,客户机向连接管理器请求了某种服务后,连接管理器从预先注册的可提供服务的服务器中选择最佳的服务器并介绍给客户机。其结果是,客户机与介绍的服务器通过端对端方式建立会话。客户机搜索为自己可靠地提供目的服务的对象,连接管理器作为其媒介。连接管理器预先知道能够提供的服务器的位置和服务能力,对来自客户机的连接请求根据该预知的信息将能够保证提供服务的服务器介绍给客户机。最终,客户机与服务器建立会话。
在该方法中,服务器为了向来自客户机的连接请求许可会话连接,必须已知连接管理器和客户机的实地址。管理器必须知道客户机和服务器的实地址。
另一现有方法被公开于特开平10年第229416号公报。在该方法中,设置与根据规定的协议确立的计算机网络上的装置间的连接对应的识别号码。利用该识别号码确立点对点连接的第一信息处理装置和第二信息处理装置间的连接。然后,在经它们两个的点对点连接及计算机网络而连接的信息处理装置间进行数据通信。通过利用该识别号码,能够减少首标量,并且确立多个连接。进而,利用通过与第一信息处理装置之间的连接而设置的识别号码,能够进行第一信息处理装置和第三信息处理装置间的数据发送或接收。
在该方法中,使用所谓“终端名仲裁协议”和“文件传输协议”。根据终端名仲裁协议进行“地址解决”,然后,根据文件传输协议进行“无连接”的数据通信。在终端名仲裁协议中,新添加到网络上的终端通过“广播”确认“终端名称有无重复”,定期进行用于确认相互的终端名称是否有效的“巡回”。在文件传输协议中,广播终端名称,从符合该终端名称的终端接收发回的实地址,重新向该实地址发送实数据。
通过这样预先进行解决地址矛盾的过程,在通信时信息处理装置依靠该地址来进行数据发送。
在该方法中,为了能够构筑会话,必须将能够确定各个终端的特有的终端名称分配给各终端。
【发明内容】
通信系统包括:第1信息处理装置;第2信息处理装置,经第1网络连接在上述第1信息处理装置上;以及第3信息处理装置,经上述第1网络连接在上述第1和第2信息处理装置上。
上述第1信息处理装置存储上述第2信息处理装置的网络地址和通信所使用的协议。上述第2信息处理装置相对应地存储上述第1信息处理装置的设备ID、用于从外部访问上述第1信息处理装置的识别代码以及上述协议。上述第1信息处理装置根据上述协议将包含上述第2信息处理装置的上述网络地址、表示是第一个数据分组的信息以及上述第1信息处理装置的上述设备ID的第1数据分组发送到上述第2信息处理装置。上述第1信息处理装置在发送上述第1数据分组后,等待上述第2信息处理装置接收数据分组。上述第2信息处理装置根据上述协议来接收上述该第1数据分组。在上述第1数据分组包含表示是第一个数据分组的信息的情况下,上述第2信息处理装置除了与上述第1数据分组中包含的上述设备ID相对应存储的上述识别代码之外,还与上述设备ID相对应存储上述第1数据分组中包含的上述第1数据分组发送端的网络地址。在上述第1数据分组不包含表示是第一个数据分组的上述信息的情况下,上述第2信息处理装置确认与上述第1数据分组中包含的上述设备ID相对应存储的网络地址与上述第1数据分组中包含的上述第1数据分组发送端的上述网络地址是否相等。上述第2信息处理装置等待接收应从上述第3信息处理装置向上述第1信息处理装置发送的第2数据分组。上述第2信息处理装置在等待接收上述第2数据分组期间,接收应从上述第3信息处理装置发送的包含上述第1信息处理装置的上述识别代码和上述协议的第2数据分组。上述第2信息处理装置识别与上述第2数据分组中包含的上述识别代码相对应存储的上述网络地址。上述第2信息处理装置根据上述协议将上述第2数据分组发送到上述网络地址的上述第1信息处理装置。上述第1信息处理装置根据上述协议来接收上述第2数据分组。如果经过规定的时间,则上述第1信息处理装置根据上述协议将包含与上述第1数据分组相同的上述第2信息处理装置的上述网络地址、和上述第1信息设备的上述设备ID、不包含表示是第一个数据分组的上述信息的数据分组发送到上述第2信息处理装置。
【附图说明】
图1是本发明实施方式的通信系统的结构图。
图2示出实施方式的通信系统的家庭网关(HGW)向网络服务器发送的数据分组。
图3示出实施方式的从HGW发送、由网络服务器接收的数据分组。
图4示出实施方式的用户终端经由网络服务器向HGW或家庭设备发送的数据分组。
图5示出实施方式的网络服务器对从用户终端接收到的数据分组进行变换并向HGW或家庭设备发送的数据分组。
图6示出实施方式的网络服务器连接信息表。
图7示出实施方式的用户数据库的记录。
图8示出实施方式的设备数据库的记录。
图9示出实施方式的连接信息存储表。
图10示出实施方式的HGW数据库的记录。
图11示出实施方式的用户终端为了确定想进行数据通信的HGW或家庭设备而使用的URL。
图12示出实施方式的HGW向网络服务器发送的数据分组。
图13示出实施方式的连接信息存储表。
图14示出实施方式的用户终端经由网络服务器向家庭设备或HGW发送的数据分组。
图15示出实施方式的HGW数据库的记录。
图16示出实施方式的网络服务器连接信息表。
图17示出实施方式的网络服务器向家庭设备或HGW发送的数据分组。
图18是实施方式的通信系统的详细结构图。
图19是实施方式的通信系统的状态转移图。
图20是实施方式的通信系统的状态转移图。
图21是实施方式的通信系统的状态转移图。
【具体实施方式】
图1示出本发明实施方式的通信系统,示出执行通信程序的、连接在因特网101上的设备103~119。
家庭网关(HGW)1和2(第1信息处理装置)被连接在因特网101上,经由因特网101与因特网101上连接的其他装置进行通信。如图18所示,该通信通过隧道连接部件1873、超文本传送协议(HTTP,HyperText Transfer Protocol)中继部件1875、网络通信部件1877来进行。
HGW1、2被设置在各家庭,经家庭网络与家庭设备1、3分别相连。家庭设备1、3例如包含空调或电冰箱、电饭锅、热水瓶、洗衣机、热水器、电视机或录像机、大门摄像机、火灾报警器、燃气传感器等家庭内设置的所有各种设备/器具。这些家庭设备具有图18所示的设备信息页1853,通过HTTP服务器1855和网络通信部件1857经由家庭网络来进行通信。
HGW经家庭网络与这些家庭设备进行数据通信,从各设备收集数据,控制各设备。
HGW不必是1个家庭设置1台,可以在多个家庭中设置1台,也可以在1个家庭中设置多个HGW。在公寓等集合住宅中,通常在多个家庭中设置1台HGW。
HGW经由因特网101与网络服务器103进行通信。HGW将该通信所需的信息存储在网络服务器连接信息表601中。
网络服务器连接信息表601示于图6。网络服务器连接信息表601由下述部分构成:HGW自身的IP(Internet Protocol,因特网协议)地址603、规定用于经由因特网101与网络服务器103进行通信的协议的信息605、网络服务器103的IP地址609、用于将自身的ID通知给网络服务器103的设备ID611。
如图18所示,网络服务器103包括地址解析部件1833、地址信息保持部件1834、地址变换部件1835、HTTP中继部件1836、隧道连接部件1837以及网络通信部件1838,通过它们经由网络来进行数据分组的通信。
HGW起动后,进行自身具有的数据的初始化,进行经家庭网络连接的所有设备的初始化,从各设备收集必要的基本数据。
接着,HGW根据网络服务器连接信息表601的信息,经由因特网101,向网络服务器103发送第一个数据分组211(图19,S1901)。
图2所示的数据分组21 1由网络服务器103的IP地址201、SYN-data 205、HGW自身的ID一设备ID 207、实际数据203、以及本数据分组发送端的IP地址209构成。SYN-data 205向网络服务器103通知数据分组211是否是第一个数据分组、以及是否用数据分组211在HGW和网络服务器间新确立连接。如果SYN-data 205是“1”,则数据分组211是第一个数据分组,而且数据分组211向网络服务器103请求在HGW和网络服务器间新确立连接。如果SYN-data 205是“0”,则数据分组211不是第一个数据分组,而且向网络服务器103请求不用数据分组211在HGW和网络服务器间重新确立连接,而继续利用已经确立的连接。
HGW发送到网络服务器103的数据分组211经由因特网101由网络服务器103接收(图19,S1902)。
图3所示的数据分组311由网络服务器103的IP地址201、SYN-data 205、HGW自身的ID-设备ID 207、实际数据203、以及本数据分组发送端的IP地址309构成。
分组211的发送端的IP地址209、分组3 11的发送端的IP地址309可以相同,也可以不同。在这些数据分组经由因特网101被发送时,在途中变更或不变更发送端IP地址都可以。
网络服务器103接收到数据分组311后,确认数据分组311中包含的SYN-data 205的值。如果SYN-data的值是“1”,则服务器103判断出该数据分组是来自设备ID 207所示的HGW的第一个数据分组,进行用于用数据分组311在该HGW和网络服务器103间确立连接的处理(图19,S1903)。
在该处理中,网络服务器103创建图9所示的连接信息存储表901。即,服务器103根据接收从HGW发送的数据分组211时的数据分组311、用户数据库的记录701(图7)、设备数据库的记录801(图8)、以及HGW数据库的记录1001(图10),来创建连接信息存储表901。服务器103预先存储有记录701、801、1001。
首先,服务器103将接收到的数据分组311中的设备ID 207保存到连接信息存储表901的设备ID 905中,然后将设备ID 905作为关键词,来搜索用户数据库的记录701、设备数据库的记录801、HGW数据库的记录1001。在本实施方式中,设备ID 905表示HGW,所以不存在具有与设备ID 905相同的设备ID 803的记录801,存在具有与设备ID 905相同的设备ID 1003的记录1001。
服务器103从具有与设备ID 905相同的设备ID 1003的HGW数据库的记录1001中,将设备类型1005复制到连接信息存储表901中的设备类型907中。同样,服务器103将HGW数据库的记录1001中包含的URL 1009复制到连接信息存储表901中的URL 913中,将拥有者ID号码1011复制到连接信息存储表901中的拥有者ID号码915中。服务器103将记录1001中包含的拥有者ID号码1011作为关键词来搜索用户数据库的记录701,发现具有与拥有者ID号码1011相同的用户ID号码的记录701。然后,服务器103将记录701中包含的用户类型705复制到连接信息存储表901中的用户类型91 7中。进而,服务器103将接收数据分组311中的本数据分组发送端的IP地址309复制到连接信息存储表901中的数据分组发送端的IP地址909中。最后,服务器103将连接ID号码903设置为与其他连接ID号码不重复的号码,作为表示与HGW的该连接的信息。
以上一系列手续是从新的HGW收到第一个数据分组时进行的、用于在该HGW和网络服务器103间确立连接的处理。这样,在连接信息存储表901中创建用于该新的HGW的项的处理完成。
在本实施方式中,如果在连接信息存储表901中创建了用于该新的HGW的项的处理完成,与HGW之间确立了连接,则服务器103向HGW发送数据分组来通知已确立的该意思(图19,S1904)。
即使服务器103确立了连接,也可以不将该意思通知给HGW。
在接收到SYN-data 205的值是“0”的数据分组311的情况下,服务器103通过将数据分组311中包含的设备ID 207作为关键词进行搜索,来确认存在具有与设备ID 207相同的设备ID 905的连接信息存储表901。
如果不存在具有与接收数据分组311中包含的设备ID 207相同的设备ID905的连接信息存储表的记录901,则向发送了数据分组311的HGW发回包含出错信息的数据分组。
服务器103确认具有与设备ID 207相同的设备ID 905的连接信息存储表901中包含的数据分组发送端的IP地址909、和接收到的数据分组311中包含的本数据分组发送端的IP地址309相等。
在具有与设备ID 207相同的设备ID 905的连接信息存储表901中包含的IP地址909、和接收到的数据分组311中包含的本数据分组发送端的IP地址309不相等的情况下,服务器103也向发送了数据分组311的HGW发回包含出错信息的数据分组。
通过以上,确立了HGW和网络服务器103间的连接,以后,在从因特网上连接的其他设备—用户终端1~3向网络服务器103发出向HGW发送数据的请求的情况下,网络服务器103能够利用该连接,将请求的数据发送到HGW。以下说明用于此的执行过程。
用户终端是网络上连接的客户个人计算机(PC),具有Web浏览器软件1873作为用户界面,用网络通信部件1875经由网络进行数据分组的通信。
在本实施方式中,用户终端通过向HGW 1、2发送数据来控制HGW 1、2上连接的家庭设备,或者从家庭设备获得数据。HGW和家庭设备可以被设置在用户终端的保有者自身的家庭中,也可以被设置在熟人等他人的家庭中。
通过利用网络服务器103和HGW间确立的连接,能够从用户终端经网络服务器103与HGW进行通信。
在本实施方式中,该用户终端可以是因特网上连接的、能够随身携带的移动个人计算机,也可以是工作地点等家庭外设置的个人计算机。用户终端也可以是能够访问因特网的手机、掌上型个人计算机或个人数字助理(Personal Data Assistance,PDA)。或者,用户终端可以是能够访问因特网的汽车内设置的导航装置,也可以是能够连接到因特网上的电视或录像机、固定电话。即,除此之外,只要是能够连接到因特网上的设备,就可以用作用户终端。
用户终端为了确定想进行数据通信的HGW或家庭设备,使用图1所示的Uniform Resource Locator(URL)(图20,S2001)。在该URL中,开头的“http”表示用户终端和网络服务器间经由因特网进行数据通信时的协议。接着的“net-service.panasonic.co.jp”表示网络服务器103,表示经由网络服务器103来发送数据分组。接着的“nakagawah/hwg1/aircon1”由表示将数据发送到的家庭的nakagawah、表示该家庭中设置的HGW的“hwg1”、以及表示用该HGW和家庭网络连接的家庭设备—空调1的“aircon1”构成。
在HGW自身发送数据、家庭设备未连接在该HGW上的情况下,在上述URL中无需最后的表示空调的“aircon1”。
用户终端经由服务器向家庭设备发送的数据分组409示于图4。数据分组409由表示发送数据分组409的目的地-HGW或家庭设备的URL 401、实际想发送的数据403、以及发送了数据分组409的用户终端自身的IP地址405构成。
用户终端将数据分组409经由因特网发送到网络服务器103(图20,S2002)。
接收到数据分组409的网络服务器103从连接信息存储表901中的记录的URL 913中搜索与数据分组409中包含的URL 401相同的URL(图20,S2003)。
如果与数据分组409中的URL 401相同的URL存在于连接信息存储表901中的记录的URL 913中,则在想将数据发送到的HGW或HGW上连接的家庭设备和网络服务器103之间确立了连接,服务器103能够将数据分组409发送到HGW或家庭设备。
此时,网络服务器103将接收到的数据分组409变换为用于向HGW或家庭设备发送的数据分组509。
在该变换中,数据分组409中包含的URL 401被置换为连接信息存储表901中的具有相同的URL 913的记录中存在的数据分组发送端的IP地址909(图20,S2004)。数据分组409中包含的URL 401以外的部分—想发送的数据403和用户终端的IP地址405不被变更。
网络服务器103将URL 401被置换为IP地址909的数据分组509经由因特网101发送到指定的HGW或家庭设备(图20,S2005)。
如果数据分组409中的URL 401不存在于连接信息存储表901中的记录的URL 913中,则与想将数据发送到的HGW或家庭设备未确立连接,服务器103不能将数据分组发送到目的HGW或家庭设备。
此时,网络服务器103将包含出错信息的数据分组发回到数据分组409的发送端—用户终端。
经由因特网发送的数据分组509由指定的HGW接收。如果指定的不是HGW,而是通过家庭网络连接到该HGW上的家庭设备,则接收到数据分组509的该HGW将数据分组509经由家庭网络发送到该指定的家庭设备(图20,S2006)。
通过以上一系列过程,用户终端能够经由因特网101和网络服务器103、以及确立的连接向目的HGW或家庭设备发送数据分组509。
接收到数据分组509的HGW或家庭设备解读数据分组509中包含的实际数据403,进行由其指定的处理(图20,S2007)。例如如果数据403的内容指示某个家庭设备执行特定的控制,则接收到数据分组509的家庭设备执行指示的内容。此外,例如如果其内容是请求发回家庭设备具有的与家庭有关的数据,则接收到数据分组509的家庭设备根据指示的内容来发回指定的数据(图21,S2108)。此外,例如在家庭设备是录像机、数据103的内容是在当天下午8点至10点录制5频道的电视节目的情况下,该录像机根据指定,在当天下午8点至10点录制5频道的电视节目。
此外,分组509的接收端也可以是HGW自身,数据403的内容也可以是将家庭内设置的监视摄像机3拍摄的图像发送到用户终端的请求。该HGW将不断地经由家庭网络送来的监视摄像机3的图像发送到数据分组509中包含的IP地址405的用户终端(图21,S2109)。此时,HGW向用户终端发送的数据分组与图2的数据分组211相同。只是,数据分组211中包含的网络服务器的IP地址201被置换为用户终端的IP地址405。数据分组211由网络服务器103接收,被发送到请求数据的用户终端(图21,S2110)。请求了家庭监视摄像机的图像的用户终端接收将来自HGW的摄像机图像包含在数据203中的数据分组211,按照需要对该图像进行加工,或者进行显示、打印等(图21,S2111)。
此外,作为HGW上连接的家庭设备,也可以向家庭内设置的燃气表发送分组509。向该家庭供给燃气的燃气公司、或与该燃气公司有业务关系、计测该家庭的燃气使用量的人操作用户终端,向该燃气表发送分组。该燃气公司等的业务用计算机相当于该用户终端。分组内的数据的控制内容例如是请求发送表示燃气表的当前时刻的燃气使用量的查表值。HGW将暂时接收到的、来自用户终端的数据分组509经由家庭网络发送到该燃气表。该燃气表接收数据分组509,读出数据分组509中包含的数据403,解读其内容,知道请求发送表示燃气表自身把握的当前时刻的燃气使用量的查表值。燃气表创建包含该查表值作为数据的数据分组211,在表示数据分组211的接收端的地址201中,设置数据分组509中包含的用户终端的IP地址405。然后,燃气表将数据分组211经由因特网101发送到用户终端。请求燃气表的查表值的用户终端—燃气公司等的业务用计算机接收将查表值包含在数据203中的数据分组211,用数据203来计算燃气的使用量,进行存储,收缴与使用量相应的燃气使用费。
如上所述,在本实施方式的通信系统中,与网络暂时确立连接,用该连接来进行通信。因此,不必始终与所有HGW或HGW上连接的家庭设备确立连接。因此,如果经过规定的时间,则网络服务器103也可以主动切断与例如某个期间中一次也未进行通信的HGW或家庭设备、或该期间中的通信次数低于规定的次数的HGW或家庭设备之间的连接。实际上,服务器通过删除连接信息存储表的与该HGW或家庭设备相当的记录来切断该连接。
在删除了连接信息存储表的记录、切断了连接时,服务器103也可以通过发送特定的数据分组将切断的意思通知给该HGW或家庭设备。被通知了该意思的HGW或家庭设备始终把握着自身和网络服务器间的连接的确立状态。在确立了连接的状态下,该HGW或家庭设备能够用该连接与网络服务器103或经网络服务器连接在因特网上的其他设备进行通信。
在不通知连接的切断的情况下,HGW或家庭设备未正确把握与网络服务器103之间的连接的确立状态。在此情况下,即使HGW或家庭设备将SYN-data 205为“0”的数据分组211发送到网络服务器103、或经服务器103连接在因特网上的其他设备,包含与该HGW或家庭设备的设备ID相同号码的设备ID的记录也不存在于连接信息存储表中,所以发送了数据分组211的HGW或家庭设备从网络服务器103接收包含出错消息的数据分组。此时,该HGW或家庭设备通过发送SYN-data 205为“1”的分组211,能够再次确立自身和网络服务器间的连接。
也可以HGW或家庭设备主动切断连接。在目前不准备与网络服务器进行通信的情况下,或者在需要通过切断家庭网络和外部之间的连接来确保家庭网络的安全性的情况下,在进行家庭网络的维护的情况下,需要在规定的期间切断与外部的连接。此外,在HGW或家庭设备不能进行与外部的通信、或不想进行通信时,或者无需进行通信时,HGW或家庭设备通过将特定的数据分组211、例如SYN-data 205的值为“-1”的数据分组211发送到网络服务器113,能够切断与网络服务器的连接。
在接收到这种用于切断连接的数据分组211时,网络服务器103进行与服务器103主动切断连接的处理相同的处理。因此,省略以后的说明。但是,在此情况下,也可以删除连接信息存储表的记录,通过向该HGW或家庭设备发送特定的数据分组而将切断连接的意思重新通知给该HGW或家庭设备。
在HGW或家庭设备未正确把握自身和网络服务器103间的连接是否已确立的情况下发生确立连接、或者切断连接等状况。
在这种情况下,HGW或家庭设备可以分别按照需要,将用于确立自身和网络服务器间的连接的、SYN-data 205的值设置为“1”的数据分组211,用于切断自身和网络服务器之间的虚拟连接的、SYN-data 205的值设置为“-1”的数据分组211,或者用于不改变当前的连接状态、只向网络服务器查询当前状况的例如SYN-data 205的值设置为“9”的数据分组211经由因特网发送到网络服务器103,来实现各自的目的。
HGW或家庭设备将用于不改变当前的连接状态、只向网络服务器查询当前状况的、SYN-data 205的值设置为“9”的数据分组经由因特网发送到网络服务器103。于是,网络服务器103对应于该HGW或家庭设备的请求,不变更服务器103当前存储着的连接信息存储表901的内容,来搜索包含与指定的设备ID相同的设备ID 905的记录是否存在于连接信息存储表901中。服务器103按照其搜索结果,来判断当前该HGW或家庭设备和网络服务器103之间的连接状态,将把该状态设置为数据403的数据分组509发回到该HGW或家庭设备。HGW或家庭设备接收数据分组509,从其中读出数据403。HGW或家庭设备判断其内容,例如如果连接被切断则可以重新连接,或者如果已连接则可以切断连接,或者可以置之不理。
如果经过规定的时间,则HGW或家庭设备也可以自动、或者按某种指示或条件,与当前状态无关系地确立自身和网络服务器103间的连接,并且维持连接。该规定的时间可以是固定的,也可以是可变的。在此情况下,也与上述同样,在确立连接前,为了确认当前状态,HGW或家庭设备也可以将SYN-data 205的值设置为“9”的数据分组211发送到网络服务器103。或者,HGW或家庭设备也可以不确认当前状态,就将确立连接的SYN-data 205的值设置为“1”的数据分组211发送到网络服务器103。
从HGW或家庭设备发送到网络服务器的数据分组1211除了从HGW或家庭设备发送到网络服务器的数据分组211的内容之外,也可以包含与安全性有关的安全性数据1213。
数据分组1211示于图12。
HGW或家庭设备将数据分组1211发送到网络服务器103,确立HGW或家庭设备和网络服务器间的连接,服务器103创建的连接信息存储表1301示于图13。图13的连接信息存储表1301与图9所示的表901不同,具有用于存储数据分组1211中包含的安全性数据1213的安全性数据1317。安全性数据1317例如是向确立了连接的HGW或家庭设备发送数据时的口令。
为了向HGW或家庭设备发送数据,用户终端发送的数据分组1409必须具有用户终端发送的数据分组409的内容和安全性数据1407。数据分组1409示于图14。
安全性数据1407与连接信息存储表1301中存储的安全性数据1317相同。数据1407也可以是具有某种关联的数据,例如根据某个确定的函数进行变换后与安全性数据1317一致。该函数也可以是不可逆函数、例如单向函数。
网络服务器103接收到包含安全性数据1407的数据分组1409后,读出安全性数据1407。服务器103对照数据1407和图13所示的信息存储表1301存储的安全性数据1317,来认证能否将数据分组1409发送到用URL 401指定的HGW或家庭设备。
服务器103只将符合上述对照而判断出能够发送到用URL 401指定的HGW或家庭设备的数据分组1409发送到该HGW或家庭设备。
服务器103不将不符合上述对照而判断出不能发送到用URL 401指定的HGW或家庭设备的数据分组1409发送到该HGW或家庭设备,而是删除/抛弃。服务器103可以将分组1409发回到发送端用户终端,也可以将出错消息发送到发送端用户终端。
在上述中,网络服务器103对照安全性数据。服务器103也可以暂时将所有数据分组1409发送到指定的HGW或家庭设备,不是服务器103,而是该HGW或家庭设备对照存储着的安全性数据1213、和接收到的安全性数据1407。在此情况下,HGW或家庭设备不必将安全性数据1213通过数据分组1211发送到网络服务器103。但是,HGW或家庭设备也可以将数据1213通过分组1211发送到网络服务器103。
安全性数据是与HGW或家庭设备进行数据通信所需的口令。安全性数据也可以是向HGW或家庭设备发送数据时使用的加密密钥。HGW或家庭设备将包含加密密钥—安全性数据1213的数据分组1211作为用于确立连接的数据分组发送到网络服务器103。接收到数据分组1211的服务器103进行与数据分组的内容相应的处理。例如,如上所述按照SYN-data 205的值,来进行确立、切断连接等处理。服务器103在创建连接信息存储表1301时,将数据分组1211中包含的安全性数据1213、即加密密钥作为连接信息存储表1301中的安全性数据1317来存储。
网络服务器103从用户终端接收到包含应向该HGW或家庭设备发送的数据的数据分组409后,根据数据分组409中包含的URL 401来确定应将该数据分组发送到的HGW或家庭设备。进而,服务器103搜索连接信息存储表1301,确认与该HGW或家庭设备之间的连接是否已确立。如果连接已确立,则服务器103为了经由因特网向该HGW或家庭设备发送数据分组,从包含该URL的连接信息存储表1301中,读出数据分组发送端的IP地址909,创建用于将该数据分组发送到指定的HGW或家庭设备的数据分组509。同时,服务器103读出连接表1301中包含的安全性数据1317、即加密密钥,使用预定的过程和该加密密钥对数据分组509中包含的数据403进行加密。或者,服务器103也可以对数据分组509中包含的数据403和用户终端的IP地址505、或者其他数据也进行加密。
包含这样加密过的数据的数据分组509由网络服务器103经由因特网发送到指定的HGW或家庭设备。
接收到数据分组509的HGW或家庭设备根据预定的过程和预先保有的解密密钥,对数据分组509中的加密过的数据进行解密。
网络服务器103通过数据分组1409来接收加密密钥1407,将加密密钥1407作为连接信息存储表1301的安全性数据1317来存储。网络服务器103在将数据分组509发送到该HGW或家庭设备时,对这些数据进行加密。
网络服务器103也可以将安全性数据1317发送到用户终端,用户终端用加密密钥—安全性数据1317对数据403进行加密,将加密过、包含数据403的数据分组409经由网络服务器103发送到HGW或家庭设备。
如果HGW或家庭设备发送的数据分组1211中包含的加密密钥—安全性数据1317例如是公钥体制加密的加密密钥,则即使第三者知道该加密密钥,该第三者也不知道解密密钥。因此,即使在加密过的数据分组被盗的情况下,它也不能被解密,确保了数据的安全性。
加密密钥也可以不是公钥体制的加密密钥,而是私钥体制等所有与加密有关的密钥。
在上述中,数据分组1211中包含的安全性数据1213是口令和加密密钥中的某一个,但是也可以包含口令和加密密钥这两者,再者,不限于口令或加密密钥,也可以是其他安全性数据。
在上述中,HGW或家庭设备发送到网络服务器103的数据分组1211中包含的安全性数据1213是用于确保HGW或家庭设备的安全性的数据。因此,安全性数据1213本身不受任何认证,被网络服务器103无条件接受,存储到连接信息存储表1301的安全性数据1317中。安全性数据1213也可以接受网络服务器103的认证,用于保护网络服务器103的安全性不受HGW或家庭设备影响。
本实施方式的HGW数据库的记录1501示于图15。记录1501与HGW数据库的记录1001不同,具有与安全性有关的安全性数据1515。安全性数据1515与从HGW发送到网络服务器103的数据分组1211中包含的安全性数据1213具有预定的关系,例如相同,或者用特定的函数变换后相同等。数据1515被用于认证从HGW发送到网络服务器103的数据分组1211。认证分组1211等价于认证HGW本身,从而认证了HGW本身。如果不符合该认证,则数据分组1211不被网络服务器103接受。网络服务器103即使接收到数据分组1211也原封不动地删除、抛弃,或者发回到发送端。或者,服务器103将出错消息发回到数据分组发送端的HGW或家庭设备。
在上述中,HGW将包含与安全性有关的数据1213的数据分组1211发送到网络服务器103,用于认证安全性数据1213的数据存在于HGW数据库的记录1501中。家庭设备将包含安全性数据1213的数据分组1211发送到网络服务器103,用于认证安全性数据1213的数据也可以存在于设备数据库的记录801中。
在本实施方式中,HGW或家庭设备将用于对向HGW或家庭设备发送的数据分组1409进行加密、或者进行认证的安全性数据1213通过数据分组1211发送到网络服务器103。
网络服务器103也可以将这些与安全性有关的数据作为主加密密钥、或主认证密钥预先存储在图15的HGW数据库的记录1501的安全性数据1515中。此外,图中未示出,服务器103也可以将该数据预先存储在设备数据库的记录801中。由此,能够从用于确立HGW或家庭设备和网络服务器间的连接的第一个数据分组起进行加密,并且从该数据分组本身起接受认证,安全性进一步提高。
加密密钥或认证密钥等安全性数据在HGW或家庭设备和网络服务器103间一旦被交换,则固定使用该加密密钥和认证密钥。安全性数据在HGW或家庭设备和网络服务器103间交换后,或者在从当初起网络服务器103就存储着主加密密钥和主认证密钥的情况下,新的加密密钥和认证密钥也可以通过数据分组1211在HGW或家庭设备和网络服务器103间交换,被用于以后的数据通信。由此,安全性进一步提高。
在HGW或家庭设备和网络服务器103间交换了新的加密密钥和认证密钥后,HGW或家庭设备和网络服务器103也可以继续存储以前的加密密钥和认证密钥。在判明由于某种情况而使新的加密密钥和认证密钥不能顺利交换时,用存储着的以前的加密密钥和认证密钥来进行数据分组的加密和认证。即使在加密密钥和认证密钥的更新失败时,也能够继续进行数据分组的加密和认证,安全性进一步提高。
在HGW或家庭设备和网络服务器103间交换新的加密密钥和认证密钥后,HGW或家庭设备和网络服务器103也可以继续存储最初的主加密密钥和主认证密钥。在判明由于某种情况而使新的加密密钥和认证密钥不能顺利交换时,用存储着的主加密密钥和主认证密钥来进行数据分组的加密和认证。由此,即使在不能更新加密密钥和认证密钥时,也能够继续进行数据分组的加密和认证,安全性进一步提高。
在另一实施方式中,在HGW或家庭设备和网络服务器103间交换新的加密密钥和认证密钥后,HGW或家庭设备和网络服务器103也可以继续存储以前的加密密钥和认证密钥,同时,HGW或家庭设备和网络服务器103也继续存储最初的主加密密钥和主认证密钥。
在判明由于某种情况而使新的加密密钥和认证密钥不能顺利交换时,用存储着的以前的加密密钥和认证密钥来进行数据分组的加密和认证,进而,在新的加密密钥和认证密钥的交换连续失败时,用存储着的主加密密钥和主认证密钥来进行数据分组的加密和认证。由此,即使在加密密钥和认证密钥的更新连续失败时,也能够继续进行数据分组的加密和认证,安全性进一步提高。
在本实施方式中,HGW或家庭设备和网络服务器103间交换的安全性数据1213是用于对HGW或家庭设备和网络服务器103间通信的数据分组进行加密的加密密钥、和用于认证该分组的认证密钥。
安全性数据1213除了包含加密密钥和认证密钥中的至少一个,也可以包含加密算法。由此,HGW或家庭设备和网络服务器103间交换的数据分组的安全性进一步提高。
安全性数据1213除了包含加密密钥和认证密钥中的至少一个,也可以包含认证算法。由此,HGW或家庭设备和网络服务器103间交换的数据分组的安全性进一步提高。
安全性数据1213也可以包含加密算法。该算法也可以根据HGW或家庭设备和网络服务器103间交换的数据分组数、通信服务数、通信速度、通信服务的性质等而动态变更。由此,不对HGW或家庭设备和网络服务器103间进行的通信造成过剩的负荷,就能够选择最佳的加密算法,就能够始终维持良好的通信状态。再者,根据所需的加密强度、例如是需要维持非常高的安全性的数据分组、还是无需维持太高的安全性的数据分组来变更加密的强度,能够同时实现最佳的加密等级和最佳的通信质量这两者。
在本实施方式中,HGW或家庭设备将用于对向HGW或家庭设备发送的数据分组1409进行加密、或者进行认证的安全性数据1213通过数据分组1211发送到网络服务器103。
在本实施方式中,HGW将安全性数据1213通过数据分组1211发送到网络服务器103。数据1213被用于该HWG和网络服务器103间通信的数据分组、及通过该HGW和家庭网络连接的所有家庭设备和网络服务器103间通信的数据分组的加密和认证。由此,通过HGW和家庭网络连接的所有家庭设备和网络服务器103间进行的所有通信被集中在HGW中。因此,能够简化通信步骤,进行集中化,同时也集中管理安全性,安全性进一步提高。
上述实施方式的通信系统包含从HGW或家庭设备确立连接的1个网络服务器103,但是也可以包含多个网络服务器。此情况下的网络服务器连接信息表的记录1601示于图16。在图16所示的表1601中,网络服务器3能够从HGW确立连接,但是在服务器3以外也能够使用大致相同的表。图16只示出与网络服务器1有关的信息,但是与其他网络服务器有关的信息也同样。
在本实施方式中,想确立连接的HGW或家庭设备通过预先确认自身存储着的网络服务器连接信息表1601的内容,来决定与哪个网络服务器确立连接。为此使用的网络服务器连接信息表1601包含网络服务器1(1~3)的连接优先级1625、服务器1(1~3)的可确立连接时刻1627、以及与服务器1(~3)的连接确立有关的状态信息1629。
想确立连接的HGW或家庭设备通过确认预先存储着的网络服务器连接信息表1601的连接优先级1625,来决定与哪个网络服务器优先确立连接的网络服务器的顺序,根据该顺序,来进行以下说明的用于确立连接的过程。
接着,想确立连接的HGW或家庭设备确认网络服务器连接信息表1601内的可确立连接时刻1627的内容,判断另外存储着的当前时刻是否是可与各网络服务器确立连接的时刻。如果对于某个网络服务器,当前时刻在可确立连接时刻以外,则将该网络服务器从待确立连接服务器中排除。
最后,想确立连接的HGW或家庭设备确认网络服务器连接信息表1601的状态信息1629的内容,知道该网络服务器当前是否处于可确立虚拟连接的状况。通过以上过程,HGW或家庭设备决定确立连接的网络服务器103,向服务器103发送SYN-data 205的值为“1”的数据分组1211,确立连接。
在本实施方式中,用于决定确立连接的网络服务器的因素是连接优先级1625、可确立连接时刻1627、以及与连接确立有关的状态信息1629。该因素可以是它们以外的数据,也可以不包含上述这些数据的一部分。
与连接确立有关的状态信息1629的内容是网络服务器103是否处于故障中的信息、与服务器103的负荷状况有关的信息、服务器103是否正在被其他HGW或家庭设备优先使用的信息、或者与服务器103是否拒绝确立连接有关的信息,也可以组合它们中的两个以上。
在本实施方式中,决定确立连接的网络服务器103的因素不变更,但是也可以是可变的。在决定因素可变的情况下,该因素也可以根据网络服务器103的情况、HGW或家庭设备的情况、它们以外的情况、或者这些情况中的多个的组合来变更。
在决定确立连接的网络服务器103的因素根据HGW或家庭设备自身的情况以外来变更的情况下,用于变更该因素的数据1707通过图17所示的数据分组1701从网络服务器103或其他装置发送到HGW或家庭设备。数据1707也可以是网络服务器103由于负荷重而降低本网络服务器的连接优先级的信息。此外,数据1707也可以是网络服务器103由于负荷重而将当前时刻至规定的时刻从本网络服务器的可确立连接时间中排除的信息。此外,数据1707也可以是为了引诱或强制HGW或家庭设备避免主动与本网络服务器103确立连接而指示的信息。
在本实施方式中,数据分组1701从网络服务器103或其他装置发送到HGW或家庭设备。分组1701包含以下某一个信息作为用于变更决定确立连接的网络服务器103的因素的数据1707。
(a)表示本网络服务器103的当前的负荷大小的状态信息。
(b)本网络服务器的负荷当前很重所以引诱或强制与其他某一个网络服务器确立连接的状态信息。
(c)本网络服务器的负荷当前很重所以引诱或强制与其他规定的特定的网络服务器103确立连接的状态信息。
(d)本网络服务器的负荷当前很重所以引诱或强制今后与其他网络服务器确立新的连接的状态信息。
(e)本网络服务器的负荷当前很重所以切断当前正在确立的连接并引诱或强制与其他网络服务器确立新的连接的状态信息。
在实施方式1中,在用于确立连接的多个网络服务器103存在的情况下,根据网络服务器连接信息表1601具有的信息来决定应确立连接的网络服务器103。服务器103也可以不根据网络服务器连接信息表1601具有的信息,而根据其他因素来决定。应确立连接的网络服务器103也可以根据某种不确定因素、例如均匀随机数来随机决定。或者,服务器103也可以根据符合其他某种概率分布的概率变量来概率地决定。
在概率地决定应确立连接的网络服务器103的情况下,今后确立的新的连接也可以根据这些概率因素来决定。切断当前正在确立的连接的处理、或者切断当前正在确立的连接并确立新的连接的处理也可以根据这些概率因素来决定、执行。
实施方式1中的用户终端、网络服务器、HGW、家庭设备的所有功能、或一部分功能、作用、效果也可以通过各个装置中包含的CPU和由该CPU执行的程序来实现。在这些功能通过各个装置中包含的CPU和由该CPU执行的程序来实现的情况下,该程序被存储在CPU可读的记录媒体上。
产业上的可利用性
根据本发明的通信方法、通信系统,在开放型网络中,不具有用于确定通信对象的特别的管理服务器、或用于管理的数据通信、用于管理的协议,该网络上连接的设备就能够始终相互进行双向通信。