CN117955952A - 一种通信系统和通信链路保持方法 - Google Patents
一种通信系统和通信链路保持方法 Download PDFInfo
- Publication number
- CN117955952A CN117955952A CN202410290393.8A CN202410290393A CN117955952A CN 117955952 A CN117955952 A CN 117955952A CN 202410290393 A CN202410290393 A CN 202410290393A CN 117955952 A CN117955952 A CN 117955952A
- Authority
- CN
- China
- Prior art keywords
- node
- layer
- layer node
- nodes
- communication
- 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.)
- Pending
Links
- 230000006854 communication Effects 0.000 title claims abstract description 72
- 238000004891 communication Methods 0.000 title claims abstract description 71
- 238000000034 method Methods 0.000 title claims description 28
- 230000011664 signaling Effects 0.000 claims abstract description 41
- 230000003993 interaction Effects 0.000 claims description 9
- 238000012423 maintenance Methods 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 claims description 5
- 108020005224 Arylamine N-acetyltransferase Proteins 0.000 description 59
- 238000011330 nucleic acid test Methods 0.000 description 59
- 230000008859 change Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 230000032683 aging Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 101000884399 Homo sapiens Arylamine N-acetyltransferase 2 Proteins 0.000 description 5
- 101000713305 Homo sapiens Sodium-coupled neutral amino acid transporter 1 Proteins 0.000 description 5
- 102100036916 Sodium-coupled neutral amino acid transporter 1 Human genes 0.000 description 5
- 101000884385 Homo sapiens Arylamine N-acetyltransferase 1 Proteins 0.000 description 3
- 101001034811 Homo sapiens Eukaryotic translation initiation factor 4 gamma 2 Proteins 0.000 description 3
- 101000639975 Homo sapiens Sodium-dependent noradrenaline transporter Proteins 0.000 description 3
- 102100033769 Sodium-coupled neutral amino acid transporter 3 Human genes 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 3
- 238000004321 preservation Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 101100459439 Caenorhabditis elegans nac-2 gene Proteins 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000003999 initiator Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/2575—NAT traversal using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/604—Address structures or formats
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/69—Types of network addresses using geographic information, e.g. room number
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种通信系统,包括三层网络拓扑结构,第一层节点的位置固定,第一层节点的IP地址为公网IP地址;多个第二层节点,第二层节点的位置不固定,部分第二层节点的IP地址为内网IP地址;多个第三层节点,第三层节点的位置不固定,每个第三层节点与一个第二层节点直接连接,第三层节点通过直接连接的第二层节点与其他节点通信;第一层节点与第二层节点仅建立信令链路;第一层节点与第三层节点仅建立信令链路;第二层节点和第三层节点之间或多个第二层节点之间建立数据链路。
Description
技术领域
本发明涉及网络数据通信领域,具体地说,涉及通信系统和通信链路保持方法。
背景技术
现有的通信系统通常是中心化的通信系统,即用户和供应商的服务器建立通信连接,用户数据发送到供应商的服务器,用户数据存储在供应商的服务器上。如果是域内用户,服务器和目标用户建立通信连接,目标用户从供应商的服务器上接收数据,如果是域外用户,则供应商的服务器还要和目标用户所属的服务器建立通信连接,数据从发起端所属的服务器发送到目标用户所属的目标服务器上,目标服务器和目标用户建立通信连接,目标用户从目标服务器上接收数据,因此数据要经过一个或多个中间节点(服务器)。
上述现有技术中,通信系统信令和数据都是在同一条通信链路上传输的,从而导致数据传输效率低,服务器负载大。
发明内容
本发明为了解决上述技术问题,提供了一种通信系统,该通信系统由三层网络组成的拓扑结构,一个通信系统包括:第一层由位置相对固定的节点组成,且该节点的IP地址必须为公网IP地址。第二层由1~n个(n>=1的整数)节点组成,第二层节点的IP地址可以是公网IP地址也可以是内网IP地址,第二层的所有节点位置都不固定。第二层的每个节点与1~n个(n>=1的整数)第三层节点对应连接,第三层节点的IP地址可以是公网IP地址也可以是内网IP地址)。每个第三层的节点只能绑定一个第二层节点,每个第二层节点对应第三层节点的数量不一定相等。当第二层节点的数量为1,则对应连接的第三层节点数量大于等于2。
第一层节点和第二层节点以及第一层节点和第三层节点之间只有信令链路通道,只能够进行信令交互,没有数据交互。第二层节点互相之间只有数据链路通道,只能够进行数据交互。第三层节点之间没有通信链路,不可以直接进行通信,他们之间只有通过第二层节点才可以进行通信,第三层节点只可以和它对应的第二层的节点是绑定关系,并且只可以和它绑定的第二层节点通信,不能和绑定之外的第二层中的其他节点通信,这样的设置可以保证节点管理的安全性。
由于第二层节点和第三层节点可能是内网IP地址,意味着第二层节点和第三层节点位置在网络地址转换(Network Address Translation,NAT)后面,不能直接在公网上通信,需要进行NAT穿越。
NAT穿越后,在NAT表项中增加了NAT转发信息,从而实现第二层节点、第三层节点与外部进行通信。
然而,由于NAT表有老化时间,一段时间没有数据发生,该表项就会老化,导致节点无法连接。
NAT穿越需要一个有公网IP的中间节点,即第一层节点。第一层节点与第二层节点、第一次节点与第三层节点建立信令链路,信令链路保持在线,以便第二层节点和第三层节点网络发送变化时即时向第一层节点更新。第一层节点保存第二层节点和第三层节点外网地址二元组以及内网地址二元组,当其他节点与该节点通信时,向第一层节点索要该节点的外网地址二元组以及内网地址二元组,由于信令链路一直在线,这样就保证了随时都可以找到目标通信节点。
另外,由于第二层节点和第三层节点可以具有移动性,节点网络拓扑结构可能会发送变化,从而导致业务终端需要尽快重新建立数据链路,恢复数据业务,因此,通信链路保存方法涉及到信令链路保存和数据链路保存两个方面。
本发明方法是通过以下步骤确保信令链路在线:
新加入的节点(第二层节点和第三层节点)首次开机需要向所在系统中的第一层节点发送请求消息(request消息),第一层节点收到request消息后,如果该节点是在内网,第一层节点保存该节点的外网地址二元组以及内网地址二元组,如果是在外网,则只保存该节点的公网IP地址。
第一层节点向该节点回复答复消息(answer消息),将该节点的外网地址二元组以及内网地址二元组(或公网IP)返回给该节点,节点保存本节点的外网地址二元组以及内网地址二元组(或公网IP)。
第二层节点和第三层节点启动定时器,定时器时长为299秒,当定时器超时后,向第一层节点发送握手协议,保证NAT表不被老化;
通过上述步骤,确保在第二层节点或第三层节点与第一层节点的信令链路没有信令交互时,防止第二层节点或第三层节点的NAT表不会被老化失效,信令链路不会被断开。
当第二层节点网络拓扑结构发送变化时,将新的入网IP地址与保存在本地的内网IP地址进行比较,如果不一致,则向第一层节点发送request消息,第一层节点收到消息后更新该节点的外网地址二元组以及内网地址二元组。
第一层节点返回该节点answer消息,消息包含该节点的外网地址二元组以及内网地址二元组,该节点本地更新外网地址二元组以及内网地址二元组。
当第三层节点网络拓扑结构发送变化时,将新的入网IP地址与保存在本地的内网IP地址进行比较,如果不一致,则向第一层节点发送request消息,第一层节点收到消息后更新该节点的外网地址二元组以及内网地址二元组。
第一层节点返回该节点answer消息,消息包含该节点的外网地址二元组以及内网地址二元组,该节点本地更新外网地址二元组以及内网地址二元组。
通过上面的步骤,当第二层节点或第三层节点网络拓扑结构发送变化时,可以即时更新网络信息,保证第二层节点或第三层节点与第一层节点的信令链路永远不断开,第一层节点随时都可以联系第二层节点或第三层节点。
第二层节点,第三层节点之间的数据链路是可以断开的,为了有效使用网络资源,数据链路按照需要时建立,用完释放的原则。当有数据业务时,NAT表不会老化,因此,只需要关注发生数据业务时,第二层节点或第三层节点发生移动,网络拓扑结构变化,导致数据链路断开中断数据业务。
在进行数据业务过程中,当第三层节点发生网络拓扑结构变化时,节点将新的入网IP地址与保存在本地的内网IP地址进行比较,如果不一致,则向第一层节点发送request消息,第一层节点收到消息后更新该节点的外网地址二元组以及内网地址二元组。
第一层节点返回该节点answer消息,消息包含该节点的外网地址二元组以及内网地址二元组,该节点本地更新外网地址二元组以及内网地址二元组。
第一层节点向与该节点进行数据业务的目标节点发送网络连接状态消息(netinfor_ind消息),netinfor_ind消息携带该节点的外网地址二元组以及内网地址二元组,目标节点更新相关信息并重新建立数据链路,恢复数据业务。
在数据业务过程中,当第二层节点发生网络拓扑结构变化时,第二层节点将新的入网IP地址与保存在本地的内网IP地址进行比较,如果不一致,则向第一层节点发送request消息,第一层节点收到消息后更新该节点的外网地址二元组以及内网地址二元组。
第一层节点返回该节点answer消息,消息包含该节点的外网地址二元组以及内网地址二元组,该节点本地更新外网地址二元组以及内网地址二元组。
第一层节点向与该节点进行数据业务的目标节点发送网络连接状态消息(netinfor_ind消息),netinfor_ind消息携带该节点的外网地址二元组以及内网地址二元组,目标节点更新相关信息并重新建立数据链路,恢复数据业务。
由于第二层节点或第三层节点可能处在NAT后面,如果没有手动配置NAT表,该节点可以访问外网节点,但外网节点没法访问该节点,所以需要第一层节点帮助NAT穿越,NAT穿越后外网的节点就可以与该节点进行通信。但是,NAT表有老化时间,一段时间不通信NAT表会老化失效,同时,本系统中第二层节点和第三层节点可能具有移动性,会移动到其他网络拓扑结构下,此时,也需要即时重新建立相关的通信链路,由于本方法是发生变化的节点主动发现,主动发起通信链路修改的,因此,相对来说要高效,保证业务能够更顺畅。
本发明还提供了一种通信节点,通信节点用于通信系统中的第二节点或第三节点。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显。
图1是本发明一实施例的通信系统的结构示意图;
图2是本发明一实施例的无需NAT穿透时的节点网络结构示意图;
图3是本发明一实施例的节点注册流程图;
图4是本发明一实施例的节点属于不同的内网时,节点间链路建立的流程示意图;
图5是本发明一实施例的NAT穿透时的节点网络结构示意图;
图6是本发明一实施例的定时保持节点链路流程图;
图7是本发明一实施例的节点位置变化数据链路重建流程图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的实施方式。相反,提供这些实施方式使得本发明将全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的结构,因而将省略对它们的重复描述。
图1是本发明所针对的特定通信系统的结构示意图。如图1所示,通信系统包括三层网络拓扑结构,节点A为第一层节点,节点A的位置固定,即节点A的网络信息也是固定的。节点A的IP地址必须为公网IP地址。第二层节点包括多个节点,这里示例性地包括节点1以及节点n,第二层节点的位置不固定,因此这些节点的网络信息也会随着节点的位置发生变化。第二层节点的IP地址可以是公网IP地址也可以是内网IP地址。第三层包括多个节点,第三层节点和第二层节点有绑定关系。这里说的绑定关系是指第三层节点必须通过与之绑定第二层节点才能够通信,而不能与第二层其他任何节点直接通信,也不能直接与第三的任何节点直接通信。同样第三层节点位置也不确定,即第三层节点可以具有移动的属性。本系统中第一层节点不参与数据通信,只负责管理,配置本系统,第一层节点只进行信令交互。
本发明所提供的通信系统,第一层节点固定而第二层节点、第三层节点不固定,在保障对外通信稳定的基础上极大地增加了灵活性。第一层节点在网络中负责管理,但只进行信令交互不参与数据交互,因此大大减少了通信链路占用,提高了数据传输效率,服务器负载小。
由于第二层节点和第三层节点可能在一个或多个NAT后面,第二层节点或第三层节点不能直接参与公网通信,需要进行NAT穿越。NAT穿越需要根据NAT的类型采用具体的方法,详细的方案请参考RFC5389、RFC3489,本实施例采用的是UDP穿越,为了说明起见下面将两客户端位于不同的NAT设备后面典型步骤详细如下:
图2是本发明一实施例的无需NAT穿透时的节点网络结构示意图。如图2所示,节点1与节点3分别经由各自的NAT设备——NAT1以及NAT2,与节点A建立UDP连接。节点1与节点3的本地端口号均为4321,节点A的公网端口号为1234。在向外的会话中,节点1的外网IP被映射为155.99.25.11,外网端口为6200;节点3的外网IP被映射为138.76.29.7,外网端口为3100。
图3是本发明一实施例的节点注册流程图。如图3中步骤s101,节点1向节点A发送的登陆消息中,包含有节点1的内网地址二元组信息,即10.0.0.1:4321,目标地址为节点A的地址,即18.181.0.31:1234,NAT1设备上建立一个{10.0.0.1:4321,18.181.0.31:1234}的表项,节点A会记录下节点1的内网地址二元组信息,同时把节点1的外网地址二元组信息记录下来,节点1和节点A的信令链路就建立起来了。
在步骤s102中节点3向节点A发送的登陆消息中,包含有节点3的内网地址二元组信息,即10.1.1.3:4321;目标地址为节点A的地址,即18.181.0.31:1234,NAT2设备上建立一个{10.1.1.3:4321,18.181.0.31:1234}的表项,节点A会记录下节点3的内网地址二元组信息,同时把节点3的外网地址二元组信息记录下来,节点3和节点A的信令链路就建立起来了。
第二层节点和第三层节点在向节点A注册时,节点A都会记录该节点的内网地址二元组信息和外网地址二元组信息。如果该节点不是在内网,则只记录该节点的公网IP地址。
然而,当节点1和节点3分属不同的内网,它们的内网地址在外网中是没有路由的,所以发往各自内网地址的UDP数据包会发送到错误的主机或者根本不存在的主机上。因此在这种情况下需要进行NAT穿越。由于第二层节点或第三层节点可能处在NAT后面,如果没有手动配置NAT表,该节点可以访问外网,但外网节点没法访问该节点,所以,本发明中设置第一层节点帮助NAT穿越,NAT穿越后外网的节点就可以与该节点进行通信。
图4是本发明一实施例的节点属于不同的内网时,节点间链路建立的流程示意图。图4所示,首先执行步骤s201,节点1向节点A发送消息,请求与节点3建立数据链路。
接着执行步骤s202,节点A将节点3的内网地址二元组信息和外网地址二元组信息通过消息发送给节点1;
接着执行步骤s203,节点A将节点1的内网地址二元组信息和外网地址二元组信息通过消息发送给节点3。
至此,节点1、节点3均获得了对方的二元组信息地址,节点1、节点3互相之间接下来要进行数据传输。
在步骤s204中,节点1的第一个消息发往节点3的外网地址,该消息途经节点1的NAT设备,并在NAT上生成一个会话表项,该会话的源地址二元组信息是{10.0.0.1:4321,18.181.0.31:1234},和节点1与节点A建立连接的时候NAT生成的源地址二元组信息一样,但它的目的地址是节点3的外网地址。在节点1的NAT设备支持保留节点1的内网地址二元组信息的情况下,所有来自节点1的源地址二元组信息为{10.0.0.1:4321,18.181.0.31:1234}的数据包都沿用节点1与节点A事先建立起来的会话,这些数据包的外网地址二元组信息均被映射为{155.99.25.11:6200}。节点1向节点3的外网地址发送消息的过程就是“NAT穿越”的过程。从节点1的内网的角度来看应为从{10.0.0.1:4321}发往{138.76.29.7:3100},从节点1在其NAT设备上建立的会话来看,是从{155.99.25.11:6200}发到{138.76.29.7:3100}。如果节点1发给节点3的外网地址二元组的消息包在节点3向节点1发送消息包之前到达节点3的NAT设备,节点3的NAT设备会认为节点1发过来的消息是未经授权的外网消息,并丢弃该数据包。
在步骤s204中,节点3发往节点1的消息包也会在节点3的NAT设备上建立一个{10.1.1.3:4321,155.99.25.11:6200}的会话,通常也会沿用节点3与节点A连接时建立的会话,只是该会话现在不仅接受由节点A发给节点3的消息,还可以接受从节点1的NAT设备{155.99.25.11:6200}发来的消息。
图5是本发明一实施例的NAT穿透时的节点网络结构示意图,如图5所示,节点1与节点3都向对方的NAT设备在外网上的地址二元组发送了数据包,就打开了节点1与节点3之间的通路,节点1与节点3向对方的外网地址发送数据,等效为向对方的客户端直接发送UDP数据包了。节点1与节点3之间的数据链路就建立起来了。
实质上NAT穿越是在NAT设备上生成一个表项,一旦两个节点之间NAT设备上生成了对应的表项,节点间的链路也就建立起来了。
由于第二层节点和第三层节点可能在NAT后面,本发明需要第一层节点参与NAT穿越,由于第二层节点或第三层节点在NAT后面,外面的节点无法联系到NAT后面的节点,需要NAT后面的节点主动发送消息以便外面节点获取它的外网地址二元组以及内网地址二元组,否则该节点将无法参与该系统的通信,成为该系统的“孤点”。当第二层节点和第三层节点注册时,第二层节点和第三层节点都会向第一层节点发起注册流程,与第一层节点建立信令链路,信令链路必须永远在线,否则,当信令链路释放,而NAT后面的节点有不主动联系第一层节点,外界无法获取到该节点的外网地址二元组以及内网地址二元组,外界就无法和其通信。
然而,NAT表项有老化时间,一段时间没有数据交互,NAT表项会老化失效,默认的老化见下表:
为了防止NAT表项老化导致通信链路断开,本发明在各个通信链路都设置定时器定时发送消息。考虑到在集中节点A开启定时器负载比较大,定时器设置在第二层节点和第三层节点。
图6是本发明一实施例的定时保持节点链路流程图。如图6所示,在步骤s301中,节点1在注册登录后,启动定时器,本实施例中由于是基于UDP协议建立的链路,定时器的时长设置为239秒,且该定时器为循环定时器,定时器超时向节点A发送一条消息,该消息不携带任何内容,节点A收到该消息后不需要处理,直接丢弃。
同理,在步骤s302中,节点3在注册登录后,启动定时器,由于是基于UDP协议建立的链路,定时器的时长为239秒,且该定时器为循环定时器,定时器超时向节点A发送一条消息,该消息不携带任何内容,节点A收到该消息后不需要处理,直接丢弃。
所有的第二层节点和第三层节点都定时向节点A发送消息,保持与节点A的信令链路不会因为NAT表项老化而断开。
数据链路建立与断开和业务流程相关,在步骤s302中,节点1和节点3建立了数据链路,节点1和节点3都开启了定时器,定时器也是循环定时器,定时器超时后向对方发送一条消息,消息不携带任何内容,节点收到消息后不需要处理,直接丢弃,当业务结束时,节点1和节点3都需要停止定时器。
本发明通过保持第二层节点和第三层节点与第一层节点的信令链路永远在线,实时更新NAT后面第二层和第三层节点的外网地址二元组以及内网地址二元组,防止节点成为“孤点”,同时,也有利与节点移动时,网络发生变化,尽快恢复数据业务,提高用户的满意度。
由于第二层节点和第三层节点都具有移动性,节点位置可能发送变化,导致网络拓扑结构变化。下面介绍网络节点变化时的流程。
再次参考图2,节点1在NAT1后面,在图2网络结构的基础上,当节点1移动到NAT2后面,节点1与节点A原来建立的信令链路不可用。
因此需要对节点1位置变化信令链路重建。具体而言,在步骤s401中,节点1从NAT1后面移动到NAT2后面,节点1的内网二元组中元素由{10.0.0.1:4321}变成了{10.1.1.3:4321},节点1检测到自己位置变化后,向节点A发送消息,包含有节点1的内网地址二元组信息,即10.1.1.3:4321,目标地址为节点A的地址,即18.181.0.31:1234,NAT2设备上建立一个{10.1.1.3:4321,18.181.0.31:1234}的表项,节点A将用节点1新的内网地址二元组信息替换掉旧的内网地址二元组信息,同时把节点1的新的外网地址二元组信息替换掉旧的外网地址二元组信息,节点1和节点A的信令链路就重新建立起来了。
如果正在业务中节点位置变化会导致数据业务终端,需要尽快重建数据链路,恢复数据业务,提高用户的体验感。图7展示了节点位置变化数据链路重建流程示例。
如图7所示,步骤s501中,节点1由于位置变化导致节点1和节点A的信令链路重建,节点A在信令链路重建成功后,检测到节点1正在数据业务中,节点A需要将节点1新的内网地址二元组信息和新的外网地址二元组信息通知与节点1正在业务通信的所有节点。
在步骤s502中,节点A将节点1新的内网地址二元组信息和新的外网地址二元组信息通知与节点1正在业务通信节点3,节点3将节点1新的内网地址二元组信息和新的外网地址二元组信息替换掉节点1旧的内网地址二元组信息和新的外网地址二元组信息。
在步骤s503中,参与业务通信的节点基于新的网络信息通信,进一步地该步骤详述如下:
节点1向与自己进行业务通信的节点发送一条消息,该消息不携带任何内容,收到该消息的节点不做任何处理,直接丢弃。
与节点1进行业务通信的节点也向节点1发送一条消息,该消息不携带任何内容,节点1收到该消息也不做任何处理,直接丢弃。
当第二层和/或第三层节点建立了数据链路正在通信时,任何节点网络发生改变,发生改变的节点必须立即向第一层节点发送消息,第一层节点获取到该节点的外网地址二元组以及内网地址二元组后立即通知与其正在通信的节点,以便尽快恢复通信。
通过以上步骤,参与通信的节点对应的NAT就重建了一项新的表项,新的表项重建后,数据链路重建成功,数据业务恢复,由于是位置变化节点主动发起重建,重建响应快,数据业务得到即时恢复,用户的体验感得到显著提高。
本发明提供的通信链路保持方法,保持第一层节点和第二层节点的信令链路、第一层节点和第三层节点的信令链路在线。第一层节点和第二层节点一段时间没有通信时,第一层节点定时同第二层节点发送握手,达到防止NAT表老化的目的。第一层节点和第三层节点一段时间没有通信时,第一层节点定时同第三层节点发送握手,达到防止NAT表老化的目的。通过上述方法,使得信令链路永远在线,有利于系统中任何节点都可以随时找到目标通信节点,防止节点游离系统之外。
本发明提供的通信链路保持方法,在业务过程中,当第一层或第二层网络发送变化时,能快速重新建立数据链路。
第二层网络发生变化时,第二层节点向第一层节点发送请求消息,第一层节点就知道了该节点外网地址二元组以及内网地址二元组,第一层节点将该节点外网地址二元组以及内网地址二元组返回给该节点,达到重新建立信令链路的目的。另外,
同理,第三层网络发生变化时,第三层节点向第一层节点发送请求消息,第一层节点就知道了该节点外网地址二元组以及内网地址二元组,第一层节点将该节点外网地址二元组以及内网地址二元组返回给该节点,达到重新建立信令链路的目的。
在数据通信过程中无论是第二层还是第三层的节点网络发生变化都会导致通信终端,为了尽快恢复通信,第一层节点需要将发生变化节点的外网地址二元组以及内网地址二元组通知给参与通信节点,重新建立新的数据链路,恢复数据通信。由于本方法是发生变化的节点主动发现,主动发起通信链路修改的,因此,相对来说要高效,保证业务能够更顺畅。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (10)
1.一种通信系统,其特征在于,
所述通信系统包括三层网络拓扑结构,
第一层节点的位置固定,所述第一层节点的IP地址为公网IP地址;
多个第二层节点,所述第二层节点的位置不固定,部分所述第二层节点的IP地址为内网IP地址;
多个第三层节点,所述第三层节点的位置不固定,每个所述第三层节点与一个第二层节点直接连接,所述第三层节点通过直接连接的第二层节点与其他节点通信;
所述第一层节点与所述第二层节点仅建立信令链路;
所述第一层节点与所述第三层节点仅建立信令链路;
所述第二层节点和第三层节点之间或多个所述第二层节点之间建立数据链路。
2.根据权利要求1所述的通信系统,其特征在于,
所述信令链路一直连通,所述数据链路仅在需要通信时建立,通信完成后数据链路释放。
3.一种通信链路保持方法,其特征在于,所述通信链路保持方法用于权利要求1至2中任意一项所述的通信系统,
在所述第二层节点和第三层节点中设置定时器,定时向所述第一层节点发送消息。
4.根据权利要求3所述的通信链路保持方法,其特征在于,在所述第二层节点和第三层节点中设置定时器,定时向所述第一层节点发送消息包括步骤:
设置定时时间;
定时器超过定时时间,第二层节点和第三层节点向第一层节点发送握手消息;
重启定时器。
5.根据权利要求3所述的通信链路保持方法,其特征在于,
信令链路有信令交互后,重启定时器。
6.根据权利要求3所述的通信链路保持方法,其特征在于,
基于UDP协议建立信令链路,定时器的时长设置为239秒。
7.根据权利要求3所述的通信链路保持方法,其特征在于,
网络拓扑结构发生变化的节点向第一层节点发送请求消息,重新和第一层节点建立信令链路;
第一层节点在本地更新网络拓扑结构发生变化的数据节点的外网地址二元组以及内网地址二元组。
8.根据权利要求7所述的通信链路保持方法,其特征在于,
所述第一层节点将所述网络拓扑结构发生变化的节点的外网地址二元组以及内网地址二元组发送至与所述网络拓扑结构发生变化的节点进行数据通信的一个或多个节点,
进行数据通信的节点与所述网络拓扑结构发生变化的节点,基于更新的外网地址二元组以及内网地址二元组重新建立数据链路。
9.一种通信节点,其特征在于,所述通信节点用于权利要求1至2中任意一项所述的第二节点或第三节点。
10.根据权利要求9所述的通信节点,其特征在于,
所述通信节点中设置定时器,定时向所述第一层节点发送消息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310791959 | 2023-06-30 | ||
CN2023107919590 | 2023-06-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117955952A true CN117955952A (zh) | 2024-04-30 |
Family
ID=90796089
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410290393.8A Pending CN117955952A (zh) | 2023-06-30 | 2024-03-14 | 一种通信系统和通信链路保持方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117955952A (zh) |
-
2024
- 2024-03-14 CN CN202410290393.8A patent/CN117955952A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7720978B2 (en) | Method for data communication and system thereof | |
CN1879357B (zh) | 无服务器和无交换机因特网协议电话系统和方法 | |
US7518987B2 (en) | Mechanisms for providing connectivity in NAT redundant/fail-over scenarios in unshared address-space | |
EP2206320B1 (en) | Method and apparatus for peer to peer link establishment over a network | |
US20080285436A1 (en) | Methods, systems, and computer program products for providing site redundancy in a geo-diverse communications network | |
JP5518202B2 (ja) | エンドツーエンドコールの実現方法、エンドツーエンドコール端末及びシステム | |
KR20100087213A (ko) | 접속을 확립하는 방법 | |
CN103166849B (zh) | IPSec VPN互联组网路由收敛的方法及路由设备 | |
JP2013506358A5 (zh) | ||
US7246168B1 (en) | Technique for improving the interaction between data link switch backup peer devices and ethernet switches | |
US8233400B2 (en) | Methods, systems, and computer readable media for verifying the availability of an internet protocol (IP) media router during a call setup | |
KR20200072941A (ko) | 실시간 오류 감지를 통한 vrrp 기반의 네트워크 장애 대응 방법 및 장치 | |
CN117955952A (zh) | 一种通信系统和通信链路保持方法 | |
Cisco | Banyan VINES Commands | |
Cisco | Banyan VINES Commands | |
Cisco | Banyan VINES Commands | |
Cisco | Banyan VINES Commands | |
Cisco | Banyan VINES Commands | |
Cisco | Banyan VINES Commands | |
Cisco | Banyan VINES Commands | |
Cisco | Banyan VINES Commands | |
Cisco | Banyan VINES Commands | |
Cisco | Banyan VINES Commands | |
Cisco | Banyan VINES Commands | |
Cisco | Banyan VINES Commands |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |