WO2014201933A1 - 用于超文本传输协议网络的方法及宽带网络网关 - Google Patents

用于超文本传输协议网络的方法及宽带网络网关 Download PDF

Info

Publication number
WO2014201933A1
WO2014201933A1 PCT/CN2014/078092 CN2014078092W WO2014201933A1 WO 2014201933 A1 WO2014201933 A1 WO 2014201933A1 CN 2014078092 W CN2014078092 W CN 2014078092W WO 2014201933 A1 WO2014201933 A1 WO 2014201933A1
Authority
WO
WIPO (PCT)
Prior art keywords
bng
virtual machine
http
http request
application server
Prior art date
Application number
PCT/CN2014/078092
Other languages
English (en)
French (fr)
Inventor
朱恒军
牛乐宏
黄勇
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to ES14813918.1T priority Critical patent/ES2652558T3/es
Priority to EP14813918.1A priority patent/EP2999193B1/en
Publication of WO2014201933A1 publication Critical patent/WO2014201933A1/zh
Priority to US14/975,475 priority patent/US10225318B2/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/566Grouping or aggregating service requests, e.g. for unified processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request

Definitions

  • BNG broadband Network Gateway
  • User equipment runs an application client. Apply the application server to run the application server.
  • the service is executed by the application client interacting with the application server.
  • the application client may be a Huawei website (DBank) client provided by Huawei or a Google Earth client provided by Google.
  • the server side of the application server may be a Huawei network disk server provided by Huawei.
  • the user equipment may be a personal computer (PC), a mobile phone (MP) or a personal digital assistant (PDA).
  • the application server may be a web server.
  • the service may be uploading a file to a cloud server.
  • the file can be a video file or an audio file.
  • the user equipment needs to send an HTTP request.
  • the BNG forwards the HTTP request to the public network.
  • the HTTP request arrives at the application server through the public network.
  • the application server sends an HTTP response corresponding to the HTTP request.
  • the BNG forwards the HTTP response to the user equipment.
  • the bandwidth of the network is occupied more.
  • a method for an HTTP network comprising:
  • the BNG receives the first HTTP request sent by the user equipment
  • the BNG adds the identifier of the BNG to the first HTTP request to obtain a second HTTP request;
  • the BNG obtains the image according to the location information, and the BNG creates the virtual machine in the BNG according to the image.
  • the BNG creates the virtual machine in the BNG according to the image.
  • the application server side runs in the virtual machine.
  • the interaction between the application server end in the BNG and the application client in the user equipment may be implemented.
  • the BNG does not need to forward the HTTP request sent by the user equipment to the application server. Therefore, the above technical solution helps to reduce the occupation of the bandwidth of the network.
  • the method further includes:
  • the BNG sends a first HTTP response to the application server, where the first HTTP response is a response corresponding to the third HTTP request, and the first HTTP response includes an identifier of the virtual machine;
  • the second HTTP response is a response corresponding to the second HTTP request, and the second HTTP response includes the virtual Identification of the aircraft;
  • the BNG forwards the second HTTP response to the user equipment.
  • the identifier of the BNG includes a host name of the BNG, an Internet Protocol (IP) address of the BNG, or a uniform resource locator (URL) for identifying how to access the BNG. ).
  • IP Internet Protocol
  • URL uniform resource locator
  • the first possible implementation of the first aspect, or the second possible implementation of the first aspect, in a third possible implementation manner of the first aspect is possible.
  • the location information includes a URL for identifying how to access the image or a directory where the image is stored in the BNG.
  • the first possible implementation of the first aspect the second possible implementation of the first aspect or the third possible implementation of the first aspect, the fourth possibility in the first aspect
  • the implementation
  • the second HTTP request includes a message digest (MD), and the message-digest is obtained by encrypting the identifier of the BNG according to the message digest algorithm 5 (MD5). of.
  • MD5 message digest algorithm 5
  • the first possible implementation of the first aspect, the second possible implementation of the first aspect, the third possible implementation of the first aspect or the fourth possible aspect of the first aspect Implementation manner, in a fifth possible implementation manner of the first aspect,
  • the third HTTP request includes configuration information of the virtual machine
  • the BNG creates the virtual machine in the BNG according to the image, and the BNG creates the virtual machine in the BNG according to the image and the configuration information.
  • a method for an HTTP network including:
  • the BNG receives the first HTTP request sent by the user equipment, and the virtual machine runs on the BNG;
  • the BNG adds an identifier of the virtual machine to the first HTTP request to obtain a second HTTP request.
  • the BNG receives a command sent by the application server to deploy the application server end in the virtual machine
  • the BNG deploys the application server end in the virtual machine according to the command.
  • the BNG deploys the application server end in the virtual machine according to a command sent by the application server to deploy the application server end in the virtual machine.
  • the application server can perform the interaction between the application server and the application client in the user device.
  • the BNG does not need to forward the HTTP request sent by the user equipment to the application server. Therefore, the above technical scheme helps to reduce the occupation of the bandwidth of the network.
  • the method further includes:
  • the BNG Receiving, by the BNG, the first HTTP response sent by the application server, where the first HTTP response includes an identifier of the virtual machine, and the first HTTP response is a response corresponding to the second HTTP request;
  • the BNG forwards the first HTTP response to the user equipment.
  • the identifier of the virtual machine includes a host name of the virtual machine, an IP address of the virtual machine, or a URL for identifying how to access the virtual machine.
  • the identifier of the virtual machine is carried in a header field or a payload of the first HTTP response.
  • a BNG including:
  • a first receiving unit configured to receive a first HTTP request sent by the user equipment
  • An adding unit configured to add an identifier of the BNG to the first HTTP request received by the first receiving unit, to obtain a second HTTP request
  • a first sending unit configured to send, to the application server, the second generated by the adding unit
  • a second receiving unit configured to receive a third HTTP request sent by the application server, where the third HTTP request is sent by the application server after receiving the second HTTP request, where the third HTTP request includes Location information used to create a mirror of the virtual machine;
  • a creating unit configured to obtain the image according to the location information in the third HTTP request received by the second receiving unit, and create the virtual machine in the BNG according to the image.
  • the BNG creates the virtual machine in the BNG according to the image.
  • the application server side runs in the virtual machine.
  • the interaction between the application server end in the BNG and the application client in the user equipment may be implemented.
  • the BNG does not need to forward the HTTP request sent by the user equipment to the application server. Therefore, the above technical solution helps to reduce the occupation of the bandwidth of the network.
  • the BNG also includes:
  • a second sending unit configured to send a first HTTP response to the application server, where the first HTTP response is a response corresponding to the third HTTP request, and the first HTTP response includes an identifier of the virtual machine
  • a third receiving unit configured to receive a second HTTP response sent by the application server, where the second HTTP response is a response corresponding to the second HTTP request, and the second HTTP response includes an identifier of the virtual machine
  • a forwarding unit configured to forward, to the user equipment, the second HTTP port corresponding to the third receiving unit.
  • the identifier of the BNG includes a host name of the BNG, an IP address of the BNG, or a URL for identifying how to access the BNG.
  • the first possible implementation manner of the third aspect, or the second possible implementation manner of the third aspect, in a third possible implementation manner of the third aspect is possible.
  • the location information includes a URL for identifying how to access the image or a directory where the image is stored in the BNG.
  • the first possible implementation of the third aspect the second possible implementation of the third aspect or the third possible implementation of the third aspect, the fourth possibility in the third aspect
  • the implementation
  • the second HTTP request includes an MD, and the MD is obtained by performing an encryption operation on the identifier of the BNG according to the MD5.
  • the first possible implementation of the third aspect, the second possible implementation of the third aspect, the third possible implementation of the third aspect or the fourth possible aspect of the third aspect Implementation manner, in a fifth possible implementation manner of the third aspect,
  • the third HTTP request includes configuration information of the virtual machine
  • the creating unit is configured to create the virtual machine in the BNG according to the image and the configuration information.
  • a BNG including:
  • a first receiving unit configured to receive a first HTTP request sent by the user equipment, where the virtual machine is shipped On the BNG;
  • An adding unit configured to add an identifier of the virtual machine to the first HTTP request received by the first receiving unit, to obtain a second HTTP request
  • a sending unit configured to send, to the application server, the second HTTP request generated by the adding unit
  • a second receiving unit configured to receive a command sent by the application server to deploy the application server end in the virtual machine
  • a deployment unit configured to deploy the application server end in the virtual machine according to the command received by the second receiving unit.
  • the BNG deploys the application server end in the virtual machine according to a command sent by the application server to deploy the application server end in the virtual machine.
  • the application server can perform the interaction between the application server and the application client in the user device.
  • the BNG does not need to forward the HTTP request sent by the user equipment to the application server. Therefore, the above technical scheme helps to reduce the occupation of the bandwidth of the network.
  • the BNG also includes:
  • a third receiving unit configured to receive a first HTTP response sent by the application server, where the first HTTP response includes an identifier of the virtual machine, and the first HTTP response is a response corresponding to the second HTTP request;
  • a forwarding unit configured to forward, to the user equipment, the first HTTP port corresponding to the third receiving unit.
  • the identifier of the virtual machine includes a host name of the virtual machine, an IP address of the virtual machine, or Used to identify how to access the URL of the virtual machine.
  • the identifier of the virtual machine is carried in a header field or a payload of the first HTTP response.
  • FIG. 1 is a schematic structural diagram of an application scenario of an application solution according to an embodiment of the present invention
  • FIG. 2 is a schematic flowchart of a method for an HTTP network according to an embodiment of the present invention
  • a schematic flowchart of a method for an HTTP network is provided.
  • FIG. 4 is a schematic flowchart of a method for an HTTP network according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of an HTTP network provided by an embodiment of the present invention.
  • FIG. 6 is a schematic structural diagram of a BNG according to an embodiment of the present invention;
  • FIG. 7 is a schematic structural diagram of a BNG according to an embodiment of the present disclosure.
  • FIG. 8 is a schematic structural diagram of a BNG according to an embodiment of the present disclosure.
  • FIG. 9 is a schematic structural diagram of a BNG according to an embodiment of the present invention.
  • FIG. 10 is a schematic diagram of an application scenario of a method for an HTTP network according to an embodiment of the present disclosure.
  • FIG. 11 is a schematic diagram of signaling interaction in the application scenario shown in FIG. 10;
  • FIG. 12 is a schematic diagram of an application scenario of a method for an HTTP network according to an embodiment of the present disclosure
  • FIG. 13 is a schematic diagram of signaling interaction in the application scenario shown in FIG.
  • Embodiments of the present invention provide a method for an HTTP network and a BNG, which helps reduce the occupation of bandwidth of the network.
  • FIG. 1 is a structural diagram of a networking of an application scenario according to a technical solution provided by an embodiment of the present invention.
  • the networking shown in FIG. 1 includes a home network, an Internet service provider (ISP) server network, and an Internet content provider (ICP) server network.
  • the home network includes two UEs.
  • the two UEs include a mobile phone 101, a personal computer 102.
  • a residential gateway (RGW) 103 is also included in the home network.
  • the BNG104 is included in the ISP server network.
  • the ICP server network is included in the ICP server network.
  • the ICP server network is connected to the ISP server network via the Internet.
  • the ICP server 105 can be a file server, a web server, or a video server.
  • FIG. 2 is a schematic flowchart of a method for an HTTP network according to an embodiment of the present invention.
  • the method can be used in the networking structure shown in FIG.
  • the method can be performed by the BNG 104 of FIG.
  • the method includes:
  • the BNG receives a first HTTP request sent by the user equipment.
  • the user device can be a personal computer, a personal digital assistant, a mobile phone, or a set top box.
  • the first HTTP request may be sent by the application client by the application client.
  • the service corresponding to the application client may be a storage service, an instant communication service, or a search engine service.
  • the user device in FIG. 2 may be the personal computer 102 of FIG. 204.
  • the BNG adds the identifier of the BNG to the first HTTP request, to obtain a second HTTP request.
  • the identifier of the BNG may be a host name of the BNG, an IP address of the BNG, or a URL for identifying how to access the BNG.
  • the BNG sends the second HTTP request to an application server.
  • the application server can be a video server, an audio server, a web server, or a file server.
  • the application server side runs in the application server, and the application client corresponds to the application server end.
  • the application server in FIG. 2 may be the ICP server 105 in FIG.
  • the BNG receives a third HTTP request sent by the application server, where the third HTTP request is sent by the application server after receiving the second HTTP request, where the third HTTP request is included. Create location information for the mirror of the virtual machine.
  • the second HTTP request is used to enable the application server to send the third HTTP request.
  • the virtual machine can include an operating system.
  • the operating system can be run in the virtual machine.
  • the operating system can be Windows or Linux.
  • the application server side can run in the operating system.
  • the virtual machine includes the application server end, and the application server end runs in the virtual machine.
  • the BNG obtains the image according to the location information, where the BNG creates the virtual machine in the BNG according to the image.
  • the BNG can create the virtual machine in the BNG through a hypervisor.
  • the BNG creates the virtual machine in the BNG according to the image.
  • the application server side runs in the virtual machine.
  • the BNG is deployed to run After the virtual machine of the application server is used, the application client can interact with the application client in the user device to implement the application client. business.
  • the BNG does not need to forward the HTTP request sent by the user equipment to the application server. Therefore, the above technical solution helps to reduce the occupation of the bandwidth of the network.
  • the BNG sends the second to the application server.
  • the method may further include:
  • the BNG establishes an HTTP connection with the application server.
  • the establishing, by the BNG, the HTTP connection with the application server includes: receiving, by the BNG, the application server, according to the identifier of the BNG in the second HTTP request, for establishing the HTTP connection. request.
  • the method further includes:
  • the BNG sends a first HTTP response to the application server, where the first HTTP response is a response corresponding to the third HTTP request, and the first HTTP response includes an identifier of the virtual machine.
  • the BNG receives a second HTTP response sent by the application server, where the second HTTP response is a response corresponding to the second HTTP request, and the second HTTP response includes an identifier of the virtual machine.
  • the BNG forwards the second HTTP response to the user equipment.
  • the second HTTP response is used to enable the application client to send an HTTP request to the virtual machine by using the user equipment.
  • the identifier of the BNG includes a host name of the BNG, an IP address of the BNG, or a URL for identifying how to access the BNG.
  • the location information includes a URL for identifying how to access the image or a directory where the image is stored in the BNG.
  • the image may be pre-stored in the BNG.
  • the BNG can obtain the image according to the directory.
  • the image may be pre-stored in a web server.
  • the BNG may obtain the image according to the URL.
  • the network server can be a router or a switch.
  • the second HTTP request includes an MD, and the MD is obtained by performing an encryption operation on the identifier of the BNG according to the MD5.
  • the MD may be carried in a header field of the second HTTP request or in a payload of the second HTTP request.
  • the third HTTP request includes configuration information of the virtual machine.
  • the BNG creates the virtual machine in the BNG according to the image, and the BNG creates the virtual machine in the BNG according to the image and the configuration information.
  • the configuration information may include hardware resources for identifying the virtual machines to be created.
  • the hardware resources may include a central processing unit (CPU), a memory, or a register.
  • the configuration information may be pre-stored in the BNG.
  • FIG. 4 is a schematic flowchart diagram of a method for an HTTP network according to an embodiment of the present invention.
  • the method can be used in the networking structure shown in FIG.
  • the method can be performed by the BNG 104 of FIG.
  • the method includes:
  • the BNG receives a first HTTP request sent by the user equipment, where the virtual machine runs on the BNG.
  • the user device can be a personal computer, a personal digital assistant, a mobile phone, or a set top box.
  • the first HTTP request may be that the application client triggers the user The device sent.
  • the service corresponding to the application client may be a storage service, an instant communication service, or a search engine service.
  • the virtual machine can include an operating system.
  • the operating system can be run in the virtual machine.
  • the operating system can be Windows or Linux.
  • the user device in FIG. 4 may be the personal computer 102 of FIG.
  • the BNG adds an identifier of the virtual machine to the first HTTP request, to obtain a second HTTP request.
  • the identifier of the virtual machine may be a host name of the virtual machine, an IP address of the virtual machine, or a URL for identifying how to access the virtual machine.
  • the BNG sends the second HTTP request to an application server.
  • the application server can be a video server, an audio server, a web server, or a file server.
  • the application server side runs in the application server, and the application client corresponds to the application server end.
  • the application server in FIG. 4 may be the ICP server 105 in FIG.
  • the BNG receives a command sent by the application server to deploy the application server end in the virtual machine.
  • the application server can remotely log in to the BNG.
  • the application server can remotely log in to the BNG through telnet.
  • the BNG receives a command sent by the application server through the telnet user interface to deploy the application server end in the virtual machine.
  • the command may be an HTTP request
  • the HTTP request includes location information of the application server.
  • the location information includes a URL for identifying how to access the application server or a directory stored by the application server in the BNG.
  • the application server side may be pre-stored in the BNG.
  • the BNG may obtain the application server according to the directory.
  • the application server side may be pre-stored in a network server.
  • the BNG may obtain the application server according to the URL.
  • the network server can be a router or a switch.
  • the BNG deploys the application server end in the virtual machine according to the command.
  • the BNG can run the application server side in the virtual machine.
  • the application server side can be run in the operating system.
  • the BNG deploys the application server end in the virtual machine according to a command sent by the application server to deploy the application server end in the virtual machine.
  • the application server can perform the interaction between the application server and the application client in the user device.
  • the BNG does not need to forward the HTTP request sent by the user equipment to the application server. Therefore, the above technical scheme helps to reduce the occupation of the bandwidth of the network.
  • the method further includes:
  • the BNG receives a first HTTP response sent by the application server, where the first HTTP response includes an identifier of the virtual machine, and the first HTTP response is a response corresponding to the second HTTP request.
  • the BNG forwards the first HTTP response to the user equipment.
  • the first HTTP response is used to enable the application client to send an HTTP request to the virtual machine by using the user equipment.
  • the identifier of the virtual machine includes a host of the virtual machine The name, the IP address of the virtual machine, or a URL that identifies how to access the virtual machine.
  • the identifier of the virtual machine is carried in a header field or a payload of the first HTTP response.
  • the second HTTP request includes an MD
  • the MD is obtained by performing an encryption operation on the identifier of the virtual machine according to the MD5.
  • FIG. 6 is a schematic structural diagram of a BNG according to an embodiment of the present invention.
  • the BNG can be used to perform the method shown in Figure 2.
  • the BNG can be used in the networking structure shown in FIG.
  • the BNG may be the BNG 104 of Figure 1.
  • the BNG includes: a first receiving unit 602, configured to receive a first HTTP request sent by a user equipment.
  • the user device can be a personal computer, a personal digital assistant, a mobile phone, or a set top box.
  • the HTTP request may be sent by the application client by the application client.
  • the service corresponding to the application client may be a storage service, an instant communication service, or a search engine service.
  • the user device can be the personal computer 102 of FIG.
  • the first receiving unit 602 can be a first receiver.
  • the adding unit 604 is configured to add the identifier of the BNG to the first HTTP request received by the first receiving unit 602, to obtain a second HTTP request.
  • the identifier of the BNG may be a host name of the BNG, an IP address of the BNG, or a URL for identifying how to access the BNG.
  • the add unit 604 can be a processor.
  • the first sending unit 606 is configured to send, by the application server, the second HTTP request generated by the adding unit 604.
  • the application server may be a video server, an audio server, a website server, or a file server.
  • the application server side runs in the application server, and the application client corresponds to the application server end.
  • the application server may be the ICP server 105 in FIG.
  • the first transmitting unit 606 can be a first transmitter.
  • the second receiving unit 608 is configured to receive a third HTTP request sent by the application server, where the third HTTP request is sent by the application server after receiving the second HTTP request, where the third HTTP request is sent. Contains location information for creating a mirror of a virtual machine.
  • the second HTTP request is used to enable the application server to send the third HTTP request.
  • the virtual machine can include an operating system.
  • the operating system can be run in the virtual machine.
  • the operating system can be Windows or Linux.
  • the application server side can run in the operating system.
  • the virtual machine includes the application server end, and the application server end runs in the virtual machine.
  • the second receiving unit 608 can be a second receiver.
  • the second receiver and the first transmitter may be the same transceiver.
  • the creating unit 610 is configured to obtain the image according to the location information in the third HTTP request received by the second receiving unit 608, and create the virtual machine in the BNG according to the image.
  • the creation unit 610 can create the virtual machine in the BNG through a hypervisor.
  • creation unit 610 can be the processor.
  • the BNG creates the virtual machine in the BNG according to the image.
  • the application server side runs in the virtual machine.
  • the interaction between the application server end in the BNG and the application client in the user equipment may be implemented.
  • the BNG does not need to forward the HTTP request sent by the user equipment to the application server. Therefore, the above technical solution helps to reduce the occupation of the bandwidth of the network.
  • the BNG may further include an establishing unit, after the first sending unit 606 sends the second HTTP request to the application server, and receives the second receiving unit 608. Before the third HTTP request sent by the application server,
  • the establishing unit is configured to receive, by the application server, a request for establishing the HTTP connection, sent according to the identifier of the BNG in the second HTTP request.
  • the creating unit may be the processor.
  • the BNG shown in FIG. 6 may further include:
  • a second sending unit 612 configured to send a first HTTP response to the application server, where the first HTTP response is a response corresponding to the third HTTP request received by the second receiving unit 608, the first HTTP The response contains an identification of the virtual machine.
  • the second transmitting unit 612 can be a second transmitter.
  • the second transmitter and the first transmitter may be the same transmitter.
  • the third receiving unit 614 is configured to receive a second HTTP response sent by the application server, where the second HTTP response is a response corresponding to the second HTTP request, and the second HTTP response includes an identifier of the virtual machine .
  • the third receiving unit 614 can be a third receiver.
  • the third receiver and the second receiver may be the same receiver.
  • the forwarding unit 616 is configured to forward the second HTTP response received by the third receiving unit 614 to the user equipment.
  • the forwarding unit can be a sender.
  • the transmitter and the first receiver may be the same transceiver.
  • the identifier of the BNG includes a host name of the BNG, an IP address of the BNG, or a URL used to identify how to access the BNG.
  • the location information includes a URL for identifying how to access the image or a directory where the image is stored in the BNG.
  • the image may be pre-stored in the BNG.
  • the BNG can obtain the image according to the directory.
  • the image may be pre-stored in a web server.
  • the BNG may obtain the image according to the URL.
  • the network server can be a router or a switch.
  • the second HTTP request includes an MD
  • the MD is obtained by performing an encryption operation on the identifier of the BNG according to the MD5.
  • the MD may be carried in a header field of the second HTTP request or in a payload of the second HTTP request.
  • the third HTTP request includes configuration information of the virtual machine.
  • the creating unit 610 is configured to create the virtual machine in the BNG according to the image and the configuration information.
  • the configuration information may include hardware resources for identifying the virtual machines to be created.
  • the hardware resources may include a central processing unit (CPU), a memory, or a register.
  • the configuration information may be pre-stored in the BNG.
  • FIG. 8 is a schematic structural diagram of a BNG according to an embodiment of the present invention.
  • the BNG can be used to perform the method shown in Figure 4.
  • the BNG can be used in the networking structure shown in FIG.
  • the BNG may be the BNG 104 of Figure 1.
  • the BNG includes: a first receiving unit 802, configured to receive a first HTTP request sent by a user equipment, where the virtual machine runs on the BNG.
  • the user equipment may be a personal computer, a personal digital assistant, a mobile phone Or a set top box.
  • the first HTTP request may be sent by the application client by the application client.
  • the service corresponding to the application client may be a storage service, an instant communication service, or a search engine service.
  • the virtual machine can include an operating system.
  • the operating system can be run in the virtual machine.
  • the operating system can be Windows or Linux.
  • the user device can be the personal computer 102 of FIG.
  • the first receiving unit can be the first receiver.
  • the adding unit 804 is configured to add the identifier of the virtual machine to the first HTTP request received by the first receiving unit 802 to obtain a second HTTP request.
  • the identifier of the virtual machine may be a host name of the virtual machine, an IP address of the virtual machine, or a URL for identifying how to access the virtual machine.
  • the adding unit 804 can be a processor.
  • the sending unit 806 is configured to send the second HTTP request generated by the adding unit 804 to the application server.
  • the application server can be a video server, an audio server, a web server, or a file server.
  • the application server side runs in the application server, and the application client corresponds to the application server end.
  • the application server may be the application server 103 in FIG.
  • the transmitting unit 806 can be a transmitter.
  • the second receiving unit 808 is configured to receive a command sent by the application server to deploy the application server end in the virtual machine.
  • the application server can remotely log in to the BNG.
  • the application server can remotely log in to the BNG through telnet.
  • the second receiving unit 808 receives a command sent by the application server to deploy the application server end in the virtual machine through a telnet user interface.
  • the command may be an HTTP request
  • the HTTP request includes location information of the application server.
  • the location information includes a URL for identifying how to access the application server or a directory stored by the application server in the BNG.
  • the application server may be pre-stored in the BNG.
  • the BNG may obtain the application server according to the directory.
  • the application server side may be pre-stored in a network server.
  • the BNG may obtain the application server according to the URL.
  • the network server can be a router or a switch.
  • the second receiving unit 808 can be a second receiver.
  • the second receiver and the transmitter may be the same transceiver.
  • the deployment unit 810 is configured to deploy the application server end in the virtual machine according to the command received by the second receiving unit 808.
  • the deployment unit 810 can run the application server side in the virtual machine.
  • the application server side can be run in the operating system.
  • deployment unit 810 can be the processor.
  • the BNG deploys the application server end in the virtual machine according to a command sent by the application server to deploy the application server end in the virtual machine.
  • the application server can perform the interaction between the application server and the application client in the user device.
  • the BNG does not need to forward the HTTP request sent by the user equipment to the application server. Therefore, the above technical solution helps to reduce the occupation of the bandwidth of the network.
  • the BNG shown in FIG. 8 may further include:
  • the third receiving unit 812 is configured to receive a first HTTP response sent by the application server, where the first HTTP response includes an identifier of the virtual machine, and the first HTTP response is a response corresponding to the second HTTP request. .
  • the third receiving unit 812 can be a third receiver.
  • the third receiver and the second receiver may be the same receiver.
  • the forwarding unit 814 is configured to forward, to the user equipment, the first HTTP response received by the third receiving unit 812.
  • forwarding unit 814 can be the first transmitter.
  • the first transmitter and the first receiver may be the same transceiver.
  • the first HTTP response is used to enable the application client to send an HTTP request to the virtual machine by using the user equipment.
  • the identifier of the virtual machine includes a host name of the virtual machine, an IP address of the virtual machine, or a URL for identifying how to access the virtual machine.
  • the identifier of the virtual machine is carried in a header field or a payload of the first HTTP response.
  • the second HTTP request includes an MD
  • the MD is obtained by performing an encryption operation on the identifier of the virtual machine according to the MD5.
  • FIG. 10 is a schematic diagram of an application scenario of a method for an HTTP network according to an embodiment of the present invention.
  • the application scenario shown in Figure 10 includes a home network, an ISP server network, and an ICP server network.
  • the home network includes multiple UEs.
  • the plurality of UEs includes a mobile phone 1001 and a personal computer 1002.
  • the RGW1003 is also included in the home network.
  • the ISP server network includes multiple BNGs. Multiple BNGs include BNG1004.
  • the BNG 1004 includes a modification module 1005 and an application programming interface server (API server) 1006. Hypervisorl007 is included in API server 1006.
  • the ICP server network includes multiple ICP servers. Multiple ICP servers include ICP serverl010.
  • the personal computer 1002 sends an HTTP request to the ICP server 101.
  • the modification module 1005 adds the identifier of the BNG 1004 to the HTTP request, and generates an HTTP request carrying the identifier of the BNG 1004.
  • the BNG 1004 sends an HTTP request carrying the identity of the BNG 1004 to the ICP server 101 through the Internet.
  • the ICP server 101O After receiving the HTTP request carrying the identity of the BNG1004, the ICP server 101O notifies the BNG 1004 to load the VM 1009.
  • API serverl006 for loading the VM1009 is deployed in the BNG1004.
  • API server 1006 provides an application programming interface (API) for the port-mounted VM for ICP server lOlO calls.
  • API application programming interface
  • ICP serverlOlO can send an HTTP request to BNG1004 to invoke the API for loading VM1009.
  • the format of the HTTP request can be:
  • Host is the host name of API server 1006. Different BNGs provide API servers with different host names. ICP serverlOlO needs to determine which BNG to access the ISP network. "The imageRef content is used to guide the BNG1004 from where to obtain the image file corresponding to the VM1009. "configurationid” is used to guide the BNG1004 to allocate resources for the VM1009, such as the CPU. Number, memory capacity, disk capacity. The ICP server 1010 can drive the BNG1004 to load the VM1009 by calling the API for loading the VM1009.
  • the BNG 1004 includes a modification module 1005 that can insert a newly defined header field in the HTTP request initiated by the personal computer 1002.
  • FIG. 11 is a schematic diagram of signaling interaction in the application scenario shown in FIG. 10. As shown in Figure 11, the interaction process includes:
  • the personal computer 1002 sends a service request to the ICP server lOlO.
  • the business request can be an HTTP request.
  • the format of an HTTP request can be: GET htt : //www. icpl - com/ HTTP/1 - 1
  • User-Agent Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727' ⁇ .NET CLR 3.5.30729' ⁇ .NET CLR
  • the modification module of BNG1004 1005 inserts the identifier of BNG1004 in the header of the HTTP request.
  • the identity of the BNG1004 is carried through the new header field.
  • the identification of BNG1004 is
  • the access method provided by the BNG1004 for loading the VM's API For example, the IP address of API server 1006, the host name of API server 1006 or the URL of API server 1006.
  • This embodiment provides three expressions of the format of the newly defined Header Field.
  • the IP address of the API server 1006 can be:
  • API server 1006 can be:
  • Bng-Api- Server virtualmachine . a i . bngl234 ⁇ huawei ⁇ com
  • the URL of API server 1006 can be:
  • the format of the HTTP request can be:
  • User-Agent Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727' ⁇ .NET CLR 3.5.30729' ⁇ .NET CLR 3.0.30618' ⁇ .NET4.0C)
  • Virtualmachine ⁇ a i ⁇ bngl234 ⁇ huawei ⁇ com/versionl/virualmach ine other header fields; HTTP payload
  • the HTTP header generated by the modification module 1005 may include a check header field of the header field.
  • the check header field is used to verify the integrity of the newly added header field;
  • the BNG1004 sends the falsified HTTP request to the ICP server 1010.
  • the ICP server 101O obtains an access method for loading the API of the VM 1009 according to the identifier of the BNG 1004 in the header of the HTTP request. For example, ICP serverlOlO can pass The IP address of the API server 1006, the host name of the API serverl006, or the URL of the API serverl006 access the API for loading the VM1009.
  • ICP serverlOlO accesses the API provided by BNG1004 for loading VM1009, and loads VM1009 to BNG1004. ICP serverlOlO obtains the access mode of VM1009.
  • the specific implementation can be:
  • ICP serverlOlO judges that VM1009 is not loaded in ICP server lOlO in BNG1004, or ICP serverlOlO judges that the number of users requesting ICP serverlOlO service in BNG1004 exceeds the threshold, and it is decided to load VM1009 in BNG1004;
  • ICP serverlOlO calls the API provided by BNG1004 to load VM1009. Specifically, the ICP server 1010 sends an HTTP request to the BNG 1004.
  • the HTTP request carries the parameters required to load the VM1009.
  • the format of an HTTP request can be:
  • the BNG1004 completes the VM1009 loading process based on the parameters required to load the VM1009.
  • the BNG 1004 sends an HTTP response to the ICP server 1010.
  • the HTTP response carries the access method of the VM1009.
  • the access mode can be the IP address of the VM1009 or the host name of the VM1009.
  • ICP serverlOlO notifies the access mode of the personal computer 1002VM1009.
  • the HTTP response can be sent to the personal computer 1002.
  • the IP of the VM1009 can be carried in the HTTP response. Address or host name of VM1009.
  • the access method of the VM1009 can be carried in the payload of the HTTP response.
  • the format of an HTTP response can be:
  • HTTP redirect can be carried in HTTP redirect.
  • the format of HTTP redirect can be:
  • FIG. 12 is a schematic diagram of an application scenario of a method for an HTTP network according to an embodiment of the present invention.
  • the application scenario shown in Figure 12 includes a home network, an ISP server network, and an ICP server network.
  • the home network includes multiple UEs.
  • the plurality of UEs includes a mobile phone 1201 and a personal computer 1202.
  • the RGW1203 is also included in the home network.
  • the ISP server network includes multiple BNGs. Multiple BNGs include BNG1204.
  • the BNG 1204 includes a modification module 1205 and an API server 1206.
  • the Hypervisor 1207 is included in the API server 1206.
  • the ICP server network includes multiple ICP servers. Multiple ICP servers include ICP serverl210.
  • the personal computer 1202 sends an HTTP request to the ICP server 1210.
  • the modification module 1205 adds the identifier of the VM 1209 to the HTTP request, and generates an HTTP request carrying the identifier of the VM 1209.
  • the BNG 1204 sends an HTTP request carrying the identity of the VM 1209 to the ICP server 1210 over the Internet.
  • the ICP server 1210 After receiving the HTTP request carrying the identity of the VM 1209, the ICP server 1210 notifies the BNG 1204 to deploy the application server side in the VM 1209.
  • an API server 1206 for loading VM1209 is deployed in the BNG 1004. Repair The modification module 1205 can obtain the identity of the VM 1209 from the API server 1206, thereby generating an identity HTTP request carrying the VM 1209.
  • the identity of VM1209 can be carried in the header field of the header of the HTTP request.
  • the ID of VM1209 can be the IP address of VM1209 or the host name of VM1209.
  • the format of the VM1209's IP address can be:
  • the format of the host name of VM1209 can be:
  • FIG. 13 is a schematic diagram of signaling interaction in the application scenario shown in FIG. As shown in Figure 13, the interaction process includes:
  • the personal computer 1202 sends a service request to the ICP server l210.
  • the business request can be an HTTP request.
  • the packet modification module of the BNG1204 1205 inserts the identifier of the VM1209 in the header of the HTTP request.
  • the identity of VM1209 can be carried in the header field of the header of the HTTP request.
  • the ID of VM1209 can be the IP address of VM1209 or the host name of VM1209.
  • the BNG1204 sends the modified HTTP request to the ICP serverl210.
  • the ICP serverl 210 determines whether the application server side is deployed in the VM1209. If the application server is not deployed in the VM1209, the ICP serverl210 sends a command to deploy the application server in the VM1209 to the BNG1204 through the telnet user interface.
  • the BNG1204 deploys the application server side in the VM1209.
  • the ICP serverl 210 sends an HTTP response to the personal computer 1202.
  • the HTTP response carries the identity of the VM1209.
  • the ID of VM1209 can be the IP address of VM1209 or the host name of VM1209. Therefore, the personal computer 1202 obtains the access mode of the VM 1209.
  • the access mode of the VM1209 can be carried in the payload of the http packet.
  • the format of an HTTP response can be: HTTP/ 1 - 0 200 OK
  • the access method of the VM1209 can be carried in HTTP redirects.
  • the format of HTTP redirect can be:
  • the disclosed systems, devices, and methods may be implemented in other ways.
  • the device embodiments described above are only schematic.
  • the division of the unit may be only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined. Either can be integrated into another system, or some features can be ignored, or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
  • the component displayed as a unit may or may not be a physical unit, that is, may be located in one place Square, or it can be distributed to multiple network elements. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the functions, if implemented in the form of software functional units and sold or used as separate products, may be stored in a computer readable storage medium.
  • the technical solution of the present invention which is essential or contributes to the prior art, or a part of the technical solution, may be embodied in the form of a software product, which is stored in a storage medium, including
  • the instructions are used to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like, which can store program code. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Power Engineering (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供了一种用于HTTP网络的方法,包括:BNG接收用户设备发送的第一HTTP请求;BNG将BNG的标识添加到第一HTTP请求中,得到第二HTTP请求;BNG向应用服务器发送第二HTTP请求;BNG接收应用服务器发送的第三HTTP请求,第三HTTP请求中包含用于创建虚拟机的镜像的位置信息;BNG根据位置信息获得镜像,BNG根据镜像在BNG中创建虚拟机。此外,还提供了其他方法以及BNG。上述技术方案有助于降低对网络的带宽的占用。

Description

用于超文本传输协议网络的方法及宽带网络网关 技术领域 本发明实施例涉及通信技术,尤其涉及用于超文本传输协议( Hypertext Transfer Protocol, HTTP ) 网络的方法及宽带网络网关 ( broadband network gateway, BNG )„
背景技术 用户设备 ( user equipment )运行应用程序客户端 ( application client ) 。 应用月良务器 ( application server )运行应用程序月良务器端 ( application server )。 通过所述应用程序客户端与所述应用程序服务器端进行交互, 业务被执行。 举例来说, 所述应用程序客户端可以是华为公司提供的华为网盘(DBank ) 客户端或者谷歌公司提供的谷歌地球( Google Earth )客户端。 所述应用程 序服务器端可以是华为公司提供的华为网盘服务器端。 所述用户设备可以 是个人电脑 ( ersonal computer, PC ) , 移动电话 ( mobile phone , MP )或 者个人数字助理(personal data assistant, PDA ) 。 所述应用服务器可以是 网站服务器(web server ) 。 所述业务可以是向云服务器上传文件。 所述文 件可以是视频文件或者音频文件。
要执行所述业务, 所述用户设备需要发送 HTTP请求。 BNG接收到所 述 HTTP请求后, 将所述 HTTP请求转发到公网。 所述 HTTP请求通过所 述公网到达所述应用服务器。 所述应用服务器接收到所述 HTTP请求后, 发送与所述 HTTP请求对应的 HTTP响应。所述 BNG接收到所述 HTTP响 应后, 将所述 HTTP响应转发到所述用户设备。 上述技术方案中, 对网络 的带宽的占用较多。
发明内容
本发明实施例提供了用于 HTTP网络的方法及 BNG, 有助于降低对网 络的带宽的占用。 第一方面, 提供了一种用于 HTTP网络的方法, 包括:
BNG接收用户设备发送的第一 HTTP请求;
所述 BNG将所述 BNG的标识添加到所述第一 HTTP请求中, 得到第 二 HTTP请求;
所述 BNG向应用服务器发送所述第二 HTTP请求;
所述 BNG接收所述应用服务器发送的第三 HTTP请求,所述第三 HTTP 请求是所述应用服务器接收到所述第二 HTTP请求后发送的, 所述第三 HTTP请求中包含用于创建虚拟机 ( virtual machine, VM )的镜像 ( image ) 的位置信息;
所述 BNG根据所述位置信息获得所述镜像, 所述 BNG根据所述镜像 在所述 BNG中创建所述虚拟机。
上述技术方案中, 所述 BNG根据所述镜像在所述 BNG中创建所述虚 拟机。 所述应用程序服务器端运行在所述虚拟机中。 所述 BNG部署了运行 了所述应用程序服务器端的所述虚拟机后,通过所述 BNG中的所述应用程 序服务器端与所述用户设备中的所述应用程序客户端的交互即可实现所述 应用程序客户端对应的业务。所述 BNG不需要向所述应用服务器转发所述 用户设备发送的 HTTP请求。 因此, 上述技术方案有助于降低对网络的带 宽的占用。
第一方面的第一种可能的实现方式中,
所述 BNG根据所述镜像在所述 BNG中创建所述虚拟机以后, 所述方 法还包括:
所述 BNG向所述应用服务器发送第一 HTTP响应,所述第一 HTTP响 应是所述第三 HTTP请求对应的响应 , 所述第一 HTTP响应包含所述虚拟 机的标识;
所述 BNG接收所述应用服务器发送的第二 HTTP响应,所述第二 HTTP 响应是所述第二 HTTP请求对应的响应, 所述第二 HTTP响应包括所述虚 拟机的标识;
所述 BNG向所述用户设备转发所述第二 HTTP响应。
根据第一方面或者第一方面的第一种可能的实现方式, 在第一方面的 第二种可能的实现方式中,
所述 BNG的标识包括所述 BNG的主机名 ( host name ) 、 所述 BNG 的因特网协议( Internet Protocol, IP )地址或者用于标识如何访问所述 BNG 的统一资源定位符( uniform resource locator, URL ) 。
根据第一方面、 第一方面的第一种可能的实现方式或者第一方面的第 二种可能的实现方式, 在第一方面的第三种可能的实现方式中,
所述位置信息包括用于标识如何访问所述镜像的 URL或者所述镜像存 储在所述 BNG的目录。
根据第一方面、 第一方面的第一种可能的实现方式, 第一方面的第二 种可能的实现方式或者第一方面的第三种可能的实现方式, 在第一方面的 第四种可能的实现方式中,
所述第二 HTTP请求中包含消息摘要(Message-Digest, MD ) , 所述 Message-Digest是根据消息摘要算法第五版 ( Message-Digest Algorithm 5, MD5 )对所述 BNG的标识进行加密运算得到的。
根据第一方面、 第一方面的第一种可能的实现方式, 第一方面的第二 种可能的实现方式, 第一方面的第三种可能的实现方式或者第一方面的第 四种可能的实现方式, 在第一方面的第五种可能的实现方式中,
所述第三 HTTP请求包含所述虚拟机的配置信息,
所述 BNG根据所述镜像在所述 BNG中创建所述虚拟机包括所述 BNG 根据所述镜像以及所述配置信息在所述 BNG中创建所述虚拟机。
第二方面, 提供了一种用于 HTTP网络的方法, 包括:
BNG接收用户设备发送的第一 HTTP请求, 虚拟机运行在所述 BNG 上; 所述 BNG将所述虚拟机的标识添加到所述第一 HTTP请求中,得到第 二 HTTP请求;
所述 BNG向应用服务器发送所述第二 HTTP请求;
所述 BNG接收所述应用服务器发送的在所述虚拟机中部署所述应用程 序服务器端的命令;
所述 BNG根据所述命令,在所述虚拟机中部署所述应用程序服务器端。 上述技术方案中,所述 BNG根据所述应用服务器发送的在所述虚拟机 中部署所述应用程序服务器端的命令在所述虚拟机中部署所述应用程序服 务器端。 所述 BNG在所述虚拟机中部署了所述应用程序服务器端后, 通过 所述 BNG中的所述应用程序服务器端与所述用户设备中的所述应用程序客 户端的交互即可实现所述应用程序客户端对应的业务。所述 BNG不需要向 所述应用服务器转发所述用户设备发送的 HTTP请求。 因此, 上述技术方 案有助于降低对网络的带宽的占用。
第二方面的第一种可能的实现方式中,
所述 BNG根据所述命令,在所述虚拟机中部署所述应用程序服务器端 以后, 所述方法还包括:
所述 BNG接收所述应用服务器发送的第一 HTTP响应,所述第一 HTTP 响应包含所述虚拟机的标识, 所述第一 HTTP响应是所述第二 HTTP请求 对应的响应;
所述 BNG向所述用户设备转发所述第一 HTTP响应。
根据第二方面或者第二方面的第一种可能的实现方式, 在第二方面的 第二种可能的实现方式中,
所述虚拟机的标识包括所述虚拟机的主机名、 所述虚拟机的 IP地址或 者用于标识如何访问所述虚拟机的 URL。
根据第二方面的第一种可能的实现方式, 在第二方面的第三种可能的 实现方式中, 所述虚拟机的标识承载在所述第一 HTTP响应的头域 ( header field )或 者净荷(payload ) 中。
第三方面, 提供了一种 BNG, 包括:
第一接收单元, 用于接收用户设备发送的第一 HTTP请求;
添加单元 ,用于将所述 BNG的标识添加到所述第一接收单元接收的所 述第一 HTTP请求中, 得到第二 HTTP请求;
第一发送单元, 用于向应用服务器发送所述添加单元生成的所述第二
HTTP请求;
第二接收单元, 用于接收所述应用服务器发送的第三 HTTP请求, 所 述第三 HTTP请求是所述应用服务器接收到所述第二 HTTP请求后发送的, 所述第三 HTTP请求中包含用于创建虚拟机的镜像的位置信息;
创建单元, 用于根据所述第二接收单元接收的所述第三 HTTP请求中 的所述位置信息获得所述镜像,根据所述镜像在所述 BNG中创建所述虚拟 机。
上述技术方案中, 所述 BNG根据所述镜像在所述 BNG中创建所述虚 拟机。 所述应用程序服务器端运行在所述虚拟机中。 所述 BNG部署了运行 了所述应用程序服务器端的所述虚拟机后,通过所述 BNG中的所述应用程 序服务器端与所述用户设备中的所述应用程序客户端的交互即可实现所述 应用程序客户端对应的业务。所述 BNG不需要向所述应用服务器转发所述 用户设备发送的 HTTP请求。 因此, 上述技术方案有助于降低对网络的带 宽的占用。
第三方面的第一种可能的实现方式中,
所述 BNG还包括:
第二发送单元, 用于向所述应用服务器发送第一 HTTP响应, 所述第 一 HTTP响应是所述第三 HTTP请求对应的响应 , 所述第一 HTTP响应包 含所述虚拟机的标识; 第三接收单元, 用于接收所述应用服务器发送的第二 HTTP响应, 所 述第二 HTTP响应是所述第二 HTTP请求对应的响应, 所述第二 HTTP响 应包括所述虚拟机的标识;
转发单元, 用于向所述用户设备转发所述第三接收单元接收的所述第 二 HTTP口向应。
根据第三方面或者第三方面的第一种可能的实现方式, 在第三方面的 第二种可能的实现方式中,
所述 BNG的标识包括所述 BNG的主机名、 所述 BNG的 IP地址或者 用于标识如何访问所述 BNG的 URL。
根据第三方面、 第三方面的第一种可能的实现方式或者第三方面的第 二种可能的实现方式, 在第三方面的第三种可能的实现方式中,
所述位置信息包括用于标识如何访问所述镜像的 URL或者所述镜像存 储在所述 BNG的目录。
根据第三方面、 第三方面的第一种可能的实现方式, 第三方面的第二 种可能的实现方式或者第三方面的第三种可能的实现方式, 在第三方面的 第四种可能的实现方式中,
所述第二 HTTP请求中包含 MD, 所述 MD是根据 MD5对所述 BNG 的标识进行加密运算得到的。
根据第三方面、 第三方面的第一种可能的实现方式, 第三方面的第二 种可能的实现方式, 第三方面的第三种可能的实现方式或者第三方面的第 四种可能的实现方式, 在第三方面的第五种可能的实现方式中,
所述第三 HTTP请求包含所述虚拟机的配置信息,
所述创建单元用于根据所述镜像以及所述配置信息在所述 BNG中创建 所述虚拟机。
第四方面, 提供了一种 BNG, 包括:
第一接收单元, 用于接收用户设备发送的第一 HTTP请求, 虚拟机运 行在所述 BNG上;
添加单元, 用于将所述虚拟机的标识添加到所述第一接收单元接收的 所述第一 HTTP请求中, 得到第二 HTTP请求;
发送单元,用于向应用服务器发送所述添加单元生成的所述第二 HTTP 请求;
第二接收单元, 用于接收所述应用服务器发送的在所述虚拟机中部署 所述应用程序服务器端的命令;
部署单元, 用于根据所述第二接收单元接收的所述命令, 在所述虚拟 机中部署所述应用程序服务器端。
上述技术方案中,所述 BNG根据所述应用服务器发送的在所述虚拟机 中部署所述应用程序服务器端的命令在所述虚拟机中部署所述应用程序服 务器端。 所述 BNG在所述虚拟机中部署了所述应用程序服务器端后, 通过 所述 BNG中的所述应用程序服务器端与所述用户设备中的所述应用程序客 户端的交互即可实现所述应用程序客户端对应的业务。所述 BNG不需要向 所述应用服务器转发所述用户设备发送的 HTTP请求。 因此, 上述技术方 案有助于降低对网络的带宽的占用。
第四方面的第一种可能的实现方式中,
所述 BNG还包括:
第三接收单元, 用于接收所述应用服务器发送的第一 HTTP响应, 所 述第一 HTTP响应包含所述虚拟机的标识, 所述第一 HTTP响应是所述第 二 HTTP请求对应的响应;
转发单元, 用于向所述用户设备转发所述第三接收单元接收的所述第 一 HTTP口向应。
根据第四方面或者第四方面的第一种可能的实现方式, 在第四方面的 第二种可能的实现方式中,
所述虚拟机的标识包括所述虚拟机的主机名、 所述虚拟机的 IP地址或 者用于标识如何访问所述虚拟机的 URL。
根据第四方面的第一种可能的实现方式, 在第四方面的第三种可能的 实现方式中,
所述虚拟机的标识承载在所述第一 HTTP响应的头域或者净荷中。
附图说明 为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对 实施例或现有技术描述中所需要使用的附图作一简单地介绍, 显而易见地, 下面描述中的附图是本发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。
图 1是本发明实施例提供的技术方案的一种应用场景的组网结构图; 图 2是本发明实施例提供的一种用于 HTTP网络的方法的流程示意图; 图 3是本发明实施例提供的一种用于 HTTP网络的方法的流程示意图; 图 4是本发明实施例提供的一种用于 HTTP网络的方法的流程示意图; 图 5是本发明实施例提供的一种用于 HTTP网络的方法的流程示意图; 图 6为本发明实施例提供的一种 BNG的结构示意图;
图 7为本发明实施例提供的一种 BNG的结构示意图;
图 8为本发明实施例提供的一种 BNG的结构示意图;
图 9为本发明实施例提供的一种 BNG的结构示意图;
图 10为本发明实施例提供的一种用于 HTTP网络的方法的应用场景的 示意图;
图 11为图 10所示的应用场景中的信令交互示意图;
图 12为本发明实施例提供的一种用于 HTTP网络的方法的应用场景的 示意图;
图 13为图 12所示的应用场景中的信令交互示意图。
具体实施方式 为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本 发明实施例中的附图, 对本发明实施例中的技术方案进行描述, 显然, 所 描述的实施例是本发明一部分实施例, 而不是全部的实施例。 基于本发明 中的实施例, 本领域普通技术人员在没有作出创造性劳动前提下所获得的 所有其他实施例, 都属于本发明保护的范围。
本发明实施例提供了用于 HTTP网络的方法以及 BNG, 有助于降低对 网络的带宽的占用。
图 1 为本发明实施例提供的技术方案的一种应用场景的组网结构图。 图 1所示的组网包括家庭网络、因特网服务提供者( Internet service provider, ISP ) server网络以及因特网内容提供者( Internet content provider, ICP ) server网络。 其中, 家庭网络中包括两个 UE。 两个 UE包括移动电话 101、 个人电脑 102。家庭网络中还包括住宅网关( residential gateway, RGW ) 103。 ISP server网络中包括 BNG104。 ICP server网络中包括 ICP server 105。 ICP server网络通过因特网与 ISP server网络连接。
举例来说, ICP server 105可以是文件服务器(file server ) 、 网站服务 器 ( web server )或者视频服务器 ( video server ) 。
图 2为本发明实施例提供的一种用于 HTTP网络的方法的流程示意图。 所述方法可以用于图 1所示的组网结构中。 具体来说, 所述方法可以被图 1 中的 BNG104执行。 参见图 2, 所述方法包括:
202、 BNG接收用户设备发送的第一 HTTP请求。
举例来说, 所述用户设备可以是个人电脑、 个人数字助理、 移动电话 或者机顶盒。
举例来说, 所述第一 HTTP请求可以是应用程序客户端触发所述用户 设备发送的。
举例来说, 所述应用程序客户端对应的业务可以是存储业务、 即时通 信业务或者搜索引擎业务。
举例来说, 图 2中的所述用户设备可以是图 1中个人电脑 102。 204、 所述 BNG将所述 BNG的标识添加到所述第一 HTTP请求中, 得 到第二 HTTP请求。
举例来说,所述 BNG的标识可以是所述 BNG的主机名、所述 BNG的 IP地址或者用于标识如何访问所述 BNG的 URL。
206、 所述 BNG向应用服务器发送所述第二 HTTP请求。
举例来说, 所述应用服务器可以是视频服务器、 音频服务器、 网站服 务器或者文件服务器。
举例来说, 应用程序服务器端运行在所述应用服务器中, 所述应用程 序客户端对应所述应用程序服务器端。
举例来说, 图 2中的所述应用服务器可以是图 1中的 ICP serverl05。
208、 所述 BNG接收所述应用服务器发送的第三 HTTP请求, 所述第 三 HTTP请求是所述应用服务器接收到所述第二 HTTP请求后发送的, 所 述第三 HTTP请求中包含用于创建虚拟机的镜像的位置信息。
举例来说, 所述第二 HTTP请求用于使能所述应用服务器发送所述第 三 HTTP请求。
举例来说, 所述虚拟机可以包括操作系统。 所述操作系统可以运行在 所述虚拟机中。 所述操作系统可以是 Windows或者 Linux。 举例来说, 所 述应用程序服务器端可以运行在所述操作系统中。
举例来说, 所述虚拟机包含所述应用程序服务器端, 所述应用程序服 务器端运行在所述虚拟机中。
210、 所述 BNG根据所述位置信息获得所述镜像, 所述 BNG根据所述 镜像在所述 BNG中创建所述虚拟机。
举例来说, 所述 BNG可以通过 hypervisor在所述 BNG中创建所述虚 拟机。
上述技术方案中, 所述 BNG根据所述镜像在所述 BNG中创建所述虚 拟机。 所述应用程序服务器端运行在所述虚拟机中。 所述 BNG部署了运行 了所述应用程序服务器端的所述虚拟机后,通过所述 BNG中的所述应用程 序服务器端与所述用户设备中的所述应用程序客户端的交互即可实现所述 应用程序客户端对应的业务。所述 BNG不需要向所述应用服务器转发所述 用户设备发送的 HTTP请求。 因此, 上述技术方案有助于降低对网络的带 宽的占用。
可选地, 图 2所示的方法中, 所述 BNG向应用服务器发送所述第二
HTTP请求之后, 以及所述 BNG接收所述应用服务器发送的第三 HTTP请 求之前, 所述方法还可以包括:
所述 BNG建立与所述应用服务器的 HTTP连接。
举例来说, 所述 BNG建立与所述应用服务器的 HTTP连接包括: 所述 BNG接收所述应用服务器根据所述第二 HTTP请求中的所述 BNG 的标识发送的用于建立所述 HTTP连接的请求。
可选地, 图 2所述的方法中, 所述 BNG根据所述镜像在所述 BNG中 创建所述虚拟机以后, 所述方法还包括:
212、所述 BNG向所述应用服务器发送第一 HTTP响应,所述第一 HTTP 响应是所述第三 HTTP请求对应的响应 , 所述第一 HTTP响应包含所述虚 拟机的标识。
214、 所述 BNG接收所述应用服务器发送的第二 HTTP响应, 所述第 二 HTTP响应是所述第二 HTTP请求对应的响应 , 所述第二 HTTP响应包 括所述虚拟机的标识。
216、 所述 BNG向所述用户设备转发所述第二 HTTP响应。
关于 212、 214以及 216, 请参见图 3。
可选地, 上述技术方案中, 所述第二 HTTP响应用于使能所述应用程 序客户端通过所述用户设备向所述虚拟机发送 HTTP请求。
可选地, 上述技术方案中, 所述 BNG的标识包括所述 BNG的主机名、 所述 BNG的 IP地址或者用于标识如何访问所述 BNG的 URL。 可选地, 上述技术方案中, 所述位置信息包括用于标识如何访问所述 镜像的 URL或者所述镜像存储在所述 BNG的目录。
举例来说, 所述镜像可以预先存储在所述 BNG中。 所述 BNG可以根 据所述目录获得所述镜像。
举例来说, 所述镜像可以预先存储在网络服务器中。 所述 BNG可以根 据所述 URL获得所述镜像。 所述网络服务器可以是路由器或者交换机。 可选地, 上述技术方案中, 所述第二 HTTP请求中包含 MD, 所述 MD 是根据 MD5对所述 BNG的标识进行加密运算得到的。
举例来说, 所述 MD可以承载在所述第二 HTTP请求的头域中或者所 述第二 HTTP请求的净荷中。
可选地, 上述技术方案中, 所述第三 HTTP请求包含所述虚拟机的配 置信息。 所述 BNG根据所述镜像在所述 BNG中创建所述虚拟机包括所述 BNG根据所述镜像以及所述配置信息在所述 BNG中创建所述虚拟机。
举例来说, 所述配置信息可以包括用于标识为待创建的所述虚拟机分 配的硬件资源。 所述硬件资源可以包括中央处理器( central processing unit, CPU ) 、 存储器或者寄存器。
举例来说, 所述配置信息可以预先存储在所述 BNG中。
图 4为本发明实施例提供的一种用于 HTTP网络的方法的流程示意图。 所述方法可以用于图 1所示的组网结构中。 具体来说, 所述方法可以被图 1 中的 BNG104执行。 参见图 4, 所述方法包括:
402、 BNG接收用户设备发送的第一 HTTP请求, 虚拟机运行在所述 BNG上。
举例来说, 所述用户设备可以是个人电脑、 个人数字助理、 移动电话 或者机顶盒。
举例来说, 所述第一 HTTP请求可以是应用程序客户端触发所述用户 设备发送的。
举例来说, 所述应用程序客户端对应的业务可以是存储业务、 即时通 信业务或者搜索引擎业务。
举例来说, 所述虚拟机可以包括操作系统。 所述操作系统可以运行在 所述虚拟机中。 所述操作系统可以是 Windows或者 Linux。
举例来说, 图 4中的所述用户设备可以是图 1中个人电脑 102。
404、 所述 BNG将所述虚拟机的标识添加到所述第一 HTTP请求中, 得到第二 HTTP请求。
举例来说, 所述虚拟机的标识可以是所述虚拟机的主机名、 所述虚拟 机的 IP地址或者用于标识如何访问所述虚拟机的 URL。
406、 所述 BNG向应用服务器发送所述第二 HTTP请求。
举例来说, 所述应用服务器可以是视频服务器、 音频服务器、 网站服 务器或者文件服务器。
举例来说, 应用程序服务器端运行在所述应用服务器中, 所述应用程 序客户端对应所述应用程序服务器端。
举例来说, 图 4中的所述应用服务器可以是图 1中的 ICP serverl05。
408、 所述 BNG接收所述应用服务器发送的在所述虚拟机中部署所述 应用程序服务器端的命令。
举例来说, 所述应用服务器可以远程登录所述 BNG。 例如, 所述应用 服务器可以通过 telnet远程登录所述 BNG。
举例来说, 所述 BNG接收所述应用服务器通过 telnet的用户界面发送 的在所述虚拟机中部署所述应用程序服务器端的命令。
举例来说, 所述命令可以是 HTTP请求, 所述 HTTP请求中包含所述 应用服务器端的位置信息。
举例来说, 所述位置信息包括用于标识如何访问所述应用服务器端的 URL或者所述应用服务器端存储在所述 BNG的目录。 举例来说,所述应用服务器端可以预先存储在所述 BNG中。所述 BNG 可以根据所述目录获得所述应用服务器端。
举例来说,所述应用服务器端可以预先存储在网络服务器中。所述 BNG 可以根据所述 URL获得所述应用服务器端。 所述网络服务器可以是路由器 或者交换机。
410、 所述 BNG根据所述命令, 在所述虚拟机中部署所述应用程序服 务器端。
举例来说,所述 BNG可以在所述虚拟机中运行所述应用程序服务器端。 举例来说, 所述应用程序服务器端可以运行在所述操作系统中。
上述技术方案中,所述 BNG根据所述应用服务器发送的在所述虚拟机 中部署所述应用程序服务器端的命令在所述虚拟机中部署所述应用程序服 务器端。 所述 BNG在所述虚拟机中部署了所述应用程序服务器端后, 通过 所述 BNG中的所述应用程序服务器端与所述用户设备中的所述应用程序客 户端的交互即可实现所述应用程序客户端对应的业务。所述 BNG不需要向 所述应用服务器转发所述用户设备发送的 HTTP请求。 因此, 上述技术方 案有助于降低对网络的带宽的占用。
可选地, 图 4所述的方法中, 所述 BNG根据所述命令, 在所述虚拟机 中部署所述应用程序服务器端以后, 所述方法还包括:
502、 所述 BNG接收所述应用服务器发送的第一 HTTP响应, 所述第 一 HTTP 响应包含所述虚拟机的标识, 所述第一 HTTP 响应是所述第二 HTTP请求对应的响应。
504、 所述 BNG向所述用户设备转发所述第一 HTTP响应。
关于 502以及 504, 请参见图 5。
可选地, 上述技术方案中, 所述第一 HTTP响应用于使能所述应用程 序客户端通过所述用户设备向所述虚拟机发送 HTTP请求。
可选地, 上述技术方案中, 所述虚拟机的标识包括所述虚拟机的主机 名、 所述虚拟机的 IP地址或者用于标识如何访问所述虚拟机的 URL。
可选地, 上述技术方案中, 所述虚拟机的标识承载在所述第一 HTTP 响应的头域或者净荷中。
可选地, 上述技术方案中, 所述第二 HTTP请求中包含 MD, 所述 MD 是根据 MD5对所述虚拟机的标识进行加密运算得到的。
图 6为本发明实施例提供的一种 BNG的结构示意图。 所述 BNG可以 用于执行图 2所示的方法。 所述 BNG可以用于图 1所示的组网结构中。 具 体来说, 所述 BNG可以是图 1中的 BNG104。 参见图 6, 所述 BNG包括: 第一接收单元 602 , 用于接收用户设备发送的第一 HTTP请求。
举例来说, 所述用户设备可以是个人电脑、 个人数字助理、 移动电话 或者机顶盒。
举例来说, 所述 HTTP请求可以是应用程序客户端触发所述用户设备 发送的。
举例来说, 所述应用程序客户端对应的业务可以是存储业务、 即时通 信业务或者搜索引擎业务。
举例来说, 所述用户设备可以是图 1中个人电脑 102。
举例来说, 第一接收单元 602可以是第一接收器。
添加单元 604, 用于将所述 BNG的标识添加到所述第一接收单元 602 接收的所述第一 HTTP请求中, 得到第二 HTTP请求。
举例来说,所述 BNG的标识可以是所述 BNG的主机名、所述 BNG的 IP地址或者用于标识如何访问所述 BNG的 URL。
举例来说, 添加单元 604可以是处理器。
第一发送单元 606,用于向应用服务器发送所述添加单元 604生成的所 述第二 HTTP请求。
举例来说, 所述应用服务器可以是视频服务器、 音频服务器、 网站服 务器或者文件服务器。 举例来说, 应用程序服务器端运行在所述应用服务器中, 所述应用程 序客户端对应所述应用程序服务器端。
举例来说, 所述应用服务器可以是图 1中的 ICP serverl05。
举例来说, 所述第一发送单元 606可以是第一发送器。
第二接收单元 608, 用于接收所述应用服务器发送的第三 HTTP请求, 所述第三 HTTP请求是所述应用服务器接收到所述第二 HTTP请求后发送 的, 所述第三 HTTP请求中包含用于创建虚拟机的镜像的位置信息。
举例来说, 所述第二 HTTP请求用于使能所述应用服务器发送所述第 三 HTTP请求。
举例来说, 所述虚拟机可以包括操作系统。 所述操作系统可以运行在 所述虚拟机中。 所述操作系统可以是 Windows或者 Linux。 举例来说, 所 述应用程序服务器端可以运行在所述操作系统中。
举例来说, 所述虚拟机包含所述应用程序服务器端, 所述应用程序服 务器端运行在所述虚拟机中。
举例来说, 第二接收单元 608可以是第二接收器。 所述第二接收器与 所述第一发送器可以是同一个收发器。
创建单元 610, 用于根据所述第二接收单元 608接收的所述第三 HTTP 请求中的所述位置信息获得所述镜像,根据所述镜像在所述 BNG中创建所 述虚拟机。
举例来说, 创建单元 610可以通过 hypervisor在所述 BNG中创建所述 虚拟机。
举例来说, 创建单元 610可以是所述处理器。
上述技术方案中, 所述 BNG根据所述镜像在所述 BNG中创建所述虚 拟机。 所述应用程序服务器端运行在所述虚拟机中。 所述 BNG部署了运行 了所述应用程序服务器端的所述虚拟机后,通过所述 BNG中的所述应用程 序服务器端与所述用户设备中的所述应用程序客户端的交互即可实现所述 应用程序客户端对应的业务。所述 BNG不需要向所述应用服务器转发所述 用户设备发送的 HTTP请求。 因此, 上述技术方案有助于降低对网络的带 宽的占用。
可选地, 图 6所示的 BNG中, 所述 BNG还可以包括建立单元, 用于 在第一发送单元 606向应用服务器发送所述第二 HTTP请求之后, 以及在 第二接收单元 608接收所述应用服务器发送的第三 HTTP请求之前,
建立与所述应用服务器的 HTTP连接。
举例来说,所述建立单元用于接收所述应用服务器根据所述第二 HTTP 请求中的所述 BNG的标识发送的用于建立所述 HTTP连接的请求。
举例来说, 所述创建单元可以是所述处理器。
可选地, 图 6所示的 BNG中, 还可以包括:
第二发送单元 612, 用于向所述应用服务器发送第一 HTTP响应, 所述 第一 HTTP响应是所述第二接收单元 608接收的所述第三 HTTP请求对应 的响应 , 所述第一 HTTP响应包含所述虚拟机的标识。
举例来说, 第二发送单元 612可以是第二发送器。 所述第二发送器与 所述第一发送器可以是同一个发送器。
第三接收单元 614, 用于接收所述应用服务器发送的第二 HTTP响应, 所述第二 HTTP响应是所述第二 HTTP请求对应的响应, 所述第二 HTTP 响应包括所述虚拟机的标识。
举例来说, 第三接收单元 614可以是第三接收器。 所述第三接收器与 所述第二接收器可以是同一个接收器。
转发单元 616,用于向所述用户设备转发所述第三接收单元 614接收的 所述第二 HTTP响应。
举例来说, 转发单元可以是发送器。 所述发送器与所述第一接收器可 以是同一个收发器。
关于第二发送单元 612、 第三接收单元 614以及转发单元 616, 请参见 图 7。
可选地, 上述技术方案中, 所述 BNG的标识包括所述 BNG的主机名、 所述 BNG的 IP地址或者用于标识如何访问所述 BNG的 URL。
可选地, 上述技术方案中, 所述位置信息包括用于标识如何访问所述 镜像的 URL或者所述镜像存储在所述 BNG的目录。
举例来说, 所述镜像可以预先存储在所述 BNG中。 所述 BNG可以根 据所述目录获得所述镜像。
举例来说, 所述镜像可以预先存储在网络服务器中。 所述 BNG可以根 据所述 URL获得所述镜像。 所述网络服务器可以是路由器或者交换机。
可选地, 上述技术方案中, 所述第二 HTTP请求中包含 MD, 所述 MD 是根据 MD5对所述 BNG的标识进行加密运算得到的。
举例来说, 所述 MD可以承载在所述第二 HTTP请求的头域中或者所 述第二 HTTP请求的净荷中。
可选地, 上述技术方案中, 所述第三 HTTP请求包含所述虚拟机的配 置信息。 所述创建单元 610 用于根据所述镜像以及所述配置信息在所述 BNG中创建所述虚拟机。
举例来说, 所述配置信息可以包括用于标识为待创建的所述虚拟机分 配的硬件资源。 所述硬件资源可以包括中央处理器( central processing unit, CPU ) 、 存储器或者寄存器。
举例来说, 所述配置信息可以预先存储在所述 BNG中。
图 8为本发明实施例提供的一种 BNG的结构示意图。 所述 BNG可以 用于执行图 4所示的方法。 所述 BNG可以用于图 1所示的组网结构中。 具 体来说, 所述 BNG可以是图 1中的 BNG104。 参见图 8, 所述 BNG包括: 第一接收单元 802, 用于接收用户设备发送的第一 HTTP请求, 虚拟机 运行在所述 BNG上。
举例来说, 所述用户设备可以是个人电脑、 个人数字助理、 移动电话 或者机顶盒。
举例来说, 所述第一 HTTP请求可以是应用程序客户端触发所述用户 设备发送的。
举例来说, 所述应用程序客户端对应的业务可以是存储业务、 即时通 信业务或者搜索引擎业务。
举例来说, 所述虚拟机可以包括操作系统。 所述操作系统可以运行在 所述虚拟机中。 所述操作系统可以是 Windows或者 Linux。
举例来说, 所述用户设备可以是图 1中个人电脑 102。
举例来说, 第一接收单元可以是第一接收器。
添加单元 804 , 用于将所述虚拟机的标识添加到所述第一接收单元 802 接收的所述第一 HTTP请求中, 得到第二 HTTP请求。
举例来说, 所述虚拟机的标识可以是所述虚拟机的主机名、 所述虚拟 机的 IP地址或者用于标识如何访问所述虚拟机的 URL。
举例来说, 添加单元 804可以是处理器。
发送单元 806,用于向应用服务器发送所述添加单元 804生成的所述第 二 HTTP请求。
举例来说, 所述应用服务器可以是视频服务器、 音频服务器、 网站服 务器或者文件服务器。
举例来说, 应用程序服务器端运行在所述应用服务器中, 所述应用程 序客户端对应所述应用程序服务器端。
举例来说, 所述应用服务器可以是图 1中的应用服务器 103。
举例来说, 发送单元 806可以是发送器。
第二接收单元 808,用于接收所述应用服务器发送的在所述虚拟机中部 署所述应用程序服务器端的命令。
举例来说, 所述应用服务器可以远程登录所述 BNG。 例如, 所述应用 服务器可以通过 telnet远程登录所述 BNG。 举例来说,所述第二接收单元 808接收所述应用服务器通过 telnet的用 户界面发送的在所述虚拟机中部署所述应用程序服务器端的命令。
举例来说, 所述命令可以是 HTTP请求, 所述 HTTP请求中包含所述 应用服务器端的位置信息。
举例来说, 所述位置信息包括用于标识如何访问所述应用服务器端的 URL或者所述应用服务器端存储在所述 BNG的目录。
举例来说,所述应用服务器端可以预先存储在所述 BNG中。所述 BNG 可以根据所述目录获得所述应用服务器端。
举例来说,所述应用服务器端可以预先存储在网络服务器中。所述 BNG 可以根据所述 URL获得所述应用服务器端。 所述网络服务器可以是路由器 或者交换机。
举例来说, 第二接收单元 808可以是第二接收器。 所述第二接收器与 所述发送器可以是同一个收发器。
部署单元 810, 用于根据所述第二接收单元 808接收的所述命令, 在所 述虚拟机中部署所述应用程序服务器端。
举例来说, 所述部署单元 810 可以在所述虚拟机中运行所述应用程序 服务器端。
举例来说, 所述应用程序服务器端可以运行在所述操作系统中。
举例来说, 部署单元 810可以是所述处理器。
上述技术方案中,所述 BNG根据所述应用服务器发送的在所述虚拟机 中部署所述应用程序服务器端的命令在所述虚拟机中部署所述应用程序服 务器端。 所述 BNG在所述虚拟机中部署了所述应用程序服务器端后, 通过 所述 BNG中的所述应用程序服务器端与所述用户设备中的所述应用程序客 户端的交互即可实现所述应用程序客户端对应的业务。所述 BNG不需要向 所述应用服务器转发所述用户设备发送的 HTTP请求。 因此, 上述技术方 案有助于降低对网络的带宽的占用。 可选地, 图 8所示的 BNG中, 还可以包括:
第三接收单元 812, 用于接收所述应用服务器发送的第一 HTTP响应, 所述第一 HTTP响应包含所述虚拟机的标识, 所述第一 HTTP响应是所述 第二 HTTP请求对应的响应。
举例来说, 第三接收单元 812可以是第三接收器。 所述第三接收器与 所述第二接收器可以是同一个接收器。
转发单元 814,用于向所述用户设备转发所述第三接收单元 812接收的 所述第一 HTTP响应。
举例来说, 转发单元 814可以是第一发送器。 所述第一发送器与所述 第一接收器可以是同一个收发器。
关于第三接收单元 812以及转发单元 814, 请参见图 9。
可选地, 上述技术方案中, 所述第一 HTTP响应用于使能所述应用程 序客户端通过所述用户设备向所述虚拟机发送 HTTP请求。
可选地, 上述技术方案中, 所述虚拟机的标识包括所述虚拟机的主机 名、 所述虚拟机的 IP地址或者用于标识如何访问所述虚拟机的 URL。
可选地, 上述技术方案中, 所述虚拟机的标识承载在所述第一 HTTP 响应的头域或者净荷中。
可选地, 上述技术方案中, 所述第二 HTTP请求中包含 MD, 所述 MD 是根据 MD5对所述虚拟机的标识进行加密运算得到的。
图 10为本发明实施例提供的一种用于 HTTP网络的方法的应用场景的 示意图。
图 10所示的应用场景中包括家庭网络、 ISP server网络、以及 ICP server 网络。 其中, 家庭网络中包括多个 UE。 多个 UE包括移动电话 1001和个 人电脑 1002。 家庭网络中还包括 RGW1003。 ISP server 网络中包括多个 BNG。 多个 BNG包括 BNG1004。 BNG1004包括修改模块 1005 以及应用 程序接口月良务器 ( application programming interface server, API server ) 1006。 API server 1006 中包括 Hypervisorl007。 ICP server 网络中包括多个 ICP server。 多个 ICP server包括 ICP serverl010。
参见图 10, 个人电脑 1002 向 ICP serverlOlO发送 HTTP请求。 HTTP 请求到达 BNG1004后,修改模块 1005在 HTTP请求中添加 BNG1004的标 识, 生成携带 BNG1004的标识的 HTTP请求。 BNG1004通过因特网向 ICP serverlOlO发送携带 BNG1004的标识的 HTTP请求。 ICP serverlOlO接收到 携带 BNG1004的标识的 HTTP请求后, 通知 BNG1004加载 VM1009。
参见图 10, BNG1004中部署用于加载 VM1009的 API serverl006。 API server 1006 提供用于力口载 VM 的应用程序接口 (application programming interface, API ) , 供 ICP serverlOlO调用。 下面对如何调用用于加载 VM 的 API进行举例。 ICP serverlOlO可以向 BNG1004发送 HTTP请求, 从而 调用用于加载 VM1009的 API。 HTTP请求的格式可以是:
POST /versionl/virualmachine HTTP/1 - 1
Host: virtualmachine · a i · bngl234 · huawei · com
Content -Type: application/ j son
Accept: application/xml
{
"virtualmachine" : {
"name" : " ICPlserverl " ,
" imageRef " : "http://api.icpl.com/images/
52415800- 8b69- Ile0-9bl9-734f6f006e54" ,
" conf igurationid":
"52415800- 8b69-lle0-9bl9- 734 f 1195ff 37" ,
}
}
其中, Host为 API server 1006的主机名。不同的 BNG提供的 API server 的主机名不同, ICP serverlOlO 需要确定访问 ISP 网络中哪一个 BNG。 "imageRef内容用于指导 BNG1004从何处获取 VM1009对应的映像文件。 "configurationid"用于指导 BNG1004为 VM1009分配的资源, 例如 CPU的 个数, 内存的容量 ,磁盘的容量。 ICP server 1010通过调用用于加载 VM1009 的 API, 就可以驱动 BNG1004加载 VM1009。
BNG1004中包含修改模块 1005, 可以在个人电脑 1002发起的 HTTP 请求中插入新定义的头域字段。
图 11为图 10所示的应用场景中的信令交互示意图。 如图 11所示, 交 互流程包括:
1、 个人电脑 1002向 ICP serverlOlO发送业务请求。 业务请求可以是 HTTP请求。
举例来说, HTTP请求的格式可以是: GET htt : //www. icpl - com/ HTTP/1 - 1
Host: www.icpl.com
Accept: application/ j son, text/ j avascript , */* Accept -Encoding : gzi , deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727'· .NET CLR 3.5.30729'· .NET CLR
3.0.30618'· .NET4.0C) 其他头域
HTTP净荷
2、 BNG1004的修改模块 1005在 HTTP请求的报文头中插入 BNG1004 的标识。 BNG1004 的标识通过新的头域字段携带。 BNG1004 的标识为
BNG1004提供的用于加载 VM的 API的访问方式。 (例如, API server 1006 的 IP地址, API server 1006的主机名或者 API server 1006的 URL。
本实施例提供了新定义的 Header Field的格式的三种表达方式。
举例来说, API server 1006的 IP地址可以是:
Bng-Api- Server: 11.22 举例来说, API server 1006的主机名可以是:
Bng-Api- Server: virtualmachine . a i . bngl234 · huawei · com 举例来说, API server 1006的 URL可以是:
Bng-Api -URL:
virtualmachine · a i · bngl234 · huawei · com/ /versionl/virualmac hine
插入 BNG1004的标识后, HTTP请求的格式可以是:
GET htt : //www. icpl - com/ HTTP/1 - 1 Host: www.icpl.com
Accept: application/ j son, text/ j avascript , */* Accept -Encoding : gzi , deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727'· .NET CLR 3.5.30729'· .NET CLR 3.0.30618'· .NET4.0C)
Bng-Api -URL:
virtualmachine · a i · bngl234 · huawei · com/versionl/virualmach ine 其他头域; HTTP净荷
3、 修改模块 1005生成的 HTTP请求中可以包括头域的校验头域。 例 如消息摘要算法第五版的消息摘要。 校验头域用于验证新增加的头域的完 整性;
4、 BNG1004将爹改后的 HTTP请求发送给 ICP server 1010;
5、ICP serverlOlO根据 HTTP请求的 4艮文头中的 BNG1004的标识获得 用于加载 VM1009的 API的访问方式。 举例来说, ICP serverlOlO可以通过 API server 1006的 IP地址、 API serverl006的主机名或者 API serverl006的 URL访问用于加载 VM1009的 API。
6、 ICP serverlOlO访问 BNG1004提供的用于加载 VM1009的 API, 加 载 VM1009到 BNG1004。 ICP serverlOlO获得 VM1009的访问方式。 具体 实现时可以是:
ICP serverlOlO判断 BNG1004 中没有加载为 ICP serverlOlO服务的 VM1009,或者 ICP serverlOlO判断该 BNG1004中请求 ICP serverlOlO提供 服务的用户数超过了阔值, 决定在 BNG1004中加载 VM1009;
ICP serverlOlO调用 BNG1004提供的用于加载 VM1009的 API。 具体 可以是 ICP server 1010向 BNG1004发送 HTTP请求。 HTTP请求中携带加 载 VM1009需要的参数。 举例来说, HTTP请求的格式可以是:
POST /versionl/virualmachine HTTP/1 - 1
Host: virtualmachine · a i · bngl234 · huawei · com
Content -Type: application/ j son
Accept: application/xml
{
"virtualmachine" : {
"name" : " ICPlserverl " ,
" imageRef " : "http://api.icpl.com/images/
52415800- 8b69- Ile0-9bl9-734f6f006e54" ,
" conf igurationid":
"52415800- 8b69-lle0-9bl9- 734 f 1195ff 37" ,
}
}
BNG1004根据通过加载 VM1009需要的参数, 完成 VM1009的加载过 程。 BNG1004向 ICP server 1010发送 HTTP响应。 HTTP 响应中携带 VM1009 的访问方式。 访问方式可以是 VM1009的 IP地址或者 VM1009的主机名。
7、 ICP serverlOlO通知个人电脑 1002VM1009的访问方式。 可以通过 向个人电脑 1002发送 HTTP 响应。 HTTP响应中可以携带 VM1009的 IP 地址或者 VM1009的主机名。
关于 VM1009的访问方式, 可以在 HTTP 响应的净荷中携带。 举例来 说, HTTP 响应的格式可以是:
HTTP/ 1 - 0 200 OK
Content -Type: text/html
其他头域
http 净 荷 ( 包 括 VM1009 的 访 问 方 式 , 例 如 vmip=33 . 1 . 1 . 1 ; vm -host - name = vm33 · i spl · com)
关于 VM1009的访问方式,可以携带在 HTTP重定向中。 HTTP重定向 的格式可以是:
HTTP/ 1 - 1 3 02 Found
Location: http : / / vm33 . i spl . com
其他头域
图 12为本发明实施例提供的一种用于 HTTP网络的方法的应用场景的 示意图。
图 12所示的应用场景中包括家庭网络、 ISP server网络、以及 ICP server 网络。 其中, 家庭网络中包括多个 UE。 多个 UE包括移动电话 1201和个 人电脑 1202。 家庭网络中还包括 RGW1203。 ISP server 网络中包括多个 BNG。 多个 BNG包括 BNG1204。 BNG1204包括修改模块 1205以及 API serverl206。 API server 1206中包括 Hypervisor 1207。 ICP server网络中包括 多个 ICP server„ 多个 ICP server包括 ICP serverl210。
参见图 12, 个人电脑 1202 向 ICP serverl210发送 HTTP请求。 HTTP 请求到达 BNG1204后, 修改模块 1205在 HTTP请求中添加 VM1209的标 识, 生成携带 VM1209的标识的 HTTP请求。 BNG1204通过因特网向 ICP serverl210发送携带 VM1209的标识的 HTTP请求。 ICP serverl210接收到 携带 VM1209的标识的 HTTP请求后,通知 BNG1204在 VM1209中部署应 用程序服务器端。
参见图 12, BNG1004中部署用于加载 VM1209的 API serverl206。 修 改模块 1205可以从 API server 1206获得 VM1209的标识, 从而生成携带 VM1209的标识 HTTP请求。 VM1209的标识可以携带在 HTTP请求的报文 头的头域中。 VM1209的标识可以是 VM1209的 IP地址, 或者 VM1209的 主机名。
举例来说, VM1209的 IP地址的格式可以是:
Bng- al located- Server : 33 . 1 . 1 . 1 举例来说, VM1209的主机名的格式可以是:
Bng - al located- Server: vm33 . i spl . com
图 13为图 12所示的应用场景中的信令交互示意图。 如图 13所示, 交 互流程包括:
1、 个人电脑 1202向 ICP serverl210发送业务请求。 业务请求可以是 HTTP请求。
2、 BNG1204 的报文修改模块 1205 在 HTTP 请求的报文头中插入 VM1209的标识。 VM1209的标识可以携带在 HTTP请求的报文头的头域中。 VM1209的标识可以是 VM1209的 IP地址, 或者 VM1209的主机名。
3、 BNG1204将修改后的 HTTP请求发送给 ICP serverl210;
4、 ICP serverl210判断 VM1209中是否部署了应用程序服务器端。 如 果 VM1209中还没有部署应用程序服务器端, 则 ICP serverl210通过 telnet 的用户界面向 BNG1204发送在 VM1209中部署应用程序服务器端的命令。
5、 BNG1204在 VM1209中部署应用程序服务器端。
6、 ICP serverl210向个人电脑 1202发送 HTTP响应。 HTTP响应携带 了 VM1209的标识。 VM1209的标识可以是 VM1209的 IP地址,或者 VM1209 的主机名。 因此, 个人电脑 1202获得了 VM1209的访问方式。
关于 VM1209的访问方式, 可以在 http报文的净荷中携带。 举例来说, HTTP响应的格式可以是: HTTP/ 1 - 0 200 OK
Content -Type: text/html
其他头域
http 净 荷 ( VM1009 的 访 问 方 式 , 例 如 vmip=33 . 1 . 1 . 1 ; vm -host - name = vm33 · i spl · com)
关于 VM1209的访问方式,可以携带在 HTTP重定向中。 HTTP重定向 的格式可以是:
HTTP/ 1 - 1 3 02 Found
Location: http : / / vm33 . i spl . com
其他头域
本领域普通技术人员可以意识到, 结合本文中所公开的实施例描述的 各示例的单元及算法步骤, 能够以电子硬件、 或者计算机软件和电子硬件 的结合来实现。 这些功能究竟以硬件还是软件方式来执行, 取决于技术方 案的特定应用和设计约束条件。 专业技术人员可以对每个特定的应用来使 用不同方法来实现所描述的功能, 但是这种实现不应认为超出本发明的范 围。
所属领域的技术人员可以清楚地了解到, 为描述的方便和简洁, 上述 描述的系统、 装置和单元的具体工作过程, 可以参考前述方法实施例中的 对应过程, 在此不再赘述。
在本申请所提供的几个实施例中, 应该理解到, 所揭露的系统、 装置 和方法, 可以通过其它的方式实现。 例如, 以上所描述的装置实施例仅仅 是示意性的, 例如, 所述单元的划分, 可以仅仅为一种逻辑功能划分, 实 际实现时可以有另外的划分方式, 例如多个单元或组件可以结合或者可以 集成到另一个系统, 或一些特征可以忽略, 或不执行。 另一点, 所显示或 讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口, 装置 或单元的间接耦合或通信连接, 可以是电性, 机械或其它的形式。 作为单元显示的部件可以是或者也可以不是物理单元, 即可以位于一个地 方, 或者也可以分布到多个网络单元上。 可以根据实际的需要选择其中的 部分或者全部单元来实现本实施例方案的目的。
另外, 在本发明各个实施例中的各功能单元可以集成在一个处理单元 中, 也可以是各个单元单独物理存在, 也可以两个或两个以上单元集成在 一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使 用时, 可以存储在一个计算机可读取存储介质中。 基于这样的理解, 本发 明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的 部分可以以软件产品的形式体现出来, 该计算机软件产品存储在一个存储 介质中, 包括若干指令用以使得一台计算机设备(可以是个人计算机, 服 务器, 或者网络设备等)执行本发明各个实施例所述方法的全部或部分步 骤。 而前述的存储介质包括: U盘、 移动硬盘、 只读存储器 (Read-Only Memory, ROM ) 、 随机存取存储器 ( Random Access Memory, RAM ) 、 磁碟或者光盘等各种可以存储程序代码的介质。
以上所述, 仅为本发明的具体实施方式, 但本发明的保护范围并不局 限于此, 任何熟悉本技术领域的技术人员在本发明揭露的技术范围内, 可 轻易想到变化或替换, 都应涵盖在本发明的保护范围之内。 因此, 本发明 的保护范围应所述以权利要求的保护范围为准。

Claims

权利要求
1、 一种用于超文本传输协议 HTTP网络的方法, 其特征在于, 包括: 宽带网络网关 BNG接收用户设备发送的第一 HTTP请求;
所述 BNG将所述 BNG的标识添加到所述第一 HTTP请求中, 得到第 二 HTTP请求;
所述 BNG向应用服务器发送所述第二 HTTP请求;
所述 BNG接收所述应用服务器发送的第三 HTTP请求,所述第三 HTTP 请求是所述应用服务器接收到所述第二 HTTP请求后发送的, 所述第三 HTTP请求中包含用于创建虚拟机的镜像的位置信息;
所述 BNG根据所述位置信息获得所述镜像, 所述 BNG根据所述镜像 在所述 BNG中创建所述虚拟机。
2、 根据权利要求 1所述的方法, 其特征在于,
所述 BNG根据所述镜像在所述 BNG中创建所述虚拟机以后, 所述方 法还包括:
所述 BNG向所述应用服务器发送第一 HTTP响应,所述第一 HTTP响 应是所述第三 HTTP请求对应的响应 , 所述第一 HTTP响应包含所述虚拟 机的标识;
所述 BNG接收所述应用服务器发送的第二 HTTP响应,所述第二 HTTP 响应是所述第二 HTTP请求对应的响应 , 所述第二 HTTP响应包括所述虚 拟机的标识;
所述 BNG向所述用户设备转发所述第二 HTTP响应。
3、 根据权利要求 1或 2所述的方法, 其特征在于, 所述 BNG的标识 包括所述 BNG的主机名、所述 BNG的因特网协议 IP地址或者用于标识如 何访问所述 BNG的统一资源定位符 URL。
4、 根据权利要求 1至 3中任一所述的方法, 其特征在于, 所述位置信息包括用于标识如何访问所述镜像的 URL或者所述镜像存 储在所述 BNG的目录。
5、 根据权利要求 1至 4中任一所述的方法, 其特征在于,
所述第二 HTTP请求中包含消息摘要 MD, 所述 MD是根据消息摘要 算法第五版 MD5对所述 BNG的标识进行加密运算得到的。
6、 根据权利要求 1至 5中任一所述的方法, 其特征在于,
所述第三 HTTP请求包含所述虚拟机的配置信息,
所述 BNG根据所述镜像在所述 BNG中创建所述虚拟机包括所述 BNG 根据所述镜像以及所述配置信息在所述 BNG中创建所述虚拟机。
7、 一种用于超文本传输协议 HTTP网络的方法, 其特征在于, 包括: 宽带网络网关 BNG接收用户设备发送的第一 HTTP请求,虚拟机运行 在所述 BNG上;
所述 BNG将所述虚拟机的标识添加到所述第一 HTTP请求中,得到第 二 HTTP请求;
所述 BNG向应用服务器发送所述第二 HTTP请求;
所述 BNG接收所述应用服务器发送的在所述虚拟机中部署所述应用程 序服务器端的命令;
所述 BNG根据所述命令,在所述虚拟机中部署所述应用程序服务器端。
8、 根据权利要求 7所述的方法, 其特征在于, 所述 BNG根据所述命 令, 在所述虚拟机中部署所述应用程序服务器端以后, 所述方法还包括: 所述 BNG接收所述应用服务器发送的第一 HTTP响应,所述第一 HTTP 响应包含所述虚拟机的标识, 所述第一 HTTP响应是所述第二 HTTP请求 对应的响应;
所述 BNG向所述用户设备转发所述第一 HTTP响应。
9、 根据权利要求 7或 8所述的方法, 其特征在于, 所述虚拟机的标识 包括所述虚拟机的主机名、 所述虚拟机的因特网协议 IP地址或者用于标识 如何访问所述虚拟机的统一资源定位符 URL。
10、 根据权利要求 8所述的方法, 其特征在于,
所述虚拟机的标识承载在所述第一 HTTP响应的头域或者净荷中。
11、 一种宽带网络网关 BNG, 其特征在于, 包括:
第一接收单元, 用于接收用户设备发送的第一超文本传输协议 HTTP 请求;
添加单元 ,用于将所述 BNG的标识添加到所述第一接收单元接收的所 述第一 HTTP请求中, 得到第二 HTTP请求;
第一发送单元, 用于向应用服务器发送所述添加单元生成的所述第二 HTTP请求;
第二接收单元, 用于接收所述应用服务器发送的第三 HTTP请求, 所 述第三 HTTP请求是所述应用服务器接收到所述第二 HTTP请求后发送的, 所述第三 HTTP请求中包含用于创建虚拟机的镜像的位置信息;
创建单元, 用于根据所述第二接收单元接收的所述第三 HTTP请求中 的所述位置信息获得所述镜像,根据所述镜像在所述 BNG中创建所述虚拟 机。
12、 根据权利要求 11所述的 BNG, 其特征在于, 还包括:
第二发送单元, 用于向所述应用服务器发送第一 HTTP响应, 所述第 一 HTTP响应是所述第三 HTTP请求对应的响应 , 所述第一 HTTP响应包 含所述虚拟机的标识;
第三接收单元, 用于接收所述应用服务器发送的第二 HTTP响应, 所 述第二 HTTP响应是所述第二 HTTP请求对应的响应, 所述第二 HTTP响 应包括所述虚拟机的标识;
转发单元, 用于向所述用户设备转发所述第三接收单元接收的所述第 二 HTTP口向应。
13、 根据权利要求 11或 12所述的 BNG, 其特征在于, 所述 BNG的 标识包括所述 BNG的主机名、所述 BNG的因特网协议 IP地址或者用于标 识如何访问所述 BNG的统一资源定位符 URL。
14、 根据权利要求 11至 13中任一所述的 BNG, 其特征在于, 所述位置信息包括用于标识如何访问所述镜像的 URL或者所述镜像存 储在所述 BNG的目录。
15、 根据权利要求 11至 14中任一所述的 BNG, 其特征在于, 所述第 二 HTTP请求中包含消息摘要 MD, 所述 MD是根据消息摘要算法第五版 MD5对所述 BNG的标识进行加密运算得到的。
16、 根据权利要求 11至 15中任一所述的 BNG, 其特征在于, 所述第三 HTTP请求包含所述虚拟机的配置信息,
所述创建单元用于根据所述镜像以及所述配置信息在所述 BNG中创建 所述虚拟机。
17、 一种宽带网络网关 BNG, 其特征在于, 包括:
第一接收单元, 用于接收用户设备发送的第一超文本传输协议 HTTP 请求, 虚拟机运行在所述 BNG上;
添加单元, 用于将所述虚拟机的标识添加到所述第一接收单元接收的 所述第一 HTTP请求中, 得到第二 HTTP请求;
发送单元,用于向应用服务器发送所述添加单元生成的所述第二 HTTP 请求;
第二接收单元, 用于接收所述应用服务器发送的在所述虚拟机中部署 所述应用程序服务器端的命令;
部署单元, 用于根据所述第二接收单元接收的所述命令, 在所述虚拟 机中部署所述应用程序服务器端。
18、 根据权利要求 17所述的 BNG, 其特征在于, 还包括:
第三接收单元, 用于接收所述应用服务器发送的第一 HTTP响应, 所 述第一 HTTP响应包含所述虚拟机的标识, 所述第一 HTTP响应是所述第 二 HTTP请求对应的响应;
转发单元, 用于向所述用户设备转发所述第三接收单元接收的所述第 一 HTTP口向应。
19、 根据权利要求 17或 18所述的 BNG, 其特征在于, 所述虚拟机的 标识包括所述虚拟机的主机名、 所述虚拟机的因特网协议 IP地址或者用于 标识如何访问所述虚拟机的统一资源定位符 URL。
20、 根据权利要求 18所述的 BNG, 其特征在于,
所述虚拟机的标识承载在所述第一 HTTP响应的头域或者净荷中。
PCT/CN2014/078092 2013-06-19 2014-05-22 用于超文本传输协议网络的方法及宽带网络网关 WO2014201933A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
ES14813918.1T ES2652558T3 (es) 2013-06-19 2014-05-22 Método para red de protocolo de transferencia de hipertexto y pasarela de red de banda ancha
EP14813918.1A EP2999193B1 (en) 2013-06-19 2014-05-22 Method for hypertext transfer protocol network and broadband network gateway
US14/975,475 US10225318B2 (en) 2013-06-19 2015-12-18 Method used for hypertext transfer protocol network, and broadband network gateway

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310244446.4 2013-06-19
CN201310244446.4A CN104243522B (zh) 2013-06-19 2013-06-19 用于超文本传输协议网络的方法及宽带网络网关

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US14/975,475 Continuation US10225318B2 (en) 2013-06-19 2015-12-18 Method used for hypertext transfer protocol network, and broadband network gateway

Publications (1)

Publication Number Publication Date
WO2014201933A1 true WO2014201933A1 (zh) 2014-12-24

Family

ID=52103934

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/078092 WO2014201933A1 (zh) 2013-06-19 2014-05-22 用于超文本传输协议网络的方法及宽带网络网关

Country Status (5)

Country Link
US (1) US10225318B2 (zh)
EP (1) EP2999193B1 (zh)
CN (1) CN104243522B (zh)
ES (1) ES2652558T3 (zh)
WO (1) WO2014201933A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106412024B (zh) * 2016-09-07 2019-10-15 网易无尾熊(杭州)科技有限公司 一种页面获取方法和装置
US10560331B2 (en) 2018-02-07 2020-02-11 Juniper Networks, Inc. Self-driven and adaptable multi-vBNG management orchestration

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1577251A (zh) * 2003-07-28 2005-02-09 国际商业机器公司 小服务器程序的远程协作方法和系统
CN102439913A (zh) * 2009-02-27 2012-05-02 雅塔公司 网络业务管理和负载平衡的系统和方法
CN103152332A (zh) * 2013-02-17 2013-06-12 中兴通讯股份有限公司 一种web服务协助下的eap认证方法和设备

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000076118A (ja) * 1998-09-03 2000-03-14 Fuji Xerox Co Ltd 分散ファイル処理装置および分散ファイル処理方法
US20040114176A1 (en) * 2002-12-17 2004-06-17 International Business Machines Corporation Editing and browsing images for virtual cameras
US20060184640A1 (en) * 2005-02-15 2006-08-17 Hatch Ryan D Method and apparatus for processing a website request
ES2454965T3 (es) * 2006-01-18 2014-04-14 Huawei Technologies Co., Ltd. Un método para asociar el flujo de servicio al canal de transmisión del servicio, su sistema y su terminador de red óptica
CN101064682B (zh) * 2006-04-29 2010-08-04 华为技术有限公司 光网络终端及其报文处理方法
US20080307035A1 (en) * 2007-06-05 2008-12-11 Erik John Burckart System and Method for Off-loading Online Meeting Updates Using Forward Proxy
US8429533B2 (en) * 2007-09-25 2013-04-23 At&T Intellectual Property I, L.P. Systems, methods, and computer readable storage media for providing virtual media environments
US8473594B2 (en) * 2008-05-02 2013-06-25 Skytap Multitenant hosted virtual machine infrastructure
KR20100048263A (ko) * 2008-10-30 2010-05-11 한국전자통신연구원 주문형 시스템 서비스의 가상 머신 개인화 제공 시스템 및 방법
CA2782674C (en) * 2008-12-03 2016-02-02 Mobophiles, Inc. System and method for providing virtual web access
US8452930B2 (en) * 2009-03-27 2013-05-28 Hitachi, Ltd. Methods and apparatus for backup and restore of thin provisioning volume
US8214505B2 (en) * 2009-06-22 2012-07-03 Citrix Systems, Inc. Systems and methods of handling non-HTTP client or server push on HTTP Vserver
KR20110020694A (ko) * 2009-08-24 2011-03-03 삼성전자주식회사 네트워크를 통한 기능 공유 방법 및 장치
US20110131330A1 (en) * 2009-12-02 2011-06-02 International Business Machines Corporation Collocating desktop virtual machines to proximity of the user
US8285749B2 (en) * 2010-03-05 2012-10-09 Hitachi, Ltd. Computer system and recording medium
US20110225623A1 (en) * 2010-03-12 2011-09-15 Wright Michael W Web-Hosted Self-Managed Virtual Systems With Complex Rule-Based Content Access
US20130145426A1 (en) * 2010-03-12 2013-06-06 Michael Wright Web-Hosted Self-Managed Virtual Systems With Complex Rule-Based Content Access
US9088601B2 (en) * 2010-12-01 2015-07-21 Cisco Technology, Inc. Method and apparatus for detecting malicious software through contextual convictions, generic signatures and machine learning techniques
US8793684B2 (en) * 2011-03-16 2014-07-29 International Business Machines Corporation Optimized deployment and replication of virtual machines
JP2012243254A (ja) * 2011-05-24 2012-12-10 Intelligent Willpower Corp バーチャルマシン提供システム
US8812670B2 (en) * 2011-10-11 2014-08-19 Telefonaktiebolaget L M Ericsson (Publ) Architecture for virtualized home IP service delivery
US20140343977A1 (en) * 2011-10-28 2014-11-20 Qurami S.R.L. Queue remote management system and method
CN114945007A (zh) * 2012-02-22 2022-08-26 华为技术有限公司 用户终端设备的接入方法、装置和系统
WO2013130867A1 (en) * 2012-02-29 2013-09-06 Sourcefire, Inc. Method and apparatus for retroactively detecting malicious or otherwise undesirable software
CN102938718B (zh) * 2012-10-19 2016-03-30 中兴通讯股份有限公司 一种家庭网关与智能终端综合系统及其通信方法
US9154502B2 (en) * 2013-01-31 2015-10-06 Google Inc. Accessing objects in hosted storage
US20140337834A1 (en) * 2013-05-08 2014-11-13 Amazon Technologies, Inc. User-Influenced Placement of Virtual Machine Instances

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1577251A (zh) * 2003-07-28 2005-02-09 国际商业机器公司 小服务器程序的远程协作方法和系统
CN102439913A (zh) * 2009-02-27 2012-05-02 雅塔公司 网络业务管理和负载平衡的系统和方法
CN103152332A (zh) * 2013-02-17 2013-06-12 中兴通讯股份有限公司 一种web服务协助下的eap认证方法和设备

Also Published As

Publication number Publication date
US10225318B2 (en) 2019-03-05
EP2999193A4 (en) 2016-06-29
EP2999193B1 (en) 2017-11-01
EP2999193A1 (en) 2016-03-23
ES2652558T3 (es) 2018-02-05
CN104243522B (zh) 2018-02-06
US20160105483A1 (en) 2016-04-14
CN104243522A (zh) 2014-12-24

Similar Documents

Publication Publication Date Title
US8885649B2 (en) Method, apparatus, and system for implementing private network traversal
KR101877188B1 (ko) Mqtt 프로토콜을 이용한 서비스 층 상호연동
JP5711754B2 (ja) スマートクライアントルーティング
JP2017529793A5 (zh)
WO2021077767A1 (zh) 一种业务管理方法及装置
US9936036B2 (en) Method and system for indirectly establishing a unique communication channel between a plurality of devices
CN105635073B (zh) 访问控制方法、装置和网络接入设备
CN112583618B (zh) 为业务提供网络服务的方法、装置和计算设备
CN104539902B (zh) 一种ipc的远程访问方法和系统
CN105306433A (zh) 一种访问虚拟机服务器的方法和装置
CN110417632B (zh) 一种网络通信方法、系统及服务器
WO2014179950A1 (zh) 一种文件上传方法、客户端和服务端
WO2012163005A1 (zh) 访问虚拟专用网络的方法、装置以及网关设备
JP7076558B2 (ja) アンカーレス・バックホールのサポートのためのgtpトンネル
Cui Comparison of IoT application layer protocols
WO2014166078A1 (zh) 数据发送处理方法及路由器
JP6393475B2 (ja) 通信アダプタ装置、通信システム、トンネル通信方法、及びプログラム
US10225318B2 (en) Method used for hypertext transfer protocol network, and broadband network gateway
JP2017010388A (ja) Httpサーバとその制御方法、画像形成装置およびプログラム
JP5736346B2 (ja) 仮想化装置、仮想化制御方法、仮想化装置制御プログラム
CN113285920B (zh) 业务访问方法、装置、设备及存储介质
US10581979B2 (en) Information transmission method and apparatus
JP6346208B2 (ja) 通信システム
CN108307683A (zh) 通讯方法、微基站、微基站控制器、终端和系统
WO2014205686A1 (zh) 一种对业务处理的方法、系统以及相关设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14813918

Country of ref document: EP

Kind code of ref document: A1

REEP Request for entry into the european phase

Ref document number: 2014813918

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2014813918

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE