实施例1
图1是表示实施本发明的通信系统的概念图。本通信系统,包括路由器A101、B102、C103、D104、路由器A所属的家庭网(homenetwork)105、IP网106、从路由器B到D所属的各服务提供商的网(107、108、109)、属于家庭网的终端A110、B111、C112、各服务提供商的服务器(113、114、115)、SIP服务器119、服务提供商B的DHCP服务器120、管理服务器121。路由器A、B用VPN116连接、路由器A、C用VPN117连接,路由器A、D用VPN118连接。
图2-1是路由器的构成例。路由器A101,包括CPU(CentralProcessing Unit)201、存储器202、接口部204、205。CPU201,实际执行各种应用程序、及OS(Operating System)。存储器202用于存放CPU201执行中使用的程序、及各种应用程序。CPU201和存储器202通过总线203连接。接口部204、205,将从CPU201及存储器202所供给的数据供给外部的设备,或从外部的设备接收数据。接口部分别与线路(206、207)连接,接口部204、205中的一个是连接到家庭网105上的线路,而另一个是连接到IP网106上的线路。
图2-2表示存放在存储器202内的信息。在MAC-VPN对应表214、SIP URI变换表215、用户信息表216、过滤器项目表217、VPN管理表218等表、及存储器202内,存放UPnP(Universal Plug and Play)分析处理208、DHCP(Dynamic Host Configuration Protocol)处理209、SIP(Session Initiation Protocol)处理210、L2TP处理213等程序。L2TP处理213包括控制连接处理211、及L2传输处理212。
UPnP分析处理208,对从家庭网105中所属的终端(110、111、112)发出的UPnP消息进行分析,取得或生成VPN建立所需要的SIPURI。DHCP处理209,根据有无建立VPN,确定是否对终端提供DHCP服务器功能。L2TP处理213,提供利用L2TP的VPN功能。控制连接处理211,进行L2TP的控制连接的建立、释放处理。L2传输处理212在建立L2TP的控制连接后,进行L2数的传输处理。SIP处理210,进行会话的建立、释放。
MAC-VPN对应表214,为了将从终端发来的通信量分配给合适的VPN,对MAC地址和VPN间的对应关系进行管理。图3-1表示MAC-VPN对应表214的构成例。管理的信息包括:终端的MAC地址、发给服务提供商的VPN的SIP URI、服务提供商路由器的IP地址、建立中的VPN的VPN ID。
SIP URI变换表215,对利用UPnP取得的终端信息、及对应于终端的VPN的SIP URI进行管理。图3-2表示SIP URI变换表215的构成例。管理的信息包括:产品名、制造者名等终端信息、及对应于终端信息的VPN的SIP URI。
用户信息表216,对与服务提供商及平台提供商签约的用户的签约用户名等信息进行管理。图3-3表示用户信息表216的构成例。
过滤器项目表217,为了对VPN内的通信量进行适当地过滤,对每个L2TP的会话管理过滤器项目。图3-4表示过滤器项目表217的构成例,管理的信息包括:根据项目是否进行过滤(ON/OFF)、包的去向(Inbound/Outbound)、以太帧的发送源MAC地址及目标地址、IP包的发送源IP地址及目标IP地址、UDP、TCP包的发送源端口号、目标端口号、协议种类、以太帧及包与上述记述的规则一致时的处理(通过或废弃)。
VPN管理表218,对建立中的L2TP VPN进行管理。图3-5表示VPN管理表218的构成例。管理的信息包括:用于识别建立中的各VPN的VPN ID、对建立了VPN的自身接口分配的IP地址的本地IP地址、与建立了VPN的对方路由器IP地址的远程IP地址、作为自身路由器分配给控制连接ID、会话ID的ID的本地控制连接ID、本地会话ID、作为对方路由器分配给L2TP控制连接ID、会话ID的ID的远程控制连接ID、远程会话ID。
管理服务器121,保持SIP URI管理表1101,管理签约用户利用的终端信息和用于向服务提供商建立VPN的SIP URI间的对应关系。在图11-1中表示SIP URI管理表1101的构成例。SIP URI管理表1101,至少管理签约用户名、制品名、制造者名、服务提供商名、SIP URI的信息。制品名及制造者名是为识别终端的值,如图11-2中所示,也可以采用制造序号和制造者名等。
图4表示实施本发明的步骤。家庭(home)网105的用户,预先在路由器A101中登录了与服务提供商及平台提供商签约的用户名(USER A)等的签约信息。登录的信息由路由器A101的用户信息表216管理。另外,路由器B102,利用REGISTER消息将提供服务的VPN的SIP URI、及对应于上述SIP URI的IP地址登录在SIP服务器119中。
家庭网105内的终端A110,当与网络连接时为了取得IP地址,用广播发送DHCP DISCOVER消息。本消息的发送源MAC地址是终端A110的MAC地址aaa。接收1 DHCP DISCOVER消息的路由器A101,调出DHCP处理209。
在图6中表示DHCP处理209的处理流程。路由器A101,当接收DHCP DISCOVER消息(步骤601)时,取得消息的发送源MAC地址aaa(步骤602)。以取得的MAC地址aaa为基础,检索MAC-VPN对应表214(步骤603),确认有无登录MAC地址(步骤604)。当在MAC-VPN对应表214中有MAC地址的登录、且登录了VPN ID时,判断在由VPN连接的网内设置了DHCP服务器,并对终端不提供DHCP服务器功能,结束处理(步骤606)。当在MAC-VPN对应表214中没有MAC地址的登录时,对终端提供DHCP服务器功能(步骤605)。为了对终端通知可以利用的地址,发送DHCP OFFER消息,结束处理。在该阶段,由于终端A110的MAC地址,未登录在MAC-VPN对应表214中,所以路由器A101对终端A110提供DHCP服务器功能。路由器A101,从在家庭网105中管理的IP地址库中,选择未使用的IP地址a,采用DHCP OFFER消息对终端A110通知IP地址。通知的IP地址a的有效时间,假定从以后的服务提供商的DHCP服务器对终端A110分配地址,设定在比较短的时间。
再返回图4说明步骤。终端A110接收路由器A101发送的DHCPOFFER消息,为了通知利用所指定的地址a,对路由器A101发送DHCP REQUEST消息。接收DHCP REQUEST消息的路由器A101,将作为应答的DHCP ACK消息发送给终端A110。通过以上过程,对终端A110分配IP地址a。
终端A110利用从路由器A101取得的IP地址a,发送UPnP DeviceDiscovery消息的Advertisement:Device available。Advertisement:Device available是通知本终端可以利用的消息,采用SSDP(SimpleService Discovery Protocol)的alive。
路由器A101,当接收终端A110发送的UPnP消息时,调出UPnP分析处理208。图8中表示UPnP分析处理208的处理流。当路由器A101接收UPnP消息(步骤801)时,取得UPnP消息的发送源MAC地址(步骤802)。分析接收的消息(步骤803),并判断UPnP消息的种类。首先,判断接收消息是否是UPnP Device Discovery消息的Advertisement(步骤804)。在图10-1、图10-2中,表示UPnP DeviceDiscovery消息的Advertisement消息的记述例。是否是Advertisement由消息的请求方法1001判断。当请求方法是NOTIFY时,判断为Advertisement。由于本接收消息是Advertisement,所以处理步骤812。在步骤812,对接收的Advertisement消息的NTS标题1003进行分析,判断是否是通知终端可以利用的Device available(步骤812)。当NTS标题1003是ssdp:alive时,判断为Device available。由于本接收消息是Device available,所以处理步骤813。在步骤813中,从LOCATION标题取得终端A110的Description URL(http://a:12121)。DescriptionURL是表示终端的详细信息的记述场所的URL。路由器A101对在步骤813取得的URL(http://a:12121),发送HTTP(Hyper Text TransferProtocol)的QET请求(步骤814),结束处理。
再返回图4说明步骤。接收HTTP QET请求的终端A110,与200OK的响应代码一起,将UPnP Device Description消息发送给路由器A101。路由器A101,当接收UPnP消息时,调出UPnP分析处理208。进行从步骤801至804的处理,分析接收消息。在图10-3中表示UPnPDevice Description消息的记述例。本消息由于不是Advertisement,所以处理步骤805。在步骤805中,分析XML句法,判断接收消息是否是UPnP Device Description消息。当root标题1004的值是<rootxmins=“urn:schemas-UPnP-org:device-1-0”>时,判断为UPnP DeviceDescription消息,处理步骤806。当接收消息不是UPnP DeviceDescription时,结束处理。在步骤806上,从UPnP Device Description的manufacture标题1005及model Name标题1006,取得终端A110的制造者名(HITACHI)、及制品名(AA-100)。manufacture标题1005及model Name标题1006是UPnP Device Description消息中必须的信息,当没有记述时结束处理。在步骤807,将步骤806取得的终端A110的制品名、制造者名和在用户信息表216中所登录的签约用户名作为SIP URI请求消息,通知给管理服务器121,请求对应于终端A110的VPN服务的SIP URI。
接收了SIP URI请求的管理服务器121,取得接收的SIP URI请求中所包含的签约用户名、制品名、制造者名后,参照SIP URI管理表1101,取得相应的SIP URI。将取得的SIP URI、及由SIP URI请求消息通知的制品名、制造者名作为SIP URI应答发送给路由器A101。
当管理服务器121,用制造序号进行终端的识别时,在步骤806从Seria Number标题1007取得终端的制造序号(112233)。在步骤807,将在步骤806取得的终端制造序号(112233)和在用户信息表216中所登录的签约用户名作为SIP URI请求信息,通知给管理服务器121,并请求对应于终端A110的VPN服务的SIP URI。对于其他的处理,也用制造序号代替制品名。
再返回图8,说明UPnP分析处理流程208。在发送SIP URI请求(步骤807)之后,UPnP分析处理208,待机直到接收SIP URI应答。待机一定时间,当未接收SIP URI应答时,结束处理。当接收SIP URI应答(步骤808)时,在SIP URI变换表215中设定从SIP URI应答取得的制品名、制造者名、SIP URI。从设定的SIP URI变换表215取得对应于终端A110的SIP URI(XXX△△△)(步骤810)。在MAC-VPN对应表214中设定由步骤802取得的MAC地址aaa及在步骤810取得的SIP URI(步骤811),结束处理。
再返回图4,说明步骤。由UPnP分析处理208取得SIP URI的路由器A101,在SIP处理210中继续处理。SIP处理210利用由UPnP分析处理208取得的SIP URI,将会话开始请求(INVITE消息)发送给SIP服务器119。接收INVITE消息的SIP服务器119,分析SIP URI,对合适的传输目标的路由器B102传输INVITE消息。接收了INVITE消息的路由器B102,在符合会话开始请求时,将2000k消息发送给SIP服务器119。SIP服务器119将上述消息传输给路由器A101。接收2000k消息的路由器A101,参照标题字段,取得To标题中所包含的SIP URI(XXX△△△)和Contract标题中所包含的IP地址(B)。参照MAC-VPN对应表214,在具有相应SIP URI的项目记录从Contract字段取得的IP地址B。然后,将ACK消息直接发送给路由器B102。上述,根据步骤在路由器A101、B102之间建立SIP会话。
SIP会话建立后,路由器A101在L2TP处理213的控制连接处理211中继续处理。控制连接处理211,对于由SIP处理210取得的对方路由器的IP地址B,开始建立L2TP控制连接。路由器A101,参照MAC-VPN对应表214,取得路由器B102的IP地址B。生成将取得的IP地址B作为IP包的目的地的SCCRQ(Start Control ConnectionRequest)消息,发送给路由器B102。在SCCRQ消息中,包含路由器A101分配的控制连接ID9000。路由器A101分配的控制连接ID,采用Assigned Control Connection ID AVP进行通知。将通知的控制连接ID的9000作为本地控制连接ID,登录在VPN管理表218中。路由器B102作为对SCCRQ的应答,将SCCRP(Start Control ConnectionReply)发送给路由器A101。在SCCRP消息中包含路由器B102分配的控制连接ID 1111。路由器B102分配的控制连接ID,采用AssignedConrol Connection ID AVP进行通知。接收SCCRP信息的路由器A101,取得消息中所包含的路由器B分配的控制连接ID(1111),并作为远程控制连接ID记录在VPN管理表218中。然后,将SCCCN(StartControl Connection Connected)消息发送给路由器B。通过上述步骤,在路由器A101、B102间建立L2TP控制连接。再在路由器A101、路由器B102之间,交换ICRQ(Incoming call Request)、ICRP(Incomingcall Reply)、ICCN(Incoming call Connected)消息,建立L2TP会话。在ICRQ消息中包含路由器A101分配的会话ID6000。另外,在ICRP消息中包含路由器B102分配的会话ID 4444。路由器A分配的会话ID的6000作为本地会话ID,路由器B102分配的会话ID的4444作为远程会话ID,登录在路由器A101的VPN管理表218中。各路由器(A101、B102)分配的会话ID采用Local Session ID AVP进行通知。
控制连接、会话建立后,在相应的VPN管理表218中登录识别VPN的VPN ID 1。将与VPN管理表218中登录的VPN ID同样的VPNID(VPN ID 1),登录在控制连接建立开始前参照的MAC-VPN对应表214中。
通过以上UPnP分析处理208、SIP处理210、控制连接处理211,MAC-VPN对应表214的项目完成,可以管理MAC地址和VPN的对应关系。以后,参照上述表,进行L2传输处理212。
终端A110,当路由器A101的DHCP服务器分配的IP地址a的有效时间结束时,释放IP地址a,用广播发送DHCP DISCOVER消息。接收DHCP DISCOVER消息的路由器A101,调出DHCP处理209。DHCP处理209按照图6-2中所示的流程,进行从步骤601到604的处理。终端A110的MAC地址aaa,由于通过UPnP分析处理208的步骤811已经登录在MAC-VPN对应表214中,所以路由器A101,对终端A110不作为DHCP服务器进行操作(步骤606),结束处理。
另一方面,DHCP DISCOVER消息,由于是用广播发送的,所以L2TP处理213的L2传输处理212也可接收。
在图7-1中表示接收以太帧时的L2传输处理212的处理流程。图9表示在L2传输处理212中利用的包的构成图。当路由器A101从LAN一侧的接口捕捉以太帧907(步骤701)时,取得以太帧907的发送源MAC地址及目的地MAC地址(步骤702)。DHCP DISCOVER消息的目的地MAC地址是广播地址。判断取得的目的地MAC地址是否是广播目标或其他目标(步骤703)。当不是广播或其他目标时结束处理。由于本以太帧的目标MAC地址是广播地址,所以接着处理步骤704。在步骤704,参照MAC-VPN对应表214。判断以太帧的发送源MAC地址在MAC-VPN对应表214中是否已有登录、VPN ID是否已登录(步骤705)。当未登录时,结束处理。当已登录时,参照相应的VPN ID的过滤器项目表217,判断在步骤701捕捉的以太帧907是否是相应于项目(步骤707)。过滤器项目表217的发送源MAC地址及目标MAC地址,与以太标题904比较进行判断。发送源IP地址及目标IP地址,与IP标题905比较进行判断。发送源端口及目标端口与TCP/UDP标题906比较判断。协议从IP标题905的协议号(IPv4时)、下个标题(IPv6时)字段、及以太标题904的类型字段(field)进行判断。
当与项目不相应时,结束处理。当相应于项目时,参照项目的动作,判断动作是废弃还是通过(步骤708)。当废弃时结束处理。当通过时,从由步骤705取得的VPN ID参照VPN管理表218,取得远程IP地址、远程会话ID。在步骤701捕捉的以太帧907上加IP标题901、UDP标题902、L2TP会话标题903(步骤709),向WAN一侧线路输出L2TP包908(步骤710)。
通过以上的处理,家庭网内的终端发送的以太帧907,向对应于终端的服务提供商的网传输。因此,终端A110发送的DHCPDISCOVER消息,利用路由器A101、B102间构筑的L2TP通道(tunnel),向服务提供商B的网107传输。在服务提供商B的网107内设置的DHCP服务器B120,当从终端A110接收DHCPDISCOVER消息时,为了通知终端A110可以利用的IP地址A,将DHCP OFFER消息发送给终端A110。捕捉DHCP OFFER消息的路由器B102,生成包含本消息的L2TP包908,对路由器A101传输消息。
在图7-2中表示接收L2TP包时的L2传输处理212的处理流程。当路由器A101从WAN一侧接口接收L2TP包908(步骤711)时,从IP标题901、L2TP会话标题903、以太帧904,取得发送源IP地址、L2TP的会话ID、由L2TP建立通道的以太帧目标MAC地址(步骤712)。参照VPN管理表218,判断由步骤712取得的发送源IP地址及L2TP的会话ID建立过程中的L2TP VPN的远程IP地址及本地会话ID是否一致(步骤713)。当不一致时,结束处理。当一致时,从VPN管理表218取得VPN ID,并从接收的L2TP包908中,删除IP标题901、UDP标题902、L2TP会话标题903,取得以太帧907(步骤714)。对于取得的以太帧907,参照过滤器项目表218(步骤715),判断由步骤714取得的以太帧907是否是相应于项目(步骤716)。过滤器项目表217,与接收以太帧时同样,发送源MAC地址及目标MAC地址,与以太标题904进行比较判断。发送源IP地址及目标IP地址,与IP标题905进行比较判断。发送源端口及目标端口与TCP/UDP标题906进行比较判断。协议,从IP标题905的协议号(IPv4时)、下个标题(IPv6时)字段、及以太标题904的类型字段进行判断。当与项目不相应时,结束处理。当相应于项目时,参照项目的动作,判断动作是废弃还是通过(步骤717)。当废弃时结束处理。当通过时,参照MAC-VPN对应表214(步骤718)。判断相应于步骤713取得的VPN ID的MAC-VPN对应表项目的MAC地址,与以太帧907的目标MAC地址是否一致(步骤719)。当MAC地址一致时,将从L2TP包908取得的以太帧907输出给LAN一侧的线路(步骤722)。当不一致时,判断以太帧907的目标MAC地址是否是广播(步骤720)。当目标MAC地址不是广播时,结束处理。当目标MAC地址是广播时,将以太帧907的目标MAC地址改写为相应的MAC-VPN对应表项目中登录的MAC地址(步骤721),并将以太帧907输出给LAN一侧的线路(步骤722)。
通过以上的处理,服务提供商的服务器发送的以太帧907向合适的终端传输。因此,DHCP服务器B120发送的DHCP OFFER消息向终端A110传输。
终端A110接收DHCP OFFER消息,为了通知利用指定的地址A,对DHCP服务器B120发送DHCP REQUEST消息。接收了DHCPREQUEST消息的DHCP服务器B120,作为应答将DHCP ACK消息发送给终端A110。通过以上的处理,根据服务提供商B的运用方针,对终端A110分配IP地址AA。由于终端A110和服务提供商B的网107之间确保L2的连接性,所以分配的IP地址,与IP的版本(IPv4、IPv6)无关,可以分配任意的IP地址。另外,即使是IPv4的专用地址及IPv6的链接本地地址时也可以双向通信。
在终端B111和服务提供商C的网108、终端C和服务提供商D的网109之间,与终端A时同样构筑VPN。
与终端A110同样,为了对终端B111和服务提供商C的网108、及终端C112和服务提供商D的网109进行连接,在路由器A101、路由器C103间构筑VPN117,在路由器A101、路由器D104间构筑VPN118。在路由器A101的VPN管理表218中登录的VPN117的本地控制连接ID是8000,本地会话ID是5000,远程控制连接ID是2222,远程会话ID是5555,VPN ID是2。服务提供商C分配给终端B111的IP地址是BB,终端B111的MAC地址是bbb,路由器C的IP地址是C。而在路由器A101的VPN管理表218中登录的VPN118的本地控制连接ID是7000,本地会话ID是4000,远程控制连接ID是3333,远程会话ID是6666,VPN ID是3。服务提供商D分配给终端C112的IP地址是CC,终端C112的MAC地址是ccc,路由器D的IP地址是D。
路由器A,通过参照在上述处理作成的MAC-VPN对应表214,可以向适合各终端(110、111、112)的VPN分配终端的通信量。
在图12中表示VPN建立后的控制步骤例。假设服务提供商的网B107是家庭安全公司、服务提供商的网C108是图像分发公司、服务提供商的网D109是终端生产厂。家庭安全公司对用户住宅内的摄像机图像进行分析,提供对怀疑人等的监视服务。图像分发公司对用户住宅的TV及STB(Set Top Box)等提供图像分发服务。终端生产厂提供生产厂销售的制品的程序更新服务。
VPN建立、IP地址分配后,家庭安全公司的服务器B113,对签约用户住宅的摄像机(终端A)110通知图像发送请求。图像发送请求的目标IP地址采用DHCP服务器B120分配的单客户地址AA。图像发送请求由路由器B102捕捉,通过在路由器A101、B102间建立的VPN116,发送给摄像机(终端A110)。本L2TP包908的IP标题901的发送源IP地址是B,L2TP会话标题902的会话ID是6000。
接收上述L2TP包的路由器A101,调出L2传输处理212。L2传输处理212按照图7-2所示的流程进行处理。从发送源IP地址B及会话ID6000参照VPN管理表218,选择VPN ID 1。再从VPN ID参照MAC-VPN对应表214。由于对应于VPN ID 1的MAC地址aaa,与从L2TP包908取得的以太帧907的目标MAC地址一致,所以包含图像发送请求的以太帧907发送给终端A110。
接收了图像发送请求的终端A110,将摄像机图像发送给服务器B113。包含本摄像机图像的以太帧907的发送源MAC地址是aaa。所发送的摄像机图像,按照路由器A101的L2传输处理212的图7-1所示的流程进行处理。参照MAC-VPN对应表214,取得对应于发送源MAC地址aaa的VPN ID 1。参照对应于VPN ID 1的过滤器项目表217,如果是通过,则参照VPN管理表218,取得远程IP地址B及远程会话ID 4444。包含摄像机图像的以太帧907,被赋予IP、UDPL2TP标题,通过VPN116发送给家庭安全公司的服务器B113。家庭安全公司的服务器B113,接收摄像机图像,对图像分析后,将分析结果发送给终端A110。分析结果的发送,与图像发送请求相同。
图像分发公司的服务器C114,对签约用户住宅的TV(终端B111)发送可以分发的图像清单。清单的目标IP地址,采用分配给终端的单客户IP地址BB、多播地址、广播地址中的某一个。清单被路由器C103捕捉,通过路由器A101、C103间建立的VPN117,发送给TV(终端B111)。本L2TP包908的IP标题901的发送源IP地址是C,L2TP会话标题902的会话ID是5000。
接收了上述L2TP包的路由器A101,调出L2传输处理212。L2传输处理212按照图7-2所示的流程进行处理。从会话ID参照VPN管理表218,选择VPN ID 2。再从VPN ID参照MAC-VPN对应表214。当将清单发送到分配给终端B111的单客户地址时,对应于VPN ID 2的MAC地址bbb,由于与从L2TP包908取得的以太帧907的目标MAC地址一致,所以包含清单的以太帧907发送给终端B111。当将清单发送给广播地址时,在对应于VPN ID 2的MAC地址bbb上改写以太帧的目标MAC地址,将包含清单的以太帧907发送给终端B111。
接收了清单的终端B111,使清单在显示器上显示。当用户从清单中选择了图像时,将分发请求发送给图像分发商的服务器C114。本以太帧907的发送目标MAC地址是bbb。所发送的分发请求,按照路由器A101的L2传输处理212的图7-1所示的流程进行处理。参照MAC-VPN对应表214,取得对应于发送源MAC地址bbb的VPN ID 2。参照对应于VPN ID 2的过滤器项目表217,如果是通过,则参照VPN管理表218,取得远程IP地址C及远程会话ID 5555。包含分发请求的以太帧907被赋予UDP L2TP标题,通过VPN117发送给图像分发商的服务器C114。图像分发公司的服务器C114,通过VPN117将所请求的图像分发给终端B111。图像的分发,与给单客户地址的清单分发相同。
终端生产厂的服务器D115,对签约用户住宅的PC(终端C112)发送对应于终端的固件程序等的更新通知。程序的目标IP地址是分发给终端的单客户IP地址CC。程序更新通知被路由器D103捕捉,通过在路由器A101、D104间建立的VPN118,发送给PC(终端C112)。本L2TP包908的IP标题901的发送源IP地址是D,L2TP会话标题902的会话ID是4000。
接收了上述L2TP包的路由器A101,调出L2传输处理212。L2传输处理212按照图7-2所示的流程进行处理。从会话ID参照VPN管理表218,选择VPN ID 3。再从VPN ID参照MAC-VPN对应表214。对应于VPN ID 3的MAC地址ccc,由于与从L2TP包908取得的以太帧907的目标MAC地址一致,所以包含程序更新通知的以太帧907发送给终端C112。
接收了程序更新通知的终端C112,将程序更新请求发送给终端生产厂的服务器D115。本以太帧907的发送源MAC地址是ccc。发送的程序更新请求,根据路由器A101的L2传输处理212的图7-1中所示的流程进行处理。参照MAC-VPN对应表214,取得对应于发送源MAC地址ccc的VPN ID 3。参照对应于VPN ID 3的过滤器项目表217,如果是通过,则参照VPN管理表218,取得远程IP地址D及远程会话ID 6666。包含程序更新请求的以太帧907被赋予IP、UDP L2TP标题,通过VPN118发送给终端生产厂的服务器D115。终端生产厂的服务器D115,接收程序更新请求,通过VPN118将新的程序发送给终端C112。新程序的发送,与程序更新通知时相同。接收新程序的PC(终端C112)对程序进行更新。
图5表示切断终端对家庭网105的连接,路由器A101释放VPN的步骤。终端A110为了切断与家庭网105的连接,发送UPnP的DeviceDiscovery消息的Advertisement:Device unavaiable。Advertisement:Device unavaiable是通知本终端不可能利用的消息,采用SSDP的byebye。
路由器A101,当接收终端A110发送的UPnP消息时,调出UPnP分析处理208。进行从步骤801到804的处理。由于本消息的请求办法1001是NOTIFY,所以在处理步骤804之后,处理步骤812。由于NTS标题1003不是ssdp:alive,所以在步骤812之后处理步骤815。判断是否是Device available(步骤815),由NTS标题1003是否是ssdp:byebye来进行。当NTS标题1003是ssdp:alive以外时,结束处理。当NTS标题1003是ssdp:byebye时,参照MAC-VPN对应表214(步骤816),取得对应于相应的MAC地址的SIP URI、IP地址、控制连接ID、会话ID(步骤817)。删除对应于相应的MAC-VPN对应表214的项目(步骤818),结束处理。
再返回图5,说明步骤。在UPnP分析处理208中,取得删除VPN的路由器A101,在L2TP处理213的控制连接处理211之后继续处理。在控制连接处理211中,发送Stop CCN(Stop Control ConnectionNotification)或者CDN(Call Disconnect Notify),释放VPN。当在路由器A101、B102之间建立其他有效的L2TP会话时发送CDN,而当未建立时发送Stop CCN。通过上述步骤,释放L2TP控制连接。
VPN释放后,对SIP处理210继续处理。在SIP处理210中,采用由步骤615取得的SIP URI将会话释放请求(BYE消息)发送给SIP服务器119。接收了BYE消息的SIP服务器119,对路由器B102传输BYE消息。接收了BYE消息的路由器B102,将2000K消息发送给SIP服务器119,释放SIP会话。SIP服务器119将2000K消息传输给路由器A101。通过上述步骤释放SIP会话。
通过以上的处理,路由器A101可以从用户信息及终端信息解决适合于终端的VPN的SIP URI,与适合于终端的服务提供商建立VPN。还可以利用在VPN建立过程中作成的VPN-MAC对应表,对每个终端适合的VPN分配通信量。
(实施例2)
在实施例2中,对不存在管理服务器121时,路由器A101自动生成SIP URI的例子进行说明。图13表示实施本发明的通信系统。本通信系统,包括:路由器A101、B102、C103、D104、路由器A所属的家庭网105、IP网106、从路由器B到D所属的各服务提供商的网(107、108、109)、家庭中所属的终端A110、B111、C112、各服务提供商的服务器(113、114、115)、SIP服务器119、服务提供商B的DHCP服务器120。路由器A、B由VPN 116连接、路由器A、C由VPN 117连接,路由器A、D由VPN 118连接。
图14表示实施本发明的步骤。家庭网105的用户,预先在路由器A101中登录了与服务提供商或平台提供商签约的用户名等签约信息。登录的信息由路由器A101的用户表216管理。另外,路由器B102,利用REGISTER消息将包含提供服务的用户信息和终端信息的SIPURI、及对应于上述SIP URI的IP地址,登录在SIP服务器119中。登录的SIP URI,根据SIP URI生成规则表1102。在图11-3中表示SIP URI生成规则表的构成例。SIP URI生成规则表,对构成SIP URI的信息要素、及从上述信息要素生成的SIP URI的生成规则进行管理。另外,SIP URI生成规则表1102,由利用服务的用户路由器A101、及提供服务的服务提供商的路由器B102保持同一表。在本实施例中,签约用户名为USER A、提供服务的终端A的制品名为A4-100、制造者名为HITACHI,按照SIP URI生成规则表1102,使ServiceVPNUserA.AA-100.HITACHI.co.jp与Contact地址一起登录。Contact地址登录路由器B102的IP地址B。
家庭网105内的终端A110,用与实施例1同样的方法,从路由器A101取得IP地址a。终端A110利用从路由器A101取得的IP地址的a,与实施例1同样,发送UPnP Device Discovery消息的Advertisement:Device available。
当路由器A101接收终端A110发送的UPnP消息时,调出UPnP分析处理208。图15表示本实施例中的UPnP分析处理208的处理流程。由于接收的UPnP消息是Advertisement:Device available,所以进行从步骤801到804、及从步骤812到814的处理,并将HTTP GET请求发送给终端A110,结束处理。
再返回图14说明步骤。接收了HTTP GET请求的终端A110将UPnP Device Description消息与2000K的响应代码一起,发送给路由器A101。路由器A101,当接收UPnP消息时,调出UPnP分析处理208。由于本消息是UPnP Device Description消息,所以进行从步骤801到806的处理,从Device Description消息中所包含的manufacture标题1005及model Name标题1006中,取得终端A110的制造者名(HITACHI)及制品名(AA-100)等终端消息。manufacture标题1005及model Name标题1006是在UPnP Device Description消息中必须的信息,当没有记述时结束处理。
取得终端信息后,参照SIP URI生成规则表1102(步骤1501),确定在SIP URI生成中必要的信息要素。在本实施例中,由于签约用户名、制品名、制造者名是必要的,所以参照用户信息表217,取得签约用户信息(步骤1502)。根据SIP URI生成规则,利用在步骤806取得的制品名、制造者名、在步骤1502取得的签约用户名,生成SIPURI(Service VPNUserA.AA-100.HITACHI.co.jp)(步骤1503)。在MAC-VPN对应表213中,设定由步骤802取得的MAC地址aaa及在步骤1503生成的SIP URI(步骤811),结束处理。
通过上述处理,路由器A101生成终端连接的VPN的SIP URI。以后的处理与实施例1相同。通过以上的处理,即使不存在管理服务器121时,路由器A101也可以自动生成SIP URI,与适合于终端的服务提供商建立VPN。还可以利用在VPN建立过程中作成的VPN-MAC对应表,对每个终端合适的VPN分配通信量。
(实施例3)
在实施例3中,对通知家庭网内的终端连接的VPN的SIP URI的例子进行说明。实施本发明的通信系统及步骤与实施例2相同。
路由器B102,利用REGISTE消息将与提供服务的用户终端A110通知的SIP URI同样的SIP URI、及对应于上述SIP URI的IP地址登录在SIP服务器119中。在本实施例中,利用REGISTE消息以SIP URI为Service VPNAA-100.HITACHI.co.jp、以Contact地址为路由器B102的IP地址B进行登录。
家庭网105内的终端A110,以与实施例1、2同样的方法,从路由器A101取得IP地址a。终端A110利用从路由器A101取得的IP地址a,与实施例1同样,发送UPnP Device Discovery消息的Advertisement:Device available。
路由器A101,当接收终端A110发送的UPnP消息时,调出UPnP分析处理208。图16表示本实施例中的UPnP分析处理208的处理流程。由于接收的UPnP消息是Advertisement:Device available,所以进行从步骤801到804、及从步骤812到814的处理,并将HTTP GET请求发送给终端A110,结束处理。
返回图14说明步骤。接收了HTTP GET请求的终端A110将UPnPDevice Description消息与2000K的响应代码一起,发送给路由器A101。路由器A101,当接收UPnP消息时,调出UPnP分析处理208。由于本消息是UPnP Device Description消息,所以进行从步骤801到806的处理,取得终端A110发送的Device Description消息。图17中表示Device Description消息的记述例。除了通常的Device Description消息之外,还规定Service VPN标题1701,记述了终端A110连接的VPN的SIP URI。路由器A101的UPnP的分析处理208,取得在步骤1601由Device Description消息通知的终端连接的VPN的SIP URI。在MAC-VPN对应表214中设定在步骤802中取得的MAC地址、及在步骤1601中取得的SIP URI(步骤811),结束处理。
通过上述处理,路由器A101取得终端连接的VPN的SIP URI。以后的处理与实施例1、2相同。通过以上处理,当终端自己通知提供服务的VPN的SIP URI时,可以利用所通知的SIP URI,与对应于终端的服务提供商建立VPN。还可以利用在VPN建立过程中作成的VPN-MAC对应表,对每个终端合适的VPN分配通信量。
(实施例4)
在实施例4中,将不对应于UPnP的终端分配给适合的VPN路由器A时、或不利用UPnP时进行说明。实施本发明的通信系统与实施例2相同。
图18表示实施本发明的步骤。在路由器A101中,事前将家庭网105上连接的终端中需要与服务提供商的网连接的终端MAC地址和SIP URI登录在MAC-VPN对应表214中。在图1的通信系统中,登录终端A110、B111、C112的MAC地址和SIP URI。SIP URI是服务提供商对利用服务的用户事前以书面等进行通告。另外,各服务提供商B、C、D的路由器B、C、D,利用REGISTER消息将服务提供商提供的VPN的SIP URI、及对应于上述SIP URI的IP地址登录在SIP服务器119中。
登录MAC地址及SIP URI之后,路由器A101调出SIP处理210。SIP处理210以MAC-VPN对应表214中所登录的SIP URI为基础建立SIP会话。SIP会话建立后的处理,与实施例1相同。
通过以上处理,即使终端不支持UPnP时,路由器A101也可以与对应于终端的服务提供商建立VPN。还可以利用在VPN建立过程中作成的VPN-MAC对应表,对每个终端合适的VPN分配通信量。
(实施例5)
在实施例5中,对在不对应于UPnP时或不利用UPnP时,利用管理服务器121解决终端的SIP URI,路由器A将从终端来的通信量向适合的VPN分配的例子进行说明。实施本发明的通信系统与实施例1相同。
图19表示实施本发明的步骤。管理服务器121,对SIP URI管理表1101进行管理。SIP URI管理表是为管理对应于签约用户信息及终端信息的SIP URI的表。服务提供商的路由器B102,利用REGISTER消息将与提供服务的用户终端A110通知的SIP URI同样的SIP URI、及对应于上述SIP URI的IP地址B登录在SIP服务器119中。另一方面,在家庭网105的路由器A中,登录签约用户信息、终端信息(终端的MAC地址、制造序号、制造者名)。签约用户信息登录在用户信息表216中,终端信息登录在路由器A110的终端信息管理表1104中。图11-4中表示终端信息管理表的构成例。终端信息管理表1104是为建立终端与终端的MAC地址对应关系的表,如果是为了识别终端的值,则也可以采用制造序号和制造者名以外的值。例如也可以是UPnP的UNID、制造者及服务提供商独自分配的值。
在路由器A101中,当登录签约用户信息及家庭网内105内的终端信息时,对管理服务器121发送SIP URI请求。在SIP URI请求中,至少包括想解决VPN的SIP URI终端信息(制造序号、制造者名)及签约用户信息。当只用终端信息不能唯一确定SIP URI时,也可以包含利用服务的用户ID、及终端生产厂、服务提供商等的附加信息。接收了SIP URI请求的管理服务器121,参照SIP URI管理表1101,确定对应于所请求的用户、终端信息的SIP URI。将确定的SIP URI作为SIP URI应答,通知给路由器A101。路由器A101将通知的SIP URI和对应于进行了SIP URI请求的终端的MAC地址登录在MAC-VPN管理表214中,登录MAC地址及SIP URI之后,路由器A101调出SIP处理210。SIP处理210以MAC-VPN管理表214中所登录的SIPURI为基础建立SIP会话。以后的处理与实施例1相同。
通过以上处理,即使终端不支持UPnP时,利用服务的用户,在路由器A101不登录SIP URI,路由器A101也可以与对应于终端的服务提供商建立VPN。还可以利用在VPN建立过程中作成的VPN-MAC对应表,对适合每个终端的VPN分配通信量。