专利名称:一种同步用户数据的方法和系统以及网络设备的制作方法
技术领域:
本发明涉及数据同步技术,特别涉及一种同步用户数据的方法和系统以 及网络设备。
背景技术:
随着对网络技术利用的越来越广泛,相应的对网络可靠性的要求也越来 越高。在单路由结构下,核心服务器作为整个网络的数据转发点,其运行可 靠性直接影响了应用的正常运行,设备故障、或者对设备进行检查、调试、 软件升级时引起的设备重启会造成网络的中断。为了避免由于设备或链路出 现故障造成的网络中断,需要做到诸如服务器等网络设备间的主备份。虚拟路由冗余协议(VRRP)是一种由互联网工程任务组提出的应用于 网络层来增强网络可靠性的技术。在VRRP中存在VPPR路由器和虚拟路由 器VRRP路由器是指运行VRRP的路由器,是物理实体;虚拟路由器是一 组VRRP协同工作共同构成的,是逻辑概念。该虚拟路由器对外表现为一个 具有唯一固定IP地址和介质访问控制(MAC)地址的逻辑路由器。处于同一 VRRP组的路由器有两种主用路由器和备用路由器。 一个 VRRP组中有且只有一个主用路由器,用于负责相应信令和IP数据包的转 发;可以有一个或一个以上备用路由器,用于在主用路由器发生故障时,能 在几秒种时间的时延后升级为主用路由器。VRRP采用设置主备用路由器的方法虽然能够解决网络设备故障造成 的网络中断问题,但是当网络设备需要保存用户数据时,并没有解决网络设 备之间的用户数据备份问题。所述需要保存用户数据的网络设备可以是宽带 接入服务器、或者归属代理(HA)等。目前,在使用上述需要保存用户数据的网络设备时, 一般采用一种移动因特网协议版本6 ( MIPv6)中的机制,用以解决HA失败检测、状态转移 和状态转换的可靠性问题。同样采用主备用方式,主用HA发生故障后,备 用HA接替主用HA继续为移动节点(MN)提供服务。在MIPv6中的方法中,HA之间周期性的交换hello消息来建立和维护 主备用设备之间的成员列表,并用来进行HA故障纟笨测。主用和备用的HA 之间通过HA控制消息实现HA设备的状态转换。所述hello消息和HA控 制消息通过Internet协议安全(IPsec )进行保护。为了能够在主用HA发生 故障后,备用状态的HA中存在发生故障前的主用HA中的用户数据,就需 要在主用HA和备用HA之间进行用户数据的同步。在该方法中,主用HA 和备用HA之间通过发送状态同步(State Synchronization )消息实现信息同 步。所述State Synchronization消息中可以包含MN的绑定緩存、鉴别授权 计费信息(AAA)、或者其它用户数据。在主用HA收到MN请求或者老化 时间时,更新用户数据,然后通过IP数据包发送给备用HA。另外,备用 HA到一定老化时间时,也可以向主用HA发送请求,然后主用HA将相关 用户数据发送给备用HA。主用的HA和/或备用的HA在收到一个State Synchronization消息后,会检查IP头中的源地址。如果源地址不属于成员 列表中的HA时,丟弃该消息;否则,接收该消息,并更新用户数据。这种方法虽然实现了网络设备之间的用户数据的同步问题,但是,由于 采用State Synchronization消息以IP的方式在HA之间传输,接收者按照IP 地址将用户数据发送出去,并不能保证接收者是否能够接收到该用户数据, 所以不能保证在同步用户数据时的可靠传输,可能导致在设备状态转换时, 备用网络设备中没有全部的用户数据而导致通信中断。发明内容有鉴于此,本发明实施例的主要目的在于提供一种同步用户数据的方 法,以便于保证同步用户数据的可靠性。本发明实施例的第二个目的在于提供一种同步用户数据的系统,以便于 保证同步用户数据的可靠性。本发明实施例的第三个目的在于提供一种网络设备,以便于保证同步用 户数据的可靠性。为了实现上述第 一个目的,本发明实施例提供了 一种同步用户数据的方法,该方法包括发送端网络设备将用户数据封装在应答机制的协议报文中, 并发送该报文,在一定时限内没有收到接收端网络设备发送的表征收到该报 文的响应后,重新发送该报文;接收端网络设备接收到该应答机制的协议报 文后,返回表征收到该报文的响应,并根据该报文中封装的用户数据对自身 的用户数据进行更新。为了实现上述第二个目的,本发明实施例提供了 一种同步用户数据的系统, 该系统包括发送端网络设备和接收端网络设备;所述发送端网络设备,用于将用户数据封装在应答机制的协议报文中,并 将所述报文发送给接收端网络设备,如果在一定时限内没有收到接收端网络设 备发送的表征收到该报文的响应,重新发送该报文;所述接收端网络设备,用于接收所述应答机制的协议报文,返回表征收 到该报文的响应,并根据该报文中封装的用户数据对自身用户数据进行更 新。为了实现上述第三个目的,本发明实施例提供了一种网络设备,该网络设 备包括收发模块、封装模块和存储模块;所述收发模块,用于接收应答机制的协议报文,并返回表征收到该报文的 响应,将接收到的报文发送给存储模块;或者,将应答机制的协议报文发送出 去;所述封装模块,从存储模块中读取用户数据,将用户数据封装在应答机制 的协议报文中,发送给收发模块;所述存储模块,用于存储用户数据。由以上技术方案可以看出,在用户数据的封装和传输过程中采用应答机制的协议,该应答机制的协议可以保证发送端网络设备能够知晓接收端网络 设备的接收状况,在接收端网络设备没有接收到用户数据时可以进行重发, 而在现有技术中采用IP方式进行用户数据的同步方法中,发送端网络设备 并不知晓接收端网络设备的接收状况,所以本发明实施例所提供的方法和系 统以及网络设备,更有力地保证了同步用户数据的可靠性。
图1为本发明实施例提供的主备用HA之间同步绑定緩存的方法流程图;图2.1为太劳日/式;图2.2为本发曰7格式;图3为本发明实施例提供的网络设备结构示意图;图4为本发明实施例提供的实现宽带接入服务器同步用户数据的流程具体实施方式
为了使上述目的、技术方案、以及优点更加的清楚,下面结合具体实施 例对本发明进行详细描述。本发明实施例所提供的方法是发送端网络设备将用户数据封装在采用 应答机制的协议报文中,并发送该报文,在一定时限内没有收到接收端网络 设备发送的表征收到该报文的响应后,重新发送该报文;接收端网络设备接 收到该应答机制的协议报文后,返回表征收到该报文的响应,并对自身用户 数据进行更新。其中,所述网络设备可以是宽带接入服务器、HA、或者其它能够保存 用户数据的网络设备。所述应答机制的协议可以是传输控制协议(TCP)、流控制传输协议 (SCTP)、或者其它一些采用应答机制的协议。为了说明该方法与现有技术中采用IP方式传输用户凄t据的不同,下面 举一个实施例对其进行说明。采用应答机制的协议时,网络设备l发送包含 用户数据的报文到网络设备2,如果网络设备2收到该报文,会向网络设备 1回复一个表征收到该报文的响应;如果在一定时限内没有收到该网络设备 的响应,则网络设备1认为网络设备2没有收到该报文,会重新向网络设备 2发送该报文,直至收到来自网络设备2表征收到该报文的响应。而在现有 技术中,报文的发送采用的是IP的方式,网络设备1仅仅按照IP地址将报 文发送给网络设备2,并不知晓网络设备2是否能够接收到该报文,所以如 果网络设备2没收到该报文,那么网络设备2就不能够对该报文中包含的用 户数据进行同步。所以,通过本发明实施例所提供的方法可以有效地保证网 络设备间同步用户数据时的可靠性。发送端网络设备受到触发后,将被请求的用户数据进行封装。所述触发, 可以是用户在自身信息发生改变时,向发送端网络设备发送的携带用户标识 的触发请求;也可以是别的网络设备老化时间到时,向该发送端网络设备发 送的携带用户标识的更新请求。所述触发请求和/或更新请求对发送端网络 设备进行触发。该发送端网络设备可以根据更新请求中的用户标识,对被请 求的用户数据进行封装,然后发送给接收端网络设备。也可以是在发送端网 络设备老化时间到时对用户数据进行封装,主动发送给接收端网络设备。在将用户数据进行封装时,采用应答机制的协议进行封装。其中封装后 的报文的报文头中包含该报文的源端口地址和目的端口地址。接收端网络设备根据报文头中包含的源端口地址向发送端网络设备回 复一个表征收到该报文的响应。发送端网络设备在发送报文后一定时限内没 有收到所述响应,则重新发送所述纟艮文。接收端网络设备使用该报文中包含的用户数据对自身用户数据进行更 新。在进行更新之前,接收端网络设备会根据所述报文的报文头中包含的目的端口地址来判断该报文是否是发送给自身的,如杲是,接收该报文,如杲 否,则转发该才艮文。如果该报文是发送给自身的,还可以进一 步判断自身是否有该用户数据,如果没有,保存该用户数据;如果有,可以进一步判断是否和自身用户 数据相同,如果相同,舍弃该用户数据,如果不相同,则更新该用户数据。 下面以主备用HA之间同步绑定緩存为例,对上述方法进行详细描述。 绑定緩存是指MN家乡地址和转交地址之间的关联。该绑定緩存保存在主用 HA中,在主用HA和备用HA之间的用户数据同步,主要是对绑定緩存的 同步。在本例子中采用TCP协议进行报文的传输。本发明实施例提供的主 用HA和备用HA之间同步绑定緩存的方法流程,如图1所示,包括以下步 骤步骤101:主用HA与备用HA之间通过HA hello消息交互,维护HA 列表,并检测设备故障;本步骤是主用HA和备用HA之间周期性的交换HAhello消息,只要链 路和设备不发生故障,该消息的周期性交换就不会停止。步骤102:主备HA之间三次握手,建立TCP连接;在本步骤中是以TCP协议为例进行的描述,同时主用HA可以以别的 应答才几制的协i义建立连接,例如,还可以通过主备用HA之间四次握手建立 SCTP连接。步骤103:备用HA向主用HA发送更新请求;所述更新请求中包含^f皮请求用户标识和发出请求的备用HA的地址信息。主用的HA也可以由别的方式触发,例如,用户向主用HA发送请求, 主用HA更新用户数据后被触发向备用HA发送包含该用户的用户数据的报文。步骤104:主用HA对被请求的用户数据通过TCP协议进行封装; 现有技术中,被请求的用户数据是通过State synchronization消息封装成IP头后发送的,本步骤中通过TCP对用户数据进行封装可以为图2.1所 示格式,其中TCP头中包含了该报文的源端口地址和目的端口地址;IPsec 中包含了安全认证的相关信息;IP头包含相关路由信息;用户数据即为被请 求的用户数据。如果HA之间建立的是SCTP连接,那么通过SCTP报文头对用户数据 进行封装,可以是图2.2所示格式,其中,SCTP报文头中包含该报文的源端 口地址和目的端口地址;IPsec中包含了安全认证的相关信息;IP头包含相 关路由信息;用户数据即为被请求的用户数据。步骤105:主用HA将封装后的报文发送出去;步骤106:收到该报文的备用HA判断该报文是否发送给自己,如杲是, 继续执行步骤107;如果否,将该报文转发出去,结束流程;另外,在本步骤之前,收到该报文的备用HA还可以进一步根据该报文 的源端口地址判断该报文是否来自于本组HA的成员列表中的主用HA,如 果不是,将该报文丢弃或者转发出去;如果是,则继续执行判断该报文是否 发送给自身的步骤。步骤107:备用HA返回表征收到该报文的响应给主用HA;步骤108:收到报文的HA根据报文中的用户数据对自身用户数据进行 更新。上述实施例所述的流程中,备用HA可以是一个或者多个,执行上述流 程可以保证主用HA和备用HA之间用户数据的同步,使得在主用HA出现 故障后,备用的HA升级为主用HA后,能够拥有所有的用户的绑定信息, 保证MN通信的正常进行。下面以网络中的主备用宽带接入服务器为例,对上述方法进行描述。在 主备用宽带接入服务器组网的情况下,宽带接入服务器具有主、备用两种角 色,对某些用户是主用宽带接入服务器、对另外一些用户可能是备用宽带接 入服务器,如果发生工作状态切换时,就需要宽带接入服务器设备间进行实 时的用户数据备份,以避免备用宽带接入服务器在切换成主用状态时没有用户数据而导致的业务中断。该例子仍以TCP协议为例对宽带接入服务器采 用上述同步用户数据的方法,进行批量用户数据备份的过程进行描述。如图 4所示主要包括以下步骤步骤401:主用宽带接入服务器在初始化时,建立监听套接口 (SOCKET),用于检测设备故障;步骤402:备用宽带接入服务器配置了 TCP连接参数,感知到主用宽带 接入服务器变化后,主动向主用宽带接入服务器发起TCP连接;步骤403:连接建立后,备用宽带接入服务器向主用宽带接入服务器发 送批量备份请求;在本步骤中主用宽带接入服务器是由备用宽带接入服务器发送请求来 进行触发的,也可以在用户上、下线或者租期变更时,主用宽带接入服务器 通过TCP连接主动通知备用宽带接入服务器进行实时备份。步骤404:主用宽带接入服务器对批量用户数据采用TCP封装为报文, 发送给请求的备用宽带接入服务器;步骤405:备用宽带接入服务器根据接收到的报文中的用户数据对自身 用户数据进行更新,以达到备份用户数据的目的。步骤406:备用宽带接入服务器返回表征收到该报文的响应给主用宽带 接入服务器。另外,上面所述实施例中是使用TCP协议来进行报文的封装和传输的, 同样,也可以使用SCTP协议、或者是使用其它应答机制的协议。例如,在 使用SCTP协议时,步骤402中需要对备用宽带接入服务器配置SCTP连接 参数,建立SCTP连接,步骤404中,主用宽带接入服务器对批量用户数据 采用SCTP封装为报文,发送给请求的备用宽带接入服务器。上述实施例所述的流程中,备用宽带接入服务器可以是一个或者多个, 所述用户数据可以是批量的,也可以是单独的。执行上述流程可以保证主用 宽带接入服务器和备用宽带接入服务器之间用户数据的同步,使得在备用宽 带接入服务器切换为主用宽带接入服务器后,能够拥有所有的用户数据,保证业务正常进行。该发明实施例对应的软件可以存储在一个计算机可读存储区介质中.下面对本发明实施例提供的系统进行详细描述。该系统包括发送端网 络设备和接收端网络设备;发送端网络设备,用于将用户数据封装在应答机制的协议报文中,并将 所述报文发送给接收端网络设备,如果在一定时限内没有收到接收端网络设 备发送的表征收到该报文的响应,重新发送该报文;接收端网络设备,用于接收所述应答才几制的协议才艮文,返回表征收到该 报文的响应,并根据该报文中封装的用户数据对自身用户数据进行更新。如在同一 VRRP组中的主用HA和备用HA。其结构可以是下面本发明实施例所提供的网络设备的结构。下面对本发明实施例所提供的网络设备进行详细描述。 该网络设备的具体结构如图3所示,该网络设备包括收发模块301、封装模块302、以及存储模块303。收发模块301,用来接收应答机制的协议报文,并返回表征收到该报文的响应,将接收到的报文发送给存储模块303;或者,将应答机制的协议报文发送出去。封装模块302,从存储模块303中读取用户数据,将用户数据封装在应 答机制的协议报文中,发送给收发模块301。例如,采用TCP协议进行用户数据的封装时,可以采用如图2.1所示的 格式,其中TCP头中包含了该报.文的源端口地址和目的端口地址;IPsec中 包含了安全认证的相关信息;IP头包含相关路由信息;用户数据即为被请求 的用户数据。存储模块303,用于存储用户数据。更进一步地,该网络设备还可以包括判断模块304,对收发模块301接 收到的报文进行判断,判断该报文是否是发送给自身的,如杲是,则通知收发模块301将用户数据发送给存储模块303;如果不是,则通知收发模块301 将该报文转发出去。所述判断模块304,判断该报文是发送给自身的以后,还可以用来判断 该报文中的用户数据存储模块303中是否已有,如果没有,则通知收发模块 301将该用户数据发送给存储模块303;如果已有,则判断该用户数据是否 和自身用户数据相同,如果相同,则通知收发模块301将该用户数据舍弃; 如果不同,则通知该收发模块301将该用户数据发送给存储模块303。所述收发模块301,还可以用于发送触发请求;接收到触发请求后,将 该触发请求发送给封装模块302;封装模块302根据该触发请求中的用户信 息从存储模块303中读取该用户的用户数据。更进一步地,该网络设备还包括定时模块305,用于设定一个定时时限;收发模块301,发送所述报文后,如果定时模块305到时且没有收到所 述响应,则重新发送所述才艮文。所述网络设备可以是HA、宽带接入服务器、或者其它能够保存用户数 据的网络设备。所述用户数据可以是绑定緩存、鉴别授权计费AAA信息、或者其它用 户数据。应答机制的协议可以是传输控制协议(TCP)、流控制传输协议(SCTP)、 或者其它 一 些采用应答机制的协议。由上可以看出,本发明实施例所提供的方法和网络设备,通过将用户数 据采用应答机制的协议报文进行封装,并采用该应答机制的协议将该封装后 的报文在网络设备间进行传输的方式进行用户数据同步,由于用于承载的应 答机制的协议使网络设备在收到发送给自身的报文后,能够回复表征收到该 报文的响应,而现有技术中釆用IP的方式进行报文的同步时,发送端的网 络设备并不知晓接收端的网络设备是否接收到所述报文,所以本发明实施例 所提供的方法和系统以及网络设备,更有力地保证了同步用户数据的可靠 性。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本 发明的精神和原则之内所作的任何修改、等同替换、改进等,均应包含在本 发明的保护范围之内。
权利要求
1. 一种同步用户数据的方法,其特征在于,该方法包括发送端网络设备将用户数据封装在应答机制的协议报文中,并发送该报文,在一定时限内没有收到接收端网络设备发送的表征收到该报文的响应后,重新发送该报文;接收端网络设备接收到该应答机制的协议报文后,返回表征收到该报文的响应,并根据该报文中封装的用户数据对自身的用户数据进行更新。
2、 根据权利要求1所述的方法,其特征在于,所述应答机制的协议为传输 控制协议TCP或流控制传输协议SCTP。
3、 根据权利要求1所述的方法,其特征在于,所述发送端网络设备将用户 数据封装在应答机制的协议报文中,是由用户或接收端网络设备触发,或者在 发送端网络设备老化时间到时执行的。
4、 根据权利要求1所述的方法,其特征在于,所述报文的报文头中包含该 才艮文的目的端口地址;所述接收端网络设备在根据该报文中封装的用户数据对自身的用户数据进 行更新之前,进一步包括所述接收端网络设备根据所述报文的报文头中的目 的端口地址判断该报文是否是发送给自身的,如果是,对自身用户数据进行更 新;如果否,将该报文丟弃或转发出去。
5、 根据权利要求1所述的方法,其特征在于,所述接收端网络设备为家乡 代理HA、宽带接入服务器、或者其它能够保存用户数据的网络设备;所述用户数据是绑定緩存、鉴别授权计费AAA信息、或者其它用户数据。
6、 一种同步用户数据的系统,其特征在于,该系统包括发送端网络设备 和接收端网络设备;所述发送端网络设备,用于将用户数据封装在应答机制的协议报文中,并 将所迷报文发送给接收端网络设备,如果在一定时限内没有收到接收端网络设 备发送的表征收到该报文的响应,重新发送该报文;所述接收端网络设备,用于接收所述应答机制的协议报文,返回表征收到该报文的响应,并根据该报文中封装的用户数据对自身用户数据进行更新。
7、 一种网络设备,其特征在于,该网络设备包括收发模块、封装模块和 存储模块;所述收发模块,用于接收应答机制的协议报文,并返回表征收到该报文的 响应,将接收到的报文发送给存储模块;或者,将应答机制的协议报文发送出去;所述封装模块,从存储模块中读取用户数据,将用户数据封装在应答机制 的协议报文中,发送给收发模块;所述存储模块,用于存储用户数据。
8、 根据权利要求7所述的网络设备,其特征在于,所述网络设备还包括 判断模块;所述判断模块,对收发模块接收到的报文进行判断,判断该报文是否是发送给自身的,如果是,则通知收发模块将用户数据发送给存储模块;如果否, 则通知收发模块将该报文转发出去。
9、 根据权利要求7所述的网络设备,其特征在于,所述收发模块还用于发 送触发请求;接收到触发请求后,将该触发请求发送给封装模块;所述封装模块,根据触发请求中的用户信息从存储模块中读取该用户的用 户数据。
10、 根据权利要求7所述的网络设备,其特征在于,所述网络设备还包括: 定时模块,用于设定一个定时时限;收发模块,发送所述报文后,如果定时模块到时且没有收到所述响应,则重新发送所述^J:。
全文摘要
本发明提供了一种同步用户数据的方法和系统以及网络设备,发送端网络设备将用户数据封装在应答机制的协议报文中,并发送该报文,在一定时限内没有收到接收端网络设备发送的表征收到该报文的响应后,重新发送该报文;接收端网络设备接收到该应答机制的协议报文后,返回表征收到该报文的响应,并根据该报文中封装的用户数据对自身用户数据进行更新。由于在用户数据的封装和传输过程中采用应答机制的协议,接收端网络设备可以通过响应告知发送端网络设备已经收到该用户数据,如果没有接收到响应,发送端网络设备将进行用户数据的重发,保证了同步用户数据的可靠性。
文档编号H04L1/18GK101237382SQ20071000312
公开日2008年8月6日 申请日期2007年1月31日 优先权日2007年1月31日
发明者唐周和, 霞 秦 申请人:华为技术有限公司