Promote the resilience of network devices

CN117640377BActive Publication Date: 2026-09-01JUNIPER NETWORKS INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211393929.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2022-08-31
Filing Date
2022-11-08
Publication Date
2026-09-01
Estimated Expiration
2042-11-08

Smart Images

  • Figure CN117640377B_ABST
    Figure CN117640377B_ABST
Patent Text Reader

Abstract

Embodiments of this disclosure relate to enhancing the resilience of network devices. A network device sends a first service to a server device via a first port of the network device, wherein the server device provides the network device with an NFV service line card, and wherein the first service is at least one of the following: a first management plane service associated with the NFV service line card, a first control plane service associated with the NFV service line card, or a first data plane service associated with the NFV service line card. The network device receives a second service from the server device via a second port of the network device, wherein the second service is at least one of the following: a second management plane service associated with the NFV service line card, a second control plane service associated with the NFV service line card, or a second data plane service associated with the NFV service line card.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of network communications, and more particularly to a method for promoting the resilience of network devices, network devices, and computer-readable storage media. Background Technology

[0002] Network devices such as routers typically include one or more network line cards and one or more service line cards. The network line cards receive and forward traffic. The service line cards provide one or more services, such as security services, traffic analysis services, caching services, and / or code translation services. Summary of the Invention

[0003] In some implementations, the network device includes one or more memories and one or more processors for: sending a first service to a server device via a first port of the network device, wherein the server device provides a Network Functions Virtualization (NFV) service line card for the network device, and wherein the first service is at least one of the following: a first management plane service associated with the NFV service line card, a first control plane service associated with the NFV service line card, or a first data plane service associated with the NFV service line card; and receiving a second service from the server device via a second port of the network device, wherein the second service is at least one of the following: a second management plane service associated with the NFV service line card, a second control plane service associated with the NFV service line card, or a second data plane service associated with the NFV service line card.

[0004] In some implementations, a non-transient computer-readable medium stores a set of instructions, including one or more instructions that, when executed by one or more processors of a network device, cause the network device to: send a first service associated with an NFV service line card to a server device via a first port of the network device, the server device providing the NFV service line card of the network device; and receive a second service associated with the NFV service line card from the server device via a second port of the network device.

[0005] In some implementations, one method includes: receiving a first service from a network device via a first port of the server device by a server device, wherein the server device provides an NFV service line card for the network device, and wherein the first service is associated with the NFV service line card; generating a second service associated with the NFV service line card based on the first service by the server device; and sending the second service to the network device via a second port of the server device.

[0006] One aspect of this disclosure provides a network device, including: one or more memories; and one or more processors, configured to: send a first service to a server device via a first port of the network device, wherein the server device provides a Network Functions Virtualization (NFV) service line card for the network device, and wherein the first service is at least one of the following: a first management plane service associated with the NFV service line card, a first control plane service associated with the NFV service line card, or a first data plane service associated with the NFV service line card; and receive a second service from the server device via a second port of the network device, wherein the second service is at least one of the following: a second management plane service associated with the NFV service line card, a second control plane service associated with the NFV service line card, or a second data plane service associated with the NFV service line card.

[0007] According to one or more embodiments, the server device is associated with an NFV system.

[0008] According to one or more embodiments, wherein: the server device hosts one or more services of the NFV service line card; the first service is a first management plane service and includes one or more request messages related to configuring at least one of the one or more services of the NFV service line card; and the second service is a second management plane service and includes one or more response messages related to configuring at least one service.

[0009] According to one or more embodiments, wherein: the first service is a first management plane service and includes one or more request messages related to the health status of the server device; and the second service is a second management plane service and includes one or more response messages related to the health status of the server device.

[0010] According to one or more embodiments, wherein: the server device hosts one or more services of the NFV service line card; the first service is a first control plane service and includes one or more first activity messages associated with a specific service among the one or more services of the NFV service line card; and the second service is a second control plane service and includes one or more second activity messages associated with a specific service.

[0011] According to one or more embodiments, one or more processors are further configured to: determine, based on a second service, that a specific service is unavailable via an NFV service line card provided by a server device; and send a third service to another server device via a third port of the network device, wherein the other server device provides another NFV service line card of the network device, and the other server device hosts one or more services of the other NFV service line card, wherein the one or more services of the other NFV service line card include a copy of the specific service, the copy of the specific service operating in standby mode, and wherein the third service is a third management plane service associated with the other NFV service line card, and includes one or more request messages related to enabling a copy of the specific service to operate in active mode on the other NFV service line card.

[0012] According to one or more embodiments, wherein: a server device hosts one or more services of an NFV service line card; a first service is a first data plane service; and a second service is a second data plane service, wherein the second service is generated by at least one service of the NFV service line card that processes the first service.

[0013] According to one or more embodiments, wherein: a server device hosts one or more services of an NFV service line card, the one or more services of the NFV service line card including a first copy of the service; another server device provides another NFV service line card of the network device; wherein the other server device hosts one or more services of another NFV service line card, the one or more services of the other NFV service line card including a second copy of the service; and the first service is a first data plane service, and the second service is a second data plane service, wherein one or more processors are further configured to: receive the first service via a third port before sending the first service; determine that the service is to be applied to the first service; and use load balancing technology and, based on the determination that the service is to be applied to the first service, determine that a first copy of the service is to be applied to the first service, wherein determining that a first copy of the service is to be applied to the first service causes one or more processors to send the first service to the server device via the first port.

[0014] According to one or more embodiments, wherein: a server device hosts one or more services of an NFV service line card, the one or more services of the NFV service line card including a first copy of the service; another server device provides another NFV service line card of the network device; wherein the other server device hosts one or more services of another NFV service line card, the one or more services of the other NFV service line card including a second copy of the service; a first service is a first management plane service and includes one or more status update messages related to the status of the second copy of the service of the other NFV service line card. The first service is generated by the second copy of the service of the other NFV service line card and is sent to the network device from the other server device via a third port of the network device; and a second service is a second management plane service and includes one or more status response messages related to the status of the second copy of the service of the other NFV service line card.

[0015] One aspect of this disclosure provides a non-transient computer-readable medium storing a set of instructions, the set of instructions including: one or more instructions, which, when executed by one or more processors of a network device, cause the network device to: send a first service associated with a Network Functions Virtualization (NFV) service line card of the network device to a server device via a first port of the network device, the server device providing the NFV service line card; and receive a second service associated with the NFV service line card from the server device via a second port of the network device.

[0016] According to one or more embodiments, wherein: the server device hosts one or more services of the NFV service line card; the first service includes one or more request messages related to a specific service among the one or more services configured on the NFV service line card; and the second service includes one or more response messages related to the configuration of the specific service.

[0017] According to one or more embodiments, wherein: the first service includes one or more request messages related to the health status of the server device; and the second service includes one or more response messages related to the health status of the server device.

[0018] According to one or more embodiments, wherein: a server device hosts one or more services of an NFV service line card; a first service includes one or more first activity messages associated with a specific service among the one or more services of the NFV service line card; and a second service includes one or more second activity messages associated with the specific service.

[0019] According to one or more embodiments, wherein: a server device hosts one or more services of an NFV service line card; a first service includes one or more first data messages; and a second service includes one or more second data messages, wherein the second service is generated by at least one service of the NFV service line card that processes the first service.

[0020] According to one or more embodiments, wherein: a server device hosts one or more services of an NFV service line card, the one or more services of the NFV service line card including a first copy of the service; another server device provides another NFV service line card of a network device, wherein the other server device hosts one or more services of the other NFV service line card, the one or more services of the other NFV service line card including a second copy of the service; a first service includes one or more status update messages related to the status of the second copy of the service of the other NFV service line card; and a second service includes one or more status response messages related to the status of the second copy of the service of the other NFV service line card.

[0021] One aspect of this disclosure provides a method comprising: receiving a first service from a network device via a first port of the server device by a server device, wherein the server device provides a Network Functions Virtualization (NFV) service line card for the network device, wherein the first service is associated with the NFV service line card; generating a second service associated with the NFV service line card based on the first service by the server device; and sending the second service to the network device via a second port of the server device.

[0022] According to one or more embodiments, the server device is associated with an NFV system.

[0023] According to one or more embodiments, wherein: the first service includes one or more request messages related to at least one of one or more services configured by an NFV service line card hosted by a server device; and the second service includes one or more response messages related to configuring at least one service.

[0024] According to one or more embodiments, wherein: the first service includes one or more request messages related to the health status of the server device; and the second service includes one or more response messages related to the health status of the server device.

[0025] According to one or more embodiments, wherein: the first service includes one or more first data messages; and the second service includes one or more second data messages. Attached Figure Description

[0026] Figures 1A to 1H This is a diagram illustrating one or more example implementations described in this article.

[0027] Figure 2 This is a diagram illustrating an example environment in which the systems and / or methods described in this article can be implemented.

[0028] Figure 3 This is a diagram illustrating example components of a device associated with promoting the resilience of network equipment.

[0029] Figure 4 This is a diagram illustrating example components of a device associated with promoting the resilience of network equipment.

[0030] Figures 5 to 6 This is a flowchart of an example process associated with promoting the resilience of network devices. Detailed Implementation

[0031] The following detailed description of the example implementation is with reference to the accompanying drawings. The same reference numerals in different drawings may identify the same or similar elements.

[0032] Network devices typically perform two different types of tasks: forwarding tasks, such as determining the destination of forwarded traffic and forwarding the traffic; and computational tasks, such as providing one or more services, such as security services, encryption services, address translation services, and / or another service (e.g., processing and / or modifying traffic before forwarding). In many cases, a network device may include one or more sets of line cards (where the line cards include Flexible Physical Interface Card Concentrators (FPCs), Physical Interface Cards (PICs), and / or other types of line cards) to perform both different types of tasks. For example, a network device may include one or more networking line cards, each configured to receive and forward traffic, and one or more service line cards, each configured to provide (or more) services. However, in many cases, one or more networking line cards and one or more service line cards may include Application-Specific Integrated Circuit (ASIC) line cards, which provide optimal performance as networking line cards for performing the forwarding tasks of the network device, but suboptimal performance as service line cards for performing the computational tasks of the network device. This can lead to a waste of computational resources (e.g., processing resources, memory resources, communication resources, and / or power resources) of the network device and / or one or more service line cards.

[0033] In some cases, dedicated (non-ASIC) line cards, such as those utilizing the x86 architecture, can be used as service line cards to perform computational tasks. However, such dedicated line cards are complex in terms of design, manufacturing, installation, and maintenance, and quickly become obsolete (e.g., after one or two years). Furthermore, dedicated line cards are typically configured to work with specific types of network devices, and therefore cannot be reused by other network devices of different types. Additionally, network devices have a limited number of slots available for line cards, thus limiting the ability of network devices to include additional line cards, such as another network line card for performing forwarding tasks.

[0034] Some implementations described in this paper involve server devices that provide NFV service line cards for network devices. That is, a server device (e.g., utilizing an x86 architecture) acts as a service line card (e.g., with or without a physical network interface card (NIC)) for a network device and provides one or more services to the network device (e.g., using one or more NFV technologies, such as kernel-based virtual machines (KVM), single root input / output virtualization (SR-IOV), virtualized service workloads running using Docker, etc.). The server device is connected to the network device via the network device and its corresponding ports, rather than via the network device's line card slots. Therefore, any number of server devices (e.g., server devices each providing one or more NFV service line cards) can be connected to the network device to perform computational work without using the network device's physical line card slots. This allows the network device to utilize more physical line card slots for physical line cards (e.g., ASIC line cards) configured to perform forwarding work for the network device. Thus, the forwarding capacity of the network device (e.g., the network device's slot capacity) and the service capacity of the network device (e.g., the network device's port capacity) can be increased. Therefore, compared to network devices that do not utilize NFV service line cards provided by server equipment, this network device offers improved performance for performing forwarding and computational tasks. This minimizes the waste of computational resources from network devices, server equipment, and physical line cards.

[0035] Furthermore, multiple server devices providing NFV service line cards can be included in systems associated with the network device, such as Network Functions Virtualization (NFV) systems. Therefore, the network device can integrate its data plane, management plane, and control plane, as well as multiple services (e.g., running on the same or different server devices across multiple server devices). In this way, multiple server devices appear as part of the network device (e.g., as multiple NFV service line cards), allowing unified control, management, and / or access to multiple server devices by the network device (and its administrator, such as via the network device's user interface). For example, a management system (e.g., a Network Management System (NMS) running in a cloud environment) can obtain management information related to multiple server devices from the network device, thus logging into and / or communicating with multiple server devices directly without needing to associate management or configuration operations. Similarly, the network device acts as a single touchpoint for all operational and configuration commands, including those for services running on multiple server devices. Furthermore, multiple server devices can be configured to provide services to any type of network device and can be reassigned to another network device when needed.

[0036] Thus, some of the implementations described in this paper facilitate the resilience of network devices. For example, some implementations facilitate the “scale-out” of network devices because any number of server devices can be used as NFV service line cards for the network device, each with more available computing resources (e.g., processing resources, memory resources, communication resources, and / or power resources) than typical dedicated (non-ASIC) line cards. Furthermore, some implementations facilitate the “scale-up” of network devices because multiple server devices (e.g., server devices utilizing x86 architecture) can be modified at any time, such as hosting more and / or different services that are unavailable for some ASIC physical line cards.

[0037] Figures 1A to 1H This is a diagram illustrating one or more example implementations of 100 described in this article. For example... Figures 1A to 1H As shown, (multiple) example implementations 100 may include network devices, NFV systems, and multiple server devices (e.g., multiple server devices utilizing x86 architecture; as shown in network devices 1 to N, where N≥2). The following section combines... Figures 2 to 4 A more detailed description of network devices, NFV systems, and multiple server devices.

[0038] Multiple server devices can be associated with an NFV system. For example, such as Figure 1AAs shown, an NFV system may include multiple server devices. In some implementations, multiple server devices may be associated with the computing hardware of the NFV system, as described elsewhere in this document.

[0039] Network devices can be connected to an NFV system, and therefore can be connected to multiple server devices. A network device can be connected to each server device via one or more connections (e.g., one or more links). For example, as... Figure 1A As shown, a network device can be connected to server device 1 via a first connection (shown as connection A) and a second connection (shown as connection B), and can be connected to server device 2 via a third connection (shown as connection C) and a fourth connection (shown as connection D), and so on. Each of the network devices can include multiple ports. Ports of the network devices can be connected to corresponding ports of the server devices via connections. For example, as... Figure 1A As shown, the first port of the network device can be connected to the first port of the server device 1 via a first connection (shown as connection A), and the second port of the network device can be connected to the second port of the server device via a second connection (shown as connection B).

[0040] In some implementations, a network device can send services to one of a plurality of server devices via one of the connections between the network device and the server device, and can receive services from the server device via another of the connections between the network device and the server device. For example, a network device can send services to server device 1 via a first connection (shown as connection A), and can receive services from server device 1 via a second connection (shown as connection B). Therefore, a port of the network device can be associated with sending services to a corresponding port of another plurality of ports of the server device via a connection, and another port of the network device can be associated with receiving services from a corresponding port of another plurality of ports of the server device via another connection. For example, a first port of the network device can be associated with sending services to a first port of server device 1 via a first connection (shown as connection A), and a second port of the network device can be associated with receiving services from a second port of the server device via a second connection (shown as connection B).

[0041] In some implementations, each of multiple server devices can be configured as an NFV service line card for a network device, which appears (e.g., from the perspective of network device management and forwarding) integrated with the network device. That is, each server device acts as an FPC, PIC, and / or another type of service line card for the network device. Therefore, each server device can provide the NFV service line card for the network device. For example, the network device can communicate with the server device configured as an NFV service line card for the network device, rather than with the physical line card included in the network device. Thus, as disclosed herein, the network device can send a first service associated with the NFV service line card provided by the server device to the server device via a connection between the network device and the server device, and can receive a second service associated with the NFV service line card via another connection between the network device and the server device. In this way, multiple server devices can each provide multiple NFV service line cards for the network device.

[0042] Additionally or alternatively, a server device among multiple server devices can be configured as multiple NFV service line cards for a network device, which appear (e.g., from the perspective of network device management and forwarding) to be integrated with the network device. For example, a server device can provide a corresponding NFV service line card for each service hosted by the server device (e.g., ...). Figure 1A The server device 1 shown can provide separate NFC service line cards for services A, B, and C. Therefore, network devices can communicate with multiple NFV service line cards of the server device via one or more connections between the network device and the server device (e.g., via connections A and B for communicating with the NFV service line cards of server device 1). In this way, the server device can provide multiple NFV service line cards for the network device separately. While some implementations described herein involve separate server devices that each provide separate NFV service line cards, additional implementations include separate server devices that each provide multiple NFV service line cards.

[0043] Network devices may include management modules (e.g., software management modules) configured to manage and / or control multiple NFV service line cards (e.g., manage and / or control multiple server devices) and / or deliver and / or receive services from multiple NFV service line cards (e.g., manage and / or control the delivery and / or receipt of services from multiple server devices). Each server device may include an orchestrator (e.g., software orchestration module) and may host one or more services provided by the server device for the NFV service line cards. Services (also known as workloads) may include virtualized services (or virtualized workloads) (e.g., running using KVM virtual machines, VMware ESXi, or similar virtualization resources), containerized services (or containerized workloads) (e.g., running within containers provided by Docker, Podman, LXC, or similar containerization resources), bare-metal services (or bare-metal workloads) (e.g., running directly on top of the operating system (OS) of a server device such as Linux OS), or another type of service. For example, such as Figure 1A As shown, server device 1 may include an orchestrator and may host services A, B, and C. The orchestrator may be configured to manage and / or control one or more services. For example, the orchestrator of server device 1 may be configured to manage and / or control services A, B, and C. One or more services may include security services, such as Internet Protocol Security (IPsec) services, Test Proxy (TA) services, and / or another security service; address translation services, such as Network Address Translation (NAT) services; diagnostic and / or health monitoring services; and / or another type of service.

[0044] Figure 1B This illustrates how network devices and server devices (e.g., server device 1) in a plurality of server devices can communicate to allow the server device to provide NFV service line cards to the network device. Therefore, as... Figure 1B As shown by reference numeral 102, a network device (e.g., using a management module of the network device) can send a first service associated with the NFV service line card to a server device (e.g., server device 1). The network device can send the first service via a port of the network device through a connection between the network device and the server device. As further described herein, the first service can be at least one of the following: a first management plane service associated with the NFV service line card, a first control plane service associated with the NFV service line card, or a first data plane service associated with the NFV service line card.

[0045] As shown by reference numeral 104, a server device (e.g., after receiving a first service) can process (e.g., using the server device's orchestrator) the first service (e.g., parse and / or read the first service) to identify at least one service (e.g., at least one of one or more services of an NFV service line card hosted by the server device) to apply to the first service, as further described herein. Therefore, as shown by reference numeral 106, the server device can generate a second service associated with the NFV service line card (e.g., based on applying at least one service to the first service), as further described herein. As shown by reference numeral 108, the server device can send the second service to another port of the network device via another connection between the network device and the server device via another port of the server device. As further described herein, the second service can be at least one of the following: a second management plane service associated with the NFV service line card, a second control plane service associated with the NFV service line card, or a second data plane service associated with the NFV service line card. Thus, the network device can receive the second service from the server device.

[0046] Figure 1C This illustrates communication between a network device and a server device (e.g., server device 1) to allow the network device (e.g., using the network device's management module) to manage the NFV service line card provided by the server device. Figure 1C As shown by reference numeral 110 in the attached figure, the network device can send a first management plane service to the server device. The first management plane service may include one or more request messages, for example, relating to configuring (e.g., starting, stopping, restarting, updating / or modifying) at least one of the services of one or more NFV service line cards hosted by the server device.

[0047] As shown by reference numeral 112 in the accompanying drawings, the server device can process (e.g., using the server device's orchestrator) first management plane traffic (e.g., parsing and / or reading first management plane traffic) to identify at least one service of the NFV service line card hosted by the server device to be configured. Therefore, as shown by reference numeral 114 in the accompanying drawings, the server device can configure at least one service (e.g., based on information included in one or more request messages of the first management plane traffic).

[0048] In some implementations, as shown by reference numeral 116, the server device can generate a second management plane service associated with the NFV service line card (e.g., based on configuring at least one service). The second management plane service may include one or more response messages (e.g., one or more configuration confirmation messages) related to configuring at least one service. As shown by reference numeral 118, the server device can send the second management plane service to the network device. In this way, the network device can receive the second management plane service from the server device (e.g., from the NFV service line card provided by the server device). The network device can determine whether the configuration of at least one service was successful based on the second management plane service (e.g., based on one or more configuration confirmation messages).

[0049] Figure 1D This illustrates communication between a network device and a server device (e.g., server device 1) to allow the network device (e.g., using the network device's management module) to monitor the NFV service line card provided by the server device. Figure 1D As shown by reference numeral 120 in the attached figure, the network device can send a first management plane service to the server device. The first management plane service may include, for example, one or more request messages related to the health status of the server device (e.g., one or more messages related to the health status of the NFV service line card provided by the server device).

[0050] The server device can process (e.g., using the server device's orchestrator) first management plane traffic (e.g., parsing and / or reading first management plane traffic) to identify at least one health parameter of the server device to be determined (e.g., at least one health parameter of the NFV service line card provided by the server device), such as the server device's operating temperature, utilization associated with one or more processors of the server device, utilization associated with one or more memories associated with the server device, and / or other health information associated with the server device. Therefore, as indicated by reference numeral 122 in the figures, the server device can determine the health status of the server device (e.g., by determining at least one health parameter, such as by reading sensors associated with the server device).

[0051] In some implementations, as indicated by reference numeral 124, the server device can generate a second management plane service associated with an NFV service line card (e.g., based on determining the health status of the server device). The second management plane service may include one or more response messages related to the health status of the server device (e.g., one or more messages indicating the health status of the server device). As indicated by reference numeral 126, the server device can send the second management plane service to a network device. In this way, the network device can receive the second management plane service from the server device (e.g., from an NFV service line card provided by the server device). The network device can determine the health status of the server device, and as further described herein, the network device may use this health status when determining whether to send other services to the server device (e.g., from an NFV service line card provided by the server device).

[0052] Figure 1E The diagram illustrates a network device and two server devices (shown as server device 1 and server device N) among multiple server devices. They communicate to allow the network device (e.g., using the network device's management module) to control the corresponding NFV service line cards provided by the two server devices. Figure 1E As further shown, a server device (e.g., server device 1) may host one or more services of an NFV service line card, including a specific service (e.g., operating in active mode, denoted as service A). Another server device (e.g., server device N) may host one or more services of another NFV service line card, including a copy of the specific service (e.g., operating in standby mode, denoted as service A). As shown by reference numeral 128, a network device may send a first control plane traffic to the server device. The first control plane traffic may include, for example, one or more first liveness messages associated with a specific service (e.g., one or more keepalive messages associated with the Bidirectional Forwarding Detection (BFD) service protocol, the Internet Control Message Protocol (ICMP), or another protocol, which are initiated by the network device destined for the specific service and are intended to indicate to the specific service that the network device is operating).

[0053] As shown by reference numeral 130, the server device can process (e.g., using the server device's orchestrator) a first control plane service (e.g., parsing and / or reading the first control plane service) to identify a specific service (e.g., determining that the destination of one or more keep-alive messages is that specific service). Therefore, as shown by reference numeral 132, the server device (e.g., using the specific service based on its identification) can generate a second control plane service. The second control plane service may include one or more second activity messages associated with the specific service (e.g., one or more keep-alive messages initiated from that specific service and destined for a network device service, intended to indicate to the network device that the specific service is operating). As shown by reference numeral 134, the server device can send the second control plane service to the network device. In this way, the network device can receive the second control plane service from the server device (e.g., from an NFV service line card provided by the server device). Therefore, the network device can thus determine that a specific process is operating in active mode on the NFV service line card provided by the server device (e.g., it can determine that a specific process is "active" on the NFV service line card provided by the server device).

[0054] Alternatively, when a specific service is not operating in active mode or is no longer operating on an NFV service line card provided by a server device, the second control plane traffic may not include a second activity message associated with the specific service, or the server device may not generate and send any second control plane traffic (e.g., because the server device cannot use the specific process to generate second control plane traffic). Therefore, as shown by reference numeral 136, the network device may determine (e.g., based on the absence of a second control plane traffic message associated with a specific service, or based on the lack of any second control plane traffic received) that a specific service is unavailable (e.g., the specific process is not operating in active mode on an NFV service line card provided by the server device). As shown by reference numeral 138, the network device may send management plane traffic associated with another NFV service line card to another server device (e.g., using a port of the network device connected to a corresponding port of the other server device via a connection between the network device and the other server device). The management plane traffic may include one or more request messages relating to enabling a copy of the specific service (e.g., operating in standby mode) to operate in active mode on another NFV service line card provided by another server device. Therefore, as shown by reference numeral 140 in the attached figure, another server device can configure a copy of a specific service to operate in active mode (e.g., based on management plane services). In this way, the network device can control another NFV service line card to provide a specific service to the network device, thereby improving the network device's performance compared to a network device that does not utilize a standby copy of a specific process.

[0055] Figure 1F This illustrates communication between a network device and a server device to allow an NFV service line card provided by the server device to apply at least one service to data plane traffic (e.g., before the network device forwards data plane traffic). Figure 1F As shown, and as indicated by reference numeral 142 in the accompanying drawings, the network device can send a first data plane service to the server device. The first data plane service may include, for example, one or more data messages (e.g., data messages to be forwarded by the network device).

[0056] As shown by reference numeral 144 in the attached figure, a server device (e.g., after receiving a first data plane service) can process the first data plane service (e.g., parse and / or read the first data plane service) to identify at least one service of the NFV service line card hosted by the server device that is to be applied to the first data plane service. For example, the server device can determine one or more characteristics of the first data plane service and can determine (e.g., based on one or more characteristics, such as searching a lookup table based on one or more characteristics) at least one service to be applied to the first data plane service. Therefore, the server device can apply at least one service to the first data plane service.

[0057] As shown by reference numeral 146 in the attached figure, the server device can generate a second data plane service associated with an NFV service line card (e.g., based on applying at least one service to a first data plane service). The second data plane service may include at least some data messages included in one or more data messages in the first data plane service, one or more data messages that are modifications of at least some data messages included in one or more data messages in the first data plane service, and / or one or more data messages that are not included in one or more data messages in the first data plane service and are not modifications of one or more data messages included in the first data plane service. As shown by reference numeral 148 in the attached figure, the server device can send the second data plane service to a network device. In this way, the network device can receive the second data plane service from the server device (e.g., from an NFV service line card provided by the server device). The network device can then forward the second data plane service (e.g., based on destination information included in the second data plane service).

[0058] Figure 1G This illustrates how network devices use load balancing techniques to determine which copy (e.g., which instance of the service) of a service provided by at least two NFV service line cards should be applied to data plane traffic (e.g., before the network device forwards data plane traffic). Figure 1GAs further shown, a server device (e.g., server device 1) may host one or more services of an NFV service line card, including a first copy of the service (e.g., operating in active mode, denoted as service A). Another server device (e.g., server device N) may host one or more services of another NFV service line card, including a second copy of a particular service (e.g., operating in active mode, denoted as service A). As indicated by reference numeral 150, a network device may receive a first data plane service (e.g., via a WAN port or another port of the network device). The first data plane service may include, for example, one or more data messages (e.g., data messages to be forwarded by the network device). In some implementations, the first data plane service may be a data plane service stream (also referred to as a first data plane service flow).

[0059] As shown by reference numeral 152, the network device can determine (e.g., using the network device's management module) that a service (e.g., a security service or another service) is to be applied to a first data plane service (or a first data plane service flow). As shown by reference numeral 154, the network device can determine (e.g., based on the determination that the service will be applied to the first data plane service) that a specific copy of the service will be applied to the first data plane service (or the first data plane service flow). For example, the network device can use load balancing techniques (e.g., equal-cost multipath (ECMP) load balancing techniques and / or another load balancing technique) to determine that a first copy of the service (e.g., a first copy of the NFV service line card provided by server device 1) is to be applied to the first data plane service (or the first data plane service flow). Therefore, as shown by reference numeral 156, the network device can send the first data plane service (or the first data plane service flow) to the server device.

[0060] As shown by reference numeral 158 in the attached figure, a server device (e.g., after receiving a first data plane service or a first data plane service stream) can process the first data plane service (or the first data plane service stream) (e.g., parse and / or read the first data plane service or the first data plane service stream) to identify a first copy of the service of the NFV service line card hosted by the server device, which will be applied to the first data plane service (or the first data plane service stream) (e.g., to match the information provided herein). Figure 1F (Similar to the manner described by reference numeral 144 in the attached figure). Therefore, the server device can apply a first copy of the service to the first data plane service (or the first data plane service flow).

[0061] As shown by reference numeral 160 in the attached figure, the server device can generate a second data plane service (or second data plane service flow) associated with an NFV service line card (e.g., based on applying a first copy of the service to the first data plane service or the first data plane service flow). The second data plane service (or second data plane service flow) may include at least some data messages included in one or more data messages in the first data plane service (or first data plane service flow), one or more data messages that are modifications of at least some data messages included in one or more data messages in the first data plane service (or first data plane service flow), and / or one or more data messages that are not included in one or more data messages in the first data plane service (or first data plane service flow) and do not serve as modifications of one or more data messages included in one or more data messages in the first data plane service (or first data plane service flow). As shown by reference numeral 162 in the attached figure, the server device can send the second data plane service (or second data plane service flow) to a network device. In this way, the network device can receive the second data plane service (or second data plane service flow) from the server device (e.g., from an NFV service line card provided by the server device). The network device can then forward the second data plane service (or second data plane service flow) (e.g., based on destination information included in the second data plane service or second data plane service flow).

[0062] Figure 1H This illustrates copies of services (e.g., stateful services) provided by at least two NFV service line cards, which communicate with each other via network devices (e.g., to ensure high availability of stateful services). Figure 1H As further shown, a server device (e.g., server device 1) may host one or more services of an NFV service line card, including a first copy of a service (e.g., a stateful service operating in active mode, denoted as service A). Another server device (e.g., server device N) may host one or more services of another NFV service line card, including a second copy of a service (e.g., operating in active mode, denoted as service A). As shown by reference numeral 162, the other server device (e.g., using a second copy of a process) may generate a first management plane service associated with the other NFV service line card. The first management plane service may include one or more status update messages (e.g., related to information about the status of the second copy of a process stored by the other server device) related to the status of the second copy of the service of the other NFV service line card. As shown by reference numeral 164, the other server device may send the first management plane service to a network device.

[0063] As shown by reference numeral 166, the network device may send a first management plane service to the server device (e.g., providing the first management plane service to a first copy of the service of an NFV service line card hosted by the server device). As shown by reference numeral 168, the server device may process the first management plane service (e.g., parsing and / or reading the first management plane service) to identify the first copy of the service (e.g., as the intended recipient of the first management plane service). As shown by reference numeral 170, the server device may generate (e.g., using the first copy of the process and / or in response to the first management plane service) a second management plane service associated with the NFV service line card. The second management plane service may include one or more status update messages related to the status of the first copy of the service of the NFV service line card (e.g., related to information stored by the server device regarding the status of the first copy of the process).

[0064] As shown by reference numeral 172 in the attached figure, another server device can send the second management plane service to the network device. As shown by reference numeral 174 in the attached figure, the network device can send the second management plane service to another server device (e.g., providing the second management plane service to a second copy of the service of another NFV service line card hosted by the other server device).

[0065] In this way, a first copy of a process (e.g., a stateful process) of an NFV service line card hosted by a server device and a second copy of a process of another NFV service line card hosted by another server device can exchange state information. In some implementations, one copy of the process can be a backup copy of the process (e.g., operating in standby mode) that serves as the primary copy of the process (e.g., operating in active mode). Therefore, if the primary copy fails or is otherwise not operating in active mode, the network device can utilize the backup copy of the process (e.g., make the backup copy of the process operate in active mode). This allows the network device to provide improved performance (e.g., compared to network devices that do not utilize backup process functionality). Furthermore, because the backup copy already has the current state information of the primary copy of the process, a normal switch to the backup process achieves high availability of the network device, which further improves the performance of the network device (e.g., because the downtime associated with switching from the primary copy of the process to the backup copy of the process is very short).

[0066] In some implementations, the server device may host one or more services of the NFV service line card. A management system (e.g., an NMS running in a cloud environment) may communicate with the server device, for example, to perform one or more management or configuration operations associated with one or more services of the NFV service line card. The management system may communicate with the server device (e.g., with one or more services of the NFC service line card) via a network device (e.g., via one or more connections between the network device and the server device). Alternatively, the management system may communicate directly with the server device (e.g., with one or more services of the NFC service line card), for example, via one or more connections between the server device and the management system. Thus, the management system has more than one way to communicate with the server device and / or the one or more services of the NFC service line card provided by the server device. This improves the performance and / or efficiency of the server device and / or the one or more services of the NFC service line card, which is related to the performance of one or more management or configuration operations.

[0067] As mentioned above, Figures 1A to 1H Provided only as one or more examples. Other examples may be provided in conjunction with... Figures 1A to 1H The descriptions are different. Figures 1A to 1H The number and arrangement of the equipment shown are provided as one or more examples. In fact, with... Figures 1A to 1H Compared to the equipment shown, there may be additional equipment, fewer equipment, different equipment, or equipment with different arrangements. Furthermore, Figures 1A to 1H The two or more devices shown can be implemented within a single device, or Figures 1A to 1H The single device shown can be implemented as multiple distributed devices. Additional or alternative locations, Figures 1A to 1H A group of devices (e.g., one or more devices) can perform actions described by Figures 1A to 1H Another set of devices performs one or more functions.

[0068] Figure 2 This is a diagram illustrating an example environment 200 in which the systems and / or methods described herein can be implemented. For example... Figure 2 As shown, environment 200 may include network device 210, NFV system 220, multiple server devices 230, and network 240. The devices and / or components of environment 200 may be interconnected via wired and / or wireless connections.

[0069] Network device 210 may include one or more devices capable of receiving, processing, storing, routing, and / or providing services (e.g., packets and / or other information or metadata) in the manner described herein. For example, network device 210 may include routers such as label switching routers (LSRs), label edge routers (LERs), ingress routers, egress routers, provider routers (e.g., provider edge routers or provider core routers), virtual routers, or other types of routers. Additionally or alternatively, network device 210 may include gateways, switches, firewalls, hubs, bridges, reverse proxies, servers (e.g., proxy servers, cloud servers, or data center servers), load balancers, and / or similar devices. In some implementations, network device 210 may be a physical device implemented within a enclosure such as a chassis. In some implementations, network device 210 may be a virtual device implemented by one or more computing devices in a cloud computing environment or data center. In some implementations, a group of network devices 210 may be a group of data center nodes used to route service flows through the network. Network device 210 may include multiple ports (e.g., multiple ports each supporting data speeds of 100 gigabits per second (Gbps), 200 Gbps, 400 Gbps, 600 Gbps, 800 Gbps, and / or 1000 Gbps).

[0070] NFV system 220 may include a platform or environment that virtualizes network node functions into building blocks that can be connected or linked together to create services, such as security services, business analytics services, caching services, and / or code transformation services. NFV system 220 may include one or more Virtualized Network Functions (VNFs), including virtual machines (VMs) and / or Linux containers. NFV system 220 may include communication devices and / or computing devices. For example, NFV system 220 may include servers such as edge computing servers, application servers, client servers, web servers, database servers, host servers, proxy servers, virtual servers (e.g., executing on computing hardware), or servers in cloud computing systems. In some implementations, NFV system 220 includes computing hardware used in cloud computing environments, such as multiple server devices 230.

[0071] Server device 230 may include one or more devices (e.g., an NFV service line card as network device 210) capable of receiving, generating, storing, processing, providing, and / or routing services, as described elsewhere herein. Server device 230 may include communication devices and / or computing devices. For example, server device 230 may include servers such as application servers, client servers, web servers, database servers, host servers, proxy servers, virtual servers (e.g., those executing on computing hardware), or servers in cloud computing systems. In some implementations, server device 230 may include computing hardware used in a cloud computing environment.

[0072] Network 240 includes one or more wired and / or wireless networks. For example, network 240 may include cellular networks, public land mobile networks (PLMNs), local area networks (LANs), wide area networks (WANs), private networks, the Internet, and / or combinations of these or other types of networks. Network 240 allows communication between devices in environment 200.

[0073] Figure 2 The number and arrangement of devices and networks shown are provided as examples. In reality, there may be additional devices and / or networks, fewer devices and / or networks, different devices and / or networks, or [other arrangements]. Figure 2 The equipment and / or networks shown are arranged differently. Furthermore, Figure 2 The two or more devices shown can be implemented within a single device, or Figure 2 The single device shown can be implemented as multiple distributed devices. Additionally or alternatively, a group of devices in environment 200 (e.g., one or more devices) can perform one or more functions described as being performed by another group of devices in environment 200.

[0074] Figure 3 This is a diagram illustrating example components of device 300 associated with promoting the resilience of network devices. Device 300 may correspond to network device 210, NFV system 220, and / or server device 230. In some implementations, network device 210, NFV system 220, and / or server device 230 may include one or more devices 300 and / or one or more components of device 300. Figure 3 As shown, device 300 may include bus 310, processor 320, memory 330, input component 340, output component 350, and communication component 360.

[0075] Bus 310 may include one or more components that enable wired and / or wireless communication between components of device 300. Bus 310 can... Figure 3Two or more components are coupled together, for example, through operational coupling, communication coupling, electronic coupling, and / or electrical coupling. Processor 320 may include a central processing unit, graphics processing unit, microprocessor, controller, microcontroller, digital signal processor, field-programmable gate array, application-specific integrated circuit, and / or other types of processing components. Processor 320 is implemented in hardware, firmware, or a combination of hardware and software. In some implementations, processor 320 may include one or more processors capable of being programmed to perform one or more operations or processes described elsewhere herein.

[0076] Memory 330 may include volatile and / or non-volatile memory. For example, memory 330 may include random access memory (RAM), read-only memory (ROM), hard disk drive, and / or other types of memory (e.g., flash memory, magnetic storage, and / or optical storage). Memory 330 may include internal memory (e.g., RAM, ROM, or hard disk drive) and / or removable memory (e.g., removable via a universal serial bus). Memory 330 may be a non-transient computer-readable medium. Memory 330 stores information, instructions, and / or software (e.g., one or more software applications) related to the operation of device 300. In some implementations, memory 330 may include one or more memories such as those coupled to one or more processors (e.g., processor 320) via bus 310.

[0077] Input component 340 enables device 300 to receive input, such as user input and / or sensed input. For example, input component 340 may include a touchscreen, keyboard, keypad, mouse, button, microphone, switch, sensor, GPS sensor, accelerometer, gyroscope, and / or actuator. Output component 350 enables device 300 to provide output, for example, via a display, speaker, and / or light-emitting diode. Communication component 360 enables device 300 to communicate with other devices via a wired and / or wireless connection. For example, communication component 360 may include a receiver, transmitter, transceiver, modem, network interface card, and / or antenna.

[0078] Device 300 can perform one or more of the operations or procedures described herein. For example, a non-transient computer-readable medium (e.g., memory 330) can store a set of instructions (e.g., one or more instructions or code) that can be executed by processor 320. Processor 320 can execute the set of instructions to perform one or more of the operations or procedures described herein. In some implementations, execution of the set of instructions by one or more processors 320 causes one or more processors 320 and / or device 300 to perform one or more of the operations or procedures described herein. In some implementations, hardwired circuitry is used in place of instructions or in combination with instructions to perform one or more of the operations or procedures described herein. Additionally or alternatively, processor 320 can be configured to perform one or more of the operations or procedures described herein. Therefore, the implementations described herein are not limited to any particular combination of hardware circuitry and software.

[0079] Figure 3 The number and arrangement of components shown are provided as an example. Device 300 may include components related to... Figure 3 The components shown may be additional components, fewer components, different components, or components with different arrangements. Additionally or alternatively, a set of components of device 300 (e.g., one or more components) may perform one or more functions described as being performed by another set of components of device 300.

[0080] Figure 4 This is a diagram illustrating example components of device 400 associated with promoting the resilience of network devices. Device 400 may correspond to network device 210, NFV system 220, and / or server device 230. In some implementations, network device 210, NFV system 220, and / or server device 230 may include one or more devices 400 and / or one or more components of device 400. Figure 4 As shown, device 400 may include one or more input components 410-1 to 410-B (B≥1) (hereinafter collectively referred to as input components 410, and individually referred to as input components 410), switching component 420, one or more output components 430-1 to 430-C (C≥1) (hereinafter collectively referred to as output components 430, and individually referred to as output components 430), and controller 440.

[0081] Input component 410 may be one or more attachment points for a physical link and one or more entry points for incoming traffic (e.g., packets). Input component 410 may process incoming traffic, for example, by performing data link layer encapsulation or decapsulation. In some implementations, input component 410 may transmit and / or receive packets. In some implementations, input component 410 may include an input line card that includes one or more packet processing components (e.g., in the form of integrated circuits), such as one or more interface cards (IFCs), packet forwarding components, line card controller components, input ports, processors, memory, and / or input queues. In some implementations, device 400 may include one or more input components 410.

[0082] Switching component 420 interconnects input component 410 with output component 430. In some implementations, switching component 420 may be implemented via one or more crossbar switches, via a bus, and / or utilizing shared memory. Shared memory may be used as a temporary buffer to store packets from input component 410 before they are eventually scheduled to be transmitted to output component 430. In some implementations, switching component 420 enables input component 410, output component 430, and / or controller 440 to communicate with each other.

[0083] Output component 430 can store packets and schedule packets for transmission over the output physical link. Output component 430 can support data link layer encapsulation or decapsulation, and / or various higher-level protocols. In some implementations, output component 430 can send and / or receive packets. In some implementations, output component 430 may include an output line card that includes one or more packet processing components (e.g., in the form of integrated circuits), such as one or more IFCs, packet forwarding components, line card controller components, output ports, processors, memory, and / or output queues. In some implementations, device 400 may include one or more output components 430. In some implementations, input component 410 and output component 430 may be implemented by the same set of components (e.g., the input / output component may be a combination of input component 410 and output component 430).

[0084] Controller 440 includes processors in the form of, for example, CPUs, GPUs, APUs, microprocessors, microcontrollers, DSPs, FPGAs, ASICs, and / or other types of processors. The processor is implemented in hardware, firmware, or a combination of hardware and software. In some implementations, controller 440 may include one or more processors that can be programmed to perform functions.

[0085] In some implementations, controller 440 may include RAM, ROM, and / or another type of dynamic or static storage device (e.g., flash memory, magnetic storage, optical storage, etc.) that stores information and / or instructions for use by controller 440.

[0086] In some implementations, controller 440 can communicate with other devices, networks, and / or systems connected to device 400 to exchange information about the network topology. Controller 440 can create routing tables based on the network topology information, create forwarding tables based on the routing tables, and forward the forwarding tables to input component 410 and / or output component 430. Input component 410 and / or output component 430 can use the forwarding tables to perform route looks for incoming and / or outgoing packets.

[0087] Controller 440 may execute one or more processes described herein. Controller 440 may execute these processes in response to the execution of software instructions stored in a non-transitory computer-readable medium. A computer-readable medium is defined herein as a non-transitory memory device. A memory device includes memory space within a single physical memory device or memory space distributed across multiple physical memory devices.

[0088] Software instructions may be read from another computer-readable medium or from another device via a communication interface into the memory and / or storage unit associated with controller 440. When executed, the software instructions stored in the memory and / or storage unit associated with controller 440 may cause controller 440 to perform one or more processes described herein. Additionally or alternatively, hard-wired circuitry may be used in place of or in conjunction with the software instructions to perform one or more processes described herein. Therefore, the implementation described herein is not limited to any particular combination of hardware circuitry and software.

[0089] Figure 4 The number and arrangement of components shown are provided as an example. In practice, device 400 may include components related to... Figure 4 The components shown may be additional components, fewer components, different components, or components arranged differently compared to the components shown. Additionally or alternatively, a set of components of device 400 (e.g., one or more components) may perform one or more functions described as being performed by another set of components of device 400.

[0090] Figure 5 This is a flowchart of an exemplary process 500 associated with promoting the resilience of network devices. In some implementations, Figure 5 One or more processing blocks are executed by a network device (e.g., network device 210). In some implementations, Figure 5One or more processing frames are performed by another device or a group of devices that are separate from or include network devices such as NFV systems (e.g., NFV system 220) and / or server devices (e.g., server device 230). Additionally or alternatively, Figure 5 One or more processing blocks may be executed by one or more components of device 300, such as processor 320, memory 330, input component 340, output component 350, and / or communication component 360; one or more components of device 400, such as input component 410, switching component 420, output component 430, and / or controller 440; and / or one or more other components.

[0091] like Figure 5 As shown, process 500 may include sending a first service (block 510). For example, as described above, a network device may send a first service. In some implementations, the network device may send the first service to a server device via a first port of the network device. In some implementations, the server device provides the network device with an NFV service line card. In some implementations, the first service is at least one of the following: a first management plane service associated with the NFV service line card, a first control plane service associated with the NFV service line card, or a first data plane service associated with the NFV service line card.

[0092] like Figure 5 As further shown, process 500 may include receiving a second service (block 520). For example, as described above, the network device may receive the second service. In some implementations, the network device may receive the second service via a second port of the network device and from a server device. In some implementations, the second service is at least one of the following: a second management plane service associated with an NFV service line card, a second control plane service associated with an NFV service line card, or a second data plane service associated with an NFV service line card.

[0093] Process 500 may include additional implementations, such as any single implementation or any combination of implementations of one or more other processes described below and / or described elsewhere herein.

[0094] In the first implementation, the server device is associated with the NFV system.

[0095] In the second implementation, either alone or in combination with the first implementation, the server device hosts one or more services of the NFV service line card; the first service is a first management plane service and includes one or more request messages related to configuring at least one of the one or more services of the NFV service line card; and the second service is a second management plane service and includes one or more response messages related to configuring the at least one service.

[0096] In the third implementation, either alone or in combination with one or more of the first and second implementations, the first service is a first management plane service and includes one or more request messages related to the health status of the server device, and the second service is a second management plane service and includes one or more response messages related to the health status of the server device.

[0097] In the fourth implementation, the server device hosts one or more services of the NFV service line card, either alone or in combination with one or more of the first to third implementations; the first service is a first control plane service and includes one or more first activity messages associated with a specific service among the one or more services of the NFV service line card; and the second service is a second control plane service and includes one or more second activity messages associated with a specific service.

[0098] In the fifth implementation, either alone or in combination with one or more of the first to fourth implementations, process 500 includes determining, based on a second service, that an NFV service line card for a specific service provided via a server device is unavailable; and sending a third service to another server device via a third port of the network device, wherein the other server device provides another NFV service line card for the network device, and the other server device hosts one or more services of the other NFV service line card, wherein the one or more services of the other NFV service line card include a copy of the specific service operating in standby mode, and wherein the third service is a third management plane service associated with the other NFV service line card, and includes one or more request messages related to enabling a copy of the specific service to operate in active mode on the other NFV service line card.

[0099] In the sixth implementation, either alone or in combination with one or more of the first to fifth implementations, the server device hosts one or more services of the NFV service line card, the first service being a first data plane service and the second service being a second data plane service, wherein the second service is generated by at least one service of the NFV service line card that processes the first service.

[0100] In the seventh implementation, either alone or in combination with one or more of the first to sixth implementations, a server device hosts one or more services of an NFV service line card, including a first copy of the service; another server device provides another NFV service line card of the network device, wherein the other server device hosts one or more services of the other NFV service line card, including a second copy of the service; and the first service is a first data plane service, and the second service is a second data plane service, wherein process 500 includes: receiving the first service via a third port before sending the first service; determining that a service is to be applied to the first service; and using load balancing technology and based on determining that a service is to be applied to the first service, determining that a first copy of the service is to be applied to the first service.

[0101] In the eighth implementation, either alone or in combination with one or more of the first to seventh implementations, a server device hosts one or more services of an NFV service line card, which includes a first copy of the service; another server device provides another NFV service line card of the network device, wherein the other server device hosts one or more services of the other NFV service line card, which includes a second copy of the service, the first service being a first management plane service and including one or more status update messages related to the status of the second copy of the service of the other NFV service line card, wherein the first service is generated by the second copy of the service of the other NFV service line card and is sent from the other server device to the network device via a third port of the network device; and the second service being a second management plane service and including one or more status response messages related to the status of the second copy of the service of the other NFV service line card.

[0102] Although Figure 5 An example box of process 500 is shown, but in some implementations, process 500 includes... Figure 5 The boxes depicted in the diagram may be fewer, different, or arranged differently compared to additional boxes. Alternatively, two or more boxes of process 500 may be executed in parallel.

[0103] Figure 6 This is a flowchart of an exemplary process 600 associated with promoting the resilience of network devices. In some implementations, Figure 6 One or more processing blocks are executed by a server device (e.g., server device 230). In some implementations, Figure 6 One or more processing frames are executed by another device or group of devices that are separate from or include the server device, such as an NFV system (e.g., NFV system 220) and / or a network device (e.g., network device 210). Additionally or alternatively, Figure 6One or more processing blocks may be executed by one or more components of device 300, such as processor 320, memory 330, input component 340, output component 350, and / or communication component 360; one or more components of device 400, such as input component 410, switching component 420, output component 430, and / or controller 440; and / or one or more other components.

[0104] like Figure 6 As shown, process 600 may include receiving a first service (block 610). For example, as described above, a server device may receive the first service. In some implementations, the server device may receive the first service from a network device via a first port of the server device. In some implementations, the server device provides an NFV service line card for the network device. In some implementations, the first service is associated with an NFV service line card.

[0105] like Figure 6 As further shown, process 600 may include generating a second service (block 620). For example, as described above, the server device may generate a second service. In some implementations, the server device may generate a second service based on a first service, and the second service may be associated with an NFV service line card.

[0106] like Figure 6 As further shown, process 600 may include sending a second service (block 630). For example, as described above, the server device may send the second service. In some implementations, the server device may send the second service to the network device via a second port of the server device.

[0107] Process 600 may include additional implementations, such as any single implementation or any combination of implementations of one or more other processes described below and / or described elsewhere herein.

[0108] In the first implementation, the server device is associated with the NFV system.

[0109] In the second implementation, either alone or in combination with the first implementation, the first service includes one or more request messages related to at least one of one or more services configured on an NFV service line card hosted by a server device, and the second service includes one or more response messages related to configuring at least one service.

[0110] In the third implementation, either alone or in combination with one or more of the first and second implementations, the first service includes one or more request messages related to the health status of the server device, and the second service includes one or more response messages related to the health status of the server device.

[0111] In the fourth implementation, either alone or in combination with one or more of the first to third implementations, the first service includes one or more first data messages, and the second service includes one or more second data messages.

[0112] Although Figure 6 An example block of process 600 is shown, but in some implementations, process 600 includes... Figure 6 The boxes depicted in the diagram may be fewer, different, or arranged differently compared to additional boxes. Alternatively, two or more boxes of process 600 may be executed in parallel.

[0113] The foregoing disclosure provides illustrations and descriptions, but is not intended to be exhaustive or to limit implementations to the precise forms disclosed. Modifications and variations can be made based on the foregoing disclosure, or from the practice of implementation.

[0114] As used herein, services or content may include a set of packets. A packet may refer to a communication structure used to transmit information, such as a Protocol Data Unit (PDU), Service Data Unit (SDU), network packet, datagram, segment, message, block, frame (e.g., Ethernet frame), a portion of any of the above, and / or another type of formatted or unformatted data unit that can be transmitted over a network.

[0115] As used herein, the term "component" is intended to be broadly interpreted as hardware, firmware, or a combination of hardware and software. Clearly, the systems and / or methods described herein can be implemented in various forms of hardware, firmware, and / or combinations of hardware and software. The actual dedicated control hardware or software code used to implement these systems and / or methods is not a limitation on the implementation. Therefore, this document describes the operation and behavior of the systems and / or methods without reference to any specific software code—it should be understood that software and hardware can be used to implement the systems and / or methods based on the description herein.

[0116] Even if a particular combination of features is recited in the claims and / or disclosed in the specification, these combinations are not intended to limit the disclosure of various implementations. In fact, many of these features can be combined in ways not specifically recited in the claims and / or disclosed in the specification. Although each dependent claim listed below may directly depend on only one claim, the disclosure of various implementations includes every dependent claim combined with all other claims in the claim set. As used herein, the phrase “at least one” in the list of items refers to any combination of these items, including a single member. As an example, “at least one of the following: a, b, or c” is intended to cover a, b, c, ab, ac, bc, and abc, as well as any combination of multiple identical items.

[0117] Elements, actions, or instructions used herein should not be construed as critical or necessary unless explicitly stated otherwise. Furthermore, as used herein, the articles “a” and “one” are intended to include one or more items and are interchangeable with “one or more.” Furthermore, as used herein, the article “the” is intended to include one or more items associated with the article “the” and is interchangeable with “the one or more.” Furthermore, as used herein, the term “set” is intended to include one or more items (e.g., related items, unrelated items, or a combination of related and unrelated items) and is interchangeable with “one or more.” Where only one item is referred to, the phrase “only one” or similar language is used. Furthermore, as used herein, the terms “has,” “have,” “having,” etc., are intended to be open-ended terms. Furthermore, the phrase “based on” is intended to mean “at least partially based on” unless explicitly stated otherwise. Furthermore, as used herein, the term “or” is intended to be inclusive when used in series and is interchangeable with “and / or” unless otherwise explicitly stated (e.g., if used in combination with “any one” or “only one”).

Claims

1. A network device, comprising: One or more memory units; as well as One or more processors, used to: The first service is sent to the server device via the first port of the network device. The server device provides the network function virtualization (NFV) service line card for the network device, and The first service is at least one of the following: a first management plane service associated with the NFV service line card, a first control plane service associated with the NFV service line card, or a first data plane service associated with the NFV service line card; and The second service is received from the server device via the second port of the network device. The second service is at least one of the following: a second management plane service associated with the NFV service line card, a second control plane service associated with the NFV service line card, or a second data plane service associated with the NFV service line card.

2. The network device according to claim 1, wherein the server device is associated with an NFV system.

3. The network device according to claim 1, wherein: The server device hosts one or more services of the NFV service line card; The first service is the first management plane service, and includes one or more request messages related to at least one of the one or more services configured in the NFV service line card; and The second service is the second management plane service, and includes one or more response messages related to configuring the at least one service.

4. The network device according to claim 1, wherein: The first service is the first management plane service, and includes one or more request messages related to the health status of the server device; and The second service is the second management plane service, and includes one or more response messages related to the health status of the server device.

5. The network device according to claim 1, wherein: The server device hosts one or more services of the NFV service line card; The first service is the first control plane service, and includes one or more first activity messages associated with a specific service among the one or more services of the NFV service line card; and The second service is the second control plane service and includes one or more second activity messages associated with the specific service.

6. The network device of claim 5, wherein the one or more processors are further configured to: Based on the second service, it is determined that the specific service is unavailable via the NFV service line card provided by the server device; and The third service is sent to another server device via the third port of the network device. The other server device provides another NFV service line card for the network device, and the other server device hosts one or more services of the other NFV service line card. The one or more services of the other NFV service line card include a copy of the specific service, the copy of the specific service operating in standby mode, and The third service is a third management plane service associated with the other NFV service line card and includes one or more request messages related to enabling the copy of the specific service to operate in active mode on the other NFV service line card.

7. The network device according to claim 1, wherein: The server device hosts one or more services of the NFV service line card; The first service is the first data plane service; and The second service is the second data plane service. The second service is generated by at least one service of the NFV service line card that processes the first service.

8. The network device according to claim 1, wherein: The server device hosts one or more services of the NFV service line card, and the one or more services of the NFV service line card include a first copy of the service; Another server device provides another NFV service line card for the network device; The other server device hosts one or more services of the other NFV service line card, and the one or more services of the other NFV service line card include a second copy of the service; and The first service is the first data plane service, and the second service is the second data plane service. The one or more processors mentioned above are further used to: The first service is received via the third port before the first service is sent. It is determined that the service is to be applied to the first business; as well as Using load balancing technology and based on the determination that the service should be applied to the first service, it is determined that the first replica of the service should be applied to the first service. The determination that the first copy of the service is to be applied to the first service causes the one or more processors to send the first service to the server device via the first port.

9. The network device according to claim 1, wherein: The server device hosts one or more services of the NFV service line card, and the one or more services of the NFV service line card include a first copy of the service; Another server device provides another NFV service line card for the network device; The other server device hosts one or more services of the other NFV service line card, and the one or more services of the other NFV service line card include a second copy of the service; The first service is the first management plane service, and includes one or more status update messages related to the status of the second copy of the service on the other NFV service line card. The first service is generated by the second copy of the service from the other NFV service line card and is sent to the network device from the other server device via the third port of the network device; and The second service is the second management plane service and includes one or more status response messages related to the status of the second copy of the service of the other NFV service line card.

10. A non-transient computer-readable medium storing a set of instructions, the set of instructions comprising: One or more instructions, when executed by one or more processors of the network device, cause the network device to: The network device sends a first service associated with the Network Functions Virtualization (NFV) service line card of the network device to the server device via the first port of the network device, wherein the server device provides the NFV service line card. as well as The second service associated with the NFV service line card is received from the server device via the second port of the network device.

11. The non-transient computer-readable medium according to claim 10, wherein: The server device hosts one or more services of the NFV service line card; The first service includes one or more request messages related to a specific service among the one or more services configured in the NFV service line card; and The second service includes one or more response messages related to configuring the specific service.

12. The non-transient computer-readable medium of claim 10, wherein: The first service includes one or more request messages related to the health status of the server device; and The second service includes one or more response messages related to the health status of the server device.

13. The non-transient computer-readable medium according to claim 10, wherein: The server device hosts one or more services of the NFV service line card; The first service includes one or more first activity messages associated with a specific service among the one or more services of the NFV service line card; and The second service includes one or more second activity messages associated with the specific service.

14. The non-transient computer-readable medium according to claim 10, wherein: The server device hosts one or more services of the NFV service line card; The first service includes one or more first data messages; and The second service includes one or more second data messages. The second service is generated by at least one service of the NFV service line card that processes the first service.

15. The non-transient computer-readable medium according to claim 10, wherein: The server device hosts one or more services of the NFV service line card, and the one or more services of the NFV service line card include a first copy of the service; Another server device provides another NFV service line card for the network device. The other server device hosts one or more services of the other NFV service line card, and the one or more services of the other NFV service line card include a second copy of the service; The first service includes one or more status update messages related to the status of the second copy of the service on the other NFV service line card; and The second service includes one or more status response messages related to the status of the second copy of the service of the other NFV service line card.

16. A method for processing business transactions, comprising: The server device receives the first service from the network device via the first port of the server device. The server device provides the Network Functions Virtualization (NFV) service line card for the network device. The first service is associated with the NFV service line card; The server device generates a second service associated with the NFV service line card based on the first service; as well as The server device sends the second service to the network device via the second port of the server device.

17. The method of claim 16, wherein the server device is associated with an NFV system.

18. The method of claim 16, wherein: The first service includes one or more request messages related to at least one of one or more services configured by the NFV service line card hosted by the server device; and The second service includes one or more response messages related to configuring the at least one service.

19. The method of claim 16, wherein: The first service includes one or more request messages related to the health status of the server device; and The second service includes one or more response messages related to the health status of the server device.

20. The method of claim 16, wherein: The first service includes one or more first data messages; and The second service includes one or more second data messages.

Citation Information

Patent Citations

  • Increasing failure coverage of mofrr with dataplane notifications

    US20150172070A1

  • Method and apparatus for performing hitless update of line cards of a network device

    US20170168803A1