A method and an apparatus for transmitting media stream data in a cloud computing system are provided. Before the establishment of a session between a thin client (tc) and a media gateway, the tc and the media gateway may exchange control signaling through the virtual machine (vm). After the session is established, the tc and the media gateway can transmit media stream data directly by using the established session. Due to the media stream data not passing through the vm, the vm does not need to encode or decode media stream data, and therefore the Central Processing unit (CPU) occupation rate of the vm will not be high. As a result, the quantity of vms that can run on a corresponding physical server can be further increased so as to improve the resource utilization rate of the physical server.
|
12. A virtual machine (vm) in a cloud computing system, comprising:
a registering unit configured to obtain media stream transmission information of a thin client (tc) from the tc, wherein the cloud computing system comprises a physical server on which the vm runs, and wherein the tc logs in to the vm; and
a sending unit configured to send the media stream transmission information of the tc to a media gateway and send obtained media stream transmission information of the media gateway to the tc such that the tc establishes a session between the tc and the media gateway according to the media stream transmission information of the tc and the media stream transmission information of the media gateway, and transmits media stream data by using the established session,
wherein the media stream transmission information of the tc comprises media stream address information of the tc, or the media stream address information of the tc and media stream codec information supported by the tc, and wherein the media stream transmission information of the media gateway comprises the media stream address information of the media gateway, or the media stream address information of the media gateway and the media stream codec information supported by the media gateway.
5. A method for transmitting media stream data in a cloud computing system, comprising:
obtaining, by a corresponding virtual machine (vm), media stream transmission information of a thin client (tc) from the tc, wherein the cloud computing system comprises a physical server on which the vm runs, and wherein the tc logs in to the vm; and
sending, by the vm, the media stream transmission information of the tc to a media gateway and sending obtained media stream transmission information of the media gateway to the tc such that the tc establishes a session between the tc and the media gateway according to the media stream transmission information of the tc and the media stream transmission information of the media gateway, and transmits media stream data by using the established session,
wherein the media stream transmission information of the tc comprises media stream address information of the tc, or the media stream address information of the tc and media stream codec information supported by the tc, and wherein the media stream transmission information of the media gateway comprises the media stream address information of the media gateway, or the media stream address information of the media gateway and the media stream codec information supported by the media gateway.
1. A method for transmitting media stream data in a cloud computing system, comprising:
sending, by a thin client (tc), media stream transmission information of the tc to a corresponding virtual machine (vm) such that the vm sends the media stream transmission information of the tc to a media gateway, wherein the cloud computing system comprises a physical server on which the vm runs, and wherein the tc logs in to the vm;
receiving, by the tc, the media stream transmission information of the media gateway from the vm;
establishing, by the tc, a session between the tc and the media gateway according to the media stream transmission information of the tc and the media stream transmission information of the media gateway; and
transmitting media stream data by using the established session,
wherein the media stream transmission information of the tc comprises media stream address information of the tc, or media stream address information of the tc and media stream codec information supported by the tc, and wherein the media stream transmission information of the media gateway comprises the media stream address information of the media gateway, or the media stream address information of the media gateway and the media stream codec information supported by the media gateway.
8. A thin client (tc) in a cloud computing system, comprising:
a registering unit configured to send media stream transmission information of the tc to a corresponding virtual machine (vm) such that the vm sends the media stream transmission information of the tc to a media gateway, wherein the cloud computing system comprises a physical server on which the vm runs, and wherein the tc logs in to the vm;
a receiving unit configured to receive the media stream transmission information of the media gateway from the vm; and
a transmitting unit configured to establish a session between the tc and the media gateway according to the media stream transmission information of the tc and the media stream transmission information of the media gateway, and transmit media stream data by using the established session,
wherein the media stream transmission information of the tc comprises media stream address information of the tc, or the media stream address information of the tc and media stream codec information supported by the tc, and wherein the media stream transmission information of the media gateway comprises the media stream address information of the media gateway, or the media stream address information of the media gateway and the media stream codec information supported by the media gateway.
2. The method according to
configuring the media stream transmission information on the tc; and
obtaining, by the tc, the configured media stream transmission information of the tc.
3. The method according to
4. The method according to
when the media control protocol is a session Initiation Protocol (SIP), receiving, by the tc, an Invite message sent by the vm, wherein the Invite message carries the media stream transmission information of the media gateway; or
when the media control protocol is an H.248 protocol, receiving, by the tc, a Modify message sent by the vm, wherein the Modify message carries the media stream transmission information of the media gateway; or
when the media control protocol is an H.248 protocol, receiving, by the tc, an Add message sent by the vm, wherein the Add message carries the media stream transmission information of the media gateway.
6. The method according to
7. The method according to
when the media control protocol is a session Initiation Protocol (SIP), sending, by the vm, a first Invite message to the media gateway, wherein the first Invite message carries the media stream transmission information of the tc, and sending a second Invite message to the tc, wherein the second Invite message carries the media stream transmission information of the media gateway; or
when the media control protocol is the SIP, sending, by the vm, a third Invite message to the tc, wherein the third Invite message carries the media stream transmission information of the media gateway, and sending a Reply message to the media gateway, wherein the Reply message carries the media stream transmission information of the tc; or
when the media control protocol is an H.248 protocol, sending, by the vm, a first Add message to the media gateway, wherein the first Add message carries the media stream transmission information of the tc, and sending a Modify message to the tc, wherein the Modify message carries the media stream transmission information of the media gateway; or
when the media control protocol is an H.248 protocol, sending, by the vm, a second Add message to the media gateway, wherein the second Add message carries the media stream transmission information of the tc, and sending a third Add message to the tc, wherein the third Add message carries the media stream transmission information of the media gateway.
9. The tc according to
perform media stream transmission information configuration on the tc; and
obtain the configured media stream transmission information of the tc.
10. The tc according to
11. The tc according to
when the media control protocol is a session Initiation Protocol (SIP), receive an Invite message sent by the vm, wherein the Invite message carries the media stream transmission information of the media gateway; or
when the media control protocol is an H.248 protocol, receive a Modify message sent by the vm, wherein the Modify message carries the media stream transmission information of the media gateway; or
when the media control protocol is an H.248 protocol, receive an Add message sent by the vm, wherein the Add message carries the media stream transmission information of the media gateway.
13. The vm according to
14. The vm according to
when the media control protocol is a session Initiation Protocol (SIP), send a first Invite message to the media gateway, wherein the first Invite message carries the media stream transmission information of the tc, and send a second Invite message to the tc, wherein the second Invite message carries the media stream transmission information of the media gateway; or
when the media control protocol is the SIP, send a third Invite message to the tc, wherein the third Invite message carries the media stream transmission information of the media gateway, and send a Reply message to the media gateway, wherein the Reply message carries the media stream transmission information of the tc; or
when the media control protocol is an H.248 protocol, send a first Add message to the media gateway, wherein the first Add message carries the media stream transmission information of the tc, and send a Modify message to the tc, wherein the Modify message carries the media stream transmission information of the media gateway; or
when the media control protocol is an H.248 protocol, send a second Add message to the media gateway, wherein the second Add message carries the media stream transmission information of the tc, and send a third Add message to the tc, wherein the third Add message carries the media stream transmission information of the media gateway.
|
This application is a continuation of International Application No. PCT/CN2011/077247, filed on Jul. 18, 2011, which is hereby incorporated by reference in its entirety.
Not applicable.
Not applicable.
Embodiments of the present invention relate to communications technologies, and in particular, to a method and an apparatus for transmitting media stream data in a cloud computing system.
In a cloud computing system, multiple virtual machines (VMs) can run on each physical server, and a cloud terminal, that is, a thin client (TC), can log in to a corresponding VM, for example, the TC logs in to the corresponding VM through the Remote Desktop Protocol, to perform communication services. In the prior art, a VM decodes a downstream data packet that is received through a stream control protocol, to obtain media stream data, then encodes the data and transmits the data to a corresponding TC. On the contrary, the VM decodes a received upstream data packet to obtain media stream data, and then encodes the data and transmits the data to a corresponding media gateway through a stream media transmission protocol.
However, the transmission of media stream data between the TC and the VM increases the transmission delay.
Embodiments of the present invention provides a method and an apparatus for transmitting media stream data in a cloud computing system, so as to reduce the transmission delay.
In one aspect, the present invention provides a method for transmitting media stream data in a cloud computing system, where the cloud computing system includes a physical server on which at least one VM runs, a TC logs in to the VM, and the method includes: sending, by the TC, media stream transmission information of the TC to the corresponding VM, so that the VM sends the media stream transmission information of the TC to a media gateway; receiving, by the TC, media stream transmission information of the media gateway from the VM; and establishing, by the TC, a session between the TC and the media gateway according to the media stream transmission information of the TC and the media stream transmission information of the media gateway, and transmitting media stream data by using the established session.
In another aspect, the present invention provides a method for transmitting media stream data in a cloud computing system, where the cloud computing system includes a physical server on which at least one VM runs, a TC logs in to the VM, and the method includes: obtaining, by the corresponding VM, media stream transmission information of the TC from the TC; and sending, by the VM, the media stream transmission information of the TC to a media gateway, and sending obtained media stream transmission information of the media gateway to the TC, so that the TC establishes a session between the TC and the media gateway according to the media stream transmission information of the TC and the media stream transmission information of the media gateway, and transmits media stream data by using the established session.
In another aspect, the present invention provides a TC in a cloud computing system, where the cloud computing system includes a physical server on which at least one VM runs, the TC logs in to the VM, and the TC includes: a registering unit configured to send media stream transmission information of the TC to the corresponding VM, so that the VM sends the media stream transmission information of the TC to a media gateway; a receiving unit configured to receive media stream transmission information of the media gateway from the VM; and a transmitting unit configured to establish a session between the TC and the media gateway according to the media stream transmission information of the TC and the media stream transmission information of the media gateway, and transmit media stream data by using the established session.
In another aspect, the present invention provides a VM in a cloud computing system, where the cloud computing system includes a physical server on which at least one VM runs, a TC logs in to the VM, and the VM includes: a registering unit configured to obtain media stream transmission information of the TC from the TC; and a sending unit configured to send the media stream transmission information of the TC to a media gateway and send obtained media stream transmission information of the media gateway to the TC, so that the TC establishes a session between the TC and the media gateway according to the media stream transmission information of the TC and the media stream transmission information of the media gateway, and transmits media stream data by using the established session.
As can be known from the above technical solutions, in the embodiments of the present invention, after the VM obtains the media stream transmission information of the TC from the TC, the VM sends the media stream transmission information of the TC to the media gateway and sends the obtained media stream transmission information of the media gateway to the TC, so that the TC can establish a session between the TC and the media gateway and transmit media stream data by using the established session, thereby reducing the transmission delay. In addition, because media stream data does not pass through the VM, the VM does not need to encode or decode media stream data, and therefore the central processing unit (CPU) occupation rate of the VM will not be high. As a result, the quantity of VMs that can run on a corresponding physical server can be further increased so as to improve the resource utilization rate of the physical server.
To illustrate the technical solutions in the embodiments of the present invention more clearly, the following briefly introduces the accompanying drawings required for describing the embodiments. The accompanying drawings in the following description show merely some embodiments of the present invention, and persons of ordinary skill in the art may still derive other drawings from these accompanying drawings without creative efforts.
To make the objectives, technical solutions, and advantages of the embodiments of the present invention more comprehensible, the following clearly describes the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. The described embodiments are merely a part rather than all of the embodiments of the present invention. All other embodiments obtained by persons of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.
101. A TC sends media stream transmission information of the TC to a corresponding VM, so that the VM sends the media stream transmission information of the TC to a media gateway.
Before step 101, the TC may further obtain configured media stream transmission information of the TC.
The media stream transmission information of the TC may be media stream address information of the TC, for example, address information such as an Internet Protocol (IP) address and a port number, or may further include media stream address information of the TC and media stream codec information supported by the TC, for example, voice codec methods such as G.723.1, G.711, or G.729.
102. The TC receives media stream transmission information of the media gateway from the VM.
Specifically, the TC may receive the media stream transmission information of the media gateway from the VM by using a media control protocol, such as an H.248 protocol, a Session Initiation Protocol (SIP), or a Media Gateway Control Protocol (MGCP).
The media stream transmission information of the media gateway may be media stream address information of the media gateway, for example, address information such as an IP address and a port number, or may further include media stream address information of the media gateway and media stream codec information supported by the media gateway, for example, voice codec methods such as G.723.1, G.711, or G.729.
103. The TC establishes a session between the TC and the media gateway according to the media stream transmission information of the TC and the media stream transmission information of the media gateway, and transmits media stream data by using the established session.
Optionally, the TC may send the media stream address information of the TC and the media stream codec information supported by the TC to the VM, the VM then sends the media stream address information of the TC and the media stream codec information supported by the TC to the media gateway, and then the TC receives the media stream address information of the media gateway and the media stream codec information supported by the media gateway from the VM. The TC and the VM perform codec method negotiation and select a codec method they both support, so that according to the media stream address information of the TC and the media stream address information of the media gateway, the TC encodes, by using the selected codec method, media stream data to be sent and sends the encoded media stream data to the media gateway, and decodes, by using the selected codec method, encoded media stream data received from the media gateway to obtain the media stream data.
Optionally, the TC may send no media stream codec information supported by the TC to the VM, or, the VM may send no media stream codec information supported by the media gateway to the TC. That is, in scenarios where the TC does not obtain the media stream codec information supported by the media gateway, one codec method supported by the TC may be used. If the media gateway or the TC cannot decode media stream data correctly, another codec method is selected until the media gateway and the TC can both decode media stream data correctly.
As shown in
In this embodiment, after the TC sends the media stream transmission information of the TC to the VM, the VM sends the media stream transmission information of the TC to the media gateway and sends the obtained media stream transmission information of the media gateway to the TC, so that the TC can establish a session between the TC and the media gateway and transmit media stream data by using the established session, which reduces the transmission delay. In addition, because media stream data does not pass through the VM, the VM does not need to encode or decode media stream data, and therefore the CPU occupation rate of the VM will not be high. As a result, the quantity of VMs that can run on a corresponding physical server can be further increased so as to improve the resource utilization rate of the physical server.
201. A corresponding VM obtains media stream transmission information of a TC from the TC.
The media stream transmission information of the TC may be media stream address information of the TC, for example, address information such as an IP address and a port number, or may further include media stream address information of the TC and media stream codec information supported by the TC, for example, voice codec methods such as G.723.1, G.711, or G.729.
202. The VM sends the media stream transmission information of the TC to a media gateway and sends obtained media stream transmission information of the media gateway to the TC, so that the TC establishes a session between the TC and the media gateway according to the media stream transmission information of the TC and the media stream transmission information of the media gateway, and transmits media stream data by using the established session.
Specifically, the TC may send the media stream transmission information of the TC to the media gateway and sends the obtained media stream transmission information of the media gateway to the TC by using a media control protocol, such as an H.248 protocol, a SIP, or a MGCP.
The media stream transmission information of the media gateway may be media stream address information of the media gateway, for example, address information such as an IP address and a port number, or may further include media stream address information of the media gateway and media stream codec information supported by the media gateway, for example, voice codec methods such as G.723.1, G.711, or G.729.
Optionally, the TC may send the media stream address information of the TC and the media stream codec information supported by the TC to the VM, the VM then sends the media stream address information of the TC and the media stream codec information supported by the TC to the media gateway, and then the TC receives the media stream address information of the media gateway and the media stream codec information supported by the media gateway from the VM. The TC and the VM perform codec method negotiation and select a codec method they both support, so that according to the media stream address information of the TC and the media stream address information of the media gateway, the TC encodes, by using the selected codec method, media stream data to be sent and sends the encoded media stream data to the media gateway, and decodes, by using the selected codec method, encoded media stream data received from the media gateway to obtain the media stream data.
Optionally, the TC may send no media stream codec information supported by the TC to the VM, or, the VM may send no media stream codec information supported by the media gateway to the TC. That is, in scenarios where the TC does not obtain the media stream codec information supported by the media gateway, one codec method supported by the TC may be used. If the media gateway or the TC cannot decode media stream data correctly, another codec method is selected until the media gateway and the TC can both decode media stream data correctly.
In this embodiment, after the VM obtains the media stream transmission information of the TC from the TC, the VM sends the media stream transmission information of the TC to the media gateway and sends the obtained media stream transmission information of the media gateway to the TC, so that the TC can establish a session between the TC and the media gateway and transmit media stream data by using the established session, which reduces the transmission delay. In addition, because media stream data does not pass through the VM, the VM does not need to encode or decode media stream data, and therefore the CPU occupation rate of the VM will not be high. As a result, the quantity of VMs that can run on a corresponding physical server can be further increased so as to improve the resource utilization rate of the physical server.
To make the method provided in the embodiments of the present invention clearer, a SIP and an H.248 protocol will be used for exemplary description.
301. A TC registers with a VM to send media stream address information of the TC and media stream codec information supported by the TC to the VM.
302. The TC triggers the VM to send an Invite message to a media gateway, where the Invite message carries the media stream address information of the TC and the media stream codec information supported by the TC.
For example, the TC sends a calling operation instruction of a user to the VM, and the VM obtains, according to the instruction, the media stream address information of the TC and the media stream codec information supported by the TC that are sent by the TC to the VM at the time of registration, and sends an Invite message to the media gateway, where a message body of the message carries the media stream address information of the TC and the media stream codec information supported by the TC.
303. The media gateway sends a Reply message to the VM, where the Reply message carries media stream address information of the media gateway and media stream codec information supported by the media gateway.
304. The VM sends an Invite message to the TC, where the Invite message carries the media stream address information of the media gateway and the media stream codec information supported by the media gateway.
305. The TC sends a Reply message to the VM.
Optionally, the Reply message sent by the TC to the VM may further carry the media stream address information of the TC and the media stream codec information supported by the TC, so that the VM can determine, according to the media stream address information of the TC and the media stream codec information supported by the TC that are carried in the Reply message, whether the information sent by the TC at the time of registration has changed. If the information has changed, step 303 and step 304 may be executed again by using the changed media stream address information of the TC and media stream codec information supported by the TC.
Now, a session between the TC and the media gateway has been established.
306. The TC and the media gateway transmit media stream data by using the established session.
In this embodiment, after the VM obtains the media stream transmission information of the TC from the TC, a user triggers the VM through the TC to send the media stream transmission information of the TC to the media gateway and send the obtained media stream transmission information of the media gateway to the TC by using SIP, so that the TC can establish a session between the TC and the media gateway and transmit media stream data by using the established session, which reduces the transmission delay. In addition, because media stream data does not pass through the VM, the VM does not need to encode or decode media stream data, and therefore the CPU occupation rate of the VM will not be high. As a result, the quantity of VMs that can run on a corresponding physical server can be further increased so as to improve the resource utilization rate of the physical server.
401. A TC registers with a VM to send media stream address information of the TC and media stream codec information supported by the TC to the VM.
402. A calling party triggers a media gateway to send an Invite message to the VM, where the Invite message carries media stream address information of the media gateway and media stream codec information supported by the media gateway.
403. The TC triggers the VM to send an Invite message to the TC, where the Invite message carries the media stream address information of the media gateway and the media stream codec information supported by the media gateway.
For example, the TC sends an off-hook operation instruction of a user to the VM through the Remote Desktop Protocol, and, according to the instruction, the VM obtains the media stream address information of the media gateway and the media stream codec information supported by the media gateway that are sent by the media gateway to the VM, and sends an Invite message to the TC, where a message body of the message carries the media stream address information of the media gateway and the media stream codec information supported by the media gateway.
404. The TC sends a Reply message to the VM.
Optionally, the Reply message sent by the TC to the VM may further carry the media stream address information of the TC and the media stream codec information supported by the TC, so that the VM can determine, according to the media stream address information of the TC and the media stream codec information supported by the TC that are carried in the Reply message, whether the information sent by the TC at the time of registration has changed. If the information has changed, step 405 may be executed by using the changed media stream address information of the TC and media stream codec information supported by the TC.
405. The VM sends a Reply message to the media gateway, where the Reply message carries the media stream address information of the TC and the media stream codec information supported by the TC.
For example, the VM may obtain the media stream address information of the TC and the media stream codec information supported by the TC that are sent by the TC to the VM at the time of registration, and send a Reply message to the media gateway, where a message body of the message carries the media stream address information of the TC and the media stream codec information supported by the TC.
For another example, if the Reply message sent by the TC to the VM carries the media stream address information of the TC and the media stream codec information supported by the TC and the VM has determined that the information sent by the TC at the time of registration has changed, the VM may also send a Reply message to the media gateway by using the media stream address information of the TC and the media stream codec information supported by the TC that are sent by the TC to the VM in step 404, where a message body of the message carries the media stream address information of the TC and the media stream codec information supported by the TC.
Now, a session between the TC and the media gateway has been established.
406. The TC and the media gateway transmit media stream data by using the established session.
In this embodiment, after the VM obtains the media stream transmission information of the TC from the TC, a calling party triggers the VM through the media gateway to send the media stream transmission information of the TC to the media gateway and send the obtained media stream transmission information of the media gateway to the TC by using the SIP, so that the TC can establish a session between the TC and the media gateway and transmit media stream data by using the established session, which reduces the transmission delay. In addition, because media stream data does not pass through the VM, the VM does not need to encode or decode media stream data, and therefore the CPU occupation rate of the VM will not be high. As a result, the quantity of VMs that can run on a corresponding physical server can be further increased so as to improve the resource utilization rate of the physical server.
501. A TC registers with a VM to send media stream address information of the TC and media stream codec information supported by the TC to the VM.
502. The TC triggers the VM to send an Add message to the TC, where the Add message carries TC termination information and Real-time Transport Protocol (RTP) termination information, to create a new association.
For example, the TC sends a calling operation instruction of a user to the VM through the Remote Desktop Protocol, and, according to the instruction, the VM sends an Add message to the TC, where the Add message carries TC termination information and RTP termination information.
503. The TC sends a Reply message to the VM.
Optionally, the Reply message sent by the TC to the VM may further carry the media stream address information of the TC and the media stream codec information supported by the TC, so that the VM can determine, according to the media stream address information of the TC and the media stream codec information supported by the TC that are carried in the Reply message, whether the information sent by the TC at the time of registration has changed. If the information has changed, step 504 may be executed by using the changed media stream address information of the TC and media stream codec information supported by the TC.
504. The VM sends an Add message to a media gateway, where the Add message carries called party termination information, the RTP termination information, the media stream address information of the TC, and the media stream codec information supported by the TC, to create a new association.
For example, the VM may obtain the media stream address information of the TC and the media stream codec information supported by the TC that are sent by the TC to the VM at the time of registration, and send an Add message to the media gateway, where a message body of the message carries the media stream address information of the TC and the media stream codec information supported by the TC.
For another example, if the Reply message sent by the TC to the VM in step 503 carries the media stream address information of the TC and the media stream codec information supported by the TC and the VM has determined that the information sent by the TC at the time of registration has changed, the VM may also send an Add message to the media gateway by using the media stream address information of the TC and the media stream codec information supported by the TC that are sent by the TC to the VM in step 503, where a message body of the message carries the media stream address information of the TC and the media stream codec information supported by the TC.
505. The media gateway sends a Reply message to the VM, where the Reply message carries media stream address information of the media gateway and media stream codec information supported by the media gateway.
506. The VM sends a Modify message to the media gateway, where the Modify message carries a ring tone, so that the media gateway sends the ring tone to the called party.
507. The media gateway sends a Reply message to the VM.
508. The VM sends a Modify message to the TC, where the Modify message carries a ringback tone, the media stream address information of the media gateway, and the media stream codec information supported by the media gateway.
509. The TC sends a Reply message to the VM.
Optionally, the Reply message sent by the TC to the VM may further carry the media stream address information of the TC and the media stream codec information supported by the TC, so that the VM can determine, according to the media stream address information of the TC and the media stream codec information supported by the TC that are carried in the Reply message, whether the information sent by the TC at the time of registration has changed. If the information has changed, the changed media stream address information of the TC and media stream codec information supported by the TC may be sent to the media gateway by using a Modify message.
510. The called party triggers the media gateway to send a called party off-hook Notify message, to notify that the called party is off hook.
For example, the called party user is off hook and triggers the media gateway to send a called party off-hook Notify message to the VM.
511. The VM sends a Reply message to the media gateway.
512. The VM sends a Modify message to the media gateway, to detect events such as on-hook of a called party.
513. The media gateway sends a Reply message to the VM.
514. The VM sends a Notify message to the TC, to stop the ringback tone.
515. The TC sends a Reply message to the VM.
Now, a session between the TC and the media gateway has been established.
516. The TC and the media gateway transmit media stream data by using the established session.
In this embodiment, after the VM obtains the media stream transmission information of the TC from the TC, a user triggers the VM through the TC to send the media stream transmission information of the TC to the media gateway and send the obtained media stream transmission information of the media gateway to the TC by using the H.248 protocol, so that the TC can establish a session between the TC and the media gateway and transmit media stream data by using the established session, which reduces the transmission delay. In addition, because media stream data does not pass through the VM, the VM does not need to encode or decode media stream data, and therefore the CPU occupation rate of the VM will not be high. As a result, the quantity of VMs that can run on a corresponding physical server can be further increased so as to improve the resource utilization rate of the physical server.
601. A TC registers with a VM to send media stream address information of the TC and media stream codec information supported by the TC to the VM.
602. A calling party triggers a media gateway to send a Notify message to the VM, to notify that the calling party calls the TC.
603. The VM sends a Reply message to the media gateway.
604. The VM sends an Add message to the media gateway, where the Add message carries calling party termination information, RTP termination information, the media stream address information of the TC, and the media stream codec information supported by the TC, to create a new association.
605. The media gateway sends a Reply message to the VM, where the Reply message carries media stream address information of the media gateway and media stream codec information supported by the media gateway.
606. The VM sends an Add message to the TC, where the Add message carries TC termination information, RTP termination information, the media stream address information of the media gateway, and the media stream codec information supported by the media gateway.
607. The TC sends a Reply message to the VM.
Optionally, the Reply message sent by the TC to the VM may further carry the media stream address information of the TC and the media stream codec information supported by the TC, so that the VM can determine, according to the media stream address information of the TC and the media stream codec information supported by the TC that are carried in the Reply message, whether the information sent by the TC at the time of registration has changed. If the information has changed, the changed media stream address information of the TC and media stream codec information supported by the TC may be sent to the media gateway by using a Modify message.
608. The VM sends a Modify message to the TC, where the Modify message carries a ring tone.
609. The TC sends a Reply message to the VM.
610. The VM sends a Modify message to the media gateway, where the Modify message carries a ringback tone, so that the media gateway sends the ringback tone to the called party.
Optionally, if the Reply message sent by the TC to the VM in step 607 carries the media stream address information of the TC and the media stream codec information supported by the TC, and the VM has determined that the information sent by the TC at the time of registration has changed, the VM may add the changed media stream address information of the TC and media stream codec information supported by the TC to the Modify message.
611. The media gateway sends a Reply message to the VM.
Optionally, the Reply message sent by the media gateway to the VM may further carry the media stream address information of the media gateway and the media stream codec information supported by the media gateway, so that the VM can determine, according to the media stream address information and the media stream codec information supported by the media gateway that are carried in the Reply message, whether the media stream address information and the media stream codec information supported by the media gateway that are obtained in step 605 have changed. If the information has changed, the VM may send the changed media stream address information of the media gateway and media stream codec information supported by the media gateway to the TC by using a Modify message.
612. The TC triggers the VM to send a Modify message to the media gateway, to stop the ringback tone.
For example, the TC sends an off-hook operation instruction of the user to the VM through the Remote Desktop Protocol, and according to the instruction, the VM detects events such as TC disconnect and sends a Modify message to the media gateway to stop the ringback tone.
613. The media gateway sends a Reply message to the VM.
Now, a session between the TC and the media gateway has been established.
614. The TC and the media gateway transmit media stream data by using the established session.
In this embodiment, after the VM obtains the media stream transmission information of the TC from the TC, a user triggers the VM through the TC to send the media stream transmission information of the TC to the media gateway and send the obtained media stream transmission information of the media gateway to the TC by using the H.248 protocol, so that the TC can establish a session between the TC and the media gateway and transmit media stream data by using the established session, which reduces the transmission delay. In addition, because media stream data does not pass through the VM, the VM does not need to encode or decode media stream data, and therefore the CPU occupation rate of the VM will not be high. As a result, the quantity of VMs that can run on a corresponding physical server can be further increased so as to improve the resource utilization rate of the physical server.
It should be noted that, for ease of description, the foregoing method embodiments are all described as combinations of actions but persons skilled in the art should know that the present invention is not limited to the described sequences of actions. According to the present invention, some steps may be executed in other sequences or executed simultaneously. Also, persons skilled in the art should know that the embodiments described herein are merely exemplary embodiments, where the actions and modules included are not mandatory for the present invention.
In the foregoing embodiments, the descriptions of the embodiments have different stresses, and, for what is not described in one embodiment, reference may be made to related descriptions in other embodiments.
Functions of the TC in the embodiments corresponding to
Further, the registering unit 71 in this embodiment may further obtain configured media stream transmission information of the TC.
Specifically, the receiving unit 72 in this embodiment may send the media stream transmission information of the TC to the media gateway and receive the media stream transmission information of the media gateway from the VM by using a media control protocol such as an H.248 protocol, a SIP, or an MGCP.
For example, the receiving unit 72 may specifically receive an Invite message sent by the VM, where the Invite message carries the media stream transmission information of the media gateway; or receive a Modify message sent by the VM, where the Modify message carries the media stream transmission information of the media gateway; or receive an Add message sent by the VM, where the Add message carries the media stream transmission information of the media gateway.
In this embodiment, after the registering unit sends the media stream transmission information of the TC to the VM, the VM sends the media stream transmission information of the TC to the media gateway and sends the obtained media stream transmission information of the media gateway to the receiving unit, so that the transmitting unit can establish a session between the TC and the media gateway and transmit media stream data by using the established session, which reduces the transmission delay. In addition, because media stream data does not pass through the VM, the VM does not need to encode or decode media stream data, and therefore the CPU occupation rate of the VM will not be high. As a result, the quantity of VMs that can run on a corresponding physical server can be further increased so as to improve the resource utilization rate of the physical server.
Functions of the VM in the embodiments corresponding to
Specifically, the sending unit 82 in this embodiment may send the media stream transmission information of the TC to the media gateway and send the obtained media stream transmission information of the media gateway to the TC by using a media control protocol such as an H.248 protocol, a SIP, or an MGCP.
For example, the sending unit may specifically send a first Invite message to the media gateway, where the first Invite message carries the media stream transmission information of the TC, and send a second Invite message to the TC, where the second Invite message carries the media stream transmission information of the media gateway. Or, the sending unit may send a third Invite message to the TC, where the third Invite message carries the media stream transmission information of the media gateway, and send a Reply message to the media gateway, where the Reply message carries the media stream transmission information of the TC. Or, the sending unit may send a first Add message to the media gateway, where the first Add message carries the media stream transmission information of the TC, and send a Modify message to the TC, where the Modify message carries the media stream transmission information of the media gateway. Or, the sending unit may send a second Add message to the media gateway, where the second Add message carries the media stream transmission information of the TC, and send a third Add message to the TC, where the third Add message carries the media stream transmission information of the media gateway.
In this embodiment, after the registering unit obtains the media stream transmission information of the TC from the TC, the sending unit sends the media stream transmission information of the TC to the media gateway and sends the obtained media stream transmission information of the media gateway to the TC, so that the TC can establish a session between the TC and the media gateway and transmit media stream data by using the established session, which reduces the transmission delay. In addition, because media stream data does not pass through the VM, the VM does not need to encode or decode media stream data, and therefore the CPU occupation rate of the VM will not be high. As a result, the quantity of VMs that can run on a corresponding physical server can be further increased so as to improve the resource utilization rate of the physical server.
It can be clearly understood by persons skilled in the art that, for the purpose of convenient and brief description, reference may be made to the corresponding processes in the foregoing method embodiments for detailed working processes of the foregoing system, apparatuses, and units, which will not be described herein again.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus, and method may be implemented in other manners. For example, the described apparatus embodiments are merely exemplary. For example, the division of units is merely a logical division of functions and there may be other divisions in actual implementation. For example, a plurality of units or components may be combined or integrated into another system, or some features may be ignored or not executed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections may be implemented through some interfaces. The indirect couplings or communication connections between the apparatuses or units may be implemented in electronic, mechanical, or other forms.
The units described as separate parts may or may not be physically separate, and a part displayed as a unit may or may not be a physical unit, may be located in one position, or may be distributed on a plurality of network units. A part or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each of the units may exist alone physically, or two or more units are integrated into one unit. The integrated unit may be implemented in form of hardware, or may also be implemented in form of hardware plus a software functional unit.
The integrated unit implemented in form of a software functional unit may be stored in a computer readable storage medium. The software functional unit is stored in a storage medium and includes several instructions to instruct a computer device (which may be a personal computer, a server, or a network device or the like) to execute part of the steps of the methods in the embodiments of the present invention. The foregoing storage medium includes: any medium capable of storing program code, such as a universal serial bus (USB) flash drive, a removable hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disc.
Finally, it should be noted that the foregoing embodiments are merely intended for describing the technical solutions of the present invention, rather than limiting the present invention. Although the present invention is described in detail with reference to the foregoing embodiments, persons of ordinary skill in the art should understand that they may still make modifications to the technical solutions described in the foregoing embodiments, or make equivalent replacements to some technical features thereof, as long as such modifications or replacements do not cause the essence of corresponding technical solutions to depart from the spirit and scope of the technical solutions of the embodiments of the present invention.
Li, Houqing, Li, Youying, Qiao, Chaolin
Patent | Priority | Assignee | Title |
11171824, | Mar 01 2018 | Red Hat, Inc | Configuration of computing devices via containers |
Patent | Priority | Assignee | Title |
8463912, | May 23 2000 | JOLLY SEVEN, SERIES 70 OF ALLIED SECURITY TRUST I | Remote displays in mobile communication networks |
20100100914, | |||
20110093567, | |||
20110208837, | |||
20120218374, | |||
20130326072, | |||
CN101635635, | |||
CN101917418, | |||
CN1870772, | |||
CN1893427, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Nov 28 2013 | LI, HOUQING | HUAWEI TECHNOLOGIES CO , LTD | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 032075 | /0539 | |
Nov 28 2013 | LI, YOUYING | HUAWEI TECHNOLOGIES CO , LTD | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 032075 | /0539 | |
Nov 28 2013 | QIAO, CHAOLIN | HUAWEI TECHNOLOGIES CO , LTD | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 032075 | /0539 | |
Dec 31 2013 | Huawei Technologies Co., Ltd. | (assignment on the face of the patent) | / | |||
Feb 24 2022 | HUAWEI TECHNOLOGIES CO , LTD | HUAWEI CLOUD COMPUTING TECHNOLOGIES CO , LTD | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 059267 | /0088 |
Date | Maintenance Fee Events |
Apr 18 2019 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Apr 19 2023 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Date | Maintenance Schedule |
Nov 03 2018 | 4 years fee payment window open |
May 03 2019 | 6 months grace period start (w surcharge) |
Nov 03 2019 | patent expiry (for year 4) |
Nov 03 2021 | 2 years to revive unintentionally abandoned end. (for year 4) |
Nov 03 2022 | 8 years fee payment window open |
May 03 2023 | 6 months grace period start (w surcharge) |
Nov 03 2023 | patent expiry (for year 8) |
Nov 03 2025 | 2 years to revive unintentionally abandoned end. (for year 8) |
Nov 03 2026 | 12 years fee payment window open |
May 03 2027 | 6 months grace period start (w surcharge) |
Nov 03 2027 | patent expiry (for year 12) |
Nov 03 2029 | 2 years to revive unintentionally abandoned end. (for year 12) |