Not Applicable
Cloud-based provisioning of network devices is a popular methodology employed in computer networks, particularly in software-defined wide-area networks (SDWANs). SDWANs are often provided, for example, to provide an infrastructure between a central office and a branch location of an enterprise.
SDWANs represent a specific application of software-defined networking (SDN) technology applied to wide-area network (WAN) connectivity. SDWANs may include at least one Branch Office Controller (BoC) located at a branch office in network communication with at least one master controller (MC) located at a central office. A first cloud provisioning redirector server referred to as a provisioning server can function to establish communication between the branch office and the central office, such as between an MC and a BoC. A network platform computing resource, such as a cloud platform server, can provide a configuration template and device address details specified for the branch office to the MC, which in turn, pushes this configuration information to the branch office.
For a detailed description of various examples, reference will now be made to the accompanying drawings, in which:
In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the examples disclosed herein. It will be apparent, however, to one skilled in the art that the disclosed example implementations may be practiced without these specific details. In other instances, structure and devices are shown in block diagram form in order to avoid obscuring the disclosed examples. Moreover, the language used in this disclosure has been principally selected for readability and instructional purposes and may not have been selected to delineate or circumscribe the inventive subject matter, resorting to the claims being necessary to determine such inventive subject matter. Reference in the specification to “one example” or to “an example” means that a particular feature, structure, or characteristic described in connection with the examples is included in at least one implementation.
The terms “computing system” and “computing resources” are generally taken to refer to at least one electronic computing device that includes, but is not limited to, a single computer, virtual machine, virtual container, host, server, laptop, and/or mobile device or to a plurality of electronic computing devices working together to perform the function described as being performed on or by the computing system. The term also may be used to refer to a number of such electronic computing devices in electronic communication with one another.
As used herein, the term “medium” refers to one or more non-transitory physical media that together store the contents described as being stored thereon. Examples may include non-volatile secondary storage, read-only memory (ROM), and/or random-access memory (RAM). Such media may be optical or magnetic.
As used herein, the terms “application” and “function” refer to one or more computing modules, programs, processes, workloads, threads and/or a set of computing instructions executed by a computing system. Example implementations of applications and functions include software modules, software objects, software instances and/or other types of executable code. Note, the use of the term “application instance” when used in the context of cloud computing refers to an instance within the cloud infrastructure for executing applications (e.g., for a customer in that customer's isolated instance).
As noted, cloud-based provisioning of network devices is a popular methodology employed in computer networks, particularly in software-defined wide-area networks (SDWANs). The term wide-area network (WAN) refers to the functional interconnection, i.e., network, of computers or computing resources across physically distant locations, as opposed to a local-area network (LAN), which is usually a network of computers or computing resources which are in closer physical proximity to one another. As noted, an SDWAN may be implemented to establish a computing infrastructure between a central office and one or more branch offices of an enterprise.
A WAN may be used, for example, to connect the computing resources, including LANs, of one or more branch offices of an enterprise to a central enterprise network, such as a central LAN, or to connect data centers separated by a distance.
The term “cloud,” as in “cloud computing” or “cloud resource,” refers to a paradigm that enables ubiquitous access to shared pools of configurable computational resources and higher-level services that, can be rapidly provisioned with minimal management effort; often, cloud resources are accessed via the Internet. An advantage of cloud computing and cloud resources is that a group of networked computing resources providing services need not be individually addressed or managed by users; instead, an entire provider-managed suite of hardware and software can be thought of as an amorphous “cloud.”
The term “provisioning,” as in the provisioning of network(ed) devices and computational resources, refers to the process of preparing and equipping a network to allow it to operatively couple devices to a network and provide new services to its users.
As noted, SDWANs may include at least one Branch Office Controller (BoC) in network communication with at least one master controller (MC). As its name suggests, a BoC may be associated with and located at a branch office of an enterprise. A branch office controller may also variously and interchangeably be referred to as a branch office router or gateway among other possible descriptors. An MC may be associated with and maintained at a central location of the enterprise. A master controller may be also variously and interchangeably referred to as a gateway or central gateway, a datacenter router, or a master gateway, among other possible descriptors. A first provisioning redirector resource, alternatively referred to as a “provisioning server” may function to establish communication between an MC and a BoC. A network platform computing resource, such as a cloud platform server, may provide a configuration template including network device details specified for the BoC to the MC, which in turn pushes this configuration information to the BoC.
A potential shortcoming of SDWAN methodologies described above is that the real-time physical connection and other configuration variables of network devices at a branch office, including BoCs and devices associated with and operatively coupled to BoCs, can for various reasons deviate from configuration template and device address information specified for the branch office and maintained by the cloud platform server, leading to a logical breakdown in communication between the branch office and the central office.
An approach to avoid such a problem involves collecting real-time network physical connection and connected device information for devices at a branch office and passing this information to the cloud platform server. By “real-time network physical connection and connected device information,” it is meant information that reflects such information as the type, vendor, and model information about network devices connected to the BoC or network switch being provisioned, including how they are operably connected in a network, as opposed to device information that is specified in a configuration template or otherwise only expected or intended to be accurate. This enables the cloud platform server to adjust the configuration template information to reflect real-time network physical connection and connected device information before promulgating this configuration information to the MC, to BoCs, or to other network devices such as switches, routers, access points, and so on.
Referring to
Each private cloud 102 and 104 is in network communication with the Internet 106. In the case of Customer 1 private cloud 102, there is shown a connection 108 to the Internet 106, and for Customer 2 private cloud 104, the connection with the Internet 106 is reflected by overlapping area 110 of Customer 2 private cloud 104 and the Internet 106.
Also shown in
Each private cloud 102, 104 has an associated network platform computing resource. In this example, the network platform computer resource comprises a cloud platform (e.g., a cloud server) including the computational resources (hardware and software) which facilitate implementation of the respective SDWANs. A current commercial example of a cloud platform is embodied in the products and services offered by Aruba, a Hewlett Packard Enterprise Company, Palo Alto, Calif. (www.arubanetworks.com).
For Customer 1 private cloud 102, a cloud platform 114 is maintained by Customer 1 within private cloud 102. For Customer 2 private cloud 104, a cloud platform 116 is maintained in a cloud, i.e., not necessarily or entirely within Customer 2 private cloud 104, but being accessible to Customer 2 private cloud 104 either via a direct link, as represented by connection 118 in
Customer 1 private cloud 102 and Customer 2 private cloud 104 each include a master controller (MC). In
With continued reference to
At branch 112, the connection 124 to the Internet 106 may be established through a branch office controller (BoC) 126, whose operation will be hereinafter described in further detail. BoC 126, in turn, serves as a gateway to other associated network devices at the branch 112, including in the example of
As is customary, each switch 128 and 130, as one type of network device, functions to couple at least one—and often more than one—other network device to BoC 126. In
It is to be noted that all of the devices associated with branch 112, including BoC 126, switches 128 and 130, WAPs 132, 140, 142, and so on, each have their own configuration information. An individual device's configuration information includes such items as its network (e.g., IP) address, the identification of specific communications ports to which it connects to other devices, driver and communication protocol information, and so on.
As will be understood, each switch 128, 130 may serve to associate a plurality (e.g., 16, 48, 96 or more) of other individual network devices with BoC 126, allowing network communication with the associated network devices over the SDWAN infrastructure 100. Many different types of network devices, in addition to the photocopier 134, computer 136, printer 138, and WAPs 132, 140 and 142 shown in
A further component of the SDWAN infrastructure 100 of
Having obtained the IP settings, BoC 126 establishes a websocket session with provisioning server 146, as represented by block 204 in
Based on the serial number and/or MAC address of BoC 126, in block 206 of
In block 210 of
Turning to
After BoC 126 is provisioned as described with reference to
In SDWAN infrastructures operated as described with reference to
Turning now to
In block 306 of the method 300), real-time network physical connection information and connected device information is communicated to cloud server to cloud platform 114. Such communication may occur, for example, by being relayed through BoC 126 and/or provisioning server 146, or may occur more directly, depending on the implementation.
In block 308 of the method 300, cloud platform 114 aggregates SDWAN template information and the real-time network physical connection and connected device information to generate updated SDWAN provisioning information.
In block 310, the updated SDWAN provisioning information is pushed back to network switch 128, and in block 312, Network switch 128 implements the updated SDWAN provisioning information.
The method described with reference to
Thus, for example, if a branch office network administrator responsible for wiring and connecting network devices at a branch location either intentionally or unintentionally deviates from the configuration details pre-specified by or to cloud platform 114, such as by connecting devices to a port of a network switch other than the ones specified in advance and thus reflected in the predetermined data maintained in cloud platform 114, this discrepancy can be resolved through the providing of real-time network physical connection and connected device information to the cloud platform.
Another advantage afforded by a methodology such as the example of
Having made device adjustments or modifications, the network administrator at branch 112 can, in accordance with the methodology set forth with reference to
Prior to, concurrently with, or subsequent to sending a provisioning request or alarm (as at block 404), the updated or latest real-time network physical connection and connected device information regarding connected network devices can be collected and sent to cloud platform 114, as shown in block 406.
In block 408, cloud platform 114 generates new SDWAN device provisioning information by aggregating the updated real-time network physical connection and connected device information with any stored predetermined device information and templates.
In block 410, the new SDWAN device provisioning information is pushed back to network switch 128, and in block 412, Network switch 128 implements the new SDWAN device provisioning information, such as by resetting, rebooting, or otherwise.
An advantage afforded by a methodology such as the examples of
Thus, for example, predetermined device and variable device information stored on cloud platform 114 can be aggregated with real-time network physical connection and connected device information so that SDWAN provisioning may reflect and identify the hardware (e.g., network device MAC addresses, serial numbers, and the like) that has been allocated to a branch such as branch 112. When cloud platform 114 undertakes to aggregate the SDWAN device provisioning information (step 308 in
Another advantage is that in connection with the aggregation function performed by cloud platform 114 (e.g., block 308 in
In the example of
In block 504, the instructions enable and cause computing resource 500 to store SDWAN template information.
In block 506, the instructions enable and cause computing resource 500 to receive real-time network physical connection and connected device information from a device in an SDWAN. Such information may come from a BoC, a networking switch, gateway, router or other network device.
In block 508, the instructions enable and cause computing resource 500 to aggregate the real-time SDWAN physical connection and connected device information with SDWAN template information to generate SDWAN provisioning information.
In block 510, the instructions enable and cause computing resource 500 to communicate the SDWAN provisioning information generated in block 508 to one or more devices in the SDWAN, for example, a BoC, gateway, switch, router, or other device in the SDWAN.
Certain terms have been used throughout this description and claims to refer to particular system components. As one skilled in the art will appreciate, different parties may refer to a component by different names. This document does not intend to distinguish between components that differ in name but not function. In this disclosure and claims, the terms “including” and “comprising” are used in an open-ended fashion, and thus should be interpreted to mean “including, but not limited to.” Also, the term “couple” or “couples” is intended to mean either an indirect or direct wired or wireless connection. Thus, if a first device couples to a second device, that connection may be through a direct connection or through an indirect connection via other devices and connections. The recitation “based on” is intended to mean “based at least in part on.” Therefore, if X is based on Y, X may be a function of Y and any number of other factors.
The above discussion is meant to be illustrative of the principles and various implementations of the present disclosure. Numerous variations and modifications will become apparent to those skilled in the art once the above disclosure is fully appreciated. It is intended that the following claims be interpreted to embrace all such variations and modifications.