Title of Invention

A METHOD FOR FORWARDING A MULTICAST STREAM

Abstract ABSTRACT A router and system for forwarding a multicast stream is provided, when a unicast route from a router to a multicast source or a rendezvous point changes from a first route to a second route, the method includes establishing a new multicast forwarding path between the router and a second upstream router corresponding to the second route, keeping forwarding a multicast stream received via an prior multicast forwarding path, pruning the prior multicast forwarding path if the router receives the multicast stream via the new multicast path, and forwarding the multicast stream via the new multicast forwarding path. Therefore, multicast stream will be forwarded continuously during the switchover process.
Full Text

METHOD, ROUTER AND SYSTEM FOR FORWARDING A
MULTICAST STREAM
Field of the Technology
This invention relates generally to the area of telecommunications, and more particularly to a method, router and system for forwarding a multicast stream when a uncials route from a router to a multicast source changes.
Background of the Invention
Protocol Independent Multicast (PIM) is a multicast routing protocol independent of unicast routing protocols. It does not depend on a specific unicast routing protocol. When using PIM, reverse path forwarding (RPF) checking can be implemented by using an existing unicast routing table. When using a protocol independent multicast-sparse mode (PIM-SM), a rendezvous point tree (RPT) based on a rendezvous point or a source path tree (SPT) based on a source may be established by using Join or Prune messages. Join or Prune messages are explicitly sent by a PIM router. A multicast stream is received by a network segment to which the multicast group belongs via the RPT or SPT. Protocol independent multicast-source-specific multicast (PIM-SSM) is an improvement of PlM-SM. When using PIM-SSM, an SPT is established by using Join or Prune messages explicitly sent by a PIM router, and the process of establishing an RPT and switching between an RPT and an SPT can be bypassed.
With the development and growth of broadband network technologies, more and more network operators provide high-quality Internet protocol television (IPTV) services to the public by deploying PIM multicast networks so as to increase revenue of broadband services. In other words, IPTV provides high-definition broadband video services to the public by using multicast technology in IP networks. Therefore, reliability of PIM multicast networks is very important to network operators. Reliability of PIM multicast networks is to reduce the impact on IPTV services caused by network faults to the minimum.
The process of switching an SPT under conventional PIM-SM technology by changing a unicast route is described as follows:
When a unicast route changes, an RPT checking is done on all active (S,G), (*,G) and (*,*,RP) entries, and all affected incoming interfaces are updated. In particular, if a new
1

incoming interface appears in an outgoing interface list, it is deleted from the outgoing interface list. The previous incoming interfaces may be added to the outgoing interface list by a subsequent Join/Prune message from downstream. Join/Prune messages received on the current incoming interface are ignored. Join/Prune messages received on new interfaces or existing outgoing interfaces are not ignored. Other outgoing interfaces are left as is until they are explicitly pruned by downstream routers or are timed out due to lack of appropriate Join/Prune messages. If a router has an (S,G) entry with an SPT-bit set, and the updated iif(S,G) (Incoming Interface (Source, Group)) does not differ from iif(*,G) or iif(*,*,RP), then the router resets the SPT-bit.
The router must send a Join message with S in the Join list via a new incoming interface to inform upstream routers that it expects a multicast stream over the new incoming interface. It may also send a Prune message with S in the Prune list via the old incoming interface, if the old incoming interface is still active, to inform upstream routers that this part of the distribution tree is going away.
In the above conventional PIM-SM technology, if a unicast route to a multicast source for computing reverse path forwarding changes, for example, the unicast route changes from the second-best route to the best route, a PIM router sends a Join message to a new upstream PIM router to establish a new SPT If the old incoming interface is still active, the PIM router sends a Prune message to the old upstream PIM router to prune the prior SPT. However, once the prior SPT is pruned, transmitting for a multicast stream is broken until the new SPT is completely established.
Summary of the Invention
A method for forwarding a multicast stream is provided in accordance with an embodiment of the present invention. In conventional technologies, transmitting a multicast stream will be broken when a multicast forwarding path switches wherein the switch is caused by that a unicast route to a multicast source or a rendezvous point changes. The method in accordance with an embodiment of the invention can solve the above problem.
Based on the above method, a router for forwarding a multicast stream is provided in accordance with another embodiment of the present invention.
A system for forwarding a multicast stream is provided in accordance with another embodiment of the present invention.
2

A method for forwarding a multicast stream in accordance withan embodiment of the present invention, when a unicast route from a router to a multicast source or a rendezvous point changes from a first route to a second route, the method including:
establishing a new multicast forwarding path between said router and a second upstream router corresponding to the second route, and keep forwarding a multicast stream received via an ■ prior multicast forwarding path;
pruning said prior multicast forwarding path if said router receives said multicast stream via said new multicast forwarding path; and forwarding said multicast stream received via said new multicast forwarding path.
In the method in accordance with an embodiment of the present invention, said router ignores or terminates said multicast stream received via said prior multicast forwarding path once said multicast stream is received via said new multicast forwarding path by said router.
In the method in accordance with an embodiment of the present invention, said router sends a Join message via a second incoming interface connected to said second upstream router corresponding to the second route; and
establishes said new multicast forwarding path from said second upstream router to said second incoming interface;
said router receives said multicast stream via said second incoming interface; and
forwards said multicast stream to a downstream device of said router via an outgoing interface corresponding to said prior multicast forwarding path.
Said router sends a Prune message to a first upstream router corresponding to said prior multicast forwarding path via a first incoming interface corresponding to said prior multicast forwarding path; and
prunes said prior multicast forwarding path from said first upstream router to said first incoming interface.
In the method in accordance with an embodiment of the present invention, when said prior multicast forwarding path is a source path tree SPT, said router establishes a new source path tree SPT if said unicast route from said router to said multicast source of said multicast stream is changed from a second-best route to a best route;
3

when said prior multicast forwarding path is a rendezvous point tree RPT, said router establishes a new rendezvous point tree RPT if said unicast route from said router to said rendezvous point of said multicast stream is changed from a second-best route to a best route.
A router for forwarding a multicast stream in accordance with an embodiment of the present invention includes:
a routing module, a forwarding module, a detecting module, an outgoing interface, and at least two incoming interfaces, wherein
said incoming interfaces are adapted to receive a multicast stream from upstream routers;
said outgoing interface is adapted to forward said multicast stream to a downstream device;
said forwarding module is adapted to forward said multicast stream to said outgoing interface pursuant to an instruction of said routing module, wherein said multicast stream is received via an incoming interface designated;
said detecting module is adapted to detect a condition of receiving said multicast stream via said incoming interface;
said routing module is adapted to
when a unicast route from a router to a multicast source or a rendezvous point changes from a first route to a second route, send a first instruction to establish a new multicast forwarding path via said incoming interface connected to said upstream router corresponding to said second route, send a second instruction for pruning a routing path via said incoming interface connected to said upstream router corresponding to said first route according to said condition of receiving said multicast stream via said incoming interface detected by said detecting module, and
instruct said forwarding module to forward said multicast stream to said outgoing interface, wherein said multicast stream is received via said incoming interface connected to said upstream router corresponding to said second route.
In the router, said routing module is adapted to inform said incoming interface to terminate said multicast stream received via said incoming interface connected to said upstream router corresponding to said first route when said routing module is informed that said detecting module detects that said multicast stream is received via said incoming interface connected to
4

said upstream router corresponding to the second route.
In the router, said routing module is adapted to send a Join message to said upstream router via said incoming interface connected to said upstream router corresponding to said second route to establish said new multicast forwarding path from said router to said incoming interface.
In the router, said routing module is adapted to send a Prune message to said upstream router via said incoming interface connected to said upstream router corresponding to said first route to prune said prior muhicast forwarding path from said router to said incoming interface.
A system for forwarding a multicast stream in accordance with an embodiment of the present invention includes: a multicast source of a multicast stream and a multicast receiver of the multicast stream, the method further includes: at least three routers in accordance with an embodiment of the present invention, wherein:
said at least three routers are connected to each other; one of said at least three routers is connected to said multicast source; another router is connected to the multicast receiver, and forwards the multicast stream from the muhicast source to the multicast receiver via a muhicast forwarding path formed by said at least three routers connected to each other.
The advantages of embodiments of the present invention are as follows.
(1) When a un least route from a router to a multicast source or a rendezvous point changes, e.g., the best route takes the place of the second-best route, a multicast forwarding path will switch. The router keeps receiving and forwarding a multicast stream via a prior multicast forwarding path until the multicast stream is received via a new multicast forwarding path during the router establishes the new multicast forwarding path. The prior multicast forwarding path is not pruned until the multicast stream is received via the new multicast forwarding path. Therefore, transmitting a multicast stream will not be broken during the forwarding process.
(2) The router ignores or terminates the muhicast stream received from the prior multicast forwarding path upon the router receives the multicast stream via the new multicast forwarding path, and thereby mistakes in receiving and playback of the multicast stream will not be caused by receiving the multicast stream via both the old incoming interface and the new incoming interface.
Brief Description of the Drawings
Figure 1 is a flowchart illustrating a method for forwarding a multicast stream by a PIM
5

router if a unicast route to a multicast source changes in accordance with the present invention.
Figure 2 is a simplified block diagram illustrating a system for forwarding a multicast stream in accordance with an exemplary embodiment of the present invention.
Figure 3 is a simplified block diagram illustrating a system for transmitting a multicast stream, shown before a unicast route has changed in accordance with an exemplary embodiment of the present invention.
Figure 4 is a simplified block diagram illustrating a system for forwarding a multicast stream when a unicast route changes in accordance with an exemplary embodiment of the present invention.
Figure 5 is a simplified block diagram illustrating a system for transmitting a multicast stream after a unicast route changes in accordance with an exemplary embodiment of the present invention.
Figure 6 is a simplified block diagram depicting the structure of a router in accordance with an exemplary embodiment of the present invention.
Embodiments of the Invention
In embodiments of the present invention, if a unicast route to a multicast source or a rendezvous point (RP) changes, for example, the unicast route changes from the second-best route to the best route, a PIM router will keep forwarding a multicast stream received from an old incoming interface until the multicast stream is received from a new incoming interface. Until the multicast stream reaches the new incoming interface, the PIM router will not send a Prune message to an old upstream router corresponding to the old incoming interface, and the PIM router will not discard the multicast stream received from the old incoming interface. Therefore, the multicast stream will be transmitted continuously.
Figure 1 is a flowchart illustrating a method for forwarding a multicast stream by a PIM router if a unicast route to a multicast source changes in accordance with an exemplar> embodiment of the present invention. As shown in Figure 1, the method is detailed as follows:
In block SI. a PIM router learns that a unicast route to a multicast source for computing RPF changes, for example, a best route takes the place of a second-best route.
In block S2, the PIM router sends a Join message to a new upstream router corresponding
6

to the best route so as to establish a new SPT. Meanwhile, the PIM router keeps receiving a multicast stream and forwarding the multicast stream via a prior SPT.
In block S3, if the PIM router receives the multicast stream via the new SPT, the PIM router forwards the multicast stream via the new SPT. The PIM router will also send a Prune message to an old upstream router corresponding to the prior SPT to prune the prior SPT, and the PIM router discards the multicast stream received via the prior SPT.
The above method for forwarding a multicast stream is implemented by a system for forwarding a multicast stream according to embodiments of the present invention. In an embodiment of the present invention, a system for forwarding a multicast stream includes a multicast source, a multicast receiver and more than one router for forwarding a multicast stream. In these routers, there are a head-end router is connected to the multicast source, a tail-end router is connected to the multicast receiver and other intermediate routers connected to one another between the head-end router and the tail-end router. A multicast stream from the multicast source reaches the multicast receiver via a multicast forwarding path formed by the routers.
A system including three routers for forwarding a PIM-SM multicast stream is detailed according to an embodiment of the present invention.
Figure 2 is a simplified block diagram illustrating a system for forwarding a multicast stream in accordance with an exemplary embodiment of the present invention. As shown in Figure 2, the system includes a multicast source of multicast stream, a multicast receiver of multicast stream, and three PIM routers: Rl, R2 and R3. Rl is connected to the multicast source. R3 is connected to the multicast receiver. R2 is connected to Rl and R3. Rl is connected to R3.
During an SPT switchover caused by a change of a unicast route to a multicast source, for example, a best route takes the place of a second-best route. A multicast stream forwarding process is detailed below.
Figure 3 is a simplified block diagram illustrating a system for transmitting a multicast stream, shown before a unicast route has changed in accordance with an exemplary embodiment of the present invention. As shown in Figure 3, the link between PIM routers Rl and R3 is not operational. For R3, the next hop to the multicast source is R2, while for R2, the next hop to a multicast source is Rl. All PIM routers send Join messages periodically via the shortest path to the multicast source. An SPT is established and maintained. The multicast stream is sent from the multicast source to the multicast receiver via the established SPT. In other words, the SPT is Rl
7

'- >R2 - >R3. R3 receives the multicast stream via interface El. El is an incoming interface on R3 connected to its upstream neighbouring router R2.
If the link between Rl and R3 becomes operational, PIM router R3 learns that the unicast route to the multicast source has changed. In other words, the best route takes the place of the second-best route. The next hop to the multicast source changes from R2 to Rl. R3 sends a Join message to Rl which is a new upstream neighbouring router via a new incoming interface EO. As shown in Figure 4, a new SPT is established from Rl to R3. R3 keeps forwarding the multicast stream received from the old incoming interface El until R3 receives the multicast stream from the new incoming interface EO and forwarding the multicast stream via the old interface.
If R3 receives the multicast stream via the new incoming interface EO, as shown in Figure 5, R3 may immediately prune the prior SPT by sending a PIM Prune message to the old upstream router R2. R3 ignores the multicast stream received via interface El from then on. Therefore it may be avoided that the duplicate multicast stream received via the incoming interfaces causes a mistake on the multicast receiver and affects the playing of the multicast stream. R3 forwards the multicast stream to the multicast receiver via the old outgoing interface wherein the multicast stream is received via the incoming interface EO.
Figure 6 is a simplified block diagram depicting the structure of a router apparatus in accordance with an exemplary embodiment of the present invention. As shown in Figure 6, the above-mentioned routers Rl, R2 and R3 include a routing module, a forwarding module, a detecting module and more than one incoming/outgoing interface such as incoming interface EO connected to Rl, incoming interface El connected to R2 and an outgoing interface. The forwarding module is connected to incoming interface EO, interface El and the outgoing interface and is configured to forward a multicast stream. The routing module is connected to the incoming interfaces EO and El and is configured to instruct the incoming interface EO/El to establish or prune a multicast forwarding path corresponding to the incoming interface EO/El. The routing module is connected to the forwarding module and is configured to instruct the forwarding module to forward the multicast stream. The detecting module is connected to the incoming interface EO and the routing module. The detecting module is configured to detect a condition of receiving the multicast stream via the incoming interface EO. As shown in Figure 6, solid lines denote the mulitcast stream while broken lines denote a signal stream.
Correspondingly, during an SPT switchover caused by a change of a unicast route to a multicast source, for example, the best route takes the place of the second-best route. A process
8

for forwarding a multicast stream is detailed as follows:
Originally, the link between R3 and Rl is not operational. A multicast stream is transmitted from the multicast source to the multicast receiver via an prior SPT (Rl - >R2 -
>R3). R3 receives the multicast stream via the incoming interface El connected to the upstream neighbouring router R2. The forwarding module sends the multicast stream to the multicast receiver via an outgoing interface designated by the routing module.
Once the route to the multicast source switches from the second-best route to the best route, in other words, the link between Rl and R3 becomes operational, the routing module sends a PIM Join message to Rl via the incoming interface EO connected to Rl and establishes a new SPT from Rl to R3. And the routing module instructs the incoming interface El connected to router R2 to keep receiving the multicast stream.
As the detecting module detects that the multicast stream is received via the incoming interface EO, the detecting module will inform the routing module, the routing module then instructs the incoming interface El to send a PIM Prune message to R2 to prune the prior SPT and instructs the incoming interface El to ignore the multicast stream received from then on. The routing module instructs the forwarding module to forward the multicast stream received via the incoming interface EO to the multicast receiver via an outgoing interface designated by the routing module.
The above embodiments of the invention take PIM-SM as an example and detail the process of forwarding a multicast stream when a unicast route to a multicast source changes, e.g., the best route takes the place of the second-best route. In the case that PIM-SSM is adopted, if a unicast route to a multicast source changes, e.g., the best route takes the place of the second-best route, the process of forwarding a multicast stream is similar to the process detailed above. In the case that PlM-SM is adopted and a multicast stream is forwarded via an RPT, if a unicast route to an RP changes, for example, the best route takes the place of the second-best route, the process of forwarding a multicast stream is similar to the process detailed above.
It can be seen from the above description that, if a unicast route to a multicast source changes, e.g., the best route takes the place of the second-best route, a PIM router keeps forwarding a multicast stream received via the old incoming interface until the multicast stream is received via a new incoming interface. When the multicast stream is received via the new incoming interface, the PIM router sends a Prune message to its old upstream neighbouring router and prunes the prior multicast forwarding path. Therefore, the multicast stream
9

transmitting will not be interrupted. If the multicast stream is received via the new incoming interface, the PIM router discards the multicast stream received via the old incoming interface. Therefore, mistakes in receiving and playback of the multicast stream will not be caused by receiving the multicast stream via both the old incoming interface and the new incoming interface.
Although preferred embodiments are disclosed herein, many variations, alternatives and substitutions are possible which remain within the concept, scope, and spirit of the invention, and these variations would become clear to those skilled in the art after perusal of this application. Accordingly, it is not intended to limit the invention except as provided by the appended claims.





What is claimed is:
1. A method for forwarding a multicast stream, when a unicast route from a router to a
multicast source or a rendezvous point changes from a first route to a second route, the method
comprising:
establishing a new multicast forwarding path between said router and a second upstream router corresponding to the second route, and keep forwarding a multicast stream received via an prior multicast forwarding path;
pruning said prior multicast forwarding path if said router receives said multicast stream via said new multicast forwarding path; and forwarding said multicast stream received via said new multicast forwarding path.
2. The method of claim 1, wherein:
said router discards said multicast stream received via said prior multicast forwarding path once said multicast stream is received via said new multicast forwarding path by said router.
3. The method of claim 1, wherein
said router sends a Join message via a second incoming interface connected to said second upstream router corresponding to the second route; and
establishes said new multicast forwarding path from said second upstream router to said second incoming interface;
said router receives said multicast stream via said second incoming interface; and
forwards said multicast stream to a downstream device of said router via an outgoing interface corresponding to said prior multicast forwarding path.
4. The claim of claim 1, wherein:
said router sends a Prune message to a first upstream router corresponding to said prior multicast forwarding path via a first incoming interface corresponding to said prior multicast forwarding path; and
prunes said prior multicast forwarding path from said first upstream router to said first
incoming interface.
II

. 5. The method of claim 1, wherein when said prior multicast forwarding path is a source path tree SPT, said router establishes a new source path tree SPT if said unicast route from said router to said multicast source of said multicast stream is changed from a second-best route to a best route;
when said prior multicast forwarding path is a rendezvous point tree RPT, said router establishes a new rendezvous point tree RPT if said unicast route from said router to said rendezvous point of said multicast stream is changed from a second-best route to a best route.
6. A router for forwarding a multicast stream, comprising:
a routing module, a forwarding module, a detecting module, an outgoing interface, and at least two incoming interfaces, wherein
said incoming interfaces are adapted to receive a multicast stream from upstream routers;
said outgoing interface is adapted to forward said multicast stream to a downstream device;
said forwarding module is adapted to forward said multicast stream to said outgoing interface pursuant to an instruction of said routing module, wherein said multicast stream is received via an incoming interface designated;
said detecting module is adapted to detect a condition of receiving said multicast stream via said incoming interface;
said routing module is adapted to
when a unicast route from a router to a multicast source or a rendezvous point changes from a first route to a second route, send a first instruction to establish a new multicast forwarding path via said incoming interface connected to said upstream router corresponding to said second route, send a second instruction for pruning a routing path via said incoming interface connected to said upstream router corresponding to said first route according to said condition of receiving said multicast stream via said incoming interface detected by said detecting module, and
instruct said forwarding module to forward said multicast stream to said outgoing interface, wherein said multicast stream is received via said incoming interface connected to said upstream router corresponding to said second route.
7. The router of claim 6, wherein said routing module is adapted to inform said incoming
12

interface to terminate said multicast stream received via said incoming interface connected to said upstream router corresponding to said first route wiien said routing module is informed that said detecting module detects that said multicast stream is received via said incoming interface connected to said upstream router corresponding to the second route.
8. The router of claim 6, wherein said routing module is adapted to send a Join message to
said upstream router via said incoming interface connected to said upstream router
corresponding to said second route to establish said new multicast forwarding path from said
router to said incoming interface.
9. The router of claim 6, wherein said routing module is adapted to send a Prune message to
said upstream router via said incoming interface connected to said upstream router
corresponding to said first route to prune said prior multicast forwarding path from said router to
said incoming interface.
10. A system for forwarding a multicast stream, comprising: a multicast source of a
multicast stream and a multicast receiver of the multicast stream, the method further comprising:
at least three routers according to Claim 6, wherein:
said at least three routers are connected to each other; one of said at least three routers is connected to said multicast source; another router is connected to the multicast receiver, and forwards the multicast stream from the multicast source to the multicast receiver via a multicast forwarding path formed by said at least three routers connected to each other.


Documents:

2780-CHENP-2008 CORRESPONDENCE OTHERS 14-02-2013.pdf

2780-CHENP-2008 EXAMINATION REPORT REPLY RECEIVED 01-07-2013.pdf

2780-CHENP-2008 FORM-1 01-07-2013.pdf

2780-CHENP-2008 FORM-3 01-07-2013.pdf

2780-CHENP-2008 AMENDED CLAIMS 01-07-2013.pdf

2780-CHENP-2008 AMENDED PAGES OF SPECIFICATION 01-07-2013.tif

2780-CHENP-2008 OTHER PATENT DOCUMENT 01-07-2013.pdf

2780-CHENP-2008 PCT OTHERS 14-02-2013.pdf

2780-CHENP-2008 PRIORITY DOCUMENT 01-07-2013.pdf

2780-chenp-2008 abstract.pdf

2780-chenp-2008 claims.pdf

2780-chenp-2008 correspondences-others.pdf

2780-chenp-2008 description (complete).pdf

2780-chenp-2008 drawings.pdf

2780-chenp-2008 form-1.pdf

2780-chenp-2008 form-18.pdf

2780-chenp-2008 form-3.pdf

2780-chenp-2008 form-5.pdf


Patent Number 257721
Indian Patent Application Number 2780/CHENP/2008
PG Journal Number 44/2013
Publication Date 01-Nov-2013
Grant Date 29-Oct-2013
Date of Filing 03-Jun-2008
Name of Patentee HUAWEI TECHNOLOGIES CO., LTD.
Applicant Address HUAWEI ADMINISTRATION BUILDING,BANTIAN, LONGGANG DISTRICT, SHENZHEN,GUANGDONG 518129
Inventors:
# Inventor's Name Inventor's Address
1 XU, XIAOHU HUAWEI ADMINISTRATION BUILDING, BANTIAN, LONGGANG DISTRICT, SHENZHEN, GUANGDONG 518129
PCT International Classification Number H04L12/28
PCT International Application Number PCT/CN06/03600
PCT International Filing date 2006-12-26
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 200610056817.6 2006-03-07 China