CN100440865C - Application layer group broadcasting method with integrated type and distributed type combination - Google Patents

Application layer group broadcasting method with integrated type and distributed type combination Download PDF

Info

Publication number
CN100440865C
CN100440865C CNB2005100866804A CN200510086680A CN100440865C CN 100440865 C CN100440865 C CN 100440865C CN B2005100866804 A CNB2005100866804 A CN B2005100866804A CN 200510086680 A CN200510086680 A CN 200510086680A CN 100440865 C CN100440865 C CN 100440865C
Authority
CN
China
Prior art keywords
node
bunch
multicast
network
tree
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.)
Expired - Fee Related
Application number
CNB2005100866804A
Other languages
Chinese (zh)
Other versions
CN1747446A (en
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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CNB2005100866804A priority Critical patent/CN100440865C/en
Publication of CN1747446A publication Critical patent/CN1747446A/en
Application granted granted Critical
Publication of CN100440865C publication Critical patent/CN100440865C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The present invention relates to technology of internet application layer multicasting, which is characterized in that a three-stage network structure composed of supernode networks, cluster networks and IP multicasting. Controller software is arranged in supernodes, representative nodes of the cluster networks are utilized to control each of the IP multicasting islands, and simultaneously, the nodes of the cluster networks are utilized to build the shortest path trees in the cluster networks to issue conversation data. In this way, an application layer multicasting network integrating a centralized mode and a distributed mode is formed. A Mesh priority scheme is adopted in each of the cluster networks, the supernodes build a Mesh network firstly, and then, on the basis of the Mesh network, the shortest path tree of forwarding data is built to satisfy the application of quasi real time. The present invention has the advantages of small relative delay, strong multicasting capacity and high stability, and the hardware cost is relatively low.

Description

Centralized and the distributed application layer group broadcasting method that combines
Technical field
The invention belongs to Internet technical field, relate in particular to network multicast technology and application layer technology.
Background technology
In recent years along with the popularizing of network, and the lifting of bandwidth, for the multimedia application that video, this high bandwidth requirements of audio frequency are provided by network provides may.Existing common way is exactly the truck that a special use is provided for each user.The information that is different from this traditional mode of unicast is propagated, and the thought that has proposed application layer multicast in the world is to reduce cost, to improve autgmentability.Yet for application layer multicast, end system stability and performance are not as router, and this has just caused application layer multicast to be not so good as network layer multicast on stability and efficient.How to improve the stability of application layer multicast and the hot issue that autgmentability becomes academia.
The agreement of application layer multicast has a lot.Can carry out the difference classification from different perspectives.Converge or distribute as calculating and calculate, can be divided into centralized and distributed two kinds by each node according to data forwarding tree.Centralized advantage is a simplicity of design, fast convergence rate, but formed the single failure point, can improve fault-tolerance by redundancy.The representative of this mode is ALMI.ALMI is applicable to that multicast is used on a small scale, and multicast is made up of Control Node and member node.Control Node centralized management member's adding, leave the calculating with multicast tree.And the calculating of multicast tree depends on the network topology cycle High-speed Control node of each member node with perception.And distributed representative has Narada, NICE, Yoid etc.As Narada, after it obtains several member node, be formed into their connection, cycle detection they to delete useless connection.Cycle is surveyed some new nodes, increases new connection.Generate multicast tree by operation Routing Protocol between node after forming the Mesh network.
Whether according to fully equity can be divided into the formula of agency and to equation.The formula of agency is meant some servers is placed in some policy-related (noun) position, in the general territory several agent nodes more than are arranged, form multicast tree based on them, its advantage is a good stability, performance height, but flexibility reduction, and become system bottleneck easily, the representative of this scheme has Overcast, ScatterCast.The Overcast design is used to provide the multicast application of bandwidth sensitive, and improves bandwidth availability ratio.How ScatterCast is extensive if then being primarily aimed at, heterogeneous user provides multicast services.
Improve extensibility and can be divided into stratification and non-stratification according to whether introducing layering and hiving off.The scheme of stratification has NICE, ZIGZAG.Most of group membership is positioned at the bottom of hierarchy, only has contact with a small amount of fixed number destination node, so just greatly reduces the processing expenditure of most of multicast member.The main distinction of NICE and Zigzag is: a bunch of inside, the distribution of cluster management and data is finished by different nodes in ZigZag, and these two functions are unified on the node in NICE.
Still build the Mesh net earlier can be divided into tree preferential and Mesh is preferential according to contributing earlier.Tree preferentially is meant first member data forwarding tree, and for fault-tolerant consideration is connected with the node retentive control that is not father node again, forms control structure.Based on the Yoid that has of this mode, Overcast, SwitchTree etc.Mesh forms the Mesh net earlier and forms the data forwarding tree on this basis, as Narada.The preferential scheme of general tree postpones to be greater than the preferential scheme of Mesh, and the Mesh priority scheme is better than the tree priority scheme on fault-tolerance.But the general extensibility of Mesh structure is bad.
The present invention proposes a kind of multi-level, stable application layer scheme: CBroadcast.This programme is to be applicable to the application layer multicast scheme of quasi real time using in single source, with centralized control with distributedly combine, application layer multicast combines with network layer multicast, improved extensibility, maximization improves the supported number of users of network, reduced cost, having solved Web TV to the contradiction between stability requirement height and the application layer network dynamic change greatly, is the important technology of stable application layer multicast.
Summary of the invention
The object of the present invention is to provide a kind of multi-level, stable application layer multicast scheme: CBroadcast.
The thinking of method proposed by the invention is: the management strategy that adopts stratification, reach stable and quasi real time requirement in conjunction with multiple multicasting technology, specifically be divided into following 4 points: 1, adopt centralized and distributed combining, choose supernode and concentrate construction and the maintenance of being responsible for lower floor's multicast tree, lower floor's application layer topology adopts distributed self-organizing agreement to improve the ability and the stability of multicast tree; 2, adopt level and the thought of hiving off for improving number of users, reduce cost; 3, adopt the Mesh priority scheme, structure Mesh net generates the data forwarding tree on this basis and uses to satisfy quasi real time earlier; 4, application layer multicast and network layer multicast are combined, can bring into play the network layer multicast advantage as far as possible.
The invention is characterized in: this method realizes that in following network hierarchical structure the belonging network hierarchical structure is made up of following 3 levels:
The supernode network is the star network that forms by point-to-point mode of unicast by between the supernode, and its Centroid is the supernode nearest apart from issue source, and the topology information of supernode network is stored in the issue source node;
Bunch network is an application layer network that is formed by 10 to 20 IP multicast island node self-organizings, make up an application layer multicast forwarding tree between these IP multicast islands, the root node of this tree is exactly bunch network representation node of being recommended by general acclaim by the IP multicast island in bunch of network, this representation node obtains data from affiliated supernode, and transmit other IP multicast island node in bunch network, form the Mesh structure;
IP multicast island is a customer group, and it is a network of supporting any size of multicast, and the representation node that a user becomes the multicast island is recommended on each IP multicast island by general acclaim, and this node uses the IP multicast to receive and sends data;
It is the application layer forwarding tree of tree root with the issue source that above-mentioned 3 levels have been formed one;
All use traditional model of client between described issue source and supernode, supernode and bunch network representation node, on behalf of the clean culture of the strip adoption udp protocol between two IP multicast islands, a link in described bunch of network connect link, this weight that connects the road for comprise between two node postpone or available bandwidth in the link metric of interior clean culture;
Each bunch network also comprises a cluster controller that is made of a program entity, this entity operates on the supernode of bunch network belonging, this cluster controller is being safeguarded overall Mesh net information, and to be responsible between the member of Mesh net with a bunch network representation node be shortest path tree of root structure, thereby session data is distributed along multicast transmit tree, and control information then connects by the clean culture that realizes through bunch network representation node between each member in this controller and bunch network to be transmitted;
Application layer group broadcasting method of the present invention is realized according to following steps successively at the network hierarchical structure that above-mentioned centralized control combines with distributed forwarding:
1. to each supernode controller input issue source node i p address;
2. if node A send to add the message of certain multicast tree to controller then carries out 3, if send the message of leaving certain multicast tree then execution in step 8;
3., then directly add this multicast island if multicast island, node A place has added a bunch network multicast tree; Otherwise continue down to carry out;
4. node A sends out request to the issue source node earlier, obtains the supernode tabulation, bunch network under the supernode that the selection delay is minimum and this supernode connect down;
5. node A adds the Mesh network of bunch network;
A) node A sends to controller and adds the Mesh internet message, and request adds the Mesh net that cluster controller is safeguarded;
B) cluster controller is receiveed the response by adding and is returned all IP addresses of nodes tabulations in the current Mesh net, and sends group membership's updating message to other nodes;
C) node A is according to the IP address list that obtains, measure the unicast delay of other nodes, and measurement result is encapsulated in the refresh message that periodically produces sends to controller, comprise the path vector information list of sequence number, each member and other node of each member's IP address, refresh message in this message;
D) after cluster controller is received refresh message, upgrade the local Mesh net topology information of being safeguarded, the Mesh net topology information after the renewal sends to other nodes in the Mesh net with the form of clean culture;
6. after controller calculated father node, described node A added multicast tree;
A) node A adds in-tree message to the request that controller sends the adding multicast tree: the IP address that comprises issue source in the message;
B) controller calculates father node and the child node of node A in multicast tree, is encapsulated in to add in-tree and send to node A in receiveing the response, and the variation of tree topology simultaneously is by the interdependent node in upgrading under the tree message informing bunch;
C) after the father node of node A is received and upgraded tree message, node A is joined in the child node tabulation of oneself.After the child node of node A is received and upgraded tree message, node A is joined in the father node tabulation of oneself, add father node message to node A transmission simultaneously;
D) after node A receives and adds father node message, represent oneself to add the multicast tree success;
7. if do not select father node in the overtime restriction, then directly select supernode as father node, then this moment, node A became a bunch network representation node, and adition process finishes;
8. node A initiatively leaves certain multicast tree;
A) node A sends to controller and leaves tree message;
B) father node of controller notice node A, the sign of deletion of node A from its child node tabulation, if a bunch network representation node leaves, cluster controller is chosen a bunch network representation node again in bunch network;
C) root node sends to leave to set to node A and receives the response;
9. the notice cluster controller leaves the Mesh network;
A) node A sends to cluster controller and leaves Mesh network information notice, and starts a timer;
B) cluster controller upgrades the local Mesh net topology information of being safeguarded, the link that the node of deletion of node A correspondence and node A connect, and, send this node of affirmation A to node A and leave receiveing the response of Mesh net other nodes that the information broadcast that A leaves is netted to Mesh;
C) if do not receive also behind the timer expired that leaving the Mesh net receives the response, then node A repeats to leave the Mesh network information to the controller transmission, till receiving that leaving the Mesh net receives the response;
Experimental simulation and interpretation of result
The main purpose of CBroadcast protocol emulation is whether checking CBroadcast agreement can finish design object.This paper compares CBroadcast agreement and Narada agreement by simulator myns in simulated experiment.The Random Graph of 1000 nodes is used in experiment, and the average number of degrees of node are 5.Node a part of node of picking out at random makes up the application layer multicast tree from figure, and the analog result of 100 figure is averaged, and obtains the conclusion of Fig. 4 to Fig. 6.
A good application layer multicast scheme should be able to guarantee the quality of data path.The quality of application layer multicast data path adopts following two parameters to weigh usually: intensity and range of extension.Fig. 4 research is exactly that the transmission of CBroadcast is prolonged, and wherein X-axis is represented member's sequence number of application layer multicast group.Node 500 nodes of picking out at random make up application layer multicast tree, the time-delay of having compared two kinds of schemes: CBroadcast and Narada from figure.As can be seen from Figure 4, CBroadcast is similar with Narada on the transmission delay performance of node, and with reference to the conclusion of Narada, CBroadcast also can obtain and the comparable performance of network layer multicast.
The user adds and time of leaving CBroadcast also is to estimate the key factor in multi-cast system ground.Adding time-delay is defined as: the user adds the application layer multicast group to the time that obtains data.Adding time-delay is important parameters in the application layer multicast design, and before a kind of application layer multicast obtained to use widely, what its adding time-delay must be enough was low.Low adding time-delay can improve the user experience of application layer multicast scheme to a great extent, reduces the influence of upstream node failure to downstream node simultaneously.Fig. 5 represents research that the adding of CBroadcast is prolonged, and wherein X-axis is represented member's sequence number of application layer multicast group.Node 200 nodes of picking out at random form the application layer multicast group from figure, have compared the adding time-delay of two kinds of schemes.As can be observed from Figure, the adding of CBroadcast time-delay is well below Narada.Fig. 6 studies the situation of the leave latency of CBroadcast, and wherein X-axis is represented member's sequence number of application layer multicast group.Node 200 nodes of picking out at random form the application layer multicast group from figure, have compared the leave latency of CBroadcast and Narada.Experiment shows that CBroadcast is similar at the node leave latency and the Narada of node.
Realized the prototype system of CBroadcast on the PlanetLab experimental network, prototype system has comprised nearly all live-vertex in the PlanetLab experimental network, is mainly used to study stability and the protocol overhead of CBroadcast in live network.Experimental situation configuration is as follows: all nodes added the CBroadcast multicast group at random in initial 100 seconds, then leaving at random within 120 minutes.The transmission rate of data source acquiescence is 300Kbps.
Most of control messages is the state information that exchanges between node among the CBroadcast, and this category information mainly occurs in Cluster inside, so the number of nodes of Cluster may become a key factor that influences protocol overhead.Fig. 7 has provided the variation function of average protocol overhead with respect to average Cluster number of nodes.Basically, along with the increase of the scale of Cluster, protocol overhead increases thereupon, but with respect to data traffic, protocol overhead is low-down.
Keeping data stability is the main target of CBroadcast, and in order to estimate the data stability of CBroadcast, we define a continuity factor CI, and CI is the ratio that the data that receive of user and transmitting terminal send data.Fig. 8 has provided the variation function of the average continuity factor of node with respect to average Cluster number of nodes.As can be seen from Figure 8, continuity improves along with the raising of Cluster scale, because each user node has more father node available.
Description of drawings
Fig. 1 CBroadcast network configuration
Figure C20051008668000091
IP multicast network among Fig. 2 CBroadcast
Figure C20051008668000092
Fig. 3 CBroadcast scheme workflow;
The node transmission delay of Fig. 4 CBroadcast and Narada;
The node of Fig. 5 CBroadcast and Narada adds time-delay;
The node leave latency of Fig. 6 CBroadcast and Narada;
The protocol overhead of Fig. 7 CBroadcast:
10 nodes of
20 nodes of ■
Figure C20051008668000101
50 nodes
Figure C20051008668000102
100 nodes
Figure C20051008668000103
150 nodes
Figure C20051008668000104
200 nodes
The data continuity of Fig. 8 CBroadcast:
10 nodes of
20 nodes of ■
Figure C20051008668000105
50 nodes
Figure C20051008668000106
100 nodes
Figure C20051008668000107
150 nodes
Figure C20051008668000108
200 nodes
Embodiment
In CBroadcast, network topology is divided into 3 levels: supernode network, bunch network, multicast island.The supernode network is to form star network by point-to-point mode of unicast between the supernode, and the supernode nearest apart from issue source is the Centroid of this network.Bunch network is that 10-20 multicast island node (definition is seen below) self-organizing forms an application layer network, is called bunch.Make up an application layer multicast forwarding tree between these users.One bunch elects a bunch of network representation node, and a bunch network representation node obtains data from supernode, other users in being transmitted to again bunch.Bunch network representation node is exactly the tree root of application layer multicast transmit tree in bunch network.IP multicast island is a network of supporting any size of IP multicast, and it can be a main frame, an Ethernet, campus network or the like.Suppose that present main frame all supports IP multicast (Windows operating system is all set up).In an IP multicast island, main frame uses IP multicast reception/transmission data.In live process of CBroadcast, a user can be selected in each IP multicast island becomes multicast island representation node.The network structure of CBroadcast is as shown in Figure 1:
From accompanying drawing 1 as can be seen, CBroadcast be a kind of stratification, based on the tree the application layer multicast agreement.It sets up one is the application layer forwarding tree of tree root with the issue source, and the ground floor of forwarding tree is the supernode network, and supernode adopts clean culture to be connected with issue source.The second layer of forwarding tree is a bunch network, bunch is made up of 10~20 multicast islands, and each bunch elects a representation node bunch network representation node, and a bunch network representation node obtains data from certain supernode, other multicast islands in being transmitted to bunch.
Multicast island structure figure as shown in Figure 2.Connect by the UDP passage between the representation node of representation node multicast island, multicast island between the different multicast islands.During the packed UDP of advancing of data wraps, send to the representation node on another island from the representation node on a multicast island.In case the multicast island receives UDP message, representation node is the UDP message decapsulation, sends to other user nodes in the island by the IP multicast then.Network structure in the multicast island is seen accompanying drawing 2.
In the system framework of CBroadcast, all use traditional C/S model between issue source and supernode, supernode and bunch network representation node, therefore, elect a good representation node in each bunch inside, and make up one small-sized, application layer multicasting network becomes the key of success efficiently.Each bunch has a cluster controller, centralized management bunch member's adding, leave and the maintenance of bunch topology, and to calculate with bunch network representation node is the application layer multicast tree of root.Each bunch member adds, leaves and will notify cluster controller.The formation Mesh structure of full-mesh between each bunch member, the cycle will arrive the Link State of other nodes and inform cluster controller.
Simply introduce below CBroadcast how the processed group member adding, leave and failure detection.
Node adds follows following steps: if this multicast island, node place has added CBroadcast, then directly add this multicast island, otherwise this node adds CBroadcast as multicast island representation node.It earlier sends out request to the issue source node, obtains the supernode tabulation, selects supernode, selects several bunches of connecting this supernode under again, adding bunch.The process that adds bunch is followed a bunch agreement.The Mesh net that just adds this bunch earlier after calculating father node by controller, adds multicast tree.If do not select father node in the overtime restriction, then directly select supernode as father node, then this moment, this node became a bunch network representation node.
The process that node leaves is, at first leaves multicast tree, leaves the Mesh network again.The inefficacy of node is that cluster controller does not detect the refresh message from node for a long time.
Continuous exchange state information between bunch network representation node and supernode comprises whether bunch network representation node is online, the resource coefficient at bunch network representation node place etc.The resource coefficient is an index of weighing bunch load, is defined as: available bandwidth resources of bunch interior nodes and the ratio of working as the bandwidth resources of prevariety use.Each node maintenance of bunch inside is to the state information of bunch other nodes, mainly among the design considers to postpone.
Each bunch has two parts: a cluster controller and a plurality of bunches of group memberships.Cluster controller is a program entity, and it operates in the position that all members can both have access to.In current design version, on the supernode under it operates in bunch.Controller at first makes up the application layer network-Mesh network of a full-mesh between the group membership, on behalf of a clean culture between two members, a link in the Mesh network connect, the weight of link is the tolerance (as delay, available bandwidth etc.) of unicast path between its two end node, be in the consideration of simplicity of design, only use at present to postpone as the tolerance mode.
Cluster controller safeguard to add the overall Mesh net information between bunch member, and to be responsible for a bunch network representation node be root, shortest path tree of structure between the member of Mesh network.Use Mesh net can carry out the structure of the shortest tree very easily, improves the reliability of multicast tree simultaneously, makes the multicast tree performance optimization become possibility.In addition, this structure is the mode of short multicast tree, can reasonablely satisfy the lower demand of broadcasted application time-delay.Session data is distributed along multicast tree, and control information then connects by the clean culture between controller and each member to be transmitted.The scheme that this centralized control and distributed forwarding are merged more helps the stability of system.
Because the shortest path tree based on the source is constructed on the basis of Mesh net fully, so need to construct a Mesh net efficiently.CBroadcast is different with the Mesh net design of Narada, and it is safeguarded the Mesh net of a full-mesh for each bunch and realizes multicast functionality.Among the CBroadcast bunch the node number seldom, generally at 10-20, this makes Mesh network of a full-mesh of structure become possibility, other all members' information can not brought too big expense yet in all preservation groups in each member.In addition, CBroadcast stores the sign (as the IP address) of all members among the current Mesh at supernode.The IP address of supernode is well-known, and the member who is used for newly adding multicast group gets the information of multicast member up till now.The user can obtain the information (for example by web page interlinkage) of supernode by offline mode.CBroadcast safeguards the continuity and the efficient of multicast tree for each bunch uses centralized control strategy.This is for many-sided consideration: improve system reliability and reduce complexity (group membership changes and the node fails recovery causes).On the other hand, supernode can not have influence on the high speed data transfers between node only at the enterprising line operate of control plane.
The IP address of cluster controller place supernode is well-known, and it is responsible for collection, the maintenance of whole M esh net topology information, safeguards a multicast tree for each cluster knot point simultaneously.Its main effect in Mesh net have following some:
The adding Mesh net request of process user: n the node I that newly adds the Mesh net nSend adding MESH network information to controller, controller is receiveed the response to I by adding the MESH net nReturn already present IP addresses of nodes tabulation (I in the Mesh net 1..., I N-1).After obtaining this IP address list, initiate node I nMeasure other all node I 1..., I N-1Unicast delay, and measurement result be encapsulated in send to controller in the refresh message.After controller is received refresh message, upgrade the Mesh net topology information of local maintenance, in the Mesh net, add ingress I nAnd I nLink information to other node.
Periodically update the information of Mesh net: each the member node I in the Mesh net kPeriodically measure other nodes I iDelay, i.e. point-to-point transmission link L in Mesh net KiWeight, and measurement result be encapsulated in send to cluster controller in the refresh message.Controller upgrades the Mesh net topology information of local maintenance after receiving refresh message.
The Mesh net request of leaving of process user: as certain member node I kWhen initiatively leaving the Mesh net, leave the MESH network information to the controller transmission.Controller is received I kSend leave the MESH network information after, upgrade the local Mesh net topology information of being safeguarded, deletion I kCorresponding node and I kThe link that is connected, and to the I that removes of Mesh net kAll member node in addition send the user list information after upgrading.Simultaneously to I kSend response message and leave the response of MESH net.
The inefficacy of process user: if controller is not received certain node I in the time of one section setting kThe refresh message that sends is then thought I kMay lose efficacy.So controller is to I kSend the probe message of some continuously.If all less than replying, then controller is concluded I to these probe message kLost efficacy.This moment, controller was with the I that safeguards kInformation sign for losing efficacy, but can not delete the information of this member node, in case behind the out-of-date refreshing information of receiving about this member, mistake thinks that this member newly add the member of multicast group.Pass through the time of other one section setting again, cluster controller upgrades the local Mesh net topology information of being safeguarded, deletion I kCorresponding node and I kThe link that is connected, and with I kThe information that lost efficacy is notified in the Mesh net and I kNode (the I that multicast tree is arranged kFather node in multicast tree and child node).
By in the top explanation as can be seen: need controller to upgrade the own Mesh net topology information of being safeguarded under four kinds of situations, and send notice to each node of Mesh net: controller receives that the request of certain node adds the adding MESH network information of Mesh net; Controller is received the refresh message that certain member node is sent; That receives that certain member node request leaves Mesh net leaves the MESH network information; Do not receive certain member's refresh message in a period of time, controller thinks that this member lost efficacy.
Wherein back two kinds of situations are set up by multicast tree and the correctness of data forwarding has direct influence, so controller needs relevant information to be notified to all member node in the Mesh net in both cases at once.For second kind of situation,, only can influence the efficient of data forwarding owing to only relate to the variation of link-quality.In order to reduce the overhead that brings to network owing to sending lastest imformation in this case to node, and the topological handover overhead of multicast tree, the mode that this paper adopts time-delay to send: controller is after receiving the refresh message that certain node sends, upgrade the Mesh net topology information of local maintenance, but the relative variation sum of statistics link metric in renewal process, if this time the relative variation sum of renewal process link metric does not surpass " renewal threshold value ", then can not send the information after upgrading to the node in the Mesh net, up to the refresh message of receiving that some node sends, make the relative variation sum of link metric surpass the renewal threshold value, just can trigger the transmission of the topology information of renewal.
The task of bunch member's execution comprises: register control, data forwarding is monitored other nodes, tree-like switching.
Controller is set up a kind of father's one subrelation between adjacent node in multicast tree, the group membership utilizes performance that this relation comes the monitoring group broadcasting tree and is connected.For example, the group node detection is to the connection failure of father node, and he can switch to other node.The reason of tree-like switching has two kinds: controller calculates the multicast tree of more optimizing; The group membership finds the father node failure or leaves multicast tree.Under the both of these case, controller all can find a new father node for this node.
Controller is safeguarded a list item for each node i, comprises the IP address of following content: i; The sequence number s of the last refresh message of receiving from i iLast time receives that sequence number is s iThe local zone time of refresh message; Member i is to the path vector information list of other nodes k.When controller is received the refresh message that node i sends, the nodal information list item of traversal local maintenance, and carry out following processing:, in the Mesh net information that safeguard this locality, add the information of this member node if when i is initiate member.Otherwise, if the sequence number in the refresh message is i maintenance sequence s greater than this locality i, upgrade local information.Otherwise controller thinks that the refresh message of receiving is out-of-date, does not do any processing.If (T at the appointed time m) controller do not receive new refresh message from node i, controller thinks that node i lost efficacy.
Controller is safeguarded the topology information (information that comprises all members) of whole M esh net, when a new member adds or an already present old node leaves the renewal that all can trigger the Mesh net.Each node in the Mesh net periodically measures the application layer unicast delay of other node among the Mesh, and these information are encapsulated in send to controller in the refresh message.Controller upgrades the local Mesh net topology information of being safeguarded after obtaining the Mesh net topology information of being sent by Mesh net member.Each node i periodically produces refresh message in the Mesh net, and this message is identified by the sequence number that singly increases (SequenceNumber).The refreshing information that controller receives from member i comprises the IP address of following several contents: i; The sequence number s of refresh message iMember i is to the path vector information list of other nodes.
Here, local path vector information to other member calculates by distance vector algorithms.At first each member in the Mesh net periodically obtain each bar limit that it is connected in the Mesh net tolerance (as measurement for the delay on limit, can by send to neighbor node ping wrap realize); Then by calculating path vector information with mutual these information of neighbor node and by distance vector algorithms.Path vector information except the tolerance that comprises local path to other all members, also comprise these paths the member linked list of process.
When new node A wants to add the Mesh net, finish adition process according to following step: A sends to controller and adds the MESH network information, and request adds the Mesh net that controller is safeguarded; Controller is responded by adding MESH net and is returned all IP addresses of nodes tabulations in the current Mesh net, and upgrades to other nodes transmissions group membership updating message.A measures the unicast delay of other nodes according to the IP address list that obtains, and measurement result is encapsulated in sends to controller in the refresh message.Controller parses the deferred message of A to other nodes from the refresh message of receiving, upgrade the local Mesh net topology information of being safeguarded, in Mesh net member tabulation, add A, also add A simultaneously to the link-state information of other node, the Mesh information after the renewal sends to other nodes in the Mesh net with the form of clean culture.The successful adding of A this moment the Mesh net.If A wishes to receive data, only needing to add with a bunch network representation node is the multicast tree of root.The process that adds multicast tree sees deutomerite for details to be described.
If certain node A wishes to leave the Mesh net, it is finished according to following step and leaves flow process: at first, A sends leave group message to controller and leaves tree, leaves the detailed description that sees next section of process of multicast tree.In this stage, A continue to transmit data, reduces the losing of packet of leaving the child node that causes owing to A.A finish leave multicast tree operation after, A no longer receives the data of other nodes, also no longer sends data to other nodes.A sent to controller and left MESH network information notice this moment, and started a timer.Controller receives that A sends leave the MESH network information after, upgrade the local Mesh net topology information of being safeguarded, the link that the node of deletion A correspondence and A connect, and the information broadcast that A is left is to other nodes of Mesh net.Send acknowledge message to A simultaneously and leave the response of MESH net.A represents successfully to leave the Mesh net after receiving that leaving the MESH net receives the response.If do not receive also behind the timer expired that leaving the MESH net receives the response, then repeat to leave the MESH network information, till receiving that leaving the MESH net receives the response to the controller transmission.
Node A sudden failure in the Mesh net (may because near the network failure node collapse or the node), A can't be initiatively notification controller.So just need the inefficacy of controller detection node.If controller is not received the refresh message that node A sends in a period of time, controller thinks that A may lose efficacy.So controller sends the probe message of some continuously to A.If these probe message are all less than replying, then controller thinks that A lost efficacy.Controller upgrades the local Mesh net topology information of being safeguarded subsequently, deletes the node and the link relevant with A of A correspondence from the Mesh network, and the message that A lost efficacy is sent to each node that Mesh nets by upgrading the MESH network information.
Controller is responsible for calculating a shortest path tree that connects all bunches member, and result of calculation is passed to all group memberships.Link overhead can be selected by user oneself, comprising: time-delay, bandwidth isometry parameter.For this real-time application of net cast, time-delay may be the most responsive metric parameter.
If certain father node lost efficacy, the data of its downstream node can be lost, if untimelyly be suitable new route of child node selection, inefficacy can spread to all downstream child nodes.CBroadcast provides failure detection mechanism and link backup mechanism, makes child node can effectively detect the failure of father node, and switches to the backup father node rapidly.
CBroadcast is range ability vector Routing Protocol on Mesh.For fear of the infinite problem that count down to that occurs in the distance vector Routing Protocol, adopt the strategy that is similar to bgp protocol [rfc 1771].Each member not only is maintained into the cost of other members' route, and needs to safeguard corresponding path.In addition, not only be included in the cost of the route of destination address when carrying out routing update between neighbours' node, and comprise corresponding path.Adopted the reverse shortest path mechanism that adopts in the DVMRP agreement [rfc1812] during the construction data forward-path.That is to say, have only when N be next of M in the shortest path from M to S when jumping node, M just receives from source S and transmits the grouping of coming through N.And next of shortest path that M also only is given to S to packet forward jumped neighbours' node of node.
Before the multicast tree that node A adds bunch, at first add Mesh net (joint in the reference), become the node of Mesh network.Add according to the following steps then with bunch network representation node bunch network representation node is the application layer multicast tree of root.Node A sends the request message that adds multicast tree to controller and adds in-tree: the IP address that comprises S in the message.
Arrive the path of S and the tolerance in this path owing on controller, safeguard each member who has among the current Mesh along multicast tree, so it is the limited shortest path tree of degree root, that comprise node A with bunch network representation node that controller can calculate one, except considering shortest path, controller needs also when generating multicast transmit tree to consider that minimizing is to the change of original multicast tree as far as possible; As long as the time-delay from bunch network representation node to any one node is no more than a threshold value (being defaulted as 600 milliseconds).Father node and the child node of the A that controller calculates in multicast tree is encapsulated in and adds in-tree and send to A in receiveing the response, and the variation of tree topology simultaneously is by upgrading tree message informing interdependent node.
After the Father's Day point of A is received and upgraded tree message, A is joined in the child tabulation of oneself.After this, after receiving bunch data that the network representation node sends, all to transmit this data to the member's (comprising A) in own son's tabulation.The child node of A joins A in the father's node listing of oneself after receiving and upgrading tree message, sends to A simultaneously to add father node message.After the A node is received and added father node message, represent oneself to add the multicast tree success.(A also will send and add father node to its father node)
When node A initiatively leaves certain multicast tree, carry out following processes: send to controller and leave tree message.Controller receives that certain member sends leave tree message after, carries out following operation: calculate new multicast tree according to current Mesh net, notice is received the node of influence because of the multicast tree change; Father's node of notice A, the sign of deletion A from its child tabulation; Root node sends to leave to set to A and receives the response.
Controller can obtain the fail message of certain member node by the Mesh net, and is notified to all nodes; In addition, receive that neighbours send notify the information that certain member lost efficacy after, this member's that controller will be safeguarded Information sign was for losing efficacy, but do not delete this member's information, in case controller behind the out-of-date refreshing information of receiving about this member, thinks that this member newly add the member of multicast group by mistake.After a period of time, give notice each member in the Mesh net when fail message, this inefficacy member's information just can be deleted.
The root of multicast tree travels through all nodes in this multicast group with a certain order (adopting order at random at present), goes on foot from the 2nd of adding multicast tree to begin to reselect father's node for each node.
Should be noted that 2 points: (1) leaves stage of multicast tree at node, and A continues to transmit data, reduces the losing of packet of leaving the child node that causes owing to A.A finish leave multicast tree operation after, A no longer receives the data of other nodes, also no longer sends data to other nodes; (2) controller can obtain the fail message of certain member node by the Mesh net, and is notified to all nodes; In addition, receive that neighbours send notify the information that certain member lost efficacy after, this member's that controller will be safeguarded Information sign was for losing efficacy, but do not delete this member's information, in case controller behind the out-of-date refreshing information of receiving about this member, thinks that this member newly add the member of multicast group by mistake.After a period of time, give notice each member in the Mesh net when fail message, this inefficacy member's information just can be deleted.
Cluster controller safeguard to add the overall Mesh net information between bunch member in the present invention, and to be responsible for a bunch network representation node be root, a structure shortest path tree (SPT) between the member of Mesh network.Use Mesh net can carry out the structure of the shortest tree very easily, improves the reliability of multicast tree simultaneously, makes the multicast tree performance optimization become possibility.In addition, this structure is the mode of short multicast tree, can reasonablely satisfy the lower demand of broadcasted application time-delay.Session data is distributed along multicast tree, and control information then connects by the clean culture between controller and each member to be transmitted.The scheme that this centralized control and distributed forwarding are merged more helps the stability of system.

Claims (4)

1. the centralized and distributed application layer group broadcasting method that combines is characterized in that, this method realizes that in following network hierarchical structure described network hierarchical structure is made up of following 3 levels:
The supernode network is the star network that forms by point-to-point mode of unicast by between the supernode, and its Centroid is the supernode nearest apart from the issue source node, and the topology information of supernode network is stored in the issue source node;
Bunch network is an application layer network that is formed by 10 to 20 IP multicast island node self-organizings, make up an application layer multicast forwarding tree between these IP multicast islands, the root node of this tree is exactly bunch network representation node of being recommended by general acclaim by the IP multicast island in bunch of network, this representation node obtains data from affiliated supernode, and transmit other IP multicast island node in bunch network, form the Mesh structure;
IP multicast island is a customer group, and it is a network of supporting any size of multicast, and the representation node that a user becomes the multicast island is recommended on each IP multicast island by general acclaim, and this node uses the IP multicast to receive and sends data;
It is the application layer forwarding tree of tree root with the issue source node that above-mentioned 3 levels have been formed one;
All use traditional model of client between described issue source node and supernode, supernode and bunch network representation node, on behalf of the clean culture of the strip adoption udp protocol between two IP multicast islands, a link in described bunch of network connect link, the weight of this link for comprise between two node postpone or available bandwidth in the link metric of interior clean culture;
Each bunch network also comprises a bunch network controller that is made of a program entity, this entity operates on the supernode of bunch network belonging, this bunch network controller is being safeguarded overall Mesh net information, and to be responsible between the member of Mesh net with a bunch network representation node be shortest path tree of root structure, thereby session data is distributed along multicast transmit tree, and control information then connects by the clean culture that realizes through bunch network representation node between each member in this controller and bunch network to be transmitted;
Application layer group broadcasting method of the present invention is realized according to following steps successively at the network hierarchical structure that above-mentioned centralized control combines with distributed forwarding:
Step 1. is to each supernode controller input issue source node i p address;
If step 2. node A sends the message that adds certain multicast tree then execution in step 3 to bunch network controller, if send the message of leaving certain multicast tree then execution in step 8;
If multicast island, step 3. node A place has added a bunch network multicast tree, then directly add this multicast island; Otherwise continue down to carry out;
Step 4. node A sends out request to the issue source node earlier, obtains the supernode tabulation, bunch network under the supernode that the selection delay is minimum and this supernode connect down;
Step 5. node A adds the Mesh net of bunch network:
A) node A sends to a bunch network controller and adds the Mesh internet message, and request adds the Mesh net that bunch network controller is safeguarded;
B) bunch network controller is receiveed the response by adding and is returned all IP addresses of nodes tabulations in the current Mesh net, and sends group membership's updating message to other nodes;
C) node A is according to the IP address list that obtains, measure the unicast delay of other nodes, and measurement result is encapsulated in the refresh message that periodically produces sends to a bunch network controller, comprise the path vector information list of sequence number, each member and other node of each member's IP address, refresh message in this message;
D) after a bunch network controller is received refresh message, upgrade the local Mesh net topology information of being safeguarded, the Mesh net topology information after the renewal sends to other nodes in the Mesh net with the form of clean culture;
After step 6. a bunch network controller calculated father node, described node A added multicast tree:
A) node A adds in-tree message to the request that bunch network controller sends the adding multicast tree: comprise the issue source IP addresses of nodes in the message;
B) bunch network controller calculates father node and the child node of node A in multicast tree, is encapsulated in to add in-tree and send to node A in receiveing the response, and the variation of tree topology simultaneously is by upgrading the interdependent node in bunch network under the tree message informing;
C) after the father node of node A is received and upgraded tree message, node A is joined in the child node tabulation of oneself, after the child node of node A is received renewal tree message, node A is joined in the father node tabulation of oneself, send adding father node message to node A simultaneously;
D) after node A receives and adds father node message, represent oneself to add the multicast tree success;
If do not select father node in the overtime restriction of step 7., then directly select supernode as father node, then this moment, node A became a bunch network representation node, and adition process finishes;
Step 8. node A initiatively leaves certain multicast tree:
A) node A sends to bunch network controller and leaves tree message;
B) father node of bunch network controller notice node A, the sign of deletion of node A from its child node tabulation, if a bunch network representation node leaves, bunch network controller is chosen a bunch network representation node again in bunch network;
C) root node sends to leave to set to node A and receives the response;
Step 9. a notice bunch network controller leaves the Mesh network:
A) node A sends to bunch network controller and leaves Mesh network information notice, and starts a timer;
B) bunch network controller upgrades the local Mesh net topology information of being safeguarded, the link that the node of deletion of node A correspondence and node A connect, and, send this node of affirmation A to node A and leave receiveing the response of Mesh net other nodes that the information broadcast that A leaves is netted to Mesh;
C) if do not receive also behind the timer expired that leaving the Mesh net receives the response, then node A repeats to leave the Mesh network information to a bunch network controller transmission, till receiving that leaving the Mesh net receives the response.
2. the centralized and distributed application layer group broadcasting method that combines according to claim 1, it is characterized in that: this method comprises that also each member in the Mesh net periodically measures the delay of other nodes, and give a bunch network controller measurement result by refresh message, upgrade the Mesh net topology information of local maintenance again by bunch network controller.
3. the centralized and distributed application layer group broadcasting method that combines according to claim 1, it is characterized in that this method also comprises: if bunch network controller is not received the refresh message that its member sends in a period of time, think that then this node may lose efficacy, described bunch of network controller just sends a series of probe message to this node, if all less than replying, then bunch network controller concludes that this node failure just upgrades the local Mesh net topology information of being safeguarded, delete the link of this node and connection thereof, and the node that has multicast tree to be connected with this node in the notice Mesh network, through the time of one section setting, this node is just by a bunch network controller deletion.
4. the centralized and distributed application layer group broadcasting method that combines according to claim 1 is characterized in that the overall Mesh net information that bunch network controller is safeguarded comprises: the sequence number s of IP addresses of nodes, the last refresh message of receiving from node i, the sequence number received of last time is s iThe local zone time, this node of refresh message to the path vector tabulation of other node.
CNB2005100866804A 2005-10-21 2005-10-21 Application layer group broadcasting method with integrated type and distributed type combination Expired - Fee Related CN100440865C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005100866804A CN100440865C (en) 2005-10-21 2005-10-21 Application layer group broadcasting method with integrated type and distributed type combination

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100866804A CN100440865C (en) 2005-10-21 2005-10-21 Application layer group broadcasting method with integrated type and distributed type combination

Publications (2)

Publication Number Publication Date
CN1747446A CN1747446A (en) 2006-03-15
CN100440865C true CN100440865C (en) 2008-12-03

Family

ID=36166776

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100866804A Expired - Fee Related CN100440865C (en) 2005-10-21 2005-10-21 Application layer group broadcasting method with integrated type and distributed type combination

Country Status (1)

Country Link
CN (1) CN100440865C (en)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070245025A1 (en) * 2006-04-17 2007-10-18 Muthaiah Venkatachalam Methods and apparatus for resource management architectures for Internet protocol based radio access networks
CN100373886C (en) * 2006-05-18 2008-03-05 上海交通大学 Wireless-sensor network distribution type cluster-dividing method based on self-adoptive retreating strategy
CN100581133C (en) * 2006-11-08 2010-01-13 中国科学院沈阳自动化研究所 Wireless meshed network multicast communication method facing to industry monitoring application
JP4984917B2 (en) * 2007-01-26 2012-07-25 日本電気株式会社 Multicast communication system and method
CN101299671B (en) * 2007-04-30 2013-03-13 上海贝尔阿尔卡特股份有限公司 Method and device for transmitting and receiving multicast data packet
CN100461740C (en) * 2007-06-05 2009-02-11 华为技术有限公司 Customer end node network topological structure method and stream media distributing system
EP2034782A1 (en) * 2007-09-06 2009-03-11 Siemens Aktiengesellschaft A method for misbehaviour detection in secure wireless mesh networks
CN101447896B (en) * 2007-11-27 2011-06-08 北京九合创胜网络科技有限公司 TCP connection managing method for internet bypass monitoring system
CN101534203B (en) * 2008-03-13 2012-11-07 华为技术有限公司 Method, equipment and system for multicast control
CN101540714B (en) * 2008-03-21 2012-02-01 华为技术有限公司 Method for establishing network path and transmitting data and network nodes
CN101296188B (en) * 2008-06-16 2010-10-27 杭州华三通信技术有限公司 Method for implementing fast spanning tree protocol on two-stage distributed equipment
CN101610386B (en) * 2009-06-30 2011-06-22 中兴通讯股份有限公司 Method for displaying terminal list and device thereof
CN101621747B (en) * 2009-08-12 2012-07-11 广州海格通信集团股份有限公司 Reliable multicast transmission method of wireless mesh network
CN102368724A (en) * 2011-09-08 2012-03-07 华为技术有限公司 Message forwarding method and apparatus thereof
CN106533949A (en) * 2015-09-09 2017-03-22 华中师范大学 Domain perception-based multi-domain clustering application layer multicast construction and maintenance method
CN105490940B (en) * 2015-12-04 2018-10-26 天津维晟微科技有限公司 The selection method and device of switching node, base node, terminal node
CN114697005A (en) * 2020-12-28 2022-07-01 科大国盾量子技术股份有限公司 Distributed wide area quantum cryptography network group key distribution method and system
CN115834594B (en) * 2022-11-16 2024-04-19 贵州电网有限责任公司 Data collection method for improving high-performance computing application

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010034793A1 (en) * 2000-03-10 2001-10-25 The Regents Of The University Of California Core assisted mesh protocol for multicast routing in ad-hoc networks
US20020114302A1 (en) * 2001-02-22 2002-08-22 Motorola, Inc. Methods for reliably sending IP multicast packets to multiple endpoints of a local area network
US20040088309A1 (en) * 2002-11-06 2004-05-06 Koh Seok Joo Method of constructing and managing overlay multicast tree on Internet

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010034793A1 (en) * 2000-03-10 2001-10-25 The Regents Of The University Of California Core assisted mesh protocol for multicast routing in ad-hoc networks
US20020114302A1 (en) * 2001-02-22 2002-08-22 Motorola, Inc. Methods for reliably sending IP multicast packets to multiple endpoints of a local area network
US20040088309A1 (en) * 2002-11-06 2004-05-06 Koh Seok Joo Method of constructing and managing overlay multicast tree on Internet

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
应用层组播研究综述. 章淼,徐明伟,吴建平.电子学报,第32卷第12A期. 2004
应用层组播研究综述. 章淼,徐明伟,吴建平.电子学报,第32卷第12A期. 2004 *
应用层组播综述. 李珺晟,余镇危,潘耘,李霞,曹建华,武浦军.计算机应用研究,第11期. 2004
应用层组播综述. 李珺晟,余镇危,潘耘,李霞,曹建华,武浦军.计算机应用研究,第11期. 2004 *
支持实时多媒体传输的应用层组播***. 陈庆吉.计算机工程,第31卷第4期. 2005
支持实时多媒体传输的应用层组播***. 陈庆吉.计算机工程,第31卷第4期. 2005 *

Also Published As

Publication number Publication date
CN1747446A (en) 2006-03-15

Similar Documents

Publication Publication Date Title
CN100440865C (en) Application layer group broadcasting method with integrated type and distributed type combination
Liao et al. Anysee: Peer-to-peer live streaming
El-Sayed et al. A survey of proposals for an alternative group communication service
CN100531143C (en) Medium stream repeat method and medium server
Chen et al. Dynamic replica placement for scalable content delivery
Li et al. Hostcast: A new overlay multicasting protocol
CN101562568B (en) Method and device for generating alternate routes of coverage network
CN106162209A (en) A kind of content distributing network live broadcast system based on SDN technology and method
CN108684063A (en) A kind of on-demand routing protocol improved method based on network topology change
CN103096177A (en) Video on demand (VOD) method, system, agent node and media server
Cao et al. uCast: Unified connectionless multicast for energy efficient content distribution in sensor networks
CN100512286C (en) Covering network group broadcast protocol technology
Laoutaris et al. Implications of selfish neighbor selection in overlay networks
Huang et al. Enhancing P2P overlay network architecture for live multimedia streaming
Alkubeily et al. A new Application-Level Multicast technique for stable, robust and efficient overlay tree construction
CN103368770A (en) Gateway level topology-based self-adaptive ALM overlay network constructing and maintaining method
Shijie et al. Cross-layer and one-hop neighbour-assisted video sharing solution in mobile ad hoc networks
Salta et al. Improving P2P video streaming in wireless mesh networks
Nguyen et al. Ossim: A generic simulation framework for overlay streaming
CN106034106B (en) Network-building method, networking management method and device and system
Hu et al. P2P consistency support for large-scale interactive applications
Amad et al. A self-adaptive ALM architecture for P2P media streaming
Jeon et al. Overlay multicast tree recovery scheme using a proactive approach
CN102035894B (en) Distance-based state synchronization method
Adelstein et al. Building dynamic multicast trees in mobile networks

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081203

Termination date: 20111021