发明内容
鉴于上述情况,本发明的目的在于提供一种包传输装置,在同一域内与进行了上行链路(uplink)VLAN设定的包传输装置连接的终端装置之间进行语音会话时,防止语音数据的延迟。并且,本发明的一个目的在于,防止因语音数据的传输延迟造成的质量劣化。本发明的一个目的在于,同时做到确保适用上行链路VLAN时的安全性和缩小传输延迟。
本发明一个目的在于,在会话的建立过程中,将可以根据SIP消息确定终端装置之间的信息与连接端口的对应关系登记在表中,在与同一包传输装置连接的终端装置之间,可以实现通过包传输装置的回信虚拟通信路径的RTP通信。并且,本发明一个目的在于降低包传输延迟时间。并且,本发明一个目的在于,在表中登记不同的通信协议的优先度,可以进行使RTP通信优先的传输。
为了达到上述目的,该包传输装置的一个特征是,在与同一包传输装置连接的SIP终端装置之间建立会话的过程中,具有存储可以特定发送侧SIP装置终端和接收侧SIP装置终端的信息(识别信息)与连接端口的对应关系的装置管理表、和用户连接管理表,在建立会话后接收到语音数据即RTP包时,按照上述表进行包传输装置的回信传输。
该包传输装置的一个特征是,通过搜寻在SIP装置终端之间通信的会话控制包的SIP消息(SIP搜寻),将用于确定SIP装置终端的信息、例如发送目标IP地址、发送源IP地址、发送目标端口序号、发送源端口序号、与连接端口的对应关系,存储在装置管理表和用户连接管理表中。
该包传输装置的一个特征是,在建立会话后,根据从发送侧SIP装置终端和接收侧SIP装置终端接收的RTP包的标题信息、和在会话连接过程中存储的用户连接管理表的用户连接信息,确认发送目标IP地址、发送源IP地址、发送目标端口序号、发送源端口序号,不适合于用户连接信息的RTP包向上行链路端口传输,对于适合于用户连接信息的RTP包进行回信传输。
该包传输装置例如具备:线路接口,包括收容具有多个IP电话和数据通信功能的用户终端的多个存取侧连接端口、和收容设置在ISP侧的GW装置的ISP侧连接端口;通信协议控制部,进行从存取侧连接端口向指定将要接收的所有包的ISP侧连接端口的传输处理和会话控制包的监视处理;处理器;以及控制部,管理用于存储通信处理程序、装置管理表、用户连接管理表等各种管理表的存储器。包传输装置进行来自收容于上述存取侧连接端口中的SIP装置终端的会话控制包的监视,在从上述发送侧SIP装置终端接收到向通信对方即上述接收侧SIP装置终端的会话建立请求包时,将可以根据上述会话建立请求包内的消息特定上述发送侧SIP装置终端和上述接收侧SIP装置终端的信息登记在装置管理表中。并且,在接收到来自上述接收侧SIP装置终端的会话建立答复包时,利用可以根据上述会话建立答复包内的消息特定上述发送侧SIP装置终端和上述接收侧SIP装置终端的信息,进行上述装置管理表的检索,在一致的情况下,在上述装置管理表中登记上述发送侧SIP装置终端或上述接收侧SIP装置终端的对应关系。在上述发送侧SIP装置终端或接收侧SIP装置终端之间的会话建立后,在按照收容上述发送侧或接收侧SIP装置终端的各个存取侧连接端口进行管理的用户连接管理表中,分别进行上述对应关系信息的登记。在从存取侧连接端口接收包时,根据接收包的识别信息进行用户连接管理表的检索,在不一致的情况下,进行向ISP侧连接端口的传输,而在一致的情况下,按照连接地点的输出端口信息进行上述接收包传输,从而降低上述发送侧SIP装置终端和接收侧SIP装置终端之间的传输延迟时间。
根据本发明的第一解决方案,提供一种通信系统中的第1包传输装置,该通信系统具有第1包传输装置、和在所述第1包传输装置及服务器或网络之间进行包的路由的第2包传输装置,所述第1包传输装置将从与第1终端通信的第1端口及/或与第2终端通信的第2端口输入的包,向与所述第2包传输装置通信的第3端口传输,所述第2包传输装置接收该包并回送给所述第1包传输装置,所述第1包传输装置按照发送目标信息传输来自所述第2包传输装置的该包,由此实现第1终端和第2终端之间的通信,
所述第1包传输装置具有:
装置管理表,对应地存储包括所述第1终端的识别信息和所述第1端口的识别信息的发送侧终端信息、和包括所述第2终端的识别信息和所述第2端口的识别信息的接收侧终端信息;
与包的发送源信息和发送目标信息相对应存储输出端口信息的连接管理表;以及
处理部,
所述处理部在通过所述第1端口接收到来自所述第1终端的会话建立请求包时,将所述会话建立请求包内的所述第1终端的识别信息和所述第1端口的识别信息登记在所述装置管理表的发送侧终端信息中,
所述处理部在通过所述第2端口接收到来自所述第2终端的针对该会话建立请求包的答复包时,将所述答复包内的所述第2终端的识别信息和所述第2端口的识别信息与发送侧终端信息对应,登记在所述装置管理表的接收侧终端信息中,
所述处理部将在所述装置管理表中登记的第1终端的识别信息作为发送源信息,将第2终端的识别信息作为发送目标信息,将所述第2端口信息作为输出目标端口信息,登记在所述连接管理表中,
所述处理部将在所述装置管理表中登记的第2终端的识别信息作为发送源信息、将第1终端的识别信息作为发送目标信息、将所述第1端口信息作为输出目标端口信息,登记在所述连接管理表中,
所述处理部在从所述第1或第2端口接收包时,根据所接收的包的发送源信息和发送目标信息,检索所述连接管理表,按照对应的输出端口信息,通过所述第2或第1端口传输所接收的包。
根据本发明的第二方案提供一种通信系统,具有多个上述包传输装置,各个包传输装置连接有多个,该多个包传输装置的至少一个连接所述第2包传输装置。
鉴于以上情况,根据本发明可以提供一种包传输装置,在同一域内的与进行了上行链路VLAN设定的包传输装置连接的终端装置之间进行语音会话时,防止语音数据的传输延迟。并且,根据本发明,可以防止因语音数据的传输延迟造成的质量劣化。根据本发明,可以同时做到确保适用上行链路VLAN时的安全性和缩小传输延迟。
根据本发明,在会话的建立过程中,将可以根据SIP消息特定终端装置之间的信息与连接端口的对应关系登记在表中,在与同一包传输装置连接的终端装置之间,可以实现通过包传输装置的回信虚拟通信路径的RTP通信。并且,根据本发明,可以降低包传输延迟时间。并且,根据本发明,通过在表中登记不同的通信协议的优先度,可以进行使RTP通信优先的传输。
具体实施方式
图1是本实施方式的通信系统的结构图。该通信系统具有包传输装置(第1包传输装置)(1)、L3SW(Layer 3 switch:层3交换机,第2包传输装置)(2)、SIP服务器(3)和SIP装置终端(5)。并且,该通信系统还可以具有WEB服务器(4)和WEB主机(6)。
在图1中,包传输装置(1)具有后面叙述的SIP搜寻(snooping)功能,构成广域L2交换网络(公用存取网)。在公用存取网中收容着WEB主机(6)和SIP装置终端(5-1、5-2、5-3、5-4)和WEB服务器(4)。与公用存取网连接的SIP装置终端(5)为了访问收容在ISP网中的SIP服务器(3),在公用存取网和ISP网之间连接有L3SW(2)。以下说明图1所示各个终端装置之间的通信示例。
例如,在WEB主机(6)与WEB服务器(4)通信时,按照包传输装置(1-1)、(1-3)的上行链路VLAN设定,包被传输给L3SW(2)。通过在L3SW(2)中路由备份,包通过包传输装置(1-3)、(1-2)被发送给WEB服务器(4),从而可以在WEB主机(6)与WEB服务器(4)之间通信。
例如,在具有识别名“UserB”的SIP装置终端(5-1)与具有识别名“UserC”的SIP装置终端(5-2)之间进行VoIP通信时,在设定了常规的上行链路VLAN的系统中,来自UserB的包被传输给L3SW(2),通过在L3SW(2)中路由备份后被UserC接收。在本实施方式中,通过具有SIP搜寻功能的包传输装置(1-1),在终端装置之间建立会话后的RTP通信,可以实现基于包传输装置(1-1)的回信传输的通信。
例如,在具有识别名“UserD”的SIP装置终端(5-3)与具有识别名“UserE”的SIP装置终端(5-4)之间进行跨越L2SW的VoIP通信时,在本实施方式中,通过具有SIP搜寻功能的包传输装置(1-3),在终端装置之间建立会话后的RTP通信,可以实现基于包传输装置(1-3)的回信传输的通信。
图2是表示适用包传输装置的通信网络的一例的图。图2仅是简要地表示图1所示的结构。
在图2所示的结构中,在收容于公用存取网络中的具有识别名“UserB”的SIP装置终端(5-1)与具有识别名“UserC”的SIP装置终端(5-2)之间,经由包传输装置(1)、L3SW(2)、SIP服务器(3)建立会话,并进行VoIP通信,通过这种示例说明本实施方式的包传输装置(1)的动作。
在该示例中,把作为发送侧的SIP装置终端(第1终端)(5-1)的IP地址和URI(Uniform Resource Identifier),例如分别设为“100.100.1.1”、“userb.aaa.com”。并且,把作为接收侧的SIP装置终端(第2终端)(5-2)的IP地址和URI,例如分别设为“100.100.1.10”、“userc.aaa.com”。把收容于ISP网中的SIP服务器(3)的IP地址和URI,例如分别设为“138.85.28.1”、“aaa.com”。并且,在包传输装置(1)的端口1(第1端口)连接着UserB的SIP装置终端(5-1),在端口2(第2端口)连接着UserC的SIP装置终端(5-2),在端口n(第3端口)连接着L3SW(2)。另外,各个端口除直接连接终端和L3SW等之外,也可以通过其他包传输装置等连接。
图3是表示包传输装置(1)的结构的一例方框图。
包传输装置(1)具有多个输入输出线路的线路接口(20-1~20-n:n为自然数)、输入输出线路(10-1~10-n:n为自然数)、通信协议处理部(30)及控制它们的控制部(40)。并且,也可以进行基于控制终端(120)的控制。输入输出线路(10-1~10-n)被赋予了多个端口序号。
控制部(120)具有存储处理程序(60、100)和各种表(70、80、90)的存储器(50)、和执行处理程序(60、100)的处理器(处理部)110。关于存储器(50)中由处理器(110)执行的处理程序,有包传输控制(60)和搜寻控制消息处理(100)。包传输控制(60)分析来自线路接口(20)的接收包,按照管理MAC地址的端口管理表(80)和以端口单位保存的用户连接管理表(90),向输出端口传输包。搜寻控制消息处理(100)在来自线路接口(20)的接收包包括SIP装置终端(5)之间的会话控制用的SIP消息时,从SIP有效载荷中搜寻确定SIP装置终端(5)的IP地址和端口序号,使用管理它们的装置管理表(70)和用户连接管理表(90)。
本实施方式的一个特征是,在从线路接口(20)接收到RTP包时,可以按照在会话连接过程中用于确定SIP装置终端(5)的IP地址和端口序号相对应的用户连接管理表(90),利用包传输装置(1)回信传输RTP包。另一方面,例如来自没有建立会话的终端的包,按照上行链路VLAN设定向上行链路传输,所以能够防止广播包被向其他终端传输,能够确保安全性。
图4是表示为了建立和切断会话而通信的SIP消息的包格式的图。
SIP消息被设定为IP标题(131)、TCP/UDP标题(132)和IP包的有效载荷部(133)。SIP消息包括:表示SIP消息的种类和发送目标的开始线(Start-line)(134);含有SIP参数的消息标题(Message-header)(135);记述了在终端之间逻辑形成的连接的信息的消息正文(Message-body)(136)。关于SIP消息的具体内容,将在后面参照图12~图23根据依照RFC3261确定的标题字段进行说明。
图8和图9是装置管理表(70)和用户连接管理表(90)的表结构图。
装置管理表(70)如图8所示,包括表示发送侧装置终端信息(70A)与接收侧装置终端信息(70B)的关系的一个或多个项目(EN)。发送侧装置终端信息例如包括请求者识别符、发送侧IP地址、数据接收用的端口序号和装置端口信息。接收侧装置终端信息例如包括发送目标IP地址、数据接收用的端口序号和装置端口信息。
用户连接管理表(90)如图8所示,对每个端口包括用于确定输出地点端口的发送目标地址(Destination Address)、发送源地址(SourceAddress)、发送目标端口序号(Destination Port)、发送源端口序号(Source Port)、输出地点端口的信息、及表示与优先度的对应关系的一个或多个项目(EN)。图8表示端口1和端口2的表结构示例。上述优先度通过对各种各样的通信协议赋予优先度,传输想要优先输出的包。包传输装置(1)将针对预先固定的所有接收包的的输出地点端口设定为连接上位L3SW的上行链路端口(端口n)。另外,在本实施方式中,每个端口具有用户连接管理表,但也可以利用一个或适当数量的表构成。
以下,参照图5~图7所示的进程图、图8和图9所示的装置管理表(70)和用户连接管理表(90),说明在收容于公用存取网中的SIP装置终端(5)之间进行VoIP通信时的包传输装置(1)等的动作。
图5是表示图2所示公用存取网中的发送侧SIP终端装置(5-1)和接收侧SIP终端装置(5-2)之间的会话建立进程的图。首先,参照图5说明会话的建立及在表中的信息登记的进程。
发送侧SIP终端装置(5-1)在与接收侧SIP终端装置(5-2)之间进行RTP通信之前,向SIP服务器(3)发送包括请求建立会话用的SIP消息的INVITE包(会话建立请求包)M1(101)。上述INVITE包M1例如图12所示,IP标题的发送目标地址(DA)包括SIP服务器(3)的IP地址,发送源地址(SA)包括发送侧SIP终端装置(5-1)的IP地址,UDP标题包括SIP用的端口序号“5060”。另外,在图中,记号#后面的字符串是作为注释而附加的。
SIP消息在开始线(134)中包括消息种类(INVITE)和接收侧SIP终端装置(5-2)的URI。在消息标题部(135)中,利用表示消息路径的Via标题指定发送侧SIP终端装置(5-1)的URI和端口序号,利用To标题指定请求的发送目标识别符,利用From标题指定请求者识别符,利用Call-ID指定会话的识别符。并且,在消息正文(136)中,利用c参数指定发送侧SIP终端装置(5-1)的IP地址,利用m参数指定SIP终端装置(5-1)的数据接收用的端口序号“50050”。
上述INVITE包M1通过包传输装置(1)的端口1被接收。包传输装置(1)在接收INVITE包M1后,根据UDP端口序号的值“5060”,判断接收包是SIP消息用的包。并且,例如,可以参照SIP消息的开始线判断是INVITE包。并且,包传输装置(1)根据所接收的INVITE包内的信息,将用于确定发送侧SIP终端装置(5-1)的IP地址“100.100.1.1”、及表示数据接收用的端口序号“50050”和接收了包的装置端口(端口1)的识别信息的对应关系的信息,登记在装置管理表(70)中(102)。IP地址和数据接收用的端口序号,例如可以从c参数、m参数中抽出。另外,除此以外,也可以从SIP消息内的适当信息中抽出。并且,包传输装置(1)还可以利用From标题登记请求者识别符。装置管理表(70)的一个项目例如为图8所示状态。包传输装置(1)按照装置端口(端口1)的用户连接管理表(90)向上行链路端口(端口n)传输。
L3SW(2)在接收上述INVITE包M2后(103),按照路由表向SIP服务器(3)发送INVITE包M3(104)。另外,包M2、M3的结构与包M1相同。在本实施方式的说明中,利用Mx表示各个包,但在以后的说明中,通过包传输装置(1)和L3SW(2)传输的包,除了适当附加、变更、删除标题等外,其他可以是相同结构。
SIP服务器(3)在接收INVITE包M3后,根据SIP消息的开始线表示的发送目标识别符“UserC@aaa.com”,通过规定的数据库及/或规定的处理,确定接收侧SIP装置终端(5-2)的IP地址“100.100.1.10”。SIP服务器(3)例如按照图13所示,向消息标题中追加用于将自家服务器追加到消息路径中的新的Via标题,生成改写了包M3的发送目标地址和发送源地址的INVITE包M4,传输给接收侧SIP装置终端(5-2)(105)。L3SW(2)在接收上述INVITE包M4后(105),按照路由表向接收侧SIP装置终端(5-2)传输INVITE包M5(106)。包传输装置(1)通过端口n接收上述INVITE包M5后,根据管理MAC地址信息的端口管理表(80)决定输出地点端口,向接收侧SIP装置终端(5-2)传输INVITE包M6(107)。
接收侧SIP装置终端(5-2)响应来信呼叫,向SIP服务器(3)发送包括SIP答复消息的200 OK包M7(108)。上述200 OK包M7例如图14所示,利用SIP消息的开始线表示消息种类“200 OK”,消息标题部中含有与INVITE包M6相同的信息。并且,在消息正文中,利用c参数指定接收侧SIP装置终端(5-2)的IP地址,利用m参数指定接收侧SIP装置终端(5-2)的数据接收用的端口序号“50070”。
上述200 OK包M7通过包传输装置(1)的端口2被接收。包传输装置(1)在接收200 OK包M7后,根据UDP端口序号的值“5060”,判断接收包是SIP消息用的包。并且,由于SIP消息的Cseq(201)是“INVITE”,所以判断是针对INVITE包的200 OK。包传输装置(1)搜寻(或参照、抽出)消息标题的From标题表示的请求者识别符,判断是否与登记在装置管理表(70)中的发送侧装置终端信息(70A)的请求者识别符一致。
包传输装置(1)在一致时,利用包M7的c参数和m参数,抽取用于对接收侧装置终端信息(70B)确定接收侧SIP装置终端UserC(5-2)的IP地址“100.100.1.10”和端口序号“50070”,并与接收了包的装置端口(端口2)的识别信息对应登记在装置管理表(70)的EN1中(109)。并且,在装置端口(端口1)的用户连接管理表(90-1)中登记EN2,在装置端口(端口2)的用户连接管理表(90-2)中登记EN2。例如,装置管理表(70)的EN1为图9所示状态。
具体地讲,包传输装置(1)在与存储在装置管理表(70)中的发送侧装置终端信息的装置端口(此处为端口1)对应的用户连接管理表(90-1)中,登记新的项目(EN2)。例如,包传输装置(1)将登记在装置管理表(70)中的接收侧装置终端信息的IP地址、端口序号和装置端口(此处为端口2),分别存储在用户连接管理表(90-1)的发送目标地址、发送目标端口和输出端口栏目中。并且,包传输装置(1)将登记在装置管理表(70)中的发送侧装置终端信息的IP地址和端口序号,分别存储在用户连接管理表(90-1)的发送源地址和发送源端口栏目中。包传输装置(1)将所登记的项目的优先度例如设定为“高”。
并且,包传输装置(1)在与存储在装置管理表(70)中的接收侧装置终端信息的装置端口(此处为端口2)对应的用户连接管理表(90-2)中,登记新的项目(EN2)。并且,将发送目标和发送源登记成为与用户连接管理表(90-1)相反,以便对从端口2接收的包也进行回信传输。例如,包传输装置(1)将送侧装置终端信息的IP地址、端口序号和装置端口(此处为端口1),分别存储在用户连接管理表(90-2)的发送目标地址、发送目标端口和输出端口栏目中。并且,包传输装置(1)将接收侧装置终端信息的IP地址和端口序号,分别存储在用户连接管理表(90-2)的发送源地址和发送源端口栏目中。包传输装置(1)将所登记的项目的优先度例如设定为“高”。
另一方面,包传输装置(1)在包M7的消息标题的From标题表示的请求者识别符、与登记在装置管理表(70)中的发送侧装置终端信息(70A)的请求者识别符不一致时,按照用户连接管理表(90-1)的EN1,向上行链路端口传输200 OK包M8(110)。L3SW(2)接收上述200 OK包M8后,按照路由表向SIP服务器(3)发送200 OK包M9(111)。
SIP服务器(3)在接收OK包M9后,例如按照图15所示,从消息标题部中删除SIP服务器(3)用的Via标题,发送已改写IP标题的发送目标IP地址和发送源IP地址的、发给发送侧SIP装置终端(5-1)的200 OK包M10(112)。L3SW(2)在接收上述200 OK包M10后,按照路由表向发送侧SIP装置终端(5-1)发送200 OK包M11(113)。包传输装置(1)在接收上述200 OK包M11后,根据管理MAC地址信息的端口管理表决定输出地点端口,向发送侧SIP装置终端(5-1)传输200 OK包M12(114)。
发送侧SIP装置终端(5-1)在接收上述200 OK包M12后,例如发送图16所示的ACK包M13(115)。上述ACK包M13由包传输装置(1)接收。包传输装置(1)在接收ACK包M13后,根据UDP端口序号的值“5060”,判断接收包是SIP消息用的包,由于在SIP消息的开始线中消息种类为“ACK”,所以向上行链路端口传输ACK包M14(116)。L3SW(2)在接收上述ACK包M14后,按照路由表向SIP服务器发送ACK包M15(117)。
SIP服务器(3)接收ACK包M15后,根据SIP消息的开始线或To标题表示的发送目标识别符“UserC@aaa.com”,确定接收侧SIP装置终端(5-2)的IP地址“100.100.1.10”。SIP服务器(3)例如按照图17所示,向消息标题中追加用于将自家服务器追加到消息路径中的新的Via标题,向接收侧SIP装置终端(5-2)传输改写了包M15的发送目标地址和发送源地址的ACK包M16(118)。L3SW(2)在接收上述ACK包M16后,按照路由表向接收侧SIP装置终端(5-2)传输ACK包M17(119)。
包传输装置(1)在接收上述ACK包M17后,根据管理MAC地址信息的端口管理表(80)决定输出地点端口,作为ACK包M18传输给接收侧SIP装置终端(5-2)(120)。
图6是表示本实施方式的包传输装置的RTP包的传输进程的图。下面,参照图6,说明发送侧SIP装置终端(5-1)与接收侧SIP装置终端(5-2)之间的语音数据等RTP包的传输进程。
发送侧SIP装置终端(5-1)例如按照图18所示,向发送目标IP地址发送包括接收侧SIP装置终端(5-2)的IP地址“100.100.1.10”、UDP发送目标端口“50070”的RTP包D1(201)。
包传输装置(1)在从端口1接收上述RTP包D1后,从用户连接管理表(端口1)(90-1)中检索对应于包D1的发送目标IP地址“100.100.1.10”的项目。此处,优先度较高的EN2被选中。包传输装置(1)按照对应项目的登记信息检查接收包。该情况时,RTP包D1的发送源IP地址“100.100.1.1”、发送目标端口序号“50070”、发送源端口序号“50050”满足项目EN2表示的登记条件,所以包传输装置(1)按照输出端口信息,通过端口2将RTP包D2回信传输给接收侧SIP装置终端(5-2)(202)。
另一方面,接收侧SIP装置终端(5-2)例如按照图19所示,向发送目标IP地址发送包括发送侧SIP装置终端(5-1)的IP地址“100.100.1.1”、UDP发送目标端口序号“50050”的RTP包D3(203)。
包传输装置(1)在从端口2接收上述RTP包D3后,从用户连接管理表(端口2)(90-2)中检索对应于包D3的发送源IP地址“100.100.1.1”的项目。此处,优先度较高的EN2被选中。包传输装置(1)按照对应项目的登记信息检查接收包。该情况时,RTP包D3的发送源IP地址“100.100.1.10”、发送目标端口序号“50050”、发送源端口序号“50070”满足项目EN2表示的登记条件,所以包传输装置(1)按照输出端口信息,通过端口1将RTP包D4回信传输给发送侧SIP装置终端(5-1)(204)。另外,发送侧SIP装置终端(5-1)、接收侧SIP装置终端(5-2)之间以外的包,对应于用户连接管理表(端口1)(90-1)、用户连接管理表(端口2)(90-2)的项目EN1,所以向上行链路端口传输。
图7是表示发送侧SIP终端装置(5-1)和接收侧SIP终端装置(5-2)之间的会话切断进程的图。下面,参照图7,说明会话的切断及从表中删除信息的进程。
例如,在发送侧SIP终端装置(5-1)的用户进行了会话的切断操作时,从发送侧SIP终端装置(5-1)发送包括会话切断用的SIP消息的BYE包M19(301)。此时的BYE包M19例如图20所示,具有与ACK包M13相同的IP标题、UDP标题,SIP消息的开始线中包括消息种类“BYE”、接收侧SIP终端装置(5-2)的IP地址“100.100.1.10”。包传输装置(1)从端口1接收上述BYE包M19后,根据UDP端口序号判断接收包是SIP消息用的包。并且,包传输装置(1)搜寻消息标题的From标题表示的请求者识别符,判断是否与登记在装置管理表(70)中的发送侧装置终端信息(70A)的请求者识别符一致。在一致时,删除对应项目EN1,删除用户连接管理表(端口1)(90-1)的EN2和用户连接管理表(端口2)(90-2)的EN2(302)。关于删除用户连接管理表(90-1)、(90-2)中的哪一方端口,例如可以根据存储在装置管理表(70)中的项目1中的信息确定。包传输装置(1)按照用户连接管理表(端口1)的EN1,向上行链路端口传输BYE包M20(303)。
另一方面,在消息标题的From标题表示的请求者识别符与装置管理表(70)中登记的发送侧装置终端信息(70A)的请求者识别符不一致时,例如,按照用户连接管理表(端口1)的EN1,向上行链路端口传输BYE包M20(303)。L3SW(2)在接收上述BYE包M20后,按照路由表向SIP服务器发送BYE包M21(304)。
SIP服务器(3)在接收BYE包M21后,根据SIP消息的开始线或To标题表示的发送目标识别符“UserC@aaa.com”,确定接收侧SIP装置终端(5-2)的IP地址“100.100.1.10”。并且,SIP服务器(3)例如按照图21所示,向消息标题中追加用于将自家服务器追加到消息路径中的新的Via标题,向接收侧SIP装置终端(5-2)传输改写了BYE包M21的发送目标地址和发送源地址的BYE包M22(305)。L3SW(2)在接收上述BYE包M22后,按照路由表向接收侧SIP装置终端(5-2)传输BYE包M23(306)。包传输装置(1)在通过端口n接收上述BYE包M23后,根据管理MAC地址信息的端口管理表(80)确定输出地点端口,将BYE包M24传输给接收侧SIP装置终端(5-2)(307)。
接收侧SIP装置终端(5-2)在接收上述BYE包M24后,向SIP服务器(3)发送包括SIP答复消息的200 OK包M25(308)。上述200 OK包M25例如图22所示,利用SIP消息的开始线表示消息种类“200 OK”,消息标题部包括与BYE包M24相同的信息。
上述200 OK包M25通过包传输装置(1)的端口2被接收。包传输装置(1)在接收200 OK包M25后,根据UDP端口序号的值“5060”,判断接收包是SIP消息用的包,由于SIP消息的Cseq(202)是“BYE”,所以判断是针对BYE包的200 OK,向上述链路端口传输200 OK包M26(309)。L3SW(2)在接收上述200 OK包M26后,按照路由表向SIP服务器发送200 OK包M27(310)。
SIP服务器(3)在接收200 OK包M27后,例如按照图23所示,从消息标题部中删除SIP服务器(3)用的Via标题,发送已改写IP标题的发送目标IP地址和发送源IP地址的、发给发送侧SIP装置终端(5一1)的200 OK包M28(311)。L3SW(2)在接收上述200 OK包M28后,按照路由表向发送侧SIP装置终端(5-1)发送200 OK包M29(312)。包传输装置(1)通过端口n接收上述200 OK包M29后,根据管理MAC地址信息的端口管理表(80)决定输出地点端口,作为200 OK包M30传输给发送侧SIP装置终端(5-1)(313)。
图10是表示利用上述包传输装置(1)实现回信传输所需要的包传输控制程序(60)的流程图。以下的处理,例如由控制部(40)的处理器(110)读出并执行存储在存储器(50)中的包传输控制程序(60)。
在包传输控制程序(60)中,从通信协议处理部(30)读出接收包,如果接收路径是来自终端连接端口的接收(S61),则判断接收包是否是SIP消息用的包(S62)。如果是SIP用的包(S62),则执行搜寻控制消息处理(S100)。具体处理将在后面叙述。另一方面,如果接收包不是SIP用的包(S62),则从用户连接管理表(90)中检索对应发送目标IP地址的项目。在用户连接管理表(90)中有对应的项目时,判定发送源IP地址、发送目标端口序号、发送源端口序号,决定输出地点端口(S63)。如果没有对应的项目,则将进行了静态设定的上行链路端口确定为输出地点端口(S63)。在确定输出地点端口后,向输出端口传输接收包(S66)。
另一方面,如果接收路径不是来自上行链路端口的接收(S61),则根据管理MAC地址信息的端口管理表(80)决定输出地点端口(S65),在决定输出地点端口后,向输出端口传输接收包(S66)。
图11具体表示SIP搜寻控制消息处理(100)。
在搜寻控制消息处理(100)中,判断接收包中包含的SIP消息的消息类别(S101)。
在接收消息例如是INVITE消息时(S101),包传输装置(1)将SIP消息的消息标题中指定的发送侧IP地址、和使发送侧端口序号与连接端口序号相对应的发送侧装置终端信息,输入登记在装置管理表(70)中(S102)。
在接收消息是200 OK包M25时(S101),如果SIP消息的消息标题中指定的Cseq(Command sequence)的方法(method)名称是INVITE(201),则判断是针对INVITE消息的200 OK消息,执行步骤S103的处理。例如,包传输装置(1)将发送目标IP地址和使发送目标端口序号与连接端口序号相对应的接收侧装置终端信息,输入登记在装置管理表(70)中(S103)。并且,在以连接端口单位保存的用户连接管理表(90)中,登记表示用于决定输出地点端口的发送目标地址、发送源地址、发送目标端口序号、发送源端口序号、输出地点端口和优先度的关系的项目(S103)。
在接收消息例如是BYE消息时(S101),从装置管理表(70)中删除具有SIP消息的消息标题中指定的请求者识别符的项目,删除相关联的用户连接管理表的项目(S104)。
在接收消息是针对BYE的200 OK或其他的消息、包时(S101),转入后面的处理(S63)。
(多级结构的处理示例)
在上述说明中,说明终端(5-1)、(5-2)连接一个包传输装置(1)的示例,但是,例如在图1所示连接有多个包传输装置(1)的情况下,各个包传输装置按照上述的处理进行工作,从而可以进行包传输装置的回信传输。
以下,说明如图1所示连接两级时的处理。在该示例中,为了便于说明,说明发送侧SIP装置终端(5-1)连接包传输装置(1-1)的端口1,接收侧SIP装置终端(5-2)连接包传输装置(1-2)的端口2(例如UserE的位置)的情况。并且,在该示例中,包传输装置(1-3)的端口1连接包传输装置(1-1),端口2连接包传输装置(1-3),端口n连接L3SW(2)。
图24、图25是多级连接的各个包传输装置中的装置管理表(70)和用户连接管理表(90)的示例。
来自发送侧SIP装置终端(5-1)的INVITE包通过包传输装置(1-1)的端口1被接收。包传输装置(1-1)与上述的处理102相同,将发送侧SIP装置终端(5-1)的IP地址“100.100.1.1”、和表示数据接收用的端口序号“50050”与接收了包的装置端口(端口1)的识别信息的对应关系的信息,登记在装置管理表(70)的发送侧装置终端信息中。图24(a)表示包传输装置(1-1)的装置管理表的示例。并且,包传输装置(1-1)通过上行链路端口n向包传输装置(1-3)传输INVITE包。
包传输装置(1-3)通过端口1接收INVITE包,与上述的处理102同样,将发送侧SIP装置终端(5-1)的IP地址、数据接收用的端口序号和接收了包的装置端口(端口1)的识别信息,登记在装置管理表(70)的发送侧装置终端信息中。图25(a)表示包传输装置(1-3)的装置管理表的示例。INVITE包与上述相同,经由SIP服务器被接收侧SIP装置终端(5-2)接收。
接收侧SIP装置终端(5-2)按照上述的处理108所示,向SIP服务器(3)发送包括SIP答复消息的200 OK包。上述200 OK包通过包传输装置(1-2)的端口2被接收。包传输装置(1-2)搜寻消息标题的From标题表示的请求者识别符,判断是否与登记在装置管理表(70)中的发送侧装置终端信息(70A)的请求者识别符一致。此处,由于包传输装置(1-2)的装置管理表(70)中没有登记图24(b)所示的发送侧装置终端信息,所以将200 OK包通过端口n传输给包传输装置(1-3)。
上述200 OK包通过包传输装置(1-3)的端口2被接收。包传输装置(1-3)搜寻消息标题的From标题表示的请求者识别符,判断是否与登记在装置管理表(70)中的发送侧装置终端信息(70A)的请求者识别符一致。此处,如图25(a)所示,由于存在请求者识别符一致的发送侧装置终端信息,所以包传输装置(1-3)与上述的处理109同样,关于接收侧装置终端信息(70B),将接收侧SIP装置终端(5-2)的IP地址、端口序号、接收了包的装置端口(端口2)的识别信息,登记在装置管理表(70)的EN1中(图25(b))。并且,包传输装置(1-3)由于装置管理表(70)中登记有发送侧装置终端信息(70A)和接收侧装置终端信息(70B),所以与上述相同,将各个信息(70A)和(70B)登记在用户连接管理表(90-1)、(90-2)中(图25(c)、(d))。
另一方面,在包传输装置(1-1)中,由于没有从终端侧的端口接收针对INVITE包的200 OK包,所以装置管理表(70)依旧是图24(a)所示状态。由于没有登记接收侧装置终端信息(70B),所以用户连接管理表中没有登记新的信息。
如上所述,在包传输装置(1-1)、(1-2)中,由于用户连接管理表中没有登记信息,所以按照上行链路VLAN设定,从终端侧的端口1和2接收的包向上行链路端口n传输。另一方面,在包传输装置(1-3)中,如图25(c)、(d)所示,由于用户连接管理表中登记有信息,所以对于发送侧SIP装置终端(5-1)和接收侧SIP装置终端(5-2)之间的包,能够通过包传输装置(1-3)进行回信传输通信。
如上所述,可以构成使用具有相同的动作程序的包传输装置连接多级的网络。
(网络结构示例)
图26表示具有上述的搜寻功能的包传输装置(1)构成为多级时的广域L2交换机网络(公用存取网)的VoIP通信示例。
通过在整个网络中进行考察发现,可以在下位网络中进行回信传输,所以对降低整个网络的通信业务资源和传输延迟时间及消除L3SW(2)的拥挤比较有效。
本发明例如可以用于已进行上行链路VLAN设定的通信系统,并且本发明例如可以用于构成同一域的存取网。