Some embodiments described herein relate generally to enterprise networks, and, in particular, to methods and apparatus for centrally managing network elements at for example, the access and aggregation layers in an enterprise network architecture.
In some known enterprise networks, management of network elements at the aggregation and access layers is done in a distributed fashion, where each individual network element is configured and managed separately. This distributed management approach, however, is troublesome and tedious for a network administrator because in a large deployment of enterprise network more than thousands of network elements can exist at the access and aggregation layers.
Accordingly, a need exists for a management infrastructure of an enterprise network that can centrally manage network elements at the access and aggregation layers for both wired and wireless portions of the enterprise network.
In some embodiments, an apparatus comprises a core network node configured to be operatively coupled to a set of network nodes. The core network node is configured to define configuration information for a network node from the set of network nodes based on a template, where the configuration information excludes virtual local area network (VLAN) information or IP subnet information. The core network node is further configured to send the configuration information to the network node.
In some embodiments, an enterprise network includes a core network node operatively coupled to a set of network nodes, which include a set of wired network nodes and a set of wireless network nodes. The core network node is configured to receive an initiation signal from a first network node from the set of network nodes. Alternatively, the core network node receives a configuration update signal from a network administrator. The core network node is then configured to define configuration information for the first network node based on a template in response to receiving the initiation signal or receiving the configuration update signal, where the configuration information excludes virtual local area network (VLAN) information or IP subnet information. The core network node is then configured to send the configuration information defined for the first network node to the first network node. In some embodiments, the configuration information for the first network node is sent to the first network node via an in-band channel.
Similarly, the core network node is configured to define configuration information for a second network node from the set of network nodes, based on the same template that is used to define configuration information for the first network node. The core network node is further configured to send the configuration information defined for the second network node to the second network node, based on a multicast signal that is also used to send the configuration information defined for the first network node to the first network node. In some embodiments, the core network node is configured to define configuration information for each network node from the set of network nodes based on a set of templates, and then send the configuration information to each network node from the set of network nodes through an in-band channel. In some embodiments, the set of templates are retrieved from a template table stored in a memory operatively coupled to the core network node.
In some embodiments, the set of wired network nodes includes one or more aggregation network nodes and one or more access network nodes, and the set of wireless network nodes includes one or more access points. The core network node is configured to receive a first tunneled packet associated with a first session from a wired network node from the set of wired network nodes. The core network node is also configured to receive a second tunneled packet associated with a second session from a wireless network node from the set of the wireless network nodes through intervening wired network nodes from the set of wired network nodes. Furthermore, the core network node is configured to send through a control plane tunnel VLAN information and/or IP subnet information to a wired user communication device associated with the first tunneled packet, and send through a control plane tunnel VLAN information and/or IP subnet information to a wireless user communication device associated with the second tunneled packet.
Additionally, the core network node is configured to receive monitor information from each network node from the set of network nodes, and send a troubleshoot signal to the first network node based on the monitor information received from at least one network node from the set of network nodes, such that the first network node does not receive any other troubleshoot signal originated from a remaining portion of the enterprise network, including any other network node from the set of network nodes. In other words, in some embodiments, the first network node is troubleshot by the core network node only. In some embodiments, the monitor information from each network node is sent to the core network node and the troubleshoot signal from the core network node is sent to the first network node all through the control plane of the enterprise network. Furthermore, in some embodiments, the core network node is configured to produce integrated monitor information based on the monitor information received from each network node, and then output a representation of the integrated monitor information to the network administrator.
A core network node (e.g., core network node 121, core network node 122) can be a high-capacity switching device positioned in the physical core, or backbone, of an enterprise network (e.g., the overlay enterprise network 100). In some cases, a core network node is also known as a core switch, a tandem switch or a backbone switch. In the overlay enterprise network 100, core network node 121 and core network node 122 are configured to connect the access devices (e.g., access network node 141-144, access point 151-152) and WLAN controller 110 with network 101, such that access to information services (e.g., persistent data and applications) located at network 101 can be provided to users that are coupled to the overlay enterprise network 100 via wired or wireless user communication devices (e.g., wired user communication device 181, wired user communication device 182, wireless user communication device 191). Specifically, core network node 121 and core network node 122 operatively connect aggregation network node 131 and aggregation network node 132 with network 101, and forward packets of wired and/or wireless sessions between aggregation network node 131, aggregation network node 132 and network 101 based on IP routing services. In other words, core network node 121 and core network node 122 act as a router working in layer 3 (i.e., network layer) of the OSI (open systems interconnection) model for the overlay enterprise network 100. In the overlay enterprise network 100, core network nodes are configured to manage wired sessions only, while wireless sessions are managed by WLAN controller 110, as described in detail below.
Shown in
In the overlay enterprise network 100, the access network nodes (e.g., access network node 141-144) can be any device that can directly connect one or more wired user communication devices (e.g., wired user communication device 181, wired user communication device 182) to the overlay enterprise network 100, such as a hub, an Ethernet switch, etc. In some cases, an access network node is also known as an access switch, a network switch, or a switching hub. Furthermore, as described in detail herein, access network node 141-144 is configured to ensure packets are delivered between one or more aggregation network nodes, one or more wired user communication devices, and/or one or more access points that are coupled to the access network nodes. In the overlay enterprise network 100, a wired user communication device can be any device that can receive packets from and/or send packets to an access network node through a wired connection, such as a desktop computer, a workstation, a printer, etc.
In the overlay enterprise network 100, the aggregation network nodes (e.g., aggregation network node 131-132) can be any switching device that is used to aggregate multiple access network nodes and ensure packets are properly routed within the network, such as a router, a layer-3 switch, etc. Furthermore, as described in detail herein, aggregation network node 131-132 is configured to route or switch packets received from one or more access network nodes to another access network node or a core network node, based on the routing information provided in the packet and the routing policy implemented at aggregation network node 131-132. In some embodiments, a collection of aggregation network nodes and associated access devices (e.g., access network nodes, access points) having a common connection to a redundant set of core network nodes are referred to as a pod. As shown in
In the overlay enterprise network 100, core network node 121-122, aggregation network node 131-132, and access network node 141-144 are configured collectively to manage and forward wired traffic for one or more wired user communication devices that are operatively coupled to one or more access network nodes. Wired network nodes including access network nodes 141-144 and aggregation network nodes 131-132 are configured to switch or route packets of a wired session that are received from a wired user communication device, to another wired network node or a core network node, based on a destination address (e.g., a destination IP address, a destination MAC address) included in the packets. More specifically, some wired traffic that is received at an aggregation network node from an access network node may be switched to another access network node from the aggregation network node if the traffic is destined to a destination device within the same pod. In contrast, the wired traffic destined to a destination device located in another pod is forwarded to a core network node, from which the traffic is forwarded into the other pod. For example, if wired user communication device 181 sends a packet to access network node 143 destined to wired user communication device 182, the packet can be first forwarded by access network node 143 to aggregation network node 131. Then, based on the destination IP address or MAC address included the packet, the packet is further forwarded by aggregation network node 131 to access network node 142, which finally sends the packet to wired user communication device 182. For another example, if wired user communication device 181 sends a packet to access network node 143 destined to a device located in network 101, the packet can be first forwarded by access network node 143 to aggregation network node 131. Then, based on the destination IP address or MAC address included the packet, the packet is further forwarded by aggregation network node 131 to core network node 122, which sends the packet into network 101 for further routing.
In the overlay enterprise network 100, wired network nodes including access network nodes 141-144 and aggregation network nodes 131-132 are configured and managed in a distributed fashion. Specifically, each wired network node is individually configured and managed in accordance with its physical connectivity to other network nodes in the overlay enterprise network 100. The node management includes for example, configuration management (including for example image management), accounting management, performance management, security management, fault management (including for example monitoring, and/or troubleshooting), etc. For example, after access network node 143 is coupled to the overlay enterprise network 100 (e.g., connected to aggregation network node 131 and aggregation 132), access network node 143 is manually configured by a network administrator (not shown in
In the overlay enterprise network 100, wireless equipments, including WLAN controller 110 and access points 151-152, forward wireless traffic that is received from one or more wireless user communication devices (e.g., wireless user communication device 191). Specifically, WLAN controller 110 can be any device that can automatically handle the configuration of multiple access points, and act as a centralized controller configured to manage wireless sessions in an overlay of the wired network portion of the overlay enterprise network 100. An access point can be any device that connects a wireless user communication device to a wired network portion of an enterprise network (e.g., via an access network node as shown in
In the overlay enterprise network 100, WLAN controller 110 and access points 151-152 are configured collectively to manage and forward wireless traffic through intervening wired network nodes and core network nodes. Specifically, WLAN controller 110 is configured to receive encapsulated packets of a wireless session from access point 151 or access point 152 via a layer-3 tunnel through intervening wired network nodes and core network nodes, decapsulate the packets, and then bridge the decapsulated packets to core network node 121 or core network node 122, from which the decapsulated packets are further forwarded to the destination. Similarly, WLAN controller 110 is configured to receive packets of the wireless session from core network node 121 or core network node 122 destined to access point 151 or access point 152, encapsulate the packets according to a layer-3 tunneling protocol, and then send the encapsulated packets to access point 151 or access point 152 via a layer-3 tunnel through intervening wired network nodes and core network nodes, where the encapsulated packets are decapsulated and forwarded to a wireless user communication device. In some cases, a layer-3 tunnel can be an Ethernet over layer-3 tunnel, such as a CAPWAP (control and provisioning of wireless access points) tunnel, a GRE (generic routing encapsulation) tunnel, etc.
In contrast to wired network nodes, wireless network nodes of the overlay enterprise network 100 including access points 151-152 can be configured and managed by WLAN controller 110 in a centralized fashion. Specifically, the functionalities of configuration, monitoring and troubleshooting for access points 151-152 in the overlay enterprise network 100 can be centralized in WLAN controller 110. Thus, access points 151-152 are directly monitored by WLAN controller 110 by sending their monitoring information to WLAN controller 110 via a tunnel (e.g., the tunnel represented by 10 in
In an enterprise network, if every network device included in the enterprise network or a portion of the enterprise network can be controlled by one or more core network nodes, then that enterprise network can be referred to as a homogeneous enterprise network, or that portion of the enterprise network can be referred to as a homogeneous portion of the enterprise network. In such a homogeneous network or portion of the network it is possible to use MPLS tunneling technology to tunnel traffic (e.g., wired or wireless traffic). If not every network node included in a portion of the enterprise network can be controlled by one or more core network nodes, then that portion of the enterprise network is referred to as an overlay enterprise network portion. Furthermore, an enterprise network including both a homogeneous portion and an overlay portion can be referred to as a heterogeneous enterprise network. Additionally, in some embodiments, one or more network devices included in a homogeneous portion or an overlay enterprise network portion of an enterprise network can tunnel traffic using a layer-3 tunneling technology (e.g., CAPWAP, Ethernet-in-GRE). MPLS tunneling technology can be used only in the homogeneous portion.
In a homogeneous enterprise network, a common tunneling technology can be used to forward both the wired traffic and the wireless traffic in any portion of the homogeneous enterprise network. For example, the MPLS tunneling technology or a layer-3 tunneling technology can be used to forward both the wired traffic and the wireless traffic in any portion of the homogeneous enterprise network 200. In contrast, as described above with respect to
A core network node in a homogeneous enterprise network (e.g., core network node 221 or core network node 222 in the homogeneous enterprise network 200) can be, for example, upgraded from a core network node in an overlay enterprise network (e.g., core network node 121 or core network node 122 in the overlay enterprise network 100). In such an upgrade, the core network node (e.g., core network node 221, core network node 222) is a single device that combines a switch, a router, and a controller, which includes a control module (e.g., control module 524 for core network node 500 as shown in
Similar to core network nodes 221-222, all other devices in the homogeneous enterprise network 200, including aggregation network node 231-232, access network node 241-244, and access point 251-252, can be configured to operate in a homogeneous enterprise network. Specifically, the functionality of access network node 241-244 and aggregation network node 231-232 includes multiplexing client traffic, including packets of wired and wireless sessions, to core network node 221 or core network node 222 without any need for local switching or complex forwarding and classification functionality. For example, unlike aggregation network nodes 131-132 in overlay enterprise network 100, aggregation network node 231 does not need to be configured to switch or route a packet received from access network node 243 to another access network node based on a destination address included in the packet. Instead, aggregation network node 231 can be configured to forward the packet, through a portion of a tunnel between access network node 243 and core network node 221 (shown as the tunnel represented by 22 in
A network administrator (e.g., network administrator 211) of a homogeneous enterprise network can be one or more persons responsible for the maintenance of the homogeneous enterprise network. The duties of a network administrator normally include deploying, configuring, maintaining and monitoring every network equipment in the homogeneous enterprise network, such as a core network node, a network node at the access layer or aggregation layer, a connection between two network nodes, etc. In some embodiments and depending on the context, network administrator 211 can represent a device used by a person to access, transmit instructions to, and receive monitor information from the core network nodes (e.g., core network node 221) of the homogeneous enterprise network 200, such that the network equipment of the homogeneous enterprise network 200 can be properly configured, monitored and maintained. In some other embodiments, network administrator 211 can represent a person who can directly operate on the core network nodes without using any extra device.
In an enterprise network, the tunneling technology applied between a core network node and an access device (e.g., an access network node, an access point) depends on the nature and/or capabilities of the core network node, the access device, and the intermediate network device(s) (e.g., aggregation network node) present between the core network node and the access device. Specifically, in an overlay enterprise network (e.g., overlay enterprise network 100), typically no tunneling protocol can be used between a core network node and an access device. In a homogeneous enterprise network (e.g., homogeneous enterprise network 200), a tunneling protocol such as MPLS or a layer-3 tunneling protocol can be used. In a heterogeneous enterprise network (e.g., the heterogeneous enterprise network 600 shown in
For example, if wireless user communication device 291 sends a packet to access point 251 destined to wired user communication device 281, the packet is first encapsulated according to the MPLS protocol or a layer-3 tunneling protocol at access point 251, and then transmitted to core network node 221 via a MPLS tunnel or a layer-3 tunnel through access network node 241 and aggregation network node 231 (shown as the tunnel represented by 20 in
For another example, if wired user communication device 281 sends a packet to access network node 243 destined to an IP address located in network 201, the packet is first encapsulated according to MPLS or a layer-3 tunneling protocol at access network node 243, and then transmitted to core network node 221 via a MPLS tunnel or a layer-3 tunnel through aggregation network node 231 (shown as the tunnel represented by 22 in
In some embodiments, a centralized core architecture can provide a single point of configuration and management for services within the enterprise network as well as a single logic node of interaction for visibility and monitoring applications. As a result, various types of service modules can be aggregated and/or consolidated at one or more core network nodes, such as firewall, intrusion detection policy (IDP), virtual private network (VPN) termination, load balancing, etc. In such a homogeneous enterprise network, services no longer need to be distributed at various levels in the network, and users can be given consistent policy that is independent of their access mechanism.
In the homogeneous enterprise network 200, core network node 221 and core network node 222 can be configured to configure each network node at the access and aggregation layers, including access points 251-252, access network nodes 241-244 and aggregation network nodes 231-232. Specifically, after a network node is coupled to the homogeneous enterprise network 200, the network node is configured to send an initiation signal to a core network node operatively coupled to the network node. In response to receiving the initiation signal, the core network node is configured to define configuration information for the network node based on a template (e.g., stored in template table 512 shown in
For example, after access network node 243 is coupled to the homogeneous enterprise network 200 (e.g., via aggregation network node 231), access network node 243 is configured to send an initiation signal to core network node 221 through aggregation network node 231, indicating the connection of access network node 243 to the homogeneous enterprise network 200. In response to receiving the initiation signal, core network node 221 is configured to define configuration information for access network node 243 based on a template. The configuration information defined for access network node 243 includes, for example, information that enables access network node 243 to establish communication channels with other network equipment, such as information associated with establishing a MPLS tunnel between access network node 243 and core network node 221 through aggregation network node 231, information associated with configuring the network interface parameters at access network node 243, etc. Next, core network node 221 is configured to send the configuration information defined for access network node 243 to access network node 243 via an in-band channel (e.g., a control channel within the data plane, a data plane tunnel and/or a data path). Upon receiving the configuration information, access network node 243 is configured accordingly by applying the configuration information.
In some embodiments, the configuration information sent from a core network node to a network node through an in-band channel excludes VLAN information or IP subnet information. Instead, after a user communication device (e.g., a wired user communication device, a wireless user communication device) is operatively coupled to a network node (e.g., an access network node, an access point), a core network node operatively coupled to the user communication device can be configured to send a control signal including VLAN information and/or IP subnet information to the user communication device through a control plane channel, such as a control plane tunnel, a control path, etc. The control plane channel is used to send control-related information, such as VLAN information or IP subnet information, and not data-plane packets or information. In other words, the control plane channel is not used to send any data-plane packets or information between the core network node and the user communication device.
For example, after wired user communication device 281 is operatively coupled to access network node 243, core network node 221 is configured to send a control signal including VLAN information associated with wired user communication device 281 to access network node 243 via a control plane tunnel through aggregation network node 231. The VLAN information is then forwarded from access network node 243 to wired user communication device 281. The control plane tunnel used to send the control signal is within the control plane of the homogeneous enterprise network 200, and different from the data plane tunnel used to send the configuration information from core network node 221 to access network node 243.
For another example, after wireless user communication device 291 is operatively coupled to access point 251, core network node 221 is configured to send a control signal including IP subnet information associated with wireless user communication device 291 to access point 251 through a control plane tunnel through aggregation network node 231 and access network node 241. The IP subnet information is then forwarded to wireless user communication device 291. The control plane tunnel used to send the control signal is within the control plane of the homogeneous enterprise network 200, and different from the data plane tunnel used to send the configuration information from core network node 221 to access point 251.
Although discussed in terms of VLAN information or IP subnet information, it should be understood that other types of control-related information can be included in a control signal(s) sent to a user communication device when the user communication device is operatively coupled to a network node.
In some embodiments, a network administrator operatively coupled to a core network node can send a configuration update signal to the core network node. In response to receiving the configuration update signal, the core network node can be configured to define configuration information for one or more network nodes based on one or more templates. The core network node is then configured to send each defined configuration information to the network node(s) through a data plane tunnel, respectively. Thus, the network node(s) are configured accordingly based on the received configuration information from the core network node.
For example, network administrator 211 can send a configuration update signal to core network node 221, instructing core network node 221 to update a template of configuration for aggregation network nodes in the homogeneous enterprise network 200. In response to receiving the configuration update signal, core network node 221 is configured to update the corresponding template, and then define configuration information for aggregation network node 231 and aggregation network node 232, respectively, based on the updated template. Next, core network node 221 can be configured to send the configuration information to aggregation network node 231 and aggregation network node 232 through two data plane tunnels, respectively. Alternatively, core network node 221 can be configured to send the configuration information defined for aggregation network node 231 to aggregation network node 231 through a data plane tunnel, and send the configuration information defined for aggregation network node 232 to core network node 222, from which the configuration information is forwarded to aggregation network node 232 through another data plane tunnel. Upon receiving the configuration information, aggregation network node 231 and aggregation network node 232 are configured accordingly by applying the respective configuration information.
In some embodiments, a core network node in a homogeneous enterprise network can be configured to define configuration information for a set of network nodes (e.g., access points, access network nodes, aggregation network nodes) based on a set of templates. In some embodiments, the set of templates can include a template for access network nodes, a template for aggregation network nodes, a template for access points, etc. For example, a core network node can be configured to define configuration information for two access network nodes based on a template for access network nodes, and define configuration information for an aggregation network node based on a template for aggregation network nodes that is different from the template for access network nodes. Furthermore, if the configuration information defined at a core network node for multiple network nodes is identical, the identical configuration information can be sent from the core network node to the multiple network nodes based on one or more multicast signals.
In the example of
In some embodiments, such a multicasting approach can be implemented with tunnels (e.g., data plane tunnels) between a core network node and multiple network nodes. For example, a multicast signal containing the configuration information for access network node 241 and access network node 243 is sent from core network node 221 to aggregation network node 231 through a portion of a data plane tunnel between core network node 221 and access network node 241 (or, equivalently, a portion of a data plane tunnel between core network node 221 and access network node 243). The multicast signal is duplicated at aggregation network node 231 based on an identifier (e.g., a multicasting identifier) included in the multicast signal. The duplicated signals are then sent from aggregation network node 231 to access network node 241 and access network node 243 through the remaining portion of the two data plane tunnels, respectively. Thus, the configuration information is sent from core network node 221 to access network node 241 and access network node 243 through the data plane tunnels, while only one multicast signal is sent from core network node 221 to aggregation network node 231.
In the homogeneous enterprise network 200, core network node 221 and/or core network node 222 can be configured to monitor and troubleshoot each network node at the access and aggregation layers, including access points 251-252, access network nodes 241-244 and aggregation network nodes 231-232. Specifically, core network node 221 and/or core network node 222 can be configured to receive monitor information from access points 251-252, access network nodes 241-244 and aggregation network nodes 231-232. The monitor information can be any data collected or generated at a network node that is associated with an operational status of the network node and/or any other network node, such as a number of data packets travelling through the network node in a certain period of time, a timestamp when a user communication device is connected to or disconnected from the network node, etc.
Upon receiving the monitor information from each network node, core network node 221 and/or core network node 222 can be configured to determine (if any exist) one or more malfunctioning or problematic network nodes by analyzing the monitor information received from each network node, and/or comparing the monitor information received from each network node to the monitor information received from its adjacent network nodes. Next, core network node 221 and/or core network node 222 can be configured to send a troubleshoot signal to each malfunctioning network node, such that a troubleshooting procedure can be operated on each malfunctioning network node, respectively. In some embodiments, the monitor information sent from each network node to core network node 221 and/or core network node 222 and the troubleshoot signal(s) sent from core network node 221 and/or core network node 222 to the malfunctioning network node(s) are all through the control plane of the homogeneous enterprise network 200. That is, the monitor information and the troubleshoot signals are sent through control plane tunnels and/or control paths that are not used for transmitting any data-plane packets or information.
For example, upon receiving the monitor information from each network node in the homogeneous enterprise network 200 through control plane tunnels and/or control paths, core network node 221 can determine that access point 251 is not able to receive any data-plane tunneled packet sent from core network node 221 through a data plane MPLS tunnel (e.g., the tunnel represented by 20 in
In some embodiments, a network node in a homogeneous enterprise network can be troubleshot by one or more core network nodes of the homogeneous enterprise network only. In other words, other than the troubleshoot signal(s) received from the core network node(s), the network node does not receive any other troubleshoot signal originated from another network node. In the example of
In some embodiments, after receiving monitor information from each network node from the set of network nodes in a homogeneous enterprise network, a core network node can be configured to produce integrated monitor information based on the monitor information received from each network node. The integrated monitor information can be, for example, a snapshot of the operational status of each network node from the set of network nodes, a summary of the number of data packets received at and/or sent from each network node from the set of network nodes, a summary of the number of data packets dropped at each network node, etc. Furthermore, the core network node can be configured to output a representation of the integrated monitor information to a network administrator operatively coupled to the core network node. A representation of the integrated monitor information can be, for example, a list of malfunctioning network nodes, a summary of network links that carry the most data packets in the homogeneous enterprise network during a certain period of time, etc.
In the example of
In some embodiments, access point 300 can communicate with a wireless user communication device (e.g., a Wi-Fi enabled laptop, a mobile phone) using any suitable wireless communication standard such as, for example, Wi-Fi, Bluetooth, and/or the like. Specifically, access point 300 can be configured to receive data and/or send data through RF transceiver 322, when communicating with a wireless user communication device. Furthermore, in some embodiments, an access point of an enterprise network uses one wireless communication standard to wirelessly communicate with a wireless user communication device operatively coupled to the access point; while another access point of the enterprise network uses a different wireless communication standard to wirelessly communicate with a wireless user communication device operatively coupled to the other access point. For example, as shown in
In some embodiments, access point 300 can be operatively coupled to an access network node by implementing a wired connection between communications interface 324 and the counterpart (e.g., a communications interface) of the access network node. The wired connection can be, for example, twisted-pair electrical signaling via electrical cables, fiber-optic signaling via fiber-optic cables, and/or the like. As such, access point 300 can be configured to receive data and/or send data through communications interface 324, which is connected with the communications interface of an access network node, when access point 300 is communicating with the access network node. Furthermore, in some embodiments, an access point of an enterprise network implements a wired connection with an access network node operatively coupled to the access point; while another access point of the enterprise network implements a different wired connection with an access network node operatively coupled to the other access point. For example, as shown in
Although not explicitly shown in
In some embodiments, as described with respect to
In some embodiments, as described with respect to
In some embodiments, memory 326 can be, for example, a random-access memory (RAM) (e.g., a dynamic RAM, a static RAM), a flash memory, a removable memory, and/or so forth. In some embodiments, data related to operations of access point 300 can be stored in memory 326. For example, an up-link policy table (not shown in
Similar to the access points in the homogeneous enterprise network 200 described above with respect to
Similar to the access points in the homogeneous enterprise network 200 described above with respect to
In some embodiments, communications interface 448 of access network node 400 includes at least two ports (not shown in
In some embodiments, as described with respect to
In some embodiments, as described with respect to
In some embodiments, memory 444 can be, for example, a random-access memory (RAM) (e.g., a dynamic RAM, a static RAM), a flash memory, a removable memory, and/or so forth. In some embodiments, data other than up-link policies that is related to operations of access network node 400 can also be stored in memory 444. For example, MAC addresses of potential user communication devices can be stored in memory 444, such that a user communication device can be recognized by access network node 400 upon being operatively coupled to access network node 400. For another example, information associated with tunneling packets to a core network node can be stored in memory 444, such that establishing a MPLS tunnel or a layer-3 tunnel with the core network node can be initialized by access network node 400.
Similar to access point 300, access network node 400 can be managed and configured by one or more core network nodes operatively coupled to access network node 400 in a homogeneous enterprise network (e.g., the homogeneous enterprise network 200 in
Thus, access network node 400 is configured accordingly based on the received configuration information such that access network node 400 is configured to operate appropriately as a network node in the homogeneous enterprise network. Additionally, in some embodiments, access network node 400 can be configured to receive VLAN information and/or IP subnet information via a control channel (e.g., a control plane tunnel, a control path) from the core network node.
Similar to access point 300, access network node 400 can also be monitored and troubleshot by one or more core network nodes operatively coupled to access network node 400 in a homogeneous enterprise network. Specifically, access network node 400 can be configured to send monitor information, through communications interface 448, to a core network node operatively coupled to access network node 400. The monitor information can include data collected or generated by access network node 400 that is associated with the operational status of access network node 400 and/or any other neighboring network node. As a result of reporting monitor information to the core network node, access network node 400 can receive a troubleshoot signal from the core network node through communications interface 448. Thus, access network node 400 is configured to go through a troubleshooting procedure based on the received troubleshoot signal. In some embodiments, both the monitor information and the troubleshoot signal are sent over a control channel (e.g., a control plane tunnel, a control path) in the homogeneous enterprise network.
As shown in
In some embodiments, communications interface 530 of core network node 500 includes at least two ports (not shown in
In some embodiments, as described with respect to
More specifically, upon receiving a packet associated with a user session at a port of communications interface 530 via a tunnel (e.g., a tunnel according to a layer-3 tunneling protocol or the MPLS protocol), tunnel module 522 is configured to decapsulate the packet (e.g., remove a header portion, a footer portion, and/or modify any other identifiers included within the packet) according to the protocol for that tunnel. Alternatively, core network node 500 receives a packet associated with a user session at a port of communications interface 530 from another network device operatively coupled to core network node 500, such as another core network node or a device in another network. To forward the received packet, control module 524 is configured to check the destination IP address or destination MAC address included in the packet. If the packet is not destined to a user in a pod that is directly connected to core network node 500 (e.g., destined to a network device in a pod that is not connected to core network node 500, destined to a user in another network), control module 524 is configured to forward the packet, from a port of communications interface 530, to a network device that is operatively coupled to core network node 500, such as another core network node or a device in another network, without using any tunneling technology. If the packet is destined to a user in a pod that is directly connected to core network node 500, tunnel module 522 is configured to encapsulate the packet (e.g., add a header portion, a footer portion, and/or modify any other identifiers included within the packet) according to the protocol for a tunnel. Meanwhile, control module 524 is configured to establish a tunnel connecting core network node 500 to the access device (e.g., an access network node, an access point) that is operatively coupled to the user communication device (if such a tunnel is not established yet). Finally, control module 524 is configured to send the encapsulated packet, from a port of communications interface 530, to the access device through that tunnel.
As described with respect to
Similar to the core network nodes described with respect to
Alternatively, for another example, core network node 500 receives a configuration update signal from a network administrator operatively coupled to core network node 500. The configuration update signal is sent to instruct core network node 500 to update a template stored in template table 512 that is associated with configuration information for a group of network nodes (e.g., access points). In response to receiving the configuration update signal, core network node 500 is configured to update the template accordingly based on the received configuration update signal. As a result, core network node 500 is configured to redefine configuration information for each network node from the group of network nodes based on the updated template. Subsequently, core network node 500 is configured to send the redefined configuration information to each network node from the group of network nodes through a data channel, respectively.
In some embodiments, core network node 500 can be configured to modify (e.g., add, delete, update) one or more templates stored in template table 512 in memory 510. For example, as described herein, core network node 500 can be configured to modify a template stored in template table 512 based on a configuration update signal received from a network administrator (e.g., network administrator 211 in
In some embodiments, memory 510 can be, for example, a random-access memory (RAM) (e.g., a dynamic RAM, a static RAM), a flash memory, a removable memory, and/or so forth. In some embodiments, data other than templates that is related to operations of core network node 500 can also be stored in memory 510. For example, combinations of user IDs and passwords of potential users can be stored in memory 510, such that the identification of a user can be verified by core network node 500 upon a user ID and a password entered by the user being provided to core network node 500. For another example, information associated with tunneling packets to one or more access devices can be stored in memory 510, such that establishing a MPLS tunnel or a layer-3 tunnel with one of the access devices can be initialized by core network node 500.
As described herein, the tunneling technology applied between two network devices (e.g., access points, access network nodes, aggregation network nodes, core network nodes, WLAN controllers) in an enterprise network depends on the nature and/or capabilities of the two network devices and the intermediate network devices present between the two network devices. Specifically, if not all of the two network devices and the intermediate network devices present between the two network devices are capable of using MPLS, then a layer-3 tunneling protocol (e.g., CAPWAP, Ethernet-in-GRE) can be applied, while MPLS will not be applied, for the tunnel between the two network devices. On the other hand, if all of the two network devices and the intermediate network devices present between the two network devices are capable of using the MPLS, or in other words, operating like the devices in a homogeneous enterprise network, then either a layer-3 tunneling protocol or MPLS can be applied for the tunnel between the two network devices.
As described in detail herein, a core network node (e.g., core network node 621) within a homogeneous portion of a heterogeneous enterprise network can be configured to manage wired/wireless network devices and/or wired/wireless sessions within the homogeneous portion of the heterogeneous enterprise network. In contrast, a core network node (e.g., core network node 622) within an overlay enterprise network portion of a heterogeneous enterprise network, which operates like a core network node in a wireless overlay enterprise network (e.g., core network node 121 or 122 in overlay enterprise network 100 in
In some embodiments, more than one type of tunneling technologies can be used in a homogeneous portion of a heterogeneous enterprise network. For example, as shown in
In some embodiments, a controller-to-controller tunnel can be used to connect a WLAN controller with a controller (e.g., a control module) of a core network node within a homogeneous portion to forward wired and/or wireless traffic, in a heterogeneous enterprise network. For example, as shown in
In some embodiments, network devices in an overlay enterprise network portion of a heterogeneous enterprise network can operate like the network devices in a wireless overlay enterprise network (e.g., overlay enterprise network 100). On one hand, a layer-3 tunnel can be used to forward wireless traffic between a WLAN controller and an access point through intervening wired network nodes in the overlay enterprise network portion of the heterogeneous enterprise network. For example, as shown in
On the other hand, a layer-3 tunnel can be used to forward wired traffic between two wired network nodes in the overlay enterprise network portion of the heterogeneous enterprise network. For example, as shown in
In some embodiments, one or more core network nodes in an enterprise network can be configured to manage a branch deployment of network devices that are operatively coupled to, but located separately from the enterprise network. Such a branch deployment of network devices typically does not include a core network node or any other type of control device that can manage the operations of the network devices. In some embodiments, such a branch deployment of network devices can be operatively coupled to the core network node(s) within the enterprise network through one or more other networks. In the example of
Similar to the overlay enterprise network 100, in the overlay enterprise network portion of the heterogeneous enterprise network 600, each wired network node can be individually configured and managed by network administrator 611, while each wireless network node can be configured and managed by WLAN controller 610. That is, access network node 642, access network node 644 and aggregation network node 632 can be manually configured and managed by a network administrator (e.g., network administrator 611) based on their locations in the heterogeneous enterprise network 600 and the nature of the neighboring network devices surrounding them. On the other hand, WLAN controller 610 can be configured to configure and manage access point 652. As described herein, the node management includes for example configuration management (including for example image management), accounting management, performance management, security management, fault management (including for example, monitoring, and/or troubleshooting, etc.
Similar to the homogeneous enterprise network 200, in the homogeneous enterprise network portion of the heterogeneous enterprise network 600, each network node, including each wired network node and each wireless network node, can be configured and managed by one or more core network nodes in a centralized fashion. That is, similar to core network node 221 and core network node 222 in the homogeneous enterprise network 200, core network node 621 can be configured to configure, monitor, and/or troubleshoot access point 651, access point 653, access network node 641, access network node 643, and aggregation network node 631. The details for core network node 621 to configure and manage network nodes in the heterogeneous enterprise network 600 are similar to those of core network node 221 and core network node 222 to configure and manage network nodes in the homogeneous enterprise network 200, which is described above with respect to
Alternative to the step of 702, at 704, a configuration update signal can be received at the core network node from a network administrator. Specifically, the configuration update signal can include information related to defining configuration information for one or more network nodes operatively coupled to the core network node, such as an instruction to update a template stored in a template table within the core network node, an instruction to redefine configuration information for a network node, etc. In the example of
At 706, in response to receiving the initiation signal from the network node (as shown in 702) or the configuration update signal from the network administrator (as shown in 704), configuration information can be defined by the core network node for the network node based on a template. Specifically, the core network node can be configured to retrieve a template appropriate for the network node from a template table (e.g., template table 512 in
For example, as shown in
For another example, as shown in
At 708, the configuration information can be sent from the core network node to the network node through an in-band channel. Specifically, the in-band channel can be a data plane tunnel through one or more intervening wired network nodes, or a data path connecting the core network node with the network node that includes one or more single-hop data paths. In other words, the in-band channel can be established through the same portion of the network as data and not through a separate management networks.
As a result, the network node is configured accordingly based on the received configuration information.
For example, as shown in
For example, as shown in
At 804, integrated monitor information can be produced by the core network node based on the monitor information from each network node. As described with respect to
At 806, a representation of the integrated monitor information can be sent from the core network node to a network administrator. As described with respect to
At 808, a troubleshoot signal can be sent from the core network node to a network node. Specifically, after the integrated monitor information is produced at the core network node and/or the representation of the integrated monitor information is sent to the network administrator, the core network node is configured to determine one or more malfunctioning network nodes that are to be troubleshot. Thus, the core network node is configured to send a troubleshoot signal to each of the malfunctioning network node, respectively. Similar to the monitor information sent from each network node to the core network node, the troubleshoot signal(s) is sent through a control channel (e.g., a control plane tunnel, a control path) of the enterprise network that is not used to send any data packet. In some embodiments, the troubleshoot signal is generated at the core network node by a network administrator or based on an instruction from the network administrator. In some other embodiments, the troubleshoot signal is automatically generated by the core network node without any interaction with the network administrator. After receiving the troubleshoot signal, the network node is configured to go through a troubleshooting procedure accordingly based on the troubleshoot signal.
In the example of
Although
While various embodiments have been described above, it should be understood that they have been presented by way of example only, not limitation, and various changes in form and details may be made. Any portion of the apparatus and/or methods described herein may be combined in any combination, except mutually exclusive combinations. The embodiments described herein can include various combinations and/or sub-combinations of the functions, components and/or features of the different embodiments described.
While described above with respect to
While shown and described above with respect to
While shown and described above with respect to
While shown and described above with respect to
Some embodiments described herein relate to a computer storage product with a computer-readable medium (also can be referred to as a processor-readable medium) having instructions or computer code thereon for performing various computer-implemented operations. The media and computer code (also can be referred to as code) may be those designed and constructed for the specific purpose or purposes. Examples of computer-readable media include, but are not limited to: magnetic storage media such as hard disks, floppy disks, and magnetic tape; optical storage media such as Compact Disc/Digital Video Discs (CD/DVDs), Compact Disc-Read Only Memories (CD-ROMs), and holographic devices; magneto-optical storage media such as optical disks; carrier wave signal processing modules; and hardware devices that are specially configured to store and execute program code, such as Application-Specific Integrated Circuits (ASICs), Programmable Logic Devices (PLDs), and read-only memory (ROM) and RAM devices.
Examples of computer code include, but are not limited to, micro-code or micro-instructions, machine instructions, such as produced by a compiler, code used to produce a web service, and files containing higher-level instructions that are executed by a computer using an interpreter. For example, embodiments may be implemented using Java, C++, or other programming languages (e.g., object-oriented programming languages) and development tools. Additional examples of computer code include, but are not limited to, control signals, encrypted code, and compressed code.
This application is related to co-pending U.S. patent application Ser. No. ______ (Attorney Docket JUNI-095 108200-2150), filed on the same date herewith, and entitled “Methods and Apparatus for a Converged Wired/Wireless Enterprise Network Architecture;” U.S. patent application Ser. No. ______ (Attorney Docket JUNI-097 108200-2153), filed on the same date herewith, and entitled “Methods and Apparatus for Enforcing a Common User Policy within a Network;” U.S. patent application Ser. No. ______ (Attorney Docket JUNI-098 108200-2154), filed on the same date herewith, and entitled “Methods and Apparatus for a Scalable Network with Efficient Link Utilization,” U.S. patent application Ser. No. ______ (Attorney Docket JUNI-096 108200-2152), filed on the same date herewith, and entitled “Methods and Apparatus for a Self-organized Layer-2 Enterprise Network Architecture,” each of which is incorporated herein by reference in its entirety.