Multi-point multi-channel data distribution system

A system for the efficient distribution of live and stored audio/video streams to multiple subscribers without degrading normal data delivery services. The system segments one or more frequency bands into sub-bands, or channels, each of which is capable of carrying encoded audio, video, and other data streams, to a plurality of subscribers. Each channel transmitted in the system provides full-duplex operation so that each subscriber may indicate what specific services are desired, such as audio/video broadcast, two-way data transfer, video library access, pay-per-view video, interactive video, and audio file transfer. A transmission headend facility (‘hub’) broadcasts multiple channels of video/audio data (e.g., Internet data) in unicast mode via a shared media transmission facility to multiple subscribers. Simultaneously, selected video/audio/data is transmitted in Internet Protocol multicast mode over one or more channels of the segmented frequency band. The subscriber is provided a device which simultaneously and dynamically demodulates 2 or more channels and interleaves the information over a single ethernet interface connected to one or more IP enabled devices. Each subscriber thus has the capability of, for example, receiving a video stream concurrent with many other subscribers while simultaneously interacting uniquely with the Internet or other data network.

RELATED APPLICATIONS

Not Applicable

FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

Not Applicable

MICROFICHE APPENDIX

Not Applicable

FIELD OF THE INVENTION

The present invention relates generally to telecommunications systems, and more particularly to a system for providing direct transmission of multiple encoded video, audio, and other data streams to a plurality of subscribers over a shared media.

BACKGROUND OF THE INVENTION

It is presently a problem to efficiently deliver live and/or stored video and other data streams of common interest to multiple subscribers without degrading normal data delivery services. In existing multipoint data distribution systems, use of available bandwidth is not optimal because data is redundantly transmitted. For example, in a present broadband data system, duplicate video streams are sent with each request for viewing through a process known as unicast. In order to deliver a message to n destinations via a unicast transmission, n transmissions of the same message are transmitted.

Furthermore, shared media multipoint data distribution systems such as cable and broadband wireless are bandwidth limited on a per channel basis. Therefore, bandwidth is wasted anytime more than one user requests the same video/audio/data stream. This in turn reduces the overall bandwidth available to other users sharing the same channel for their individual interests.

SUMMARY OF THE INVENTION

The present invention overcomes the aforementioned problems of the prior art and achieves an advance in the field by providing a system for the efficient distribution of live and stored audio/video streams to multiple subscribers without degrading normal data delivery services. The present system segments one or more frequency bands into sub-bands, or channels, each of which is capable of carrying encoded audio, video, and other data streams, to a plurality of subscribers. Each channel transmitted in the present system provides full-duplex operation so that each subscriber may indicate what specific services are desired, such as audio/video broadcast, two-way data transfer, video library access, pay-per-view video, interactive video, and audio file transfer.

In operation, a transmission headend facility (‘hub’) broadcasts multiple channels of video/audio data (e.g., Internet data) in unicast mode via a shared media transmission facility (wireless, cable, etc.) to multiple subscribers. Simultaneously, selected video/audio/data (e.g., pay-per view) is transmitted in IP (Internet Protocol) multicast mode over one or more channels of the segmented frequency band. The subscriber is provided a device (a ‘subscriber unit’) which simultaneously and dynamically demodulates 2 or more channels (on different frequencies) and interleaves the information over a single ethernet interface connected to one or more IP enabled devices. Each subscriber thus has the capability of, for example, receiving a video stream concurrent with many other subscribers while simultaneously interacting uniquely with the Internet or other data network. A number of subscribers may thus simultaneously share the same interactive channel without performance degradation, up to the limit of the subscriber network. In an alternate embodiment of the present system, an IP enabled television set or subscriber unit (e.g., a set top box, etc.) at multiple subscribers' premises may receive a digitally encoded video on the multicast channel at the same time multiple subscriber's computers are sending or receiving data via shared unicast channels.

In one optional aspect of the present system, the headend schedules a wide variety of data services which include full-duplex or asymmetrical transmission of interactive, on-demand, pay-per-view video services, audio file transfer, etc. In response to receiving a subscriber request for a particular service, the subscriber unit allows the multicast transmission to pass through to the subscriber's local network. Otherwise the multicast transmission channel(s) are ignored by the subscriber unit. For real-time broadcasts, the headend authorizes access to the requested broadcast stream(s) using a subscriber's permissions profile.

The present system uses IP multicasting and video compression technology to simultaneously deliver from approximately 7 to 100 video streams at data rates of approximately 300 Kbps to 4 Mbps, thereby optimizing bandwidth use in a multipoint data distribution system. The customer premises equipment for each subscriber includes two demodulators which convert the two received channels from RF back to IP-formatted data streams appropriate for the intended receiving devices such as a personal computer (‘PC’) and/or other IP enabled appliance.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1is a conceptual diagram of the present system100, which delivers multicast and unicast information to a plurality of subscribers in a bandwidth efficient manner. In an exemplary embodiment, the present system segments one or more frequency bands into sub-bands, or channels, each of which is capable of carrying encoded audio, video, and other data streams, to a plurality of subscribers. Each channel transmitted in the present system provides full-duplex operation so that each subscriber may indicate what specific services are desired, such as audio/video broadcast, two-way data transfer, video library access, pay-per-view video, interactive video, and audio file transfer.

An exemplary embodiment of the present system uses multicasting and video compression technology to simultaneously deliver from 7 to 100 video streams at data rates of 300 Kbps to 4 Mbps, thereby optimizing bandwidth use in a multipoint data distribution system.

As shown inFIG. 1, headend (hub)110sends multicast and unicast data101to a plurality of subscriber sites120(only one of which is shown) via communication link10comprising transmitter/receiver104, antennas103and113, and transceiver114. Data111is transmitted from subscriber site120to headend110via the same link10. In operation, the transmission headend facility110transmits multiple channels of video, audio, or other data (e.g., Internet data) in unicast mode via a shared media transmission facility (wireless, cable, etc.) to multiple subscribers via a segmented frequency band. Simultaneously, selected video/audio/data (e.g., pay-per view) is transmitted in multicast mode over one or more channels of the segmented frequency band. The information on each of the channels is formatted in accordance with Internet protocol (IP) for addressing purposes. The use of IP addressing allows the present system to send data over the Internet as well as by RF transmission.

In an exemplary embodiment, the present system100delivers two non-multiplexed RF data channels101from headend110to subscriber site equipment112-119that receives and demodulates the two RF channels simultaneously, then multiplexes the two demodulated channels onto a single Ethernet interface. Any IP-addressable device may be connected to the Ethernet interface to receive one or both of the signals. The present system thus efficiently delivers multicast data of common interest to a plurality of recipients while not significantly impacting the performance of delivery of data to individual unicast data recipients.

In an alternative embodiment, the present system100transmits a signal using a coded modulation technique such as code-division multiple access (CDMA) or synchronous code-division multiple access (S-CDMA, a proprietary version of CDMA). Coded modulation is a technique whereby forward error correcting (FEC) coding techniques are integrated with the channel modulation, allowing schemes to be devised which are both bandwidth and power efficient. CDMA is a coding scheme, used as a modulation technique, in which multiple channels are independently coded for transmission over a single wideband channel. CDMA is a spread-spectrum approach to user multiplexing. Users in a CDMA environment simultaneously share the same radio frequency band and can be separated at the receiver end with the knowledge of their unique code. Other modulation methods, including digital modulation techniques such as orthogonal frequency-division multiplexing (OFDM) may also be employed for simultaneous delivery of unicast and multicast data in accordance with the present system.

Headend110includes a switch105for controlling data flow between subscriber sites120and information sources such as the Internet (via Internet access or other data source102) and other video/audio/data sources107. Information (from sources107) that does not originate on the Internet is formatted with appropriate IP addressing information and packetized by encoding equipment106.

In the exemplary embodiment shown inFIG. 1, each subscriber site120includes a dual channel modulator/single channel demodulator115for converting the two data channels from RF to digital signals. Downstream data101from headend110is sent to subscriber site120via link10and demodulated into a unicast component signal117and a second component signal116, both of which are in an IP format. The second component signal is typically a multicast signal, but this signal can be a broadcast, or other type of signal of common interest to more than 1 recipient. Subscriber data receiving device112, which can be a standard personal computer (PC) or a television set with an IP-enabled set-top box, receives transmissions having a subscriber site's specific IP address(es). In the case where a single device, such as a PC, simultaneously receives both unicast and multicast channels, the device requires two network interface cards (‘NIC’s or other means for uniquely identifying a particular device on a network), each set to a different IP address. Subscriber data receiving device112may send IP-formatted data signals118and119(shown collectively as signal111) upstream via link10to headend110. Upstream signals118and119are return channels typically corresponding to the received multicast signal116and unicast signal117, respectively.

FIG. 2is a block diagram illustrating typical components utilized at the headend of the present system100. As shown inFIG. 2, multicast content such as pay television or video-on-demand data originating from non IP-formatted sources107is encoded (formatted) and encapsulated (packetized) by equipment106that is well-known in the art. Routers208/1and208/2, and cache memory209are employed to direct and temporarily store data being transferred between data sources102/107and switch105. Host computer108may be used to control and monitor various aspects of system operation including setting up membership in multicast groups, as explained below with respect toFIG. 7.

In an exemplary embodiment of the present system, downstream transmitter104T sends a plurality of unicast signals on channels101U and a single multicast channel101M to a plurality of subscriber sites120via antenna103. In an alternative embodiment of the present system, antenna103is replaced by an Internet link or other network, as described below with respect toFIG. 7.

A plurality of channels of IP-formatted data111from various subscriber sites120are received by upstream receiver104R. Return channel server212is used for processing upstream data from subscriber sites120, for example, to determine subscriber identities and for scheduling subscriber-requested programming.

In one optional aspect of the present system, headend110schedules a wide variety of data services which include full-duplex or asymmetrical transmission of interactive, on-demand, pay-per-view video services or other programming content, audio file transfer, etc. In response to receiving a subscriber request for a particular service, a subscriber unit300(described below with respect toFIG. 3) allows the multicast transmission to pass through to the subscriber's local network. Otherwise, the multicast transmission channel(s) are ignored by the subscriber unit. For real-time broadcasts, the headend authorizes access to the requested broadcast stream(s) using a subscriber's permissions profile by initiating a join request which is subsequently authenticated and authorized by server212using standard AAA (authentication, authorization, accounting) mechanisms such as RADIUS.

FIG. 3is a block diagram illustrating components used for demodulating and distributing a received multi-channel signal at a subscriber site120A in an exemplary embodiment of the present system. In the embodiment shown inFIG. 3, each subscriber site120A is provided with a device (a ‘subscriber unit’)300which receives RF signals101M and101U on different frequencies. The exemplary embodiment ofFIG. 3includes a television set312and a PC112connected to subscriber unit300via an Ethernet link325/326/327. Note that any IP-addressable device may be used in lieu of TV312or PC112. In operation, transceiver114receives signal101comprising a plurality of unicast channels101U and a multicast channel101M. The received signals are simultaneously and dynamically demodulated and interleaved over a single local network interface325connected to one or more IP enabled devices112/312.

Subscriber unit300is programmed as to which two downstream channels101M/101U it will be demodulating. The two signals are selected by transceiver114which also controls when it will pass the information on through to the local network325/326/327. Subscriber unit300multiplexes the received data from both downstream channels onto the local subscriber network. Local network325/326/327typically employs an Ethernet bus, but the network could, alternatively, be any type of local network, including wireless LANs such as those conforming to the IEEE draft standard 802.11.

The plurality of unicast signals on channels101U may, optionally, be filtered by a programmable filter324in transceiver114, so that the only unicast channel sent to ethernet link325is the channel containing the unicast information intended for the specific subscriber site120A. A mechanism such as a digital filter (having an encoded subscriber ID, or using a subscriber IP address) may be provided for ensuring that a given subscriber does not have access to other subscriber's unicast channels.

Although, in the embodiment ofFIG. 3, the plurality of unicast channels101U are transmitted to all subscribers, a given subscriber PC or TV receives only the unicast subchannel intended for that specific subscriber, as filtered by transceiver filter324, if present, and which has an IP address that matches the IP address of the subscriber site equipment. Each subscriber site has a unique identifier included in the IP address that is encoded in each transmission from headend110. PC (or TV)112and set-top box323thus receive only the signal having the IP destination address that matches the IP address used by the IP-addressable set-top box323or the subscriber's network interface card (‘NIC’, not shown) in PC112.

Transceiver114also receives multicast transmissions on an RF channel that is separate from the unicast transmissions. In order to receive a particular multicast transmission, an IP-addressable recipient (PC112or set-top box323) at the subscriber site120A sets its IP process and network interface card (NIC) to receive the multicast on a specific group's address and port, as explained below in detail. PC112and/or set-top box323receive only multicast transmissions having an IP address that PC112and/or set-top box323have designated as being of interest.

After being received by transceiver114, signal101, containing the unicast signal101U and the multicast signal101M, is sent to demodulators322A and322B, which demodulate the received signal into unicast signal101U and multicast signal101M, and multiplex the digital signals onto the Ethernet link325. Demodulators322A and322B may be a single device, i.e., a dual channel demodulator. Ethernet link325is then used to deliver the digital signals101U and101M to PC112and set-top box323, respectively, via Ethernet connections326and327. Modulator321is used for modulation of signals (e.g., Internet upstream transmissions or on-demand requests) sent from PC112upstream to headend110via channel111U.

The above-described system allows each subscriber to have the capability of, for example, receiving a video stream concurrent with many other subscribers while simultaneously interacting uniquely with the Internet or other data network. A number of subscribers may therefore simultaneously share the same interactive transmission medium with the ability to opt-in to a second service simultaneous with a primary service without interruption or degradation of the primary service.

FIG. 4is a block diagram illustrating subscriber site components used in distributing a received multi-channel signal at a subscriber site120B in an alternative embodiment of the present system. As shown inFIG. 4, two PCs112/1and112/2are coupled to subscriber unit300. Alternatively, device112/1can be a television set, in which case video interface is the same as set-top box323shown inFIG. 3. Subscriber unit300comprises transceiver114, modulator321, demodulators322A and322B, storage device401, and Ethernet bus325. In the exemplary embodiment ofFIG. 4, PC1(or TV)112/1and PC2112/2are connected to the components in subscriber unit300via Ethernet bus325.

In operation, transceiver114receives signal101comprising a unicast channel101U and a multicast channel101M. These signals are demodulated and placed on Ethernet bus325, as explained above with respect toFIG. 3. When device112/1is a PC, a video interface card402converts received digital television signal into a signal appropriate for displaying video images on the device's video monitor.

Storage device401is a disk drive, rewriteable DVD (digital Video disk), or the like, for storing video and audio information. Storage device401may be employed to effect time-shifting of programming by storing a received program and playing back the stored program at a later time.

FIG. 5is a flowchart illustrating basic operation of the present system. As shown inFIG. 5, at step500, unicast and multicast data are separately packetized and encoded in IP format by encoding equipment106at headend110. At step505, unicast data, such as an Internet transmission, is sent from the headend via one of the plurality of channels101U. Multicast data is sent from headend110via channel101M, at step510, which occurs simultaneously with the transmission of unicast data. Next, both unicast and multicast channels are received at each of the subscriber sites120/120A/120B (hereinafter generically referred to by reference number120*), at step515. As explained above with respect toFIGS. 3 and 4, at step520, the data on channels101U and101M is then demodulated at the subscriber sites, and at step525, the demodulated data is multiplexed onto an Ethernet bus.

At step530, if a particular subscriber site has ‘joined’ the multicast transmission (as explained below with respect toFIG. 7), then at step535, the multicast data is received by the appropriate subscriber site PC/TV. At step540, unicast data is received by the PC or set-top box having the IP address encoded in channel101U.

FIG. 6is a flowchart illustrating an exemplary sequence of steps performed by the present system in asynchronously processing subscriber requests for audio, video, or other information via a unicast channel and a multicast channel. The blocks to the left of the vertical dotted line inFIG. 6illustrate steps preformed with respect to the transmission of unicast data, and the blocks to the right of the dotted line illustrate the transmission of multicast data. Note that the data on the unicast channel is not interleaved with the data on the multicast channel at the RF level. The content or data contained on both channels is interleaved at the local network level by subscriber unit300, as described above.

As shown inFIG. 6, at step605, data is received at headend110from a subscriber site120*, via one of the upstream channels111. At step610, if the received subscriber data is ‘external’ data, such as Internet data (i.e., data not intended for processing by the headend facility), then at step615the data is forwarded to the appropriate destination. Otherwise, the received subscriber data is processed by return channel server212, at step625. If a particular subscriber is transmitting and receiving external data, e.g., via the Internet, then data (if any) is received from Internet access or other external data source102, at step620. At step630, new data, either from external source102or from return channel server212, is sent to the subscriber site via the appropriate unicast channel101U.

Multicast data is transmitted from headend110simultaneously and asynchronously relative to the transmission of unicast data. Detailed aspects of multicast operation are described below with respect toFIG. 7. As shown inFIG. 6, at step650, a subscriber request for audio, video, or other programming is received via channel111by return channel server212. At step655, if the subscriber of interest has not already joined a multicast group, then at step660, the subscriber is included in the appropriate group, and at step665, the subscriber request for programming is sent via channel111to headend110. At step670, the subscriber request is then received and processed by return channel server212. When the requested program is available, at step675, the program information is transmitted via channel101M to a plurality of subscriber sites120. At step680, each subscriber site that has joined the present multicast group allows the multicast program to be passed through the appropriate PC112* or set-top box323. Because the subscriber unit300and/or client software in a PC112is multicast enabled, the subscriber either receives or ignores the multicast data. Even if the data on channel101M is not a standards-based multicast, (e.g., if a proprietary transmission protocol and client software are employed) the above-described process still applies. It also allows unicast data to flow simultaneously on the same ethernet link.

At step685, if the subscriber site has scheduled the program for the present time, then the program is ‘played’ (e.g., viewed, if the program is a movie), at step695. If the subscriber site has scheduled the program for a later time, then at step690, the program is stored on storage device401for subsequent playback.

FIG. 7is a network diagram, illustrating multicast operation of the present system in an alternative embodiment. In the system shown in FIG.7, an Internet link or other network700, such as a cable network, replaces antenna103and transmitter/receiver104shown with respect to the previously described embodiments. Multicasting is essentially the transmission of a message to a group of receivers (comprising a subnet of a network) that are identified and selected via one or more routers or other devices that selectively forward the message. As described in detail below, each of these receivers must indicate whether or not it wants to receive the message. A multicast network forwards multicast data only to network subnets that have at least one receiver that has indicated it wants to receive a particular message. In contrast, broadcasting floods all subnets (i.e., the entire network) with data, thus often resulting in comparatively inefficient use of bandwidth. In the present embodiment, each receiver120* may be viewed as comprising a subscriber unit300and a PC112* or set-top box323and associated client application located at a subscriber site120. Each receiver shown inFIG. 7is thus, in effect, a subscriber site120*.

Although signal101M is transmitted in an IP multicast format in each of the embodiments described herein, the transmission mechanism employed by the system shown inFIGS. 1-4is, technically, a broadcast that is selectively ignored by certain subscriber units. The networking embodiment shown inFIG. 7includes sub-networks which allow the system to take advantage of the selective sub-networking that distinguishes multicast over broadcast. In the embodiment ofFIG. 7, both unicast channels101U and multicast channel101M are directed to the appropriate destination subscriber sites120* by routers701and702.

In the example shown inFIG. 7, either subscriber site B1or B2(or both of the sites) has (or have) requested to receive a particular multicast transmission and joined the appropriate multicast group. In this situation, the requested multicast transmission is selectively forwarded via routers701and702and paths705and706to both subscriber sites B1and B2, since both of these sites are on the same subnetwork of router B. Note that network bandwidth is conserved by avoiding transmission of the multicast data to any receivers (sites) other than those that are located on a subnetwork wherein at least one subscriber has indicated that it wants to receive a particular multicast transmission. It should also be noted that unicast data is transmitted and received by each intended recipient on network700simultaneously along with the selected transmission of multicast data, regardless of the subnetwork on which a particular unicast data recipient is located. For example, unicast data may be transmitted over network700simultaneously to subscriber sites A1, B1, and C2simultaneously with the multicast transmission to sites B1and B2in the present example.

As indicated above, subscribers (clients) indicate that they would like to receive a particular transmission by joining a ‘multicast group’ which has been set up by a host computer108connected to switch105at the headend110. In an exemplary embodiment of the present system, the Internet Group Management Protocol (IGMP) is used by IP host108to report host group memberships to any immediately-neighboring multicast routers, which in the present case, is router A (701). Multicast protocols other than IGMP, for example, PIM, PGM, MBGP, IDMR, MSDP, or SSM, may also be used to implement the multicast aspect of the present system. In the present example, multicast routers A and B (701and702) send Host Membership Query messages to discover which host groups have members on their attached local networks. A multicast router keeps a list of multicast group memberships for each attached network, and a timer for each membership.

A client (i.e., a software application running on a subscriber's PC112* or set-top box323) joins a multicast group by sending an IGMP membership report message. IGMP is common to all multicast router protocols, and isolates end users from the routing protocol in use. When a subscriber enters a request for a specific program (via a PC112or a keypad on set-top box323), the client joins a multicast group by initiating two processes. First, an IGMP message (i.e., a join request) is sent to the client's local router to inform the router that the client wants to receive data sent to the group. In the embodiments shown inFIGS. 1-4, there are no downstream network routers; therefore, in these embodiments, the IGMP message sent to a ‘local router’ (e.g., router208/1) at the headend110. Next, the subscriber's appropriate PC112* or set-top box323sets its IP process and network interface card (NIC) to receive the multicast on the group's address and port. Multicast addresses are Class D IP addresses ranging from 224.0.0.0 to 239.255.255.255. Class D IP addresses map automatically to IEEE-802 Ethernet multicast addresses, which simplifies the implementation of IP multicasting on Ethernet. To support the reception of multicast IP datagrams, an Ethernet module receives packets addressed to the Ethernet multicast addresses that correspond to the host's IP host group addresses. The Ethernet module listens on an arbitrary number of Ethernet multicast addresses, which may be accomplished by “opening up” the address filter to accept all multicast packets during those periods when the number of addresses exceeds the limit of the filter.

Before a subscriber (more specifically a client) can join a multicast group, the client needs to determine which group is the one in which the client is presently interested in joining. Assuming that there are a number of choices for programs to be viewed on-demand, two steps must be initially performed:

(1) the subscriber selects the program of choice via a PC112or a keypad on set-top box323; and

(2) the subscriber PC or set-top box client software then correlates the program selected by the subscriber with a specific group ID (previously sent to the subscriber with, for example, a program list).

If the join request is granted, the subscriber client as well as all intermediate routers (if any) in the path between the client and the headend begin passing the requested multicast stream through where it is interleaved with other data from the unicast channel onto the subscriber's ethernet bus325. If a movie or other programming is already in progress, then the client simply allows those packets to pass (much like tuning a TV to a particular channel).

A request is required to initiate transmission of the movie if no one else on the subscriber's subnetwork has done so. As described above with respect toFIG. 6, the program request is sent to the headend110, where it is processed by return channel server212. After being transmitted to the appropriate subnetwork(s), the multicast channel is then received, demodulated and multiplexed onto an ethernet connection for receipt by all devices connected to the subscriber's local (e.g., Ethernet) network, as described with respect toFIGS. 3-5.

When a client/subscriber leaves a group, where the client was the only one receiving the multicast on a particular subnetwork, the local router stops sending data to the client's subnetwork, thereby freeing bandwidth on that portion of the network. The process of leaving a group is not shown on the flowchart inFIG. 6, but this can be accomplished either explicitly by the client, or by a local router, via time-out of a timer.

While exemplary embodiments of the present invention have been shown in the drawings and described above, it will be apparent to one skilled in the art that other practicable embodiments of the present invention are possible. For example, the specific configuration of the headend and subscriber sites as well as the various protocols employed and the particular flowchart steps and sequences thereof described above should not be construed as limited to the specific embodiments disclosed herein. Modification may be made to these and other specific elements of the invention without departing from its spirit and scope as expressed in the following claims.