AUTOMATIC NETWORK DEVICE CONFIGURATION
Patent Information
- Application Number
- DE102024101151
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2023-06-16
- Filing Date
- 2024-01-16
- Publication Date
- 2025-08-14
- Estimated Expiration
- 2044-01-16
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
BACKGROUND
[0001] Overlay networks enable the creation of a virtual network running on top of a physical network. This allows for the abstraction of underlying network devices and provides flexibility, scalability, and isolation within a network. Overlay networks create a virtual network using software-defined networking techniques. Network packets can traverse the physical network while appearing to belong to a virtual network.
[0002] In a private cloud environment, overlay networks can be used to enable network virtualization and provide network connectivity between cloud components (e.g., virtual machines, containers, etc.). For example, cloud components can be assigned to a specific virtual network so they can communicate with each other, even if they are distributed across different physical host servers or data centers. Virtual networks can be logically segmented and isolated from each other and from the underlying physical network. Virtual networks can be created, modified, or removed as needed within the private cloud environment.
[0003] US 2020 / 0278892 A1 discloses outsourcing virtualized network functions to a remote network interface card (NIC). WO 2018 / 100437 A1 relates to a control and management component that detects newly added network devices to a physical network and performs a validation of network connections to these devices. BRIEF DESCRIPTION OF THE DRAWINGS
[0004] Aspects of the present disclosure are best understood from the following detailed description when read in conjunction with the accompanying figures. Fig. 1 is a block diagram of a private cloud environment according to some implementations. Fig. Figure 2 is a block diagram of a physical network according to some implementations. Fig. 3 is a diagram of a method for provisioning network devices according to some implementations. Fig. Figure 4 is a block diagram of a physical network as used in some other implementations. Fig. 5 is a diagram of a method for orchestrating network devices according to some implementations.
[0005] Corresponding numbers and symbols in the various figures generally refer to corresponding parts unless otherwise noted. The figures are intended to illustrate the relevant aspects of the disclosure and are not necessarily drawn to scale. DETAILED DESCRIPTION
[0006] The following disclosure provides many different examples of implementing various features. To simplify this disclosure, specific examples of components and arrangements are described below. These are, of course, only examples and are not intended to be limiting.
[0007] One component of cloud orchestration is virtual network orchestration using overlay networks. During virtual network orchestration, the underlying physical network is configured before a virtual network is created. For example, network device configurations can be pushed to the network devices of a physical network in preparation for the creation of a virtual network.
[0008] A network device, such as a switch, can be assigned a persona based on the network device's role in the physical network. For example, in a data center (DC) network topology with a spine-leaf architecture, a switch can be an upper-tier switch (e.g., a spine switch) or a lower-tier switch (e.g., a leaf switch). Similarly, in a campus network topology with a layered architecture, a switch can be an upper-tier switch (e.g., a core switch or an aggregator switch) or a lower-tier switch (e.g., an access switch). Network device configurations are propagated to the network devices based on the personas assigned to the network devices. To support cloud orchestration, a persona can be automatically recommended for assignment to a network device. A network administrator can then approve or reject the recommended persona.Automating the recommendation and assignment of a persona to a network device can increase network management efficiency, provided the recommendations are fast and accurate.
[0009] In a sample implementation, personas for network devices on a physical network are recommended based on the number of network connections for each of the network devices. A network connection is a physical connection between network devices that can be discovered using the Link Layer Discovery Protocol (LLDP). Each network device is divided into shells based on the number of its links to neighboring network devices.
[0010] In particular, a bucketing factor can be calculated through statistical analysis. The bucketing factor corresponds to the sum of a mean and a confidence interval value for the number of network connections for the network devices. The network devices can then be grouped by comparing their number of network connections with the grouping factor.
[0011] The network devices in a lower-tier group can each have a number of network connections less than the bucketing factor, while the network devices in an upper-tier group can each have a number of network connections greater than or equal to the bucketing factor. A lower-tier persona is then recommended for the network devices in the lower-tier group, while an upper-tier persona is recommended for the network devices in the upper-tier group. For example, a "Spine Switch" persona may be recommended for the network devices in the upper-tier group, while a "Leaf Switch" persona is recommended for the network devices in the lower-tier group. The recommendation can be presented to the network administrator.
[0012] If the network administrator approves the recommendation, a lower-tier network device configuration (corresponding to the lower-tier persona) can be applied to the network devices in the lower-tier group, while an upper-tier network device configuration (corresponding to the upper-tier persona) can be applied to the network devices in the upper-tier group. Continuing the previous example, a spine switch configuration can be applied to the network devices in the upper-tier group, while a leaf switch configuration can be applied to the network devices in the lower-tier group. Bucketing network devices based on a statistical analysis of the number of network connections for each of the network devices can be faster than other bucketing techniques (e.g.,Network topology detection) while maintaining a desired level of accuracy. Furthermore, bucketing network devices based on a statistical analysis of the number of network connections can be more scalable than other bucketing techniques (e.g., using a predefined bucketing factor) and can better adapt to networks with network devices with varying numbers of network connections. This can increase the efficiency of network management and organization.
[0013] Fig. Figure 1 is a block diagram of a private cloud environment 100 according to some implementations. The private cloud environment 100 is a system that includes a physical network 102. The private cloud environment 100 can be orchestrated using overlay networks to run a virtual network 110 on top of the physical network 102.
[0014] The physical network 102 includes multiple network devices 104. The network devices 104 may be controllers, access points, switches, routers, or the like. Furthermore, the physical network 102 includes host servers 106. The host servers 106 may be bare-metal machines suitable for hosting cloud components 114 (e.g., virtual machines, containers, etc.). The network devices 104 form a transport network that provides connectivity and routing between the host servers 106. At least some of the network devices 104 and the host servers 106 may be located on-site in an on-premises data center, but the physical network 102 may span multiple locations. The physical network 102 may be a Layer 2 network.
[0015] The virtual network 110 is set up in the physical network 102 using an encapsulation protocol. An encapsulation protocol encapsulates network traffic in a virtual tunnel 112, which is transmitted via the network devices 104. Examples of encapsulation protocols are Virtual Extensible LAN (VXLAN), Generic Routing Encapsulation (GRE), and the like. Encapsulation allows the virtual network 110 to operate as if it were running on its own physical infrastructure, although the traffic is actually transported over the physical network 102. The virtual network 110 can be used in a virtualized environment. In particular, the cloud components 114 hosted by the host servers 106 can be connected via a virtual tunnel 112. The virtual network 110 can be a Layer 3 network.
[0016] A management service 120 is suitable for managing the private cloud environment 100. In particular, the management service 120 can be used to create or modify the virtual network 110, e.g., by creating or modifying a virtual tunnel 112. Furthermore, the management service 120 is used to configure the network devices 104 of the physical network 102, e.g., by applying network device configurations to the network devices 104 in preparation for creating the virtual network 110. The network devices 104 can be assigned personas that represent the roles of the network devices 104 in the physical network 102. Network device configurations are transmitted to the network devices 104 based on the personas assigned to them, which can enable automation of the private cloud environment 100.As described in more detail below, personas are automatically recommended for assignment to the network devices 104 by the management service 120. Automating the recommendation and assignment of personas to the network devices 104 can increase the efficiency of network management and the efficiency of the private cloud environment 100. The personas for the network devices 104 are recommended based on the number of network connections for each of the network devices 104.
[0017] The management service 120 may include any suitable components. Suitable components include, for example, a processor, an application-specific integrated circuit, a microcontroller, memory, and the like. The management service 120 may be a physical device, such as a computer. The management service 120 may include, for example, a processor 124 and a memory 126. The memory 126 may be a non-transferable, computer-readable medium storing programming for execution by the processor 124. One or more modules within the management service 120 may be embodied, in whole or in part, in software and / or hardware to perform the functions described herein. They may, for example, be embodied as software deployed on a physical device using a suitable containerization technique.
[0018] The management service 120 may be an on-premises service or a cloud service. If the management service 120 is an on-premises service, it may be part of the physical network 102, e.g., in an on-premises data center. If the management service 120 is a cloud service, it may be part of a different physical network than the physical network 102. In either case, the management service 120 is capable of communicating with the network devices 104.
[0019] The management service 120 receives commands from a management interface 128 and outputs output via the management interface 128. The management interface 128 may be a command-line interface, a graphical user interface, a web interface, or the like. The management service 120 processes the commands from the management interface 128, validates the commands, and executes the logic specified by the commands. The management service 120 also outputs the results of the commands via the management interface 128.
[0020] Fig. Figure 2 is a block diagram of a physical network 102 according to some embodiments. Some features of the physical network 102 are not shown for clarity. In particular, only some of the network devices 104 of the physical network 102 (e.g., switches) are shown. In this implementation, the physical network 102 has a data center (DC) network topology with a spine-leaf architecture, where the network devices 104 include leaf switches 104L and spine switches 104S.
[0021] The leaf switches 104L are lower-layer switches located closer to the edge of the physical network 102 than the spine switches 104S. The leaf switches 104L contain access ports that connect to servers, firewalls, load balancers, and edge routers within the physical network 102. For example, the host servers 106 (see Fig. 1) connected to the leaf switches 104L. Each leaf switch 104L has network connections to the spine switches 104S. Some of the leaf switches 104L at a border 108 of the physical network 102 are border leaf switches. Border leaf switches provide external Layer 2 or Layer 3 connectivity to external networks outside the physical network 102. Border leaf switches can handle routing to external routers of the external networks. Although in Fig. 2, a leaf switch 104L may be connected to another leaf switch 104L, e.g., with a virtual switching extension (VSX) connection, to form pairs of leaf switches 104L.
[0022] The spine switches 104S are upper-layer switches located farther from the edge of the physical network 102 than the leaf switches 104L. The spine switches 104S interconnect the leaf switches 104L, forming a spine-leaf fabric. Thus, the spine switches 104S act as the backbone of the physical network 102. Each spine switch 104S has a network connection to each of the leaf switches 104L.
[0023] The leaf switches 104L may be the same hardware as the spine switches 104S, but the leaf switches 104L may be programmed differently than the spine switches 104S. Because they have different roles in the physical network 102, the leaf switches 104L and the spine switches 104S are programmed with different network device configurations. Specifically, the leaf switches 104L are each programmed with a lower-layer network device configuration that allows them to function as lower-layer switches. Additionally, the spine switches 104S are each programmed with an upper-layer network device configuration that allows them to function as upper-layer switches. A network device configuration includes hardware settings that determine how a network device 104 should operate.For example, a network device configuration for a switch might include port settings, Link Aggregation Group (LAG) settings, Open Shortest Path First (OSPF) settings, and so on. The network device configuration for the 104L Leaf switches differs from the network device configuration for the 104S Spine switches in that the network device configuration for the 104L Leaf switches includes different hardware settings (e.g., port settings, LAG settings, and / or OSPF settings) than the network device configuration for the 104S Spine switches.
[0024] During network management, a persona is automatically recommended for a network device 104 based on a predicted role of the network device 104. For example, when a network administrator provisions a switch (via the management service 120), the management service 120 predicts the role of the switch in the physical network 102 and, based on this prediction, automatically recommends a persona to assign to the switch. In this example, the management service 120 predicts whether a provisioned switch will function as a leaf switch 104L or a spine switch 104S and then recommends a leaf switch persona or a spine switch persona to the network administrator based on this prediction. After the network administrator approves the persona recommendation, the management service 120 transmits an appropriate network device configuration (e.g.,A persona (e.g., a leaf switch configuration or a spine switch configuration) is assigned to the switch based on the persona. Accordingly, the switch can begin operating in its desired role (e.g., as a 104L leaf switch or a 104S spine switch).
[0025] Fig. 3 is a diagram of a method for provisioning network devices 300 according to some implementations. The method for provisioning network devices 300 is used in conjunction with the Fig. 1-2. The method 300 for provisioning network devices may be performed by the management service 120 during the provisioning of a network device 104, e.g., a switch.
[0026] In step 302, the management service 120 determines a number of network connections for each network device 104 of the network devices 104 of a physical network 102. Only those network devices 104 that have the same device type as the deployed network device 104 (e.g., switches) can be evaluated. The deployed network device 104 may (or need not) be one of the evaluated network devices 104. A network connection of a network device 104 is a connection between this network device 104 and another network device 104. The number of network connections for each network device 104 can be determined using a suitable network discovery protocol, such as the Link Layer Discovery Protocol (LLDP). For example, the management service 120 can query each network device 104 using LLDP to determine how many network connections each network device 104 has to other network devices 104. In the example of Fig. 2 (e.g., when the leaf switches 104L are not connected in pairs), there are two spine switches 104S and ten leaf switches 104L. Each leaf switch 104L has two network connections (e.g., to each of the spine switches 104S). Each spine switch 104S has ten network connections (e.g., to each of the leaf switches 104L). Thus, the physical network 102 comprises two network devices 104 with ten network connections and ten network devices 104 with two network connections.
[0027] In step 304, the management service 120 calculates a bucket factor f B through a statistical analysis of the number of network connections for the network devices 104. A dynamic, greedy, scalable algorithm is used to calculate the bucketing factor f B . The bucketing factor f Bis calculated by calculating a confidence interval for the number of network connections for the network devices 104 using equations (1), (2), and (3). In particular, the bucketing factor f B equal to the sum of the mean x and a confidence interval value s x for the number of network connections for the network devices 104. The mean x of the network connections is the total number of network connections divided by the total number of network devices 104. The confidence interval value s x is the standard deviation of the number of network connections divided by the square root of the total number of network devices 104. The calculation of the bucketing factor f B dynamically (e.g., at runtime) based on the number of network connections for the network devices 104 may be more accurate than using a hard-coded bucketing factor. fB=x¯+sx¯ sx¯=sN s=1N−1∑i=1N(xi−x¯)2
[0028] In equations (1), (2) and (3), x is the mean of the network connections, s x is the value of the confidence interval, s is the standard deviation (calculated as sample standard deviation) of the number of network connections, N is the total number of evaluated network devices 104, and x i the number of network connections for a network device is i. In this implementation, the confidence interval value s x on a confidence interval of 68.3%.
[0029] Continuing the example of Fig. 2 (where the physical network 102 comprises two network devices 104 with ten network connections and ten network devices 104 with two network connections), the mean x is 40 / 12 or about 3.333, and the value of the confidence interval s x is 3.114 / 12 or about 0.899. Accordingly, the bucketing factor f Bis 3.333 + 0.899 or about 4.232.
[0030] In step 306, the management service 120 recommends a persona for the deployed network device 104 based on the bucketing factor. The persona is recommended by predicting the role of the deployed network device 104 in the physical network 102. The role of the deployed network device 104 is predicted by comparing the number of network connections for the deployed network device 104 with the bucketing factor. If the number of network connections for the deployed network device 104 is less than the bucketing factor, then the role of the deployed network device 104 is predicted as a lower-layer switch. In the example of Fig. 2, the leaf switches 104L are lower-tier switches. However, if the number of network connections for the deployed network device 104 is greater than or equal to the bucketing factor, then the role of the deployed network device 104 as an upper-tier switch is predicted. In the example of Fig. 2, the spine switches 104S are upper-tier switches. The recommended persona is then selected based on the predicted role of the deployed network device 104. For example, if the deployed network device 104 is predicted to be a leaf switch 104L, a leaf switch persona is recommended. Similarly, if the deployed network device 104 is predicted to be a spine switch 104S, a spine switch persona is recommended. The recommended persona can be displayed to a network administrator, e.g., via the management interface 128.
[0031] Continuing the previous example where the bucketing factor is 4.232, if the deployed network device 104 has two network connections, the deployed network device 104 is predicted to be a leaf switch 104L (since two is less than 4.232). Thus, a recommendation for a leaf switch persona for the deployed network device 104 can be displayed to the network administrator via the management interface 128. However, if the deployed network device 104 has ten network connections, the deployed network device 104 is predicted to be a spine switch 104S (since ten is greater than or equal to 4.232). Therefore, a recommendation for a spine switch persona for the deployed network device 104 can be displayed to the network administrator via the management interface 128.
[0032] In step 308, the management service 120 assigns the recommended persona to the deployed network device 104 after the network administrator has approved the recommendation. An input command may be received from the network administrator via the management interface 128. The input command may include an approval or rejection of the persona recommendation. In response to the input command containing approval, the recommended persona is assigned to the deployed network device 104, for example, by recording the assignment in the memory of the management service 120.
[0033] In step 310, the management service 120 applies a network device configuration to the provisioned network device 104 based on the persona assigned to the provisioned network device 104. For example, if the provisioned network device 104 has been assigned a spine switch persona, a spine switch configuration is applied to the provisioned network device 104. If the provisioned network device 104 has been assigned a leaf switch persona, a leaf switch configuration is applied to the provisioned network device 104. The management service 120 may apply the network device configuration to the provisioned network device 104 by pushing the network device configuration to the provisioned network device 104.If the network device configuration includes hardware settings, transferring the network device configuration to the deployed network device 104 includes programming the deployed network device 104 with the hardware settings of the network device configuration.
[0034] In step 312, the management service 120 creates a virtual network 110 on the physical network 102. The virtual network 110 may include a virtual tunnel 112 that transports encapsulated traffic transmitted across network devices 104, including the deployed network device 104. Creating the virtual network 110 may include configuring traffic encapsulation for the virtual network 110. This allows the cloud components 114 to communicate across the deployed network device 104.
[0035] Fig. Figure 4 is a block diagram of a physical network 102 as used in some other implementations. Some features of the physical network 102 are omitted for clarity. In particular, only some of the network devices 104 of the physical network 102 (e.g., switches), as well as external WAN / WLAN switches 104W, are shown. In this implementation, the physical network 102 has a campus network topology with a multi-tiered architecture, where the network devices 104 include access switches 104A, aggregator switches 104G, and core switches 104C.
[0036] The access switches 104A are lower-layer switches located closer to the edge of the physical network 102 than the aggregator switches 104G and the core switches 104C. The access switches 104A contain access ports that connect to servers, firewalls, load balancers, and edge routers within the physical network 102. For example, the host servers 106 (see Fig. 1) connected to the access switches 104A. Each access switch 104A has network connections to the aggregator switches 104G.
[0037] The aggregator switches 104G and the core switches 104C are upper-layer switches that are farther from the edge of the physical network 102 than the access switches 104A. The aggregator switches 104G and the core switches 104C interconnect the access switches 104A, forming a multi-layered network. Thus, the aggregator switches 104G and the core switches 104C act as the backbone of the physical network 102. The core switches 104C are located at a boundary 108 of the physical network 102 and provide external Layer 2 or Layer 3 connectivity to external networks outside the physical network 102. The core switches 104C can provide routing to external routers of the external networks, such as routers. B. WAN / WLAN switches 104W. Each aggregator switch 104G has a network connection to each of the access switches 104A. Furthermore, the core switches 104C are farther from the edge of the physical network 102 than the aggregator switches 104G.Each core switch 104C has a network connection to each of the aggregator switches 104G. In the multi-tiered structure, the access switches 104A are lower-tier switches, the aggregator switches 104G are middle-tier switches, and the core switches 104C are upper-tier switches.
[0038] The access switches 104A may be the same hardware as the aggregator switches 104G and the core switches 104C, but the access switches 104A may be programmed differently than the aggregator switches 104G and the core switches 104C. Furthermore, the aggregator switches 104G may be programmed differently than the core switches 104C. Because they serve different roles in the physical network 102, the access switches 104A, the aggregator switches 104G, and / or the core switches 104C are programmed with different network device configurations. In particular, the access switches 104A are each programmed with a lower-layer network device configuration that allows them to act as lower-layer switches.In addition, the aggregator switches 104G and / or the core switches 104C are each programmed with one or more upper-layer network device configurations that enable them to operate as upper-layer switches. The network device configuration for the access switches 104A differs from the network device configuration(s) for the aggregator switches 104G and / or the core switches 104C in that the network device configuration for the access switches 104A includes different hardware settings (e.g., port settings, LAG settings, and / or OSPF settings) than the network device configuration(s) for the aggregator switches 104G and / or the core switches 104C.In some implementations, the access switches 104A are programmed with a lower layer device configuration, the aggregator switches 104G are programmed with a middle layer device configuration, and the core switches 104C are programmed with an upper layer device configuration.
[0039] A network device 104 may be provisioned for a physical network 102 having a multi-tiered architecture using the device provisioning method 300 (described in Fig. 3). For example, when a network administrator provisions a switch (via management service 120), management service 120 predicts the role of the switch in the physical network 102 and, based on that prediction, automatically recommends a persona to assign to the switch. In this example, management service 120 predicts whether a provisioned switch will function as an access switch 104A, an aggregator switch 104G, or a core switch 104C, and then recommends an access switch persona or an aggregator / core switch persona to the network administrator based on that prediction. Device provisioning method 300 cannot distinguish between an aggregator switch 104G and a core switch 104C during bucketization of the provisioned network device 104. Additionally, the device provisioning method 300 may not distinguish between an access switch 104A and a WAN / WLAN switch 104W.
[0040] In the example of Fig. 4, there are four access switches 104A, two aggregator switches 104G, two core switches 104C, and four WAN / WLAN switches 104W. Each access switch 104A has two network connections (e.g., to each of the aggregator switches 104G). Each aggregator switch 104G has six network connections (e.g., to each of the access switches 104A and the core switches 104C). Each core switch 104C has six network connections (e.g., to each of the aggregator switches 104G and the WAN / WLAN switches 104W). Each WAN / WLAN switch 104W has two network connections (e.g., to each of the core switches 104C). Thus, the physical network 102 comprises four network devices 104 with six network connections and eight network devices 104 with two network connections. In this example, the mean of the network connections is 40 / 12 or 3.333, and the confidence interval value is 1.9712 or about 0.569. Accordingly, the bucketing factor f B is 3.333 + 0.569, or approximately 3.902. If the provisioned network device 104 has two network connections, the provisioned network device 104 is predicted to be an Access Switch 104A (since two is less than 3.902). Therefore, a recommendation for an Access Switch persona for the provisioned network device 104 may be displayed to the network administrator via the management interface 128. However, if the provisioned network device 104 has six network connections, the provisioned network device 104 is predicted to be an Aggregator Switch 104G / Core Switch 104C (since six is greater than or equal to 3.902). Therefore, a recommendation for an Aggregator / Core Switch persona for the provisioned network device 104 may be displayed to the network administrator via the management interface 128.
[0041] In this example, the device provisioning method 300 does not distinguish between an aggregator switch 104G and a core switch 104C during bucketing of the network device 104. Therefore, if the provisioned network device 104 is predicted to be a lower-tier switch (e.g., an access switch 104A), an access switch persona is recommended. However, if the provisioned network device 104 is predicted to be an upper-tier switch (e.g., an aggregator switch 104G or a core switch 104C), then either an aggregator switch persona or a core switch persona may be recommended. To determine whether the upper-tier switch is an aggregator switch 104G or a core switch 104C, any suitable tiering technique may be performed. For example, similar steps to those previously described for Fig. 3 to evaluate only the upper-layer switches of the physical network 102. In particular, a tiering factor for the upper-layer switches of the physical network 102 may be calculated based on a statistical analysis of the number of network connections for the upper-layer switches, in a similar manner to how the bucketing factor was calculated. The number of network connections of the deployed network device 104 may then be compared to the tiering factor to predict whether the deployed network device 104 is an aggregator switch 104G or a core switch 104C.
[0042] Fig. 5 is a diagram of a network device organization method 500 according to some implementations. The network device orchestration method 500 is used in conjunction with the Fig.1-4. The method 500 for orchestrating network devices may be performed by the management service 120 during the orchestration of multiple network devices 104, e.g., switches.
[0043] In step 502, the management service 120 identifies a number of network connections for each of a plurality of network devices 104 of a physical network 102. The number of network connections may be determined in a manner similar to that previously described for step 302 of the method for provisioning network devices 300.
[0044] In step 504, the management service 120 calculates a bucketing factor for the network devices 104. The bucketing factor corresponds to the sum of a mean and a confidence interval value for the number of network connections for the network devices 104. The bucketing factor may be calculated in a manner similar to that previously described for step 304 of the network device provisioning method 300.
[0045] In step 506, the management service 120 groups the network devices 104 into either a lower-tier group or an upper-tier group based on the bucketing factor. The number of network connections for the network devices 104 in the lower-tier group is less than the bucketing factor. The number of network connections for the network devices 104 in the upper-tier group is greater than or equal to the bucketing factor. The classification of the network devices 104 into groups serves to predict the role of the network devices 104, with a lower-tier role (e.g., leaf switches or access switches) being predicted for the network devices 104 in the lower-tier group and an upper-tier role (e.g., spine switches or aggregator / core switches) being predicted for the network devices 104 in the upper-tier group.
[0046] A lower-tier persona is then recommended for the network devices 104 in the lower-tier group, while an upper-tier persona is recommended for the network devices 104 in the upper-tier group. For example, in a data center network topology, a "Spine Switch" persona may be recommended for the network devices in the upper-tier group, while a "Leaf Switch" persona may be recommended for the network devices in the lower-tier group. Similarly, in a campus network topology, an Aggregator / Core Switch persona may be recommended for the network devices in the upper-tier group, while an Access Switch persona may be recommended for the network devices in the lower-tier group. The recommendations are displayed, for example, for a network administrator.
[0047] In step 508, the management service 120 applies a lower-tier network device configuration and an upper-tier network device configuration to the network devices 104 in the lower-tier group and the upper-tier group, respectively. For example, in a data center network topology, a leaf switch configuration may be applied to the network devices 104 in the lower-tier group, while a spine switch configuration may be applied to the network devices 104 in the upper-tier group. Similarly, in a campus network topology, an access switch configuration may be applied to the network devices 104 in the lower-tier group, while an aggregator / core switch configuration may be applied to the network devices 104 in the upper-tier group. The assignment of the network device configurations may occur in response to the network manager's approval of the persona recommendations.Additional steps may optionally be performed. For example, after applying the configuration of the lower-layer network devices and the configuration of the upper-layer network devices, the management service 120 may create a virtual network 110 on the physical network 102.
[0048] In an example implementation consistent with the features disclosed herein, a system includes: a plurality of network devices; and a management service implemented on a computer and configured to: identify a number of network connections for each of the network devices; calculate a bucketing factor for the network devices, wherein the bucketing factor corresponds to a sum of a mean and a confidence interval value for the number of network connections for the network devices; recommend a persona for a provisioned network device based on the bucketing factor; assign the persona to the provisioned network device; and apply a network device configuration to the provisioned network device based on the persona assigned to the provisioned network device.
[0049] In another example implementation of the system, the management service is configured to recommend the persona for the deployed network device by predicting a role of the deployed network device. In another example implementation of the system, the management service is configured to predict the role of the deployed network device by comparing a number of network connections for the deployed network device with the bucketing factor, where the role is an upper-tier switch if the number of network connections for the deployed network device is greater than or equal to the bucketing factor, and the role is a lower-tier switch if the number of network connections for the deployed network device is less than the bucketing factor.
[0050] In another example implementation of the system, the network devices are part of a physical network, and the management service is further configured to: create a virtual network on the physical network. In another example implementation of the system, the physical network has a spine-leaf architecture. In another example implementation of the system, the physical network has a layered architecture. In another example implementation of the system, the management service and the network devices are part of the same physical network.
[0051] In another example implementation of the system, the management service and the network devices are part of different physical networks. In another example implementation of the system, the management service is configured to determine the number of network connections for each of the network devices using the Link Layer Discovery Protocol.
[0052] In an example implementation consistent with the features disclosed herein, a computer-implemented method comprises: identifying a number of network connections for each of a plurality of network devices of a physical network; calculating a bucketing factor for the network devices, wherein the bucketing factor is equal to a sum of a mean and a confidence interval value for the number of network connections for the network devices; grouping the network devices into a lower-tier group or an upper-tier group based on the bucketing factor, wherein the number of network connections for the network devices in the lower-tier group is less than the bucketing factor and the number of network connections for the network devices in the upper-tier group is greater than or equal to the bucketing factor;and applying a lower-layer network device configuration and an upper-layer network device configuration to the network devices in the lower-layer group and the upper-layer group, respectively;
[0053] In another example implementation, the method further comprises: after applying the configuration of the lower-layer network devices and the configuration of the upper-layer network devices, creating a virtual network in the physical network. In another example implementation of the method, the configuration of the lower-layer network device is a leaf switch configuration and the configuration of the upper-layer network device is a spine switch configuration. In another example implementation of the method, the configuration of the lower-layer network device is an access switch configuration and the configuration of the upper-layer network device is an aggregator / core switch configuration.
[0054] In another example implementation, the method further comprises: recommending a lower-layer persona and an upper-layer persona for the network devices in the lower-layer group and the upper-layer group, respectively; and receiving an agreement with the lower-layer persona and the upper-layer persona, wherein the lower-layer network device configuration and the upper-layer network device configuration are applied in response to receiving the agreement with the lower-layer persona and the upper-layer persona.
[0055] In another example implementation of the method, identifying the number of network connections includes determining the number of network connections for each of the network devices using a network discovery protocol. In another example implementation of the method, the network discovery protocol is the Link Layer Discovery Protocol.
[0056] In an example implementation consistent with the features disclosed herein, a non-transitory computer-readable medium stores instructions that, when executed by a processor, cause the processor to: identify a number of network connections for each of a plurality of network devices of a physical network; calculate a bucketing factor for the network devices, the bucketing factor equal to a sum of a mean and a confidence interval value for the number of network connections for the network devices; recommend a persona for a provisioned network device by comparing a number of network connections for the provisioned network device to the bucketing factor; assign the persona to the provisioned network device;Applying a network device configuration to the deployed network device based on the persona assigned to the deployed network device; and creating a virtual network on the physical network.
[0057] In another example implementation of the non-transitory computer-readable medium, the instructions for applying the network device configuration to the deployed network device are executed in response to a network administrator's approval of the recommended persona. In another example implementation of the non-transitory computer-readable medium, the number of network connections for each of the network devices is identified via the Link Layer Discovery Protocol. In another example implementation of the non-transitory computer-readable medium, the virtual network transports encapsulated network traffic over the physical network.
[0058] The foregoing outlines features of several examples to enable those skilled in the art to better understand aspects of the present disclosure. Various modifications and combinations of the illustrative examples, as well as other examples, will be apparent to those skilled in the art from the description. Therefore, the appended claims are intended to encompass all such modifications.
Claims
[1] System (100), comprising: a variety of network devices (104); and a management service (120) implemented on a computer configured to: determine a number of network connections for each of the network devices (104); a bucketing factor (f B ) for the network devices (104), where the bucketing factor (f B ) corresponds to a sum of a mean value and a confidence interval value for the number of network connections for the network devices (104); a persona for a deployed network device (104) based on the bucketing factor (f B ) recommend; Assigning the persona to the provided network device (104); and Applying a network device configuration to the deployed network device (104) based on the persona assigned to the deployed network device (104). [2] The system (100) of claim 1, wherein the management service (120) is configured to recommend the persona for the deployed network device (104) by predicting a role of the deployed network device (104). [3] The system (100) of claim 2, wherein the management service (120) is configured to predict the role of the deployed network device (104) by multiplying a number of network connections for the deployed network device (104) by the bucketing factor (f B ), wherein the role is an upper-tier switch if the number of network connections for the deployed network device (104) is greater than or equal to the bucketing factor (f B ), and the role is a lower-tier switch if the number of network connections for the deployed network device (104) is less than the bucketing factor (f B ) is. [4] The system (100) of claim 1, wherein the network devices (104) are part of a physical network (102) and the management service (120) is further configured to: a virtual network (110) is created on the physical network (102). [5] The system (100) of claim 4, wherein the physical network (102) has a spine-leaf architecture. [6] The system (100) of claim 4, wherein the physical network (102) has a multi-layer architecture. [7] The system (100) of claim 1, wherein the management service (120) and the network devices (104) are part of the same physical network (102). [8] The system (100) of claim 1, wherein the management service (120) and the network devices (104) are part of different physical networks (102). [9] The system (100) of claim 1, wherein the management service (120) is configured to identify the number of network connections for each of the network devices (104) via the Link Layer Discovery Protocol. [10] A computer-implemented method (300) comprising: Identifying (302) a number of network connections for each of a plurality of network devices (104) of a physical network (102); Calculating (304) a bucketing factor (f B ) for the network devices (104), wherein the bucketing factor (f B ) corresponds to a sum of a mean value and a confidence interval value for the number of network connections for the network devices (104); Grouping (306, 308) the network devices (104) into a lower layer group or an upper layer group based on the bucketing factor (f B), where the number of network connections for the network devices (104) in the lower layer group is less than the bucketing factor (f B ) and the number of network connections for the network devices (104) in the upper layer group is greater than or equal to the bucketing factor (f B ) is; and Applying (310) a configuration for lower layer network devices (104) and a configuration for upper layer network devices (104) to the network devices (104) in the lower layer group and the upper layer group, respectively. [11] The method (300) according to claim 10 further comprises: after applying (310) the configuration of the lower layer network devices (104) and the configuration of the upper layer network devices (104), creating a virtual network (110) in the physical network (102). [12] The method (300) of claim 10, wherein the configuration of the lower layer network devices (104) is a leaf switch configuration and the configuration of the upper layer network devices (104) is a spine switch configuration. [13] The method (300) of claim 10, wherein the configuration of the lower layer network devices (104) is an access switch configuration and the configuration of the upper layer network devices (104) is an aggregator / core switch configuration. [14] The method (300) of claim 10, further comprising: Recommending a lower-layer persona and an upper-layer persona for the network devices (104) in the lower-layer group and the upper-layer group, respectively; and Receiving an agreement with the lower layer persona and the upper layer persona, wherein the configuration of the lower layer network device (104) and the configuration of the upper layer network device (104) are applied in response to receiving the agreement with the lower layer persona and the upper layer persona. [15] The method (300) of claim 10, wherein identifying the number of network connections comprises determining the number of network connections for each of the network devices (104) via a network discovery protocol. [16] The method (300) of claim 15, wherein the network discovery protocol is the Link Layer Discovery Protocol. [17] A non-transitory computer-readable medium (126) storing instructions that, when executed by a processor (124), cause the processor (124): identify a number of network connections for each of a plurality of network devices (104) of a physical network (102); a bucketing factor (f B ) for the network devices, where the bucketing factor (f B ) corresponds to a sum of a mean value and a confidence interval value for the number of network connections for the network devices (104); Recommending a persona for a deployed network device (104) by comparing a number of network connections for the deployed network device (104) with the bucketing factor (f B ); Assigning the persona to the provided network device (104); Applying a network device configuration to the deployed network device (104) based on the persona assigned to the deployed network device (104); and create a virtual network (110) on the physical network (102). [18] The non-transitory computer-readable medium (126) of claim 17, wherein the instructions for applying the network device configuration to the provisioned network device (104) are executed in response to a network administrator's approval of the recommended persona. [19] The non-transitory computer-readable medium (126) of claim 17, wherein the number of network connections for each of the network devices (104) is identified via the Link Layer Discovery Protocol. [20] The non-transitory computer-readable medium (126) of claim 17, wherein the virtual network (110) transports encapsulated network traffic over the physical network (102).
Citation Information
Patent Citations
Remote smart NIC-based service acceleration
US20200278892A1
Policy based configuration in programmable access networks
WO2018100437A1