IP MULTICAST DATA DISTRIBUTION SYSTEM WITH GUARANTEED QUALITY OF SERVICE
FIELD OF THE INVENTION The present invention relates generally to IP transmission networks and more particularly relates to a data or content distribution system which multicasts IP data traffic on an internetwork such as the Internet.
BACKGROUND OF THE INVENTION
Traditionally, most networked computer applications involve communications between two network objects, such as between host computers or between a client computer and a server computer. However, emerging multimedia applications such as local area network (LAN) TV. desktop conferencing (which usually includes voice, data and video), corporate broadcasts and collaborative computing require communications from one sending point to multiple receiving points. In other words, a one to many or many to many connection is required.
Current network technology includes three ways of implementing multipoint network applications: unicast. broadcast and multicast. A unicast design sends a separate copy of each packet to every member of a multicast group. This design is very wasteful of bandwidth, especially if the number of members in the multicast group is large because each packet must be repeated for every recipient in the group. A broadcast design floods the packet to every network regardless of the multicast group. This design is also wasteful of bandwidth because typically, only a small number of the recipients need to receive the packet. In a multicast design, a network application only sends one copy of each packet which is addressed to the multicast group of computers that are to receive it. This design in similar to unicast with the difference that each packet is addressed to multiple recipients rather than just one. The job of distributing the packet
to each recipient in the group is o f loaded from the application to the network in multicast designs. Multicast designs rely on the network to forward the packet only to those networks that need to receive it.
Today's generation of routers and routing protocols have been designed to optimize the route from one network to another network. In other words, they are only designed to handle unicast traffic. Multicast routing requires that the routers find the optimum route to multiple networks rather than just one.
IP multicasting or multicast routing is the transmission of an IP datagram to a group of receivers or destinations identified by a single IP address. A multicast UDP packet called a datagram is delivered to all members of the destination group in the same manner as regular unicast IP datagrams i.e., using the same 'best efforts' grade of reliability. This means that datagrams are neither guaranteed to arrive intact at all members of the destination group nor guaranteed to arrive in the same order in which they were sent. As part of the UDP protocol, in the event a datagram is lost, no retransmission of the datagram occurs. Thus, the information contained in the datagram is lost and will never arrive at the destination. Streaming applications such as streaming video are particularly susceptible to these kinds of problems. With multicast UDP there is no guarantee that the video stream will arrive in the same order in which it was sent. For example, if the initial packet order sent was 1, 2, 3, 4, 5 the end user may get the packets in the order 2, 4, 3, 5, 1.
Generally, the Internet does not yet support multicast routing. The reason for this is because most of the routers that are in use on the Internet do not have support for multicast routing. Additional problems exist in regard to transmission of multicast packets to users who are connected to the Internet via dial-up modems such as the fact that terminal servers do not currently support multicast traffic.
Thus, there exist two major problems when trying to perform multicast transmission on an IP network such as the Internet. The first problem is that there is no mainstream support for multicast traffic on the Internet. The second problem is that there is no way to guarantee the quality of the transmission i.e., there is no way to
guarantee that packets will get to their destination or in the order in which they were sent.
The delays and non guarantee of delivery and on the Internet are due in part because the routing on the Internet is dynamic, congestion occurs, bandwidth is limited and the UDP protocol is connectionless. In addition, the severity of the problems is related to the number of hops or the number or routers the packet takes between the sender and the receiver. More hops means the packet must take a longer route. This increases the probability for packet loss along the way thus degrading the quality of service.
SUMMARY OF THE INVENTION
Accordingly, it is an object of the present invention to provide an IP multicast system that overcomes the prior art problem of lack of multicast support on the Internet.
Another object of the present invention is to provide an IP multicast system that overcomes the prior art problem of poor quality of service on the Internet.
The present invention discloses a multicast data distribution system providing a guaranteed quality of service for distributing information over an IP network. The data distribution system provides extremely high reliable multicast delivery of information from centralized content servers to multiple subscribers connected to ISPs. To receive multicast data, a subscriber must be part of a multicast group. The system includes one or more POP relay sites each of which has an independent direct connection to the content servers. The POP relays, in turn, are connected to one or more ISPs. The ISPs include router/terminal servers capable of supporting multicast over PPP connection. The POP relays function to forward multicast datagrams sent by the content servers to the ISPs connected to them. The ISPs then forward the multicast datagrams to each of the subscribers that are members of the multicast group.
Thus, there is provided in a preferred embodiment of the present invention, a system for providing a guaranteed quality of service in distributing information over an IP network to a plurality of subscribers, wherein each the subscriber is a member of a multicast group and each the subscriber is coupled to an Internet service provider (ISP), the IP network comprising a plurality of the ISPs, the system including at least one content server for housing the information to be distributed to the plurality of subscribers in the form of multicast datagrams, a plurality of point of presence (POP) relays coupled to the at least one content server, each POP relay having a first independent connection to the at least one content server, the POP relay receiving and forwarding the multicast datagrams sent from the at least one content server, and a plurality of router/terminal servers, each the ISP housing at least one router/terminal server, the router/terminal servers within each the ISP having a second independent connection to one of the POP
relays, the router/terminal server receiving the multicast datagrams sent from the POP relay and forwarding the multicast datagrams to those the subscribers within the multicast group.
Further, the first independent connection can comprise a dedicated line, a dial-up line, an ISDN line or a public switched network.
Further, the second independent connection can comprise a dedicated line, a dial-up line, an ISDN line or a public switched network.
In addition, the router/terminal server supports the transmission of the multicast datagrams over a point to point protocol (PPP) connection. There is also provided in accordance with a preferred embodiment of the present invention, a system for distributing information with high reliability over an IP network to a plurality of subscribers, wherein each the subscriber is a member of a multicast group and each the subscriber is coupled to an Internet service provider (ISP), the IP network comprising a plurality of the ISPs, the system including at least one content server for housing the information to be distributed to the plurality of subscribers in the form of multicast datagrams, a plurality of point of presence (POP) relays coupled to the at least one content server, each POP relay having a first highly reliable independent connection to the at least one content server, the POP relay receiving and forwarding the multicast datagrams sent from the at least one content server, a plurality of router/terminal servers, each the ISP housing at least one router/terminal server, the router/terminal servers within each the ISP having a second highly reliable independent connection to one of the POP relays, the router/terminal server receiving the multicast datagrams sent from the POP relay and forwarding the multicast datagrams to those the subscribers within the multicast group, and wherein the system provides a guaranteed quality of service in transmitting the multicast datagrams to the plurality of subscribers.
In addition, there is provided in accordance with a preferred embodiment of the present invention a method of distributing information with a guaranteed quality of service over an IP network to a plurality of subscribers, wherein each the subscriber is a
member of a multicast group and each the subscriber is coupled to an Internet service provider (ISP), the IP network comprising a plurality of the ISPs, the method including the steps of providing at least one content server for housing the information to be distributed to the plurality of subscribers in the form of multicast datagrams, coupling a plurality of point of presence (POP) relays to the at least one content server wherein each POP relay has a first independent connection to the at least one content server, coupling a plurality of router/terminal servers to the plurality of POP relays wherein each router/terminal server has a second independent connection to one of the POP relays, forwarding the multicast datagrams sent from the at least one content server to a plurality of router/terminal servers, each the ISP housing at least one of the router/terminal servers, and forwarding the multicast datagrams sent from the POP relays to the subscribers within the multicast group.
BRIEF DESCRIPTION OF THE DRAWINGS
The invention is herein described, by way of example only, with reference to the accompanying drawings, wherein:
Fig. 1 is a high level block diagram illustrating the multicast system of the present invention applied to a sample content delivery network; and
Fig. 2 is a high level block diagram illustrating in more detail one POP relay coupled to multiple ISPs.
DETAILED DESCRIPTION OF THE INVENTION
A high level block diagram illustrating the multicast system of the present invention applied to a sample content delivery network is shown in Figure 1. In the architecture of the multicast system, generally referenced 10, one or more network applications reside on content server(s) 12. The applications that reside on these servers provide the source content that is to be sent to one or more subscribers 18. The subscribers are the ultimate recipients or destinations for the data and are most likely spread out over a wide geographic area. The illustration in Figure 1 is superimposed over a map of the United States only for illustrative purposes and is not meant to limit the application of the present invention which is applicable to other geographic areas as well. Coupled to the content servers are one or more point of presence (POP) relays 14. Each POP relay, in turn, is directly connected to one or more Internet service providers (ISPs) 16. Each subscriber is connected to one ISP via, for example, a modem connection (e.g., 14,400 or 28,800 bps), a dedicated link or a switched public network connection.
The multicast content data to be sent to the subscribers resides on the content server. The content server is a centralized site that maintains a direct connection to each
POP relay over which the multicast data is transmitted. The direct connection can be any suitable data communication link that can support a TCP/IP connection such as a leased line, dial-up line using modems, satellite link, public switched network, etc.
Since there is a high concentration of the ISPs in large metropolitan areas, the POP relays preferably should also be installed in large metropolitan areas so as to be closer to a larger number of ISPs. Each POP relay is directly connected to an ISP using any suitable data communication link. An ISP can be connected to a POP relay via a standard modem over a dial-up line, an ISDN connection or a dedicated leased line connection. Any point to point protocol (PPP) or IP connection can be used for the purpose of linking an ISP to a POP relay.
Once the connections between the content servers/POP relays and between POP relays/ISPs have been established, it is possible to send multicast datagrams from the content servers to the subscribers through the POP relays and ISPs. Directly connecting the subscribers to the source of content provides an extremely reliable delivery mechanism, one which provides a guaranteed quality of service. The multicast datagrams arrive at the ISPs without suffering from the problems described earlier. Packets are not dropped or lost from the POP relay to the ISPs and service is of a high level of quality because the packets are now traveling over dedicated links rather than through vicarious routes within the Internet. All subscribers connected to an ISP can pick up the content feed. For a subscriber to receive the multicast datagrams they must be registered in a multicast group. In addition, the system is fully scaleable in the number of users since the system utilizes multicast. As the number of subscribers connected to an ISP grows, there is no related drop in quality of service. This is due to the fact that only one copy of the packet is sent to each ISP for all subscribers that request it no matter how many subscribers are connected to the ISP.
A high level block diagram illustrating in more detail one POP relay coupled to multiple ISPs is shown in Figure 2. Similarly as in Figure 1, content servers 12 are coupled to a POP relay 14 via a communication link. The POP relay comprises a controller 20 and a router 22. The POP relay is coupled to one or more ISPs 16. In Figure 2, the POP relay is shown coupled to three ISPs, for example. Each ISP comprises a combination router and terminal server 24 coupled to one or more modems 26 labeled 1 through N. Each subscriber 18 is coupled to the ISP through one of the modems 26.
The router and terminal server 24 in each ISP must be able to support IP multicast over PPP connections. What this means is that the router/terminal server must be able to receive and properly process multicast datagrams. Each subscriber, via their computer which is connected to the router/terminal server through the terminal server's serial connections, can receive the datagram as long as their computer is running a multicast enabled TCP/IP stack.
Traditionally, the router and terminal server functions are handled by separate hardware. In system 10, however, both functions, routing and terminal support must be carried out by the same piece of equipment. Combining routing and terminal functions in a single piece of equipment enables the routing of multicast traffic to the subscribers connected to the ISP via modems. Such hardware is commercially available from Cisco Systems Inc.. Specifically, the 251 1, 5100 and 5200 series router models for use in the present invention.
As described previously, each POP relay is connected to one or more ISPs. For illustration purposes, POP relay 14 is shown in Figure 2 with four connections. One 28.8 Kbps and one integrated services digital network (ISDN) link connects POP relay to the router/terminal server in the upper ISP. An ISDN connection is shown coupling the POP relay with the middle ISP and a 64 Kbps leased line connection connects the POP relay with the lower ISP. As indicated in the lower portion of Figure 2, the end to end data path from the content servers to the subscriber via the POP relay and ISPs is TCP/IP.
One useful application of the system of the present invention is in the simultaneous distribution of streaming video to a plurality of subscribers. In this application, the video source content would reside on the content servers. Every subscriber that wishes to receive the streaming video content must be registered in a multicast group. Each packet of data, as they are generated, would be packaged in a multicast datagram and sent to all of the POP relays connected to the content server. Each POP relay, in turn, would receive the multicast datagrams and forward them to the ISPs that are connected to them. Within the ISPs the router/terminal server would receive the multicast datagrams and forward them to each subscriber that is a member of the multicast group.
While the invention has been described with respect to a limited number of embodiments, it will be appreciated that many variations, modifications and other applications of the invention may be made. Rather, the scope of the present invention is defined only by the claims that follow: