一种sctp通信方法及装置制造方法
【专利摘要】本发明公开了一种SCTP通信方法,包括:将本端设备中主机和备机的IP地址设置为相同,并将所述备机的IP地址设置为对对端设备不可见;当本端设备中的主机与对端设备通信时,实时同步所述主机与所述备机上的SCTP偶联信息;当发生主机备机切换时,将所述备机切换为主机并将所述备机的IP地址设置为对对端设备可见,所述备机通过其SCTP偶联信息与对端设备通信。此外,还公开了一种SCTP通信装置。本发明不仅节约IP资源,而且在发生主备机切换时不需要重建偶联,对端设备不需要执行相应操作来配合切换。主备机器采用实时同步机制来保证切换时主备机上SCTP偶联信息的一致性,使主备机切换速度大大提高,缩短了切换时间。
【专利说明】—种SCTP通信方法及装置
【技术领域】
[0001]本发明涉及网络通信【技术领域】,尤其涉及一种SCTP通信方法和一种SCTP通信装置。
【背景技术】
[0002]SCTP (Stream Control Transmission Protocol,流控制传输协议)是一种传输层协议,它主要是用于通过IP (Internet Protocol,网际协议)网来传送SCN (SwitchedCircuit Network,电路交换网)窄带信令消息。SCTP实际上是一个面向连接的传输协议,用于在不可靠的IP网络中提供可靠的连接。与TCP(Transmission Control Protocol,传输控制协议)相比,SCTP偶联的概念要比TCP连接具有更广的概念,SCTP对TCP的缺陷进行了一些完善,使得信令传输具有更高的可靠性,SCTP的设计包括适当的拥塞控制、更优的实时性能和多归属性能的支持。
[0003]目前电信运营网络中对用户体验的要求越来越高,以致对网络设备所承载的业务可靠性随之提高。然而,众所周知,网络中存在着各种各样的不确定因素:如设备掉电、网络拥塞、设备挂死等等。这些都难免会导致业务中断,影响用户体验。为了保证发生故障时系统业务不受中断,业界普遍采用主备机的方法来提供一种物理设备的1+1备份机制。
[0004]SCTP偶联作为传输上层应用业务的一个载体,如果其中断,将会导致上层应用业务中断。为了使承载于SCTP协议之上的业务在故障时不受中断影响,对SCTP协议提出了更高的可靠性要求,必需设法保证SCTP偶联在故障时不中断。为此,需要对SCTP偶联做1+1备份处理。目前情况下,一般的做法是SCTP偶联在一个多宿主主机上利用多路径机制对通道进行备份,这种做法不能避免设备掉电或者死机造成的故障。此外,也有做法是通过像M3UA (MTP3User Adaptation, MTP第三级用户的适配层协议)这样的应用层协议在不同机器上的不同偶联进行备份,但这样对对端机器的实现有一定的要求,不利于在不同产家的设备上实施。
【发明内容】
[0005]基于此,针对目前存在的SCTP通信可靠性问题和对对端设备容易造成影响的问题。本发明提供了一种SCTP通信方法和一种SCTP通信装置。
[0006]一种SCTP通信方法,包括以下步骤:
[0007]将本端设备中主机和备机的IP地址设置为相同,并将所述备机的IP地址设置为对对端设备不可见;
[0008]当本端设备中的主机与对端设备通信时,实时同步所述主机与所述备机上的SCTP偶联息;
[0009]当发生主机备机切换时,将所述备机切换为主机并将所述备机的IP地址设置为对对端设备可见,所述备机通过其SCTP偶联信息与对端设备通信。
[0010]与一般技术相比,本发明SCTP通信方法通过主备机器备份以防死机等严重故障,主备机器相对于对端设备采用相同的IP地址,正常工作时主机负责处理SCTP协议流程,备机在网络中对对端设备不可见。当主机故障时,备机切换为主机且对对端设备可见,备机使用备份的SCTP偶联信息继续与对端设备通信。本发明不仅节约IP资源,而且在发生主备机切换时不需要重建偶联,对端设备不需要执行相应操作来配合切换。因此对对端设备没有特殊要求,对端设备也无需感知故障发生,不影响上层应用。主备机器采用实时同步机制来保证切换时主备机上SCTP偶联信息的一致性,使主备机切换速度大大提高,缩短了切换时间。
[0011]一种SCTP通信装置,包括设置模块、同步模块和切换模块;
[0012]所述设置模块,用于将本端设备中主机和备机的IP地址设置为相同,并将所述备机的IP地址设置为对对端设备不可见;
[0013]所述同步模块,用于当本端设备中的主机与对端设备通信时,实时同步所述主机与所述备机上的SCTP偶联信息;
[0014]所述切换模块,用于当发生主机备机切换时,将所述备机切换为主机;并且所述设置模块将所述备机的IP地址设置为对对端设备可见,所述备机通过其SCTP偶联信息与对端设备通信。
[0015]与一般技术相比,本发明SCTP通信装置通过主备机器备份以防死机等严重故障,主备机器相对于对端设备采用相同的IP地址,正常工作时主机负责处理SCTP协议流程,备机在网络中对对端设备不可见。当主机故障时,备机切换为主机且对对端设备可见,备机使用备份的SCTP偶联信息继续与对端设备通信。本发明不仅节约IP资源,而且在发生主备机切换时不需要重建偶联,对端设备不需要执行相应操作来配合切换。因此对对端设备没有特殊要求,对端设备也无需感知故障发生,不影响上层应用。主备机器采用实时同步机制来保证切换时主备机上SCTP偶联信息的一致性,使主备机切换速度大大提高,缩短了切换时间。
【专利附图】
【附图说明】
[0016]图1为本发明SCTP通信方法的流程示意图;
[0017]图2为应用本发明SCTP通信方法的一个通信系统结构示意图;
[0018]图3为本发明SCTP通信方法一个实施例中主机实施流程图;
[0019]图4为本发明SCTP通信方法一个实施例中备机实施流程图;
[0020]图5为本发明SCTP通信装置的结构示意图。
【具体实施方式】
[0021]为更进一步阐述本发明所采取的技术手段及取得的效果,下面结合附图及较佳实施例,对本发明的技术方案,进行清楚和完整的描述。
[0022]请参阅图1,为本发明SCTP通/[目方法的流程不意图。
[0023]本发明SCTP通信方法,包括以下步骤:
[0024]SlOl将本端设备中主机和备机的IP地址设置为相同,并将所述备机的IP地址设置为对对端设备不可见;
[0025]S102当本端设备中的主机与对端设备通信时,实时同步所述主机与所述备机上的SCTP偶联信息;
[0026]S103当发生主机备机切换时,将所述备机切换为主机并将所述备机的IP地址设置为对对端设备可见,所述备机通过其SCTP偶联信息与对端设备通信。
[0027]在步骤SlOl中,将本端设备中主机和备机的IP地址设置为相同,并将所述备机的IP地址设置为对对端设备不可见。主机负责处理所有SCTP协议流程,备机在网络中对对端不可见,不处理任何SCTP协议流程;主备机之间通过内部通道通信。
[0028]请参阅图2,为应用本发明SCTP通信方法的一个通信系统结构示意图。
[0029]主机与备机SCTP偶联的本端地址使用相同的IP地址,备机的IP地址对外不可见,接收不到对端偶联的消息也无法向对端偶联发送消息。主机与备机通过内部消息通道进行通信。通过1+1备份方式,主备机器相对于对端采用相同的IP地址以节约IP资源;备机对对端来说是不可见的,不需要处理对端消息,降低了备机的赋荷。
[0030]在步骤S102中,采用在主机和备机之间实时同步偶联信息的方式对SCTP链接进行备份。当主机新建或删除指定偶联时,向备机发起新建或删除指定偶联;当主机偶联中信息有所更新时,向备机发送偶联更新消息要求更新相应偶联信息。
[0031]在第一实施例中,所述实时同步所述主机与所述备机上的SCTP偶联信息的步骤,包括以下步骤:
[0032]当所述主机中新建或删除一个SCTP偶联时,则在所述备机中新建或删除相应的SCTP偶联。
[0033]当主机与对端设备新建一个偶联时,很多情况是建立一个新的通信连接,备机此时需要跟进,也建立相同的偶联;但备机建立的偶联与对端设备不产生通信消息。当主机删除一个偶联时,很多情况是终止一个与对端设备的通信连接,备机也将相应的偶联删除。这样可以确保备机中的偶联信息随时与主机保持一致,为可能的主备机切换做好准备,当切换发生时可迅速完成,而不必临时复制很多切换所必要的信息。
[0034]在第二实施例中,所述实时同步所述主机与所述备机上的SCTP偶联信息的步骤,包括以下步骤:
[0035]当所述主机中一个SCTP偶联信息有更新时,则更新所述备机上相应的SCTP偶联信息。
[0036]由于主机与对端设备建立SCTP偶联之后,伴随着实时通信的过程,偶联信息也会随之改变。当主机中的SCTP偶联信息有更新时,也要实时更新备机上相应的SCTP偶联信息。这样可以确保备机中的偶联信息随时与主机保持一致,为可能的主备机切换做好准备,当切换发生时可迅速完成,而不必临时复制很多切换所必要的信息。
[0037]在第三实施例中,所述实时同步所述主机与所述备机上的SCTP偶联信息的步骤,包括以下步骤:
[0038]当所述主机与对端设备建立一个偶联时,向所述备机发送偶联添加命令;其中,所述偶联添加命令中包含有所述偶联的基本信息;
[0039]所述备机接收到所述偶联添加命令后,检查所述偶联是否已存在;
[0040]如果所述偶联存在,则所述备机根据所述偶联添加命令中的基本信息更新所述偶联;如果所述偶联不存在,则所述备机根据所述偶联添加命令中的基本信息建立一个新的偶联。[0041]当主机与对端设备建立偶联时,备机中有可能已经存在该偶联。这时可先对备机进行检测,如果偶联已经存在,则只需要对偶联进行更新,从而加快同步速度,减少不必要的操作。如果偶联不存在,则备机建立相应的偶联。同时,在整个过程中,备机与对端设备不进行通信。
[0042]在第四实施例中,所述实时同步所述主机与所述备机上的SCTP偶联信息的步骤,包括以下步骤:
[0043]当所述主机与对端设备通信时,实时向所述备机发送偶联更新命令;
[0044]所述备机收到所述偶联更新命令后,检查所述偶联是否存在;
[0045]如果所述偶联存在,则所述备机更新所述偶联;如果所述偶联不存在,则所述备机向所述主机发送偶联缺失消息;
[0046]所述主机收到所述偶联缺失消息后,查找相应偶联的基本信息,并向所述备机发送偶联添加命令;其中,所述偶联添加命令中包含有所述偶联的基本信息。
[0047]当主机与对端设备实时通信时,偶联信息也在实时发生变化。当需要对备机中的偶联进行更新时,先对备机进行检测,如果偶联已经存在,则只需要对偶联进行更新,从而加快同步速度,减少不必要的操作。如果偶联不存在,则备机需要先建立相应的偶联。同时,在整个过程中,备机与对端设备不进行通信。
[0048]作为一个优选的实施例,请参阅图3,为本发明SCTP通信方法一个实施例中主机实施流程图。请参阅图4,为本发明SCTP通信方法一个实施例中备机实施流程图。其中,ADD命令为偶联添加命令,UPDATA命令为偶联更新命令,DELETE命令为删除偶联的命令。
[0049]备机启动后,先向主机发送偶联同步请求,主机收到同步请求后,把主机上所有偶联信息同步到备机上;
[0050]当主机与对端成功建立偶联时,主机向备机发送偶联添加命令,偶联添加命令携带有偶联基本信息。备机接收到偶联添加命令后,先检查偶联是否已存在,如果不存在则使用偶联基本信息创建一个新的偶联。如果存在则用基本信息更新偶联;
[0051]偶联与对端通信过程中,实时向备机发送偶联更新命令来更新备机相应偶联的TSN和SSN值。备机收到更新命令后,先检查偶联是否存在,如果不存在,则向主机发送偶联缺失消息。如果存在,则更新偶联;
[0052]主机收到偶联缺失消息后,查找相应偶联的基本信息,并向备机发送偶联添加命令;
[0053]主机删除偶联时,向备机发送偶联删除命令。备机收到偶联删除命令后查找相应偶联并删除。
[0054]在步骤S103中,当主机故障时,上层软件可发起主备倒换重起主机并把主机切换为备机,备机切换为主机且对对端可见,备机使用原来备份的信息继续与对端通信。
[0055]故障端不需要重建偶联,从而不影响上层应用;对端不需要做任何动作以配合倒换,使得对端无需感知故障发生;实时同步机制使用倒换时间非常小;由上层软件发起主备倒换,实现简单,减小内核栈的复杂性。
[0056]当主备倒换完成后,备机成为新的主机,其IP地址对外可见,可以代替原有主机正常响应对端SCTP消息并进行数据传输。
[0057]与一般技术相比,本发明SCTP通信方法通过主备机器备份以防死机等严重故障,主备机器相对于对端设备采用相同的IP地址,正常工作时主机负责处理SCTP协议流程,备机在网络中对对端设备不可见。当主机故障时,备机切换为主机且对对端设备可见,备机使用备份的SCTP偶联信息继续与对端设备通信。本发明不仅节约IP资源,而且在发生主备机切换时不需要重建偶联,对端设备不需要执行相应操作来配合切换。因此对对端设备没有特殊要求,对端设备也无需感知故障发生,不影响上层应用。主备机器采用实时同步机制来保证切换时主备机上SCTP偶联信息的一致性,使主备机切换速度大大提高,缩短了切换时间。
[0058]请参阅图5,为本发明SCTP通信装置的结构示意图。
[0059]本发明SCTP通信装置,包括设置模块501、同步模块502和切换模块503 ;
[0060]所述设置模块501,用于将本端设备中主机和备机的IP地址设置为相同,并将所述备机的IP地址设置为对对端设备不可见;
[0061]所述同步模块502,用于当本端设备中的主机与对端设备通信时,实时同步所述主机与所述备机上的SCTP偶联信息;
[0062]所述切换模块503,用于当发生主机备机切换时,将所述备机切换为主机;并且所述设置模块将所述备机的IP地址设置为对对端设备可见,所述备机通过其SCTP偶联信息与对端设备通信。
[0063]作为其中一个实施例,所述同步模块用于当所述主机中新建或删除一个SCTP偶联时,在所述备机中新建或删除相应的SCTP偶联。
[0064]当主机与对端设备新建一个偶联时,很多情况是建立一个新的通信连接,备机此时需要跟进,也建立相同的偶联;但备机建立的偶联与对端设备不产生通信消息。当主机删除一个偶联时,很多情况是终止一个与对端设备的通信连接,备机也将相应的偶联删除。这样可以确保备机中的偶联信息随时与主机保持一致,为可能的主备机切换做好准备,当切换发生时可迅速完成,而不必临时复制很多切换所必要的信息。
[0065]作为其中一个实施例,所述同步模块用于当所述主机中一个SCTP偶联信息有更新时,更新所述备机上相应的SCTP偶联信息。
[0066]由于主机与对端设备建立SCTP偶联之后,伴随着实时通信的过程,偶联信息也会随之改变。当主机中的SCTP偶联信息有更新时,也要实时更新备机上相应的SCTP偶联信息。这样可以确保备机中的偶联信息随时与主机保持一致,为可能的主备机切换做好准备,当切换发生时可迅速完成,而不必临时复制很多切换所必要的信息。
[0067]作为其中一个实施例,所述同步模块用于当所述主机与对端设备建立一个偶联时,向所述备机发送偶联添加命令;其中,所述偶联添加命令中包含有所述偶联的基本信息;
[0068]所述备机接收到所述偶联添加命令后,检查所述偶联是否已存在;
[0069]如果所述偶联存在,则所述同步模块根据所述偶联添加命令中的基本信息更新所述偶联;如果所述偶联不存在,则所述同步模块根据所述偶联添加命令中的基本信息建立一个新的偶联。
[0070]当主机与对端设备建立偶联时,备机中有可能已经存在该偶联。这时可先对备机进行检测,如果偶联已经存在,则只需要对偶联进行更新,从而加快同步速度,减少不必要的操作。如果偶联不存在,则备机建立相应的偶联。同时,在整个过程中,备机与对端设备不进行通信。
[0071]作为其中一个实施例,所述同步模块用于当所述主机与对端设备通信时,实时向所述备机发送偶联更新命令;
[0072]所述备机收到所述偶联更新命令后,检查所述偶联是否存在;
[0073]如果所述偶联存在,则所述同步模块更新所述偶联;如果所述偶联不存在,则所述同步模块向所述主机发送偶联缺失消息;
[0074]所述主机收到所述偶联缺失消息后,查找相应偶联的基本信息,所述同步模块向所述备机发送偶联添加命令;其中,所述偶联添加命令中包含有所述偶联的基本信息。
[0075]当主机与对端设备实时通信时,偶联信息也在实时发生变化。当需要对备机中的偶联进行更新时,先对备机进行检测,如果偶联已经存在,则只需要对偶联进行更新,从而加快同步速度,减少不必要的操作。如果偶联不存在,则备机需要先建立相应的偶联。同时,在整个过程中,备机与对端设备不进行通信。
[0076]与一般技术相比,本发明SCTP通信装置通过主备机器备份以防死机等严重故障,主备机器相对于对端设备采用相同的IP地址,正常工作时主机负责处理SCTP协议流程,备机在网络中对对端设备不可见。当主机故障时,备机切换为主机且对对端设备可见,备机使用备份的SCTP偶联信息继续与对端设备通信。本发明不仅节约IP资源,而且在发生主备机切换时不需要重建偶联,对端设备不需要执行相应操作来配合切换。因此对对端设备没有特殊要求,对端设备也无需感知故障发生,不影响上层应用。主备机器采用实时同步机制来保证切换时主备机上SCTP偶联信息的一致性,使主备机切换速度大大提高,缩短了切换时间。
[0077]以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
【权利要求】
1.一种SCTP通信方法,其特征在于,包括以下步骤: 将本端设备中主机和备机的IP地址设置为相同,并将所述备机的IP地址设置为对对端设备不可见; 当本端设备中的主机与对端设备通信时,实时同步所述主机与所述备机上的SCTP偶联息; 当发生主机备机切换时,将所述备机切换为主机并将所述备机的IP地址设置为对对端设备可见,所述备机通过其SCTP偶联信息与对端设备通信。
2.根据权利要求1所述的SCTP通信方法,其特征在于,所述实时同步所述主机与所述备机上的SCTP偶联信息的步骤,包括以下步骤: 当所述主机中新建或删除一个SCTP偶联时,则在所述备机中新建或删除相应的SCTP偶联。
3.根据权利要求1所述的SCTP通信方法,其特征在于,所述实时同步所述主机与所述备机上的SCTP偶联信息的步骤,包括以下步骤: 当所述主机中一个SCTP偶联信息有更新时,则更新所述备机上相应的SCTP偶联信息。
4.根据权利要求1所述的SCTP通信方法,其特征在于,所述实时同步所述主机与所述备机上的SCTP偶联信息的步骤,包括以下步骤: 当所述主机与对端设备建立一个偶联时,向所述备机发送偶联添加命令;其中,所述偶联添加命令中包含有所述偶联的基本信息; 所述备机接收到所述偶联添加命令后,检查所述偶联是否已存在; 如果所述偶联存在,则所述备机根据所述偶联添加命令中的基本信息更新所述偶联;如果所述偶联不存在,则所述备机根据所述偶联添加命令中的基本信息建立一个新的偶联。
5.根据权利要求1所述的SCTP通信方法,其特征在于,所述实时同步所述主机与所述备机上的SCTP偶联信息的步骤,包括以下步骤: 当所述主机与对端设备通信时,实时向所述备机发送偶联更新命令; 所述备机收到所述偶联更新命令后,检查所述偶联是否存在; 如果所述偶联存在,则所述备机更新所述偶联;如果所述偶联不存在,则所述备机向所述主机发送偶联缺失消息; 所述主机收到所述偶联缺失消息后,查找相应偶联的基本信息,并向所述备机发送偶联添加命令;其中,所述偶联添加命令中包含有所述偶联的基本信息。
6.一种SCTP通信装置,其特征在于,包括设置模块、同步模块和切换模块; 所述设置模块,用于将本端设备中主机和备机的IP地址设置为相同,并将所述备机的IP地址设置为对对端设备不可见; 所述同步模块,用于当本端设备中的主机与对端设备通信时,实时同步所述主机与所述备机上的SCTP偶联信息; 所述切换模块,用于当发生主机备机切换时,将所述备机切换为主机;并且所述设置模块将所述备机的IP地址设置为对对端设备可见,所述备机通过其SCTP偶联信息与对端设备通信。
7.根据权利要求6所述的SCTP通信装置,其特征在于,所述同步模块用于当所述主机中新建或删除一个SCTP偶联时,在所述备机中新建或删除相应的SCTP偶联。
8.根据权利要求6所述的SCTP通信装置,其特征在于,所述同步模块用于当所述主机中一个SCTP偶联信息有更新时,更新所述备机上相应的SCTP偶联信息。
9.根据权利要求6所述的SCTP通信装置,其特征在于,所述同步模块用于当所述主机与对端设备建立一个偶联时,向所述备机发送偶联添加命令;其中,所述偶联添加命令中包含有所述偶联的基本信息; 所述备机接收到所述偶联添加命令后,检查所述偶联是否已存在; 如果所述偶联存在,则所述同步模块根据所述偶联添加命令中的基本信息更新所述偶联;如果所述偶联不存在,则所述同步模块根据所述偶联添加命令中的基本信息建立一个新的偶联。
10.根据权利要求6所述的SCTP通信装置,其特征在于,所述同步模块用于当所述主机与对端设备通信时,实时向所述备机发送偶联更新命令; 所述备机收到所述偶联更新命令后,检查所述偶联是否存在; 如果所述偶联存在,则所述同步模块更新所述偶联;如果所述偶联不存在,则所述同步模块向所述主机发送偶联缺失消息; 所述主机收到所述偶联缺失消息后,查找相应偶联的基本信息,所述同步模块向所述备机发送偶联添加命令;其中, 所述偶联添加命令中包含有所述偶联的基本信息。
【文档编号】H04L12/24GK103888283SQ201310407715
【公开日】2014年6月25日 申请日期:2013年9月9日 优先权日:2013年9月9日
【发明者】赵剑川, 贾克明 申请人:京信通信系统(中国)有限公司