WO2020186909A1 - 虚拟网络业务处理方法、装置和系统,控制器,存储介质 - Google Patents

虚拟网络业务处理方法、装置和系统,控制器,存储介质 Download PDF

Info

Publication number
WO2020186909A1
WO2020186909A1 PCT/CN2020/071144 CN2020071144W WO2020186909A1 WO 2020186909 A1 WO2020186909 A1 WO 2020186909A1 CN 2020071144 W CN2020071144 W CN 2020071144W WO 2020186909 A1 WO2020186909 A1 WO 2020186909A1
Authority
WO
WIPO (PCT)
Prior art keywords
target
message middleware
virtual network
message
service
Prior art date
Application number
PCT/CN2020/071144
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 北京金山云网络技术有限公司
Publication of WO2020186909A1 publication Critical patent/WO2020186909A1/zh

Links

Images

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/50Network services
    • H04L67/56Provisioning of proxy services
    • 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/2866Architectures; Arrangements
    • H04L67/288Distributed intermediate devices, i.e. intermediate devices for interaction with other intermediate devices on the same level
    • 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/561Adding application-functional data or data for application control, e.g. adding metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches

Definitions

  • This application relates to the field of cloud computing technology, in particular to a virtual network service processing method, device and system, controller, and storage medium.
  • SDN Controller Software Defined Network Controller
  • the SDN controller will send service data to agents such as vswitch (Virtual Switch) or vrouter (Virtual Router).
  • vswitch Virtual Switch
  • vrouter Virtual Router
  • the vswitch and vroute can be based on their stored service logic. Perform business related to business data.
  • Figure 1 is the network architecture diagram 1 of the virtual network control system in the related art.
  • the network architecture includes: one or more controllers, a message middleware and multiple agents, where the controller passes through the system
  • the only message middleware in SDN sends business data to one or more agents, and the controller can be an SDN controller.
  • the purpose of the embodiments of the present application is to provide a virtual network service processing method, device and system, controller, and storage medium, which can effectively reduce the probability of network service interruption.
  • an embodiment of the present application discloses a virtual network service processing method, the method is applied to a controller, and the method includes: receiving a virtual network service request, wherein the virtual network service request Used to request the execution of a virtual network service; according to the virtual network service request, determine a target agent for executing the virtual network service, and obtain service execution information; determine the message communication mode corresponding to the target agent; In the message communication mode, a target message middleware is determined from a plurality of message middleware; the service execution information is sent to the target message middleware, so that the target message middleware transfers the The service execution information is forwarded to the target agent, so that the target agent executes the virtual network service according to the service execution information.
  • the determining the message communication mode corresponding to the target agent includes: according to a pre-stored correspondence between the identifier of the agent and the message communication mode and the The identifier of the target agent determines the message communication mode corresponding to the target agent.
  • the determining the target message middleware from a plurality of message middleware according to the determined message communication mode includes: in the determined message communication mode In the case of direct mode or fanout mode, according to the pre-stored correspondence between the identifier of the agent and the message middleware, and the identifier of the target agent, the multiple message middlewares are combined with all The message middleware corresponding to the identifier of the target agent is determined to be the target message middleware; and/or, in the case that the determined message communication mode is a topic mode, from the plurality of message middleware The target message middleware is selected from the message middleware in which the service program of the target agent is deployed.
  • the target is selected from the message middleware in which the service program of the target agent is deployed among the plurality of message middleware
  • the message middleware includes: randomly selecting a message middleware as the target message middleware from the message middleware of the service program in which the target agent is deployed; or, according to a preset order from the target agent where the target agent is deployed Select a message middleware from the message middleware of the service program as the target message middleware.
  • the determined target message in the case that the determined message communication mode corresponding to the target agent is fanout, the determined target message is The software forwards the service execution information to the target agent by broadcasting the service execution information.
  • the virtual network service request carries service parameters associated with the virtual network service; and the virtual network service request is determined to be used for execution according to the virtual network service request.
  • the target agent of the virtual network service includes: determining a target agent for executing the virtual network service according to the pre-stored correspondence relationship between the service parameter and the agent and the service parameter associated with the virtual network service.
  • the method further includes: obtaining the target agent from the target agent A sent HTTP (Hyper Text Transfer Protocol) request, wherein the HTTP request carries content information that needs to be called back.
  • HTTP Hyper Text Transfer Protocol
  • the virtual network service includes at least one of the following: create, delete, update, acquire, and allocate Virtual network resources.
  • an embodiment of the present application also discloses a virtual network service processing system, including: a controller, multiple message middleware, and multiple agents.
  • the service execution information is sent to the agent; wherein, the controller is configured to receive a virtual network service request, wherein the virtual network service request is used to request the execution of a virtual network service, and according to the virtual network service request, determine the use To execute the target agent of the virtual network service, obtain service execution information, determine the message communication mode corresponding to the target agent, and determine the target message from the plurality of message middleware according to the determined message communication mode Middleware, sending the service execution information to the target message middleware; the target message middleware is configured to forward the service execution information to the target message communication mode after receiving the service execution information The target agent; the target agent is configured to execute the virtual network service according to the service execution information after receiving the service execution information.
  • the controller is specifically configured to determine according to the pre-stored correspondence between the identifier of the agent and the message communication mode and the identifier of the target agent The message communication mode corresponding to the target agent.
  • the controller is specifically configured to, when the determined message communication mode is the direct mode or the fanout mode, according to the pre-stored agent identifier
  • the message middleware corresponding to the identifier of the target agent among the plurality of message middleware is determined as the target message middleware, and/or, in the determined
  • the target message middleware is selected from the message middleware in which the service program of the target agent is deployed among the plurality of message middleware.
  • the controller is specifically configured to randomly select a message middleware as a target from the message middleware of the service program deployed with the target agent Message middleware, or, according to a preset sequence, select one message middleware from the message middleware deployed with the service program of the target agent as the target message middleware.
  • the target message middleware is specifically set to a case where the message communication mode corresponding to the target agent is fanout mode, Forward the service execution information to the target agent in a manner of broadcasting the service execution information.
  • the virtual network service request carries service parameters associated with the virtual network service; the controller is specifically configured to compare the pre-stored service parameters with The correspondence between the agents and the service parameters associated with the virtual network service determine the target agent used to execute the virtual network service.
  • the target agent is further configured to send an HTTP request to the controller, wherein the HTTP request carries content information that needs to be called back;
  • the controller is further configured to receive the HTTP request sent by the target agent.
  • an embodiment of the present application also discloses a virtual network service processing device, the device is applied to a controller, and the device includes: a receiving module configured to receive a virtual network service request, wherein: The virtual network service request is used to request execution of a virtual network service; a first determining module is configured to determine a target agent for executing the virtual network service according to the virtual network service request, and obtain service execution information; second The determining module is set to determine the message communication mode corresponding to the target agent; the third determining module is set to determine the target message middleware from a plurality of message middleware according to the determined message communication mode; the sending module is set To send the service execution information to the target message middleware, so that the target message middleware forwards the service execution information to the target agent based on the message communication mode, so that the target agent can The service execution information executes the virtual network service.
  • the second determining module is specifically configured to be based on the pre-stored correspondence between the identification of the agent and the message communication mode and the identification of the target agent To determine the message communication mode corresponding to the target agent.
  • the third determining module is specifically configured to, when the determined message communication mode is a direct mode or a fanout mode, according to a pre-stored agent
  • the corresponding relationship between the identifier of the message middleware and the identifier of the target agent, and the message middleware corresponding to the identifier of the target agent among the plurality of message middleware is determined as the target message middleware, and/or
  • the target message middleware is selected from the message middleware in which the service program of the target agent is deployed among the plurality of message middleware.
  • the third determining module is specifically configured to be selected from the message middleware of the service program where the target agent is deployed Randomly select a message middleware as the target message middleware, or select a message middleware as the target message middleware from the message middleware deployed with the service program of the target agent in a preset order.
  • the virtual network service request carries service parameters associated with the virtual network service; the first determining module is specifically set to be based on pre-stored The correspondence between the service parameters and the agents and the service parameters associated with the virtual network service determine the target agent for executing the virtual network service.
  • the device further includes: a receiving module configured to obtain the HTTP request sent by the target agent from the target agent, wherein the HTTP request It carries content information that needs to be called back.
  • an embodiment of the present application also discloses a controller.
  • the controller includes a memory and a processor; the memory is configured to store a computer program; and the processor is configured to be an execution memory.
  • the embodiments of the present application also disclose a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the implementation is as described above The steps of the virtual network service processing method described in the first aspect.
  • the embodiments of the present application also disclose a computer program product containing instructions, which when run on a computer, causes the computer to execute the steps of the virtual network service processing method described in the first aspect.
  • the virtual network service processing method can determine a target agent for executing the virtual network service and a message communication mode corresponding to the target agent after receiving a virtual network service request, based on the determined message communication
  • the pattern determines the target message middleware used to forward the service execution information of the virtual network service to the corresponding target agent from the multiple message middleware deployed in the network, and sends the service execution information to the target message middleware.
  • multiple message middleware can be deployed in the virtual network control system, and the business execution information that needs to be sent to the target agent is forwarded to the determined target message middleware, that is, the business traffic can be divided into multiple messages
  • Middleware prevents the same message middleware from sharing all business traffic, reduces the business pressure of the message middleware, and thereby reduces the probability of network service interruption; in addition, after deploying multiple message middleware, through the corresponding message based on the target agent Communication mode: Determine the message middleware method for forwarding service execution information from multiple message middleware, and then can effectively support multiple message communication modes while reducing the service pressure of the message middleware, and further guarantee Diversification of network services.
  • Figure 1 is a network architecture diagram of a virtual network control system in related technologies
  • Figure 2 is the second network architecture diagram of the virtual network control system in related technologies
  • FIG. 3 is a diagram of a network architecture mentioned in an embodiment of this application.
  • FIG. 4 is a first flowchart of a virtual network service processing method provided by an embodiment of this application.
  • FIG. 5 is a second flowchart of a virtual network service processing method provided by an embodiment of this application.
  • FIG. 6 is a schematic structural diagram of a virtual network service processing system provided by an embodiment of the application.
  • FIG. 7 is a schematic structural diagram of a virtual network service processing apparatus provided by an embodiment of this application.
  • FIG. 8 is a schematic structural diagram of a controller provided by an embodiment of the application.
  • FIG. 2 is the network architecture diagram of the virtual network control system in related technologies.
  • the network architecture of Figure 2 includes neutron-api-server cluster (neutron-application programming interface-server cluster, neutron-application programming interface- Server cluster), neutron-rpc-server cluster (neutron-remote procedure call-server cluster, neutron-remote procedure call-server cluster), mq cluster across multiple azs (message queue cluster across multiple availability zones, across multiple availability zones Message queue cluster), openvswitch agent (open virtual exchange standard agent), metadata agent (metadata agent), dhcp agent (dynamic host configuration protocol agent, dynamic host configuration protocol agent), l3agent (layer-3agent, layer-3 agent) ), bass agent (backend as a service agent, backend as a service agent) and vpn agent (virtual private network agent, virtual private network agent).
  • neutron-api-server cluster neutron-application programming interface-server cluster
  • neutron-rpc-server cluster neutron-remote procedure call-server cluster, neutr
  • neutron-api-server cluster and/or neutron-rpc-server cluster can be considered as SDN controllers, which are used to deliver business data to each agent.
  • mq cluster across multiple azs is equivalent to message middleware, which can receive business data sent by neutron-api-server cluster and/or neutron-rpc-server cluster, and send the business data to the corresponding agent.
  • the above agents can receive the business data forwarded by mqcluster across multiple azs and perform operations corresponding to the business data.
  • an embodiment of the present application provides a virtual network service processing method, which can be applied to an SDN controller.
  • the network architecture provided in FIG. 3 is taken as an example for description, where FIG. 3 is an embodiment of the application.
  • a network architecture diagram of a virtual network control system is provided.
  • the network architecture of Figure 3 includes neutron-api-server cluster, neutron-rpc-server cluster, mq cluster (message queue cluster) 1, mq cluster 2, openvswitch agent, metadata agent , Dhcp agent, l3agent, bass agent and vpn agent.
  • the neutron-api-server cluster and/or neutron-rpc-server cluster can represent the SDN controller.
  • the message middleware can include mqcluster1 and mqcluster2.
  • the SDN controller can obtain a virtual network service request, the virtual network service request is used to request the execution of a virtual network service, and the virtual network service request carries service parameters associated with the virtual network service; the SDN controller receives the virtual network service Request, obtain the above service parameters carried in the virtual network service request, determine the target agent that needs to execute the virtual network service according to the service parameter, and generate service execution information.
  • the SDN controller further determines the message communication mode corresponding to the target agent, based on The determined message communication mode determines the target message middleware used to forward service execution information from multiple message middleware, that is, determines the message middleware used to forward service execution information from mqcluster1 and mqcluster2, and then SDN controls
  • the server can send service execution information to the target message middleware.
  • the target message middleware can forward service execution information to the target agent.
  • message middleware there may be multiple message middleware in the embodiment of the present application, and it is not limited to two, and there may also be one or more SDN controllers.
  • multiple message middleware can be deployed in the network architecture, and the SDN controller can forward the service execution information that needs to be sent to the target agent to the determined message middleware (ie, target message middleware), that is, SDN
  • the controller can distribute the service flow to multiple message middleware, avoiding the same message middleware to share all the service flow, so as to reduce the service pressure of the message middleware, and thereby reduce the probability of network service interruption.
  • the message middleware method for forwarding service execution information can be determined from the multiple message middleware, thereby reducing the message middleware. Under the business pressure of software, it can effectively support multiple message communication modes to further ensure the diversification of network services.
  • FIG. 4 is a flowchart 1 of a virtual network service processing method provided by an embodiment of the application.
  • This embodiment takes the method applied to an SDN controller as an example for description.
  • the method may include the following steps:
  • S401 Receive a virtual network service request, where the virtual network service request is used to request execution of the virtual network service.
  • the virtual network service request may be an application program interface (Application Programming Interface, API for short) request, but it is not limited to this.
  • the virtual network service request may carry service parameters associated with the virtual network service.
  • the above virtual network service may include at least one of the following, but is not limited to: creating virtual network resources, deleting virtual network resources, updating virtual network resources, Obtain virtual network resources and allocate virtual network resources; it should be noted that the above virtual network resources may include at least one of the following, but not limited to: virtual network card, Elastic IP (Elastic IP, EIP for short), load balancing ( Load Balancing, LB for short), Peering, and Virtual Private Network (VPN for short).
  • the service parameters carried in the virtual network service request can be different.
  • the virtual network service when the virtual network service is to create a virtual network card, the virtual network service request carries a virtual private cloud. Identification (Virtual Private Cloud Identification, VPC ID for short) or subnet ID; when the virtual network service is bound to an elastic public network IP, the virtual network service request carries the virtual network card ID; when the virtual network service is to create load balancing , The VPC ID is carried in the above virtual network service request; but it is not limited to this.
  • the aforementioned virtual network service request may be sent by a cloud computing user through a client device, and the client device may provide a user control interface for the cloud computing user, and the cloud computing user may perform virtual operations through the user control interface. Issuance of network service requests.
  • the cloud computing user can set the service parameters associated with the virtual network service according to the virtual network service requirements, and send them to the SDN controller in the manner of the virtual network service request.
  • S402 According to the virtual network service request, determine a target agent for executing the virtual network service, and obtain service execution information.
  • determining the target agent for executing the virtual network service according to the virtual network service request may be expressed as: determining the target agent based on the service parameters associated with the virtual network service carried in the virtual network service request.
  • the target agent may be determined in the following manner: according to the correspondence between the service parameter and the agent and the service parameter associated with the virtual network service, the target agent for executing the virtual network service is determined.
  • the service parameter carried in the virtual network service request is the VPC ID or subnet ID as an example.
  • the SDN controller pre-stores the correspondence between the service parameter and the agent, that is, Which agent is in which VPC or subnet, or which agents are included in each VPC or subnet; when the SDN controller receives the virtual network service request, it is based on the corresponding relationship and the VPC ID or subnet carried in the virtual network service request.
  • Net ID which determines the agent in the VPC indicated by the VPC ID or the agent in the subnet indicated by the subnet ID, the agent in the VPC indicated by the VPC ID or the agent in the subnet ID indicated The agent in the subnet is determined as the target agent mentioned above.
  • the service parameters associated with virtual network services may include various parameters, and are not limited to identifying information such as the aforementioned VPC ID, subnet ID, or virtual network card ID. Therefore, in an embodiment of the present application, the SDN controller is receiving After the virtual network service request is received, service execution information may be generated based on the service parameters associated with the virtual network service carried in the virtual network service request.
  • the business execution information may include business data required by the target agent to execute the business.
  • the service data may be completely the same as the above-mentioned service parameters associated with the virtual network service, or may be partially the same, or may be completely different, and is not limited to this.
  • the business data is used for the agent to execute the virtual network service, and the agent specifically executes the virtual network service based on the service data and pre-configured business logic.
  • the service data may include but not limited to the following parameters: vnet_id: subnet id; domain_id: vpc id; az_name: available zone name; cidr: network segment information. It is understandable that different virtual network services can correspond to different service data, which will not be repeated here.
  • the aforementioned target agent may be a server or a node, but it is not limited to this.
  • S403 Determine the message communication mode corresponding to the target agent.
  • the message communication mode can be the communication mode between the target agent and the message middleware, and the message communication mode of the target agent can be set by the user according to business requirements.
  • the message communication mode of the target agent can include direct mode, topic mode, or fanout mode, but it is not limited to this.
  • the SDN controller pre-stores which agent uses which message communication mode, that is, the pre-stored relationship between the identity of the agent and the message communication mode Correspondence; therefore, in an embodiment of the present application, the above step S403 may be expressed as: determining the message corresponding to the target agent according to the pre-stored correspondence between the identifier of the agent and the message communication mode and the identifier of the target agent Communication mode.
  • the SDN controller can query the stored correspondence between the identifier of the agent and the message communication mode to determine the message corresponding to the identifier of the target agent Communication mode, the determined message communication mode is also the message communication mode corresponding to the target agent (may be called the target message communication mode).
  • S404 Determine the target message middleware from the multiple message middleware according to the determined message communication mode.
  • multiple message middlewares are pre-deployed message middlewares in the network, and multiple message middlewares are independent of each other, that is, they can be maintained, updated, and modified independently.
  • the multiple message middlewares can Independently forward the information issued by the SDN controller.
  • the message middleware may be a server cluster, and the server cluster may include multiple servers, but is not limited to this.
  • Technicians can deploy multiple message middleware for the network according to different granularities. For example, technicians can deploy multiple AZs (Availability Zones), and deploy one messaging middleware for each AZ, and then obtain multiple messaging middlewares.
  • Each AZ can include multiple servers or node.
  • technicians can determine multiple regions (regions), and deploy a message middleware for each region, and then obtain multiple message middleware, where each region can include multiple AZs, and the same region contains multiple Each AZ can communicate with each other on the network.
  • the address of the message middleware corresponding to the AZ identifier can be found through the AZ identifier, and the corresponding service execution information can be sent to the Similarly, the message middleware can also find the address of the message middleware corresponding to the region identifier through the region identifier, and then can send the corresponding service execution information to the message middleware.
  • the deployment of multiple message middleware to provide services to the target agent is different.
  • direct mode or fanout mode only one of multiple message middleware is deployed Message middleware provides services for the target agent.
  • topic mode multiple message middlewares can be deployed to provide services for the target agent, or some message middleware of multiple message middlewares can be designated to provide services for the target agent; Therefore, in each message communication mode, the strategy used to determine the target message middleware may also be different, that is, the strategy corresponding to each message communication mode can be further determined based on the determined message communication mode, and the corresponding strategy Determine the target message middleware from multiple message middleware.
  • the SDN controller may adopt the following modes:
  • Method 1 In the case that the determined message communication mode corresponding to the target agent is direct or fanout, according to the pre-stored correspondence between the identifier of the agent and the message middleware and the identifier of the target agent, multiple message middleware The message middleware corresponding to the identifier of the target agent is determined as the target message middleware.
  • the technician before issuing the service execution information to the agent, the technician can deploy the network architecture according to the service requirements, that is, determine the correspondence between the agent's identity and the message middleware, and combine the agent's identity with The corresponding relationship of the message middleware is stored in the SDN controller.
  • the corresponding relationship between the identifier of the above-mentioned agent and the message middleware can be expressed as: the corresponding relationship between the identifier of the above-mentioned agent and the identifier of the above-mentioned Availability Zone (AZ);
  • the corresponding relationship between the identifier and the message middleware and the identifier of the target agent, and the determination of the message middleware corresponding to the identifier of the target agent among the multiple message middleware as the target message middleware can be expressed as: according to the identifier of the agent and the aforementioned available area ( The corresponding relationship between the identifier of AZ) and the identifier of the target agent, determine the AZ identifier of the AZ to which the target agent belongs, and determine the message middleware corresponding to the AZ identifier based on the determined AZ identifier, where the determined message middleware is the target message Middleware.
  • AZ Availability Zone
  • the corresponding relationship between the identifier of the agent and the message middleware may also be expressed as: the corresponding relationship between the identifier of the agent and the identifier of the region; the method of determining the message middleware It is similar to the method for determining the AZ identifier above, and will not be repeated here.
  • the identifier of the agent can correspond to one of the message middleware; if the message communication mode of the agent is topic, Then the identifier of the agent may correspond to one or more message middlewares; if the method of receiving messages by the agent is fanout mode, the identifier of the agent may correspond to one message middleware of multiple message middlewares.
  • the SDN controller can query the correspondence between the identifier of the stored agent and the message middleware, and compare the identifier of the target agent among multiple message middleware The corresponding message middleware is determined as the target message middleware.
  • the SDN controller determines that the target message communication mode is the fanout mode, the SDN controller can also query the correspondence between the stored agent ID and the message middleware, and compare the ID of the target agent among the multiple message middleware. The corresponding message middleware is determined as the target message middleware.
  • the target message middleware is selected from the message middleware in which the service program of the target agent is deployed among multiple message middleware.
  • the SDN controller when the SDN controller determines that the target message communication mode is the topic mode, the SDN controller can directly select the target message middleware from the message middleware deployed with the service program of the target agent.
  • the message middleware of the service program with the target agent deployed above can be all message middleware in the network, or part of the message middleware among multiple message middleware in the network, but it is not limited to this .
  • the SDN controller selects the target message middleware from the message middleware deployed with the service program of the target agent, which may include the following situations:
  • Case 1 In the case that multiple message middleware have deployed service programs for the target agent (that is, all message middleware in the network are deployed with the service program of the target agent), from multiple message middleware choose a message middleware as the target message middleware.
  • the technicians can set up the message middleware that provides services for each agent according to business requirements.
  • the SDN controller determines that the target message communication mode is the topic mode
  • the SDN controller may adopt different methods to select one message middleware from multiple message middleware as the target message middleware.
  • one message middleware is randomly selected from a plurality of message middleware as the target message middleware.
  • the SDN controller can randomly select a message from each message middleware in the network Middleware, as the target message middleware.
  • a message middleware is selected from a plurality of message middleware as the target message middleware in a preset order.
  • the SDN controller can follow the preset order from each message middleware in the network Select a message middleware as the target message middleware.
  • the preset order may be obtained by the technicians sorting the message middleware in advance.
  • Case 2 The service program that provides services for the target agent has been deployed on some of the message middleware among the multiple message middleware (that is, the service program of the target agent is deployed on some of the message middleware in the network) In the case of, use part of the message middleware as the target message middleware.
  • part of the message middleware may be one or more message middleware in the network.
  • the SDN controller when the SDN controller determines that the target message communication mode is the topic mode, and some message middleware in the networking has been deployed as a service program for the target agent to provide services, the SDN controller may be deployed as The message middleware of the service program provided by the target agent serves as the target message middleware.
  • S405 Send the service execution information to the target message middleware, so that the target message middleware forwards the service execution information to the target agent based on the message communication mode, so that the target agent executes the virtual network service according to the service execution information.
  • the SDN controller may send service execution information to the target message middleware. Accordingly, after the target message middleware receives the service execution information, the target message middleware The business execution information can be forwarded to the target agent.
  • the determined target message middleware can forward the service execution information to the target agent in the form of broadcast service execution information;
  • the message communication mode is the direct mode
  • the determined target message middleware can forward the service execution information to the target agent in the unicast service execution information mode.
  • the determined message communication mode corresponding to the target agent is topic mode
  • the determined target message middleware can forward service execution information to the target agent according to the subscription information of the target agent.
  • step of obtaining service execution information in step S402 and the step of determining the target agent in step S402 and step S403-step S404 can be executed simultaneously or sequentially. It is not limited, as long as it is in the middle of the target message
  • the above-mentioned business execution information can be completed before the file sends the business execution information.
  • the above method may further include the following steps: Obtain the HTTP (Hyper Text Transfer Protocol) sent by the target agent from the target agent , Hypertext Transfer Protocol) request, where the HTTP request carries content information that needs to be called back.
  • HTTP Hyper Text Transfer Protocol
  • the target agent when performing a callback, can directly send an HTTP request carrying content information that needs to be called back to the SDN controller, without the need to forward the HTTP request through a message middleware. Accordingly, the SDN controller can directly receive the HTTP request from the target agent and respond to the HTTP request.
  • the corresponding message when calling back, may also be sent to the SDN controller through the message middleware corresponding to the target agent, but it is not limited to this.
  • multiple message middleware can be deployed in the network, and the SDN controller can forward the service execution information that needs to be sent to the target agent to the determined message middleware (ie, target message middleware). ), that is, the SDN controller can distribute the service flow to multiple message middleware, avoiding the same message middleware to share all the service flow, so as to reduce the service pressure of the message middleware, thereby reducing the probability of network service interruption.
  • the message middleware method for forwarding service execution information can be determined from the multiple message middleware, thereby reducing the message middleware. Under the business pressure of software, it can effectively support multiple message communication modes to further ensure the diversification of network services.
  • the relationship between the message middleware and the agent is determined by using the identification code of the receiving end to calculate the hash value.
  • the virtual network service processing method provided by the embodiments of the present application can be directly mapped, that is, the corresponding relationship between the agent and the message middleware is directly stored in the SDN controller, and the corresponding relationship of the target agent can be directly determined through the corresponding relationship.
  • the message middleware can directly specify the correspondence between the newly added message middleware and the agent during capacity expansion, without the need to refresh the network system structure, and has better system stability.
  • Fig. 5 is a second flowchart of a virtual network service processing method provided by an embodiment of the application. The method may include the following steps:
  • S501 Receive a virtual network service request, where the virtual network service request is used to request execution of the virtual network service.
  • S502 According to the virtual network service request, determine a target agent for executing the virtual network service, and obtain service execution information, where the target agent executes the virtual network service according to the service execution information after receiving the service execution information.
  • S503 According to the pre-stored correspondence between the identifier of the agent and the message middleware, determine the target message middleware from among multiple messages.
  • S504 Send the service execution information to the target message middleware, so that the target message middleware forwards the service execution information to the target agent based on the message communication mode.
  • each target agent can have a different message communication mode.
  • the message communication mode corresponding to the target agent is direct mode or fanout mode
  • one message middleware among the multiple message middleware corresponds to the foregoing target agent
  • the message communication mode corresponding to the target agent is topic mode
  • multiple message middleware among the multiple message middlewares correspond to the target agent
  • the message communication mode corresponding to the target agent is topic mode
  • a message middleware is selected from a plurality of message middlewares corresponding to the target agent as the target message middleware.
  • multiple message middleware can be deployed in the network, and the SDN controller can forward the service execution information that needs to be sent to the target agent to the determined message middleware (ie Target message middleware), that is, the SDN controller can distribute business traffic to multiple message middleware, avoiding the same message middleware from sharing all business traffic, so as to reduce the business pressure of the message middleware, and thus can reduce network service interruption The probability.
  • Target message middleware the SDN controller can forward the service execution information that needs to be sent to the target agent to the determined message middleware (ie Target message middleware), that is, the SDN controller can distribute business traffic to multiple message middleware, avoiding the same message middleware from sharing all business traffic, so as to reduce the business pressure of the message middleware, and thus can reduce network service interruption The probability.
  • the related technology uses the identification code of the receiving end to calculate the hash value to determine the relationship between the message middleware and the agent, and this method in the related technology is expanded due to the increase in the number of message middleware, so
  • the hash of the receiving end has changed before, that is, the message middleware corresponding to the agent has also changed, and the network system structure needs to be refreshed.
  • the virtual network service processing method provided by the embodiments of the present application can be directly mapped, that is, the corresponding relationship between the agent and the message middleware is directly stored in the SDN controller, and then the corresponding relationship of the target agent can be directly determined through the corresponding relationship.
  • the message middleware can directly specify the correspondence between the newly added message middleware and the agent during capacity expansion, without the need to refresh the network system structure, and has better system stability.
  • execution order of the above steps S501, S502, S503, and S504 may not be limited. For example, they may be executed simultaneously or sequentially, and are not limited thereto.
  • an embodiment of the present application also provides a virtual network service processing system, as shown in FIG. 6, which may include: a controller, multiple message middleware, and multiple agents.
  • the controller may be an SDN controller, and the controller may pass through The message middleware sends service execution information to the agent;
  • the controller is configured to receive virtual network service requests, where the virtual network service request is used to request the execution of the virtual network service, and the virtual network service request is determined to be used to execute the virtual network
  • the target agent of the business and obtain business execution information, determine the message communication mode corresponding to the target agent, determine the target message middleware from multiple message middleware according to the determined message communication mode, and send the business execution information to the target message middleware ;
  • the target message middleware is set to forward the service execution information to the target agent based on the message communication mode after receiving the service execution information;
  • the target agent is set to execute the virtual network service according to the service execution information after receiving the service execution information.
  • the controller is specifically configured to determine the message communication mode corresponding to the target agent according to the pre-stored correspondence between the identifier of the agent and the message communication mode and the identifier of the target agent.
  • the controller is specifically set to change the target agent's identity according to the pre-stored correspondence between the agent ID and the message middleware and the target agent when the determined message communication mode is the direct mode or the fanout mode.
  • the message middleware corresponding to the identifier of the target agent among the multiple message middleware is determined to be the target message middleware, and/or, when the determined message communication mode is the topic mode, the target is deployed from the multiple message middleware Select the target message middleware from the message middleware of the agent's service program.
  • the controller is specifically configured to randomly select a message middleware as the target message middleware from the message middleware in which the service program of the target agent is deployed, or, according to a preset order, from the message middleware deployed with the target agent Select a message middleware from the message middleware of the service program as the target message middleware.
  • the target message middleware is specifically configured to forward the service execution information to the target agent in the manner of broadcasting service execution information when the message communication mode corresponding to the target agent is the fanout mode.
  • the virtual network service request carries service parameters associated with the virtual network service
  • the controller is specifically set to correspond to the pre-stored service parameters and the proxy relationship and the service parameters associated with the virtual network service , To determine the target agent used to execute virtual network services.
  • the target agent is also set to send an HTTP request to the controller, where the HTTP request carries content information that needs to be called back; the controller is also set to receive the HTTP request sent by the target agent.
  • multiple message middleware can be deployed in the network architecture, and the controller can forward the service execution information that needs to be sent to the target agent to the determined message middleware (that is, the target message middleware). That is, the controller can distribute the service flow to multiple message middleware, avoiding the same message middleware to share all the service flow, so as to reduce the service pressure of the message middleware, thereby reducing the probability of network service interruption. Furthermore, after deploying multiple message middlewares, based on the message communication mode corresponding to the target agent, the message middleware method for forwarding service execution information can be determined from the multiple message middleware, thereby reducing the message middleware. Under the business pressure of software, it can effectively support multiple message communication modes to further ensure the diversification of network services.
  • an embodiment of the present application also provides a virtual network service processing device, which can be applied to a controller, and includes:
  • the receiving module 701 is configured to receive a virtual network service request, where the virtual network service request is used to request the execution of the virtual network service;
  • the first determining module 702 is configured to determine a target agent for executing the virtual network service according to the virtual network service request, and obtain service execution information;
  • the second determining module 703 is configured to determine the message communication mode corresponding to the target agent
  • the third determining module 704 is configured to determine the target message middleware from a plurality of message middleware according to the determined message communication mode;
  • the sending module 705 is configured to send service execution information to the target message middleware, so that the target message middleware forwards the service execution information to the target agent based on the message communication mode, so that the target agent executes the virtual network service according to the service execution information.
  • the second determining module 703 is specifically configured to determine the message communication mode corresponding to the target agent according to the pre-stored correspondence between the identifier of the agent and the message communication mode and the identifier of the target agent.
  • the third determining module 704 is specifically set to be based on the pre-stored correspondence between the identifier of the agent and the message middleware and the target agent when the determined message communication mode is the direct mode or the fanout mode.
  • the identification of the multiple message middleware corresponding to the identification of the target agent is determined as the target message middleware, and/or, in the case that the determined message communication mode is topic mode, from multiple message middleware Select the target message middleware from the message middleware of the service program deployed with the target agent.
  • the third determining module 704 is specifically configured to randomly select a message middleware from the message middleware deployed with the service program of the target agent as the target message middleware, or to select a message middleware as the target message middleware in a preset order.
  • a message middleware is selected as the target message middleware among the message middleware of the service program deployed with the target agent.
  • the virtual network service request carries service parameters associated with the virtual network service
  • the first determining module 702 is specifically configured to determine the target agent for executing the virtual network service according to the pre-stored correspondence between the service parameter and the agent and the service parameter associated with the virtual network service.
  • the device may further include:
  • the receiving module is configured to obtain the HTTP request sent by the target agent from the target agent, where the HTTP request carries content information that needs to be called back.
  • the device can forward the service execution information that needs to be sent to the target agent to the determined message middleware (that is, the target message middleware), That is, the device can distribute the service flow to multiple message middleware, avoiding the same message middleware to share all the service flow, so as to reduce the service pressure of the message middleware, thereby reducing the probability of network service interruption. Furthermore, after deploying multiple message middlewares, based on the message communication mode corresponding to the target agent, the message middleware method for forwarding service execution information can be determined from the multiple message middleware, thereby reducing the message middleware. Under the business pressure of software, it can effectively support multiple message communication modes to further ensure the diversification of network services.
  • the embodiment of the present application also provides an electronic device, which is specifically a controller, for example, an SDN controller, as shown in FIG. 8, including a memory 801 and a processor 802;
  • a controller for example, an SDN controller, as shown in FIG. 8, including a memory 801 and a processor 802;
  • the memory 801 is set to store computer programs
  • the processor 802 is configured to implement the aforementioned virtual network service processing method provided in the embodiment of the present application when executing the program stored in the memory 801.
  • the foregoing virtual network service processing method includes:
  • the target agent for executing the virtual network service, and obtain service execution information
  • the controller may be provided with a communication interface for realizing communication between the controller and other devices.
  • the aforementioned processor 802, communication interface, and memory 801 communicate with each other through a communication bus.
  • the communication bus mentioned here can be a Peripheral Component Interconnect (PCI) bus or an extended industry standard structure ( Extended Industry Standard Architecture (EISA) bus, etc.
  • PCI Peripheral Component Interconnect
  • EISA Extended Industry Standard Architecture
  • the communication bus can be divided into address bus, data bus, control bus and so on.
  • the memory 801 may include random access memory (Random Access Memory, RAM for short), and may also include non-volatile memory (Non-Volatile Memory, NVM for short), such as at least one disk storage.
  • the memory may also be at least one storage device located far away from the foregoing processor.
  • the aforementioned processor 802 may be a general-purpose processor, including a central processing unit (Central Processing Unit, CPU), a network processor (Network Processor, NP), etc.; it may also be a digital signal processor (Digital Signal Processing, DSP for short). ), Application Specific Integrated Circuit (ASIC), Field-Programmable Gate Array (FPGA), or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components.
  • CPU Central Processing Unit
  • NP Network Processor
  • DSP Digital Signal Processing
  • ASIC Application Specific Integrated Circuit
  • FPGA Field-Programmable Gate Array
  • multiple message middleware can be deployed in the network architecture where it is located, and the controller can forward the service execution information that needs to be sent to the target agent to the determined message middleware (ie, target message middleware) ), that is, the controller can distribute the service flow to multiple message middleware, avoiding the same message middleware to share all the service flow, so as to reduce the service pressure of the message middleware, thereby reducing the probability of network service interruption.
  • the message middleware method for forwarding service execution information can be determined from the multiple message middleware, thereby reducing the message middleware. Under the business pressure of software, it can effectively support multiple message communication modes to further ensure the diversification of network services.
  • the embodiment of the present application also provides a computer-readable storage medium that stores instructions in the computer-readable storage medium, which when run on a computer, causes the computer to execute the virtual network service processing method provided in the embodiment of the present application.
  • the foregoing virtual network service processing method includes:
  • the target agent for executing the virtual network service, and obtain service execution information
  • multiple message middleware can be deployed in the network architecture, and service execution information that needs to be sent to the target agent can be forwarded to the determined message middleware (ie, target Message middleware), that is, service traffic can be divided among multiple message middlewares, avoiding the same message middleware to share all service traffic, so as to reduce the service pressure of the message middleware, thereby reducing the probability of network service interruption.
  • the message middleware method for forwarding service execution information can be determined from the multiple message middleware, thereby reducing the message middleware. Under the business pressure of software, it can effectively support multiple message communication modes to further ensure the diversification of network services.
  • the embodiment of the present application also provides a computer program product containing instructions, which when running on a computer, causes the computer to execute the above virtual network service processing method provided by the embodiment of the present application.
  • the foregoing virtual network service processing method includes:
  • the target agent for executing the virtual network service, and obtain service execution information
  • multiple message middleware can be deployed in the network architecture, and service execution information that needs to be sent to the target agent can be forwarded to the determined message middleware (ie, target message middleware) That is, the service flow can be divided among multiple message middlewares to avoid the same message middleware from sharing all the service flow, so as to reduce the service pressure of the message middleware, thereby reducing the probability of network service interruption.
  • the message middleware method for forwarding service execution information can be determined from the multiple message middleware, thereby reducing the message middleware. Under the business pressure of software, it can effectively support multiple message communication modes to further ensure the diversification of network services.
  • the computer program product includes one or more computer instructions.
  • the computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices.
  • the computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from a website, computer, server, or data center.
  • the computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server or a data center integrated with one or more available media.
  • the usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid state disk (SSD)).
  • multiple message middleware can be deployed in the virtual network control system, and the service execution information that needs to be sent to the target agent is forwarded to the determined target message middleware, that is, the Distribute business traffic to multiple message middleware to avoid the same message middleware from sharing all business traffic, reduce the business pressure of message middleware, and thereby reduce the probability of network service interruption; in addition, after deploying multiple message middleware, By determining the message middleware method for forwarding service execution information from multiple message middleware based on the message communication mode corresponding to the target agent, it is possible to effectively support multiple message middleware while reducing the business pressure of the message middleware. This message communication mode further ensures the diversification of network services.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Library & Information Science (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请实施例提供一种虚拟网络业务处理方法、装置和系统,控制器,存储介质;涉及云计算技术领域,可有效降低网络业务中断的概率。虚拟网络业务处理方法,包括:接收虚拟网络业务请求,确定用于执行虚拟网络业务的目标代理,并获取业务执行信息;确定与目标代理对应的消息通信模式;根据确定的消息通信模式,从多个消息中间件中确定目标消息中间件;向目标消息中间件发送业务执行信息,以使目标消息中间件基于消息通信模式将业务执行信息转发给目标代理,使得目标代理根据业务执行信息执行虚拟网络业务。本申请可用于云计算服务中。

Description

虚拟网络业务处理方法、装置和系统,控制器,存储介质
本申请要求于2019年03月18日提交中国专利局、申请号为201910205500.1发明名称为“虚拟网络业务处理方法、装置和系统,控制器,存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及云计算技术领域,特别是涉及一种虚拟网络业务处理方法、装置和系统,控制器,存储介质。
背景技术
随着云计算和虚拟化技术的快速发展,在一些云计算的实施场景中,例如,在虚拟网络控制系统中,通常可以利用软件定义网络控制器(Software Defined Network Controller,简称SDN Controller)进行虚拟网络业务的管控,SDN控制器会向vswitch(Virtual Switch,虚拟交换机)或vrouter(Virtual Router,虚拟路由器)等代理发送业务数据,vswitch和vroute在接收到业务数据后,可以根据各自存储的业务逻辑和业务数据执行相关的业务。
图1为相关技术中虚拟网络控制系统的网络架构图一,如图1所示,该网络架构包括:一个或多个控制器,一个消息中间件和多个代理,其中,控制器通过该系统中唯一的消息中间件将业务数据发送给一个或多个代理,控制器可以为SDN控制器。
可见,基于图1的网络架构,整个网络部署了一个全局的消息中间件,整个网络的业务数据都需要经过该消息中间件进行转发处理,由于该消息中间件自身处理能力的限制,当网络中需要下发的业务流量,即下发的业务数据较多时,势必会增加该消息中间件的压力,因而可能会导致业务数据下发失败,造成网络业务中断。
发明内容
本申请实施例的目的在于提供一种虚拟网络业务处理方法、装置和系统,控制器,存储介质,可以有效降低网络业务中断的概率。
第一方面,为达到上述目的,本申请实施例公开了一种虚拟网络业务处理方法,所述方法应用于控制器,所述方法包括:接收虚拟网络业务请求, 其中,所述虚拟网络业务请求用于请求执行虚拟网络业务;根据所述虚拟网络业务请求,确定用于执行所述虚拟网络业务的目标代理,并获取业务执行信息;确定与所述目标代理对应的消息通信模式;根据确定的所述消息通信模式,从多个消息中间件中确定目标消息中间件;向所述目标消息中间件发送所述业务执行信息,以使所述目标消息中间件基于所述消息通信模式将所述业务执行信息转发给所述目标代理,使得所述目标代理根据所述业务执行信息执行所述虚拟网络业务。
结合第一方面,在第一方面的第一种实施方式中,所述确定与所述目标代理对应的消息通信模式包括:根据预先存储的代理的标识与消息通信模式之间的对应关系和所述目标代理的标识,确定与所述目标代理对应的消息通信模式。
结合第一方面,在第一方面的第二种实施方式中,所述根据确定的所述消息通信模式,从多个消息中间件中确定目标消息中间件包括:在确定的所述消息通信模式为直接(direct)方式或分列(fanout)方式的情况下,根据预先存储的代理的标识与消息中间件的对应关系和所述目标代理的标识,将所述多个消息中间件中与所述目标代理的标识对应的消息中间件确定为所述目标消息中间件;和/或,在确定的所述消息通信模式为主题(topic)方式的情况下,从所述多个消息中间件中部署有所述目标代理的服务程序的消息中间件中选取所述目标消息中间件。
结合第一方面的第二种实施方式,在第一方面的第三种实施方式中,所述从所述多个消息中间件中部署有所述目标代理的服务程序的消息中间件中选取目标消息中间件包括:从所述部署有所述目标代理的服务程序的消息中间件中随机选取一个消息中间件作为目标消息中间件;或,按照预设的顺序从所述部署有所述目标代理的服务程序的消息中间件中选取一个消息中间件作为目标消息中间件。
结合第一方面的第二种实施方式,在第一方面的第四种实施方式中,在确定的与所述目标代理对应的消息通信模式为fanout方式的情况下,所述确定的目标消息中间件以广播所述业务执行信息方式将所述业务执行信息转发给所述目标代理。
结合第一方面,在第一方面的第五种实施方式中,所述虚拟网络业务请求携带有与所述虚拟网络业务关联的业务参数;所述根据所述虚拟网络业务请求,确定用于执行所述虚拟网络业务的目标代理包括:根据预先存储的业务参数与代理之间的对应关系和与所述虚拟网络业务关联的业务参数,确定用于执行所述虚拟网络业务的目标代理。
结合第一方面,在第一方面的第六种实施方式中,在向所述目标消息中间件发送所述业务执行信息之后,所述方法还包括:从所述目标代理处获取所述目标代理发送的HTTP(Hyper Text Transfer Protocol,超文本传输协议)请求,其中,所述HTTP请求中携带有需要回调的内容信息。
结合第一方面的第一种至第六种任一种实施方式,在第一方面的第七种实施方式中,所述虚拟网络业务包括以下至少之一:创建、删除、更新、获取、分配虚拟网络资源。
第二方面,为了达到上述目的,本申请实施例还公开了一种虚拟网络业务处理系统,包括:控制器,多个消息中间件,多个代理,所述控制器通过所述消息中间件将业务执行信息发送至所述代理;其中,所述控制器,设置为接收虚拟网络业务请求,其中,所述虚拟网络业务请求用于请求执行虚拟网络业务,根据所述虚拟网络业务请求,确定用于执行所述虚拟网络业务的目标代理,并获取业务执行信息,确定与所述目标代理对应的消息通信模式,根据确定的所述消息通信模式,从所述多个消息中间件中确定目标消息中间件,向所述目标消息中间件发送所述业务执行信息;所述目标消息中间件,设置为在接收到所述业务执行信息之后,基于所述消息通信模式将所述业务执行信息转发给所述目标代理;所述目标代理,设置为在接收到所述业务执行信息后,根据所述业务执行信息执行所述虚拟网络业务。
结合第二方面,在第二方面的第一种实施方式中,所述控制器,具体设置为根据预先存储的代理的标识与消息通信模式之间的对应关系和所述目标代理的标识,确定与所述目标代理对应的消息通信模式。
结合第二方面,在第二方面的第二种实施方式中,所述控制器,具体设置为在确定的所述消息通信模式为direct方式或fanout方式的情况下,根据预先存储的代理的标识与消息中间件的对应关系和所述目标代理的标识,将所述 多个消息中间件中与所述目标代理的标识对应的消息中间件确定为目标消息中间件,和/或,在确定的所述消息通信模式为topic方式的情况下,从所述多个消息中间件中部署有所述目标代理的服务程序的消息中间件中选取目标消息中间件。
结合第二方面,在第二方面的第三种实施方式中,所述控制器,具体设置为从所述部署有所述目标代理的服务程序的消息中间件中随机选取一个消息中间件作为目标消息中间件,或,按照预设的顺序从所述部署有所述目标代理的服务程序的消息中间件中选取一个消息中间件作为目标消息中间件。
结合第二方面的第二种实施方式,在第二方面的第四种实施方式中,所述目标消息中间件,具体设置为在所述目标代理对应的消息通信模式为fanout方式的情况下,以广播所述业务执行信息方式将所述业务执行信息转发给所述目标代理。
结合第二方面,在第二方面的第五种实施方式中,所述虚拟网络业务请求携带有与所述虚拟网络业务关联的业务参数;所述控制器具体设置为根据预先存储的业务参数与代理之间的对应关系和与所述虚拟网络业务关联的业务参数,确定用于执行所述虚拟网络业务的目标代理。
结合第二方面,在第二方面的第六种实施方式中,所述目标代理,还设置为向所述控制器发送HTTP请求,其中,所述HTTP请求中携带有需要回调的内容信息;所述控制器,还设置为接收所述目标代理发送的所述HTTP请求。
第三方面,为了达到上述目的,本申请实施例还公开了一种虚拟网络业务处理装置,所述装置应用于控制器,所述装置包括:接收模块,设置为接收虚拟网络业务请求,其中,所述虚拟网络业务请求用于请求执行虚拟网络业务;第一确定模块,设置为根据所述虚拟网络业务请求,确定用于执行所述虚拟网络业务的目标代理,并获取业务执行信息;第二确定模块,设置为确定与所述目标代理对应的消息通信模式;第三确定模块,设置为根据确定的所述消息通信模式,从多个消息中间件中确定目标消息中间件;发送模块,设置为向所述目标消息中间件发送所述业务执行信息,以使所述目标消息中间件基于所述消息通信模式将所述业务执行信息转发给所述目标代理,使得所述目标代理根据所述业务执行信息执行所述虚拟网络业务。
结合第三方面,在第三方面的第一种实施方式中,所述第二确定模块,具体设置为根据预先存储的代理的标识与消息通信模式之间的对应关系和所述目标代理的标识,确定与所述目标代理对应的消息通信模式。
结合第三方面,在第三方面的第二种实施方式中,所述第三确定模块,具体设置为在确定的所述消息通信模式为direct方式或fanout方式的情况下,根据预先存储的代理的标识与消息中间件的对应关系和所述目标代理的标识,将所述多个消息中间件中与所述目标代理的标识对应的消息中间件确定为目标消息中间件,和/或,在确定的所述消息通信模式为topic方式的情况下,从所述多个消息中间件中部署有所述目标代理的服务程序的消息中间件中选取目标消息中间件。
结合第三方面的第二种实施方式,在第三方面的第三种实施方式中,所述第三确定模块,具体设置为从所述部署有所述目标代理的服务程序的消息中间件中随机选取一个消息中间件作为目标消息中间件,或,按照预设的顺序从所述部署有所述目标代理的服务程序的消息中间件中选取一个消息中间件作为目标消息中间件。
结合第三方面,在第三方面的第四种实施方式中,所述虚拟网络业务请求携带有与所述虚拟网络业务关联的业务参数;所述第一确定模块,具体设置为根据预先存储的业务参数与代理之间的对应关系和与所述虚拟网络业务关联的业务参数,确定用于执行所述虚拟网络业务的目标代理。
结合第三方面,在第三方面的第五种实施方式中,所述装置还包括:接收模块,设置为从所述目标代理处获取所述目标代理发送的HTTP请求,其中,所述HTTP请求中携带有需要回调的内容信息。
第四方面,为了达到上述目的,本申请实施例还公开了一种控制器,所述控制器包括存储器和处理器;所述存储器,设置为存放计算机程序;所述处理器,设置为执行存储器上所存放的程序时,实现如上述第一方面所述的虚拟网络业务处理方法步骤。
第五方面,为了达到上述目的,本申请实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序 被处理器执行时,实现如上述第一方面所述的虚拟网络业务处理方法步骤。
第六方面,为了达到上述目的,本申请实施例还公开了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的虚拟网络业务处理方法步骤。
本申请实施例提供的一种虚拟网络业务处理方法,可以在接收到虚拟网络业务请求后,确定用于执行虚拟网络业务的目标代理以及与该目标代理对应的消息通信模式,基于确定的消息通信模式从网络中部署的多个消息中间件中确定用于将虚拟网络业务的业务执行信息转发至对应的目标代理的目标消息中间件,向目标消息中间件发送该业务执行信息。基于上述处理,在虚拟网络控制系统中可以部署多个消息中间件,并将需要发送至目标代理的业务执行信息转发至确定出的目标消息中间件,即,可以将业务流量分给多个消息中间件,避免同一消息中间件分担所有的业务流量,降低消息中间件的业务压力,进而可以降低网络业务中断的概率;另外,在部署了多个消息中间件之后,通过基于目标代理对应的消息通信模式,从多个消息中间件中确定用于转发业务执行信息的消息中间件的方式,进而可以实现在降低消息中间件的业务压力的情况下,能够有效支持多种消息通信模式,进一步保证网络业务的多样化。
当然,实施本申请的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例和现有技术的技术方案,下面对实施例和现有技术中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为相关技术中虚拟网络控制系统的网络架构图一;
图2为相关技术中虚拟网络控制系统的网络架构图二;
图3为本申请实施例提到的一种网络架构图;
图4为本申请实施例提供的一种虚拟网络业务处理方法的流程图一;
图5为本申请实施例提供的一种虚拟网络业务处理方法的流程图二;
图6为本申请实施例提供的一种虚拟网络业务处理系统的结构示意图;
图7为本申请实施例提供的一种虚拟网络业务处理装置的结构示意图;
图8为本申请实施例提供的一种控制器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参见图2,图2为相关技术中虚拟网络控制系统的网络架构图二;图2的网络架构包括neutron-api-server cluster(neutron-application programming interface-server cluster,中子-应用程序编程接口-服务器集群)、neutron-rpc-server cluster(neutron-remote procedure call-server cluster,中子-远程过程调用-服务器集群)、mq cluster across multiple azs(message queue cluster across multiple availability zones,跨多个可用区域的消息队列集群)、openvswitch agent(开放虚拟交换标准代理)、metadata agent(元数据代理)、dhcp agent(dynamic host configuration protocol agent,动态主机设置协议代理)、l3agent(layer-3agent,第三层代理)、bass agent(backend as a service agent,后端即服务代理)和vpn agent(virtual private network agent,虚拟专用网络代理)。
其中,neutron-api-server cluster和/或neutron-rpc-server cluster可以认为是SDN控制器,用于向各agent下发业务数据。mq cluster across multiple azs相当于消息中间件,可以接收neutron-api-server cluster和/或neutron-rpc-server cluster发送的业务数据,并将业务数据发送至对应的agent。上述各agent可以接收mq cluster across multiple azs转发的业务数据,并执行业务数据对应的操作。
需要说明的是,图2所示的网络架构中,SDN控制器可以是一个或多个,消息中间件只有一个,agent可以是多个。
可见,基于图2的网络架构,整个网络部署了一个全局的消息中间件,整个网络的业务数据都需要经过该消息中间件进行转发处理,由于该消息中 间件自身业务处理能力的限制,当网络中需要下发的业务流量,即下发的业务数据较多时,势必会增加该消息中间件的压力,因而可能会导致业务数据下发失败,造成网络业务中断。
为了解决上述问题,本申请实施例提供的了一种虚拟网络业务处理方法,该方法可以应用于SDN控制器,以图3提供的网络架构为例进行说明,其中,图3为本申请实施例提供的一种虚拟网络控制系统的网络架构图,图3的网络架构包括neutron-api-server cluster、neutron-rpc-server cluster、mq cluster(消息队列集群)1、mq cluster2、openvswitch agent、metadata agent、dhcp agent、l3agent、bass agent和vpn agent。neutron-api-server cluster和/或neutron-rpc-server cluster可以表示SDN控制器。
可见,消息中间件可以包括mq cluster1和mq cluster2。SDN控制器可以获虚拟网络业务请求,该虚拟网络业务请求用于请求执行虚拟网络业务,该虚拟网络业务请求中携带有与虚拟网络业务关联的业务参数;SDN控制器在接收到该虚拟网络业务请求,获取虚拟网络业务请求中携带的上述业务参数,根据该业务参数确定需要执行虚拟网络业务的目标代理,并生成业务执行信息,SDN控制器进一步确定该目标代理所对应的消息通信模式,基于确定的消息通信模式从多个消息中间件中确定用于转发业务执行信息的目标消息中间件,即从mq cluster1和mq cluster2中确定出用于转发业务执行信息的消息中间件,然后,SDN控制器可以向目标消息中间件发送业务执行信息。目标消息中间件则可以将业务执行信息转发至目标代理。
本申请的实施例中的消息中间件可以是多个,并不限于两个,上述SDN控制器也可以是一个或多个。
基于上述处理,该网络架构中可以部署多个消息中间件,SDN控制器可以将需要发送至目标代理的业务执行信息转发至确定出的消息中间件(即目标消息中间件),也即,SDN控制器可以将业务流量分给多个消息中间件,避免同一消息中间件分担所有的业务流量,以降低消息中间件的业务压力,进而可以降低网络业务中断的概率。进一步,在部署了多个消息中间件之后,通过基于目标代理对应的消息通信模式,从多个消息中间件中确定用于转发业务执行信息的消息中间件的方式,进而可以实现在降低消息中间件的业务 压力的情况下,能够有效支持多种消息通信模式,进一步保证网络业务的多样化。
参见图4,图4为本申请实施例提供的一种虚拟网络业务处理方法的流程图一,本实施例以方法应用于SDN控制器为例进行说明,该方法可以包括以下步骤:
S401:接收虚拟网络业务请求,其中,虚拟网络业务请求用于请求执行虚拟网络业务。
其中,虚拟网络业务请求可以是应用程序接口(Application Programming Interface,简称API)请求,但并不限于此。该虚拟网络业务请求中可以携带有与虚拟网络业务关联的业务参数,上述虚拟网络业务可以包括以下至少之一,但并不限于此:创建虚拟网络资源、删除虚拟网络资源、更新虚拟网络资源、获取虚拟网络资源、分配虚拟网络资源;需要说明的是,上述虚拟网络资源可以包括以下至少之一,但并不限于此:虚拟网卡,弹性公网IP(Elastic IP,简称EIP),负载均衡(Load Balancing,简称LB),对等连接(Peering),虚拟专用网(Virtual Private Network,简称VPN)。
需要说明的是,针对不同的虚拟网络业务,该虚拟网络业务请求中携带的业务参数可以是不同的,比如,在虚拟网络业务为创建虚拟网卡时,上述虚拟网络业务请求中携带有虚拟私有云标识(Virtual Private Cloud Identification,简称VPC ID)或子网ID;在虚拟网络业务为绑定弹性公网IP时,上述虚拟网络业务请求中携带有虚拟网卡ID;在虚拟网络业务为创建负载均衡时,上述虚拟网络业务请求中携带有VPC ID;但并不限于此。
在本申请的实施例中,上述虚拟网络业务请求可以是云计算用户通过客户端设备发出的,该客户端设备可以为云计算用户提供用户控制界面,该云计算用户可通过用户控制界面进行虚拟网络业务请求的下发。该云计算用户可根据虚拟网络业务需求设置与虚拟网络业务关联的业务参数,通过上述虚拟网络业务请求的方式发送给SDN控制器。
S402:根据虚拟网络业务请求,确定用于执行虚拟网络业务的目标代理,并获取业务执行信息。
在本申请的实施例中,根据虚拟网络业务请求确定用于执行虚拟网络业 务的目标代理可以表现为:基于虚拟网络业务请求中携带的与虚拟网络业务关联的业务参数,确定目标代理。
在本申请的实施例中,可以通过以下方式确定目标代理:根据业务参数与代理之间的对应关系和与虚拟网络业务关联的业务参数,确定用于执行虚拟网络业务的目标代理。
以虚拟网络业务为创建虚拟网卡,虚拟网络业务请求中携带的业务参数为VPC ID或子网ID为例进行说明,SDN控制器中预先存储有业务参数与代理之间的对应关系,即存储有哪个代理处于哪个VPC或子网,或者每个VPC或子网中包括哪些代理;在SDN控制器接收到上述虚拟网络业务请求时,基于上述对应关系和该虚拟网络业务请求携带的VPC ID或子网ID,确定处于该VPC ID所指示的VPC中的代理或处于该子网ID所指示的子网中的代理,处于该VPC ID所指示的VPC中的代理或处于该子网ID所指示的子网中的代理被确定为上述目标代理。
与虚拟网络业务关联的业务参数可以包括多种参数,并不限于上述VPC ID,子网ID或者虚拟网卡ID等标识性的信息,因而,在本申请的一个实施例中,SDN控制器在接收到上述虚拟网络业务请求后,还可以基于述虚拟网络业务请求中携带的与虚拟网络业务关联的业务参数生成业务执行信息。
该业务执行信息可以包括目标代理执行业务所需要的业务数据。该业务数据与上述与虚拟网络业务关联的业务参数可以完全相同,也可以部分相同,还可以完全不相同,并不限于此。该业务数据用于代理执行虚拟网络业务,代理具体会基于业务数据和预先配置好的业务逻辑执行虚拟网络业务。举例而言,当虚拟网络业务为创建虚拟网卡时,业务数据可以包括但并不限于以下参数:vnet_id:子网id;domain_id:vpc的id;az_name:可用区名字;cidr:网段信息。可以理解的是,不同的虚拟网络业务可以对应不同的业务数据,这里不再赘述。
在本申请的一个实施例中,上述目标代理可以是服务器,也可以是节点,但并不限于此。
S403:确定与目标代理对应的消息通信模式。
需要说明的是,消息通信模式可以是目标代理与消息中间件之间通信的 方式,目标代理的消息通信模式可以由用户根据业务需求进行设置。通常,根据AMQP(Advanced Message Queuing Protocol,高级消息队列协议)的规定,比如目标代理的消息通信模式可以包括direct(直接)方式、topic(主题)方式或fanout(分列)方式,但并不限于此。
需要说明的是,网络中每个代理采用的消息通信模式可能不同,因而,SDN控制器中预先存储有哪个代理采用哪种消息通信模式,即预先存储了代理的标识与消息通信模式之间的对应关系;因而,在本申请的一个实施例中,上述步骤S403可以表现为:根据预先存储的代理的标识与消息通信模式之间的对应关系和目标代理的标识,确定与目标代理对应的消息通信模式。
在本申请的实施例中,在SDN控制器确定了目标代理后,SDN控制器可以在存储的代理的标识与消息通信模式之间的对应关系中进行查询,确定与目标代理的标识对应的消息通信模式,确定出的消息通信模式也即与目标代理对应的消息通信模式(可以称为目标消息通信模式)。
S404:根据确定的消息通信模式,从多个消息中间件中确定目标消息中间件。
其中,多个消息中间件为网络中预先部署好的消息中间件,多个消息中间件之间是相互独立的,即可以独立进行维护、更新和修改等操作,该多个消息中间件均可以对SDN控制器下发的信息进行独立转发。
在本申请的一个实施例中,消息中间件可以是一个服务器集群,该服务器集群中可以包括多个服务器,但并不限于此。
技术人员可以根据不同的粒度为网络部署多个消息中间件。例如,技术人员可以部署多个AZ(Availability Zones,可用区域),并将每一AZ对应部署一个消息中间件,进而可以得到多个消息中间件,其中,每一AZ中可以包括多个服务器或节点。
或者,技术人员可以确定多个region(地区),并将每一region对应部署一个消息中间件,进而可以得到多个消息中间件,其中,每一region可以包括多个AZ,同一region包含的多个AZ可以网络互通。
需要说明的是,AZ或region与消息中间件可以是一一对应关系,在实施时,可以通过AZ标识寻找与AZ标识对应的消息中间件的地址,进而可以将 相应的业务执行信息发送给该消息中间件,同理,也可以通过region标识寻找与region标识对应的消息中间件的地址,进而可以将相应的业务执行信息发送给该消息中间件。
需要说明的是,每一种消息通信模式下,多个消息中间件中部署为目标代理提供服务的部署情况是不同的,比如在direct方式或fanout方式下,多个消息中间件中只部署一个消息中间件为该目标代理提供服务,在topic方式下,多个消息中间件可以全部部署为该目标代理提供服务,也可以指定多个消息中间件中部分消息中间件为该目标代理提供服务;因而在每种消息通信模式下,用于确定目标消息中间件的策略也可能是不同的,即可以基于确定的消息通信模式来进一步确定每种消息通信模式所对应的策略,基于对应的策略来从多个消息中间件中确定目标消息中间件。以上述消息通信模式可以为direct方式,fanout方式,topic方式等为例,在本申请的实施例中,在根据确定的消息通信模式,确定目标消息中间件时,SDN控制器可以采取以下方式:
方式一,在确定的与目标代理对应的消息通信模式为direct方式或fanout方式的情况下,根据预先存储的代理的标识与消息中间件的对应关系和目标代理的标识,将多个消息中间件中与目标代理的标识对应的消息中间件确定为目标消息中间件。
在本申请的实施例中,在向代理下发业务执行信息之前,技术人员可以根据业务需求对网络架构进行部署,即,确定代理的标识与消息中间件的对应关系,并将代理的标识与消息中间件的对应关系存储在SDN控制器中。
在本申请的一个实施例中,上述代理的标识与消息中间件的对应关系可以表现为:上述代理的标识与上述可用区(AZ)的标识的对应关系;具体地,根据预先存储的代理的标识与消息中间件的对应关系和目标代理的标识,将多个消息中间件中与目标代理的标识对应的消息中间件确定为目标消息中间件可以表现为:根据代理的标识与上述可用区(AZ)的标识的对应关系和目标代理的标识,确定目标代理所属AZ的AZ标识,基于确定的AZ标识确定与该AZ标识对应的消息中间件,其中,确定的消息中间件即为上述目标消息中间件。
需要说明的是,在一种实施例中,上述代理的标识与消息中间件的对应 关系也可以表现为:上述代理的标识与上述region(地区)的标识的对应关系;确定消息中间件的方式与上述AZ标识确定的方式类似,此处不再赘述。
一种实现方式中,如果某一代理的消息通信模式为direct方式,则该代理的标识可以与多个消息中间件中的一个消息中间件相对应;如果该代理的消息通信模式为topic方式,则该代理的标识可以与一个或多个消息中间件均相对应;如果该代理接收消息的方式为fanout方式,则该代理的标识可以与多个消息中间件中的一个消息中间件相对应。
当SDN控制器确定的目标代理的消息通信模式为direct方式时,SDN控制器可以在存储的代理的标识与消息中间件的对应关系中进行查询,将多个消息中间件中与目标代理的标识对应的消息中间件,确定为目标消息中间件。另外,当SDN控制器确定目标消息通信模式为fanout方式时,SDN控制器也可以在存储的代理的标识与消息中间件的对应关系中进行查询,将多个消息中间件中与目标代理的标识对应的消息中间件,确定为目标消息中间件。
方式二,在确定的与目标代理对应的消息通信模式为topic方式的情况下,从多个消息中间件中部署有目标代理的服务程序的消息中间件中选取目标消息中间件。
在本申请的实施例中,当SDN控制器确定目标消息通信模式为topic方式时,SDN控制器可以直接从部署有目标代理的服务程序的消息中间件中选取目标消息中间件。
需要说明的是,上述部署有目标代理的服务程序的消息中间件可以是网络中所有的消息中间件,也可以是网络中的多个消息中间件中的部分消息中间件,但并不限于此。
在本申请的实施例中,SDN控制器从部署有目标代理的服务程序的消息中间件中选取目标消息中间件,可以包括以下情况:
情况一,在多个消息中间件上都已部署为目标代理提供服务的服务程序(即网络中的所有消息中间件都部署有目标代理的服务程序)的情况下,从多个消息中间件中选择一个消息中间件作为目标消息中间件。
在本申请的实施例中,技术人员可以根据业务需求设置为每一代理提供服务的消息中间件。当SDN控制器确定目标消息通信模式为topic方式,在 本申请的实施例中,SDN控制器可以采取不同的方式,从多个消息中间件中选取一个消息中间件,作为目标消息中间件。
一种实现方式中,从多个消息中间件中随机选取一个消息中间件作为目标消息中间件。
如果目标消息通信模式为topic方式,且组网中每一消息中间件上都已部署为目标代理提供服务的服务程序,则SDN控制器可以从组网中的各消息中间件中随机选取一个消息中间件,作为目标消息中间件。
另一种实现方式中,按照预设的顺序从多个消息中间件中选取一个消息中间件作为目标消息中间件。
如果目标消息通信模式为topic方式,且组网中每一消息中间件上都已部署为目标代理提供服务的服务程序,则SDN控制器可以按照预设的顺序从组网中的各消息中间件中选取一个消息中间件,作为目标消息中间件。例如,预设的顺序可以是技术人员预先对各消息中间件进行排序得到的。
情况二,在多个消息中间件中的部分消息中间件上已部署为目标代理提供服务的服务程序(即网络中的多个消息中间件中的部分消息中间件部署有目标代理的服务程序)的情况下,将部分消息中间件作为目标消息中间件。
其中,部分消息中间件可以是组网中的一个或者多个消息中间件。
在本申请的实施例中,当SDN控制器确定目标消息通信模式为topic方式,且组网中部分消息中间件上已部署为目标代理提供服务的服务程序时,SDN控制器可以将已部署为目标代理提供服务的服务程序的消息中间件,作为目标消息中间件。
S405:向目标消息中间件发送业务执行信息,以使目标消息中间件基于消息通信模式将业务执行信息转发给目标代理,使得目标代理根据业务执行信息执行虚拟网络业务。
在本申请的实施例中,在确定出目标消息中间件后,SDN控制器可以向目标消息中间件发送业务执行信息,相应的,在目标消息中间件接收到业务执行信息后,目标消息中间件可以将业务执行信息转发至目标代理。
另外,在确定的与目标代理对应的消息通信模式为fanout方式的情况下,确定的目标消息中间件可以以广播业务执行信息方式将业务执行信息转发给 目标代理;在确定的与目标代理对应的消息通信模式为direct方式的情况下,确定的目标消息中间件可以以单播业务执行信息方式将业务执行信息转发给目标代理,在确定的与目标代理对应的消息通信模式为topic方式的情况下,确定的目标消息中间件可以按照目标代理的订阅信息将业务执行信息转发给目标代理。
需要说明的是,上述步骤S402中获取业务执行信息的步骤与上述步骤S402中确定目标代理以及步骤S403-步骤S404可以同时执行,也可以是先后执行,其并不限定,只要在向目标消息中间件发送业务执行信息之前能够完成上述业务执行信息即可。
在本申请的实施例中,为了节省回调时间,加快回调速度,在本申请的一个实施例中,上述该方法还可以包括以下步骤:从目标代理处获取目标代理发送的HTTP(Hyper Text Transfer Protocol,超文本传输协议)请求,其中,HTTP请求中携带有需要回调的内容信息。
在本申请的实施例中,在进行回调时,目标代理可以直接向SDN控制器发送携带有需要回调的内容信息的HTTP请求,而不需要通过消息中间件对该HTTP请求进行转发,相应的,SDN控制器则可以直接从目标代理接收到该HTTP请求,并响应该HTTP请求。
在一个实施例中,在回调的时候也可以通过与目标代理对应的消息中间件向SDN控制器发送相应的消息,但并不限于此。
基于本申请实施例的虚拟网络业务处理方法,网络中可以部署多个消息中间件,SDN控制器可以将需要发送至目标代理的业务执行信息转发至确定出的消息中间件(即目标消息中间件),也即,SDN控制器可以将业务流量分给多个消息中间件,避免同一消息中间件分担所有的业务流量,以降低消息中间件的业务压力,进而可以降低网络业务中断的概率。进一步,在部署了多个消息中间件之后,通过基于目标代理对应的消息通信模式,从多个消息中间件中确定用于转发业务执行信息的消息中间件的方式,进而可以实现在降低消息中间件的业务压力的情况下,能够有效支持多种消息通信模式,进一步保证网络业务的多样化。
另外,相关技术中通过使用接收端的标识代码计算hash值来确定消息中 间件和代理之间的关系,而相关技术中的这种方式在进行扩容时,由于消息中间件的数量变多,使得之前接收端的hash发生了变化,即该代理对应的消息中间件也发生了变化,进而需要重新刷新网络系统结构。而本申请实施例提供的虚拟网络业务处理方法,可以直接通过映射的方式,即在SDN控制器中直接存储代理与消息中间件之间的对应关系,进而通过该对应关系直接确定目标代理对应的消息中间件,相比于上述相关技术,在扩容时可以直接指定新增的消息中间件与代理之间的对应关系,而不需要重新刷新网络系统机构,具有更好的系统稳定性。
参见图5,图5为本申请实施例提供的一种虚拟网络业务处理方法的流程图二,该方法可以包括以下步骤:
S501:接收虚拟网络业务请求,其中,虚拟网络业务请求用于请求执行虚拟网络业务。
S502:根据虚拟网络业务请求,确定用于执行虚拟网络业务的目标代理,并获取业务执行信息,其中,在目标代理接收到业务执行信息后,根据业务执行信息执行虚拟网络业务。
S503:根据预先存储的代理的标识与消息中间件的对应关系,从多个消息中间中确定目标消息中间件。
S504:向目标消息中间件发送业务执行信息,以使目标消息中间件基于消息通信模式将业务执行信息转发给目标代理。
其中,每个目标代理可以有不同的消息通信模式,在与目标代理对应的消息通信模式为direct方式或fanout方式的情况下,多个消息中间件中的一个消息中间件与上述目标代理对应;在与目标代理对应的消息通信模式为topic方式的情况下,多个消息中间件中的多个消息中间件与目标代理对应;在与目标代理对应的消息通信模式为topic方式的情况下,需要进一步从与目标代理对应的多个消息中间件中选择一个消息中间作为上述目标消息中间件。
由以上可见,基于本申请实施例的虚拟网络业务处理方法,网络中可以部署多个消息中间件,SDN控制器可以将需要发送至目标代理的业务执行信息转发至确定出的消息中间件(即目标消息中间件),也即,SDN控制器可以将业务流量分给多个消息中间件,避免同一消息中间件分担所有的业务流量, 以降低消息中间件的业务压力,进而可以降低网络业务中断的概率。
另外,相关技术中通过使用接收端的标识代码来计算hash值来确定消息中间件和代理之间的关系,而相关技术中的这种方式在进行扩容时,由于消息中间件的数量变多,使得之前接收端的hash发生了变化,即该代理对应的消息中间件也发生了变化,进而需要重新刷新网络系统结构。而本申请实施例提供的虚拟网络业务处理方法,可以直接通过映射的方式,即在SDN控制器中直接存储代理与消息中间件之间的对应关系,进而通过该对应关系直接确定目标代理对应的消息中间件,相比于上述相关技术,在扩容时可以直接指定新增的消息中间件与代理之间的对应关系,而不需要重新刷新网络系统机构,具有更好的系统稳定性。
需要说明的是,上述步骤S501,S502,S503,S504的执行顺序可以不做限比如其可以同时执行也可以先后执行,并不限于此。
另外,本申请实施例还提供了一种虚拟网络业务处理系统,如图6所示,可以包括:控制器,多个消息中间件和多个代理,控制器可以为SDN控制器,控制器通过消息中间件将业务执行信息发送至代理;其中,控制器,设置为接收虚拟网络业务请求,其中,虚拟网络业务请求用于请求执行虚拟网络业务,根据虚拟网络业务请求,确定用于执行虚拟网络业务的目标代理,并获取业务执行信息,确定与目标代理对应的消息通信模式,根据确定的消息通信模式,从多个消息中间件中确定目标消息中间件,向目标消息中间件发送业务执行信息;
目标消息中间件,设置为在接收到业务执行信息之后,基于消息通信模式将业务执行信息转发给目标代理;
目标代理,设置为在接收到业务执行信息后,根据业务执行信息执行虚拟网络业务。
在本申请的实施例中,控制器具体设置为根据预先存储的代理的标识与消息通信模式之间的对应关系和目标代理的标识,确定与目标代理对应的消息通信模式。
在本申请的实施例中,控制器具体设置为在确定的消息通信模式为direct方式或fanout方式的情况下,根据预先存储的代理的标识与消息中间件的对 应关系和目标代理的标识,将多个消息中间件中与目标代理的标识对应的消息中间件确定为目标消息中间件,和/或,在确定的消息通信模式为topic方式的情况下,从多个消息中间件中部署有目标代理的服务程序的消息中间件中选取目标消息中间件。
在本申请的实施例中,控制器具体设置为从部署有目标代理的服务程序的消息中间件中随机选取一个消息中间件作为目标消息中间件,或,按照预设的顺序从部署有目标代理的服务程序的消息中间件中选取一个消息中间件作为目标消息中间件。
在本申请的实施例中,目标消息中间件具体设置为在目标代理对应的消息通信模式为fanout方式的情况下,以广播业务执行信息方式将业务执行信息转发给目标代理。
在本申请的实施例中,虚拟网络业务请求携带有与虚拟网络业务关联的业务参数,控制器具体设置为根据预先存储的业务参数与代理之间的对应关系和与虚拟网络业务关联的业务参数,确定用于执行虚拟网络业务的目标代理。
在本申请的实施例中,目标代理还设置为向控制器发送HTTP请求,其中,HTTP请求中携带有需要回调的内容信息;控制器,还设置为接收目标代理发送的HTTP请求。
由以上可见,通过上述系统,该网络架构中可以部署多个消息中间件,控制器可以将需要发送至目标代理的业务执行信息转发至确定出的消息中间件(即目标消息中间件),也即,控制器可以将业务流量分给多个消息中间件,避免同一消息中间件分担所有的业务流量,以降低消息中间件的业务压力,进而可以降低网络业务中断的概率。进一步,在部署了多个消息中间件之后,通过基于目标代理对应的消息通信模式,从多个消息中间件中确定用于转发业务执行信息的消息中间件的方式,进而可以实现在降低消息中间件的业务压力的情况下,能够有效支持多种消息通信模式,进一步保证网络业务的多样化。
需要说明的是,系统实施例中的术语的解释可参考上述方法实施例,此处不再赘述。
另外,参见图7,本申请实施例还提供了一种虚拟网络业务处理装置,该装置可应用于控制器,该装置包括:
接收模块701,设置为接收虚拟网络业务请求,其中,虚拟网络业务请求用于请求执行虚拟网络业务;
第一确定模块702,设置为根据虚拟网络业务请求,确定用于执行虚拟网络业务的目标代理,并获取业务执行信息;
第二确定模块703,设置为确定与目标代理对应的消息通信模式;
第三确定模块704,设置为根据确定的消息通信模式,从多个消息中间件中确定目标消息中间件;
发送模块705,设置为向目标消息中间件发送业务执行信息,以使目标消息中间件基于消息通信模式将业务执行信息转发给目标代理,使得目标代理根据业务执行信息执行虚拟网络业务。
在本申请的实施例中,第二确定模块703,具体设置为根据预先存储的代理的标识与消息通信模式之间的对应关系和目标代理的标识,确定与目标代理对应的消息通信模式。
在本申请的实施例中,第三确定模块704,具体设置为在确定的消息通信模式为direct方式或fanout方式的情况下,根据预先存储的代理的标识与消息中间件的对应关系和目标代理的标识,将多个消息中间件中与目标代理的标识对应的消息中间件确定为目标消息中间件,和/或,在确定的消息通信模式为topic方式的情况下,从多个消息中间件中部署有目标代理的服务程序的消息中间件中选取目标消息中间件。
在本申请的实施例中,第三确定模块704,具体设置为从部署有目标代理的服务程序的消息中间件中随机选取一个消息中间件作为目标消息中间件,或,按照预设的顺序从部署有目标代理的服务程序的消息中间件中选取一个消息中间件作为目标消息中间件。
在本申请的实施例中,虚拟网络业务请求携带有与虚拟网络业务关联的业务参数;
第一确定模块702,具体设置为根据预先存储的业务参数与代理之间的对应关系和与虚拟网络业务关联的业务参数,确定用于执行虚拟网络业务的目 标代理。
在本申请的实施例中,该装置还可包括:
接收模块,设置为从目标代理处获取目标代理发送的HTTP请求,其中,HTTP请求中携带有需要回调的内容信息。
由以上可见,通过上述装置,由于该网络架构中可以部署多个消息中间件,该装置可以将需要发送至目标代理的业务执行信息转发至确定出的消息中间件(即目标消息中间件),也即,该装置可以将业务流量分给多个消息中间件,避免同一消息中间件分担所有的业务流量,以降低消息中间件的业务压力,进而可以降低网络业务中断的概率。进一步,在部署了多个消息中间件之后,通过基于目标代理对应的消息通信模式,从多个消息中间件中确定用于转发业务执行信息的消息中间件的方式,进而可以实现在降低消息中间件的业务压力的情况下,能够有效支持多种消息通信模式,进一步保证网络业务的多样化。
本申请实施例还提供了一种电子设备,具体为一种控制器,例如可以为SDN控制器,如图8所示,包括存储器801和处理器802;
存储器801,设置为存放计算机程序;
处理器802,设置为执行存储器801上所存放的程序时,实现本申请实施例提供的上述虚拟网络业务处理方法。
可选的,上述虚拟网络业务处理方法,包括:
接收虚拟网络业务请求,其中,虚拟网络业务请求用于请求执行虚拟网络业务;
根据虚拟网络业务请求,确定用于执行虚拟网络业务的目标代理,并获取业务执行信息;
确定与目标代理对应的消息通信模式;
根据确定的消息通信模式,从多个消息中间件中确定目标消息中间件;
向目标消息中间件发送业务执行信息,以使目标消息中间件基于消息通信模式将业务执行信息转发给目标代理,使得目标代理根据业务执行信息执行虚拟网络业务。
需要说明的是,上述虚拟网络业务处理方法的其他实现方式与前述方法 实施例部分相同,这里不再赘述。
上述控制器可以具备有实现上述控制器与其他设备之间通信的通信接口。
上述的处理器802,通信接口,存储器801通过通信总线完成相互间的通信,此处提到的通信总线可以是外设部件互连标准(Peripheral Component Interconnect,简称PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。
存储器801可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(Non-Volatile Memory,简称NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器802可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
基于本申请实施例提供的控制器,其所在网络架构中可以部署多个消息中间件,控制器可以将需要发送至目标代理的业务执行信息转发至确定出的消息中间件(即目标消息中间件),也即,控制器可以将业务流量分给多个消息中间件,避免同一消息中间件分担所有的业务流量,以降低消息中间件的业务压力,进而可以降低网络业务中断的概率。进一步,在部署了多个消息中间件之后,通过基于目标代理对应的消息通信模式,从多个消息中间件中确定用于转发业务执行信息的消息中间件的方式,进而可以实现在降低消息中间件的业务压力的情况下,能够有效支持多种消息通信模式,进一步保证网络业务的多样化。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行本申请实施例提供的上述虚拟网络业务处理方法。
可选的,上述虚拟网络业务处理方法,包括:
接收虚拟网络业务请求,其中,虚拟网络业务请求用于请求执行虚拟网络业务;
根据虚拟网络业务请求,确定用于执行虚拟网络业务的目标代理,并获取业务执行信息;
确定与目标代理对应的消息通信模式;
根据确定的消息通信模式,从多个消息中间件中确定目标消息中间件;
向目标消息中间件发送业务执行信息,以使目标消息中间件基于消息通信模式将业务执行信息转发给目标代理,使得目标代理根据业务执行信息执行虚拟网络业务。
需要说明的是,上述虚拟网络业务处理方法的其他实现方式与前述方法实施例部分相同,这里不再赘述。
通过本申请实施例还提供的一种计算机可读存储介质,该网络架构中可以部署多个消息中间件,可以将需要发送至目标代理的业务执行信息转发至确定出的消息中间件(即目标消息中间件),也即,可以将业务流量分给多个消息中间件,避免同一消息中间件分担所有的业务流量,以降低消息中间件的业务压力,进而可以降低网络业务中断的概率。进一步,在部署了多个消息中间件之后,通过基于目标代理对应的消息通信模式,从多个消息中间件中确定用于转发业务执行信息的消息中间件的方式,进而可以实现在降低消息中间件的业务压力的情况下,能够有效支持多种消息通信模式,进一步保证网络业务的多样化。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本申请实施例提供的上述虚拟网络业务处理方法。
可选的,上述虚拟网络业务处理方法,包括:
接收虚拟网络业务请求,其中,虚拟网络业务请求用于请求执行虚拟网络业务;
根据虚拟网络业务请求,确定用于执行虚拟网络业务的目标代理,并获取业务执行信息;
确定与目标代理对应的消息通信模式;
根据确定的消息通信模式,从多个消息中间件中确定目标消息中间件;
向目标消息中间件发送业务执行信息,以使目标消息中间件基于消息通信模式将业务执行信息转发给目标代理,使得目标代理根据业务执行信息执行虚拟网络业务。
需要说明的是,上述虚拟网络业务处理方法的其他实现方式与前述方法实施例部分相同,这里不再赘述。
通过运行本申请实施例提供的计算机程序产品,该网络架构中可以部署多个消息中间件,可以将需要发送至目标代理的业务执行信息转发至确定出的消息中间件(即目标消息中间件),也即,可以将业务流量分给多个消息中间件,避免同一消息中间件分担所有的业务流量,以降低消息中间件的业务压力,进而可以降低网络业务中断的概率。进一步,在部署了多个消息中间件之后,通过基于目标代理对应的消息通信模式,从多个消息中间件中确定用于转发业务执行信息的消息中间件的方式,进而可以实现在降低消息中间件的业务压力的情况下,能够有效支持多种消息通信模式,进一步保证网络业务的多样化。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统、装置、电子设备(控制器)、计算机可读存储介质、计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。
工业实用性
基于本申请实施例提供的上述技术方案,在虚拟网络控制系统中可以部署多个消息中间件,并将需要发送至目标代理的业务执行信息转发至确定出的目标消息中间件,即,可以将业务流量分给多个消息中间件,避免同一消息中间件分担所有的业务流量,降低消息中间件的业务压力,进而可以降低网络业务中断的概率;另外,在部署了多个消息中间件之后,通过基于目标代理对应的消息通信模式,从多个消息中间件中确定用于转发业务执行信息的消息中间件的方式,进而可以实现在降低消息中间件的业务压力的情况下,能够有效支持多种消息通信模式,进一步保证网络业务的多样化。

Claims (23)

  1. 一种虚拟网络业务处理方法,所述方法应用于控制器,所述方法包括:
    接收虚拟网络业务请求,其中,所述虚拟网络业务请求用于请求执行虚拟网络业务;
    根据所述虚拟网络业务请求,确定用于执行所述虚拟网络业务的目标代理,并获取业务执行信息;
    确定与所述目标代理对应的消息通信模式;
    根据确定的所述消息通信模式,从多个消息中间件中确定目标消息中间件;
    向所述目标消息中间件发送所述业务执行信息,以使所述目标消息中间件基于所述消息通信模式将所述业务执行信息转发给所述目标代理,使得所述目标代理根据所述业务执行信息执行所述虚拟网络业务。
  2. 根据权利要求1所述的方法,其中,所述确定与所述目标代理对应的消息通信模式包括:
    根据预先存储的代理的标识与消息通信模式之间的对应关系和所述目标代理的标识,确定与所述目标代理对应的消息通信模式。
  3. 根据权利要求1所述的方法,其中,所述根据确定的所述消息通信模式,从多个消息中间件中确定目标消息中间件包括:
    在确定的所述消息通信模式为直接direct方式或分列fanout方式的情况下,根据预先存储的代理的标识与消息中间件的对应关系和所述目标代理的标识,将所述多个消息中间件中与所述目标代理的标识对应的消息中间件确定为目标消息中间件;
    和/或,
    在确定的所述消息通信模式为主题topic方式的情况下,从所述多个消息中间件中部署有所述目标代理的服务程序的消息中间件中选取目标消息中间件。
  4. 根据权利要求3所述的方法,其中,所述从所述多个消息中间件中部署有所述目标代理的服务程序的消息中间件中选取目标消息中间件包括:
    从所述部署有所述目标代理的服务程序的消息中间件中随机选取一个消息中间件作为目标消息中间件;或,
    按照预设的顺序从所述部署有所述目标代理的服务程序的消息中间件中 选取一个消息中间件作为目标消息中间件。
  5. 根据权利要求3所述的方法,其中,在确定的与所述目标代理对应的消息通信模式为fanout方式的情况下,所述确定的目标消息中间件以广播所述业务执行信息方式将所述业务执行信息转发给所述目标代理。
  6. 根据权利要求1所述的方法,其中,
    所述虚拟网络业务请求携带有与所述虚拟网络业务关联的业务参数;
    所述根据所述虚拟网络业务请求,确定用于执行所述虚拟网络业务的目标代理包括:
    根据预先存储的业务参数与代理之间的对应关系和与所述虚拟网络业务关联的业务参数,确定用于执行所述虚拟网络业务的目标代理。
  7. 根据权利要求1所述的方法,其中,在向所述目标消息中间件发送所述业务执行信息之后,所述方法还包括:
    从所述目标代理处获取所述目标代理发送的超文本传输协议HTTP请求,其中,所述HTTP请求中携带有需要回调的内容信息。
  8. 根据权利要求1至7任一项所述的方法,其中,所述虚拟网络业务包括以下至少之一:创建、删除、更新、获取、分配虚拟网络资源。
  9. 一种虚拟网络业务处理系统,包括:
    控制器,多个消息中间件,多个代理,所述控制器通过所述消息中间件将业务执行信息发送至所述代理;其中,
    所述控制器,设置为接收虚拟网络业务请求,其中,所述虚拟网络业务请求用于请求执行虚拟网络业务,根据所述虚拟网络业务请求,确定用于执行所述虚拟网络业务的目标代理,并获取业务执行信息,确定与所述目标代理对应的消息通信模式,根据确定的所述消息通信模式,从所述多个消息中间件中确定目标消息中间件,向所述目标消息中间件发送所述业务执行信息;
    所述目标消息中间件,设置为在接收到所述业务执行信息之后,基于所述消息通信模式将所述业务执行信息转发给所述目标代理;
    所述目标代理,设置为在接收到所述业务执行信息后,根据所述业务执行信息执行所述虚拟网络业务。
  10. 根据权利要求9所述的系统,其中,所述控制器,具体设置为根据预先存储的代理的标识与消息通信模式之间的对应关系和所述目标代理的标识,确定与所述目标代理对应的消息通信模式。
  11. 根据权利要求9所述的系统,其中,所述控制器,具体设置为在确定的所述消息通信模式为direct方式或fanout方式的情况下,根据预先存储的代理的标识与消息中间件的对应关系和所述目标代理的标识,将所述多个消息中间件中与所述目标代理的标识对应的消息中间件确定为目标消息中间件,和/或,在确定的所述消息通信模式为topic方式的情况下,从所述多个消息中间件中部署有所述目标代理的服务程序的消息中间件中选取目标消息中间件。
  12. 根据权利要求11所述的系统,其中,所述控制器,具体设置为从所述部署有所述目标代理的服务程序的消息中间件中随机选取一个消息中间件作为目标消息中间件,或,按照预设的顺序从所述部署有所述目标代理的服务程序的消息中间件中选取一个消息中间件作为目标消息中间件。
  13. 根据权利要求11所述的系统,其中,所述目标消息中间件,具体设置为在所述目标代理对应的消息通信模式为fanout方式的情况下,以广播所述业务执行信息方式将所述业务执行信息转发给所述目标代理。
  14. 根据权利要求9所述的系统,其中,
    所述虚拟网络业务请求携带有与所述虚拟网络业务关联的业务参数;
    所述控制器具体设置为根据预先存储的业务参数与代理之间的对应关系和与所述虚拟网络业务关联的业务参数,确定用于执行所述虚拟网络业务的目标代理。
  15. 根据权利要求9所述的系统,其中,所述目标代理,还设置为向所述控制器发送HTTP请求,其中,所述HTTP请求中携带有需要回调的内容信息;
    所述控制器,还设置为接收所述目标代理发送的所述HTTP请求。
  16. 一种虚拟网络业务处理装置,所述装置应用于控制器,所述装置包括:
    接收模块,设置为接收虚拟网络业务请求,其中,所述虚拟网络业务请求用于请求执行虚拟网络业务;
    第一确定模块,设置为根据所述虚拟网络业务请求,确定用于执行所述虚拟网络业务的目标代理,并获取业务执行信息;
    第二确定模块,设置为确定与所述目标代理对应的消息通信模式;
    第三确定模块,设置为根据确定的所述消息通信模式,从多个消息中间件中确定目标消息中间件;
    发送模块,设置为向所述目标消息中间件发送所述业务执行信息,以使 所述目标消息中间件基于所述消息通信模式将所述业务执行信息转发给所述目标代理,使得所述目标代理根据所述业务执行信息执行所述虚拟网络业务。
  17. 根据权利要求16所述的装置,其中,所述第二确定模块,具体设置为根据预先存储的代理的标识与消息通信模式之间的对应关系和所述目标代理的标识,确定与所述目标代理对应的消息通信模式。
  18. 根据权利要求16所述的装置,其中,所述第三确定模块,具体设置为在确定的所述消息通信模式为direct方式或fanout方式的情况下,根据预先存储的代理的标识与消息中间件的对应关系和所述目标代理的标识,将所述多个消息中间件中与所述目标代理的标识对应的消息中间件确定为目标消息中间件,和/或,在确定的所述消息通信模式为topic方式的情况下,从所述多个消息中间件中部署有所述目标代理的服务程序的消息中间件中选取目标消息中间件。
  19. 根据权利要求18所述的装置,其中,所述第三确定模块,具体设置为从所述部署有所述目标代理的服务程序的消息中间件中随机选取一个消息中间件作为目标消息中间件,或,按照预设的顺序从所述部署有所述目标代理的服务程序的消息中间件中选取一个消息中间件作为目标消息中间件。
  20. 根据权利要求16所述的装置,其中,
    所述虚拟网络业务请求携带有与所述虚拟网络业务关联的业务参数;
    所述第一确定模块,具体设置为根据预先存储的业务参数与代理之间的对应关系和与所述虚拟网络业务关联的业务参数,确定用于执行所述虚拟网络业务的目标代理。
  21. 根据权利要求16所述的装置,其中,所述装置还包括:
    接收模块,设置为从所述目标代理处获取所述目标代理发送的HTTP请求,其中,所述HTTP请求中携带有需要回调的内容信息。
  22. 一种控制器,包括存储器和处理器;
    所述存储器,设置为存放计算机程序;
    所述处理器,设置为执行所述存储器上所存放的程序时,实现权利要求1-8任一所述的方法步骤。
  23. 一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-8任一所述的方法步骤。
PCT/CN2020/071144 2019-03-18 2020-01-09 虚拟网络业务处理方法、装置和系统,控制器,存储介质 WO2020186909A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910205500.1A CN109688235B (zh) 2019-03-18 2019-03-18 虚拟网络业务处理方法、装置和系统,控制器,存储介质
CN201910205500.1 2019-03-18

Publications (1)

Publication Number Publication Date
WO2020186909A1 true WO2020186909A1 (zh) 2020-09-24

Family

ID=66184274

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/071144 WO2020186909A1 (zh) 2019-03-18 2020-01-09 虚拟网络业务处理方法、装置和系统,控制器,存储介质

Country Status (2)

Country Link
CN (1) CN109688235B (zh)
WO (1) WO2020186909A1 (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112579148A (zh) * 2020-12-17 2021-03-30 广州虎牙科技有限公司 基于业务代理的业务消息处理方法、装置及电子设备
CN112968976A (zh) * 2021-03-31 2021-06-15 北京奇艺世纪科技有限公司 外网访问控制系统、方法、装置、设备及存储介质
CN113034111A (zh) * 2021-03-31 2021-06-25 北京金山云网络技术有限公司 一种数据导出、导入方法及装置
CN113452774A (zh) * 2021-06-25 2021-09-28 睿视(苏州)视频科技有限公司 消息推送方法、装置、设备及存储介质
CN113660111A (zh) * 2021-07-21 2021-11-16 厦门亿联网络技术股份有限公司 一种4G Desk Phone外置协议栈的测试方法
CN114363264A (zh) * 2021-12-22 2022-04-15 中科曙光(南京)计算技术有限公司 一种服务预约方法
CN114500255A (zh) * 2022-03-01 2022-05-13 北京百度网讯科技有限公司 一种日志数据上报方法、装置、设备及存储介质
CN114928608A (zh) * 2022-04-21 2022-08-19 北京达佳互联信息技术有限公司 一种多媒体资源的处理方法、装置、设备及存储介质
CN115103018A (zh) * 2022-06-16 2022-09-23 珠海格力电器股份有限公司 一种数据传输方法、装置、系统、电子设备和存储介质
CN115334155A (zh) * 2022-08-12 2022-11-11 中国建设银行股份有限公司 一种消息队列代理方法和装置

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109688235B (zh) * 2019-03-18 2019-07-05 北京金山云网络技术有限公司 虚拟网络业务处理方法、装置和系统,控制器,存储介质
CN110311803B (zh) * 2019-05-20 2022-08-26 平安科技(深圳)有限公司 软件定义网络的实现方法、装置、计算机设备及存储介质
CN111030868B (zh) * 2019-12-19 2023-12-05 紫光云(南京)数字技术有限公司 一种弹性公网ip下发设备失败的解决方法
CN111629054B (zh) * 2020-05-27 2022-06-03 北京金山云网络技术有限公司 消息处理方法、装置、系统、电子设备及可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102904746A (zh) * 2012-09-13 2013-01-30 曙光信息产业(北京)有限公司 基于消息机制的集群任务自调度系统与方法
CN103092670A (zh) * 2011-11-02 2013-05-08 佳都新太科技股份有限公司 一种云计算环境下跨平台的虚拟计算资源管理方法
CN105450668A (zh) * 2015-12-30 2016-03-30 中电长城网际系统应用有限公司 云安全服务实现系统和云安全服务实现方法
CN105634899A (zh) * 2014-10-29 2016-06-01 中兴通讯股份有限公司 虚拟网络业务的提供方法及系统
US20160182567A1 (en) * 2014-12-23 2016-06-23 Intel Corporation Techniques to Deliver Security and Network Policies to a Virtual Network Function
CN109688235A (zh) * 2019-03-18 2019-04-26 北京金山云网络技术有限公司 虚拟网络业务处理方法、装置和系统,控制器,存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104954220B (zh) * 2014-03-31 2018-01-16 华为技术有限公司 一种虚拟网络业务部署方法和设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103092670A (zh) * 2011-11-02 2013-05-08 佳都新太科技股份有限公司 一种云计算环境下跨平台的虚拟计算资源管理方法
CN102904746A (zh) * 2012-09-13 2013-01-30 曙光信息产业(北京)有限公司 基于消息机制的集群任务自调度系统与方法
CN105634899A (zh) * 2014-10-29 2016-06-01 中兴通讯股份有限公司 虚拟网络业务的提供方法及系统
US20160182567A1 (en) * 2014-12-23 2016-06-23 Intel Corporation Techniques to Deliver Security and Network Policies to a Virtual Network Function
CN105450668A (zh) * 2015-12-30 2016-03-30 中电长城网际系统应用有限公司 云安全服务实现系统和云安全服务实现方法
CN109688235A (zh) * 2019-03-18 2019-04-26 北京金山云网络技术有限公司 虚拟网络业务处理方法、装置和系统,控制器,存储介质

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112579148B (zh) * 2020-12-17 2024-04-19 广州虎牙科技有限公司 基于业务代理的业务消息处理方法、装置及电子设备
CN112579148A (zh) * 2020-12-17 2021-03-30 广州虎牙科技有限公司 基于业务代理的业务消息处理方法、装置及电子设备
CN112968976B (zh) * 2021-03-31 2024-02-06 北京奇艺世纪科技有限公司 外网访问控制系统、方法、装置、设备及存储介质
CN112968976A (zh) * 2021-03-31 2021-06-15 北京奇艺世纪科技有限公司 外网访问控制系统、方法、装置、设备及存储介质
CN113034111A (zh) * 2021-03-31 2021-06-25 北京金山云网络技术有限公司 一种数据导出、导入方法及装置
CN113452774A (zh) * 2021-06-25 2021-09-28 睿视(苏州)视频科技有限公司 消息推送方法、装置、设备及存储介质
CN113452774B (zh) * 2021-06-25 2022-07-12 睿视(苏州)视频科技有限公司 消息推送方法、装置、设备及存储介质
CN113660111A (zh) * 2021-07-21 2021-11-16 厦门亿联网络技术股份有限公司 一种4G Desk Phone外置协议栈的测试方法
CN114363264A (zh) * 2021-12-22 2022-04-15 中科曙光(南京)计算技术有限公司 一种服务预约方法
CN114363264B (zh) * 2021-12-22 2024-03-15 中科曙光(南京)计算技术有限公司 一种服务预约方法
CN114500255B (zh) * 2022-03-01 2024-03-15 北京百度网讯科技有限公司 一种日志数据上报方法、装置、设备及存储介质
CN114500255A (zh) * 2022-03-01 2022-05-13 北京百度网讯科技有限公司 一种日志数据上报方法、装置、设备及存储介质
CN114928608A (zh) * 2022-04-21 2022-08-19 北京达佳互联信息技术有限公司 一种多媒体资源的处理方法、装置、设备及存储介质
CN115103018A (zh) * 2022-06-16 2022-09-23 珠海格力电器股份有限公司 一种数据传输方法、装置、系统、电子设备和存储介质
CN115103018B (zh) * 2022-06-16 2024-04-05 珠海格力电器股份有限公司 一种数据传输方法、装置、系统、电子设备和存储介质
CN115334155A (zh) * 2022-08-12 2022-11-11 中国建设银行股份有限公司 一种消息队列代理方法和装置
CN115334155B (zh) * 2022-08-12 2024-04-19 中国建设银行股份有限公司 一种消息队列代理方法和装置

Also Published As

Publication number Publication date
CN109688235A (zh) 2019-04-26
CN109688235B (zh) 2019-07-05

Similar Documents

Publication Publication Date Title
WO2020186909A1 (zh) 虚拟网络业务处理方法、装置和系统,控制器,存储介质
US11677818B2 (en) Multi-cluster ingress
CN111460460B (zh) 任务访问方法、装置、代理服务器及机器可读存储介质
US20170289791A1 (en) Communication method and apparatus using network slice
CN110012437B (zh) 一种组播报文的发送方法、装置及系统
US9264369B2 (en) Technique for managing traffic at a router
US10129152B2 (en) Setting method, server device and service chain system
US10911560B2 (en) Partitioned serialized caching and delivery of large files
WO2014094468A1 (zh) 实现浏览器数据同步的系统、方法及浏览器客户端
CN111212134A (zh) 一种请求报文处理方法、装置、边缘计算系统和电子设备
CN111338806B (zh) 一种业务控制方法及装置
CN111585887B (zh) 基于多个网络的通信方法、装置、电子设备及存储介质
WO2019100266A1 (zh) 移动边缘主机服务通知方法和装置
WO2021109750A1 (zh) 节点管理方法、装置、设备、存储介质和系统
CN111327651A (zh) 资源下载方法、装置、边缘节点及存储介质
CN113810230A (zh) 对容器集群中的容器进行网络配置的方法、装置及系统
CN112118322A (zh) 一种网络设备的数据同步方法、网络设备及系统
US20220012110A1 (en) Networking-related system call interception and modification
CN114257545B (zh) 一种报文转发方法及装置
CN114911577A (zh) 网络隔离规则的设置方法、装置、设备及存储介质
JP2019041241A (ja) 振り分けシステム
US9860171B2 (en) Large scale message routing in a distributed network
CN113918504A (zh) 一种隔离组的实现方法及装置
WO2022111173A1 (zh) 网络切片接入方法、设备、系统及存储介质
CN113347040B (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: 20773339

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20773339

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205 DATED 02/02/2022)