US20080288458A1 - Session Initiation Protocol (Sip) Multicast Management Method - Google Patents
Session Initiation Protocol (Sip) Multicast Management Method Download PDFInfo
- Publication number
- US20080288458A1 US20080288458A1 US12/094,623 US9462308A US2008288458A1 US 20080288458 A1 US20080288458 A1 US 20080288458A1 US 9462308 A US9462308 A US 9462308A US 2008288458 A1 US2008288458 A1 US 2008288458A1
- Authority
- US
- United States
- Prior art keywords
- client device
- server
- media content
- media
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/563—Data redirection of data network streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
- H04L65/1104—Session initiation protocol [SIP]
Definitions
- the invention relates generally to distributing multimedia content to subscribers over an Internet Protocol (IP) network. More specifically, the invention relates to the distribution of multicast multimedia applications using a point-to-point control signaling protocol.
- IP Internet Protocol
- IPTV Internet Protocol Television
- IP multicasting is a typical mechanism by which the service providers transport IPTV streams (i.e., channels) through the network.
- IPTV streams i.e., channels
- IGMP Internet Group Management Protocol
- SIP Session Initiation Protocol
- the invention features a method of obtaining real-time media content over an Internet Protocol network.
- a proxy server receives a message from a client device requesting that communications be established with a media server for obtaining a stream of media content.
- the proxy server sends the client device a redirection message in reply to the message from the client device if the requested media content is available from a local replication point.
- the redirection message instructs the client device to communicate with the local replication point to obtain the stream of media content.
- the invention features a network for distributing real-time media content.
- the network comprises a media server, a local replication point in communication with the media server, and a proxy server in communication with a client device.
- the proxy server receives a message from the client device requesting that communications be established with the media server for obtaining a particular stream of media content.
- the proxy server sends to the client device a redirection message in reply to the message from the client device if the requested media content is available at the local replication point.
- the redirection message instructs the client device to establish communications with the local replication point to obtain the particular stream of media content.
- the invention features a network device having a proxy agent in communication with a client device over an access network.
- the proxy agent receives a message from the client device requesting that communications be established with a media server for obtaining a stream of media content.
- the proxy agent sends to the client device a redirection message in reply to the message from the client device if the media content is available from a cache server.
- the redirection message instructs the client device to communicate with the cache server to obtain the requested stream of media content.
- FIG. 1 is a block diagram of an exemplary networking environment in which aspects of the invention may be implemented.
- FIG. 2 is a block diagram of a portion of the networking environment of FIG. 1 , including a client device, a proxy server, a local replication point, location servers, and a media server.
- FIG. 3 is a flow diagram of an embodiment of a process for forwarding a request from the client device to the media server to obtain media content in accordance with the invention.
- FIG. 4 is a block diagram of the portion of the networking environment shown in FIG. 2 , in which the media server responds to the request from the client device.
- FIG. 5 is a flow diagram of an embodiment of a process for responding to the request from the client device in accordance with the invention.
- FIG. 6 is a block diagram of the portion of the networking environment shown in FIG. 1 , in which the proxy server redirects a second client device to the local replication point for obtaining the same media content requested previously and stored at the local replication point.
- FIG. 7 is a flow diagram of an embodiment of a process for redirecting the request from the second client device ( FIG. 6 ) to the local replication point in accordance with the invention.
- IP Internet Protocol
- IGMP Internet Group Management Protocol
- client devices and servers communicate using a point-to-point signaling protocol, exemplified by the session initiation protocol (SIP), to request, locate, deliver, and receive multimedia content over the IP network.
- IPTV Internet Protocol Television
- An IPTV system can expect to have many concurrent viewers, with each viewer having many broadcast TV channels from which to choose.
- only channels selected by a viewer are distributed to the customer premises. Many TV channels enjoy multiple concurrent viewers. Such channels are thus distributed to multiple customer premises.
- the media source delivers, or causes delivery of, the corresponding content to a cache server (also referred to hereafter as a replication point), from which the subscriber obtains the content.
- a proxy Upon a subsequent selection of that channel by a second subscriber, a proxy redirects the second subscriber to obtain the content from the replication point.
- the replication point is already receiving the desired content because of the initial request by the first subscriber. Consequently, the second subscriber (i.e., its client device) does not need to establish communications with the media source to receive the channel content.
- the second subscriber i.e., its client device
- one embodiment of the invention enhances the session initial protocol, as defined in RFC 3261, with a new redirection method.
- the entirety of RFC 3261, titled “SIP: Session Initiation Protocol”, is incorporated by reference herein.
- the new redirection method includes a type number (any number within the range of 300 to 400 (e.g., 310), provided the number is not a duplicate of existing redirection types) and includes an address of the replication point (e.g., in a Contact field or message body) to be used by the second subscriber to obtain the requested content.
- a type number any number within the range of 300 to 400 (e.g., 310), provided the number is not a duplicate of existing redirection types
- an address of the replication point e.g., in a Contact field or message body
- each redirected subscriber can establish a point-to-point communication path with the replication point to obtain the “cached” content.
- the distribution of content through redirection scales with an increase in the number of concurrent subscribers, reduces network traffic at the media source, and removes the media source as a single point of failure.
- the redirection mechanism can, as described in more detail below, achieve sufficiently rapid channel changes so as not to offend the user experience.
- FIG. 1 shows an embodiment of a networking environment 10 in which the invention may be practiced.
- the networking environment 10 includes home networks 12 , 12 ′, an access network 14 , a core IP network 16 , an administration network 18 , a video head-end network 20 , and a central office 22 .
- the various networks of the networking environment 10 cooperate to distribute real-time multimedia content to subscribers.
- This description illustrates the principles of the invention as applied to the delivery of TV channels to subscribers of digital broadcast television services (i.e., IPTV). It is to be understood that the principles of the invention can extend to other media-delivery applications, e.g., voice over IP (VoIP), video-on-demand (VoD).
- VoIP voice over IP
- VoD video-on-demand
- the home networks 12 , 12 ′ reside on customer premises and include customer equipment, such as set-top boxes, personal computers, routers, modems, etc. In general, home networks can have a variety of topologies and customer equipment. For simplicity of illustration, each home network 12 , 12 ′ is shown to have one set-top box 4 , 4 ′, respectively, each coupled to a digital television set.
- the set-top boxes 4 , 4 ′ operate as endpoints (i.e., broadband network termination) for terminating IPTV traffic.
- a session initiation protocol (SIP) user agent (UA) executes on each set-top box 4 , 4 ′ for communicating with the proxy server 24 when requesting real-time multimedia content, as described herein.
- SIP session initiation protocol
- UA user agent
- television viewers send requests that select and change channels.
- Channel changes issue from the set-top boxes 4 , 4 ′ as SIP messages.
- the access network 14 links the home networks 12 , 12 ′ with the core IP network 16 . Also referred to as the “last mile”, the access network 14 provides a broadband connection over which the home networks 12 , 12 ′ can communicate with remote media (or content) servers to obtain multimedia content. Client devices can establish broadband connections through any one of a variety of technologies, an example of which is digital subscriber line (DSL). To support DSL, for example, the access network 14 includes one or more Digital Subscriber Line Access Multiplexers (DSLAMs) to aggregate DSL connections from multiple customers onto a single backbone line.
- DSL digital subscriber line
- DSL digital subscriber line
- the access network 14 includes one or more Digital Subscriber Line Access Multiplexers (DSLAMs) to aggregate DSL connections from multiple customers onto a single backbone line.
- DSL digital subscriber line
- the managed IP core network 16 in general, provides the reliable and timely distribution of IPTV data streams from the media and content servers to the customer premises.
- the core network 16 can include an optical distribution backbone network.
- a proxy server 24 in the core network 16 serves the domain (or domains) of the client devices 4 , 4 ′.
- the proxy server 24 receives the SIP messages from the client devices 4 , 4 ′ and forwards those messages on their behalf.
- Each client device 4 , 4 ′ can be pre-configured (i.e., pre-programmed) with the address of the proxy server 24 to facilitate communications with the proxy server 24 .
- the client devices 4 , 4 ′ can discover the address of the proxy server 24 , for example, by DHCP (Dynamic Host Configuration Protocol).
- DHCP Dynamic Host Configuration Protocol
- the administration network 18 includes SIP servers 26 , 28 , a home subscriber server (HSS) 29 , and a media server 30 (a cluster of application servers). Although shown in FIG. 1 as separate nodes, the HSS and SIP servers can be implemented within a single node.
- the HSS 29 maintains a master user database containing user profiles. The HSS 29 can perform authentication and authorization and provide information about the physical location of the user.
- the SIP servers 26 , 28 are in communication with the HSS 29 to obtain the user location information (user profiles).
- the SIP server 26 provides an Interrogating Call Session Control Function (or I-CSCF) and the SIP server 28 provides a Serving Call Session Control Function (or S-CSCF).
- the proxy server 24 is in communication with the I-CSCF server to identify a target S-CSCF server for forwarding a given SIP message.
- the S-CSCF server 28 identifies service privileges of users and determines to which application server of the media server 30 to forward the given SIP message.
- the media server 30 sources the multimedia content (i.e., broadcast IPTV channels) to be delivered to the home networks 12 , 12 ′.
- the central office 22 includes a local replication point 34 for receiving the IPTV data streams, as described in more detail below. (Referral to the replication point as local illustrates that the preferred geographical deployment of the replication point is within vicinity of the customer premises equipment. In general, replication points—there can be more than one—are collocated with the proxy server at the local central office).
- the video head-end network 20 includes a content server 32 for receiving streams of programming, e.g., via satellite directly from a broadcaster (or programmer) or from an aggregator.
- the content server 32 obtains each individual channel of programming, encodes its multimedia content into a digital video format, and stores the content in a database.
- the media server 30 is in communication with the content server 32 to direct the delivery of the multimedia content from the content server 32 to the replication point at the central office.
- FIG. 2 shows a portion of the networking environment 10 of FIG. 1 , including one of the client devices 4 , the proxy server 24 , the local replication point 34 , location servers 26 , 28 , and the media server 30 .
- the client device 4 includes user agent client (UAC) software 50 and a protocol stack 52 having RTP (Real-Time Transport Protocol), RTCP (Real-Time Transport Control Protocol), and RTSP (Real-Time Transport Streaming Protocol) procedures for establishing a communication path by which to receive audio and video data over an IP network.
- UAC user agent client
- RTP Real-Time Transport Protocol
- RTCP Real-Time Transport Control Protocol
- RTSP Real-Time Transport Streaming Protocol
- the media server 30 includes user agent server (UAS) software 62 and a protocol stack 64 having RTP, RTCP, and RTSP procedures for broadcasting content over the IP network.
- the content server 32 includes the protocol stack 64
- the media server 30 instructs the content server 32 to establish an RTP with the replication point 34 —here, though, the protocol stack 64 is shown to be part of the media server 30 to simplify the illustration.
- a Uniform Resource Identifier e.g., mediaserver@domain.com.
- a database 66 maintains a list of the channels available at the media server 30 (e.g., CNN@domain.com, CBS@domain.com, and TSN@domain.com).
- the proxy server 24 includes local proxy code 54 for communicating with the UAC 50 of the client device 4 and proxy code 58 for communicating with the UAS of the media server 30 .
- the configuration of the proxy server 24 is set to Stateful, which configures the proxy server 24 as an SIP transaction-processing engine.
- the proxy server 24 includes a local program table 60 (i.e., a database) for recording entries representing those channels for which the local replication point 34 is presently storing content. For each table entry, the local program table 60 also indicates whether that entry is active or expired. An active status indicates that the IPTV stream corresponding to the associated channel is available at the local replication point 34 . An expired status indicates that the time for viewing the content of the associated channel has passed and, thus, the content is unavailable.
- the distribution of real-time multimedia content to a client device can be considered to occur in phases: a forwarding phase, a response phase, and a redirection phase. Which of these phases occurs for a given request depends upon whether the client device requesting an IPTV channel is the first requester of that IPTV channel or a subsequent requester.
- FIG. 3 shows an embodiment of a forwarding phase in which the client device 4 sends a request to the media server 30 to obtain real-time multimedia content using SIP.
- the user of client device 4 selects a channel (e.g., CNN) and the UAC 50 of the client device 4 (here, a set-top box) sends an SIP INVITE request through the access network 14 to the proxy server 24 .
- the SIP INVITE request is one type of an SIP method that specifies a particular action that the client device 4 wants the media server 30 to perform, namely, to obtain the content of a specified channel.
- the SIP INVITE request includes a plurality of header fields, a request line, and a timestamp.
- the header fields include: To, From, and CSeq (Command Sequence).
- the To field contains a SIP URI towards which the request is originally directed
- the From field contains a SIP URI of the originating client device
- the Cseq contains an integer value that is incremented for each request within a SIP dialog.
- the request line includes the SIP method (e.g., INVITE) and the request-URI.
- the request-URI identifies the UAS that is to process the request.
- the request-URI can be the URI of the target channel, or, preferably, the URI of the media server 30 . Specifying the URI of the media server 30 as the request-URI is more advantageous than specifying the URI of the target channel.
- a request to change the channel requires terminating this session with the target channel and establishing a new session with a new target channel. This terminating and reestablishing can delay the channel-changing process.
- the client device 4 establishes an SIP session with the media server 30 , then a request to change channels is communicated within the dialog of the existing session. The session with the media server 30 persists across the channel change—there is no termination of the existing session. Consequently, channel changes do not incur the delay associated with terminating and reestablishing sessions.
- the UAC 50 of the client device 4 can be pre-programmed to include the SIP URI of the media server 30 in the Request-URI of the INVITE request.
- the request-URI specifies the URI of the media server 30
- the payload of the SIP INVITE carries the URI of the target channel.
- the local proxy 54 receives and parses the SIP INVITE request and determines if the requester is valid (authentication and authorization) by communicating with the location servers 26 , 28 .
- the proxy server 24 searches the local program table 60 to determine if an entry exists for the requested channel. If an entry is not found (i.e., this is the first request for this particular channel), the proxy server 24 adds (step 76 ) itself to the Record-Route header of the SIP INVITE request. By inserting its address into the Record-Route header, the proxy server 24 causes the routing of future requests in the dialog to pass through the proxy server 24 .
- the proxy server 24 selects (step 78 ) a local replication point 34 to operate as proxy for receiving the requested content from the media server 30 .
- Multiple local replication points 34 may be available to the proxy server 24 , from which the proxy server 24 selects one to receive the content.
- the proxy server 24 can maintain a database with entries representing these local replication points 34 ). The selection may be arbitrary or predetermined.
- the address of the selected local replication point 34 becomes part of the INVITE request—the proxy server 24 adds the address of the selected local replication point 34 to the INVITE request.
- the proxy server 24 also communicates with the location servers 26 , 28 to determine (step 80 ) the URI of the media server 30 that is to receive the request.
- the URI of the media server 30 used by the client device 4 is generic. From the generic URI, the location servers 26 , 28 mediate and resolve the generic URI to the particular server in the cluster. Each media server has its own unique URI so that sessions can be established with a given media server that persists across multiple channel changes).
- the location servers 26 , 28 maintain updated information indicating which server in the cluster of media servers 30 services what channels and which of the media servers is best able to supply the requested content.
- the location servers 26 , 28 respond to the proxy server 24 with the URI of this particular media server.
- the proxy server 24 replaces the original destination URI with the URI of the resolved media server.
- the proxy server 24 forwards the INVITE request to the resolved media server 30 .
- FIG. 4 and FIG. 5 illustrate an embodiment of a response phase, in which the media server 30 responds to the INVITE request from the client device 4 .
- the UAS 62 of the media server 30 receives the INVITE request and determines whether the requested channel is available. If the channel is available, at step 102 the media server 30 responds with an acknowledgement, e.g., a SIP “200 OK” message, indicating that the media server 30 is ready to accept the request and to send the stream of content to the local replication point 34 .
- the “200 OK” message operates to establish a dialog.
- the media server 30 also includes a Session Description Protocol (SDP) message identifying the type of content to be sent.
- SDP Session Description Protocol
- the proxy server 24 receives and forwards this acknowledgement to the client device 4 , along with the address of the local replication point 34 .
- the UAC 50 of the client device 4 determines whether to accept this response by checking the Cseq value (to ensure that the acknowledgement corresponds to the INVITE request) and to compare its timestamp (to ensure that the response is timely).
- the client device 4 responds (step 106 ) to the proxy server 24 with an acknowledgement.
- the client device 4 consequently knows to communicate with the local replication point 34 to receive the requested programming content.
- the proxy server 24 forwards the acknowledgement from the client device 4 to the media server 30 .
- the proxy server 24 also communicates (step 110 ) with the selected local replication point 34 to prepare the local replication point 34 for receiving content from the media server 30 .
- These communications include the identity (i.e., URI) of the client device 4 requesting the service, for use by the local replication point 34 when the client device 4 attempts to establish communications therewith.
- the media server 30 establishes a communication path with the local replication point 34 using one or more real-time protocols (i.e., RTP, RTSP, RTCP). Over this communication path, the channel content passes from the media server 30 to the local replication point 34 .
- the client device 4 establishes a communication path with the local replication point 34 using one or more real-time transport protocols (i.e., RTP, RTSP, RTCP). After establishment of this communication path, the client device 4 receives the requested channel content from the local replication point 34 .
- FIG. 6 and FIG. 7 illustrate an embodiment of a redirection phase, in which the proxy server 24 sends a Redirection message to the client device 4 ′ in response to an INVITE request for content currently cached and available in the local replication point 34 .
- the user of the client device 4 ′ selects a channel, causing the UAC 50 ′ of the client device 4 ′ to send an SIP Invite request over the access network 14 to the proxy server 24 .
- the proxy server 24 intercepts the request and validates (step 122 ) the requester. When the requester passes validation, the proxy server 24 determines (step 124 ) from the local program table 60 that the programming content associated with the channel requested by the client device 4 ′ is presently available at the local replication point 34 . (For example, the second client device 4 ′ has selected the same channel as the first client device 4 in FIG. 5 ). In addition, the proxy server 24 also determines that the content at the local replication point 34 is active (not expired).
- the proxy server 24 communicates (step 126 ) with the local replication point 34 to update a database at the local replication point 34 .
- the update informs the local replication point 34 to communicate with the client device 4 ′ for transmission of the requested content. If the content is instead flagged as expired, or if no entry exists in the local program table 60 for the requested channel, the proxy server 24 forwards the INVITE request to the media server 30 , as described in FIGS. 2 and 3 .
- the proxy server 24 After determining that the content can be obtained from the local replication point 34 , the proxy server 24 sends (step 128 ) an SIP redirection message to the client device 4 ′.
- the redirection message directs the client device 4 ′ to communicate with the local replication point 34 to obtain the desired programming content.
- An SDP message in the body of the redirection message identifies the local replication point 34 to which the proxy server 24 is redirecting the client device 4 ′.
- the UAC 50 ′ of the client device 4 ′ acknowledges the redirection message. Before acknowledging the redirection message, the UAC 50 ′ confirms that the response from the proxy server 24 is valid and timely (by checking the Cseq and timestamp).
- the client device 4 ′ establishes a communication path with the local replication point 34 using one or more real-time transport protocols. After establishing this path, the client device 4 ′ commences receiving the content from the local replication point 34 .
- the proxy server 24 also updates (step 134 ) its local program table 60 to include the identity of the second client device 4 ′ (i.e., the identity of the most recent requester of the channel).
- An associated Timer is also reset. The timer ensures that there are always viewers associated with a particular program. In the event of abnormal termination, the proxy server 24 uses the timer to expire the program.
- IPTV channels offered by a given provider may become cached at one or more local replication points because of the small number of channels offered by the provider compared to the number of subscribers navigating through these channels.
- the local replication points become populated with the various channels, it is expected that many subsequent INVITE requests during this time slot would result in a redirection to a local replication point.
- the local replication point for media content to become cached at a local replication point requires a first requester: that is, one subscriber issues a request for a channel that becomes forwarded to the media server and then the content of that channel is cached at the local replication point.
- the local replication point is proactively filled with media content. That is, rather than wait for a first requester, the local replication point can communicate with the media server to download channels proactively in anticipation of expected demand.
- the proxy server can immediately employ the redirection mechanism described above to direct the first requester to the local replication server.
Abstract
Description
- The invention relates generally to distributing multimedia content to subscribers over an Internet Protocol (IP) network. More specifically, the invention relates to the distribution of multicast multimedia applications using a point-to-point control signaling protocol.
- Current expectations are for the number of subscribers to broadband entertainment services, such as Internet Protocol Television (IPTV), to grow briskly. IPTV is a system in which broadband service providers distribute digital broadcast television over broadband connections using the Internet Protocol (IP). Presently, IP multicasting is a typical mechanism by which the service providers transport IPTV streams (i.e., channels) through the network. A commonly used multicasting protocol for switching channels is IGMP (Internet Group Management Protocol).
- Another protocol gaining popularity for use with multimedia applications is the Session Initiation Protocol (SIP). Many service providers consider SIP to be the control signaling protocol of choice for multimedia applications because of its flexibility and extensibility. A current trend is to combine SIP sessions with IGMP processes for implementing channel changes.
- Among subscribers of IPTV, however, the expectation for quality of experience (QoE) is high. Therefore, any solution that involves SIP needs to compete with the quality of experience currently enjoyed by subscribers of regular cable and satellite television. For IPTV to compete with such existing television services, any delay experienced during channel changing needs to be minimal. The point-to-point nature of SIP and the potentially large volume of simultaneous channel-change requests from subscribers, however, can severely affect the performance of the IPTV system, particularly if each channel change results in tearing down and setting up a chain of SIP sessions and IGMP processes. Hence, while there are incentives to use SIP for multicast-based multimedia applications over broadband connections, certain aspects of the protocol resist its wholesale adoption.
- In one aspect, the invention features a method of obtaining real-time media content over an Internet Protocol network. A proxy server receives a message from a client device requesting that communications be established with a media server for obtaining a stream of media content. The proxy server sends the client device a redirection message in reply to the message from the client device if the requested media content is available from a local replication point. The redirection message instructs the client device to communicate with the local replication point to obtain the stream of media content.
- In another aspect, the invention features a network for distributing real-time media content. The network comprises a media server, a local replication point in communication with the media server, and a proxy server in communication with a client device. The proxy server receives a message from the client device requesting that communications be established with the media server for obtaining a particular stream of media content. The proxy server sends to the client device a redirection message in reply to the message from the client device if the requested media content is available at the local replication point. The redirection message instructs the client device to establish communications with the local replication point to obtain the particular stream of media content.
- In still another aspect, the invention features a network device having a proxy agent in communication with a client device over an access network. The proxy agent receives a message from the client device requesting that communications be established with a media server for obtaining a stream of media content. The proxy agent sends to the client device a redirection message in reply to the message from the client device if the media content is available from a cache server. The redirection message instructs the client device to communicate with the cache server to obtain the requested stream of media content.
- The above and further advantages of this invention may be better understood by referring to the following description in conjunction with the accompanying drawings, in which like numerals indicate like structural elements and features in various figures. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention.
-
FIG. 1 is a block diagram of an exemplary networking environment in which aspects of the invention may be implemented. -
FIG. 2 is a block diagram of a portion of the networking environment ofFIG. 1 , including a client device, a proxy server, a local replication point, location servers, and a media server. -
FIG. 3 is a flow diagram of an embodiment of a process for forwarding a request from the client device to the media server to obtain media content in accordance with the invention. -
FIG. 4 is a block diagram of the portion of the networking environment shown inFIG. 2 , in which the media server responds to the request from the client device. -
FIG. 5 is a flow diagram of an embodiment of a process for responding to the request from the client device in accordance with the invention. -
FIG. 6 is a block diagram of the portion of the networking environment shown inFIG. 1 , in which the proxy server redirects a second client device to the local replication point for obtaining the same media content requested previously and stored at the local replication point. -
FIG. 7 is a flow diagram of an embodiment of a process for redirecting the request from the second client device (FIG. 6 ) to the local replication point in accordance with the invention. - Systems and methods embodying the present invention can achieve real-time distribution of multimedia content to multiple concurrent subscribers over an Internet Protocol (IP) network without the use of a multicasting protocol, such as IGMP (Internet Group Management Protocol). As described herein, client devices and servers communicate using a point-to-point signaling protocol, exemplified by the session initiation protocol (SIP), to request, locate, deliver, and receive multimedia content over the IP network. Internet Protocol Television (IPTV) is as an example of a real-time multimedia application that can benefit from the practice of the invention, and is used herein to illustrate the invention's principles.
- An IPTV system can expect to have many concurrent viewers, with each viewer having many broadcast TV channels from which to choose. In some IPTV systems, only channels selected by a viewer are distributed to the customer premises. Many TV channels enjoy multiple concurrent viewers. Such channels are thus distributed to multiple customer premises. In accordance with the invention, the first time any subscriber selects a given channel, a request for the channel content passes from that subscriber (i.e., a client device) to the media source. In response, the media source delivers, or causes delivery of, the corresponding content to a cache server (also referred to hereafter as a replication point), from which the subscriber obtains the content.
- Upon a subsequent selection of that channel by a second subscriber, a proxy redirects the second subscriber to obtain the content from the replication point. The replication point is already receiving the desired content because of the initial request by the first subscriber. Consequently, the second subscriber (i.e., its client device) does not need to establish communications with the media source to receive the channel content. To support this redirection mechanism, one embodiment of the invention enhances the session initial protocol, as defined in RFC 3261, with a new redirection method. The entirety of RFC 3261, titled “SIP: Session Initiation Protocol”, is incorporated by reference herein. The new redirection method includes a type number (any number within the range of 300 to 400 (e.g., 310), provided the number is not a duplicate of existing redirection types) and includes an address of the replication point (e.g., in a Contact field or message body) to be used by the second subscriber to obtain the requested content.
- Because of the redirection mechanism, the use of a native multicast protocol becomes unnecessary: instead, each redirected subscriber can establish a point-to-point communication path with the replication point to obtain the “cached” content. In addition, the distribution of content through redirection scales with an increase in the number of concurrent subscribers, reduces network traffic at the media source, and removes the media source as a single point of failure. Further, the redirection mechanism can, as described in more detail below, achieve sufficiently rapid channel changes so as not to offend the user experience.
-
FIG. 1 shows an embodiment of anetworking environment 10 in which the invention may be practiced. Thenetworking environment 10 includeshome networks access network 14, acore IP network 16, anadministration network 18, a video head-end network 20, and acentral office 22. The various networks of thenetworking environment 10 cooperate to distribute real-time multimedia content to subscribers. This description illustrates the principles of the invention as applied to the delivery of TV channels to subscribers of digital broadcast television services (i.e., IPTV). It is to be understood that the principles of the invention can extend to other media-delivery applications, e.g., voice over IP (VoIP), video-on-demand (VoD). - The
home networks home network top box - The set-
top boxes top box proxy server 24 when requesting real-time multimedia content, as described herein. Through the set-top boxes top boxes - The
access network 14 links thehome networks core IP network 16. Also referred to as the “last mile”, theaccess network 14 provides a broadband connection over which thehome networks access network 14 includes one or more Digital Subscriber Line Access Multiplexers (DSLAMs) to aggregate DSL connections from multiple customers onto a single backbone line. - The managed
IP core network 16, in general, provides the reliable and timely distribution of IPTV data streams from the media and content servers to the customer premises. Thecore network 16 can include an optical distribution backbone network. Aproxy server 24 in thecore network 16 serves the domain (or domains) of theclient devices proxy server 24 receives the SIP messages from theclient devices client device proxy server 24 to facilitate communications with theproxy server 24. Alternatively, theclient devices proxy server 24, for example, by DHCP (Dynamic Host Configuration Protocol). - The
administration network 18 includesSIP servers 26, 28, a home subscriber server (HSS) 29, and a media server 30 (a cluster of application servers). Although shown inFIG. 1 as separate nodes, the HSS and SIP servers can be implemented within a single node. TheHSS 29 maintains a master user database containing user profiles. TheHSS 29 can perform authentication and authorization and provide information about the physical location of the user. - The
SIP servers 26, 28 are in communication with theHSS 29 to obtain the user location information (user profiles). In general, theSIP server 26 provides an Interrogating Call Session Control Function (or I-CSCF) and the SIP server 28 provides a Serving Call Session Control Function (or S-CSCF). Theproxy server 24 is in communication with the I-CSCF server to identify a target S-CSCF server for forwarding a given SIP message. The S-CSCF server 28 identifies service privileges of users and determines to which application server of themedia server 30 to forward the given SIP message. Themedia server 30 sources the multimedia content (i.e., broadcast IPTV channels) to be delivered to thehome networks core IP network 16 for each channel of programming. Thecentral office 22 includes alocal replication point 34 for receiving the IPTV data streams, as described in more detail below. (Referral to the replication point as local illustrates that the preferred geographical deployment of the replication point is within vicinity of the customer premises equipment. In general, replication points—there can be more than one—are collocated with the proxy server at the local central office). - The video head-
end network 20 includes acontent server 32 for receiving streams of programming, e.g., via satellite directly from a broadcaster (or programmer) or from an aggregator. Thecontent server 32 obtains each individual channel of programming, encodes its multimedia content into a digital video format, and stores the content in a database. Themedia server 30 is in communication with thecontent server 32 to direct the delivery of the multimedia content from thecontent server 32 to the replication point at the central office. -
FIG. 2 shows a portion of thenetworking environment 10 ofFIG. 1 , including one of theclient devices 4, theproxy server 24, thelocal replication point 34,location servers 26, 28, and themedia server 30. Theclient device 4 includes user agent client (UAC)software 50 and aprotocol stack 52 having RTP (Real-Time Transport Protocol), RTCP (Real-Time Transport Control Protocol), and RTSP (Real-Time Transport Streaming Protocol) procedures for establishing a communication path by which to receive audio and video data over an IP network. - The
media server 30 includes user agent server (UAS)software 62 and aprotocol stack 64 having RTP, RTCP, and RTSP procedures for broadcasting content over the IP network. In general, thecontent server 32 includes theprotocol stack 64, and themedia server 30 instructs thecontent server 32 to establish an RTP with thereplication point 34—here, though, theprotocol stack 64 is shown to be part of themedia server 30 to simplify the illustration. Associated with themedia server 30 is a Uniform Resource Identifier (URI), e.g., mediaserver@domain.com. Adatabase 66 maintains a list of the channels available at the media server 30 (e.g., CNN@domain.com, CBS@domain.com, and TSN@domain.com). - The
proxy server 24 includeslocal proxy code 54 for communicating with theUAC 50 of theclient device 4 andproxy code 58 for communicating with the UAS of themedia server 30. To handles requests from theUAC 50, the configuration of theproxy server 24 is set to Stateful, which configures theproxy server 24 as an SIP transaction-processing engine. In addition, theproxy server 24 includes a local program table 60 (i.e., a database) for recording entries representing those channels for which thelocal replication point 34 is presently storing content. For each table entry, the local program table 60 also indicates whether that entry is active or expired. An active status indicates that the IPTV stream corresponding to the associated channel is available at thelocal replication point 34. An expired status indicates that the time for viewing the content of the associated channel has passed and, thus, the content is unavailable. - In brief overview, the distribution of real-time multimedia content to a client device can be considered to occur in phases: a forwarding phase, a response phase, and a redirection phase. Which of these phases occurs for a given request depends upon whether the client device requesting an IPTV channel is the first requester of that IPTV channel or a subsequent requester.
-
FIG. 3 shows an embodiment of a forwarding phase in which theclient device 4 sends a request to themedia server 30 to obtain real-time multimedia content using SIP. In the description of the forwarding phase, reference is also made toFIG. 1 andFIG. 2 . Atstep 70, the user ofclient device 4 selects a channel (e.g., CNN) and theUAC 50 of the client device 4 (here, a set-top box) sends an SIP INVITE request through theaccess network 14 to theproxy server 24. The SIP INVITE request is one type of an SIP method that specifies a particular action that theclient device 4 wants themedia server 30 to perform, namely, to obtain the content of a specified channel. The SIP INVITE request includes a plurality of header fields, a request line, and a timestamp. The header fields include: To, From, and CSeq (Command Sequence). The To field contains a SIP URI towards which the request is originally directed, the From field contains a SIP URI of the originating client device, and the Cseq contains an integer value that is incremented for each request within a SIP dialog. - The request line includes the SIP method (e.g., INVITE) and the request-URI. The request-URI identifies the UAS that is to process the request. In an SIP INVITE request, the request-URI can be the URI of the target channel, or, preferably, the URI of the
media server 30. Specifying the URI of themedia server 30 as the request-URI is more advantageous than specifying the URI of the target channel. - For instance, if the
client device 4 establishes an SIP session with a target channel, a request to change the channel requires terminating this session with the target channel and establishing a new session with a new target channel. This terminating and reestablishing can delay the channel-changing process. In contrast, if theclient device 4 establishes an SIP session with themedia server 30, then a request to change channels is communicated within the dialog of the existing session. The session with themedia server 30 persists across the channel change—there is no termination of the existing session. Consequently, channel changes do not incur the delay associated with terminating and reestablishing sessions. - To facilitate communication with the
media server 30, theUAC 50 of theclient device 4 can be pre-programmed to include the SIP URI of themedia server 30 in the Request-URI of the INVITE request. When the request-URI specifies the URI of themedia server 30, the payload of the SIP INVITE carries the URI of the target channel. - At
step 72, thelocal proxy 54 receives and parses the SIP INVITE request and determines if the requester is valid (authentication and authorization) by communicating with thelocation servers 26, 28. Atstep 74, theproxy server 24 searches the local program table 60 to determine if an entry exists for the requested channel. If an entry is not found (i.e., this is the first request for this particular channel), theproxy server 24 adds (step 76) itself to the Record-Route header of the SIP INVITE request. By inserting its address into the Record-Route header, theproxy server 24 causes the routing of future requests in the dialog to pass through theproxy server 24. - In addition, the
proxy server 24 selects (step 78) alocal replication point 34 to operate as proxy for receiving the requested content from themedia server 30. (Multiple local replication points 34 may be available to theproxy server 24, from which theproxy server 24 selects one to receive the content. Theproxy server 24 can maintain a database with entries representing these local replication points 34). The selection may be arbitrary or predetermined. The address of the selectedlocal replication point 34 becomes part of the INVITE request—theproxy server 24 adds the address of the selectedlocal replication point 34 to the INVITE request. - The
proxy server 24 also communicates with thelocation servers 26, 28 to determine (step 80) the URI of themedia server 30 that is to receive the request. (The URI of themedia server 30 used by theclient device 4 is generic. From the generic URI, thelocation servers 26, 28 mediate and resolve the generic URI to the particular server in the cluster. Each media server has its own unique URI so that sessions can be established with a given media server that persists across multiple channel changes). Thelocation servers 26, 28 maintain updated information indicating which server in the cluster ofmedia servers 30 services what channels and which of the media servers is best able to supply the requested content. Thelocation servers 26, 28 respond to theproxy server 24 with the URI of this particular media server. Theproxy server 24 replaces the original destination URI with the URI of the resolved media server. Atstep 82, theproxy server 24 forwards the INVITE request to the resolvedmedia server 30. -
FIG. 4 andFIG. 5 illustrate an embodiment of a response phase, in which themedia server 30 responds to the INVITE request from theclient device 4. Atstep 100, theUAS 62 of themedia server 30 receives the INVITE request and determines whether the requested channel is available. If the channel is available, atstep 102 themedia server 30 responds with an acknowledgement, e.g., a SIP “200 OK” message, indicating that themedia server 30 is ready to accept the request and to send the stream of content to thelocal replication point 34. The “200 OK” message operates to establish a dialog. Themedia server 30 also includes a Session Description Protocol (SDP) message identifying the type of content to be sent. - At
step 104, theproxy server 24 receives and forwards this acknowledgement to theclient device 4, along with the address of thelocal replication point 34. TheUAC 50 of theclient device 4 determines whether to accept this response by checking the Cseq value (to ensure that the acknowledgement corresponds to the INVITE request) and to compare its timestamp (to ensure that the response is timely). Upon accepting the acknowledgment, theclient device 4 responds (step 106) to theproxy server 24 with an acknowledgement. In addition, theclient device 4 consequently knows to communicate with thelocal replication point 34 to receive the requested programming content. - At
step 108, theproxy server 24 forwards the acknowledgement from theclient device 4 to themedia server 30. Theproxy server 24 also communicates (step 110) with the selectedlocal replication point 34 to prepare thelocal replication point 34 for receiving content from themedia server 30. These communications include the identity (i.e., URI) of theclient device 4 requesting the service, for use by thelocal replication point 34 when theclient device 4 attempts to establish communications therewith. - At
step 112, themedia server 30 establishes a communication path with thelocal replication point 34 using one or more real-time protocols (i.e., RTP, RTSP, RTCP). Over this communication path, the channel content passes from themedia server 30 to thelocal replication point 34. Atstep 114, theclient device 4 establishes a communication path with thelocal replication point 34 using one or more real-time transport protocols (i.e., RTP, RTSP, RTCP). After establishment of this communication path, theclient device 4 receives the requested channel content from thelocal replication point 34. -
FIG. 6 andFIG. 7 illustrate an embodiment of a redirection phase, in which theproxy server 24 sends a Redirection message to theclient device 4′ in response to an INVITE request for content currently cached and available in thelocal replication point 34. Atstep 120, the user of theclient device 4′ selects a channel, causing theUAC 50′ of theclient device 4′ to send an SIP Invite request over theaccess network 14 to theproxy server 24. Theproxy server 24 intercepts the request and validates (step 122) the requester. When the requester passes validation, theproxy server 24 determines (step 124) from the local program table 60 that the programming content associated with the channel requested by theclient device 4′ is presently available at thelocal replication point 34. (For example, thesecond client device 4′ has selected the same channel as thefirst client device 4 inFIG. 5 ). In addition, theproxy server 24 also determines that the content at thelocal replication point 34 is active (not expired). - If the requested content is available, the
proxy server 24 communicates (step 126) with thelocal replication point 34 to update a database at thelocal replication point 34. The update informs thelocal replication point 34 to communicate with theclient device 4′ for transmission of the requested content. If the content is instead flagged as expired, or if no entry exists in the local program table 60 for the requested channel, theproxy server 24 forwards the INVITE request to themedia server 30, as described inFIGS. 2 and 3 . - After determining that the content can be obtained from the
local replication point 34, theproxy server 24 sends (step 128) an SIP redirection message to theclient device 4′. The redirection message directs theclient device 4′ to communicate with thelocal replication point 34 to obtain the desired programming content. An SDP message in the body of the redirection message identifies thelocal replication point 34 to which theproxy server 24 is redirecting theclient device 4′. - At
step 130, theUAC 50′ of theclient device 4′ acknowledges the redirection message. Before acknowledging the redirection message, theUAC 50′ confirms that the response from theproxy server 24 is valid and timely (by checking the Cseq and timestamp). Atstep 132, theclient device 4′ establishes a communication path with thelocal replication point 34 using one or more real-time transport protocols. After establishing this path, theclient device 4′ commences receiving the content from thelocal replication point 34. Theproxy server 24 also updates (step 134) its local program table 60 to include the identity of thesecond client device 4′ (i.e., the identity of the most recent requester of the channel). An associated Timer is also reset. The timer ensures that there are always viewers associated with a particular program. In the event of abnormal termination, theproxy server 24 uses the timer to expire the program. - Providers of IPTV services can expect to have numerous subscribers concurrently requesting channels from their channel listings. Eventually, many, if not all, IPTV channels offered by a given provider (for a given time slot—e.g., 8-PM to 9-PM) may become cached at one or more local replication points because of the small number of channels offered by the provider compared to the number of subscribers navigating through these channels. After the local replication points become populated with the various channels, it is expected that many subsequent INVITE requests during this time slot would result in a redirection to a local replication point.
- Although the invention has been shown and described with reference to specific preferred embodiments, it should be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention as defined by the following claims. For example, in the previously described embodiments, for media content to become cached at a local replication point requires a first requester: that is, one subscriber issues a request for a channel that becomes forwarded to the media server and then the content of that channel is cached at the local replication point. In an alternative embodiment, the local replication point is proactively filled with media content. That is, rather than wait for a first requester, the local replication point can communicate with the media server to download channels proactively in anticipation of expected demand. Thus, when a first requester for a particular channel issues a request, the proxy server can immediately employ the redirection mechanism described above to direct the first requester to the local replication server.
Claims (20)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2005/044309 WO2007067176A2 (en) | 2005-12-08 | 2005-12-08 | Session initiation protocol (sip) multicast management method |
Publications (1)
Publication Number | Publication Date |
---|---|
US20080288458A1 true US20080288458A1 (en) | 2008-11-20 |
Family
ID=38123329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/094,623 Abandoned US20080288458A1 (en) | 2005-12-08 | 2005-12-08 | Session Initiation Protocol (Sip) Multicast Management Method |
Country Status (5)
Country | Link |
---|---|
US (1) | US20080288458A1 (en) |
EP (1) | EP1958080A4 (en) |
KR (1) | KR101215683B1 (en) |
CN (1) | CN101443749B (en) |
WO (1) | WO2007067176A2 (en) |
Cited By (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060039367A1 (en) * | 2004-08-18 | 2006-02-23 | Bellsouth Intellectual Property Corporation | SIP-based session control |
US20060041688A1 (en) * | 2004-08-18 | 2006-02-23 | Bellsouth Intellectual Property Corporation | SIP-based session control among a plurality of multimedia devices |
US20070271354A1 (en) * | 2005-11-10 | 2007-11-22 | Huawei Technologies Co., Ltd. | Method and system for redirecting a client |
US20080010380A1 (en) * | 2006-07-10 | 2008-01-10 | Verizon Services Organization Inc. | Re-directing video according to a standard protocol |
US20080127255A1 (en) * | 2006-11-27 | 2008-05-29 | Nortel Networks Limited | Multimedia subsystem control for internet protocol based television services |
US20080301745A1 (en) * | 2007-06-04 | 2008-12-04 | At&T Knowledge Ventures, Lp | System and method of delivering video content |
US20090164642A1 (en) * | 2007-12-21 | 2009-06-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and internet protocol television (iptv) content manager server for iptv servicing |
US20100042731A1 (en) * | 2008-08-01 | 2010-02-18 | Sparks Robert J | Methods, systems, and computer readable media for session initiation protocol (sip) dialog identification |
US20100046634A1 (en) * | 2006-12-20 | 2010-02-25 | Thomson Licensing | Video data loss recovery using low bit rate stream in an iptv system |
US20100121963A1 (en) * | 2007-10-22 | 2010-05-13 | Huawei Technologies Co., Ltd. | Method and Device for Obtaining Media Description Information of IPTV Services |
US20100293555A1 (en) * | 2009-05-14 | 2010-11-18 | Nokia Corporation | Method and apparatus of message routing |
US20100299551A1 (en) * | 2007-09-24 | 2010-11-25 | Zte Corporation | Message processing method, apparatus and ip communication system based on the sip protocol |
US20100313235A1 (en) * | 2009-06-05 | 2010-12-09 | Time Warner Cable Inc. | Providing syndication feed content on a television set-top box with limited decoder capability |
US20100325260A1 (en) * | 2009-06-18 | 2010-12-23 | Nokia Corporation | Method and apparatus for message routing optimization |
US20100322236A1 (en) * | 2009-06-18 | 2010-12-23 | Nokia Corporation | Method and apparatus for message routing between clusters using proxy channels |
US20100322264A1 (en) * | 2009-06-18 | 2010-12-23 | Nokia Corporation | Method and apparatus for message routing to services |
US20110047277A1 (en) * | 2009-04-13 | 2011-02-24 | Research In Motion Limited | System and method for determining trust for sip messages |
WO2011094843A1 (en) * | 2010-02-03 | 2011-08-11 | Orbital Multi Media Holdings Corporation | Method and apparatus for accessing media content |
US20120117253A1 (en) * | 2010-11-09 | 2012-05-10 | Usablenet Inc. | Methods for reducing latency in network connections and systems thereof |
US20130132588A1 (en) * | 2011-11-22 | 2013-05-23 | Cisco Technology, Inc. | Method and apparatus for providing session description for a media session |
US8868638B2 (en) | 2010-11-09 | 2014-10-21 | Usablenet Inc. | Methods for reducing latency in network connections using automatic redirects and systems thereof |
US8886767B1 (en) * | 2012-03-16 | 2014-11-11 | Arris Enterprises, Inc. | Sharing resources in a local serving office |
US20140359020A1 (en) * | 2010-05-27 | 2014-12-04 | Intel Mobile Communications GmbH | Method and apparatus for requesting media replication in a collaborative communication session, and method and apparatus for assigning a communication medium for a collaborative communication session |
US9330154B2 (en) * | 2011-08-22 | 2016-05-03 | Sybase, Inc. | Multicast database replication |
US20170223131A1 (en) * | 2012-03-10 | 2017-08-03 | Headwater Partners Ii Llc | Content distribution based on a value metric |
US9813890B2 (en) | 2011-03-17 | 2017-11-07 | Samsung Electronics Co., Ltd. | Method and apparatus for receiving contents in mobile communication system |
US9998291B1 (en) * | 2012-11-29 | 2018-06-12 | vIPtela Inc. | Multicast routing based on a unicast transport network |
US10951725B2 (en) | 2010-11-22 | 2021-03-16 | Amazon Technologies, Inc. | Request routing processing |
US10958501B1 (en) | 2010-09-28 | 2021-03-23 | Amazon Technologies, Inc. | Request routing information based on client IP groupings |
US11025747B1 (en) | 2018-12-12 | 2021-06-01 | Amazon Technologies, Inc. | Content request pattern-based routing system |
US11075987B1 (en) | 2017-06-12 | 2021-07-27 | Amazon Technologies, Inc. | Load estimating content delivery network |
US11108729B2 (en) | 2010-09-28 | 2021-08-31 | Amazon Technologies, Inc. | Managing request routing information utilizing client identifiers |
US11115500B2 (en) | 2008-11-17 | 2021-09-07 | Amazon Technologies, Inc. | Request routing utilizing client location information |
US11134134B2 (en) | 2015-11-10 | 2021-09-28 | Amazon Technologies, Inc. | Routing for origin-facing points of presence |
US11194719B2 (en) | 2008-03-31 | 2021-12-07 | Amazon Technologies, Inc. | Cache optimization |
US11205037B2 (en) * | 2010-01-28 | 2021-12-21 | Amazon Technologies, Inc. | Content distribution network |
US11232127B2 (en) * | 2018-12-28 | 2022-01-25 | Intel Corporation | Technologies for providing dynamic persistence of data in edge computing |
US11245770B2 (en) | 2008-03-31 | 2022-02-08 | Amazon Technologies, Inc. | Locality based content distribution |
US11283715B2 (en) | 2008-11-17 | 2022-03-22 | Amazon Technologies, Inc. | Updating routing information based on client location |
US11290418B2 (en) | 2017-09-25 | 2022-03-29 | Amazon Technologies, Inc. | Hybrid content request routing system |
US11297140B2 (en) | 2015-03-23 | 2022-04-05 | Amazon Technologies, Inc. | Point of presence based data uploading |
US11303717B2 (en) | 2012-06-11 | 2022-04-12 | Amazon Technologies, Inc. | Processing DNS queries to identify pre-processing information |
US11330008B2 (en) | 2016-10-05 | 2022-05-10 | Amazon Technologies, Inc. | Network addresses with encoded DNS-level information |
US11336712B2 (en) | 2010-09-28 | 2022-05-17 | Amazon Technologies, Inc. | Point of presence management in request routing |
US11362986B2 (en) | 2018-11-16 | 2022-06-14 | Amazon Technologies, Inc. | Resolution of domain name requests in heterogeneous network environments |
US11381487B2 (en) | 2014-12-18 | 2022-07-05 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US11451472B2 (en) | 2008-03-31 | 2022-09-20 | Amazon Technologies, Inc. | Request routing based on class |
US11457088B2 (en) | 2016-06-29 | 2022-09-27 | Amazon Technologies, Inc. | Adaptive transfer rate for retrieving content from a server |
US11463550B2 (en) | 2016-06-06 | 2022-10-04 | Amazon Technologies, Inc. | Request management for hierarchical cache |
US11461402B2 (en) | 2015-05-13 | 2022-10-04 | Amazon Technologies, Inc. | Routing based request correlation |
US11604667B2 (en) | 2011-04-27 | 2023-03-14 | Amazon Technologies, Inc. | Optimized deployment based upon customer locality |
US11762703B2 (en) | 2016-12-27 | 2023-09-19 | Amazon Technologies, Inc. | Multi-region request-driven code execution system |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009129386A (en) | 2007-11-28 | 2009-06-11 | Hitachi Ltd | Delivery method, server, and receiving terminal |
CN101242356B (en) * | 2007-12-06 | 2010-08-18 | 中兴通讯股份有限公司 | Realization method and IPTV system for memory database in IPTV system |
CN106899569A (en) | 2011-02-11 | 2017-06-27 | 交互数字专利控股公司 | Wireless transmitter/receiver unit, method and network equipment |
CN102379109B (en) * | 2011-08-16 | 2014-05-21 | 华为技术有限公司 | Data flow reusing transmission method, replication point equipment and system |
US10826998B2 (en) * | 2018-07-19 | 2020-11-03 | Adobe Inc. | Protocol to initiate session with partner site |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030079020A1 (en) * | 2001-10-23 | 2003-04-24 | Christophe Gourraud | Method, system and service provider for IP media program transfer-and-viewing-on-demand |
US20030112792A1 (en) * | 2001-12-14 | 2003-06-19 | At &T Corp. | Method for content-aware redirection and content renaming |
US20030174648A1 (en) * | 2001-10-17 | 2003-09-18 | Mea Wang | Content delivery network by-pass system |
US6785704B1 (en) * | 1999-12-20 | 2004-08-31 | Fastforward Networks | Content distribution system for operation over an internetwork including content peering arrangements |
US20050044270A1 (en) * | 2000-02-07 | 2005-02-24 | Grove Adam J. | Method for high-performance delivery of web content |
US20050060410A1 (en) * | 2003-09-11 | 2005-03-17 | Nokia Corporation | System and method for proxy-based redirection of resource requests |
US20070043730A1 (en) * | 2003-09-30 | 2007-02-22 | David Wisely | Data retrieval scheme |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003186780A (en) | 2001-12-13 | 2003-07-04 | Sony Corp | Information providing system, apparatus and method, information processor and method, recording medium and program |
-
2005
- 2005-12-08 EP EP05853271.4A patent/EP1958080A4/en not_active Withdrawn
- 2005-12-08 US US12/094,623 patent/US20080288458A1/en not_active Abandoned
- 2005-12-08 CN CN200580052530XA patent/CN101443749B/en not_active Expired - Fee Related
- 2005-12-08 KR KR1020087016563A patent/KR101215683B1/en not_active IP Right Cessation
- 2005-12-08 WO PCT/US2005/044309 patent/WO2007067176A2/en active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6785704B1 (en) * | 1999-12-20 | 2004-08-31 | Fastforward Networks | Content distribution system for operation over an internetwork including content peering arrangements |
US20050044270A1 (en) * | 2000-02-07 | 2005-02-24 | Grove Adam J. | Method for high-performance delivery of web content |
US20030174648A1 (en) * | 2001-10-17 | 2003-09-18 | Mea Wang | Content delivery network by-pass system |
US20030079020A1 (en) * | 2001-10-23 | 2003-04-24 | Christophe Gourraud | Method, system and service provider for IP media program transfer-and-viewing-on-demand |
US20030112792A1 (en) * | 2001-12-14 | 2003-06-19 | At &T Corp. | Method for content-aware redirection and content renaming |
US20050060410A1 (en) * | 2003-09-11 | 2005-03-17 | Nokia Corporation | System and method for proxy-based redirection of resource requests |
US20070043730A1 (en) * | 2003-09-30 | 2007-02-22 | David Wisely | Data retrieval scheme |
Cited By (85)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060041688A1 (en) * | 2004-08-18 | 2006-02-23 | Bellsouth Intellectual Property Corporation | SIP-based session control among a plurality of multimedia devices |
US20060039367A1 (en) * | 2004-08-18 | 2006-02-23 | Bellsouth Intellectual Property Corporation | SIP-based session control |
US7626950B2 (en) * | 2004-08-18 | 2009-12-01 | At&T Intellectual Property, I,L.P. | SIP-based session control among a plurality of multimedia devices |
US7630328B2 (en) * | 2004-08-18 | 2009-12-08 | At&T Intellectual Property, I,L.P. | SIP-based session control |
US20070271354A1 (en) * | 2005-11-10 | 2007-11-22 | Huawei Technologies Co., Ltd. | Method and system for redirecting a client |
US8667143B2 (en) * | 2005-11-10 | 2014-03-04 | Huawei Technologies Co., Ltd. | Method and system for redirecting a client |
US9661055B2 (en) | 2005-11-10 | 2017-05-23 | Huawei Technologies Co., Ltd. | Method and system for redirecting a client |
US8930560B2 (en) * | 2006-07-10 | 2015-01-06 | Verizon Patent And Licensing Inc. | Re-directing video according to a standard protocol |
US20080010380A1 (en) * | 2006-07-10 | 2008-01-10 | Verizon Services Organization Inc. | Re-directing video according to a standard protocol |
US20080127255A1 (en) * | 2006-11-27 | 2008-05-29 | Nortel Networks Limited | Multimedia subsystem control for internet protocol based television services |
US8656445B2 (en) * | 2006-11-27 | 2014-02-18 | Genband Us Llc | Multimedia subsystem control for internet protocol based television services |
US20100046634A1 (en) * | 2006-12-20 | 2010-02-25 | Thomson Licensing | Video data loss recovery using low bit rate stream in an iptv system |
US8750385B2 (en) * | 2006-12-20 | 2014-06-10 | Thomson Research Funding | Video data loss recovery using low bit rate stream in an IPTV system |
US8887216B2 (en) * | 2007-06-04 | 2014-11-11 | At&T Intellectual Property I, L.P. | System and method of delivering video content |
US20080301745A1 (en) * | 2007-06-04 | 2008-12-04 | At&T Knowledge Ventures, Lp | System and method of delivering video content |
US20130007825A1 (en) * | 2007-06-04 | 2013-01-03 | At&T Intellectual Property L, L.P. | System and Method of Delivering Video Content |
US8291463B2 (en) * | 2007-06-04 | 2012-10-16 | At&T Intellectual Property I, L.P. | System and method of delivering video content |
US8713351B2 (en) * | 2007-09-24 | 2014-04-29 | Zte Corporation | Message processing method and apparatus based on the SIP protocol and an IP communication system |
US20100299551A1 (en) * | 2007-09-24 | 2010-11-25 | Zte Corporation | Message processing method, apparatus and ip communication system based on the sip protocol |
US20100121963A1 (en) * | 2007-10-22 | 2010-05-13 | Huawei Technologies Co., Ltd. | Method and Device for Obtaining Media Description Information of IPTV Services |
US8307049B2 (en) | 2007-10-22 | 2012-11-06 | Huawei Technologies Co., Ltd. | Method and device for obtaining media description information of IPTV services |
US20090164642A1 (en) * | 2007-12-21 | 2009-06-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and internet protocol television (iptv) content manager server for iptv servicing |
US7716310B2 (en) * | 2007-12-21 | 2010-05-11 | Telefonaktiebolaget L M Ericsson (Publ) | Method and Internet Protocol Television (IPTV) content manager server for IPTV servicing |
US11245770B2 (en) | 2008-03-31 | 2022-02-08 | Amazon Technologies, Inc. | Locality based content distribution |
US11909639B2 (en) | 2008-03-31 | 2024-02-20 | Amazon Technologies, Inc. | Request routing based on class |
US11451472B2 (en) | 2008-03-31 | 2022-09-20 | Amazon Technologies, Inc. | Request routing based on class |
US11194719B2 (en) | 2008-03-31 | 2021-12-07 | Amazon Technologies, Inc. | Cache optimization |
US20100042731A1 (en) * | 2008-08-01 | 2010-02-18 | Sparks Robert J | Methods, systems, and computer readable media for session initiation protocol (sip) dialog identification |
US11811657B2 (en) | 2008-11-17 | 2023-11-07 | Amazon Technologies, Inc. | Updating routing information based on client location |
US11283715B2 (en) | 2008-11-17 | 2022-03-22 | Amazon Technologies, Inc. | Updating routing information based on client location |
US11115500B2 (en) | 2008-11-17 | 2021-09-07 | Amazon Technologies, Inc. | Request routing utilizing client location information |
US11082459B2 (en) | 2009-04-13 | 2021-08-03 | Blackberry Limited | System and method for determining trust for SIP messages |
US10135885B2 (en) | 2009-04-13 | 2018-11-20 | Blackberry Limited | System and method for determining trust for SIP messages |
US9401935B2 (en) * | 2009-04-13 | 2016-07-26 | Blackberry Limited | System and method for determining trust for SIP messages |
US11659011B2 (en) | 2009-04-13 | 2023-05-23 | Blackberry Limited | System and method for determining trust for SIP messages |
US20110047277A1 (en) * | 2009-04-13 | 2011-02-24 | Research In Motion Limited | System and method for determining trust for sip messages |
US10805360B2 (en) | 2009-04-13 | 2020-10-13 | Blackberry Limited | System and method for determining trust for SIP messages |
US11956284B2 (en) | 2009-04-13 | 2024-04-09 | Blackberry Limited | System and method for determining trust for SIP messages |
US20100293555A1 (en) * | 2009-05-14 | 2010-11-18 | Nokia Corporation | Method and apparatus of message routing |
US20140013366A1 (en) * | 2009-06-05 | 2014-01-09 | Time Warner Cable Enterprises Llc | Providing syndication feed content on a television set-top box with limited decoder capability |
US9113186B2 (en) * | 2009-06-05 | 2015-08-18 | Time Warner Cable Enterprises Llc | Providing syndication feed content on a television set-top box with limited decoder capability |
US20100313235A1 (en) * | 2009-06-05 | 2010-12-09 | Time Warner Cable Inc. | Providing syndication feed content on a television set-top box with limited decoder capability |
US8533768B2 (en) * | 2009-06-05 | 2013-09-10 | Time Warner Cable Enterprises Llc | Providing syndication feed content on a television set-top box with limited decoder capability |
US8667122B2 (en) | 2009-06-18 | 2014-03-04 | Nokia Corporation | Method and apparatus for message routing optimization |
US20100325260A1 (en) * | 2009-06-18 | 2010-12-23 | Nokia Corporation | Method and apparatus for message routing optimization |
US20100322236A1 (en) * | 2009-06-18 | 2010-12-23 | Nokia Corporation | Method and apparatus for message routing between clusters using proxy channels |
US20100322264A1 (en) * | 2009-06-18 | 2010-12-23 | Nokia Corporation | Method and apparatus for message routing to services |
US11205037B2 (en) * | 2010-01-28 | 2021-12-21 | Amazon Technologies, Inc. | Content distribution network |
WO2011094843A1 (en) * | 2010-02-03 | 2011-08-11 | Orbital Multi Media Holdings Corporation | Method and apparatus for accessing media content |
US9178941B2 (en) * | 2010-05-27 | 2015-11-03 | Intel Mobile Communications GmbH | Method and apparatus for requesting media replication in a collaborative communication session, and method and apparatus for assigning a communication medium for a collaborative communication session |
US20140359020A1 (en) * | 2010-05-27 | 2014-12-04 | Intel Mobile Communications GmbH | Method and apparatus for requesting media replication in a collaborative communication session, and method and apparatus for assigning a communication medium for a collaborative communication session |
US9531806B2 (en) | 2010-05-27 | 2016-12-27 | Intel Deutschland Gmbh | Method and apparatus for requesting media replication in a collaborative communication session, and method and apparatus for assigning a communication medium for a collaborative communication session |
US10958501B1 (en) | 2010-09-28 | 2021-03-23 | Amazon Technologies, Inc. | Request routing information based on client IP groupings |
US11632420B2 (en) | 2010-09-28 | 2023-04-18 | Amazon Technologies, Inc. | Point of presence management in request routing |
US11108729B2 (en) | 2010-09-28 | 2021-08-31 | Amazon Technologies, Inc. | Managing request routing information utilizing client identifiers |
US11336712B2 (en) | 2010-09-28 | 2022-05-17 | Amazon Technologies, Inc. | Point of presence management in request routing |
US20120117253A1 (en) * | 2010-11-09 | 2012-05-10 | Usablenet Inc. | Methods for reducing latency in network connections and systems thereof |
US8868638B2 (en) | 2010-11-09 | 2014-10-21 | Usablenet Inc. | Methods for reducing latency in network connections using automatic redirects and systems thereof |
US8984164B2 (en) * | 2010-11-09 | 2015-03-17 | Usablenet Inc. | Methods for reducing latency in network connections and systems thereof |
US10951725B2 (en) | 2010-11-22 | 2021-03-16 | Amazon Technologies, Inc. | Request routing processing |
US9813890B2 (en) | 2011-03-17 | 2017-11-07 | Samsung Electronics Co., Ltd. | Method and apparatus for receiving contents in mobile communication system |
US11604667B2 (en) | 2011-04-27 | 2023-03-14 | Amazon Technologies, Inc. | Optimized deployment based upon customer locality |
US9330154B2 (en) * | 2011-08-22 | 2016-05-03 | Sybase, Inc. | Multicast database replication |
US9143722B2 (en) * | 2011-11-22 | 2015-09-22 | Cisco Technology, Inc. | Method and apparatus for providing session description for a media session |
US20130132588A1 (en) * | 2011-11-22 | 2013-05-23 | Cisco Technology, Inc. | Method and apparatus for providing session description for a media session |
US20170223131A1 (en) * | 2012-03-10 | 2017-08-03 | Headwater Partners Ii Llc | Content distribution based on a value metric |
US10356199B2 (en) * | 2012-03-10 | 2019-07-16 | Headwater Partners Ii Llc | Content distribution with a quality based on current network connection type |
US8886767B1 (en) * | 2012-03-16 | 2014-11-11 | Arris Enterprises, Inc. | Sharing resources in a local serving office |
US11303717B2 (en) | 2012-06-11 | 2022-04-12 | Amazon Technologies, Inc. | Processing DNS queries to identify pre-processing information |
US11729294B2 (en) | 2012-06-11 | 2023-08-15 | Amazon Technologies, Inc. | Processing DNS queries to identify pre-processing information |
US9998291B1 (en) * | 2012-11-29 | 2018-06-12 | vIPtela Inc. | Multicast routing based on a unicast transport network |
US11381487B2 (en) | 2014-12-18 | 2022-07-05 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US11863417B2 (en) | 2014-12-18 | 2024-01-02 | Amazon Technologies, Inc. | Routing mode and point-of-presence selection service |
US11297140B2 (en) | 2015-03-23 | 2022-04-05 | Amazon Technologies, Inc. | Point of presence based data uploading |
US11461402B2 (en) | 2015-05-13 | 2022-10-04 | Amazon Technologies, Inc. | Routing based request correlation |
US11134134B2 (en) | 2015-11-10 | 2021-09-28 | Amazon Technologies, Inc. | Routing for origin-facing points of presence |
US11463550B2 (en) | 2016-06-06 | 2022-10-04 | Amazon Technologies, Inc. | Request management for hierarchical cache |
US11457088B2 (en) | 2016-06-29 | 2022-09-27 | Amazon Technologies, Inc. | Adaptive transfer rate for retrieving content from a server |
US11330008B2 (en) | 2016-10-05 | 2022-05-10 | Amazon Technologies, Inc. | Network addresses with encoded DNS-level information |
US11762703B2 (en) | 2016-12-27 | 2023-09-19 | Amazon Technologies, Inc. | Multi-region request-driven code execution system |
US11075987B1 (en) | 2017-06-12 | 2021-07-27 | Amazon Technologies, Inc. | Load estimating content delivery network |
US11290418B2 (en) | 2017-09-25 | 2022-03-29 | Amazon Technologies, Inc. | Hybrid content request routing system |
US11362986B2 (en) | 2018-11-16 | 2022-06-14 | Amazon Technologies, Inc. | Resolution of domain name requests in heterogeneous network environments |
US11025747B1 (en) | 2018-12-12 | 2021-06-01 | Amazon Technologies, Inc. | Content request pattern-based routing system |
US11232127B2 (en) * | 2018-12-28 | 2022-01-25 | Intel Corporation | Technologies for providing dynamic persistence of data in edge computing |
Also Published As
Publication number | Publication date |
---|---|
WO2007067176A2 (en) | 2007-06-14 |
EP1958080A2 (en) | 2008-08-20 |
KR20080099237A (en) | 2008-11-12 |
WO2007067176A3 (en) | 2009-04-16 |
KR101215683B1 (en) | 2012-12-26 |
EP1958080A4 (en) | 2014-05-07 |
CN101443749B (en) | 2012-11-14 |
CN101443749A (en) | 2009-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101215683B1 (en) | Session initiation protocol sip multicast management method | |
US10516717B2 (en) | Network-initiated content streaming control | |
CA2610515C (en) | Multimedia subsystem control for internet protocol based television services | |
US8392583B2 (en) | Distribution of shared content streams in communications networks | |
EP2241078B1 (en) | Method and internet protocol television (iptv) content manager server for iptv servicing | |
CN101207501B (en) | IP broadcasting system and a multicast group management apparatus for the same | |
EP1988666B1 (en) | A streaming media network system, a realization method and a enable entity of streaming media service | |
US9609393B2 (en) | Broadcast interactive television system | |
US8326942B2 (en) | IP unicast streaming service delivery | |
JP4932906B2 (en) | System for accessing television across IP services in an IMS architecture network | |
US20130007226A1 (en) | Content multicasting | |
US8756639B2 (en) | Apparatus and method for managing a network | |
WO2009155770A1 (en) | Interactive iptv system and content pushing method thereof | |
US20100046528A1 (en) | Intelligent IMS Gateway for Legacy DSLAMs | |
US20100002779A1 (en) | Mechanism for the management of receivers/decoders connections |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: NORTEL NETWORKS LIMITED, CANADA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SUN, SHENG;WEN, BING;WU, ERIC;REEL/FRAME:017364/0221 Effective date: 20051205 |
|
AS | Assignment |
Owner name: ROCKSTAR BIDCO, LP, NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:NORTEL NETWORKS LIMITED;REEL/FRAME:027143/0717 Effective date: 20110729 |
|
AS | Assignment |
Owner name: ROCKSTAR CONSORTIUM US LP, TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ROCKSTAR BIDCO, LP;REEL/FRAME:032425/0867 Effective date: 20120509 |
|
AS | Assignment |
Owner name: RPX CLEARINGHOUSE LLC, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ROCKSTAR CONSORTIUM US LP;ROCKSTAR CONSORTIUM LLC;BOCKSTAR TECHNOLOGIES LLC;AND OTHERS;REEL/FRAME:034924/0779 Effective date: 20150128 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION |