A software forwarding based general network device forwarding system and method

CN116319586BActive Publication Date: 2026-08-21NANJING PANDA HANDA TECH
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202310305052.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-03-27
Publication Date
2026-08-21
Estimated Expiration
2043-03-27

AI Technical Summary

Technical Problem

但通用服务器并非专为网络报文转发而设计,所以转发性能较弱,无法满足大带宽的转发需求

Benefits of technology

[0037] Step 10: Network traffic is forwarded in a user-customized manner through dedicated forwarding software within the domain;

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116319586B_ABST
    Figure CN116319586B_ABST
Patent Text Reader

Abstract

The application discloses a general network equipment forwarding system and method based on software forwarding. The forwarding network comprises a general server, a switch, a plurality of general network equipments and special forwarding software. The forwarding method is as follows: network traffic is received by a service port of the general network equipment, the service port of the general network equipment performs standard two-layer and three-layer forwarding on the general network traffic, if some traffic is selected by selected flow logic, the traffic is sent to the general server through a service channel, and user customized forwarding is performed by using the special forwarding software. The application has the advantages of high-speed data forwarding and the advantages of functional expansion of small customized protocol rules, under the premise of not greatly improving the implementation cost, the application guarantees high-performance network forwarding, increases the flexibility of forwarding, expands the application scene of the general network equipment, and improves the forwarding efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the technical field of data service forwarding implementation methods in communication systems, and in particular to a general network device forwarding system and method based on software forwarding. Background Technology

[0002] Network devices, acting as forwarding nodes in a network, receive network traffic from their network interfaces, parse the header of each network packet, locate the outgoing interface for that packet based on the forwarding table entries within the network device, and then forward the packet out through that interface. In a network device, the part responsible for parsing packet headers and looking up forwarding table entries is called the forwarding plane, while the part responsible for building the forwarding table entries according to network protocols is called the control plane. The forwarding plane of a network device can be implemented in different ways, each differing in forwarding performance, flexibility, and implementation cost.

[0003] Layer 3 switches are common general-purpose network devices. Internally, they use standard forwarding chips to implement their forwarding plane. Because they use standard forwarding chips for hardware forwarding, Layer 3 switches can achieve bidirectional line-speed forwarding on all interfaces, resulting in extremely high forwarding performance. Since standard forwarding chips implement universal forwarding functions, chip manufacturers often mass-produce them, leading to lower costs. However, the internal forwarding process of standard forwarding chips is fixed and cannot be modified or expanded according to user needs, resulting in poor flexibility.

[0004] General-purpose servers running dedicated forwarding software can also forward network traffic; their forwarding plane is implemented by this dedicated software. The software forwarding plane offers high flexibility, allowing users to freely customize the forwarding process. However, because general-purpose servers are general-purpose computing products, in addition to running dedicated forwarding software, they also run operating systems, graphics displays, various I / O processing software, and other software and services, resulting in lower forwarding performance. While the price of standard servers has gradually decreased due to their large shipment volume, it remains significantly higher than that of general-purpose network equipment such as Layer 3 switches.

[0005] Using an FPGA as the forwarding plane is another implementation method. This method uses an FPGA as the hardware carrier for the forwarding plane, and developers use hardware description languages ​​to develop the FPGA's forwarding flow. Because hardware forwarding is performed using an FPGA chip, the forwarding performance is very high, and the forwarding flow is written by developers, allowing for free customization according to user needs, resulting in high flexibility. However, FPGA chips are much more expensive than standard switching chips and general-purpose CPUs, and developing the forwarding flow using hardware description languages ​​is much more difficult than developing dedicated forwarding software. Therefore, the overall cost of implementing an FPGA-based forwarding plane solution is higher, and the development cycle is longer.

[0006] All three of the above-mentioned forwarding plane implementation methods can achieve the function of forwarding network packets, but each method has its limitations when used alone.

[0007] Layer 3 switches that use standard forwarding chips have a fixed forwarding process for network packets. They rely heavily on the functions implemented by the standard forwarding chips and can only perform fixed forwarding processing according to standard protocols. They cannot flexibly expand new processing processes according to user needs.

[0008] General-purpose servers running dedicated forwarding software can also forward network traffic. However, general-purpose servers are not designed specifically for network packet forwarding, so their forwarding performance is weak and cannot meet the demands of high-bandwidth forwarding.

[0009] Network devices that use FPGAs as the forwarding plane have the advantages of high forwarding performance and high flexibility, but their overall implementation cost is high and the development cycle is long. Summary of the Invention

[0010] The purpose of this invention is to provide a general network device forwarding system and method based on software forwarding, which features low implementation cost, high network forwarding performance, strong forwarding flexibility, and customizable packet forwarding rules.

[0011] The technical solution to achieve the purpose of this invention is: a general network device forwarding system based on software forwarding, comprising a general server, a switch, multiple general network devices and dedicated forwarding software;

[0012] The switch is a Layer 2 switch, with the first layer being an access switch and the second layer being an uplink switch;

[0013] The multiple general-purpose network devices are connected to the access switch via Ethernet cables through uplink ports, and the uplink switch is connected to the network port of the general-purpose server via Ethernet cables; the IP addresses of the uplink ports of each general-purpose network device and the network port of the general-purpose server are configured in the same network segment and can access each other.

[0014] The general-purpose server is equipped with dedicated forwarding software, which includes multiple intra-domain dedicated forwarding software and one inter-domain dedicated forwarding software. The intra-domain dedicated forwarding software performs customized forwarding for specific traffic within the general-purpose network devices. The inter-domain dedicated forwarding software performs customized forwarding for specific traffic between different general-purpose network devices.

[0015] Furthermore, the access switch is used to connect multiple general-purpose network devices to a general-purpose server, performing only Layer 2 forwarding.

[0016] Furthermore, the service ports of the general network device perform standard Layer 2 and Layer 3 forwarding for ordinary network traffic; traffic selected by the flow selection logic is sent to the general server through the service channel and then forwarded in a user-customized manner using dedicated forwarding software.

[0017] Furthermore, each domain-specific forwarding software corresponds to a general-purpose network device, which performs customized forwarding for specific traffic within the general-purpose network device.

[0018] Furthermore, the service channel between the dedicated forwarding software and the general network device is used to send the traffic selected by the soft forwarding logic of the general network device to the dedicated forwarding software running on the general server, and to send the traffic sent by the dedicated forwarding software to the general network device.

[0019] Furthermore, the method for establishing a service channel between the dedicated forwarding software and the general network equipment is as follows:

[0020] Based on the forwarding function requirements of the dedicated forwarding software, the service channel is implemented as a VxLAN Layer 2 tunnel using VxLAN technology supported by general network equipment or as a Layer 3 tunnel using GRE technology. An uplink service channel interface is generated on the general network equipment, and a downlink service channel interface is generated in the dedicated forwarding software to cooperate with the forwarding software to realize the user-customized forwarding logic. For complex dedicated forwarding software, multiple VxLAN tunnels and GRE tunnels are created, and the generated multiple service channel interfaces are added to the network forwarding logic to realize the user's forwarding requirements.

[0021] Furthermore, the soft forwarding and flow selection logic of the general-purpose network device operates as follows:

[0022] Based on user needs, the traffic filtering methods supported by the general forwarding device are used to match the traffic received by the service interface at different forwarding stages. If some traffic is selected by the traffic filtering method or its combination, the selected traffic is sent to the uplink service channel interface of the general network device using policy layer 2 forwarding, policy layer 3 forwarding and port mirroring customized forwarding rules, and then sent to the dedicated forwarding software for customized forwarding.

[0023] Furthermore, the traffic filtering methods supported by the general forwarding device include ACL, extended ACL, static MAC entries, static routing entries, and port mirroring methods.

[0024] Furthermore, the working principle of the dedicated forwarding software is as follows:

[0025] The dedicated forwarding software employs Linux Namespace technology to implement a network protocol stack independent of the server operating system. It uses the service channel interface as the interface for sending and receiving network traffic and implements user-customized forwarding functions through software forwarding. Because it uses software forwarding, the entire forwarding logic is fully customizable and extensible. Based on user needs, multiple virtual standard bridges, virtual routers, and OpenFlow bridges can be generated under the Namespace, and their interconnection relationships can be customized. It also supports standard or user-customized IPSec, SSLVPN, and NAT standard extensions, and can fully customize the forwarding logic using the OpenFlow protocol to achieve the forwarding functions required by the user.

[0026] Each NameSpace serves as a dedicated intra-domain forwarding software for a general-purpose network device, extending the forwarding functionality of that device. It can also generate independent NameSpaces to customize dedicated inter-domain forwarding software between general-purpose network devices. The forwarding functionality of each NameSpace can be dynamically added, removed, and customized based on the online / offline status of general-purpose network devices and user needs.

[0027] A general network device forwarding method based on software forwarding includes the following steps:

[0028] Step 1: The general network device's service port receives network traffic;

[0029] Step 2: The standard forwarding logic of general network devices executes the standard forwarding process, while the soft forwarding flow selection logic selects the traffic that needs to be sent to the dedicated forwarding software for customized forwarding according to specific rules.

[0030] Step 3: The traffic selected for dedicated software forwarding is sent to the dedicated forwarding software within the domain through the business channel;

[0031] Step 4: Network traffic is forwarded in a user-customized manner through dedicated forwarding software within the domain;

[0032] Step 5: When certain network traffic is forwarded by the dedicated forwarding software within the domain, and its outgoing interface is the service channel interface of this dedicated forwarding software, then this network traffic is sent to the general network device through the service channel interface.

[0033] Step 6: Network traffic is sent out from the service port of the general forwarding device;

[0034] Step 7: When certain network traffic is forwarded by intra-domain dedicated forwarding software and its outgoing interface is the interface connected to inter-domain dedicated forwarding software, then this network traffic is sent to the inter-domain dedicated forwarding software.

[0035] Step 8: Network traffic is forwarded in a user-customized manner through dedicated inter-domain forwarding software;

[0036] Step 9: Network traffic is forwarded through dedicated inter-domain forwarding software. The outgoing interface of this network traffic is found, and it is determined which dedicated intra-domain forwarding software and general network device correspond to it. This traffic is then sent to the corresponding dedicated intra-domain forwarding software.

[0037] Step 10: Network traffic is forwarded in a user-customized manner through dedicated forwarding software within the domain;

[0038] Step 11: Network traffic is distributed to general network devices through the service channel interface;

[0039] Step 12: Network traffic is sent out from the service port of the general forwarding device.

[0040] Compared with the prior art, the present invention has the following significant advantages: (1) It uses dedicated forwarding software to implement non-general forwarding rules and processes, which expands the functions of general network devices and can combine the advantages of high-speed data forwarding and the functional expansion of niche customized protocol rules; (2) It ensures high-performance network forwarding while increasing the flexibility of forwarding without significantly increasing the implementation cost; (3) It expands the application scenarios of general network devices and improves forwarding efficiency. Attached Figure Description

[0041] Figure 1 This is a schematic diagram of the structure of a general network device forwarding system based on software forwarding according to the present invention.

[0042] Figure 2 This is a flowchart illustrating a general network device forwarding method based on software forwarding according to the present invention. Detailed Implementation

[0043] Combination Figure 1 The present invention discloses a general network device forwarding system based on software forwarding, comprising a general server, a switch, multiple general network devices and dedicated forwarding software;

[0044] The switch is a Layer 2 switch, with the first layer being an access switch and the second layer being an uplink switch;

[0045] The multiple general-purpose network devices are connected to the access switch via Ethernet cables through uplink ports, and the uplink switch is connected to the network port of the general-purpose server via Ethernet cables; the IP addresses of the uplink ports of each general-purpose network device and the network port of the general-purpose server are configured in the same network segment and can access each other.

[0046] The general-purpose server is equipped with dedicated forwarding software, which includes multiple intra-domain dedicated forwarding software and one inter-domain dedicated forwarding software. The intra-domain dedicated forwarding software performs customized forwarding for specific traffic within the general-purpose network devices. The inter-domain dedicated forwarding software performs customized forwarding for specific traffic between different general-purpose network devices.

[0047] Furthermore, the access switch is used to connect multiple general-purpose network devices to a general-purpose server, performing only Layer 2 forwarding.

[0048] Furthermore, the service ports of the general network device perform standard Layer 2 and Layer 3 forwarding for ordinary network traffic; traffic selected by the flow selection logic is sent to the general server through the service channel and then forwarded in a user-customized manner using dedicated forwarding software.

[0049] Furthermore, each domain-specific forwarding software corresponds to a general-purpose network device, which performs customized forwarding for specific traffic within the general-purpose network device.

[0050] Furthermore, the service channel between the dedicated forwarding software and the general network device is used to send the traffic selected by the soft forwarding logic of the general network device to the dedicated forwarding software running on the general server, and to send the traffic sent by the dedicated forwarding software to the general network device.

[0051] Furthermore, the method for establishing a service channel between the dedicated forwarding software and the general network equipment is as follows:

[0052] Based on the forwarding function requirements of the dedicated forwarding software, the service channel is implemented as a VxLAN Layer 2 tunnel using VxLAN technology supported by general network equipment or as a Layer 3 tunnel using GRE technology. An uplink service channel interface is generated on the general network equipment, and a downlink service channel interface is generated in the dedicated forwarding software to cooperate with the forwarding software to realize the user-customized forwarding logic. For some complex dedicated forwarding software, multiple VxLAN tunnels and GRE tunnels can be created, and the generated multiple service channel interfaces can be added to the appropriate network forwarding logic to realize the user's forwarding requirements.

[0053] Furthermore, the soft forwarding and flow selection logic of the general-purpose network device operates as follows:

[0054] Based on user needs, the traffic filtering methods supported by the general forwarding device are used to match the traffic received by the service interface at different forwarding stages. If some traffic is selected by the traffic filtering method or its combination, the selected traffic is sent to the uplink service channel interface of the general network device using policy layer 2 forwarding, policy layer 3 forwarding and port mirroring customized forwarding rules, and then sent to the dedicated forwarding software for customized forwarding.

[0055] Furthermore, the traffic filtering methods supported by the general forwarding device include ACL, extended ACL, static MAC entries, static routing entries, and port mirroring methods.

[0056] Furthermore, the working principle of the dedicated forwarding software is as follows:

[0057] The dedicated forwarding software employs Linux Namespace technology to implement a network protocol stack independent of the server operating system. It uses the service channel interface as the interface for sending and receiving network traffic and implements user-customized forwarding functions through software forwarding. Because it uses software forwarding, the entire forwarding logic is fully customizable and extensible. Multiple virtual standard bridges, virtual routers, and OpenFlow bridges can be generated under the Namespace according to user needs, and their interconnection relationships can be customized. It also supports standard or user-customized IPSec, SSLVPN, and NAT standard extensions, and can fully customize the forwarding logic using the OpenFlow protocol to achieve the forwarding functions required by the user.

[0058] Each NameSpace serves as dedicated intra-domain forwarding software for a general-purpose network device, extending the forwarding functionality of that device. Alternatively, independent NameSpaces can be created to customize dedicated inter-domain forwarding software between general-purpose network devices. The forwarding functionality of each NameSpace can be dynamically added, removed, and customized based on the online / offline status of general-purpose network devices and user needs.

[0059] Combination Figure 2 A general network device forwarding method based on software forwarding includes the following steps:

[0060] Step 1: The general network device's service port receives network traffic;

[0061] Step 2: The standard forwarding logic of general network devices executes the standard forwarding process, while the soft forwarding flow selection logic selects the traffic that needs to be sent to the dedicated forwarding software for customized forwarding according to specific rules.

[0062] Step 3: The traffic selected for dedicated software forwarding is sent to the dedicated forwarding software within the domain through the business channel;

[0063] Step 4: Network traffic is forwarded in a user-customized manner through dedicated forwarding software within the domain;

[0064] Step 5: When certain network traffic is forwarded by the dedicated forwarding software within the domain, and its outgoing interface is the service channel interface of this dedicated forwarding software, then this network traffic is sent to the general network device through the service channel interface.

[0065] Step 6: Network traffic is sent out from the service port of the general forwarding device;

[0066] Step 7: When certain network traffic is forwarded by intra-domain dedicated forwarding software and its outgoing interface is the interface connected to inter-domain dedicated forwarding software, then this network traffic is sent to the inter-domain dedicated forwarding software.

[0067] Step 8: Network traffic is forwarded in a user-customized manner through dedicated inter-domain forwarding software;

[0068] Step 9: Network traffic is forwarded through dedicated inter-domain forwarding software. The outgoing interface of this network traffic is found, and it is determined which dedicated intra-domain forwarding software and general network device correspond to it. This traffic is then sent to the corresponding dedicated intra-domain forwarding software.

[0069] Step 10: Network traffic is forwarded in a user-customized manner through dedicated forwarding software within the domain;

[0070] Step 11: Network traffic is distributed to general network devices through the service channel interface;

[0071] Step 12: Network traffic is sent out from the service port of the general forwarding device.

[0072] This software-based forwarding extension extends the forwarding functionality of general-purpose network devices. Based on the software forwarding flow selection logic of general-purpose network devices, dedicated forwarding software, and the service channel between the general-purpose network devices and the dedicated forwarding software, support for user-customized forwarding functions is achieved. Since most network traffic forwarding occurs on the forwarding plane of the general-purpose network devices, which is implemented by standard forwarding chips and boasts high forwarding performance, a small portion of traffic requiring user-customized forwarding functions is sent to dedicated software for processing. Because the traffic requiring user-customized processing is generally small, and general-purpose servers typically have high computing power, the forwarding performance of this small portion of traffic requiring user-customized forwarding functions is also not low. Furthermore, since multiple general-purpose network devices share the same general-purpose server running the dedicated forwarding software, the increase in hardware costs is not significant.

[0073] The present invention will be further described in detail below with reference to specific embodiments.

[0074] Example

[0075] This embodiment proposes a method for extending the forwarding functionality of general network devices through software forwarding, as detailed below:

[0076] The network connection relationship in this embodiment is as follows: Figure 1As shown, multiple general-purpose network devices are connected to an access switch (Layer 2 switch) via Ethernet cables through their uplink ports. The uplink switch is then connected to the network port of a general-purpose server via Ethernet cables. The IP addresses of the uplink ports of each general-purpose network device and the network port of the general-purpose server are configured in the same network segment, allowing them to communicate with each other. The access switch connects multiple general-purpose network devices to the general-purpose server, performing only Layer 2 forwarding. The service ports of the general-purpose network devices perform standard Layer 2 and Layer 3 forwarding for ordinary network traffic. If certain traffic is selected by the flow selection logic, it is sent to the general-purpose server through the service channel, where dedicated forwarding software performs customized forwarding for the user. The dedicated forwarding software installed on the general-purpose server includes multiple intra-domain dedicated forwarding software programs and one inter-domain dedicated forwarding software program. Each intra-domain dedicated forwarding software program corresponds to one general-purpose network device, performing customized forwarding for specific traffic within the general-purpose network device. The inter-domain dedicated forwarding software performs customized forwarding for specific traffic between different general-purpose network devices.

[0077] The following provides a detailed explanation of the methods for establishing service channels between dedicated forwarding software and general network devices, the working mode of the software forwarding flow selection logic of general network devices, the working principle of dedicated forwarding software, and the overall workflow for extending the forwarding function of general network devices through software forwarding.

[0078] (1) Method for establishing a service channel between dedicated forwarding software and general network equipment

[0079] The service channel between the dedicated forwarding software and the general-purpose network equipment is used to send traffic selected by the general-purpose network equipment's soft forwarding logic to the dedicated forwarding software running on the general-purpose server, and to send traffic sent by the dedicated forwarding software back to the general-purpose network equipment. Depending on the forwarding function requirements of the dedicated forwarding software, this service channel can be implemented as a VxLAN Layer 2 tunnel using VxLAN technology supported by the general-purpose network equipment, or as a Layer 3 tunnel using GRE technology. An uplink service channel interface is generated on the general-purpose network equipment, and a downlink service channel interface is generated on the dedicated forwarding software to cooperate with the forwarding software to implement user-customized forwarding logic. For some complex dedicated forwarding software, multiple VxLAN tunnels and GRE tunnels can also be created, and appropriate network forwarding logic (such as bridges, routing modules, etc.) can be added to the generated multiple service channel interfaces to meet user forwarding requirements. The core of this service channel establishment method lies in the ability to flexibly and dynamically change the type and number of service channels and add appropriate network forwarding logic according to the needs of the dedicated forwarding software.

[0080] (2) Working mode of soft forwarding and flow selection logic of general network devices

[0081] Based on user needs, traffic filtering methods supported by general-purpose forwarding devices, such as ACLs, extended ACLs, static MAC entries, static routing entries, and port mirroring, are used to match traffic received by the service interface at different forwarding stages. If certain traffic is selected by the above traffic filtering methods (or combinations thereof), customizable forwarding rules such as Layer 2 policy forwarding, Layer 3 policy pre-emption, and port mirroring are used to send the selected traffic to the uplink service channel interface of the general-purpose network device, and then to the dedicated forwarding software for customized forwarding. The core of the soft forwarding traffic selection logic lies in the cooperation between the traffic filtering methods supported by general-purpose network devices and customizable forwarding rules to achieve soft forwarding traffic selection.

[0082] (3) Working principle of dedicated forwarding software

[0083] The dedicated forwarding software employs Linux Namespace technology to implement a network protocol stack independent of the server operating system. It uses the service channel interface as the interface for sending and receiving network traffic and implements user-customized forwarding functions through software forwarding. Because it uses software forwarding, the entire forwarding logic is fully customizable and extensible. Multiple virtual standard bridges, virtual routers, and OpenFlow bridges can be generated under the Namespace according to user needs, and their interconnection relationships can be customized. It also supports standard or user-customized standard extension functions such as IPSec, SSLVPN, and NAT, and can fully customize the forwarding logic using the OpenFlow protocol to achieve the forwarding functions required by the user.

[0084] Each NameSpace serves as dedicated forwarding software for a general-purpose network device (referred to as intra-domain dedicated forwarding software), extending the forwarding capabilities of that device. Independent NameSpaces can also be created to customize dedicated forwarding functions between general-purpose network devices (referred to as inter-domain dedicated forwarding software). The forwarding functions of each NameSpace can be dynamically added, removed, and customized based on the online / offline status of general-purpose network devices and user needs.

[0085] The core of dedicated forwarding software lies in its ability to flexibly and dynamically generate forwarding logic based on user needs using software such as virtual standard bridges, virtual routers, OpenFlow bridges, IPSec, and NAT. It can also dynamically add or remove namespaces based on the online / offline status of general network devices and user requirements to achieve user-customized forwarding functions.

[0086] (4) Overall workflow for extending the forwarding function of general network devices through software forwarding

[0087] Software forwarding to extend the forwarding function of general-purpose network devices should be based on the establishment and operation of the software forwarding flow selection logic of the general-purpose network devices, the service channel between the dedicated forwarding software and the general-purpose network devices, and the dedicated forwarding software itself. For example... Figure 2 As shown, the overall workflow is as follows.

[0088] 1) The general network device's service port receives network traffic.

[0089] 2) The standard forwarding logic of general network devices executes the standard forwarding process, while the soft forwarding flow selection logic selects the traffic that needs to be sent to the dedicated forwarding software for customized forwarding according to specific rules.

[0090] 3) Traffic selected for dedicated software forwarding is sent to the dedicated forwarding software within the domain through the business channel.

[0091] 4) Network traffic is forwarded in a user-customized manner through dedicated forwarding software within the domain.

[0092] 5) When certain network traffic is forwarded by dedicated forwarding software within the domain, and its outgoing interface is the service channel interface (internal forwarding) of this dedicated forwarding software, then this network traffic is sent to general network devices through the service channel interface.

[0093] 6) Network traffic is sent out from the service port of the general forwarding device.

[0094] 7) When certain network traffic is forwarded by dedicated forwarding software within a domain, and its outgoing interface is an interface connected to dedicated forwarding software between domains (inter-domain forwarding), then this network traffic is sent to the dedicated forwarding software between domains.

[0095] 8) Network traffic is forwarded in a user-customized manner through dedicated inter-domain forwarding software.

[0096] 9) Network traffic is forwarded by dedicated inter-domain forwarding software. The outgoing interface of this network traffic is found (which domain-specific forwarding software and general network device correspond to it), and this traffic is sent to the corresponding domain-specific forwarding software.

[0097] 10) Network traffic is forwarded in a user-customized manner through dedicated forwarding software within the domain.

[0098] 11) Network traffic is sent to general network devices through the service channel interface.

[0099] 12) Network traffic is sent out from the service port of the general forwarding device.

[0100] This software-based forwarding extension extends the forwarding functionality of general-purpose network devices. Based on the software forwarding flow selection logic of general-purpose network devices, dedicated forwarding software, and the service channel between the general-purpose network devices and the dedicated forwarding software, support for user-customized forwarding functions is achieved. Since most network traffic forwarding occurs on the forwarding plane of the general-purpose network devices, which is implemented by standard forwarding chips and boasts high forwarding performance, a small portion of traffic requiring user-customized forwarding functions is sent to dedicated software for processing. Because the traffic requiring user-customized processing is generally small, and general-purpose servers typically have high computing power, the forwarding performance of this small portion of traffic requiring user-customized forwarding functions is also not low. Furthermore, since multiple general-purpose network devices share the same general-purpose server running the dedicated forwarding software, the increase in hardware costs is not significant.

[0101] This embodiment describes a method for extending the forwarding functionality of general network devices through software forwarding, the key points of which involve:

[0102] (1) Method for establishing a service channel between dedicated forwarding software and general network equipment;

[0103] (2) Implementation method of soft forwarding and flow selection logic for general network devices;

[0104] (3) Implementation method of dedicated forwarding software;

[0105] (4) The overall workflow of extending the forwarding function of general network devices through software forwarding.

[0106] When facilitating data service interoperability between different satellite systems, the complexity of data services and the numerous customized protocols necessitate the forwarding of all network traffic through network devices. Given the varying services and security levels involved in each network system, network devices must support complex, non-generic forwarding processes and rules while maintaining adequate forwarding performance. The implementation method of this invention addresses both of these requirements. It utilizes dedicated forwarding software to implement non-generic forwarding rules and processes, extending the functionality of general-purpose network devices. This approach combines the advantages of high-speed data forwarding with the functional expansion capabilities of niche customized protocol rules, broadening the application scenarios of the devices and improving efficiency.

[0107] The above are merely preferred embodiments of the present invention. It should be noted that those skilled in the art can make various improvements and modifications without departing from the principle of the present invention, and these improvements and modifications should also be considered within the scope of protection of the present invention.

Claims

1. A general network device forwarding system based on software forwarding, characterized in that, This includes general-purpose servers, switches, multiple general-purpose network devices, and dedicated forwarding software; The switch is a Layer 2 switch, with the first layer being an access switch and the second layer being an uplink switch; The multiple general-purpose network devices are connected to the access switch via Ethernet cables through uplink ports, and the uplink switch is connected to the network port of the general-purpose server via Ethernet cables; the IP addresses of the uplink ports of each general-purpose network device and the network port of the general-purpose server are configured in the same network segment and can access each other. The general-purpose server is equipped with dedicated forwarding software, which includes multiple intra-domain dedicated forwarding software and one inter-domain dedicated forwarding software. The intra-domain dedicated forwarding software performs customized forwarding for specific traffic within the general-purpose network devices. The inter-domain dedicated forwarding software performs customized forwarding for specific traffic between different general-purpose network devices. The method for establishing a service channel between the dedicated forwarding software and the general network equipment is as follows: Based on the forwarding function requirements of the dedicated forwarding software, the service channel is implemented as a VxLAN Layer 2 tunnel using VxLAN technology supported by general network equipment or as a Layer 3 tunnel using GRE technology. An uplink service channel interface is generated on the general network equipment, and a downlink service channel interface is generated in the dedicated forwarding software to cooperate with the forwarding software to realize the user-customized forwarding logic. For complex dedicated forwarding software, multiple VxLAN tunnels and GRE tunnels are created, and the generated multiple service channel interfaces are added to the network forwarding logic to realize the user's forwarding requirements.

2. The general network device forwarding system based on software forwarding according to claim 1, characterized in that, The access switch is used to connect multiple general-purpose network devices to a general-purpose server, and only performs Layer 2 forwarding.

3. The general network device forwarding system based on software forwarding according to claim 1, characterized in that, The service ports of the general network equipment perform standard Layer 2 and Layer 3 forwarding for ordinary network traffic; traffic selected by the flow selection logic is sent to the general server through the service channel and then forwarded by user-customized software.

4. The general network device forwarding system based on software forwarding according to claim 1, characterized in that, Each domain-specific forwarding software corresponds to a general-purpose network device, which performs customized forwarding for specific traffic within the general-purpose network device.

5. The general network device forwarding system based on software forwarding according to claim 1, characterized in that, The service channel between the dedicated forwarding software and the general network device is used to send the traffic selected by the soft forwarding logic of the general network device to the dedicated forwarding software running on the general server, and to send the traffic sent by the dedicated forwarding software to the general network device.

6. The general network device forwarding system based on software forwarding according to claim 1, characterized in that, The soft forwarding and flow selection logic of the general network device operates as follows: Based on user needs, the traffic filtering methods supported by the general forwarding device are used to match the traffic received by the service interface at different forwarding stages. If some traffic is selected by the traffic filtering method or its combination, the selected traffic is sent to the uplink service channel interface of the general network device using policy layer 2 forwarding, policy layer 3 forwarding and port mirroring customized forwarding rules, and then sent to the dedicated forwarding software for customized forwarding.

7. The general network device forwarding system based on software forwarding according to claim 6, characterized in that, The traffic filtering methods supported by the general forwarding device include ACL, extended ACL, static MAC entries, static routing entries, and port mirroring.

8. The general network device forwarding system based on software forwarding according to claim 1, characterized in that, The working principle of the dedicated forwarding software is as follows: The dedicated forwarding software employs Linux Namespace technology to implement a network protocol stack independent of the server operating system. It uses the service channel interface as the interface for sending and receiving network traffic and implements user-customized forwarding functions through software forwarding. Because it uses software forwarding, the entire forwarding logic is fully customizable and extensible. Based on user needs, multiple virtual standard bridges, virtual routers, and OpenFlow bridges can be generated under the Namespace, and their interconnection relationships can be customized. It also supports standard or user-customized IPSec, SSLVPN, and NAT standard extensions, and can fully customize the forwarding logic using the OpenFlow protocol to achieve the forwarding functions required by the user. Each NameSpace serves as a dedicated intra-domain forwarding software for a general-purpose network device, extending the forwarding functionality of that device. It can also generate independent NameSpaces to customize dedicated inter-domain forwarding software between general-purpose network devices. The forwarding functionality of each NameSpace can be dynamically added, removed, and customized based on the online / offline status of general-purpose network devices and user needs.

9. A general network device forwarding method based on software forwarding, characterized in that, This method, based on the general network device forwarding system according to any one of claims 1 to 8, includes the following steps: Step 1: The general network device's service port receives network traffic; Step 2: The standard forwarding logic of general network devices executes the standard forwarding process, while the soft forwarding flow selection logic selects the traffic that needs to be sent to the dedicated forwarding software for customized forwarding according to specific rules. Step 3: The traffic selected for dedicated software forwarding is sent to the dedicated forwarding software within the domain through the business channel; Step 4: Network traffic is forwarded in a user-customized manner through dedicated forwarding software within the domain; Step 5: When certain network traffic is forwarded by the dedicated forwarding software within the domain, and its outgoing interface is the service channel interface of this dedicated forwarding software, then this network traffic is sent to the general network device through the service channel interface. Step 6: Network traffic is sent out from the service port of the general forwarding device; Step 7: When certain network traffic is forwarded by intra-domain dedicated forwarding software and its outgoing interface is the interface connected to inter-domain dedicated forwarding software, then this network traffic is sent to the inter-domain dedicated forwarding software. Step 8: Network traffic is forwarded in a user-customized manner through dedicated inter-domain forwarding software; Step 9: Network traffic is forwarded through dedicated inter-domain forwarding software. The outgoing interface of this network traffic is found, and it is determined which dedicated intra-domain forwarding software and general network device correspond to it. This traffic is then sent to the corresponding dedicated intra-domain forwarding software. Step 10: Network traffic is forwarded in a user-customized manner through dedicated forwarding software within the domain; Step 11: Network traffic is distributed to general network devices through the service channel interface; Step 12: Network traffic is sent out from the service port of the general forwarding device.

Citation Information

Patent Citations

  • Software and hardware cooperative programmable forwarding system, method and device

    CN112491889A