throbber
US007281058B1
`
`(12) United States Patent
`Shepherd et a].
`
`(10) Patent N0.:
`(45) Date of Patent:
`
`US 7,281,058 B1
`Oct. 9, 2007
`
`(54) DELIVERING AND RECEIVING MULTICAST
`CONTENT ACROSS A UNICAST NETWORK
`
`2003/0195964 Al* 10/2003 Mane ....................... .. 709/227
`OTHER PUBLICATIONS
`
`(75) Inventors; Gregory J Shepherd, Eugene, OR
`(US); Thomas J Pusateri, Wake Forest,
`NC (Us)
`
`(73) Assignee: Juniper Networks, Inc., Sunnyvale,
`CA (U S)
`
`*
`
`Notice:
`
`Sub'ect to an disclaimer, the term of this
`J
`y
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 931 days.
`
`(21) Appl' NOT 10/268’413
`(22) Filed;
`Oct 9, 2002
`
`(51) Int C]_
`(200601)
`G06F 15/173
`(52) us. Cl. ..................... .. 709/238; 709/227; 709/230
`(58) Field of Classi?cation Search .............. .. 709/238,
`709/249’ 217’ 227
`See application ?le for complete search history.
`
`(56)
`
`References Cited
`
`Us‘ PATENT DOCUMENTS
`6,259,701 B1
`772001 Shur et a1,
`6,397,255 Bl* 5/2002 Nurenberg etal. ....... .. 709/228
`6,798,773 B2 *
`9/2004 Trossen et al. ........... .. 370/390
`6,873,627 B1 *
`3/2005 Miller et al. .............. .. 370/466
`7,031,326 131* 4/2006 Shur et a1,
`370/401
`7,039,052 B2 *
`5/2006 FOX et al. ................. .. 370/390
`2001/0018714 A1
`8/2001 Yagyu et 31,
`2001/0026556 A1 l0/200l Yagyu et 31.
`2002/000l3l0 Al
`l/2002 Mai et al.
`2002/0143951 A1 * 10/2002 Khan et a1. ............... .. 709/227
`
`Network Working Group RFC 3306, “Unicast-Pre?x-based IPv6
`Multlcast Addfesses’: Aug 2002*
`Network Working Group RFC 2991, “Multipath Issues in Unicast
`and Multicast Next-Hop Selection”, Nov. 2000*
`* Cited by examiner
`
`Primary ExamineriWilliam Vaughn
`ASSiSlanl Examineriloseph ManiWang
`(74) Attorney, Agent, or F irmiShumaker & Sie?‘ert, RA.
`
`ABSTRACT
`(57)
`Techniques for delivering and receiving multicast content
`across a unicast network are described. A system that
`supports delivery and reception of multicast content across
`a unicast network includes a ?rst device and a second
`device. The ?rst device may be a destination device or a
`multicast-enabled reuter- The Seeehd deviee is multieast
`enabled’ and may be a multicast-enabled reutet- The ?rst
`device determines whether a route between a destination
`device and a source of multicast packets 1s mult1cast
`enabled, sends a unicast request message that includes as a
`destination address an address associated with the source
`and is marked for interception by a second device based on
`the determination, and receives the multicast packets as
`unicast packets from the second device. The second device
`ihtereePtS the uhieast request message and delivers the
`multieast PaeketS to the requesting deViee as uhieast PaeketS
`in response to the uhieast request message The uhieast
`request message indicates the address of the source and a
`group address, ie, a Seuree/greup address Pair, asseeiated
`with the multicast packets that the ?rst device wishes to
`receive
`
`61 Claims, 7 Drawing Sheets
`
`SOURCE
`DEVICE
`20.
`
`24C
`
`DESTINATION
`DEVIC E
`BA
`
`DESTINATION
`DEVIC E
`
`Zoho Corp. and Zoho Corp. Pvt., Ltd.
`Exhibit 1034 – 001
`
`

`

`U.S. Patent
`
`0a. 9, 2007
`
`Sheet 1 0f 7
`
`US 7,281,058 B1
`
`10
`
`K
`
`SOURCE
`DEVICE
`_2_0
`
`2 A
`If 4
`
`16A
`
`MULTICAST NETWORK
`13
`
`16B
`
`18A
`
`UNICAST NETWORK
`l_4_
`
`1_8_ A 1 C
`
`DESTINATION
`DEVICE
`2—2A
`
`DESTINATION
`DEVICE
`125
`
`FIG. 1
`
`Zoho Corp. and Zoho Corp. Pvt., Ltd.
`Exhibit 1034 – 002
`
`

`

`U.S. Patent
`
`0a. 9, 2007
`
`Sheet 2 0f 7
`
`US 7,281,058 B1
`
`30
`
`SOURCE
`DEVICE
`A1
`
`16A
`
`MU LTICAST N ETWORK
`12A
`
`UNICAST NETWORK
`_1_4_
`
`M U LTICAST N ETWORK
`12B
`
`DESTINATION
`DEVICE
`2;
`
`FIG. 2
`
`Zoho Corp. and Zoho Corp. Pvt., Ltd.
`Exhibit 1034 – 003
`
`

`

`U.S. Patent
`
`Oct. 9, 2007
`
`Sheet 3 0f 7
`
`US 7,281,058 B1
`
`SOURCE
`DEVICE
`Q
`
`16
`
`MULTICAST NETWORK
`1 2A
`
`16E
`
`LABEL-SWITCH ED
`N ETWORK
`
`16C
`
`MULTICAST NETWORK
`12B
`
`1 6
`
`DESTINATION
`DEVICE
`l2
`
`FIG. 3
`
`Zoho Corp. and Zoho Corp. Pvt., Ltd.
`Exhibit 1034 – 004
`
`

`

`U.S. Patent
`
`0a. 9, 2007
`
`Sheet 4 0f 7
`
`US 7,281,058 B1
`
`[16
`MULTICAST ROUTER / 56
`
`‘
`<
`
`\
`
`‘k
`
`\
`
`CONTROL UNIT
`
`UNICAST ROUTING
`INFORMATION
`
`_5.8_
`
`52
`
`54
`
`52
`
`x
`
`'
`
`IFC
`50
`_
`
`54 L ‘F6
`so
`-'
`
`52
`
`'
`
`F_~__T
`4 A MULTICAST ROUTING
`INFORMATION
`9Q
`
`g \
`‘
`r
`
`\
`
`J
`
`MULTICAST
`FORWARDING
`INFORMATION
`\——-—_—/
`Q
`
`it!
`!FC
`
`‘
`1
`
`A
`
`'53:
`--
`we
`E
`
`5
`
`54
`52 ‘L
`54
`
`a
`
`52
`\4
`54
`
`'
`
`:
`'
`
`FIG. 4
`
`Zoho Corp. and Zoho Corp. Pvt., Ltd.
`Exhibit 1034 – 005
`
`

`

`U.S. Patent
`
`0a. 9, 2007
`
`Sheet 5 0f 7
`
`US 7,281,058 B1
`
`RECEIVE SESSION FILE FOR A
`MULTICAST coNTENT
`7"
`
`SEND MULTICAST JOIN MESSAGE!
`REPORT
`
`m 72
`
`74
`
`"6
`
`NO
`
`RECEIVE MULTICAST PACKETS
`
`YES
`
`SEND UNICAST REQUEST MESSAGE /\ 73
`
`V
`
`RECEIVE UNICAST PACKETS
`
`"\— 80
`
`END
`
`FIG. 5
`
`Zoho Corp. and Zoho Corp. Pvt., Ltd.
`Exhibit 1034 – 006
`
`

`

`U.S. Patent
`
`0a. 9, 2007
`
`Sheet 6 0f 7
`
`US 7,281,058 B1
`
`RECEIVE MULTICAST JOIN
`MESSAGE
`
`NEXT-HOP ROUTER?
`
`V
`
`SEND UNICAST REQUEST ,/~100
`MESSAGE
`
`‘y
`
`RECEIVE UNICAST
`PACKETS
`
`102
`f
`
`‘
`
`REMOVE
`ENCAPSULATION 0R ./~1o4
`LABEL
`
`‘
`94 Q SEND MULTICAST JOIN
`MESSAGE
`
`T}
`
`RECEIVE MULTICAST
`9s
`N PACKETS
`
`is
`
`__’
`
`FORWARD MULTICAST 4
`PACKETS
`
`l
`
`FIG. 6
`
`Zoho Corp. and Zoho Corp. Pvt., Ltd.
`Exhibit 1034 – 007
`
`

`

`U.S. Patent
`
`0a. 9, 2007
`
`Sheet 7 0f 7
`
`US 7,281,058 B1
`
`INTERCEPT UNICAST REQUEST MESSAGE FROM ,\ 11o
`REQUESTING DEVICE
`
`V
`
`STORE INFORMATION FROM UNICAST REQUEST A 112
`MESSAGE
`
`114
`r/
`RECEIVING
`MULTICAST
`PACKETS?
`
`116 A SEND MULTICAST JOIN MESSAGE TOWARD THE
`SOURCE DEVICE
`
`118 —/\
`
`RECEIVE MULTICAST PACKETS
`
`120
`q
`
`DELIVER MULTICAST PACKETS TO REQUESTING <
`DEVICE AS UNICAST PACKETS
`
`I
`
`FIG. 7
`
`Zoho Corp. and Zoho Corp. Pvt., Ltd.
`Exhibit 1034 – 008
`
`

`

`US 7,281,058 B1
`
`1
`DELIVERING AND RECEIVING MULTICAST
`CONTENT ACROSS A UNICAST NETWORK
`
`TECHNICAL FIELD
`
`The invention relates to computer networks and, more
`particularly, to multicast communications within computer
`networks.
`
`BACKGROUND
`
`A computer network is a collection of interconnected
`computing devices that exchange data and share resources.
`In a packet-based network, such as the Internet, the com
`puting devices communicate data by dividing the data into
`small blocks called packets. The packets are individually
`routed across the network from a source device to a desti
`nation device. The destination device extracts the data from
`the packets and assembles the data into its original form.
`Dividing the data into packets enables the source device to
`resend only those individual packets that may be lost during
`transmission.
`Certain devices within a network, referred to as routers,
`maintain routing information that describes available routes
`through the network. Each route de?nes a path between two
`locations on the network. Upon receiving an incoming data
`packet, the router examines header information within the
`packet to identify the destination for the packet. Based on
`the header information, the router accesses the routing
`information, selects an appropriate route for the packet and
`forwards the packet accordingly.
`Multicasting is a form of communication that allows a
`source device to send a single packet for distribution to
`multiple destination devices. With multicasting, the source
`device sends a single packet over the network to a router
`con?gured for multicasting. The router replicates the packet
`and forwards the copies to other multicast-enabled routers.
`The other routers, in turn, replicate the packet and repeat the
`forwarding process so that each of the destination devices
`receives a copy of the packet.
`In some cases, there is not a multicast-enabled route from
`a source device to a particular destination device, i.e., a route
`where every router thereon is multicast-enabled. In these
`cases, the particular destination device is unable to receive
`multicast packets using existing multicasting protocols. To
`gain maximum audience siZe, multicast content providers
`generate copies of the multicast packets addressed to each
`such destination device, i.e., unicast packet copies of the
`multicast packets, at the source of the multicast packets, and
`deliver the unicast packets to these destination devices from
`the source of the multicast packets.
`Content providers may incur increased costs stemming
`from the generation and delivery of the unicast packets.
`These costs may include the increased processing and
`memory resources required to generate and uniquely address
`unicast packets for each such destination device. The content
`providers may have to use multiple servers to provide the
`multiple unicast packet copies of the multicast packets.
`Further, delivery of the multiple unicast packets may lead to
`greater bandwidth consumption within the local network for
`the content provider, and require that the content provider
`obtain a greater bandwidth connection to the Internet than
`would otherwise be required to deliver the single set of
`multicast packets, the cost of which will likely be passed to
`the content provider by an Internet Service Provider (ISP),
`or the like.
`
`20
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`SUMMARY
`
`In general, the invention is directed to delivery and
`reception of multicast content across unicast networks. A
`destination device is a host within a computer network that
`wishes to receive content that is delivered by a source device
`as multicast packets. The destination device sends a multi
`cast join message to a local router in order to join a
`multicasting group associated with the desired content and
`receive the multicast packets. If the attempt to join the
`multicast group fails, i.e., the destination device determines
`that the route to the source device is not multicast-enabled
`because it does not receive the requested multicast packets
`before a time-out condition is satis?ed, the destination
`device may send a unicast request message that includes as
`a destination address an address associated with the source
`and is marked for interception by an intermediate network
`device, such as a multicast-enabled router, based on the
`determination. A multicast-enabled router on the route to the
`source device that receives a multicast join message may
`also determine that the route to the source device is not
`multicast-enabled by determining that a next-hop router on
`the route to the source device is not multicast-enabled, and
`send a unicast request message addressed to the source and
`marked for interception by an intermediate network device,
`such as another multicast-enabled router, based on the
`determination, so that it may deliver the multicast packets to
`the requesting destination device.
`Although the unicast request message is addressed to the
`source device, the one or more packets of the unicast request
`message may contain information that will cause a interme
`diate network device that is on the route to the source device
`to intercept and process the packets of the unicast request
`message, such as a set router alert bit, and identify the
`unicast request message as containing a request to receive
`multicast packets as unicast packets, such as a port indica
`tion. The unicast request message may be addressed to the
`source, or to an anycast address. The information of the
`unicast request message includes the group address associ
`ated with the multicast content, the address of the source
`device, and the address of requesting device, i.e., the des
`tination device or multicast-enabled router that sent the
`unicast request message. The information may also include
`delivery mode indication and a time-out value.
`The multicast-enabled router that receives the unicast
`request message receives multicast packets with the source/
`group address pair indicated by the unicast request message,
`and delivers the multicast packets to the requesting device as
`unicast packets based on the unicast request message. The
`multicast-enabled router that receives the unicast request
`message may refer to a delivery mode indication received in
`the unicast request message, and deliver the multicast pack
`ets to the requesting device as unicast packets according to
`the delivery mode indicated. The multicast-enabled router
`that receives the unicast request message may readdress the
`multicast packets to include the address of the requesting
`device as the destination address of the packets, and deliver
`the readdressed packets accordingly. The multicast-enabled
`router that receives the unicast request message may add a
`header that includes the address of the requesting device as
`a destination address, and deliver the encapsulated packets
`accordingly. The multicast-enabled router that receives the
`unicast request message may add a label to the multicast
`packets, and send the labeled packets to the requesting
`device via an LSP. The label and LSP may be selected based
`on the address of the requesting device.
`
`Zoho Corp. and Zoho Corp. Pvt., Ltd.
`Exhibit 1034 – 009
`
`

`

`US 7,281,058 B1
`
`3
`A multicast-enabled router that sends a unicast request
`message and receives encapsulated or labeled packets in
`response to the unicast request message may remove the
`encapsulation or labels to expose multicast packets, and
`forward the multicast packets according to the multicast join
`message that it received for the source/ group address pair of
`the multicast packets so that the multicast packets may be
`received by the destination device.
`In one embodiment, a method comprises intercepting a
`unicast request message from a requesting device that
`includes as a destination address an address associated With
`a source of multicast packets, and delivering the multicast
`packets to the requesting device as unicast packets in
`response to the unicast request message.
`In another embodiment, a netWork device includes an
`interface and a control unit. The interface to intercepts a
`unicast request message from a requesting device that
`includes as a destination address an address associated With
`a source of multicast packets. The control unit delivers the
`multicast packets to the requesting device as unicast packets
`in response to the unicast request message.
`In another embodiment, a computer-readable medium
`contains instructions. The instructions cause a program
`mable processor intercept a unicast request message from a
`requesting device that includes as a destination address an
`address associated With a source of multicast packets, and
`deliver the multicast packets to the requesting device as
`unicast packets in response to the unicast request message.
`In another embodiment, a method comprises determining
`Whether a route to a source of multicast packets is multicast
`enabled, sending a unicast request message that includes as
`a destination address an address associated With the source
`and is marked for interception by an intermediate netWork
`device based on the determination, and receiving multicast
`packets as unicast packets from the intermediate netWork
`device.
`In another embodiment, the invention is directed to a
`device comprising a control unit. The control unit deter
`mines Whether a route to a source of multicast packets is
`multicast-enabled, sends a unicast request message that
`includes as a destination address an address associated With
`the source and is marked for interception by an intermediate
`netWork device based on the determination, and receives the
`multicast packets as unicast packets from the intermediate
`netWork device.
`In another embodiment, the invention is directed to a
`computer-readable medium containing instructions. The
`instructions cause a programmable processor to determine
`Whether a route to a source of multicast packets is multicast
`enabled, send a unicast request message that includes as a
`destination address an address associated With the source
`and is marked for interception by an intermediate netWork
`device based on the determination, and receive the multicast
`packets as unicast packets from the intermediate netWork
`device.
`In another embodiment, the invention is directed to a
`system that includes a ?rst device and a second device. The
`?rst device determines Whether a route to a source of
`multicast packets is multicast-enabled, sends a unicast
`request message that includes as a destination address an
`address associated With the source and is marked for inter
`ception by a second device based on the determination, and
`receives the multicast packets as unicast packets from the
`second device. The second device intercepts the unicast
`request message from the ?rst device, and delivers the
`multicast packets to the ?rst device as unicast packets in
`response to the unicast request message.
`
`4
`The invention may provide one or more advantages. For
`example, the ability of multicast-enabled routers consistent
`With the principles of the invention to deliver and receive
`multicast content across unicast netWorks advantageously
`reduces the costs that are born by the content provider in
`delivering content to destination devices that are unable to
`receive multicast packets using existing multicasting proto
`cols. Multicast-enabled routers consistent With the principles
`of the invention alloW these destination devices to receive
`the multicast content from the source device Without the
`generation and delivery of unicast copies of the multicast
`packets by the content provider, i.e., the source device may
`generate and deliver a single set of multicast packets.
`Moreover, to the extent that numerous destination devices
`that are unable to receive the multicast packets request the
`content, the burden of delivering unicast packets to these
`destination devices may be distributed over a number of
`multicast-enabled routers.
`The details of one or more embodiments of the invention
`are set forth in the accompanying draWings and the descrip
`tion beloW. Other features, objects, and advantages of the
`invention Will be apparent from the description and draW
`ings, and from the claims.
`
`20
`
`25
`
`BRIEF DESCRIPTION OF DRAWINGS
`
`FIG. 1 is a block diagram illustrating an example com
`puter netWork that supports delivery and reception of mul
`ticast content across a unicast netWork consistent With the
`principles of the invention.
`FIG. 2 is a block diagram illustrating another example
`computer netWork that supports delivery and reception of
`multicast content across a unicast netWork.
`FIG. 3 is a block diagram illustrating another example
`computer netWork that supports delivery and reception of
`multicast content across a unicast netWork, Which in this
`case is a label-sWitched netWork.
`FIG. 4 is a block diagram illustrating an example multi
`cast-enabled router that can deliver and receive multicast
`content across unicast netWorks consistent With the prin
`ciples of the invention.
`FIG. 5 is a How diagram illustrating an example method
`that may be employed by a destination device to receive
`multicast content across a unicast netWork.
`FIG. 6 is a How diagram illustrating an example method
`that may be employed by a multicast-enabled router to
`receive multicast content across a unicast netWork, so that it
`may be delivered to a destination device.
`FIG. 7 is a How diagram illustrating an example method
`that may be employed by multicast-enabled router to deliver
`multicast content to a requesting device across a unicast
`netWork.
`
`DETAILED DESCRIPTION
`
`FIG. 1 is a block diagram illustrating an example com
`puter netWork 10 that supports delivery and reception of
`multicast content across a unicast netWork 14 consistent
`With the principles of the invention. As shoWn in FIG. 1,
`computer netWork 10 includes a multicast netWork 12 and
`unicast netWork 14. Multicast netWork 12 includes multi
`cast-enabled routers 16A and 16B (multicast-enabled routers
`16). Unicast netWork 14 includes unicast routers 18A, 18B
`and 18C (unicast routers 18). Multicast netWork 12 may
`include any number of multicast-enabled routers 16, and
`unicast netWork 14 may include any number of unicast
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Zoho Corp. and Zoho Corp. Pvt., Ltd.
`Exhibit 1034 – 010
`
`

`

`US 7,281,058 B1
`
`5
`routers 18. However, for ease of illustration, only multicast
`enabled routers 16A and 16B and unicast routers 18A-18C
`are shoWn in FIG. 1.
`A source device 20 accesses multicast netWork 12 via link
`24A and multicast-enabled router 16A. At the boundary
`betWeen multicast netWork 12 and unicast netWork 14,
`multicast-enabled router 16B and unicast router 18A are
`connected via link 24B. Destination device 22A and desti
`nation device 22B (destination devices 22) access unicast
`netWork 14 via link 24C and unicast router 18B, and link
`24D and unicast router 18C, respectively. Links 24 may be,
`for example, PPP links, ATM links, Ethernet links, Frame
`Relay links, GRE tunnels, SONET links, or other netWork
`connections.
`Source device 20 is a source of content, such as video,
`audio, data, or other information, delivered as multicast
`packets. Source device 20 may be, for example, a server, or
`the like, con?gured to generate multicast packets and deliver
`the multicast packets to multicast-enabled router 16A.
`Source device 20 may deliver a series of multicast packets
`as a multicast packet stream. Although computer netWork 10
`may include any number of source devices 20, FIG. 1, for
`ease of illustration, shoWs only the single source device 20.
`Destination devices 22 are hosts Within computer netWork
`10 that Wish to receive the content that is delivered by source
`device 20 as multicast packets. Destination devices 22 may
`be computing devices such as personal computers, laptop
`computers, and the like. Destination devices 22 include a
`processor or other control unit (not shoWn) and a netWork
`interface (not shoWn) by Which the processor accesses
`resources Within computer netWork 10. Destination devices
`22 may also include a user interface that alloWs a user of the
`destination device to interact With the processor and With
`resources Within computer netWork 10. Destination devices
`22 may execute program instructions stored on any of a
`variety of computer-readable media, such as magnetic or
`optical media, RAM, ROM, EEPROM, ?ash memory, or the
`like, or received via computer netWork 10. Although com
`puter netWork 10 may include any number of destination
`devices 22 accessing either multicast netWork 12 or unicast
`netWork 14, FIG. 1, for ease of illustration shoWs only
`destination devices 22A and 22B accessing unicast netWork
`14.
`Multicast-enabled routers 16 of multicast netWork 12
`support multicasting protocols, such as Internet Group Man
`agement Protocol (IGMP) and Protocol Independent Multi
`cast (PIM), that alloW a single multicast packet generated by
`source device 20 to be delivered to multiple destination
`devices 22 through replication and forWarding of the mul
`ticast packet along a distribution tree betWeen the source
`device 20 and destination devices 22. In order for a desti
`nation device 22 to receive multicast packets in this manner,
`a multicast-enabled route, consisting entirely of multicast
`enabled routers 16, must connect the destination device 22
`to the source device 20. Because the routes from destination
`devices 22 to source device 20 include unicast routers 18 of
`unicast netWork 14, Which do not support these protocols,
`destination devices 22 cannot receive multicast packets in
`this manner.
`Additionally, hoWever, multicast-enabled router 16B sup
`ports delivery of multicast content across unicast netWork
`14. Speci?cally, as Will be described in greater detail beloW,
`multicast-enabled router 16B intercepts unicast request mes
`sages that are sent by requesting devices, such as destination
`devices 22, and include as a destination addresses an address
`associated With source device 20. In particular, the unicast
`request messages request delivery of multicast packets from
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`source device 20 as unicast packets. Multicast-enabled
`router 16B delivers multicast packets received from source
`device 20 to destination devices 22 as unicast packets in
`response to the unicast request messages received from
`destination devices 22.
`The ability of multicast-enabled router 16B to deliver
`multicast content across unicast netWorks in this manner
`may advantageously reduce the costs that are born by the
`content provider in delivering content to destination devices
`22 that are unable to receive multicast packets using existing
`multicasting protocols. Speci?cally, destination devices 22
`may receive the multicast content from source device 20
`Without the generation and delivery of unicast copies of the
`multicast packets at source device 20. Moreover, the burden
`of delivering unicast packets to multiple destination devices
`22 may be distributed over a number of multicast-enabled
`routers 16.
`If a user of destination device 22A of FIG. 1 Wishes to
`receive multicast content from source device 20, destination
`device 22A Will attempt to join the multicasting group
`associated With the multicast content by sending a multicast
`join message, i.e., requesting the multicast content provided
`by source device 20 for that group. The multicast join
`message sent by a destination device 22A may take the form
`of an IGMP control packet, e. g., a Host Membership Report.
`Destination device 22A Will send a multicast join message
`to the local router to Which it is connected, unicast router
`18B. Because unicast router 18B is not multicast-enabled,
`i.e., does not support multicast protocols such as IGMP,
`unicast router 18B Will discard the multicast join message
`sent by destination device 22A. Therefore, destination
`device 22A Will not be able to join the multicasting group,
`and Will not receive the requested multicast content. Desti
`nation device 22A Will attempt to receive the multicast
`content via another delivery mechanism.
`To that end, destination device 22A Will send a unicast
`request message that includes as a destination address an
`address associated With source device 20, and is marked for
`interception by a multicast-enabled router 16, such as mul
`ticast-enabled router 16B, on the route betWeen destination
`device 22A and source device 20. Destination device 22A
`receives the information necessary to send the unicast
`request message in a session description ?le sent to desti
`nation device 22A by source device 20, or another device
`Within computer netWork 10. The unicast request message
`may be addressed to source device 20 so that unicast routers
`18 Will route the unicast request message along the route to
`source device 20. The one or more packets of the unicast
`request message contain information that Will cause multi
`cast-enabled router 16B, Which is on the route to source
`device 20, to intercept and process the unicast request
`message.
`For example, a router alert bit may be set in the one or
`more packets of the unicast request message to cause each
`router 16,18 on the route from destination device 22A to
`source device 20 to intercept and inspect the packets. The
`packets may also include a port indication, Which indicates
`that the sending device is requesting a service, in this case
`delivery of multicast packets as unicast packets. Unicast
`routers 18B and 18A, Which do not provide this service, Will
`inspect the packets to ?nd the port indication, determine that
`the service is not provided, and forWard the packets on the
`route to source device 20. Multicast-enabled router 16B Will
`inspect the packets to ?nd the port indication, determine that
`the service is provided, and deliver the multicast packets to
`destination device 22A as unicast packets.
`
`Zoho Corp. and Zoho Corp. Pvt., Ltd.
`Exhibit 1034 – 011
`
`

`

`US 7,281,058 B1
`
`7
`Destination device 22A may also send a unicast request
`message that includes as a destination address an address
`associated With source device 20 and marked for intercep
`tion by a multicast-enabled router 16, such as multicast
`enabled router 16B, by sending a unicast request message
`that is addressed to an anycast address that is associated With
`source device 20. The anycast address is associated With
`source device 20 in that the session description ?le indicates
`to destination device 22A that multicast packets from source
`device 20 may be received as unicast packets by sending a
`unicast request message to the anycast address. The anycast
`address may be associated With multiple source devices 20
`in this manner.
`An anycast address is a nonunique unicast address that
`may be shared by multiple multicast-enabled routers 16.
`Unicast routers 18 that receive the unicast request message
`addressed to the anycast address from destination device
`22A Will forWard the unicast request message to the nearest
`multicast-enabled router 16. The nearest multicast-enabled
`router 16, in this case multicast-enabled router 16B, Will
`process the unicast request message and deliver the multi
`cast packets to destination device 22A as unicast packets. In
`some cases, the anycast address may be shared by source
`device 20, as Well as multicast-enabled routers 16
`The unicast request message contains information that
`may be used by multicast-enabled router 16B to receive the
`multicast packets containing the multicast content, and
`deliver the multicast packets to destination device 22A as
`unicast packets. The information includes the group address
`associated With the multicast content, the address of source
`device 20, Which is the destination address of the one or
`more packets of the unicast request message, and the address
`of destination device 22A, Which is the source address of the
`one or more packets of the unicast request message.
`The information may also include a delivery mode indi
`cation. The delivery mode indication indicates to multicast
`enabled router 16B the manner in Which multicast packets
`should be delivered to destination device 22A as unicast
`packets. The delivery mode indication of the unicast request
`message sent by destination device 22A may indicate read
`dressed delivery, i.e., that multicast packets containing the
`requested multicast content should be readdressed to include
`the address of destination device 22A as the destination
`address. The delivery mode indication may alternatively
`indicate encapsulated delivery, i.e., that multicast packets
`containing the requested multicast content should be encap
`sulated With a header that includes the address of destination
`device 22A. Encapsulated delivery may be according to
`Generic Route Encapsulation (GRE), and may, for example,
`advantageously alloW destination device 22A to receive the
`multicast content through a ?reWall. Further, the information
`may include a time-out value, Which may be used by
`multicast-enabled router 16B to control the duration for
`Which the multicast-enabled router 16B Will deliver multi
`cast packets to destination device 22A as unicast packets.
`When multicast-enabled router 16B intercepts the unicast
`request message sent by destination device 22A, if multi
`cast-enabled router 16B is not already receiving packets for
`the requested multicast, multicast-enabled router 16B Will
`send a multicast join message to multicast-enabled router
`16A based on the receipt of the unicast request message sent
`by destination device 22A. The multicast join message sent
`by a multicast-enabled router 16B may take the form of a
`PIM Join.
`Multicast-enabled router 16B Will maintain multicast for
`Warding information for the source/ group address pair indi
`cated by the unicast request message intercepted from
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`destination device 22A that includes information from the
`unicast request message. Multicast-enabled router 16B Will
`store the address of destination device 22A as multicast
`forWarding information for the source/group address pair
`indicated in by the unicast request message. Multicast
`enabled router 16B may also store a delivery mode indica
`tion and a time-out value from the unicast request message
`as multicast forWarding information for the source/group
`address pair indicated in by the unicast request message.
`Multicast-enabled router 16B may maintain multicast for
`Warding information as lists or tables for each source/ group
`address pair.
`Multicast-enabled router 16B uses the multicast forWard
`ing information to deliver received multicast packets to
`destination device 22A. When multicast-enabled router

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket