The present invention pertains generally to telecommunications, and particularly to the compression of headers of packets such as media packets.
Due to the tremendous success of the Internet, it has become a challenging task to make use of the Internet Protocol (IP) over all kinds of links. However, because of the fact that the headers of the IP protocols are rather large, it is not always a simple task to make this come true for narrowband links, such as cellular links, for example. As an example, consider ordinary speech data transported by the protocols (IP, UDP, RTP) used for Voice-over-IP (VoIP), where the header may represent about 70% of the packet resulting in a very inefficient usage of the link.
The term “header compression” (HC) encompasses the art of minimizing the necessary bandwidth for information carried in headers on a per-hop basis over point-to-point links. Header compression techniques in general have a more than ten-year-old history within the Internet community. Several commonly used header compression protocols exist, such as the following: (1) Van Jacobson. Compressing TCP/IP Headers for Low-Speed Serial Links. IETF RFC 1144, IETF Network Working Group, February 1990; (2) Mikael Degermark, Björm Nordgren, Stephen Pink. IP Header Compression, IETF RFC 2507, IETF Network Working Group, February 1999; and (3) Steven Casner, Van Jacobson. Compressing IP/UDP/RTP Headers for Low-Speed Serial Links, IETF RFC 2508, IETF Network Working Group, February 1999, all of which are incorporated by reference herein in their entirety.
Header compression takes advantage of the fact that some fields in the headers are not changing within a flow, or change with small and/or predictable values. Header compression schemes make use of these characteristics and send static information only initially, while changing fields are sent with their absolute values or as differences from packet to packet. Completely random information has to be sent without any compression at all.
Header compression is thus an important component to make IP services over wireless, such as voice and video services, economically feasible. Header compression solutions have been developed by the Robust Header Compression (ROHC) Working Group of the Internet Engineering Task Force (IETF) to improve the efficiency of such services.
Robust Header Compression (ROHC), as defined in RFC 3095 (Bormann, C., “RObust Header Compression (ROHC): Framework and four profiles: RTP, UDP, ESP, and uncompressed”, RFC 3095, Internet Engineering Task Force, July 2001), is an extensible framework for which profiles for compression of various protocols may be defined. For real-time multimedia services (e.g. voice, video), the application data is transported end-to-end within an IP/UDP/RTP stream. Header compression of IP/UDP/RTP is defined by the ROHC profile 0x0001 (ROHC RTP) and is applicable for Voice-over-IP (VoIP) services among others. The ROHC RTP header compression scheme has been designed to efficiently compress the IP/UDP/RTP headers over an arbitrary link layer.
A number of other ROHC profiles have also been defined for compression. Among these are (1) IP/UDP/RTP headers (described in: Jonsson, L. and G. Pelletier, RObust Header Compression (ROHC): A Link-Layer Assisted ROHC Profile for IP/UDP/RTP, IETF RFC 3242, April 2002; and Liu, Z and K. Le, Zero-byte Support for Bidirectional Reliable Mode (R-mode) in Extended Link-Layer Assisted RObust Header Compression (ROHC) Profile, IETF RFC 3408, December 2002); (2) IP only headers (described in: Jonsson, L. and G. Pelletier, RObust Header Compression (ROHC): A compression profile for IP, IETF RFC 3843, June 2004); (3) IP/TCP headers (described in: Pelletier, G., Jonsson, L., West, M. and R. Price RObust Header Compression (ROHC): TCP/IP Profile (ROHC-TCP), Internet Draft (work in progress), <draft-ietf-rohc-tcp-08.txt>, October 2004); and (4) IP/UDP-Lite/RTP headers (described in: Pelletier, G., RObust Header Compression (ROHC): Profiles for UDP-Lite, Internet Draft (work in progress), <draft-ietf-rohc-udp-lite-04.txt>, June 2004). All RFCs cited herein are incorporated by reference herein in their entireties.
Except for negotiation (see also Bormann, C., Robust Header Compression (ROHC) over PPP, IETF RFC 3241, April 2002), ROHC profiles only requires framing and error detection to be provided by the link layer, while all other functionality is handled by the ROHC scheme itself.
The ROHC profiles defined in RFC 3095, RFC 3242, RFC 3408, “IP-ONLY” (Jonsson, L. and G. Pelletier, RObust Header Compression (ROHC): A compression profile for IP, IETF RFC 3843, June 2004) and “ROHC-UDPLite” (Pelletier, G., RObust Header Compression (ROHC): Profiles for UDP-Lite, Internet Draft (work in progress), <draft-ietf-rohc-udp-lite-04.txt>, June 2004) support three different modes of operation. In short, for a specific context, the mode of operation controls the actions and the logic to perform as well as the packet types to use during different states of the header compression operation. Packet types and formats that are allowed may vary from one mode to the other. The Unidirectional mode (U-mode) is used at the beginning of any ROHC compression before any transition to other modes may occur. The Bidirectional Optimistic mode (O-mode) seeks to maximize the compression efficiency and sparse usage of the feedback channel. The Bidirectional Reliable mode (R-mode) seeks to maximize robustness against loss propagation and context damage propagation.
When in U-mode, packets are sent from compressor to decompressor only. The U-mode is thus usable over links where a return path from decompressor to compressor is either not desired or not available. Periodical refreshes are used in U-mode. The U-mode is particularly applicable to broadcast or multicast channels.
The O-mode is similar to the U-mode with the difference that a feedback channel is used to send error recovery requests and (optionally) acknowledgements of significant context updates from the decompressor to compressor. For most ROHC profiles, the U-mode and the O-mode are often indistinctly referred to using the term U/O-mode, due their rather similar characteristics—such as an identical set of packets formats for both modes.
The R-mode differs significantly from the two other modes, mainly by making a more extensive usage of the feedback channel and a stricter logic for performing context updates. The R-mode also uses a few different packet types only understood and useful in this mode.
Each mode of operation has different properties in terms of compression efficiency, robustness and processing complexity. Mode transitions may only be initiated by the decompressor. ROHC does not specify how and when each mode should be used (other than that ROHC compression must always start in U-mode). Therefore, the logic for mode transitions is an implementation decision and may be based on measurements of the link characteristics, link conditions, implementation optimizations for a specific mode or may be based on other algorithms. In particular, for Broadcast/Multicast type of services, header compression operates in the unidirectional mode (U-Mode) only, as normally for such services a feedback channel from decompressor to compressor is not available or desired.
A header compression scheme (such as a ROHC Profile) can be conceptualized and/or realized as a state machine. A challenging task is to keep the compressor and decompressor states, called contexts, consistent with each other, while keeping the header overhead as low as possible. There is one state machine for the compressor, and one state machine for the decompressor. The compressor state machine directly impacts the level of compression efficiency, as it is an important part of the logic controlling the choice of compressed packet type to be sent. The purpose of the decompressor state machine is mainly to provide the logic for feedback (if applicable) and to identify the packet types for which decompression may be attempted.
A compression context contains and maintains relevant information about past packets, and this information is used to compress and decompress subsequent packets. As explained in the ROHC documentation, the context of the compressor is the state it uses to compress a header. The context of the decompressor is the state it uses to decompress a header. Either of these or the two in combination are usually referred to as “context”, when it is clear which is intended. The context contains relevant information from previous headers in the packet stream, such as static fields and possible reference values for compression and decompression. Moreover, additional information describing the packet stream is also part of the context, for example information about how the IP Identifier field changes and the typical inter-packet increase in sequence numbers or timestamps.
According to RFC 3095, section 4.3.1, the purpose of the Initialization and Refresh (IR) State is to initialize the static parts and may be the dynamic part of the context at the decompressor or to recover after failure. In this state, the compressor sends complete header information. This includes all static and nonstatic fields in uncompressed form plus some additional information. The compressor stays in the IR state until it is fairly confident that the decompressor has received the static information correctly.
The compressor must then have enough confidence that the decompressor has the proper context before a transition to a higher compression ratio takes place. This confidence may be achieved in U-mode by sending a number of context initialization packets repeatedly for a large enough interval. The use of a number of packets may achieve confidence in less than one round trip time (RTT) but cannot absolutely guarantee that the decompressor does have the proper context other than optimistically expect to be successful with a high percentage rate.
In describing the Unidirectional mode, RFC 3095 states that “ . . . [T]ransition to a higher compression state in Unidirectional mode is carried out according to the optimistic approach principle. This means that the compressor transits to a higher compression state when it is fairly confident that the decompressor has received enough information to correctly decompress packets sent according to the higher compression state. When the compressor is in the IR state, it will stay there until it assumes that the decompressor has correctly received the static context information. For transition from the FO to the SO state, the compressor should be confident that the decompressor has all parameters needed to decompress according to a fixed pattern.”
In addition, to ensure robustness, a compressor operating in U-mode periodically transits back to a lower compression state (e.g. IR state). In this respect, a periodic refresh of the context in U-mode can be viewed as a procedure similar to the context initialization.
The IR state is thus the state were the compression level is the lowest.
In addition, the context replication (CR) mechanism for ROHC profiles introduce an additional state, the CR state. See, Pelletier, G., Robust Header Compression (ROHC): Context replication for ROHC profiles, Internet Draft (work in progress), <draft-ietf-rohc-context-replication-01.txt>, October 2003. To date, only the [ROHC-TCP] profile specifies support for context replication, but other profiles may also support it provided their corresponding standard is updated. The CR state may also be used by a profile operating in U-Mode.
In unidirectional operation, there is no feedback sent back to the compressor. Therefore, in unidirection operation, the decompressor may (in the worst cases) have up to Timeout_1 of waiting time without possibility to start decompression of the received packets, and up to Timeout_2 before it can re-start compression after severe context damage to the dynamic information.
For the ROHC framework, context initialization requires the compressor to start using the lowest compression state, the Initialization and Refresh (IR state). The first transmitted packets are IR packets to initialize at least the static and the dynamic part of the context. The static part may include information such as Context Identifier (CID), compression profile, the IP source and destination addresses, the UDP source and destination ports, SSRC etc. The dynamic part includes information such as RTP sequence number (RTP SN), payload type, timestamps, timestamp stride etc.
The ROHC framework requires that initialization first uses a number of IR packets, and then possibly followed by a number of IR-DYN packets. The size of these packet types, excluding the payload bits, is in the order of tens of octets.
Initialization and periodic refreshes of a header compression context thus require bandwidth for the bits necessary to be exchanged between compressor and decompressor, and this step is necessary to ensure that higher compression efficiency may be achieved. The confidence from the compressor that the decompressor has achieved proper context implies a certain delay for which the compression efficiency is far from optimal. In some situation, for example real-time VoIP flows over very narrow bandwidth wireless links using 0-byte header compression algorithms, such delay may impact perceived quality until optimal compression efficiency is reached. While the impact for a constant flow is minimal and concealed to the first packets of the flow, it may be more significant for a more bursty and discontinuous flow and should be minimized.
When used over error prone unidirectional links such as wireless broadcast links, a ROHC compressor operating in unidirectional mode (U-mode) faces a very important trade-off between efficiency and reliability. More specifically, when improving spectral efficiency of a header compression operating in a unidirectional mode, both the reliability of the context initialization and the delay to reach the static context state (or full context) at the decompressor (that is the delay from the time when the mobile station joins the channel and the time the decompressor in the mobile station can obtain the static context information) must be considered.
When the periodic transition to initialization and refresh (IR) state in the compressor (Timeout_1) is set to a long interval, fewer large IR packets are transmitted, leading to higher bandwidth efficiency. However, since the wireless links have high error rate, there is a fairly high probability for the transmitted packets to be corrupted and cause repeated decompression failures at the decompressor. Once it is forced back to no context (NC) state by such failures, the decompressor may have to wait for a long time until it receives the periodic IR packets from the compressor necessary to re-establish the context. All packets received during this interval have to be discarded, causing disruption in the service. In addition, the long IR refresh interval will lead to long acquisition time when a MS initially tunes to or switches back to the broadcast channel because the decompressor in the MS cannot be updated immediately.
On the other hand, if the periodic transition to the IR state in the compressor (Timeout_1) is set to happen with a short interval, the decompressor will be able to recover from context loss promptly, achieving higher reliability, and the tuning time for the mobile station will also be short. However, the large number of IR packets sent will lead to much lower efficiency. Therefore, there is a trade-off in bandwidth efficiency when frequently sending IR packets.
The access time is dependent on the time it takes to successfully obtain the static part of the context and begin decompression of compressed headers. It is thus directly related to the interval between the periodic refreshes as set by the compressor.
Broadcast and multicast (BCMCS) services differ from unicast services in that they do not specifically target a single receiver, but are rather forms of transmission where multiple recipients will receive the service. Where unicast transmit to an address (either network or link-layer address) corresponding to one and only one receiver, broadcast and multicast uses addresses shared by a number, or a group, of receivers. A broadcast is generally a transmission that can be received by anyone who can tune to the channel, while multicast is a transmission between a sender and multiple specific receivers on a network.
For broadcast/multicast services using ROHC in U-mode, it is desirable to insure a short access time to the IP service (including fast context initialization). This must be done while minimizing the overhead introduced by the header compression algorithm, which purpose is to ensure reliability in the absence of a feedback channel between the decompressor and the compressor.
The document “Broadcast/Multicast Services—Stage 1”, Revision A, 3GPP2, S.P0030-A Version 0.4.3, Jun. 12, 2003, states in section 7.1 thereof that, for BCMCS transmission of data, that it will be possible to use IP Header Compression. Of particular interest for BCMCS services is the robustness characteristics of the header compression scheme over a channel with relatively high bit error rates, with no or limited link retransmissions, and with no or limited feedback capability. With respect to this, ROHC has a clear advantage when compared to other existing header compression schemes such as CRTP and eCRTP.
Further, section 8.1.6 the 3GPP2, S.P0030-A Version 0.4.3, Jun. 12, 2003, document states that a BCMCS service to a user “shall be activated upon request for a BCMCS program for which the user is authorized”.
A framework document, Broadcast/Multicast Services (BCMCS)Framework Draft Document, Version 1.2, 3GPP2 BCMCS ad-hoc group, May 2003, provides an architectural overview and a framework description of the Broadcast-Multicast Service (BCMCS) for the cdma2000®1 networks. The main purpose of the BCMCS is to allow optimization of the use of the cdma2000® radio interface for delivery of BCMCS content stream(s) to one or more terminals in one or more regions of an operator's network.
The framework document defines the use of a controller. Section 4.2, page 12, of the framework document specifically includes in the architecture an interface between this controller and a Packet Data Serving Node (PDSN). The Packet Data Serving Node (PDSN) is similar in functionality to 3GPP's SGSN node. This BCMCS controller/PDSN interface provides BCMCS session-related information such as Flow Treatment (e.g., header compression, or header removal), the mapping between the identifiers used to distinguish the BCMCS flows (BCMCS_FLOW_ID), and Multicast IP address and port number from the BCMCS Controller to the PDSN. This interface also exchanges the BCMCS authorization information for bearer path setup of BCMCS.
The framework document (in section 4.2, page 13) also includes an interface between the BCMCS controller and the mobile terminal. The purpose of this BCMCS controller/mobile station interface is to provide the BCMCS client application in the mobile station (MS) with access to information about available BCMCS sessions: including Content Provider Name, Content Name, BCMCS_FLOW_ID(s), start time of the BCMCS session, duration of the BCMCS session, flow treatment (e.g., header compression, or header removal), and session description (e.g., codec type), and the transport and application protocols etc,
The BCMCS bearer paths are connections between a base station controller node (BSC) and a packet control function (PCF) and between the packet control function (PCF) and the Packet Data Serving Node (PDSN). The packet control function (PCF) is an entity in a radio access network that controls the transmission of packets between the base station and the PDSN, and is often physically integrated with the base station. The BCMCS bearer paths are setup by the network upon registration by the user using IOS signaling messages (likely within a block of bits—BLOBs). BCMCS services use their own connections, independent of other existing non-BCMCS service instances to the mobile station.
The framework document also states that upon the bearer path being established, if header compression is enabled by the PDSN, the PDSN will periodically send the header context on the same bearer path.
Jin, Haipeng, and Wang, Jun, “Header Compression For BCMCS”, October 2003, propose and advocate the use of ROHC in unidirectional mode as the preferred header compression algorithm for BCMCS services. The proposal also includes the adoption of modifications to the ROHC unidirectional mode of operation for header compression in BCMCS. It is alleged that the existing unidirectional mode of operation in ROHC does not work efficiently enough when used over broadcast links with significant error rates and scarce bandwidth. The proposal suggests that static context information be sent in advance to the decompressor via BCMCS information acquisition, on a separate channel. This proposal entirely disables the ROHC IR state when operating in U-mode in BCMCS services, and sends the IR parameters out-of-band instead—only once during channel information acquisition. Should a decompressor lose its context, the mobile terminal should initiate a new registration to the service to trigger a new channel information acquisition exchange. Yet this proposal requires significant changes to the state machine logic, as well as an unnecessarily complex interaction between the header compression algorithm and the underlying system. A simpler approach would be preferable. Also, this proposal is limited to one IP multicast/broadcast flow per ROHC instance (ROHC channel). This can pose unnecessary constraints on the processing and memory usage required in the terminal.
International Patent Publication WO2004017577 relates to aggregation of feedback from mobile terminals within a MBMS serving area, in order (based on a threshold) to decide to perform downward transitions from SO to FO to IR. This WO seeks to improve error recovery of ROHC in U-mode using a tradeoff between a number of terminals in need of recovery verses spectral efficiency. The WO targets the scaling of multicast and broadcast services where a return channel for ROHC in U-mode is employed or where such return channel is provided in a RRC layer.
Thus, one problem is that, when operating in U-Mode, efficiency is limited from the tradeoff between the frequency of context updates (e.g. downward transitions) for the purpose of maintaining synchronized contexts at both ends of the link, and the time for a decompressor having no suitable context to resynchronize with the compressor context—such as after a burst of errors or when acquiring the broadcast/multicast channel.
What is needed, therefore, and an object of the present invention, is a technique reducing access time and improving compression efficiency in broadcast/multicast IP services with unidirectional header compression within a multicast/broadcast multimedia system.
A communications network, apparatus, and method make a multicast/broadcast multimedia service available to a remote unit over an air interface, and in so doing include compression of headers of the media flow. The network and method involves generation, external to header compression logic, of a trigger signal which is applied to a compressor to trigger a lowest compression state of the header compression logic.
In an example embodiment, the communications network comprises a multicast/broadcast multimedia server which makes the multicast/broadcast multimedia service available to the remote unit over the air interface. A header compressor subjects the media flow to unidirectional header compression logic for compressing the headers of the media flow. A network node, upon receiving a request indicating that the remote unit seeks access to the multicast/broadcast multimedia service, generates a trigger signal which is applied to the compressor to trigger a lowest compression state of the header compression logic. The trigger signal is generated external to the header compression logic, and prior to generation of an initial packet of the media flow by the multimedia server. Preferably the trigger signal is derived using one or more broadcast/multicast channel acquisition events initiated by the remote unit.
Thus, even though the compressor may be configured by convention or standard to start the lowest compression state upon receiving an initial packet of the media flow, the lowest compression state is instead begun by the external trigger signal. The example network and method is thus compatible with robust header compression (ROHC) in a unidirectional mode, wherein the compressor has the Initialization and Refresh (IR) state as its lowest compression state.
The network node can be, for example, the node at which the multimedia server resides. The compressor is preferably situated at a packet data serving node (PDSN), but may also be situated at a node of the radio access network (RAN). The multimedia server can also be situated at the packet data serving node (PDSN).
As both a distinct and combinable aspect, the network node can generate the trigger signal to trigger a transition to the lowest compression state of the header compression logic upon receipt of an indication of a decompression problem which has occurred at the remote unit. The decompression problem can be, for example, a compression initialization failure or compression static context damage. The indication of the decompression problem is preferably an attempt by the remote unit to reinitiate access to the multicast/broadcast multimedia service.
Thus, there is also provided a remote unit which receives a multicast/broadcast multimedia service from a communications network over an air interface communications network, with a media flow of the multicast/broadcast multimedia service being subject to unidirectional header compression logic for compressing headers of the media flow. The remote unit comprises a transceiver for receiving the media flow and a decompressor. The decompressor is arranged so that, upon encountering a decompression problem with the media flow, the decompressor sends a request to reinitiate access to the multicast/broadcast multimedia service to the communications network (with an expectation that the request to reinitiate access will trigger a lowest compression state of the header compression logic).
Thus, the external trigger signal is generated either upon a remote unit seeking initial access to a multimedia service, and/or upon the remote unit (having suffered a decompression problem) seeking to reinitiate access to the multimedia service. The external trigger signal thus obviates the conventional practice of having the compressor periodically (e.g., at the end of predetermined timeouts) returning (often needlessly) to the lowest compression state. The external trigger signal thus promotes spectral efficiency in the transmission of the broadcast and multicast services by reducing the overhead incurred from the periodic sending of larger packets involved in the lowest compression state, and tends to minimize delay.
The foregoing and other objects, features, and advantages of the invention will be apparent from the following more particular description of preferred embodiments as illustrated in the accompanying drawings in which reference characters refer to the same parts throughout the various views. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention.
In the following description, for purposes of explanation and not limitation, specific details are set forth such as particular architectures, interfaces, techniques, etc. in order to provide a thorough understanding of the present invention. However, it will be apparent to those skilled in the art that the present invention may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known devices, circuits, and methods are omitted so as not to obscure the description of the present invention with unnecessary detail. Moreover, individual function blocks are shown in some of the figures. Those skilled in the art will appreciate that the functions may be implemented using individual hardware circuits, using software functioning in conjunction with a suitably programmed digital microprocessor or general purpose computer, using an application specific integrated circuit (ASIC), and/or using one or more digital signal processors (DSPs).
The protocol stacks 23 serve to affix protocol headers 24 to the media packet 22. The particular protocols comprising the protocol stack can vary, and typically comprise an application protocol (AP), under a transport protocol (TP), under an Internet Protocol (IP). In one example implementation, the protocol headers 24 comprise IP, UDP, and RTP headers which are added to the media packet 22.
The media packet 22 with its appended protocol headers 24 is applied to a packet header compressor 25. The packet compressor 25 compresses the protocol headers 24, resulted in a compressed header 26 for the packet.
The media packet 22 with its appended protocol headers 24 is applied to a packet header compressor 25. The packet compressor 25 compresses the protocol headers 24, resulted in a compressed header 26 for the packet. The header compressor 25 performs header compression according to any of many suitable header compression algorithms, either conventional (such as ROHC, for example) or otherwise. After the header of the packet is compressed by header compressor 25, a packet formatter 27 incorporates the compressed header into a packet which is applied to a transceiver 29. The transceiver 29 serves to transmit the packet, such as packet 30 with its compressed header 26, in a flow 34 of packets over link 36 across an interface 38 to a remote unit 40. The flow 34 of packets, likely most with compressed headers, need not be continuous, but can instead be sporadic, depending on the type of packet service involved and the nature of the material included in the packet service (e.g., media type).
The packet stream issuing from packet source 21 of
The aforementioned telecommunications elements, illustrated to the left of interface 38 in
While remote unit 40 has numerous elements, certain basic, representative elements suitable for an understanding of the header decompression performed by remote unit 40 are shown in
The remote unit 40 may take the form of, or also be known as, any of numerous devices/appellations such as mobile station, mobile terminal, wireless terminal, or user equipment unit. In the illustrated embodiment of
The header compressor 25 serves to compress headers of packets (such as media packets) which have been supplied by packet source 21 and possibly additionally encoded. The packet header compressor 25 is essentially a state machine which operates in various compression states, including a lowest compression state and one or more higher order compression states. In conjunction with its lowest compression state, header compressor 25 sends context information to decompressor 46 for use by the decompressor in decompressing compressed headers of the media packets. As used herein, “context information” encompasses one or both of context initialization information and context refresh information.
The communications network 20 further includes a network node 60. The network node 60 is a node which receives a request message or signal depicted as access request 62 in
Upon receiving access request 62, network node 60 generates a trigger signal 64. For this reason, network node 60 is also herein known as the “triggering” node. The trigger signal 64 is applied to packet header compressor 25 to trigger a lowest compression state of the header compression logic, e.g., the Initialization and Refresh (IR) state when using ROHC. The trigger signal 64 is generated external to the header compression logic, and thus prior to generation of an initial packet of the media flow by the multimedia server 21. The trigger signal 64 is internal to an implementation of the triggering node 60/PDSN node 70 and the BCMCS controller, which can be the same node in most cases. As shown in
The access request 62 can take the form of one or more broadcast/multicast channel acquisition events initiated by remote unit 40. Thus, the access request 62 can be, for example, the type of activating request contemplated by section 8.1.6 the 3GPP2, S.P0030-A Version 0.4.3, Jun. 12, 2003. In turn, the trigger signal 64 can preferably be derived using the one or more broadcast/multicast channel acquisition events initiated by remote unit 40. The trigger signal 64 can be applied, for example, over an interface such as the BCMCS controller/PDSN interface described in the framework document, Broadcast/Multicast Services (BCMCS) Framework Draft Document, Version 1.2, 3GPP2 BCMCS ad-hoc group, May 2003, section 4.2, page 12.
As shown in an example variation illustrated in
As another variation, shown in
In an example, non-limiting implementation, packet header compressor 25 may be configured in accordance with conventional, e.g., standardized compression logic such as ROHC. Advantageously, receipt and processing of the external trigger signal 64 need not interfere with the internal compression logic of packet header compressor 25, so that standardized compression logic can still be used without internal modification of the standardized compression logic. The external trigger signal 64 interfaces with packet header compressor 25 in such a way as to obviate or render unnecessary certain aspects of the standardized compression logic, and/or facilitate certain advantageous input settings or parameters of the standardized compression logic, but does so in such a way already accommodated by the standardized compression logic.
In the above regard, a conventional header compressor is typically configured to start the lowest compression state upon receiving an initial packet of the media flow. Thus, the conventional header compressor does not receive an external trigger signal, but has its standardized compression logic launched based on content of the media flow. In addition, the conventional header compressor is configured to refresh at the lowest compression state upon expiration of a preset timeout, e.g., Timeout_1, as above discussed.
Thus, in one example implementation, the packet header compressor 25 is capable of performing in the manner previously described with reference to the compressor of
As an optional event, and prior to contacting BCMCS controller 80 on behalf of remote unit 40, PDSN node 70 can engage in an authentication/authorization step 8-2 with an authorizing, authentication, and accounting agency node 82.
Upon receipt of the access request 62, e.g., the request of step 8-1b, as step 8-3a the BCMCS controller 80 sends certain BCMCS channel acquisition parameters to PDSN node 70. As step 8-3-b the PDSN node 70 relays the BCMCS channel acquisition parameters to remote unit 40.
Upon receipt of the BCMCS channel acquisition parameters, as step 8-4a the remote unit 40 responds to PDSN node 70 with a message to acknowledge receipt of the BCMCS channel acquisition parameters. As step 8-4b the remote unit 40 relays the BCMCS channel acquisition parameters acknowledge message to BCMCS controller 80.
In
As a result of receipt of access request 62, and in addition to actions such as those depicted by step 8-3, as step 8-6 the triggering node 60 (e.g., BCMCS controller 80 in the
Transitions from state SO to state FO are permitted in the compression scheme in conventional fashion and do not require re-initiation of access. These are the transitions that are needed because of the nature of the packets to be compressed, for example, if there is a change in the behavior of some field that deviates form the patterns that were established and that allowed the compressor to operate in state SO.
Packets for initializing the context are sent not only to the one mobile in question upon its access, but also the same packets are sent to all mobiles participating in the broadcast. The transceiver 29 (e.g., Base Station) sends only one channel, and the flow is sent only once over the entire cell area, and it does not matter how many remote units are listening as long as there is at least one, and everyone receives the same thing. So, in order to be capable of decompressing the stream, every remote unit must have the exact same context, otherwise the decompression will fail. If multiple registrations to the same BCMCS channel occur within the same short interval, it may be possible to aggregate these and only generate one single trigger instead of having one trigger for each access. This might help in areas with large number of mobiles where one channel may be especially in the demand (e.g., a sport event in a stadium where the replay of the last play is sent over BCMCS immediately after the play itself).
Thus, remote unit 40 receives the multicast/broadcast multimedia service from communications network 20′ over air interface 38, with a media flow of the multicast/broadcast multimedia service being subject to unidirectional header compression logic for compressing headers of the media flow. The remote unit 40 comprises a transceiver 42 for receiving the media flow and a decompressor 46. The decompressor 46 is arranged so that, upon encountering a decompression problem with the media flow, the decompressor sends reinitiate access request 92 to reinitiate access to the multicast/broadcast multimedia service to the communications network (with an expectation that the request to reinitiate access will trigger a lowest compression state of the header compression logic).
Should there be a decompression failure, e.g., a compression initialization failure or compression static context damage, state/event 10-2 is entered. At event 10-2 the header decompressor 46 discontinues its attempt of processing packets of the media flow, and proceeds to event 10-3. As event 10-3 the header decompressor 46 sends the reinitiate access request 92 to the triggering node 60 in order to request again access to the multicast/broadcast multimedia service. As previously explained, the reinitiate access request 92 can be a simple access request, i.e., the fact that the remote unit 40 might have attempted this initiation before does not mean that a different message than the initial one would be sent. Thereafter, after header decompressor 46 of remote unit 40 receives (as event 10-4) the static and dynamic context necessary for handling decompression of the compressed headers of the media flow, the header decompressor 46 can eventually return to the event 10-1 of performing the decompression. Upon sending of reinitiate access request 92 as event 10-3, the header decompressor 46 does not necessarily have to discontinue the decompression attempts, because subsequent packets such as IR and or IR-DYN packets that may contain enough information to recover may arrive at any time.
The method steps described above in conjunction with
It will be appreciated that the second embodiment of
Thus, the external trigger signal is generated either upon a remote unit seeking initial access to a multimedia service, and/or upon the remote unit (having suffered a decompression problem) seeking to reinitiate access to the multimedia service. The external trigger signal thus obviates the conventional practice of having the compressor periodically (e.g., at the end of predetermined timeouts) returning (often needlessly) to the lowest compression state. The external trigger signal thus promotes spectral efficiency in the transmission of the broadcast and multicast services by reducing the overhead incurred from the periodic sending of larger packets involved in the lowest compression state, and tends to minimize delay.
Thus, as described above, the access delay improvement is achieved by introducing/defining a system-specific (external to the header compression logic) IR state transition signal towards the compressor, e.g., trigger signal 64. This trigger signal 64 is generated by the system (e.g., communications network) upon an access or service registration attempt from a remote unit to the radio access network (RAN) when requesting access to a broadcast/multicast channel or service. The packet header compressor 25 receives this signal (trigger signal 64). The trigger signal 64 in turn triggers the context initialization and refresh (i.e. transition to IR State) procedure. A number of IR packets are thus sent upon reception of this trigger (optimistic approach), preferably over the BCMCS bearer to all receivers, or even using a separate bearer depending on how reliability is achieved.
Inventors have thus recognized that the presence of the BCMCS controller/PDSN interface in the BCMCS architecture provides opportunities to optimize the header compression algorithm for broadcast/multicast services, by providing means for the BCMCS controller 80 to signal the PDSN node 70 that a new user is accessing the BCMCS service. In addition, the inventors have recognized that the presence of the BCMCS controller/remote unit interface in the BCMCS architecture provides opportunities to optimize the header compression algorithm for broadcast/multicast services, by providing means for remote unit 40 to make reliable access to the service.
The reliability of the context initialization phase is achieved in two different ways. Reliability is first achieved by requiring that the decompressor 46 re-initiates the access to the broadcast/multicast IP service (in whole or in part) upon failure of the context initialization procedure at the decompressor (i.e., no IR packets initialize the new context). This makes it possible for the compressor to set the timeout value (U-mode) for the transition back to the IR state (Timeout_1) to a rather large (or even infinite) value, based on: (a) the understanding that IR packets need only be sent upon a state transition trigger generated by the underlying system to the compressor upon the remote unit 40 making an access to the broadcast/multicast service; and (b) the agreement that the remote unit 40 will re-initiate the access upon static context damage or initialization failure.
Reliability is secondarily achieved by requiring that packets initializing the context (at least the static part) be transmitted reliably, possibly on a separate bearer.
The trigger signal 64 thus provides alternatives to the normal behaviour of having q remote unit 40 wait for the next periodic refreshes of the static part of the context over the multicast/broadcast channel to acquire the static context and transit to a higher compression state.
The features herein provided allow the compressor to perform context initialization more efficiently, and removes the absolute need for periodic updates in multicast/broadcast services. For example, the value of Timeout_1 can be set to infinite. This is made possible from the fact that other procedures (such as BCMCS information acquisition and/or registration to the service) can occur prior to the first packet within a session, and is particularly advantageous in multicast/broadcast systems where service and/or channel acquisition parameters are not statistically provided. The net result of this procedure is that fewer bits are transmitted and delay towards accessing the service is minimized.
The generic terms “header compression”, “header compressor” and “header decompressor” are used to show that the applicability of this idea is not limited to any specific header compression scheme.
An open standard for a service called Instant-Talk-over-Cellular (PoC) is being developed for application in handsets for GSM, EDGE, UMTS and CDMA systems. Instant-Talk-over-Cellular (PoC) is a “walkie-talkie” in a cellular telecommunication system. PoC enabled handsets will most likely be equipped with a PoC-button (hardware or software). When this button is pressed the handset connects the user directly to a friend, a family member, or even a whole group of people of your choice, one-to-one or one-to many. Like a “walkie-talkie” the PoC service is half-duplex, although full duplex may be available at a later stage. It is important to have low setup delay in order to allow for the user to start speak immediately after pressing the button. It is also important that the PoC service is supported in an efficient manner in the radio network since it is expected to be cheaper than circuit switched voice and since it is likely to become a mass-market service with high penetration.
A typical usage of PoC is that a group of persons (e.g. youths, or professionals like workers at a building site) use the PoC terminals to keep the group updated on what is on-going. It is also likely that the group participants are geographically co-located. Current solutions use one dedicated radio channel (and core network) resource per group participant also in this scenario, which obviously is costly in terms of both radio and core network resources. It is thus foreseeable that such service may be used over a multicast (BCMCS) service.
Thus, herein provided is, e.g., a method for reducing access time and improve compression efficiency in broadcast/multicast IP services with unidirectional header compression within a multicast/broadcast multimedia system. The system generates a state transition signal external to the header compression algorithm to trigger a compressor state transition. A trigger is derived using one or more broadcast/multicast channel acquisition events initiated by the remote unit. A downward transition is performed by the compressor for reducing the time required for the decompressor to reach static or full context. Preferably a transition to a lower compression state (e.g. IR state) occurs only upon reception of a state transition trigger from a system external to the header compression implementation (i.e. the conventional periodic downward transitions at the compressor are not performed). The header compressor and/or decompressor are/is implemented according to a header compression schemes in general.
Advantageously, the access time for IP multicast/broadcast services is improved when using Robust Header Compression (ROHC) in the unidirectional mode (U-mode) of operation, i.e., it minimizes the delay required for the decompressor in the remote unit to reach the Full Context (FC) state when joining the channel. In addition, the spectral efficiency of broadcast and multicast IP services is maximized by reducing the overhead incurred from the periodic sending of larger IR packets.
Advantageously, the access time is improved by using an explicit state transition trigger from the system to the compressor when a remote unit accesses a broadcast or a multicast IP service.
Thus, the embodiments described herein are particularly useful for one-to-many applications sent over multicast or broadcast radio channels (such as the so-called Push-to-talk VoIP application, or Push-to-talk over Cellular—PoC). The embodiments are also very relevant to the BroadCast MultiCast Services (BCMCS) currently being defined in 3GPP2 by the BCMCS ad-hoc group. The embodiments are also potentially useful for 3GPP's Multicast/Broadcast Multimedia System (MBMS) work item and in GSM-Satellite, if ROHC operating in U-Mode is used.
The embodiments are particularly applicable to most ROHC profiles, including (but not limited to) the ROHC LLA and the ROHC RTP header compression profiles. This is particularly applicable to most ROHC profiles, including—but not limited to—the ROHC-TCP (0x0006), ROHC RTP (0x0001), UDP (0x0002), IP (0x0004), ESP (0x0003), UDP-Lite (0x0008), RTP/UDP-Lite (0x0007) header compression profiles. Some of the proposed solutions also have the advantage of not requiring any change to any of the ROHC standards.
It should also be understood that the header decompression techniques and other activities described herein need not be performed at nodes or terminals identically structured as those herein illustrated and/or described. Rather, various functions can be distributed or separated to other nodes or devices, or even networks (e.g., core network and radio access network). Moreover, even the header compression functions can be distributed over plural nodes and/or devices, if desired.
In view, e.g., of the foregoing, the term “network node” as employed herein refers to any node or unit, or portion of node or unit, which performs, either in whole or in part, the context information transmission control described herein.
Further, the node or device which hosts the header compressor 25 may or may not be located more than one node or network interface away from a receiving entity. For example, mention herein that context information is sent over an air or radio interface to a receiving entity (e.g., remote unit 40) does not require that the header compressor 25 be situated in a node or location which borders the radio interface
While the invention has been described in connection with what is presently considered to be the most practical and preferred embodiment, it is to be understood that the invention is not to be limited to the disclosed embodiment, but on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.
Number | Date | Country | Kind |
---|---|---|---|
0400288-7 | Feb 2004 | SE | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/SE05/00144 | 2/1/2005 | WO | 8/3/2006 |