Systems and methods for improved audio-video conferences
US-2024087595-A1 · Mar 14, 2024 · US
US9338189B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9338189-B2 |
| Application number | US-201313786230-A |
| Country | US |
| Kind code | B2 |
| Filing date | Mar 5, 2013 |
| Priority date | Feb 28, 2011 |
| Publication date | May 10, 2016 |
| Grant date | May 10, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Embodiments of the present invention provide an Internet Protocol multimedia subsystem network, and a data transmission method and apparatus, which are used in the field of communications technologies. The data transmission method which is used in the IMS includes: performing tunnel encapsulation for an RTP packet to obtain a tunnel packet, where the tunnel packet includes a record unit, and a plurality of RTP packets are encapsulated in each record unit; and sending the tunnel packet to a peer end over a tunnel connected to the peer end. According to the embodiments of the present invention, the additional bandwidth caused by tunnel encapsulation is reduced, the bandwidth of a single packet is lowered, and the user experience and service access capabilities are improved.
Opening claim text (preview).
What is claimed is: 1. A data transmission method, which is used in an Internet Protocol Multimedia Subsystem (IMS), comprising: performing, by a first device, tunnel encapsulation for a plurality of Real-time Transport Protocol (RTP) packets to obtain a first tunnel packet, wherein the first tunnel packet comprises a record unit and a single tunneling protocol header, and the plurality of RTP packets are encapsulated in the record unit, the single tunneling protocol header associated with all of the RTP packets encapsulated in the record unit; and sending, by the first device, the first tunnel packet to a second device over a Secure Sockets Layer (SSL) tunnel connected to the second device, wherein when the first device is an IMS terminal, the second device is a Security Tunnel Gateway (STG), and when the first device is a STG, the second device is an IMS terminal; wherein performing the tunnel encapsulation for the RTP packets to obtain the first tunnel packet comprises: generating and buffering, by the first device, the RTP packets in a pre-created link table; fetching, by the first device, the RTP packets from the link table, and copying the packets to a section of contiguous memory space; adding, by the first device, the tunneling protocol header in a header of the memory space; performing, by the first device, digest calculation for data in the memory space with the tunneling protocol header added, and attaching the digest information obtained by calculation in a tail of the memory space with the tunneling protocol header added; attaching, by the first device, packet length padding information behind the digest information; encrypting, by the first device, data in the memory space with the padding information attached; adding, by the first device, an SSL protocol header in the header of the encrypted memory space to form an SSL record unit; determining, by the first device, whether a preset encapsulation time interval is reached, wherein the preset encapsulation time interval is an integral multiple of a packetization time of a media coding type in the first device for generating the RTP packets; and if the preset encapsulation time interval is reached, performing, by the first device, Transfer Control Protocol (TCP) encapsulation for the formed SSL record unit within the preset encapsulation time interval to obtain the first tunnel packet. 2. The method according to claim 1 , wherein the preset encapsulation time interval is smaller than or equal to 200 ms. 3. The method according to claim 1 , further comprising: receiving, by the first device, a second tunnel packet sent by the second device over the tunnel; and performing, by the first device, tunnel decapsulation for the received tunnel packet to obtain an RTP packet, wherein the second tunnel packet comprises a record unit, and a plurality of RTP packets are encapsulated in each record unit. 4. A data transmission apparatus, which is used in an Internet Protocol Multimedia Subsystem (IMS), the apparatus comprising: an encapsulating module, configured to perform tunnel encapsulation for a plurality of Real-time Transport Protocol (RTP) packets to obtain a first tunnel packet, wherein the first tunnel packet comprises a record unit and a single tunneling protocol header, and the plurality of RTP packets are encapsulated in the record unit, the single tunneling protocol header associated with all of the RTP packets encapsulated in the record unit; and a sending module, configured to send the first tunnel packet to a peer end over a Secure Sockets Layer (SSL) tunnel connected to the peer end, wherein when the data transmission apparatus is an IMS terminal, the peer end is a Security Tunnel Gateway (STG), and when the data transmission apparatus is a STG, the per end is an IMS terminal; wherein to perform the tunnel encapsulation, the encapsulating module is configured to: generate and buffer the RTP packets in a pre-created link table; fetch the RTP packets from the link table, and copy the packets to a section of contiguous memory space; add the tunneling protocol header in a header of the memory space; perform digest calculation for data in the memory space with the tunneling protocol header added, and attach the digest information obtained by calculation in a tail of the memory space with the tunneling protocol header added; attach packet length padding information behind the digest information; encrypt data in the memory space with the padding information attached; add an SSL protocol header in the header of the encrypted memory space to form an SSL record unit; determine whether a preset encapsulation time interval is reached, wherein the preset encapsulation time interval is an integral multiple of a packetization time of a media coding type for generating the RTP packets; and if the preset time interval is reached, perform Transfer Control Protocol (TCP) encapsulation for the formed SSL record unit within the preset encapsulation time interval to obtain the first tunnel packet. 5. The apparatus according to claim 4 , wherein the preset encapsulation time interval is smaller than or equal to 200 ms. 6. The apparatus according to claim 4 , further comprising: a receiving module, configured to receive a second tunnel packet sent by the peer end over the tunnel; and an unloading module, configured to perform tunnel decapsulation for the second tunnel packet received by the receiving module to obtain an RTP packet, wherein the second tunnel packet comprises a record unit, and a plurality of RTP packets are encapsulated in each record unit. 7. A non-transitory computer-readable storage medium comprising instructions that, which when executed by a processor in a first device, cause the first device to perform operations comprising: performing tunnel encapsulation for a plurality of Real-time Transport Protocol (RTP) packets to obtain a first tunnel packet, wherein the first tunnel packet comprises a record unit and a single tunneling protocol header, and the plurality of RTP packets are encapsulated in the record unit, the single tunneling protocol header associated with all of the RTP packets encapsulated in the record unit; and sending the first tunnel packet to a second device over a Secure Sockets Layer (SSL) tunnel connected to the second device, wherein when the first device is an Internet Protocol Multimedia Subsystem (IMS) terminal, the second device is a Security Tunnel Gateway (STG), and when the first device is a STG, the second device is an IMS terminal; wherein performing the tunnel encapsulation for the RTP packets to obtain the first tunnel packet comprises: generating and buffering the RTP packets in a pre-created link table; fetching the RTP packets from the link table, and copying the packets to a section of contiguous memory space; adding the tunneling protocol header in a header of the memory space; performing digest calculation for data in the memory space with the tunneling protocol header added, and attaching the digest information obtained by calculation in a tail of the memory space with the tunneling protocol header added; attaching packet length padding information behind the digest information; encrypting data in the memory space with the padding information attached; adding an SSL protocol header in the header of the encrypted memory space to form an SSL record unit; determining whether a preset encapsulation time interval is reached, wherein the preset encapsulation time interval is an integral multiple of a packetization time of a media coding type in the first device for generating the RTP packets; and if the preset encapsulation time interval is reached, performing Transfer Control Protocol (TCP) encapsulation for the formed SSL record unit
Electricity · mapped topic
Electricity · mapped topic
IP multimedia subsystem [IMS] · CPC title
at the transport layer · CPC title
Interconnection of networks using encapsulation techniques, e.g. tunneling · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.