CN101605044B - 控制型组播的实现方法和设备 - Google Patents

控制型组播的实现方法和设备 Download PDF

Info

Publication number
CN101605044B
CN101605044B CN2009101580234A CN200910158023A CN101605044B CN 101605044 B CN101605044 B CN 101605044B CN 2009101580234 A CN2009101580234 A CN 2009101580234A CN 200910158023 A CN200910158023 A CN 200910158023A CN 101605044 B CN101605044 B CN 101605044B
Authority
CN
China
Prior art keywords
publisher
message
subscriber
multicast
added
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.)
Active
Application number
CN2009101580234A
Other languages
English (en)
Other versions
CN101605044A (zh
Inventor
牟宣理
乔会来
杨其
盖建华
杨荣虎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN2009101580234A priority Critical patent/CN101605044B/zh
Publication of CN101605044A publication Critical patent/CN101605044A/zh
Application granted granted Critical
Publication of CN101605044B publication Critical patent/CN101605044B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种控制型组播的实现方法和设备。该方法应用于包括第一发布者以及至少一个订阅者的板间组播通信系统中,包括:第一发布者接收到来自发送方的加入消息时,将发送方设置为待加入成员,并向发送方发送对加入消息的确认消息,发送方包括第二发布者和/或订阅者;第一发布者判断需要将待加入成员中的第二发布者和/或订阅者设置为正式成员时,向第二发布者和/或订阅者发送使能消息,以及当前组播报文的发送序号;第一发布者接收到第二发布者和/或订阅者对使能消息的使能响应消息时,将第二发布者和/或订阅者设置为正式成员,向正式成员发送组播报文。通过使用本发明,实现了存在多个发布者的组播,且不同发布者能够独立控制订阅者接收组播报文的时机。

Description

控制型组播的实现方法和设备
技术领域
本发明涉及通信技术领域,尤其涉及一种控制型组播的实现方法和设备。
背景技术
在分布式设备中,各业务板之间需要进行控制层面上的通信,提供这种通信的技术称之为板间通信。板间通信的模型如图1所示。板间通信是分布式设备的一项关键技术,板间通信的可靠程度直接决定了设备的可靠程度。
目前板间通信的可靠性一般是通过确认加重传来实现的,即发送端按序发送,接收端按序接收,在一定的时机回应确认报文,如果发送端没有收到确认,进行重传。
在板间通信中提供了一对多的可靠组播传输机制,现有技术中的组播模型如图2所示。主控板1作为发布者(Publisher),当订阅者(Subscriber)业务板3请求加入(Join)主控板1的组播组、接收主控板1发布的组播报文时,主控板1控制业务板3加入组播组。当业务板3加入组播组后,可以立即接收到主控板1发送的组播报文。
现有技术中的实现方式存在以下问题:在现有的组播模型中,订阅者作为组播成员加入组播组后,立即会接收到发布者发送的组播报文,无法对订阅者接收组播报文的时机进行控制。
发明内容
本发明提供一种控制型组播的实现方法和设备,用于实现一个或多个发布者对订阅者接收组播报文的时机进行控制。
为达到上述目的,本发明提供一种控制型组播的实现方法,应用于包括发布者以及至少一个订阅者的板间组播通信系统中,所述方法包括:
所述第一发布者接收到来自发送方的加入消息时,将所述发送方设置为待加入成员,并向所述发送方发送对所述加入消息的确认消息,所述发送方包括第二发布者和/或订阅者;
所述第一发布者判断需要将待加入成员中的第二发布者和/或订阅者设置为正式成员时,向所述第二发布者和/或订阅者发送使能消息,以及当前组播报文的发送序号;
所述第一发布者接收到所述第二发布者和/或订阅者对所述使能消息的使能响应消息时,将所述第二发布者和/或订阅者设置为正式成员,向所述正式成员发送组播报文。
其中,还包括:所述第一发布者将所述正式成员中的第二发布者和/或订阅者设置为待加入成员,停止发送组播报文;具体包括:
所述第一发布者向所述正式成员中的第二发布者和/或订阅者发送去使能消息;
所述第二发布者和/或订阅者接收所述第一发布者的去使能消息,并向所述第一发布者发送去使能响应消息;
所述第一发布者接收到所述去使能响应消息时,将所述第二发布者和/或订阅者设置为待加入成员。
其中,还包括:当所述订阅者离开所述板间组播通信系统时,发送离开消息;接收到所述离开消息的第一发布者和第二发布者删除所述离开消息对应的组播成员;当所述第一发布者或第二发布者离开所述板间组播通信系统时,发送离开消息;接收到所述离开消息的第二发布者或第一发布者删除所述离开消息对应的组播成员。
其中,还包括:所述第二发布者作为新的发布者加入已经存在第一发布者的板间组播通信系统时,所述第二发布者向所述第一发布者和各订阅者发送加入消息;所述第一发布者和各订阅者对向所述第二发布者发送响应消息,所述第一发布者将所述第二发布者设置为待加入成员;
所述第二发布者接收到响应消息时,将发送所述响应消息的第一发布者和各订阅者设置为待加入成员。
其中,还包括:
所述第一发布者根据所述当前组播报文的发送序号,确定所述第二发布者和/或订阅者在成为正式成员前未接收到的组播报文,将所述未接收到的组播报文向所述第二发布者和/或订阅者发送。
本发明还提供一种网络设备,应用于包括发布者以及至少一个订阅者的板间组播通信系统中,所述网络设备包括:
发布者处理单元,用于作为发布者,接收到来自发送方的加入消息时,将所述发送方设置为待加入成员,并向所述发送方发送对所述加入消息的确认消息,所述发送方包括其他发布者和/或订阅者;判断需要将待加入成员中的其他发布者和/或订阅者设置为正式成员时,向所述其他发布者和/或订阅者发送使能消息,以及当前组播报文的发送序号;接收到所述其他发布者和/或订阅者对所述使能消息的使能响应消息时,将所述其他发布者和/或订阅者设置为正式成员,向所述正式成员发送组播报文;
订阅者处理单元,用于作为订阅者,向发布者发送加入消息并接收所述发布者发送的确认消息;在接收到所述发布者发送的使能消息时,向所述发布者发送使能响应消息;并接收所述发布者发送的组播报文。
其中,所述发布者处理单元包括:
待加入成员维护子单元,用于自身角色为发布者时,存储待加入成员;
正式成员维护子单元,用于自身角色为发布者时,存储正式成员;
待加入成员加入子单元,用于自身角色为发布者时,接收到来自发送方的加入消息时,向所述发送方发送对所述加入消息的确认消息,并将所述发送方设置为待加入成员并加入所述待加入成员维护子单元,所述发送方包括其他发布者和/或订阅者;
正式成员加入子单元,用于自身角色为发布者时,判断需要将待加入成员中的其他发布者和/或订阅者设置为正式成员时,向所述其他发布者和/或订阅者发送使能消息,以及当前组播报文的发送序号;接收到所述其他发布者和/或订阅者对所述使能消息的使能响应消息时,将所述其他发布者和/或订阅者设置为正式成员并加入所述正式成员维护子单元;
组播报文发送单元,用于自身角色为发布者时,向所述正式成员维护子单元中存储的正式成员发送组播报文。
其中,所述发布者处理单元还包括:
正式成员删除子单元,用于将所述正式成员维护子单元中存储的至少一个正式成员设置为待加入成员并加入所述待加入成员维护子单元,具体用于:向所述正式成员维护子单元中存储的至少一个正式成员发送去使能消息;接收到所述正式成员发送的去使能响应消息时,将所述正式成员设置为待加入成员并加入所述待加入成员维护子单元;
成员删除子单元,用于接收到其他发布者或订阅者发送的离开消息时,从所述待加入成员维护子单元存储的待加入成员、以及所述正式成员维护子单元存储的正式成员中,删除所述离开消息对应的组播成员;
离开消息发送单元,用于在离开板间组播通信系统时,向其他发布者或订阅者发送离开消息。
加入消息发送子单元,用于作为新的发布者加入已经存在其他发布者的板间组播通信系统时,向所述其他发布者和各订阅者发送加入消息;所述待加入成员加入子单元,还用于接收到所述其他发布者和各订阅者对所述加入消息发送子单元发送的加入消息的响应消息时,将所述其他发布者和各订阅者设置为待加入成员。
所述待加入成员加入子单元,还用于接收到新加入所述板间组播通信系统的其他发布者发送的加入消息时,向所述其他发布者发送响应消息,将所述其他发布者设置为待加入成员并加入所述待加入成员维护子单元。
所述组播报文发送单元,还用于根据所述当前组播报文的发送序号,确定所述其他发布者和/或订阅者在成为正式成员前未接收到的组播报文,将所述未接收到的组播报文向所述其他发布者和/或订阅者发送。
其中,所述订阅者处理单元包括:
状态记录子单元,用于自身角色为订阅者时,记录自身在其他发布者中作为待加入成员或正式成员的状态;
报文处理子单元,用于自身角色为订阅者时,向发布者发送加入消息并接收所述发布者发送的确认消息;在接收到所述发布者发送的使能消息时,向所述发布者发送使能响应消息;
组播报文接收子单元,用于自身角色为订阅者时,接收发布者发送的组播报文。
其中,所述订阅者处理单元还包括:
离开消息发送子单元,用于在离开板间组播通信系统时,向其他发布者或订阅者发送离开消息;
删除子单元,用于接收到其他发布者发送的离开消息时,从所述状态记录子单元存储的状态中,删除所述离开消息对应的发布者。
与现有技术相比,本发明具有以下优点:
可以实现存在多个发布者的组播,且不同发布者能够独立控制订阅者接收组播报文的时机而不受其他发布者的影响。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术中板间通信模型的示意图;
图2是现有技术中组播模型的示意图;
图3是本发明中控制型组播的实现方法的流程图;
图4是本发明中控制型组播通信模型的示意图;
图5是本发明中新的订阅者加入已存在多个发布者的网络时的网络示意图;
图6是本发明中发布者对待加入成员链表中的订阅者进行使能的示意图;
图7是本发明中另一发布者对待加入成员链表中的订阅者进行使能的示意图;
图8是本发明中发布者对正式成员链表中的订阅者进行去使能的示意图;
图9是本发明中订阅者退出网络的示意图;
图10是本发明中发布者加入网络的示意图;
图11是本发明中提供的网络设备的结构示意图;
图12是本发明中提供的网络设备中发布者处理单元的结构示意图;
图13是本发明中提供的网络设备中订阅者处理单元的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供了一种控制型组播的实现方法,应用于包括第一发布者以及至少一个订阅者的板间组播通信系统中,如图3所示,该方法包括:
步骤s301、第一发布者接收到来自发送方的加入消息时,将发送方设置为待加入成员,并向发送方发送对加入消息的确认消息,发送方包括第二发布者和/或订阅者;
步骤s302、第一发布者判断需要将待加入成员中的第二发布者和/或订阅者设置为正式成员时,向第二发布者和/或订阅者发送使能消息,以及当前组播报文的发送序号;
步骤s303、第一发布者接收到第二发布者和/或订阅者对使能消息的使能响应消息时,将第二发布者和/或订阅者设置为正式成员,向正式成员发送组播报文。
以下结合具体的应用场景,描述本发明中控制型组播实现方法的具体实施方式。
本发明中提供的控制型组播通信模型如图4所示。其中,P1和P2为发布者(Publisher),担当控制型组播的控制源。S1、S2和S3为订阅者(Subscriber)。以P1为例,P1作为发布者,可以控制其他发布者(P2)和订阅者(S1~S3)能否接收到自身发送的组播报文。同样,P2作为发布者,可以控制其他发布者(P1)和订阅者(S1~S3)能否接收到自身发送的组播报文。对于P1和P2而言,可以各自独立控制其他成员能否接收组播报文。
以下描述不同场景下发布者与订阅者间的交互过程。
(场景1)已存在多个发布者,新的订阅者加入时,组播的实现。
以图5所示的组网环境为例,系统中已经存在多个发布者P1和P2,订阅者S1作为P1和P2的正式成员,存在于P1和P2的正式成员链表中,已经可以接收到P1和P2发送的组播报文。
新的订阅者S2加入时,包括以下流程:
(1)S2广播自己加入的信息。
(2)作为发布者的P1和P2记录S2的订阅者身份信息,并发送确认信息,表明发布者身份;同时,P1和P2将S2加入本地的待加入成员链表。
(3)S2根据接收到的确认信息,记录P1和P2的发布者身份信息,后续用来接受发布者对接收组播报文的使能。
S2与P1和P2的消息交互完毕后,各成员记录的信息如下:
作为发布者的P1和P2,其记录的正式成员链表中,包括S1;其记录的待加入成员链表中,包括S2。作为发布者的P1和P2只向正式成员链表中的成员S1发送组播报文。
对于订阅者S1,其记录作为发布者的P1和P2的信息,并记录已经被P1和P2使能,可以接收到P1和P2发送的组播报文。
对于新加入的订阅者S2,
新加入S身份成员S2记录的信息,其记录作为发布者的P1和P2的信息,并记录尚未被P1和P2使能,无法接收到P1和P2发送的组播报文。
(场景2)发布者对待加入成员链表中的订阅者进行使能。
本发明提供的方法中,发布者可以对向订阅者发送组播报文的时机进行控制,在判断可以向订阅者发送组播报文时,对待加入成员链表中的订阅者进行使能。该时机的选择方法可以包括但不限于以下方式:
(1)当新订阅者加入时,发布者之前已经发送了部分组播报文,此时发布者需将前面已发送的组播报文以单播的形式发送给新订阅者,再使能新订阅者接收组播报文,从而使得包括新订阅者在内所有的订阅者获得相同的数据。
(2)发布者上预先配置了新订阅者能够接收组播报文的时间段,因此发布者可以根据该配置的时间段控制订阅者的订阅时机,当到达某一时刻时,使能此订阅者的组播报文接收,过了此时间后去使能该订阅者的组播报文接收。
以图6所示的组网环境为例,系统中已经存在多个发布者P1和P2,订阅者S1作为P1和P2的正式成员,存在于P1和P2的正式成员链表中,已经可以接收到P1和P2发送的组播报文;订阅者S2作为P1和P2的待加入成员,存在于P1和P2的待加入成员链表中,尚无法接收到P1和P2发送的组播报文。
以P1使能S2为例,包括以下步骤:
(1)P1向S2发送使能消息,并携带当前的组播报文发送序号;
(2)S2收到P1的使能消息,记录被P1使能的信息和P1成员的当前组播报文发送序号,并向P1回复使能ACK(响应)消息;
(3)P1收到S2的使能ACK消息,将S2成员从待加入成员链表移到正式成员链表中,此时S2能接收P1的组播报文。
上述消息交互完毕后,各成员记录的信息如下:
作为发布者的P1,其记录的正式成员链表中,包括S1和S2;其记录的待加入成员链表中,为空。
作为发布者的P2,其记录的正式成员链表中,包括S1;其记录的待加入成员链表中,包括S2。
对于订阅者S1,其记录作为发布者的P1和P2的信息,并记录已经被P1和P2使能,可以接收到P1和P2发送的组播报文。
对于订阅者S2,其记录作为发布者的P1和P2的信息,并记录已经被P1使能,可以接收到P1发送的组播报文,P1的发送的组播报文序号seq_P1;并记录尚未被P2使能,无法接收到P2发送的组播报文。
以之后某时刻当P2使能S2成员为例,如图7所示,包括以下步骤:
(1)P2向S2发送使能消息,并携带当前的组播报文发送序号;
(2)S2收到P2的使能消息,记录被P2使能的信息和P2成员的当前组播报文发送序号,并向P2回复使能ACK消息;
(3)P1收到S2的使能ACK消息,将S2成员从待加入成员链表移到正式成员链表中,此时S2能接收P1的组播报文。
上述消息交互完毕后,各成员记录的信息如下:
作为发布者的P1,其记录的正式成员链表中,包括S1和S2;其记录的待加入成员链表中,为空。
作为发布者的P2,其记录的正式成员链表中,包括S1和S2;其记录的待加入成员链表中,为空。
对于订阅者S1,其记录作为发布者的P1和P2的信息,并记录已经被P1和P2使能,可以接收到P1和P2发送的组播报文。
对于订阅者S2,其记录作为发布者的P1和P2的信息,并记录已经被P1和P2使能,可以接收到P1和P2发送的组播报文,P1的发送的组播报文序号seq P1,P2的发送的组播报文序号seq_P2。
(场景3)发布者对正式成员链表中的订阅者进行去使能。
以图7所示的组网环境为例,系统中已经存在多个发布者P1和P2,订阅者S1和S2作为P1和P2的正式成员,存在于P1和P2的正式成员链表中,已经可以接收到P1和P2发送的组播报文。
以P2去使能S2为例,包括以下步骤:
(1)P2向S2发送去使能消息;
(2)S2收到P2的去使能消息,记录S2没有被P2使能,并向P2回复去使能ACK消息;
(3)P2收到S2的去使能ACK消息,将S2成员从正式成员链表移到待加入成员链表中,此时S2不能接收P2的组播报文。
上述消息交互完毕后,各成员记录的信息如下:
作为发布者的P1,其记录的正式成员链表中,包括S1和S2;其记录的待加入成员链表中,为空。
作为发布者的P2,其记录的正式成员链表中,包括S1;其记录的待加入成员链表中,包括S2。
对于订阅者S1,其记录作为发布者的P1和P2的信息,并记录已经被P1和P2使能,可以接收到P1和P2发送的组播报文。
对于订阅者S2,其记录作为发布者的P1和P2的信息,并记录已经被P1使能,可以接收到P1发送的组播报文。同时记录尚未被P2使能,无法接收到P2发送的组播报文。
若之后某一时刻P1去使能S2,则对于P1去使能S2的处理流程,与上述P2去使能S2的流程类似,处理完成后S2不能接收P1的组播报文。
(场景4)订阅者退出网络。
以图9所示的组网环境为例,系统中已经存在多个发布者P1和P2,以及订阅者S1和S2。
当S2退出时,需要广播成员离开(Leave)消息。网络中的发布者P1和P2对此离开消息进行响应,清除本地待加入成员链表和正式成员列表中的S2相关信息。
同样,当某一个发布者如P2退出时,需要广播成员离开(Leave)消息。网络中的发布者P1和各订阅者对此离开消息进行响应,清除本地保存的与P2相关的信息。
(场景5)新的发布者加入网络。
当单控制源控制型组播模型(或多控制源控制型组播模型)中加入另外一个控制源(发布者)时,原有的发布者和订阅者需要记录该新加入的发布者的信息,新加入的发布者也需要记录原有的发布者和订阅者的信息。
以图10所示的网络场景为例,网络中已经存在发布者P1和订阅者S1、S2。P2加入时的流程包括:
(1)P2广播加入(Join)消息,表明发布者身份;
(2)P1记录P2,将P2加入待加入成员链表,并发送Join ACK消息,表明自己的发布者身份;作为订阅者的S1、S2记录P2的信息,后续用来接受P2成员的使能,并发送Join ACK消息,表明自己的订阅者身份;
(3)P2接收到P1、S1以及S2的ACK消息,记录成员信息,并将P1、S1以及S2加入待加入成员链表中。
通过上述场景的描述可以发现,本发明提供的方法中,可以实现存在多个发布者的组播,且不同发布者能够独立控制订阅者接收组播报文的时机而不受其他发布者的影响。
本发明还提供了一种网络设备,应用于包括发布者以及至少一个订阅者的板间组播通信系统中,如图11所示,该网络设备包括:
发布者处理单元10,用于作为发布者,接收到来自发送方的加入消息时,将发送方设置为待加入成员,并向发送方发送对加入消息的确认消息,发送方包括其他发布者和/或订阅者;判断需要将待加入成员中的其他发布者和/或订阅者设置为正式成员时,向其他发布者和/或订阅者发送使能消息,以及当前组播报文的发送序号;接收到第二发布者和/或订阅者对使能消息的使能响应消息时,将其他发布者和/或订阅者设置为正式成员,向正式成员发送组播报文;
订阅者处理单元20,用于作为订阅者,向发布者发送加入消息并接收发布者发送的确认消息;在接收到发布者发送的使能消息时,向发布者发送使能响应消息;并接收发布者发送的组播报文。
其中,如图12所示,发布者处理单元10包括:
待加入成员维护子单元11,用于自身角色为发布者时,存储待加入成员;
正式成员维护子单元12,用于自身角色为发布者时,存储正式成员;
待加入成员加入子单元13,用于自身角色为发布者时,接收到来自发送方的加入消息时,向发送方发送对加入消息的确认消息,并将发送方设置为待加入成员并加入待加入成员维护子单元11,发送方包括其他发布者和/或订阅者;
正式成员加入子单元14,用于自身角色为发布者时,判断需要将待加入成员中的其他发布者和/或订阅者设置为正式成员时,向其他发布者和/或订阅者发送使能消息,以及当前组播报文的发送序号;接收到其他发布者和/或订阅者对使能消息的使能响应消息时,将其他发布者和/或订阅者设置为正式成员并加入正式成员维护子单元12;
组播报文发送单元15,用于自身角色为发布者时,向正式成员维护子单元中12存储的正式成员发送组播报文。
其中,发布者处理单元还包括:
正式成员删除子单元16,用于将正式成员维护子单元12中存储的至少一个正式成员设置为待加入成员并加入待加入成员维护子单元11,具体用于:向正式成员维护子单元中12存储的至少一个正式成员发送去使能消息;接收到正式成员发送的去使能响应消息时,将正式成员设置为待加入成员并加入待加入成员维护子单元11;
成员删除子单元17,用于接收到其他发布者或订阅者发送的离开消息时,从待加入成员维护子单元11存储的待加入成员、以及正式成员维护子单元12存储的正式成员中,删除离开消息对应的组播成员;
离开消息发送单元18,用于在离开板间组播通信系统时,向其他发布者或订阅者发送离开消息。
加入消息发送子单元19,用于作为新的发布者加入已经存在其他发布者的板间组播通信系统时,向其他发布者和各订阅者发送加入消息;待加入成员加入子单元13,还用于接收到第二发布者和各订阅者对加入消息发送单元发送的加入消息的响应消息时,将第二发布者和各订阅者设置为待加入成员。
待加入成员加入单元13,还用于接收到新加入板间组播通信系统的其他发布者发送的加入消息时,向第二发布者发送响应消息,将其他发布者设置为待加入成员并加入待加入成员维护单元11。
组播报文发送单元15,还用于根据当前组播报文的发送序号,确定其他发布者和/或订阅者在成为正式成员前未接收到的组播报文,将其他发布者和/或订阅者在成为正式成员前未接收到的组播报文向其他发布者和/或订阅者发送。
其中,如图13所示,订阅者处理单元20包括:
状态记录子单元21,用于自身角色为订阅者时,记录自身在其他发布者中作为待加入成员或正式成员的状态;
报文处理子单元22,用于自身角色为订阅者时,向发布者发送加入消息并接收发布者发送的确认消息;在接收到发布者发送的使能消息时,向发布者发送使能响应消息;
组播报文接收子单元23,用于自身角色为订阅者时,接收发布者发送的组播报文。
其中,订阅者处理单元还包括:
离开消息发送子单元24,用于在离开板间组播通信系统时,向其他发布者或订阅者发送离开消息;
删除子单元25,用于接收到其他发布者发送的离开消息时,从状态记录子单元21存储的状态中,删除离开消息对应的发布者。
通过适用本发明提供的作为发布者的网络设备,可以实现存在多个发布者的组播,且不同发布者能够独立控制订阅者接收组播报文的时机而不受其他发布者的影响。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。

Claims (10)

1.一种控制型组播的实现方法,其特征在于,应用于包括发布者以及至少一个订阅者的板间组播通信系统中,所述方法包括:
所述第一发布者接收到来自发送方的加入消息时,将所述发送方设置为待加入成员,并向所述发送方发送对所述加入消息的确认消息,所述发送方包括第二发布者和/或订阅者;
所述第一发布者判断需要将待加入成员中的第二发布者和/或订阅者设置为正式成员时,向所述第二发布者和/或订阅者发送使能消息,以及当前组播报文的发送序号;
所述第一发布者接收到所述第二发布者和/或订阅者对所述使能消息的使能响应消息时,将所述第二发布者和/或订阅者设置为正式成员,向所述正式成员发送组播报文。
2.如权利要求1所述的方法,其特征在于,还包括:所述第一发布者将所述正式成员中的第二发布者和/或订阅者设置为待加入成员,停止发送组播报文;具体包括:
所述第一发布者向所述正式成员中的第二发布者和/或订阅者发送去使能消息;
所述第二发布者和/或订阅者接收所述第一发布者的去使能消息,并向所述第一发布者发送去使能响应消息;
所述第一发布者接收到所述去使能响应消息时,将所述第二发布者和/或订阅者设置为待加入成员。
3.如权利要求1或2所述的方法,其特征在于,还包括:
当所述订阅者离开所述板间组播通信系统时,发送离开消息;接收到所述离开消息的第一发布者和第二发布者删除所述离开消息对应的组播成员;
当所述第一发布者或第二发布者离开所述板间组播通信系统时,发送离开消息;接收到所述离开消息的第二发布者或第一发布者删除所述离开消息对应的组播成员。
4.如权利要求1或2所述的方法,其特征在于,还包括:
所述第二发布者作为新的发布者加入已经存在第一发布者的板间组播通信系统时,所述第二发布者向所述第一发布者和各订阅者发送加入消息;
所述第一发布者和各订阅者对向所述第二发布者发送响应消息,所述第一发布者将所述第二发布者设置为待加入成员;
所述第二发布者接收到响应消息时,将发送所述响应消息的第一发布者和各订阅者设置为待加入成员。
5.如权利要求1或2所述的方法,其特征在于,还包括:
所述第一发布者根据所述当前组播报文的发送序号,确定所述第二发布者和/或订阅者在成为正式成员前未接收到的组播报文,将所述未接收到的组播报文向所述第二发布者和/或订阅者发送。
6.一种网络设备,其特征在于包括:
发布者处理单元,用于作为发布者,接收到来自发送方的加入消息时,将所述发送方设置为待加入成员,并向所述发送方发送对所述加入消息的确认消息,所述发送方包括其他发布者和/或订阅者;判断需要将待加入成员中的其他发布者和/或订阅者设置为正式成员时,向所述其他发布者和/或订阅者发送使能消息,以及当前组播报文的发送序号;接收到所述其他发布者和/或订阅者对所述使能消息的使能响应消息时,将所述其他发布者和/或订阅者设置为正式成员,向所述正式成员发送组播报文;
订阅者处理单元,用于作为订阅者,向发布者发送加入消息并接收所述发布者发送的确认消息;在接收到所述发布者发送的使能消息时,向所述发布者发送使能响应消息;并接收所述发布者发送的组播报文。
7.如权利要求6所述的网络设备,其特征在于,所述发布者处理单元包括:
待加入成员维护子单元,用于自身角色为发布者时,存储待加入成员;
正式成员维护子单元,用于自身角色为发布者时,存储正式成员;
待加入成员加入子单元,用于自身角色为发布者时,接收到来自发送方的加入消息时,向所述发送方发送对所述加入消息的确认消息,并将所述发送方设置为待加入成员并加入所述待加入成员维护子单元,所述发送方包括其他发布者和/或订阅者;
正式成员加入子单元,用于自身角色为发布者时,判断需要将待加入成员中的其他发布者和/或订阅者设置为正式成员时,向所述其他发布者和/或订阅者发送使能消息,以及当前组播报文的发送序号;接收到所述其他发布者和/或订阅者对所述使能消息的使能响应消息时,将所述其他发布者和/或订阅者设置为正式成员并加入所述正式成员维护子单元;
组播报文发送单元,用于自身角色为发布者时,向所述正式成员维护子单元中存储的正式成员发送组播报文。
8.如权利要求7所述的网络设备,其特征在于,所述发布者处理单元还包括:
正式成员删除子单元,用于将所述正式成员维护子单元中存储的至少一个正式成员设置为待加入成员并加入所述待加入成员维护子单元,具体用于:向所述正式成员维护子单元中存储的至少一个正式成员发送去使能消息;接收到所述正式成员发送的去使能响应消息时,将所述正式成员设置为待加入成员并加入所述待加入成员维护子单元;
成员删除子单元,用于接收到其他发布者或订阅者发送的离开消息时,从所述待加入成员维护子单元存储的待加入成员、以及所述正式成员维护子单元存储的正式成员中,删除所述离开消息对应的组播成员;
离开消息发送单元,用于在离开板间组播通信系统时,向其他发布者或订阅者发送离开消息;
加入消息发送子单元,用于作为新的发布者加入已经存在其他发布者的板间组播通信系统时,向所述其他发布者和各订阅者发送加入消息;所述待加入成员加入子单元,还用于接收到所述其他发布者和各订阅者对所述加入消息发送子单元发送的加入消息的响应消息时,将所述其他发布者和各订阅者设置为待加入成员;
所述待加入成员加入子单元,还用于接收到新加入所述板间组播通信系统的其他发布者发送的加入消息时,向所述其他发布者发送响应消息,将所述其他发布者设置为待加入成员并加入所述待加入成员维护子单元;
所述组播报文发送单元,还用于根据所述当前组播报文的发送序号,确定所述其他发布者和/或订阅者在成为正式成员前未接收到的组播报文,将所述未接收到的组播报文向所述其他发布者和/或订阅者发送。
9.如权利要求6所述的网络设备,其特征在于,所述订阅者处理单元包括:
状态记录子单元,用于自身角色为订阅者时,记录自身在其他发布者中作为待加入成员或正式成员的状态;
报文处理子单元,用于自身角色为订阅者时,向发布者发送加入消息并接收所述发布者发送的确认消息;在接收到所述发布者发送的使能消息时,向所述发布者发送使能响应消息;
组播报文接收子单元,用于自身角色为订阅者时,接收发布者发送的组播报文。
10.如权利要求9所述的网络设备,其特征在于,所述订阅者处理单元还包括:
离开消息发送子单元,用于在离开板间组播通信系统时,向其他发布者或订阅者发送离开消息;
删除子单元,用于接收到其他发布者发送的离开消息时,从所述状态记录子单元存储的状态中,删除所述离开消息对应的发布者。
CN2009101580234A 2009-07-16 2009-07-16 控制型组播的实现方法和设备 Active CN101605044B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009101580234A CN101605044B (zh) 2009-07-16 2009-07-16 控制型组播的实现方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009101580234A CN101605044B (zh) 2009-07-16 2009-07-16 控制型组播的实现方法和设备

Publications (2)

Publication Number Publication Date
CN101605044A CN101605044A (zh) 2009-12-16
CN101605044B true CN101605044B (zh) 2011-11-16

Family

ID=41470603

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009101580234A Active CN101605044B (zh) 2009-07-16 2009-07-16 控制型组播的实现方法和设备

Country Status (1)

Country Link
CN (1) CN101605044B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1825804A (zh) * 2006-04-04 2006-08-30 中兴通讯股份有限公司 实现分布式系统板间通信的系统和方法
CN101459607A (zh) * 2008-12-31 2009-06-17 华为技术有限公司 一种报文发送方法和路由器

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1825804A (zh) * 2006-04-04 2006-08-30 中兴通讯股份有限公司 实现分布式系统板间通信的系统和方法
CN101459607A (zh) * 2008-12-31 2009-06-17 华为技术有限公司 一种报文发送方法和路由器

Also Published As

Publication number Publication date
CN101605044A (zh) 2009-12-16

Similar Documents

Publication Publication Date Title
CN100518073C (zh) 用于控制分布式多方会议的方法
US10530716B2 (en) Voice chat mode self-adapting method and apparatus
CN106130881B (zh) 一种帐号登录方法及装置
CN101414949B (zh) 一种链式数据传输方法、节点及系统
CN104639424A (zh) 一种数据传输方法及相关设备、系统
CN101217517A (zh) 一种在即时通信中实现一对多聊天的方法及系统
CN105871977A (zh) 长连接建立方法、装置及系统
CN105144673A (zh) 延迟减少的服务器干预式音频-视频通信
CN105049336A (zh) 即时通信消息的处理方法、服务器、客户端及系统
CN104901815A (zh) 一种用户终端的分组方法、会议服务器、会议系统
CN105631970A (zh) 基于行车记录仪的一键式信息分享方法以及系统
CN103843285A (zh) 一种网络设备版本升级的方法及网络设备
CN103516869A (zh) 情景模式设置方法及装置、移动通信终端、通信设备
CN101997861B (zh) 一种数据存储方法和设备
CN103716230A (zh) 消息发送方法、装置及服务器
CN101621526B (zh) 一种防止无用连接占用系统资源的iSCSI方法及装置
CN101605044B (zh) 控制型组播的实现方法和设备
CN109067639A (zh) 一种建立通信群组及加入通信群组的方法
CN103297272B (zh) 设备绑定、解绑定方法和设备缓冲回收池实体设备
CN102111604A (zh) 会议录制方法及会议录制系统
CN101001213A (zh) 一种短消息传输系统及方法
CN103905666A (zh) 移动终端发起电话会议的方法及系统
CN104380624A (zh) 在多个设备之间发送内容和用户的交互的方法
CN103348628A (zh) 一种会议控制的方法及装置
CN102932176B (zh) 后台程序日志的跟踪方法、跟踪端、服务端和系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: Xinhua three Technology Co., Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: Huasan Communication Technology Co., Ltd.