Pre-compensation of pdu set size values for transmission of media data via a network

By using end-to-end measurement and ratio calculation, the problem of inaccurate PDU set size caused by IP address type changes and segmented routing is solved, achieving efficient resource utilization and accurate PDU set size pre-compensation, applicable to both cellular and non-cellular systems.

CN122228686APending Publication Date: 2026-06-16QUALCOMM INC

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
QUALCOMM INC
Filing Date
2024-11-15
Publication Date
2026-06-16

AI Technical Summary

Technical Problem

During video data transmission, changes in IP address type, IP segmentation, and segmented routing can lead to inaccurate PDU set sizes, resulting in resource waste or insufficiency. Existing technologies cannot effectively solve this problem.

Method used

The ratio of the actual received PDU set size to the indicated PDU set size is calculated through end-to-end measurement, and the ratio is signaled through the user terminal device to pre-compensate for the PDU set size. For example, the ratio value is transmitted in the Session Description Protocol (SDP) message, or indicated using the Simple WebRTC Application Protocol (SWAP) message.

Benefits of technology

It achieves accurate PDU set size pre-compensation under different IP address types and network environments, avoiding resource waste, and is applicable to both cellular and non-cellular systems, reducing implementation costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122228686A_ABST
    Figure CN122228686A_ABST
Patent Text Reader

Abstract

An example device for retrieving media data includes a memory configured to store media data and a processing system implemented in circuitry configured to compute a cumulative size of a grouping of a set of protocol data units (PDUs) received from a source device, determine a signaled size of the set of PDUs, compute a ratio between the cumulative size and the signaled size, and transmit data representative of the ratio to the source device.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application claims priority to U.S. Patent Application No. 18 / 947,981, filed November 14, 2024; U.S. Provisional Application No. 63 / 599,930, filed November 16, 2023; and U.S. Provisional Application No. 63 / 717,667, filed November 7, 2024, the entire contents of each of which are incorporated herein by reference. U.S. Patent Application No. 18 / 947,981, filed November 14, 2024, claims the benefit of U.S. Provisional Application No. 63 / 599,930, filed November 16, 2023; and U.S. Provisional Application No. 63 / 717,667, filed November 7, 2024. Technical Field

[0002] This disclosure relates to the transmission of media data. Background Technology

[0003] Digital video capabilities can be incorporated into a wide range of devices, including digital televisions, digital direct broadcasting systems, wireless broadcasting systems, personal digital assistants (PDAs), laptops or desktop computers, digital cameras, digital recording devices, digital media players, video game devices, video game consoles, cellular or satellite broadcast phones, video conferencing equipment, and more. Digital video devices implement video compression technologies (such as those described in standards defined by MPEG-2, MPEG-4, ITU-T H.263 or ITU-T H.264 / MPEG-4, Part 10, Advanced Video Decoding (AVC), ITU-T H.265 (also known as High Efficiency Video Decoding (HEVC)), and extensions to these standards) to transmit and receive digital video information more efficiently.

[0004] After video data is encoded, it can be packaged for transmission or storage. Video data can be assembled into video files that conform to any of various standards, such as the International Organization for Standardization (ISO) Basic Media File Format and its extensions, such as AVC. Summary of the Invention

[0005] This disclosure generally describes techniques for exchanging media data. Specifically, when media data is exchanged over a network, the media data can be grouped into sets of Protocol Data Units (PDUs). Each PDU set may correspond to a group of network packets (such as IP packets). IP packets may be fragmented, and various networks support various IP address types, such as IPv4 and IPv6. Routers intermediate in the end-to-end path may add additional packet headers, such as a Fragmented Routing Header (SRH). A PDU set size value may be transmitted to indicate the expected amount of data in the PDU set, enabling the destination device to correctly recover the data (e.g., perform IP reassembly).

[0006] However, changes in IP address types, IP fragmentation, and fragmentation routing as packets traverse a network can lead to inaccurate PDU set sizes for routers (e.g., base stations in a cellular network), resulting in wasted or insufficient resources in resource allocation. This disclosure describes techniques by which a transmitting device can pre-compensate for such problems by modifying the calculated PDU set size. For example, the destination device can transmit an indicator (e.g., a ratio value representing the ratio of the actual PDU set size to the PDU set size reported by signaling), and the source device can multiply its calculated PDU set size by this ratio to calculate a new PDU set size reported by signaling for subsequent PDU sets.

[0007] Additionally or alternatively, the destination device and / or devices along the network path between the destination device and the source device may determine whether (multiple) IP address types differ between the source device and the router performing resource allocation. The source device may then pre-compensate for the PDU set size based on these IP address type differences, for example, to account for differences in IP address header sizes between different IP address types.

[0008] In one example, a method for exchanging media data includes: calculating the cumulative size of packets of a set of Protocol Data Units (PDUs) received from a source device; determining the signal notification size of the PDU set; calculating the ratio between the cumulative size and the signal notification size; and transmitting data representing the ratio to the source device.

[0009] In another example, an apparatus for retrieving media data includes: a memory configured to store media data; and a processing system implemented in a circuit, the processing system being configured to: calculate the cumulative size of packets of a set of Protocol Data Units (PDUs) received from a source device; determine the signal notification size of the PDU set; calculate the ratio between the cumulative size and the signal notification size; and transmit data representing the ratio to the source device.

[0010] In another example, a computer-readable storage medium has instructions stored thereon that, when executed, cause a processing system to: calculate the cumulative size of packets of a set of Protocol Data Units (PDUs) received from a source device; determine the signal notification size of the PDU set; calculate the ratio between the cumulative size and the signal notification size; and transmit data representing the ratio to the source device.

[0011] Details of one or more examples are set forth in the accompanying drawings and the following description. Other features, objects, and advantages will be apparent from these descriptions and drawings, and from the claims. Attached Figure Description

[0012] Figure 1 This is a block diagram illustrating an example system for implementing a technology for exchanging media data over a network.

[0013] Figure 2 This is a block diagram illustrating the elements of the example video file.

[0014] Figure 3 This is a flowchart illustrating an example method for exchanging media data according to the technology of this disclosure.

[0015] Figure 4 This is a flowchart illustrating another example method for exchanging media data according to the technology of this disclosure.

[0016] Figure 5 This is a flowchart illustrating another example method for exchanging media data according to the technology of this disclosure.

[0017] Figure 6 This is a flowchart illustrating another example method for exchanging media data according to the technology of this disclosure.

[0018] Figure 7 This is a flowchart illustrating an example method that can be performed by a user equipment (UE) device when participating in a media communication session, according to the technology of this disclosure. Detailed Implementation

[0019] Generally, this disclosure describes techniques for exchanging media data over a network. The network may be a 5G network, a 6G network, or another radio access network (RAN). A Protocol Data Unit (PDU) set represents one or more PDUs, each carrying a payload of information units generated at the application level. Thus, for example, a PDU may include video data frames, slices of video data frames, audio data, computer graphics data, or other media data for extended reality (XR) services. This definition of a PDU set is included in 3GPP TS 23.501 v.18.1.0.

[0020] When two (or more) devices participate in an XR session, one device can transmit the PDU set size to another device. The PDU set size represents the total size of all PDUs in the PDU set to which a specific PDU belongs, including the corresponding RTP / UDP / IP header encapsulation overhead. The RTP (Real-Time Transport Protocol) transmitter can calculate the PDU set size (PSSize) and include this PSSize value in the RTP header extension of the RTP packets transmitted to the RTP receiver. For example, the RTP transmitter can include the PSSize value in the GPRS Tunneling Protocol User Plane (GTP-U) packet header during GTP-U encapsulation at the User Plane Function (UPF), which aids in resource allocation for over-the-air transmission. The PSSize value may include the size of the IP packet header and other packet headers.

[0021] However, due to network tunneling (e.g., IPv4-v6 tunneling, Carrier-Grade Network Address Translation (CGNAT), or Network Address Translation Protocol Translation (NAT-PT)), IP fragmentation, or other such issues, the IP address version (e.g., IPv4 or IPv6) used by the RTP transmitter locally to generate IP packets encapsulating RTP (and / or, in some cases, UDP (User Datagram Protocol)) packets may differ from the IP version transmitted to the User Plane Function (UPF) device. Therefore, the initially calculated PSSize value may be incorrect due to network operations that may, for example, change the PSSize, and the fact that the traffic source may not be configured with information indicating such operations.

[0022] In 3GPP SA2 / SA4, the source device generates a PDU set size (PSSize) value and appends it to the RTP header extension of the RTP packet carrying the PDU set of media data. In this way, information can be passed via a router (which performs User Plane Functions (UPF)) to the radio access network (RAN) to which the destination device is communicatively coupled for scheduling over-the-air transmission. The PSSize value takes into account the size of the IP packet header, which can vary based on the IP packet type (e.g., IPv4 uses a 20-bit IP packet header, while IPv6 uses a 40-bit IP packet header).

[0023] Several issues can arise along network routes / paths that may cause inaccurate PSSize values. For example, Network Address Translation (NAT) (e.g., by NAT46 / NAT64) and IP fragmentation can alter received packets, making the initially calculated PSSize value inaccurate at the destination device. For instance, in NAT46, an incoming IP packet with an IPv4 address will be translated into an IP packet with an IPv6 address; due to the different header sizes between IPv4 and IPv6, this results in a change in the total packet size. NAT64 presents the same problem in reverse.

[0024] Other operations that may cause inaccurate PSSize values ​​include IP fragmentation (where each increment in the number of IP packets adds an extra size to the IP packet header) and TURN (where a TURN server may add a STUN message header, STUN attributes, and transport address). There are other such operations, and more operations that alter the PSSize value may be developed in the future.

[0025] Some techniques designed to address these issues focus on using Application Functions (AFs) to resolve NAT46 / NAT64 problems. In such techniques, the AF detects the use of NAT46 / NAT64 at the source and signals this use to the UPF, which then corrects the PSSize by adjusting the PSSize captured from the transmitted RTP packets. However, these techniques do not solve IP fragmentation problems, nor do they address fragmented routing. In fragmented routing (e.g., via MPLS or IPv6), the ingress router can add a fragmented routing header to incoming packets and send out packets with an increased total packet header size.

[0026] This disclosure recognizes that even if a solution to the IP segmentation problem is found, the case-by-case approach may still be incomplete because the specific implementations of Internet Protocol and the deployment of routers on the Internet are diverse and constantly evolving. Furthermore, the case-by-case approach may overlook other existing problems or fail to anticipate problems that may arise in future network developments. The implementation costs of technologies requiring additional processing in routers can be very high.

[0027] Therefore, the techniques disclosed herein include a pre-compensation method based on end-to-end measurement and an IP version signaling notification method. The pre-compensation method based on end-to-end measurement is universal and does not require determining the cause of the PSSize mismatch; it does not require additional processing by the network router and is applicable to both cellular and non-cellular systems, such as Wi-Fi.

[0028] This disclosure describes techniques for addressing such problems, including signaling a correction ratio that can be calculated by the user equipment as the actual received PSSize value to the indicated PSSize value. The actual received PSSize value can be observed by the user / receiver equipment (e.g., a user equipment (UE) device), which includes the size of the media and various packet headers (e.g., IP, UDP, RTP, and QUIC). The indicated PSSize is the PSSize carried in the RTP header extension of the PDU set.

[0029] This disclosure further describes techniques for signaling the ratio. For example, the ratio can be signaled in a Session Description Protocol (SDP) message. This disclosure describes techniques related to how SDP messages can be transmitted, how to use the Simple WebRTC Application Protocol (SWAP) “apply” message to indicate errors with a reduced message size, and new SWAP messages. SWAP descriptions are found, for example, in TS 26.113 v18.1.0 “3rd Generation Partnership Project; Technical Specification Group Services and Systems; Real-Time Media Communication; Protocols and APIs (Release 18)” (2024-09), which is available at portal.3gpp.org / desktopmodules / Specifications / SpecificationDetails.aspx?specificationId=4041.

[0030] Figure 1 This is a block diagram illustrating an example system 10 for implementing techniques for streaming media data over a network. In this example, system 10 includes a content preparation device 20, a server device 60, and a client device 40. Client device 40 and server device 60 are communicatively coupled via a network 74, which may include the Internet. In some examples, content preparation device 20 and server device 60 may also be coupled via network 74 or another network, or may be directly communicatively coupled. In some examples, content preparation device 20 and server device 60 may include the same device.

[0031] exist Figure 1In the example, content preparation device 20 includes an audio source 22 and a video source 24. Audio source 22 may include, for example, a microphone that generates electrical signals representing captured audio data to be encoded by audio encoder 26. Alternatively, audio source 22 may include: a storage medium storing previously recorded audio data; an audio data generator, such as a computerized synthesizer; or any other audio data source. Video source 24 may include: a video camera that generates video data to be encoded by video encoder 28; a storage medium encoding previously recorded video data; a video data generation unit, such as a computer graphics source; or any other video data source. Content preparation device 20 is not necessarily communicatively coupled to server device 60 in all examples, but multimedia content may be stored on a separate medium that is read by server device 60.

[0032] The raw audio and video data may include analog or digital data. Analog data may be digitized before being encoded by audio encoder 26 and / or video encoder 28. While a speaker is speaking, audio source 22 may obtain audio data from that speaker, and video source 24 may simultaneously obtain video data of that speaker. In other examples, audio source 22 may include a computer-readable storage medium containing stored audio data, and video source 24 may include a computer-readable storage medium containing stored video data. Thus, the techniques described in this disclosure can be applied to live, streaming, real-time audio and video data, or to archived, pre-recorded audio and video data.

[0033] An audio frame corresponding to a video frame is typically an audio frame containing audio data, which is simultaneously captured (or generated) by audio source 22 and video data captured (or generated) by video source 24 and contained within the video frame. For example, when a speaker typically generates audio data by speaking, audio source 22 captures the audio data, and video source 24 simultaneously (i.e., while audio source 22 is capturing audio data) captures the speaker's video data. Therefore, an audio frame can temporally correspond to one or more specific video frames. Thus, an audio frame corresponding to a video frame typically corresponds to the following situation: in which audio data and video data are captured simultaneously, and in this situation, the audio frame and video frame respectively include the simultaneously captured audio data and video data.

[0034] In some examples, audio encoder 26 may encode a timestamp into each encoded audio frame, where the timestamp indicates the time when the audio data for the encoded audio frame was recorded, and similarly, video encoder 28 may encode a timestamp into each encoded video frame, where the timestamp indicates the time when the video data for the encoded video frame was recorded. In such examples, the audio frame corresponding to the video frame may include: an audio frame including a timestamp, and a video frame including the same timestamp. Content preparation device 20 may include an internal clock, which audio encoder 26 and / or video encoder 28 may use to generate timestamps, or audio source 22 and video source 24 may use the internal clock to associate audio and video data with timestamps, respectively.

[0035] In some examples, audio source 22 may transmit data corresponding to the time when the audio data was recorded to audio encoder 26, and video source 24 may transmit data corresponding to the time when the video data was recorded to video encoder 28. In some examples, audio encoder 26 may encode sequence identifiers into the encoded audio data to indicate the relative time order of the encoded audio data, rather than the absolute time when the audio data was recorded; similarly, video encoder 28 may use sequence identifiers to indicate the relative time order of the encoded video data. Similarly, in some examples, sequence identifiers may be mapped or otherwise associated with timestamps.

[0036] Audio encoder 26 typically produces encoded audio data streams, while video encoder 28 produces encoded video data streams. Each individual data stream (whether audio or video) can be referred to as an elementary stream. An elementary stream is a single, digitally decoded (possibly compressed) component of a media presentation. For example, the decoded video or audio portion of a media presentation can be an elementary stream. Elementary streams can be converted into Packed Elementary Streams (PES) before being encapsulated into a video file. Within the same media presentation, stream IDs can be used to distinguish PES packets belonging to one elementary stream from those belonging to another. The basic unit of data in an elementary stream is the packed elementary stream (PES) packet. Therefore, decoded video data typically corresponds to an elementary video stream. Similarly, audio data corresponds to one or more corresponding elementary streams.

[0037] exist Figure 1In one example, the encapsulation unit 30 of the content preparation device 20 receives a base stream of video data including decoded data from the video encoder 28 and a base stream of audio data including decoded data from the audio encoder 26. In some examples, both the video encoder 28 and the audio encoder 26 may include packers for forming PES packets based on the encoded data. In other examples, both the video encoder 28 and the audio encoder 26 may interface with corresponding packers for forming PES packets based on the encoded data. In other examples, the encapsulation unit 30 may include packers for forming PES packets based on the encoded audio and video data.

[0038] Video encoder 28 is capable of encoding video data of multimedia content in various ways to produce different representations of the multimedia content at various bit rates and utilizing various characteristics such as pixel resolution, frame rate, compliance with various decoding standards, compliance with various profiles and / or profile levels used for various decoding standards, representations with one or more views (e.g., for two-dimensional or three-dimensional playback), or other such characteristics. As used in this disclosure, the representation may include one of the following: audio data, video data, text data (e.g., for closed captions), or other such data. The representation may include a primary stream, such as an audio primary stream or a video primary stream. Each PES packet may include a stream_id, which identifies the primary stream to which the PES packet belongs. Encapsulation unit 30 is responsible for assembling the primary streams into streamable media data.

[0039] Encapsulation unit 30 receives PES packets from audio encoder 26 and video encoder 28 for media presentation of the basic stream, and forms corresponding Network Abstraction Layer (NAL) units based on the PES packets. Decoded video segments can be organized into NAL units that provide a “network-friendly” video representation for addressing applications such as video telephony, storage, broadcasting, or streaming. NAL units can be classified as Video Decoding Layer (VCL) NAL units and non-VCL NAL units. VCL units may contain the core compression engine and may include block, macroblock, and / or slice-level data. Other NAL units may be non-VCL NAL units. In some examples, a picture of the decoded data in a time instance (typically presented as a picture of the main decoded data) may be included in an access unit, which may include one or more NAL units.

[0040] Non-VCL NAL units can include parameter set NAL units and SEI NAL units, etc. Parameter sets can contain sequence-level header information (in the Sequence Parameter Set (SPS)) and picture-level header information that changes very little (in the Picture Parameter Set (PPS)). Using parameter sets (e.g., PPS and SPS), it is not necessary to repeat information that changes very little for each sequence or picture; therefore, decoding efficiency can be improved. Furthermore, the use of parameter sets allows for out-of-band transmission of important header information, thus avoiding redundant transmissions required for error recovery. In an example of out-of-band transmission, parameter set NAL units can be transmitted on a different channel than other NAL units (such as SEI NAL units).

[0041] Supplemental Enhancement Information (SEI) can contain information that is not essential for decoding image samples from VCL NAL units but can assist in processes related to decoding, display, error recovery, and other purposes. SEI messages can be included in non-VCL NAL units. SEI messages are a specification part of some standards and are therefore not always mandatory for specific implementations of standards-compliant decoders. SEI messages can be sequence-level or image-level. Some sequence-level information can be included in SEI messages, such as the scalability information SEI message in the SVC example and the view scalability information SEI message in MVC. These example SEI messages can convey information such as the extraction and characteristics of operation points.

[0042] Server device 60 includes a Real-Time Transport Protocol (RTP) sending unit 70 and a network interface 72. In some examples, server device 60 may include multiple network interfaces. Furthermore, any or all of the features of server device 60 may be implemented on other devices in the content delivery network, such as routers, bridges, proxy devices, switches, or other devices. In some examples, intermediate devices in the content delivery network may cache data for multimedia content 64 and include components that substantially conform to the components of server device 60. Generally, network interface 72 is configured to transmit and receive data via network 74.

[0043] RTP sending unit 70 is configured to deliver media data to client device 40 via network 74 according to RTP, which is standardized in Internet Engineering Task Force (IETF) Request for Comments (RFC) 3550. RTP sending unit 70 may also implement RTP-related protocols such as RTP Control Protocol (RTCP), Real-time Streaming Protocol (RTSP), Session Initiation Protocol (SIP), and / or Session Description Protocol (SDP). RTP sending unit 70 can transmit media data via network interface 72, which implements Uniform Datagram Protocol (UDP) and / or Internet Protocol (IP). Therefore, in some examples, server device 60 may use network 74 to transmit media data via RTP and RTSP over UDP.

[0044] RTP sending unit 70 may receive RTSP description requests from, for example, client device 40. RTSP description requests may include data indicating what types of data the client device 40 supports. RTP sending unit 70 may respond to client device 40 with data indicating a media stream (such as media content 64), which may be transmitted to client device 40 together with a corresponding network location identifier (such as a Uniform Resource Locator (URL) or Uniform Resource Name (URN)).

[0045] Then, RTP sending unit 70 can receive an RTSP establishment request from client device 40. The RTSP establishment request typically indicates how the media stream will be transmitted. The RTSP establishment request may include a network location identifier and transmission specifier for the requested media data (e.g., media content 64), such as the local port used to receive RTP data and control data (e.g., RTCP data) on client device 40. RTP sending unit 70 can respond to the RTSP establishment request with acknowledgments and data representing the port of server device 60, through which the RTP data and control data will be transmitted. RTP sending unit 70 can then receive an RTSP playback request to allow the media stream to be "played," i.e., transmitted to client device 40 via network 74. RTP sending unit 70 can also receive an RTSP teardown request to terminate the streaming session; in response to this RTSP teardown request, RTP sending unit 70 can stop transmitting media data for the corresponding session to client device 40.

[0046] Similarly, RTP receiving unit 52 can initiate a media stream by initially sending an RTSP description request to server device 60. The RTSP description request can indicate the data types supported by client device 40. RTP receiving unit 52 can then receive from server device 60 a reply specifying an available media stream (such as media content 64) that can be transmitted to client device 40 along with a corresponding network location identifier (such as a Uniform Resource Locator (URL) or Uniform Resource Name (URN)).

[0047] Then, RTP receiving unit 52 can generate an RTSP establishment request and transmit it to server device 60. As noted above, the RTSP establishment request may include a network location identifier for the requested media data (e.g., media content 64) and a transport specification, such as the local port used to receive RTP data and control data (e.g., RTCP data) on client device 40. In response, RTP receiving unit 52 can receive an acknowledgment from server device 60, including the port of server device 60 used to transmit media data and control data.

[0048] After a media streaming session is established between server device 60 and client device 40, the RTP sending unit 70 of server device 60 can transmit media data (e.g., packets of media data) to client device 40 according to the media streaming session. Server device 60 and client device 40 can exchange control data (e.g., RTCP data) indicating, for example, the receive statistics of client device 40, so that server device 60 can perform congestion control or otherwise diagnose and resolve transmission failures.

[0049] Network interface 54 can receive selected media presentation and provide it to RTP receiving unit 52, which in turn can provide the media data to decapsulation unit 50. Decapsulation unit 50 can decapsulate the elements of a video file into a PES stream, unpack the PES stream to retrieve encoded data, and transmit the encoded data to audio decoder 46 or video decoder 48, depending on whether the encoded data is part of an audio stream or a video stream (e.g., as indicated by the PES packet header of the stream). Audio decoder 46 decodes the encoded audio data and transmits the decoded audio data to audio output 42, while video decoder 48 decodes the encoded video data and transmits the decoded video data (which may include multiple views of the stream) to video output 44.

[0050] Server device 60 may initially determine the PDU set size (PSSize) value of the PDU set, for example, based on the number of packets included in the PDU set, the IP, UDP, and RTP header sizes of each packet, and the payload size of the packets. RTP sending unit 70 may signal the PSSize value in the RTP extension header of the packets used for the PDU set.

[0051] Network interface 54 may include additional sub-units ( Figure 1 (Not shown in the diagram). For example, network interface 54 may include sub-units for processing layers of the OSI network model (e.g., Layer 1, Layer 2, Layer 3, etc.). Units at Layer 3 (transport layer) may be configured to perform certain techniques of this disclosure. For example, a Layer 3 unit (hereinafter referred to as a "Layer 3 unit") may receive packets of a set of Protocol Data Units (PDUs). If packets are fragmented, the Layer 3 unit may calculate the total cumulative size of IP packets belonging to a common PDU set before performing IP packet reassembly. This total cumulative size may be represented as PSSize_actual. The Layer 3 unit may also capture the PSSize of the signaled PDU set, which may be represented as PSSize_signaled. The Layer 3 unit may then calculate the ratio of the PDU set, for example, ratio(r) = PSSize_actual / PSSize_signaled. The Layer 3 unit may calculate this analog rate for all or a subset of the PDU set of a media session. If packet loss occurs, the Layer 3 unit can be configured to calculate only the ratio of the PDU set whose packets were fully received.

[0052] The third-layer unit can pass this ratio to the application layer (e.g., the Media Session Handler (MSH)). Figure 1 (Not shown in the diagram) to the RTP layer (by RTP receiving unit 52). RTP receiving unit 52 can then compare the ratio with a threshold or range (which may have already been announced / signaled in the RTP extended header or media session configuration information). This range may be, for example, [-0.95, +1.05]. If the ratio exceeds the threshold or is outside the range, RTP receiving unit 52 can signal the ratio to server device 60 and / or content preparation device 20. For example, RTP receiving unit 52 may transmit a Session Description Protocol (SDP) update message indicating the ratio.

[0053] When server device 60 receives data representing this analog rate from user device 40, server device 60 can update the PSSize value for signal notifications used in subsequent PDU sets based on this ratio. For example, if server device 60 calculates a new PSSize value for a subsequent PDU set using the same method as previously used to calculate the previous PSSize value, then server device 60 can update the new PSSize value based on the received ratio value. For example, if the new PSSize value is p and the ratio is r, then server device 60 can update the new PSSize value to be equal to p. Therefore, receiving the ratio value can trigger pre-compensation on server device 60 in this manner. That is, pre-compensation can be performed by calculating the updated PSSize value using the ratio value received from user device 40.

[0054] The video encoder 28, video decoder 48, audio encoder 26, audio decoder 46, encapsulation unit 30, RTP receiver unit 52, and decapsulation unit 50 can all be implemented as any of a variety of suitable processing circuits, such as one or more microprocessors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), discrete logic circuits, software, hardware, firmware, or any combination thereof. Each of the video encoder 28 and video decoder 48 can be included in one or more encoders or decoders, and either the video encoder or the video decoder can be integrated as part of a combined video encoder / decoder (CODEC). Similarly, each of the audio encoder 26 and audio decoder 46 can be included in one or more encoders or decoders, and either the audio encoder or the audio decoder can be integrated as part of a combined CODEC. The apparatus including the video encoder 28, video decoder 48, audio encoder 26, audio decoder 46, encapsulation unit 30, RTP receiver unit 52, and / or decapsulation unit 50 can include integrated circuits, microprocessors, and / or wireless communication devices, such as cellular phones.

[0055] Client device 40, server device 60, and / or content preparation device 20 may be configured to operate according to the techniques of this disclosure. For illustrative purposes, these techniques are described with respect to client device 40 and server device 60. However, it should be understood that content preparation device 20 may also be configured to perform these techniques as an alternative to (or other than) server device 60.

[0056] Encapsulation unit 30 can form NAL units, which include a header identifying the program to which the NAL unit belongs and a payload, such as audio data, video data, or data describing the transport or program stream corresponding to the NAL unit. For example, in H.264 / AVC, a NAL unit includes a 1-byte header and a payload of varying size. NAL units whose payloads include video data can include video data at various granularities. For example, a NAL unit can include video data blocks, multiple blocks, video data slices, or entire frames of video data. Encapsulation unit 30 can receive encoded video data in PES packet format with elementary streams from video encoder 28. Encapsulation unit 30 can associate each elementary stream with its corresponding program.

[0057] The encapsulation unit 30 can also assemble access units based on multiple NAL units. Generally, an access unit may include one or more NAL units representing a video data frame, and the corresponding audio data (when the audio data is available). Access units typically include all NAL units for a single output time instance, such as all audio and video data for a single time instance. For example, if each view has a frame rate of 20 frames per second (fps), each time instance may correspond to a time interval of 0.05 seconds. During this time interval, specific frames for all views with the same access unit (same time instance) can be rendered simultaneously. In one example, an access unit may include a decoded image within a time instance, which can be rendered as the primary decoded image.

[0058] Therefore, an access unit can include all audio and video frames of a common time instance, such as all views corresponding to time X. This disclosure also refers to the encoded picture of a particular view as a "view component." That is, a view component can include pictures (or frames) encoded for a particular view at a particular time. Therefore, an access unit can be defined as including all view components of a common time instance. The decoding order of the access units need not be the same as the output or display order.

[0059] After the encapsulation unit 30 has assembled the NAL units and / or access units into a video file based on the received data, the encapsulation unit 30 passes the video file to the output interface 32 for output. In some examples, the encapsulation unit 30 may store the video file locally or transmit the video file to a remote server via the output interface 32, instead of transmitting the video file directly to the client device 40. The output interface 32 may include, for example, a transmitter, a transceiver, a device for writing data to a computer-readable medium (such as, for example, an optical drive, a magnetic media drive (e.g., a floppy disk drive)), a universal serial bus (USB) port, a network interface, or other output interface. The output interface 32 outputs the video file to a computer-readable medium, such as, for example, a transmitting signal, a magnetic medium, an optical medium, a memory, a flash drive, or other computer-readable media.

[0060] Network interface 54 can receive NAL units or access units via network 74 and provide NAL units or access units to decapsulation unit 50 via RTP receiving unit 52. Decapsulation unit 50 can decapsulate the elements of the video file into a PES stream, unpack the PES stream to retrieve encoded data, and transmit the encoded data to audio decoder 46 or video decoder 48, depending on whether the encoded data is part of an audio stream or a video stream (e.g., as indicated by the PES packet header of the stream). Audio decoder 46 decodes the encoded audio data and transmits the decoded audio data to audio output 42, while video decoder 48 decodes the encoded video data and transmits the decoded video data (which may include multiple views of the stream) to video output 44.

[0061] Figure 2 This is a block diagram illustrating the elements of example video file 150. As described above, video files, according to the ISO Basic Media File Format and its extensions, store data in a series of objects called "boxes". Figure 2 In the example, video file 150 includes a file type (FTYP) box 152, a movie (MOOV) box 154, a segment index (sidx) box 162, a movie clip (MOOF) box 164, and a movie clip random access (MFRA) box 166. Although Figure 2 This represents an example of a video file, but it should be understood that other media files may include other types of structured media data similar to that of video file 150 (e.g., audio data, time-text data, or the like), according to the ISO Basic Media File Format and its extensions.

[0062] The File Type (FTYP) box 152 generally describes the file type of the video file 150. The File Type box 152 may include data identifying the specifications for the best use of the video file 150. The File Type box 152 may optionally be placed before the MOOV box 154, the Movie Clip box 164, and / or the MFRA box 166.

[0063] exist Figure 2 In the example, MOOV box 154 includes a Movie Header (MVHD) box 156, a Track (TRAK) box 158, and one or more Movie Extension (MVEX) boxes 160. Typically, the MVHD box 156 describes general characteristics of the video file 150. For example, the MVHD box 156 may include data describing when the video file 150 was initially created, when the video file 150 was last modified, the timestamp of the video file 150, the playback duration of the video file 150, or other data that generally describes the video file 150.

[0064] TRAK box 158 may include track data of video file 150. TRAK box 158 may include a Track Header (TKHD) box that describes the characteristics of the track corresponding to TRAK box 158. In some examples, TRAK box 158 may include decoded video images, while in other examples, the decoded video images of the track may be included in movie clip 164, which may be referenced by data from TRAK box 158 and / or sidx box 162.

[0065] In some examples, video file 150 may include more than one track. Therefore, MOOV box 154 may include TRAK boxes in a number equal to the number of tracks in video file 150. TRAK boxes 158 may describe the characteristics of the corresponding tracks in video file 150. For example, TRAK boxes 158 may describe the temporal and / or spatial information of the corresponding tracks. When encapsulation unit 30 ( Figure 1 When a parameter set track is included in a video file (such as video file 150), a TRAK box, similar to the TRAK box 158 of the MOOV box 154, can describe the characteristics of the parameter set track. The encapsulation unit 30 can signal the presence of a sequence level SEI message in the parameter set track within the TRAK box describing the parameter set track.

[0066] The MVEX box 160 can describe the characteristics of the corresponding movie clip 164, for example, by signaling to the video file 150 that, in addition to the video data (if any) included in the MOOV box 154, the movie clip 164 is also included. In the context of streaming video data, decoded video images may be included in the movie clip 164 instead of the MOOV box 154. Therefore, all decoded video samples may be included in the movie clip 164 instead of the MOOV box 154.

[0067] MOOV boxes 154 may include an equal number of MVEX boxes 160 as the number of movie segments 164 in the video file 150. Each MVEX box in the MVEX boxes 160 may describe the characteristics of a corresponding movie segment in the movie segment 164. For example, each MVEX box may include a Movie Extended Header Box (MEHD) box, which describes the time duration of a corresponding movie segment in the movie segment 164.

[0068] As noted above, encapsulation unit 30 may store the sequence dataset in a video sample that does not include the actual decoded video data. The video sample may typically correspond to an access unit, which is a representation of a decoded picture at a specific time instance. In the context of AVC, the decoded picture includes one or more VCL NAL units (containing information about all pixels used to construct the access unit) and other associated non-VCL NAL units (such as SEI messages). Therefore, encapsulation unit 30 may include a sequence dataset in a movie clip of movie clip 164, which may include a sequence-level SEI message. Encapsulation unit 30 may also signal the presence of the sequence dataset and / or the sequence-level SEI message as being present in a movie clip of movie clip 164 within an MVEX box of MVEX box 160 corresponding to a movie clip of movie clip 164.

[0069] SIDX box 162 is an optional element of video file 150. That is, video files conforming to 3GPP file formats or other such file formats do not necessarily include SIDX box 162. According to examples of 3GPP file formats, SIDX boxes can be used to identify sub-segments of a segment (e.g., a segment contained within video file 150). The 3GPP file format defines a sub-segment as "a self-contained set of one or more consecutive movie clip boxes having a corresponding media data box and a media data box containing data referenced by a movie clip box that must follow that movie clip box and precede the next movie clip box containing information about the same track." The 3GPP file format also instructs that the SIDX box "contains a series of references to sub-segments of the (sub)segment recorded by that box. The referenced sub-segments are sequential in presentation time. Similarly, the bytes referenced by the segment index box are always sequential within the segment. The size of the reference gives a count of the number of bytes in the referenced material."

[0070] SIDX box 162 typically provides information representing one or more sub-segments of a segment included in video file 150. For example, such information may include the playback time of the start and / or end of the sub-segment, the byte offset of the sub-segment, whether the sub-segment includes (e.g., begins at) a Stream Access Point (SAP), the type of SAP (e.g., whether the SAP is an Instant Decoder Refresh (IDR) picture, a Clean Random Access (CRA) picture, a Broken Link Access (BLA) picture, etc.), the location of the SAP within the sub-segment (in terms of playback time and / or byte offset), etc.

[0071] Movie clip 164 may include one or more decoded video images. In some examples, movie clip 164 may include one or more groups of pictures (GOPs), where each GOP may include several decoded video images, such as frames or pictures. Additionally, as described above, in some examples, movie clip 164 may include a sequence dataset. Each component of movie clip 164 may include a movie clip header box (MFHD). Figure 2 (Not shown in the image). MFHD boxes can describe the characteristics of the corresponding movie clips, such as the movie clip's sequence number. Movie clips 164 can be included in video file 150 in order of their sequence numbers.

[0072] MFRA box 166 can describe random access points within movie segments 164 of video file 150. This can help perform special effects modes, such as searching for specific time positions (i.e., playback times) within segments encapsulated by video file 150. In some examples, MFRA box 166 is typically optional and does not need to be included in the video file. Similarly, client devices (such as client device 40) do not necessarily need to refer to MFRA box 166 to correctly decode and display the video data of video file 150. MFRA box 166 can include a number equal to the number of tracks in video file 150, or in some examples, a number equal to the number of media tracks (e.g., non-cue tracks) in video file 150 (TFRA) boxes (not shown).

[0073] In some examples, movie clip 164 may include one or more streaming access points (SAPs), such as IDR pictures. Similarly, MFRA box 166 can provide an indication of the location within the SAP video file 150. Therefore, a temporal subsequence of video file 150 can be formed from the SAP of video file 150. The temporal subsequence may also include other pictures, such as SAP-dependent P-frames and / or B-frames. Frames and / or slices of the temporal subsequence can be arranged within segments such that frames / slices of the temporal subsequence that depend on other frames / slices of the subsequence can be correctly decoded. For example, in a hierarchical arrangement of data, data used for prediction of other data may also be included in the temporal subsequence.

[0074] Figure 3 This is a flowchart illustrating an example method for exchanging media data according to the technology of this disclosure. In this example, initially, the application server (AS) (which may correspond to...) Figure 1 The server device 60) determines the PSSize value of a PDU set that includes one or more packets of media data. The AS can then transmit packets (200) of the PDU set.

[0075] For example, when the maximum transmission unit (MTU) size of a network connection does not support the packet size, routers along the network path can receive these packets and perform IP fragmentation (202). Although Figure 3 IP fragmentation is described as an operation that modifies the PSSize value of a PDU set, but additional or alternative operations such as NAT46 / NAT64, TURN, etc., can also be performed. The router forwards the fragmented IP packets to a User Plane Function (UPF) device (204). The UPF device encapsulates the fragmented packets using, for example, GTP-U encapsulation. The UPF device then forwards the encapsulated fragmented IP packets to a base station, such as a gNB (206).

[0076] The gNB decapsulates the packets and allocates resources (e.g., time, frequency, and / or spatial domain resources) to the PDU set based on the PSSize carried in the RTP header of the RTP packet containing the PDU set. The gNB then transmits the segmented packets to the UE (e.g., ...). Figure 1 User terminal devices 40)(208).

[0077] The UE receives packets from the gNB. The UE can then calculate how to adjust the PSSize, for example, by calculating the ratio of the cumulative actual size of the received packets in the PDU set to the advertised PSSize value of the PDU set (210). If necessary, the UE can indicate how to adjust the PSSize, for example, by signaling the ratio to the AS in an SDP update message (212). The UE can then perform IP reassembly of the segmented packets (214) and continue processing the packets for presentation (e.g., capturing RTP packets and RTP payloads, decoding and rendering media data in the payloads).

[0078] In some examples, the UE or other receiving endpoint (which receives the first set of PDUs) indicates the PSSize correction ratio via an SDP update (e.g., an SDP proposal). The UE may transmit the SDP update as part of a SIP re-INVITE message, which is an invitation (INVITE) message transmitted after the session is established. The sending endpoint (which transmits the first set of PDUs) may respond with an acknowledgment, such as a SIP 200 OK message carrying an SDP acknowledgment message.

[0079] Alternatively, the UE or other receiving endpoint may transmit a SWAP message, for example, with message type "Update" or "Connection". The sending endpoint may reply with an acknowledgment, for example, with message type "Accept" and carrying an SDP acknowledgment message.

[0080] As another example, the UE or other receiving endpoint may pass an SDP proposal message to a JavaScript Session Establishment Protocol (JSEP) executed on the UE or other receiving endpoint, and the JSEP may then pass the SDP proposal message to the sending endpoint. In response to the JSEP message, the sending endpoint may generate an SDP acknowledgment message and pass it to its JSEP, which then passes the SDP acknowledgment message to the UE or other receiving endpoint.

[0081] As another example, the receiving endpoint can use a SWAP message with the message type "Application" to indicate the PSSize correction ratio. The SWAP "Application" message may include a target parameter indicating the identifier (ID) of the endpoint sending the first PDU set. The SWAP "Application" message may also include a type value, such as "3gpp-release19-PSSize-correction-ratio". The SWAP "Application" message may further include a value for the ratio expressed as a decimal, such as 1.02. The sending endpoint can use a SWAP message with the message type "Application" to reply with an acknowledgment. The SWAP "Application" message may include a target parameter indicating the ID of the endpoint transmitting the PSSize correction ratio, as well as a type value (e.g., "3gpp-release19-PSSize-correction-ratio-ack"). Compared to SDP update messages, SWAP "Application" messages may have a reduced message size because when using SDP messages, information needs to be retransmitted for each media stream (identified by the "m=" line), even if the media stream corresponding to the m=" line has not changed.

[0082] As another example, the PSSize correction ratio can be indicated by a dedicated SWAP message type. A new message type (e.g., "PSSizeCorrection") can be dedicated to signaling the PSSize correction ratio. The receiving endpoint (which receives the first PDU set) can use a SWAP message of type "PSSizeCorrection" to indicate the PSSize correction ratio. The SWAP message may include a target parameter value indicating the identifier (ID) of the endpoint sending the first PDU set and a ratio value expressed as a decimal (e.g., 1.02). The sending endpoint (which sends the first PDU set) can use a SWAP message of type "PSSizeCorrectionAck" to respond with an acknowledgment. This message may include a target value indicating the ID of the endpoint transmitting the PSSize correction ratio.

[0083] In response to receiving a PSSize adjustment indicator (e.g., in an SDP update message or a SWAP message), the AS can perform pre-compensation (216) on subsequent PDU sets. That is, according to the techniques of this disclosure, the AS can calculate an initial PDU set size and then multiply the initial PDU set size by the ratio to form the new advertised PDU set size for that PDU set. The AS can then signal the new advertised PDU set size in the RTP header extension for the PDU set and transmit an IP packet containing the new advertised PDU set size to the UE via a router (218), as described above.

[0084] In this way, Figure 3 The method represents an example of a method for exchanging media data, which includes: calculating the cumulative size of packets of a set of Protocol Data Units (PDUs) received from a source device; determining the signal notification size of the PDU set; calculating the ratio between the cumulative size and the signal notification size; and transmitting data representing the ratio to the source device.

[0085] Figure 4 This is a flowchart illustrating another example method for exchanging media data according to the technology of this disclosure. In this example, it is assumed that the last accessing network node (e.g., a base station such as a gNB or a Wi-Fi access point) performs IP reassembly on the segmented packets. As... Figure 3 For example, initially, the application server (AS) (which may correspond to...) Figure 1 The server device 60) determines the PSSize value of a PDU set that includes one or more packets of media data. Then, the AS transmits packets of the PDU set (240).

[0086] For example, when the maximum transmission unit (MTU) size of the network connection does not support the packet size, routers along the network path can receive packets and perform IP fragmentation (242). The routers then transmit the fragmented IP packets to a User Plane Function (UPF) device (244). The UPF device encapsulates the fragmented packets using, for example, GTP-U encapsulation. The UPF device then transmits the encapsulated fragmented IP packets to a base station, such as a gNB (246).

[0087] However, as mentioned above, in Figure 4 In the example, the gNB performs IP reassembly on the segmented packets. Therefore, in Figure 4 In this example, the gNB receives segmented packets of a PDU set with a signaled PSSize value transmitted by an AS device. In this example, the gNB calculates the cumulative size of the packets and calculates the ratio of the cumulative size to the signaled PSSize value (248). The gNB then transmits the ratio value to the UE, for example via a Radio Resource Control (RRC) message, MAC CE, or DCI (250). The gNB also reassembles IP packets (252) and transmits the reassembled packets to the UE (254).

[0088] The UE can then determine whether to transmit the ratio value to the AS, for example, based on whether the ratio value is outside a predetermined range or exceeds a threshold. Assuming the UE determines to transmit the ratio, the UE signals the ratio value to the AS, for example, using an SDP update message (256). The AS can then pre-compensate the PSSize value of the subsequent PDU set (258) and transmit an IP packet (260) for signaling the pre-compensated PSSize value of the next PDU set.

[0089] In some examples, the gNB can perform the same procedure for multiple PDU sets (e.g., individual PDU sets in QoS traffic or subsets of all PDU sets). Instead of calculating a unique ratio, the gNB can calculate the cumulative average ratio and transmit the current cumulative average ratio to the UE. In the event of packet loss, the gNB can perform ratio calculation only for the PDU set for which all packets were received. In some examples, for cellular networks, the gNB can use one or more of Radio Resource Control (RRC) messages, MAC Control Element (MAC CE) messages, or Downlink Control Information (DCI) messages to transmit the ratio value to the UE; or in Wi-Fi scenarios, the gNB can use 802.11 MAC layer management messages to transmit the ratio value to the UE.

[0090] Figure 5This is a flowchart illustrating another example method for exchanging media data according to the techniques of this disclosure. These techniques can be used without performing IP segmentation. In this example, after a communication session is established (300) between the application server (AS) and the user equipment (UE) device, the application function (AF) of the UE device signals the router IP address type of the UE's network to the AS device (302). The router IP address type refers to the IP address type of the router performing resource allocation. For example, the router IP address type may be IPv4 or IPv6. In some examples, the AS device may obtain the router IP address type during the establishment of the communication session. In some examples, the router IP address type is the same as the IP address type of the destination device.

[0091] The AS device can then pre-compensate the PSSize value (304) based on the router and the UE's IP address type. For example, the AS device can determine the router's IP address type. Then, the AS device can calculate the PSSize value for the signal notification, which is equal to the calculated PSSize value + N. ((Router IP Address Type Header Size) – (Local IP Address Type Header Size at Source Device)). If the router IP address type is IPv4, the router IP address type header size can be 20 bits. If the router IP address type is IPv6, the header size can be 40 bits. If the local IP address type at the source device is IPv4, the local IP address type header size at the source device can be 20 bits. If the local IP address type at the source device is IPv6, the header size can be 40 bits. N represents the number of PDUs (e.g., IP packets) in the PDU set. The AS device can then transmit IP packets (306) including the PDU set with the compensated PSSize value.

[0092] Therefore, according to Figure 5The method involves an entity (such as an AF device or the UE itself) obtaining the IP address type seen by a router in the network (represented as router IP address type) from packets received from a transmitter (e.g., an AS device). The entity can determine the router IP address type from the IP 5-tuple {source device IP address, destination device IP address, source port, destination port, protocol} in the QoS settings. An example of a router could be a User Plane Function (UPF). A transmitter could be an AS device or another terminal device (e.g., a phone on a Wi-Fi network). The IP address type seen by the UPF can be the same as the IP address type seen by the UE / destination device. The UE can obtain the router IP address from the AF. The UPF can signal the IP address type it determined when forwarding RTP packets to the SMF, which can then forward them to the core network (e.g., Policy and Charging Function (PCF) devices and / or Session Management Function (SMF)).

[0093] This entity can signal the IP address type to the AS device. If the entity is an AF device and the transmitter is an AS device, the signaling can be sent directly from the AF device to the AS device. Signaling can be based on an SDP proposal / acknowledgment between the receiver and the transmitter.

[0094] Figure 6 This is a flowchart illustrating another example method for exchanging media data according to the technology of this disclosure. Figure 6 The method is similar to Figure 5 The method involves the AF device transmitting the router IP address type to the UE, except that in this case, the AF device prompts the UE (e.g., via SDP) to signal the router IP address type to the AS device. Therefore, the AF device can transmit the router IP address type to the UE so that the UE can transmit the router IP address type to the AS device, instead of the AF device directly transmitting the router IP address type to the AS device.

[0095] That is, in Figure 6 In the example, the UE device and the AS device establish a communication session (320). The AF device may transmit data indicating the router IP address type to the UE (322). This allows the UE device to indicate the indicated router IP address type to the AS device, for example, via an SDP message (324). Based on the router IP address type, the AS device may pre-compensate a PSSize value (326). The router IP address type may be, for example, IPv4 or IPv6. The AS device may then transmit an IP packet containing a set of PDUs indicating the compensated PSSize value to the UE device (328).

[0096] Figure 7This is a flowchart illustrating an example method that a User Equipment (UE) device can perform when participating in a media communication session according to the technology of this disclosure. Initially, after establishing a media communication session, the UE device receives a packet (350) containing a set of PDUs including media data. The packet of the PDU set may include an RTP header extension that signals the PDU set size (PSSize) value. Therefore, the UE device can determine the PSDize value of the PDU set (352).

[0097] The UE device can also calculate the cumulative size of the received packets in the PDU set (354). Due to IP packet fragmentation and reassembly in the network, the cumulative size may change relative to the PSSize value reported by the signaling. Therefore, the UE device can calculate the ratio between the cumulative size and the PSSize value reported by the signaling (356).

[0098] The UE device may determine whether to transmit ratio data based on a ratio value (358). For example, the UE device may receive one or more threshold values ​​for the ratio value from an application server (AS) device. In one example, the UE device may receive an upper limit ratio value, and if the calculated ratio value exceeds the upper limit ratio value, the UE device may determine to transmit data representing that ratio to the AS device. In another example, the UE device may receive an upper limit and a lower limit defining a range for the ratio value, and if the calculated ratio value is outside the defined range (e.g., above the upper limit or below the lower limit), the UE device may determine to transmit data representing that ratio value to the AS device.

[0099] exist Figure 7 In the example, suppose the UE device determines that it needs to transmit data representing a ratio value. Therefore, in response to this determination, the UE device transmits data representing the ratio value (360). For example, the UE device may transmit the ratio value itself to the AS device, for example, in an SDP message. As another example, the UE device may calculate the offset between the cumulative size value and the PSSize value (or the target ratio between the cumulative size and the PSSize value) and signal the offset value to the AS device in an SDP.

[0100] In this way, Figure 7 The method represents an example of a method for exchanging media data, the method comprising: calculating the cumulative size of packets of a set of Protocol Data Units (PDUs) received from a source device; determining the signal notification size of the PDU set; calculating the ratio between the cumulative size and the signal notification size; and transmitting data representing the ratio to the source device.

[0101] Various examples of the techniques disclosed herein are summarized in the following provisions:

[0102] Clause 1: A method for exchanging media data, the method comprising: calculating the cumulative size of packets of a set of Protocol Data Units (PDUs) received from a source device; determining the signal notification size of the PDU set; calculating a ratio between the cumulative size and the signal notification size; and transmitting data representing the ratio to the source device.

[0103] Clause 2: The method according to Clause 1, wherein transmitting the data representing the ratio to the source device comprises: determining whether the ratio exceeds at least one threshold; and in response to determining that the ratio exceeds the at least one threshold, transmitting the data representing the ratio to the source device.

[0104] Clause 3: The method according to Clause 2 further includes receiving data from the source device defining the at least one threshold.

[0105] Clause 4: The method according to Clause 1, wherein transmitting the data representing the ratio to the source device comprises: determining whether the ratio is within a defined range; and in response to determining that the ratio is not within a defined range, transmitting the data representing the ratio to the source device.

[0106] Clause 5: The method described in Clause 4 further includes receiving data from the source device that defines the defined range.

[0107] Clause 6: The method according to any one of Clauses 1 to 5, wherein transmitting the data representing the ratio includes transmitting a Session Description Protocol (SDP) update message to the source device.

[0108] Clause 7: The method according to any one of Clauses 1 to 6, the method further comprising performing IP packet reassembly of the packets of the PDU set, wherein calculating the cumulative size of the packets includes calculating the cumulative size of the packets prior to performing IP packet reassembly of the packets of the PDU set.

[0109] Clause 8: The method according to any one of Clauses 1 to 7, wherein the method is performed by a unit performing OSI model layer 3 processing on the group, the method further comprising providing the ratio to an OSI model layer 7 processing unit.

[0110] Clause 9: The method described in Clause 8, wherein the OSI model Layer 7 processing unit includes a Media Session Disposer (MSH).

[0111] Clause 10: The method according to any one of Clauses 1 to 7, wherein the method is performed by a unit of the last access network node that also performs IP packet reassembly, the method further comprising transmitting the reassembled IP packets of the PDU set to a destination device, wherein transmitting the data representing the ratio to the source device comprises transmitting the data representing the ratio to the destination device so that the destination device transmits the data representing the ratio to the source device.

[0112] Clause 11: The method according to Clause 10, wherein the PDU set includes a first PDU set, the method further comprising, for a plurality of other PDU sets: calculating a cumulative size of packets received from the source device from the other PDU sets; determining a signal notification size of the other PDU sets; calculating a ratio between the cumulative size and a corresponding signal notification size; and transmitting data representing the ratio to the destination device so that the destination device transmits the data representing the ratio to the source device.

[0113] Clause 12: The method according to any one of Clauses 10 and 11, wherein transmitting the data representing the ratio to the destination device comprises transmitting one or more of a Radio Resource Control (RRC) message, a MAC Control Element (MAC CE) message, a Downlink Control Information (DCI) message, or a MAC Layer Management message to the destination device.

[0114] Clause 13: A method for exchanging media data, the method comprising: determining, by a device in a regional network, the destination device IP address type of packets of a set of Protocol Data Units (PDUs) received from a source device that does not perform IP segmentation, and the router IP address type used by a router in the regional network; and transmitting data representing the destination device IP address type and the router IP address type to the source device.

[0115] Clause 14: The method described in Clause 13, wherein the method is performed by a device performing an application function (AF).

[0116] Clause 15: The method according to any one of Clauses 13 and 14, wherein transmitting the data representing the destination device IP address type and the router IP address type comprises: transmitting the data representing the destination device IP address type and the router IP address type to the destination device, so that the destination device transmits the data representing the destination device IP address type and the router IP address type to the source device.

[0117] Clause 16: The method described in Clause 13, wherein the method is performed by a destination device that is the destination of the PDU set.

[0118] Clause 17: The method according to any one of Clauses 13 to 16, wherein the router performs a user plane function (UPF).

[0119] Clause 18: The method according to any one of Clauses 13 to 17, wherein the source device includes an application server (AS).

[0120] Clause 19: The method according to any one of Clauses 13 to 18, wherein transmitting the data representing the type of the public IP address includes transmitting a Session Description Protocol (SDP) message to the source device.

[0121] Clause 20: A method for exchanging media data, the method comprising: transmitting a first PDU set size (PSSize) associated with a first protocol data unit (PDU) set to a destination device; transmitting the first PDU set to the destination device; receiving from the destination device data representing a ratio between the cumulative packet size of received packets in the first PDU set and the first PSSize; calculating a second PSSize associated with a second PDU set based on the first PSSize and the ratio; transmitting the second PSSize to the destination device; and transmitting the second PDU set to the destination device.

[0122] Clause 21: A method for exchanging media data, the method comprising: transmitting a first PDU set size (PSSize) associated with a first protocol data unit (PDU) set to a destination device; transmitting the first PDU set to the destination device; receiving data representing a destination device IP address type and a router IP address type of a router including the network of the destination device; calculating a second PSSize associated with a second PDU set based on the destination device IP address type and the router IP address type; transmitting the second PSSize to the destination device; and transmitting the second PDU set to the destination device.

[0123] Clause 22: The method according to Clause 21, wherein calculating the second PSSize value comprises calculating the second PSSize according to: first PSSize + N ((Router IP address type header size) – (Destination device IP address type header size)), where N represents the number of packets included in the second PDU set.

[0124] Clause 23: The method described in Clause 22, wherein the size of the router IP address type header is equal to: 20 bytes when the router IP address type is IPv4; or 40 bytes when the router IP address type is IPv6.

[0125] Clause 24: The method according to any one of Clauses 22 and 23, wherein the destination device IP address type header size is equal to: 20 bits when the destination device IP address type is IPv4; or 40 bits when the destination device IP address type is IPv6.

[0126] Clause 25: An apparatus for retrieving media data, the apparatus comprising one or more components for performing the method according to any one of Clauses 1 to 24.

[0127] Clause 26: The device according to Clause 25, wherein the one or more components include a processing system, the processing system including one or more processors implemented in a circuit.

[0128] Clause 27: The device pursuant to Clause 25, wherein the device includes at least one of the following: an integrated circuit; a microprocessor; or a wireless communication device.

[0129] Clause 28: A computer-readable storage medium having instructions stored thereon, which, when executed, cause a processing system to perform the method according to any one of Clauses 1 to 24.

[0130] Clause 29: An apparatus for exchanging media data, the apparatus comprising: means for calculating the cumulative size of packets of a set of Protocol Data Units (PDUs) received from a source device; means for determining a signal notification size of the PDU set; means for calculating a ratio between the cumulative size and the signal notification size; and means for transmitting data representing the ratio to the source device.

[0131] Clause 30: An apparatus coupled to a regional network for exchanging media data, the apparatus comprising: means for determining the destination device IP address type of packets of a set of Protocol Data Units (PDUs) received from a source device that does not perform IP segmentation and the router IP address type used by a router of the regional network; and means for transmitting data representing the destination device IP address type and the router IP address type to the source device.

[0132] Clause 31: An apparatus for exchanging media data, the apparatus comprising: means for transmitting a first PDU set size (PSSize) associated with a first protocol data unit (PDU) set to a destination device; means for transmitting the first PDU set to the destination device; means for receiving from the destination device data representing a ratio between the cumulative packet size of received packets in the first PDU set and the first PSSize; means for calculating a second PSSize associated with a second PDU set based on the first PSSize and the ratio; means for transmitting the second PSSize to the destination device; and means for transmitting the second PDU set to the destination device.

[0133] Clause 32: An apparatus for exchanging media data, the apparatus comprising: components for transmitting a first PDU set size (PSSize) associated with a first protocol data unit (PDU) set to a destination device; components for transmitting the first PDU set to the destination device; components for receiving data representing a destination device IP address type and a router IP address type of a router including the network of the destination device; components for calculating a second PSSize associated with a second PDU set based on the destination device IP address type and the router IP address type; components for transmitting the second PSSize to the destination device; and components for transmitting the second PDU set to the destination device.

[0134] Clause 33: A method for exchanging media data, the method comprising: calculating a cumulative size of packets of a set of Protocol Data Units (PDUs) received from a source device; determining a signal notification size of the PDU set; calculating a ratio between the cumulative size and the signal notification size; and transmitting data representing the ratio to the source device.

[0135] Clause 34: The method according to Clause 33, wherein transmitting the data representing the ratio to the source device comprises: determining whether the ratio exceeds at least one threshold; and in response to determining that the ratio exceeds the at least one threshold, transmitting the data representing the ratio to the source device.

[0136] Clause 35: The method according to Clause 34 further includes receiving data from the source device defining the at least one threshold.

[0137] Clause 36: The method according to Clause 33, wherein transmitting the data representing the ratio to the source device comprises: determining whether the ratio is within a defined range; and in response to determining that the ratio is not within a defined range, transmitting the data representing the ratio to the source device.

[0138] Clause 37: The method according to Clause 36 further includes receiving data from the source device defining the defined range.

[0139] Clause 38: The method according to Clause 33, wherein transmitting the data representing the ratio includes transmitting a Session Description Protocol (SDP) update message to the source device.

[0140] Clause 39: The method according to Clause 33 further includes performing IP packet reassembly of the packets of the PDU set, wherein calculating the cumulative size of the packets includes calculating the cumulative size of the packets prior to performing IP packet reassembly of the packets of the PDU set.

[0141] Clause 40: The method according to Clause 33, wherein the method is performed by a unit performing OSI model layer 3 processing on the group, the method further comprising providing the ratio to an OSI model layer 7 processing unit.

[0142] Clause 41: The method according to Clause 40, wherein the OSI model Layer 7 processing unit includes a Media Session Disposer (MSH).

[0143] Clause 42: The method according to Clause 33, wherein the method is performed by a unit of the last access network node that also performs IP packet reassembly, the method further comprising transmitting the reassembled IP packets of the PDU set to the destination device, wherein transmitting the data representing the ratio to the source device includes transmitting the data representing the ratio to the destination device so that the destination device transmits the data representing the ratio to the source device.

[0144] Clause 43: The method according to Clause 42, wherein the PDU set includes a first PDU set, the method further comprising, for a plurality of other PDU sets: calculating a cumulative size of packets received from the source device from the other PDU sets; determining a signal notification size of the other PDU sets; calculating a ratio between the cumulative size and a corresponding signal notification size; and transmitting data representing the ratio to the destination device so that the destination device transmits the data representing the ratio to the source device.

[0145] Clause 44: The method according to Clause 33, wherein transmitting the data representing the ratio to the destination device includes transmitting one or more of a Radio Resource Control (RRC) message, a MAC Control Element (MAC CE) message, a Downlink Control Information (DCI) message, or a MAC Layer Management message to the destination device.

[0146] Clause 45: A method for exchanging media data, the method comprising: determining, by a device in a regional network, the destination device IP address type of packets of a set of Protocol Data Units (PDUs) received from a source device that does not perform IP segmentation, and the router IP address type used by a router in the regional network; and transmitting data representing the destination device IP address type and the router IP address type to the source device.

[0147] Clause 46: The method described in Clause 45, wherein the method is performed by a device performing an application function (AF).

[0148] Clause 47: The method according to Clause 45, wherein transmitting the data representing the destination device IP address type and the router IP address type comprises: transmitting the data representing the destination device IP address type and the router IP address type to the destination device, so that the destination device transmits the data representing the destination device IP address type and the router IP address type to the source device.

[0149] Clause 48: The method described in accordance with Clause 45, wherein the method is performed by a destination device that is the destination of the PDU set.

[0150] Clause 49: The method described in Clause 45, wherein the router performs User Plane Function (UPF).

[0151] Clause 50: The method according to Clause 45, wherein the source device includes an application server (AS).

[0152] Clause 51: The method according to Clause 45, wherein transmitting the data representing the type of the public IP address includes transmitting a Session Description Protocol (SDP) message to the source device.

[0153] Clause 52: A method for exchanging media data, the method comprising: transmitting a first PDU set size (PSSize) associated with a first protocol data unit (PDU) set to a destination device; transmitting the first PDU set to the destination device; receiving from the destination device data representing a ratio between the cumulative packet size of received packets in the first PDU set and the first PSSize; calculating a second PSSize associated with a second PDU set based on the first PSSize and the ratio; transmitting the second PSSize to the destination device; and transmitting the second PDU set to the destination device.

[0154] Clause 53: A method for exchanging media data, the method comprising: transmitting a first PDU set size (PSSize) associated with a first Protocol Data Unit (PDU) set to a destination device; transmitting the first PDU set to the destination device; receiving data representing a destination device IP address type and a router IP address type of a router including the network of the destination device; calculating a second PSSize associated with a second PDU set based on the destination device IP address type and the router IP address type; transmitting the second PSSize to the destination device; and transmitting the second PDU set to the destination device.

[0155] Clause 54: The method according to Clause 53, wherein calculating the second PSSize value comprises calculating the second PSSize according to: first PSSize + N ((Router IP address type header size) – (Destination device IP address type header size)), where N represents the number of packets included in the second PDU set.

[0156] Clause 55: The method described in Clause 54, wherein the size of the router IP address type header is equal to: 20 bits when the router IP address type is IPv4; or 40 bits when the router IP address type is IPv6.

[0157] Clause 56: The method described in Clause 54, wherein the size of the destination device IP address type header is equal to: 20 bits when the destination device IP address type is IPv4; or 40 bits when the destination device IP address type is IPv6.

[0158] Clause 57: A method for exchanging media data, the method comprising: calculating a cumulative size of packets of a set of Protocol Data Units (PDUs) received from a source device; determining a signal notification size of the PDU set; calculating a ratio between the cumulative size and the signal notification size; and transmitting data representing the ratio to the source device.

[0159] Clause 58: The method according to Clause 57 further includes determining, based on the ratio, the data representing the ratio to be transmitted to the source device.

[0160] Clause 59: The method according to Clause 57, wherein transmitting the data representing the ratio comprises: determining that the ratio exceeds at least one threshold; and in response to the determination that the ratio exceeds the at least one threshold, transmitting the data representing the ratio to the source device.

[0161] Clause 60: The method according to Clause 59 further includes receiving data from the source device defining the at least one threshold.

[0162] Clause 61: The method according to Clause 57, wherein transmitting the data representing the ratio comprises: determining that the ratio is not within a defined range; and in response to the determination that the ratio is not within a defined range, transmitting the data representing the ratio to the source device.

[0163] Clause 62: The method according to Clause 61 further includes receiving data from the source device defining a defined range.

[0164] Clause 63: The method according to Clause 57, wherein the data representing the ratio includes data that explicitly indicates the ratio.

[0165] Clause 64: The method according to Clause 57, wherein the data representing the ratio includes data indicating the amount by which the signal notification size needs to be adjusted to achieve the target ratio between the cumulative size and the signal notification size.

[0166] Clause 65: The method according to Clause 64 further includes: determining that the amount by which the size of the transmitted signal notification needs to be adjusted exceeds at least one threshold; and in response to the determination that the amount by which the size of the transmitted signal notification needs to be adjusted exceeds the at least one threshold, transmitting data representing the amount by which the size of the transmitted signal notification needs to be adjusted to the source device.

[0167] Clause 66: The method according to Clause 64 further includes: determining that the amount by which the size of the transmitted signal notification needs to be adjusted is not within a defined range; and in response to determining that the amount by which the size of the transmitted signal notification needs to be adjusted is not within a defined range, transmitting data indicating that the amount by which the size of the transmitted signal notification needs to be adjusted is to the source device.

[0168] Clause 67: The method according to Clause 57, wherein transmitting the data representing the ratio includes transmitting a Session Description Protocol (SDP) update message to the source device.

[0169] Clause 68: The method according to Clause 57 further includes performing IP packet reassembly of the packets of the PDU set, wherein calculating the cumulative size of the packets includes calculating the cumulative size of the packets prior to performing IP packet reassembly of the packets of the PDU set.

[0170] Clause 69: The method according to Clause 57, wherein the method is performed by a unit performing OSI model Layer 3 processing on packets, the method further comprising providing the ratio to the Media Session Disposer (MSH).

[0171] Clause 70: The method according to Clause 57, wherein the method is performed by a unit of the last access network node that also performs IP packet reassembly, the method further comprising transmitting the reassembled IP packets of the PDU set to a destination device, wherein transmitting the data representing the ratio to the source device comprises transmitting the data representing the ratio to the destination device so that the destination device transmits the data representing the ratio to the source device.

[0172] Clause 71: The method according to Clause 70, wherein the PDU set includes a first PDU set, the method further comprising, for a plurality of other PDU sets: calculating a cumulative size of packets of the other PDU sets received from the source device; determining a signal notification size of the other PDU sets; calculating a ratio between the cumulative size and a corresponding signal notification size; and transmitting data representing the ratio to the destination device so that the destination device transmits the data representing the ratio to the source device.

[0173] Clause 72: The method according to Clause 70, wherein transmitting the data representing the ratio to the destination device includes transmitting one or more of a Radio Resource Control (RRC) message, a MAC Control Element (MAC CE) message, a Downlink Control Information (DCI) message, or a MAC layer management message to the destination device.

[0174] Clause 73: An apparatus for retrieving media data, the apparatus comprising: a memory configured to store media data; and a processing system implemented in a circuit, the processing system being configured to: calculate a cumulative size of packets of a set of Protocol Data Units (PDUs) received from a source device; determine a signal notification size of the PDU set; calculate a ratio between the cumulative size and the signal notification size; and transmit data representing the ratio to the source device.

[0175] Clause 74: The device according to Clause 73, wherein, in order to transmit the data representing the ratio, the processing system is configured to: receive at least one threshold from the source device; and, in response to determining that the ratio exceeds the at least one threshold, transmit the data representing the ratio.

[0176] Clause 75: The apparatus according to Clause 73, wherein, in order to transmit the data representing the ratio, the processing system is configured to: receive data defining a defined range from the source device; and, in response to determining that the ratio is not within the defined range, transmit the data representing the ratio.

[0177] Clause 76: A computer-readable storage medium having instructions stored thereon that, when executed, cause a processing system to: calculate the cumulative size of packets of a set of Protocol Data Units (PDUs) received from a source device; determine the signal notification size of the PDU set; calculate a ratio between the cumulative size and the signal notification size; and transmit data representing the ratio to the source device.

[0178] Clause 77: A method for exchanging media data, the method comprising: calculating a cumulative size of packets of a set of Protocol Data Units (PDUs) received from a source device; determining a signal notification size of the PDU set; calculating a ratio between the cumulative size and the signal notification size; and transmitting data representing the ratio to the source device.

[0179] Clause 78: The method according to Clause 77 further includes determining, based on the ratio, the data representing the ratio to be transmitted to the source device.

[0180] Clause 79: The method according to Clause 77, wherein transmitting the data representing the ratio comprises: determining that the ratio exceeds at least one threshold; and in response to the determination that the ratio exceeds the at least one threshold, transmitting the data representing the ratio to the source device.

[0181] Clause 80: The method according to Clause 79 further includes receiving data from the source device defining the at least one threshold.

[0182] Clause 81: The method according to Clause 77, wherein transmitting the data representing the ratio comprises: determining that the ratio is not within a defined range; and in response to the determination that the ratio is not within a defined range, transmitting the data representing the ratio to the source device.

[0183] Clause 82: The method according to Clause 81 further includes receiving data from the source device defining a defined range.

[0184] Clause 83: The method described in Clause 77, wherein the data representing the ratio includes data that explicitly indicates the ratio.

[0185] Clause 84: The method according to Clause 77, wherein the data representing the ratio includes data indicating the amount by which the signal notification size needs to be adjusted to achieve the target ratio between the cumulative size and the signal notification size.

[0186] Clause 85: The method according to Clause 84, the method further comprising: determining that the amount by which the size of the transmitted signal notification needs to be adjusted exceeds at least one threshold; and in response to the determination that the amount by which the size of the transmitted signal notification needs to be adjusted exceeds the at least one threshold, transmitting data representing the amount by which the size of the transmitted signal notification needs to be adjusted to the source device.

[0187] Clause 86: The method according to Clause 84, the method further comprising: determining that the amount by which the size of the transmitted signal notification needs to be adjusted is not within a defined range; and in response to determining that the amount by which the size of the transmitted signal notification needs to be adjusted is not within a defined range, transmitting data indicating that the amount by which the size of the transmitted signal notification needs to be adjusted is to the source device.

[0188] Clause 87: The method according to Clause 77, wherein transmitting the data representing the ratio includes transmitting a Session Description Protocol (SDP) update message to the source device.

[0189] Clause 88: The method described in Clause 87, wherein the SDP update message is included in the Session Initiation Protocol (SIP) re-invitation message.

[0190] Clause 89: The method described in Clause 87, wherein the SDP update message is included in the JavaScript Session Establishment Protocol (JSEP) message.

[0191] Clause 90: The method described in Clause 87, wherein the SDP update message is included in a Simple WebRTC Application Protocol (SWAP) message.

[0192] Clause 91: The method according to Clause 77, wherein transmitting the data representing the ratio includes transmitting a Simple WebRTC Application Protocol (SWAP) message.

[0193] Clause 92: The method according to Clause 91, wherein transmitting the SWAP message includes transmitting a SWAP “application” message, the SWAP “application” message including a target parameter representing an identifier of the source device, a type value, and a decimal value representing the ratio.

[0194] Clause 93: The method described in Clause 92, wherein the type value includes “3gpp-release19-PSSize-correction-ratio”.

[0195] Clause 94: The method according to Clause 91 further includes receiving a SWAP “application” confirmation message from the source device.

[0196] Clause 95: The method according to Clause 91, wherein transmitting the SWAP message includes transmitting a SWAP PSSize correction message, the SWAP PSSize correction message including a target parameter representing an identifier of the source device and a decimal value representing the ratio.

[0197] Clause 96: The method according to Clause 77 further includes performing IP packet reassembly of the packets of the PDU set, wherein calculating the cumulative size of the packets includes calculating the cumulative size of the packets prior to performing IP packet reassembly of the packets of the PDU set.

[0198] Clause 97: The method according to Clause 77, wherein the method is performed by a unit performing OSI model Layer 3 processing on the packets, the method further comprising providing the ratio to the Media Session Disposer (MSH).

[0199] Clause 98: The method according to Clause 77, wherein the method is performed by a unit of the last access network node that also performs IP packet reassembly, the method further comprising transmitting the reassembled IP packets of the PDU set to a destination device, wherein transmitting the data representing the ratio to the source device comprises transmitting the data representing the ratio to the destination device so that the destination device transmits the data representing the ratio to the source device.

[0200] Clause 99: The method according to Clause 98, wherein the PDU set includes a first PDU set, the method further comprising, for a plurality of other PDU sets: calculating a cumulative size of packets of the other PDU sets received from the source device; determining a signal notification size of the other PDU sets; calculating a ratio between the cumulative size and a corresponding signal notification size; and transmitting data representing the ratio to the destination device so that the destination device transmits the data representing the ratio to the source device.

[0201] Clause 100: The method according to Clause 98, wherein transmitting the data representing the ratio to the destination device includes transmitting one or more of a Radio Resource Control (RRC) message, a MAC Control Element (MAC CE) message, a Downlink Control Information (DCI) message, or a MAC Layer Management message to the destination device.

[0202] In one or more examples, the described functionality may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functionality may be stored as one or more instructions or code on a computer-readable medium or transmitted via a computer-readable medium and executed by a hardware-based processing unit. A computer-readable medium may include a computer-readable storage medium (which corresponds to a tangible medium such as a data storage medium) or a communication medium, including, for example, any medium that facilitates the transfer of a computer program from one place to another according to a communication protocol. Thus, a computer-readable medium may generally correspond to (1) a non-transitory tangible computer-readable storage medium, or (2) a communication medium such as a signal or carrier wave. A data storage medium may be any available medium that can be accessed by one or more computers or one or more processors to extract instructions, code, and / or data structures for implementing the techniques described in this disclosure. Computer program products may include computer-readable media.

[0203] By way of example, and not limitation, such computer-readable storage media may include RAM, ROM, EEPROM, CD-ROM or other optical disc storage devices, magnetic disk storage devices or other magnetic storage devices, flash memory, or any other medium capable of storing desired program code in the form of instructions or data structures and accessible by a computer. Furthermore, any connection is appropriately referred to as a computer-readable medium. For example, if instructions are transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies (such as infrared, radio, and microwave), then coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies (such as infrared, radio, and microwave) are included in the definition of medium. However, it should be understood that computer-readable storage media and data storage media do not include connections, carrier waves, signals, or other transient media, but instead refer to non-transient tangible storage media. As used herein, disks and optical discs include: compact optical discs (CDs), laser optical discs, optical discs, digital versatile optical discs (DVDs), floppy disks, and Blu-ray discs, wherein disks typically reproduce data magnetically, while optical discs reproduce data optically using lasers. The combinations described above should also be included within the scope of computer-readable media.

[0204] Instructions can be executed by one or more processors, such as one or more digital signal processors (DSPs), general-purpose microprocessors, application-specific integrated circuits (ASICs), field-programmable arrays (FPGAs), or other equivalent integrated or discrete logic circuits. Therefore, as used herein, the term "processor" can refer to any of the foregoing structures or any other structure suitable for implementing the techniques described herein. Additionally, in some aspects, the functionality described herein can be provided within dedicated hardware and / or software modules configured for encoding and decoding, or incorporated into combined codecs. Furthermore, these techniques can be fully implemented in one or more circuit or logic elements.

[0205] The techniques disclosed herein can be implemented in a wide variety of devices or apparatuses, including wireless mobile phones, integrated circuits (ICs), or IC sets (e.g., chipsets). Various components, modules, or units are described in this disclosure to emphasize functional aspects of a device configured to perform the disclosed techniques, but implementation by different hardware units is not necessarily required. Specifically, as described above, various units may be combined within a codec hardware unit, or various units may be provided by a collection of interoperable hardware units (including one or more processors as described above) combined with appropriate software and / or firmware.

[0206] Various examples have been described. These and other examples are within the scope of the following claims.

Claims

1. A method for exchanging media data, the method comprising: Calculate the cumulative size of packets in the Protocol Data Unit (PDU) set received from the source device; Determine the size of the signal notification sent by the PDU set; Calculate the ratio between the accumulated size and the size of the signal notification sent; as well as Data representing the ratio is transmitted to the source device.

2. The method of claim 1, further comprising determining, based on the ratio, the data representing the ratio to be transmitted to the source device.

3. The method of claim 1, wherein transmitting the data representing the ratio comprises: Determine that the ratio exceeds at least one threshold; as well as In response to the determination that the ratio exceeds the at least one threshold, the data representing the ratio is transmitted to the source device.

4. The method of claim 3, further comprising receiving data defining the at least one threshold from the source device.

5. The method of claim 1, wherein transmitting the data representing the ratio comprises: It has been determined that the ratio is outside the defined range; as well as In response to the determination that the ratio is not within the defined range, the data representing the ratio is transmitted to the source device.

6. The method of claim 5, further comprising receiving data defining a defined range from the source device.

7. The method of claim 1, wherein the data representing the ratio includes data that explicitly indicates the ratio.

8. The method of claim 1, wherein the data representing the ratio includes data indicating the amount by which the signal notification size needs to be adjusted to achieve a target ratio between the cumulative size and the signal notification size.

9. The method according to claim 8, further comprising: The amount by which the signal notification size needs to be adjusted exceeds at least one threshold. as well as In response to the determination that the amount by which the size of the transmitted signal notification needs to be adjusted exceeds the at least one threshold, data representing the amount by which the size of the transmitted signal notification needs to be adjusted is transmitted to the source device.

10. The method according to claim 8, further comprising: The amount that needs to be adjusted to determine the size of the signal notification is not within the defined range; as well as In response to determining that the amount by which the size of the transmitted signal notification needs to be adjusted is not within a defined range, the data indicating the amount by which the size of the transmitted signal notification needs to be adjusted is transmitted to the source device.

11. The method of claim 1, wherein transmitting the data representing the ratio includes transmitting a Session Description Protocol (SDP) update message to the source device.

12. The method of claim 1, the method further comprising performing IP packet reassembly of the packets of the PDU set, wherein calculating the cumulative size of the packets includes calculating the cumulative size of the packets prior to performing IP packet reassembly of the packets of the PDU set.

13. The method of claim 1, wherein the method is performed by a unit that performs OSI model layer 3 processing on the packets, the method further comprising providing the ratio to the Media Session Disposer (MSH).

14. The method of claim 1, wherein the method is performed by a unit of a last access network node that also performs IP packet reassembly, the method further comprising transmitting the reassembled IP packets of the PDU set to a destination device, wherein transmitting the data representing the ratio to the source device comprises transmitting the data representing the ratio to the destination device such that the destination device transmits the data representing the ratio to the source device.

15. The method of claim 14, wherein the PDU set includes a first PDU set, and the method further includes targeting a plurality of other PDU sets: Calculate the cumulative size of packets from the other PDU sets received from the source device; Determine the size of the signal notification sent by the other PDU sets; Calculate the ratio between the accumulated size and the corresponding signal notification size; as well as Data representing the ratio is transmitted to the destination device so that the destination device transmits the data representing the ratio to the source device.

16. The method of claim 14, wherein transmitting the data representing the ratio to the destination device comprises transmitting one or more of a Radio Resource Control (RRC) message, a MAC Control Element (MAC CE) message, a Downlink Control Information (DCI) message, or a MAC layer management message to the destination device.

17. An apparatus for retrieving media data, the apparatus comprising: A memory configured to store media data; as well as A processing system implemented in a circuit, the processing system being configured to: Calculate the cumulative size of packets in the Protocol Data Unit (PDU) set received from the source device; Determine the size of the signal notification sent by the PDU set; Calculate the ratio between the accumulated size and the size of the signal notification sent; as well as Data representing the ratio is transmitted to the source device.

18. The apparatus of claim 17, wherein, in order to transmit the data representing the ratio, the processing system is configured to: Receive at least one threshold from the source device; and In response to determining that the ratio exceeds the at least one threshold, the data representing the ratio is transmitted.

19. The apparatus of claim 17, wherein, in order to transmit the data representing the ratio, the processing system is configured to: Receive data from the source device defining the defined range; and In response to determining that the ratio is not within the defined range, the data representing the ratio is transmitted.

20. A computer-readable storage medium having instructions stored thereon, the instructions causing a processing system, when executed, to: Calculate the cumulative size of packets in the Protocol Data Unit (PDU) set received from the source device; Determine the size of the signal notification sent by the PDU set; Calculate the ratio between the accumulated size and the size of the signal notification sent; as well as Data representing the ratio is transmitted to the source device.