CN113709044B - Data forwarding method, device, electronic equipment and storage medium - Google Patents

Data forwarding method, device, electronic equipment and storage medium Download PDF

Info

Publication number
CN113709044B
CN113709044B CN202010431987.8A CN202010431987A CN113709044B CN 113709044 B CN113709044 B CN 113709044B CN 202010431987 A CN202010431987 A CN 202010431987A CN 113709044 B CN113709044 B CN 113709044B
Authority
CN
China
Prior art keywords
target data
data
forwarding
information
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010431987.8A
Other languages
Chinese (zh)
Other versions
CN113709044A (en
Inventor
余年兵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN202010431987.8A priority Critical patent/CN113709044B/en
Publication of CN113709044A publication Critical patent/CN113709044A/en
Application granted granted Critical
Publication of CN113709044B publication Critical patent/CN113709044B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/20Traffic policing

Abstract

The embodiment of the application provides a data forwarding method, a data forwarding device, electronic equipment and a storage medium, wherein the method comprises the following steps: detecting characteristic information of target data; if the characteristic information of the target data accords with a first condition, forwarding the target data through a first programmable component; and if the characteristic information of the target data accords with a second condition, forwarding the target data through a second programmable component. The data forwarding efficiency can be improved.

Description

Data forwarding method, device, electronic equipment and storage medium
Technical Field
The present invention relates to the field of computer technologies, and in particular, to a data forwarding method, a data forwarding device, an electronic device, and a storage medium.
Background
Cloud computing platforms, also referred to as cloud platforms, refer to services that provide computing, networking, and storage capabilities based on hardware resources and software resources.
Devices in the cloud platform can process and forward data, and such devices generally include a central processor and a programmable switching chip through which the data to be forwarded is forwarded. Specifically, the programmable switching communication chip queries a corresponding lookup table according to a destination address of the data to be forwarded, determines routing information corresponding to the data to be forwarded, and then forwards the data to be forwarded according to the routing information.
However, in the practical application process, the table entry specification of part of the lookup table is large, the lookup table needs to be managed and split to finish the forwarding of the data, and the forwarding efficiency is low.
Disclosure of Invention
The embodiment of the application provides a data forwarding method for improving the forwarding efficiency of data.
Correspondingly, the embodiment of the application also provides a data forwarding device, electronic equipment and a storage medium, which are used for guaranteeing the realization and the application of the system.
In order to solve the above problems, an embodiment of the present application discloses a data forwarding method, including: detecting characteristic information of target data; if the characteristic information of the target data accords with a first condition, forwarding the target data through a first programmable component; and if the characteristic information of the target data accords with a second condition, forwarding the target data through a second programmable component.
In order to solve the above problems, an embodiment of the present application discloses a data forwarding device, including: the feature detection module is used for detecting feature information of the target data; the first forwarding module is used for forwarding the target data through the first programmable component when the characteristic information of the target data accords with a first condition; and the second forwarding module is used for forwarding the target data through the second programmable component when the characteristic information of the target data meets a second condition.
In order to solve the above problems, an embodiment of the present application discloses an electronic device, including: a processor; and a memory having executable code stored thereon that, when executed, causes the processor to perform the method as described in one or more of the embodiments above.
To address the above issues, embodiments of the present application disclose one or more machine-readable media having executable code stored thereon that, when executed, cause a processor to perform a method as described in one or more of the above embodiments.
Compared with the prior art, the embodiment of the application has the following advantages: after receiving the target data to be forwarded, detecting the characteristic information of the target data, and determining that the characteristic information of the target data meets the first condition or the second condition. Forwarding the target data through the first programmable component when the characteristic information of the target data accords with the first condition; and forwarding the target data through the second programmable component when the characteristic of the target data meets the second condition. And forwarding the target data with different characteristics by utilizing the corresponding programmable components, so that the forwarding efficiency of the target data can be improved.
Drawings
Fig. 1A is a schematic structural diagram of a data forwarding system according to an embodiment of the present application;
fig. 1B is a process schematic diagram of a data forwarding system according to an embodiment of the present application;
FIG. 2 is a block diagram of programmable components of one embodiment of the present application;
FIG. 3 is a flow diagram of a data forwarding method according to one embodiment of the present application;
fig. 4 is a schematic structural diagram of a data forwarding device according to an embodiment of the present application;
fig. 5 is a schematic structural view of an exemplary device according to one embodiment of the present application.
Detailed Description
In order that the above-recited objects, features and advantages of the present application will become more readily apparent, a more particular description of the invention briefly described above will be rendered by reference to specific embodiments that are illustrated in the appended drawings.
The method and the device are applied to a service scene based on a cloud technology, wherein the cloud technology refers to a hosting technology for integrating hardware, software, network and other series resources in a wide area network or a local area network to realize calculation, storage, processing and sharing of data. The embodiment of the application can be applied to various scenes of data forwarding (or data exchange) combined with cloud technology, such as devices adopting servers, switches, routers and the like, and network components for data forwarding, so that the application can be applied to various scenes related to data forwarding, such as data migration, access, query and the like. For ease of description, various devices in the data forwarding end that perform data forwarding, as well as network components, are referred to as data forwarding devices.
The embodiment of the application discloses a data forwarding system, as shown in fig. 1A, the system includes: the first end is used for accessing, inquiring and data migration to the second end. The second end is used for returning feedback information to the first end according to the access and the inquiry of the first end and storing the migrated data. The data forwarding device may include various devices such as a server (cluster), a switch, a router, and a network component. The embodiment of the application can be applied to various devices for forwarding and interacting data at a data forwarding end.
The data forwarding device includes: a central processing unit (Central Processing Unit, CPU), a first programmable component and a second programmable component. The CPU is the operation and control core of the system and is the final execution unit for information processing and program running. The first programmable component and the second programmable component are used for forwarding data of different characteristics. According to the embodiment of the application, different types of data are forwarded through different types of programmable components, so that the data forwarding capacity of the data forwarding device is improved, and the forwarding efficiency of target data is improved.
The first programmable component is used for forwarding target data meeting a first condition, and the second programmable component is used for forwarding target data meeting a second condition. Specifically, after receiving the target data transmitted by the first end, the data forwarding device may detect feature information of the target data, divide the target data into data meeting a first condition and data meeting a second condition according to the feature information of the target data, and forward the divided target data by adopting a corresponding programmable component. By adopting the corresponding programmable components to forward data, the data forwarding efficiency can be improved.
The first storage table corresponding to the first programmable component may be set in the data forwarding device, the first storage table stores feature information of data meeting the first condition, and when the target data is divided, the feature information of the target data may be matched with the feature information stored in the first storage table. In one example of data processing, as shown in FIG. 1B:
after receiving the target data, the data forwarding device detects, in step 102, characteristic information of the target data, and then matches the characteristic information of the target data with the first storage table. Under the condition that the characteristic information of the target data is matched with the first storage table, determining that the characteristic information of the target data accords with a first condition; and under the condition that the characteristic information of the target data is not matched with the first storage table, determining that the characteristic information of the target data meets a second condition. In addition, a second storage table corresponding to the second programmable component may be set in the data forwarding device, where feature information of the data meeting the second condition is stored in the second storage table. The characteristic information of the target data may also be matched with the second memory table.
In an alternative embodiment, in setting the first storage table and the second storage table, the target data may be classified according to characteristics of the data in terms of traffic, such as size of the traffic and rate of the traffic. Data for a large number of continuous transmissions in the network (e.g., data for data migration) may be stored in the first memory table as data that meets the first condition. Data (e.g., mail, query web page, etc.) that is transmitted in a small amount for a short period of time in the network may be stored in the second storage table as data that meets the second condition.
Specifically, a traffic size standard and a traffic rate standard may be preset in the data forwarding device, where the traffic size may be determined according to a duration of data transmission and a data amount. The data forwarding device can divide target data according to the flow size standard and the flow rate standard, and store the target data which accords with the flow size standard and the flow rate standard into the first storage table as data which accords with the first condition; and storing the target data which does not accord with the flow rate standard or the flow rate standard into a second storage table as data which accords with a second condition. Or the flow size standard and the flow rate standard can be classified into grades, and the data meeting the first condition or the data meeting the second condition is determined according to the grade met. Wherein, the data meeting the first condition can also be called large-traffic type data, elephant flow data and the like; the data conforming to the second condition may also be referred to as small flow type data, mouse flow data, or the like. In addition, in the context of data transmission, typically a small amount of data, a larger amount of traffic (occupying a higher bandwidth) is provided; the large amount of data provides less traffic (occupies less bandwidth) and therefore the data in the first memory table is typically less than the data in the second memory table. Thus, data that meets a first condition may also be referred to as small entry data, and data that meets a second condition may also be referred to as large entry data.
An elephant flow is understood to mean a process of transferring data continuously in a large quantity through a network link; a mouse flow is understood to mean a small, short-term data transfer process over a network link. Data of the corresponding first category and the second category are determined based on the elephant flow and the mouse flow.
In an alternative embodiment, the first storage table may be determined according to a priority level of the target object. In an alternative embodiment, the data forwarding device obtains priority information of the target object; and determining first identification information of the target object meeting the priority standard as the first storage table based on the priority information. The target object may be a client corresponding to the second end, a service corresponding to the second end (such as a data storage service), and so on. The priority levels may include a first priority and a second priority, and the conforming levels may be determined according to priority criteria. And setting the priority corresponding to the target object in the data forwarding equipment, and storing the priority into a corresponding storage table by the data forwarding equipment according to the priority.
For example, the target object may be understood as a client, and the priority corresponding to the client may be set in the data forwarding device according to the traffic characteristics of the data related to the client. It is determined whether the traffic size and traffic rate of the client-related data meets the traffic size criteria and the traffic rate criteria. For the clients meeting the traffic size standard and the traffic rate standard, setting the clients as a first priority in the data forwarding device, and storing the mark information (first identification information) of the clients into a first storage table by the data forwarding device; for clients which do not meet the traffic size standard or the traffic rate standard, setting the clients as a second priority in the data forwarding device, and storing the identification information of the data forwarding device into a second storage table according to the priority information of the data forwarding device.
The characteristic information of the target data may be identification information of the target data corresponding to the first storage table in which the identification information is stored. After determining the first storage table storing the identification information, the data forwarding device may determine whether the identification information of the target data exists in the first storage table corresponding to the first programmable component; if the identification information of the target data exists in the first storage table, determining that the characteristic information of the target data accords with the first condition; and if the identification information of the target data does not exist in the first storage table, determining that the characteristic information of the target data accords with the second condition. By determining whether the identification information of the target data exists in the first storage table, it is possible to quickly determine whether the characteristic information of the target data meets the first condition or meets the second condition.
In an alternative embodiment, the first memory table may also be determined based on the traffic rate and traffic size of the target object over the historical period. Specifically, the data forwarding device collects corresponding flow characteristics of a target object in a target period; and determining second identification information of the target object meeting the flow standard based on the flow characteristic as the first storage table. Specifically, the target object may be a client, and the flow rate and the flow size of the data related to the client in the target period may be collected, and the client is classified based on a preset flow standard. Taking clients with the flow rate and the flow size meeting the flow standard as a first category; and taking clients with the flow rate and the flow size which do not accord with the flow standard as second categories. A first memory table may be generated for a first class of clients and a second memory table may be generated for a second class of clients. In this embodiment, the flow rate and the flow size in the history period corresponding to the target object may be obtained at regular time, so that the corresponding first storage table and second storage table may be updated at regular time, so that the accuracy of the data in the storage table may be improved, and the forwarding efficiency of the target data may be improved.
After determining that the characteristic information of the target data meets the first condition or meets the second condition, in step 104, if the characteristic information of the target data meets the first condition, forwarding the target data through the first programmable component; in step 106, if the characteristic information of the target data meets the second condition, the data forwarding device forwards the target data through the second programmable component.
In the embodiment of the application, after the data forwarding device receives the target data to be forwarded, the data forwarding device detects the characteristic information of the target data and determines that the characteristic information of the target data meets the first condition or the second condition. Forwarding the target data through the first programmable component when the characteristic information of the target data accords with the first condition; and forwarding the target data through the second programmable component when the characteristic of the target data meets the second condition. And forwarding the target data with different characteristics by utilizing the corresponding programmable components, so that the forwarding efficiency of the target data can be improved.
In an alternative embodiment, the first programmable component includes: a programmable switch chip and a Static Random-Access Memory (SRAM). The programmable switching chip is a chip taking an instruction set as a core, can rapidly process and forward data from one port to another port, and can support the transmission of data of several megabits (Tbps) and hundreds of thousands of table items. SRAM is one type of random access memory.
The second programmable component includes: a field programmable gate array (Field Programmable Gate Array, FPGA) and a double data rate synchronous dynamic random access memory (Double Data Rate Synchronous Dynamic Random Access Memory, DDR SDRAM).
The FPGA device belongs to a semi-custom circuit in an application-specific integrated circuit, is a programmable logic array, and has the characteristics of rich wiring resources, repeated programming and high integration level, so that the FPGA device is widely applied to the field of digital circuit design. DDR SDRAM is a device that can transfer data twice in one clock cycle, once in the rising and falling periods of the clock.
In an alternative embodiment, FIG. 2 illustrates the transmission flow of target data by the first programmable component and the second programmable component. The first programmable component and the second programmable component both comprise a lookup table and a speed limiting module, a forwarding mode (or a called routing path) corresponding to the target data can be stored in the lookup table, and a speed limiting mode corresponding to the target data can be stored in the speed limiting module.
As shown in fig. 2, for the target data, the first programmable component may be used as an entry of the target data, and the target data meeting the first condition is forwarded through the first programmable component; target data meeting the second condition is sent to the second programmable component through the first programmable component for forwarding through the second programmable component.
Specifically, for the target data meeting the first condition, after the first programmable component receives the target data, the static random access memory of the first programmable component matches the target data in the lookup table to determine the forwarding mode of the target data. And determining a speed limiting mode corresponding to the target data according to the speed limiting module. The first programmable component then forwards the target data in a forwarding manner and a speed limiting manner.
For target data meeting the second condition, after the first programmable component receives the target data, the first programmable component sends the target data to the second programmable component. The double-rate synchronous dynamic random access memory of the second programmable component matches the target data in the lookup table to determine the forwarding mode of the target data, and determines the speed limiting mode corresponding to the target data according to the speed limiting module. The second programmable component then forwards the target data in a forwarding manner and a speed limiting manner.
The first programmable component can analyze the destination address corresponding to the target data and determine the corresponding routing information according to the destination address. The first programmable component then forwards the destination data according to the routing information. On the one hand, the data forwarding device may forward the target data to another data forwarding device; on the other hand, the data forwarding device may forward the target data to the second end. Specifically, the step of forwarding, by the first programmable component, the target data includes: analyzing the data head information of the target data through the static random access memory to obtain a first destination address; determining first routing information corresponding to the first destination address; forwarding the target data based on the first routing information.
The target data sent by the first end may also be called a message (message), where the message is a data unit exchanged and transmitted in the network (a data block sent by the station at one time). The message comprises: a message header (or header) and a message body, where the message header may include information such as a message length, a message identifier, a source address, and a destination address. In the process of analyzing the target data by the first programmable component, the data header information (message header) of the target data can be analyzed through the static random access memory so as to obtain a first destination address corresponding to the target data. After the first programmable component obtains the first destination address, the first routing information corresponding to the first destination address may be determined by using a lookup table stored in the first programmable component, where the first routing information may also be referred to as routing path information, forwarding manner, and the like, and includes a routing path corresponding to the target data. The first programmable component determines a next site (which may be a data forwarding device or a second end) of the target data via the first routing information and forwards the target data to the next site.
The flow of forwarding the small-flow target data through the second programmable component can firstly analyze the destination address corresponding to the target data through the second programmable component, and determine the corresponding routing information according to the destination address. The second programmable component then forwards the destination data according to the routing information. Specifically, the step of forwarding, by the second programmable component, the target data includes: analyzing the data head information of the target data through the double data rate synchronous dynamic random access memory to obtain a second destination address; determining second routing information corresponding to the second destination address; forwarding the target data based on the second routing information.
In the process of analyzing the target data by the second programmable component, the data header information (message header) of the target data can be analyzed by the double data rate synchronous dynamic random access memory so as to obtain a second destination address corresponding to the target data. After the second programmable component obtains the second destination address, a lookup table stored in the second programmable component may be used to determine second routing information corresponding to the second destination address, where the second routing information includes a routing path. The second programmable component determines a next site (which may be a data forwarding device or a second end) of the target data via the second routing information and forwards the target data to the next site. In addition, the embodiment adopts the double data rate synchronous dynamic random access memory to analyze the data header information of the target data, and can analyze the target data with longer data header information.
In an optional embodiment, in the embodiment of the present application, the process of forwarding the target data by using the programmable component may first buffer the target data in the data forwarding device, and forward the buffered target data. In another example, the target data may be buffered in the data forwarding device first, then the buffered target data is grouped and each group of target data is forwarded separately. In addition, the data forwarding device can utilize the cached target data to verify the target data which is completed to be forwarded, and re-forward the target data which is abnormal under the condition that the target data which is completed to be forwarded is abnormal.
On the basis of the above embodiment, the present application further provides a data forwarding method, which may be executed by a server, a router, a switch, a corresponding network component, and other data forwarding devices, as shown in fig. 3, where the method includes the following steps:
step 302, detecting characteristic information of the target data, wherein the characteristic information of the target data comprises identification information of the target data.
Step 304, determining whether the identification information of the target data exists in a first storage table corresponding to the first programmable component; if the identification information of the target data exists in the first storage table, it is determined that the feature information of the target data meets the first condition, and step 306 is performed. If the identification information of the target data does not exist in the first storage table, it is determined that the feature information of the target data meets the second condition, and step 312 is performed.
Step 306, if the characteristic information of the target data meets the first condition, analyzing the data header information of the target data through the static random access memory to obtain the first destination address.
Step 308, determining first routing information corresponding to the first destination address.
Step 310, forwarding the target data based on the first routing information.
Step 312, if the characteristic information of the target data meets the second condition, analyzing the data header information of the target data by the double data rate synchronous dynamic random access memory to obtain a second destination address;
Step 314, determining second routing information corresponding to the second destination address.
Step 316, forwarding the target data based on the second routing information.
In this embodiment, after the data forwarding device receives the target data to be forwarded, the data forwarding device detects identification information of the target data, where the identification information may be a client identifier, a keyword identifier, and the like. After determining the identification information, the data forwarding device matches the identification information with the identification information stored in the first storage table to determine whether the identification information of the target data exists in the first storage table, so as to classify the target data according to the flow size (or the table entry size) corresponding to the target data. If the identification information of the target data exists in the first storage table, reading the data header information of the target data through the static random access memory of the first programmable component to obtain a first destination address, determining first route information corresponding to the first destination address, and forwarding the target data according to the first route information. If the identification information of the target data does not exist in the first storage table, the header information of the target data is analyzed through the double data rate synchronous dynamic random access memory of the second programmable component to obtain a second destination address, then second routing information corresponding to the second destination address is determined, and the target data is forwarded according to the second routing information. Different data are subjected to corresponding forwarding processing, so that the data with large flow and large table entries can be considered, and the forwarding efficiency of the data can be improved. And forwarding data with different flow sizes (or table entry sizes) by using corresponding programmable components, so that the data with large flow and large table entry can be considered, and the forwarding efficiency of the data can be improved.
It should be noted that, for simplicity of description, the method embodiments are shown as a series of acts, but it should be understood by those skilled in the art that the embodiments are not limited by the order of acts described, as some steps may occur in other orders or concurrently in accordance with the embodiments. Further, those skilled in the art will appreciate that the embodiments described in the specification are all preferred embodiments and that the acts referred to are not necessarily required by the embodiments of the present application.
On the basis of the foregoing embodiment, this embodiment further provides a data forwarding apparatus, which is applicable to a data forwarding device, where the data forwarding device includes: the central processing unit, the first programmable component and the second programmable component are used for forwarding data with different characteristics, and as shown in fig. 4, the central processing unit and the first programmable component and the second programmable component specifically can comprise the following modules:
a feature detection module 402, configured to detect feature information of the target data;
a first forwarding module 404, configured to forward, when the characteristic information of the target data meets a first condition, the target data through the first programmable component;
And a second forwarding module 406, configured to forward the target data through the second programmable component when the feature information of the target data meets a second condition.
In summary, after receiving the target data to be forwarded, detecting the characteristic information of the target data, and determining that the characteristic information of the target data meets the first condition or the second condition. Forwarding the target data through the first programmable component when the characteristic information of the target data accords with the first condition; and forwarding the target data through the second programmable component when the characteristic of the target data meets the second condition. And forwarding the target data with different characteristics by utilizing the corresponding programmable components, so that the forwarding efficiency of the target data can be improved.
On the basis of the foregoing embodiment, this embodiment further provides a data forwarding device, where the data forwarding device may include: the system comprises a central processing unit, a first programmable component and a second programmable component, wherein the first programmable component and the second programmable component are used for forwarding data with different characteristics, and the first programmable component comprises: a programmable switching chip and a static random access memory; the second programmable component includes: a field programmable gate array and a double data rate synchronous dynamic random access memory. The device specifically comprises the following modules:
A feature detection module 402, configured to detect feature information of the target data; the characteristic information of the target data includes identification information of the target data.
The identification feature judging module is used for determining whether identification information of the target data exists in a first storage table corresponding to the first programmable component; if the identification information of the target data exists in the first storage table, determining that the characteristic information of the target data meets the first condition, and triggering the first forwarding module 404; if the identification information of the target data does not exist in the first storage table, it is determined that the feature information of the target data meets the second condition, and the second forwarding module 406 is triggered.
A first forwarding module 404, configured to forward the target data through the first programmable component;
a second forwarding module 406, configured to forward the target data through the second programmable component.
The first forwarding module 404 is configured to parse the data header information of the target data through the sram to obtain the first destination address. Determining first routing information corresponding to a first destination address; forwarding the target data based on the first routing information.
The second forwarding module 406 is configured to parse the data header information of the target data through the double data rate synchronous dynamic random access memory to obtain a second destination address; determining second routing information corresponding to a second destination address; forwarding the target data based on the second routing information.
In summary, after receiving the target data to be forwarded, the identification information of the target data is detected, where the identification information may be a client identifier, a keyword identifier, and the like. After the identification information is determined, the identification information is matched with the identification information stored in the first storage table to determine whether the identification information of the target data exists in the first storage table or not, so that the target data is classified according to the flow size (or the table entry size) corresponding to the target data. If the identification information of the target data exists in the first storage table, reading the data header information of the target data through the static random access memory of the first programmable component to obtain a first destination address, determining first route information corresponding to the first destination address, and forwarding the target data according to the first route information. If the identification information of the target data does not exist in the first storage table, the header information of the target data is analyzed through the double data rate synchronous dynamic random access memory of the second programmable component to obtain a second destination address, then second routing information corresponding to the second destination address is determined, and the target data is forwarded according to the second routing information. Different data are forwarded correspondingly, so that the data with large flow and large table entry can be considered, and the forwarding efficiency of the data can be improved. And forwarding data with different flow sizes (or table entry sizes) by using corresponding programmable components, so that the data with large flow and large table entry can be considered, and the forwarding efficiency of the data can be improved.
Optionally, as an embodiment, the apparatus further includes:
the priority information acquisition module is used for acquiring the priority information of the target object;
and the first table generation module is used for determining first identification information of the target object meeting the priority standard based on the priority information, and taking the first identification information as the first storage table.
Optionally, as an embodiment, the apparatus further includes:
the flow characteristic acquisition module is used for acquiring corresponding flow characteristics of the target object in a target period;
and the second table generating module is used for determining second identification information of the target object meeting the flow standard based on the flow characteristics and taking the second identification information as the first storage table.
The embodiment of the application also provides a non-volatile readable storage medium, where one or more modules (programs) are stored, where the one or more modules are applied to a device, and the device may be caused to execute instructions (instractions) of each method step in the embodiment of the application.
Embodiments of the present application provide one or more machine-readable media having instructions stored thereon that, when executed by one or more processors, cause an electronic device to perform a method as described in one or more of the above embodiments. In this embodiment of the present application, the electronic device includes a data forwarding device, a terminal device, and other devices.
Embodiments of the present disclosure may be implemented as an apparatus for performing a desired configuration using any suitable hardware, firmware, software, or any combination thereof, which may include data forwarding devices (clusters), terminals, etc. electronic devices. Fig. 5 schematically illustrates an example apparatus 500 that may be used to implement various embodiments described herein.
For one embodiment, fig. 5 illustrates an example apparatus 500 having one or more processors 502, a control module (chipset) 504 coupled to at least one of the processor(s) 502, a memory 505 coupled to the control module 504, a non-volatile memory (NVM)/storage 508 coupled to the control module 504, one or more input/output devices 510 coupled to the control module 504, and a network interface 512 coupled to the control module 504.
The processor 502 may include one or more single-core or multi-core processors, and the processor 502 may include any combination of general-purpose or special-purpose processors (e.g., graphics processor, application processor, baseband processor, etc.). In some embodiments, the apparatus 500 may be configured as a data forwarding end, a terminal, or the like in the embodiments of the present application.
In some embodiments, the apparatus 500 can include one or more computer-readable media (e.g., memory 505 or NVM/storage 508) having instructions 514 and one or more processors 502 in combination with the one or more computer-readable media configured to execute the instructions 514 to implement the modules to perform the actions described in this disclosure.
For one embodiment, the control module 504 may include any suitable interface controller to provide any suitable interface to at least one of the processor(s) 502 and/or any suitable device or component in communication with the control module 504.
The control module 504 may include a memory controller module to provide an interface to the memory 505. The memory controller modules may be hardware modules, software modules, and/or firmware modules.
Memory 505 may be used to load and store data and/or instructions 514 for apparatus 500, for example. For one embodiment, memory 505 may comprise any suitable volatile memory, such as, for example, a suitable DRAM. In some embodiments, memory 505 may comprise a double data rate type four synchronous dynamic random access memory (DDR 4 SDRAM).
For one embodiment, the control module 504 may include one or more input/output controllers to provide an interface to the NVM/storage 508 and the input/output device(s) 510.
For example, NVM/storage 508 may be used to store data and/or instructions 514. NVM/storage 508 may include any suitable nonvolatile memory (e.g., flash memory) and/or may include any suitable nonvolatile storage device(s) (e.g., one or more Hard Disk Drives (HDDs), one or more Compact Disc (CD) drives, and/or one or more Digital Versatile Disc (DVD) drives).
NVM/storage 508 may include storage resources on data forwarding as part of the device on which apparatus 500 is installed or may be accessible by the device without necessarily being part of the device. For example, NVM/storage 508 may be accessed over a network via input/output device(s) 510.
Input/output device(s) 510 may provide an interface for apparatus 500 to communicate with any other suitable device, input/output device 510 may include a communication component, an audio component, a sensor component, and the like. Network interface 512 may provide an interface for device 500 to communicate over one or more networks, and device 500 may wirelessly communicate with one or more components of a wireless network according to any of one or more wireless network standards and/or protocols, such as accessing a wireless network based on a communication standard, such as WiFi, 2G, 3G, 4G, 5G, etc., or a combination thereof.
For one embodiment, at least one of the processor(s) 502 may be packaged together with logic of one or more controllers (e.g., memory controller modules) of the control module 504. For one embodiment, at least one of the processor(s) 502 may be packaged together with logic of one or more controllers of the control module 504 to form a System In Package (SiP). For one embodiment, at least one of the processor(s) 502 may be integrated on the same mold as logic of one or more controllers of the control module 504. For one embodiment, at least one of the processor(s) 502 may be integrated on the same die with logic of one or more controllers of the control module 504 to form a system on chip (SoC).
In various embodiments, the apparatus 500 may be, but is not limited to being: a data forwarding device, a desktop computing device, or a mobile computing device (e.g., a laptop computing device, a handheld computing device, a tablet, a netbook, etc.), among other terminal devices. In various embodiments, the apparatus 500 may have more or fewer components and/or different architectures. For example, in some embodiments, the apparatus 500 includes one or more cameras, a keyboard, a Liquid Crystal Display (LCD) screen (including a touch screen display), a non-volatile memory port, multiple antennas, a graphics chip, an Application Specific Integrated Circuit (ASIC), and a speaker.
The detection device can adopt a main control chip as a processor or a control module, sensor data, position information and the like are stored in a memory or an NVM/storage device, a sensor group can be used as an input/output device, and a communication interface can comprise a network interface.
The embodiment of the application also provides electronic equipment, which comprises: a processor; and a memory having executable code stored thereon that, when executed, causes the processor to perform a method as described in one or more of the embodiments herein.
Embodiments also provide one or more machine-readable media having executable code stored thereon that, when executed, cause a processor to perform a method as described in one or more of the embodiments of the present application.
For the device embodiments, since they are substantially similar to the method embodiments, the description is relatively simple, and reference is made to the description of the method embodiments for relevant points.
In this specification, each embodiment is described in a progressive manner, and each embodiment is mainly described by differences from other embodiments, and identical and similar parts between the embodiments are all enough to be referred to each other.
Embodiments of the present application are described with reference to flowchart illustrations and/or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing terminal device to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal device, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present embodiments have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. It is therefore intended that the following claims be interpreted as including the preferred embodiments and all such alterations and modifications as fall within the scope of the embodiments of the present application.
Finally, it is further noted that relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or terminal that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or terminal. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article or terminal device comprising the element.
The foregoing has described in detail a data forwarding method, a data forwarding device, an electronic device and a storage medium provided in the present application, and specific examples have been applied to illustrate the principles and embodiments of the present application, where the foregoing examples are only used to help understand the method and core idea of the present application; meanwhile, as those skilled in the art will have modifications in the specific embodiments and application scope in accordance with the ideas of the present application, the present description should not be construed as limiting the present application in view of the above.

Claims (9)

1. A method of forwarding data, the method comprising:
detecting characteristic information of target data;
if the characteristic information of the target data accords with a first condition, forwarding the target data through a first programmable component;
if the characteristic information of the target data accords with a second condition, forwarding the target data through a second programmable assembly;
the first programmable component includes: a programmable switching chip and a static random access memory; the second programmable component includes: a field programmable gate array and a double data rate synchronous dynamic random access memory.
2. The method of claim 1, wherein the characteristic information of the target data includes identification information of the target data, the method further comprising:
determining whether the identification information of the target data exists in a first storage table corresponding to the first programmable component;
if the identification information of the target data exists in the first storage table, determining that the characteristic information of the target data accords with the first condition;
and if the identification information of the target data does not exist in the first storage table, determining that the characteristic information of the target data accords with the second condition.
3. The method as recited in claim 2, further comprising:
acquiring priority information of a target object;
and determining first identification information of the target object meeting the priority standard as the first storage table based on the priority information.
4. The method as recited in claim 2, further comprising:
collecting corresponding flow characteristics of a target object in a target period;
and determining second identification information of the target object meeting the flow standard based on the flow characteristic as the first storage table.
5. The method of claim 1, wherein forwarding the target data via the first programmable component comprises:
analyzing the data head information of the target data through the static random access memory to obtain a first destination address;
determining first routing information corresponding to the first destination address;
forwarding the target data based on the first routing information.
6. The method of claim 1, wherein forwarding the target data via a second programmable component comprises:
analyzing the data head information of the target data through the double data rate synchronous dynamic random access memory to obtain a second destination address;
determining second routing information corresponding to the second destination address;
forwarding the target data based on the second routing information.
7. A data forwarding device, said device comprising:
the feature detection module is used for detecting feature information of the target data;
the first forwarding module is configured to forward the target data through a first programmable component when the feature information of the target data meets a first condition, where the first programmable component includes: a programmable switching chip and a static random access memory;
The second forwarding module is configured to forward, when the feature information of the target data meets a second condition, the target data through a second programmable component, where the second programmable component includes: a field programmable gate array and a double data rate synchronous dynamic random access memory.
8. An electronic device, comprising: a processor; and
a memory having a program stored thereon, which when executed by a processor causes the processor to perform the method of any of claims 1-6.
9. One or more computer-readable storage media having a program stored thereon that, when executed by a processor, causes the processor to perform the method of any of claims 1-6.
CN202010431987.8A 2020-05-20 2020-05-20 Data forwarding method, device, electronic equipment and storage medium Active CN113709044B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010431987.8A CN113709044B (en) 2020-05-20 2020-05-20 Data forwarding method, device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010431987.8A CN113709044B (en) 2020-05-20 2020-05-20 Data forwarding method, device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN113709044A CN113709044A (en) 2021-11-26
CN113709044B true CN113709044B (en) 2023-05-23

Family

ID=78645640

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010431987.8A Active CN113709044B (en) 2020-05-20 2020-05-20 Data forwarding method, device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN113709044B (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104811495A (en) * 2015-04-27 2015-07-29 北京交通大学 Method and module for content storage of network component of smart and cooperative network
CN108337172A (en) * 2018-01-30 2018-07-27 长沙理工大学 Extensive OpenFlow flow table classification storage architecture and acceleration lookup method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8825867B2 (en) * 2012-05-04 2014-09-02 Telefonaktiebolaget L M Ericsson (Publ) Two level packet distribution with stateless first level packet distribution to a group of servers and stateful second level packet distribution to a server within the group
CN109495504B (en) * 2018-12-21 2021-05-25 东软集团股份有限公司 Firewall equipment and message processing method and medium thereof
CN110191065B (en) * 2019-06-08 2022-04-08 西安电子科技大学 High-performance load balancing system and method based on software defined network
CN110808910B (en) * 2019-10-29 2021-09-21 长沙理工大学 OpenFlow flow table energy-saving storage framework supporting QoS and method thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104811495A (en) * 2015-04-27 2015-07-29 北京交通大学 Method and module for content storage of network component of smart and cooperative network
CN108337172A (en) * 2018-01-30 2018-07-27 长沙理工大学 Extensive OpenFlow flow table classification storage architecture and acceleration lookup method

Also Published As

Publication number Publication date
CN113709044A (en) 2021-11-26

Similar Documents

Publication Publication Date Title
US11797343B2 (en) Data management for edge architectures
US10244023B2 (en) Active offline storage management for streaming media application used by multiple client devices
US11349753B2 (en) Converged routing for distributed computing systems
US20170366409A1 (en) Dynamic Acceleration in Content Delivery Network
US20220224614A1 (en) Technologies for capturing processing resource metrics as a function of time
CN109412966B (en) Large-scale log transmission method, device and system
CN112261094B (en) Message processing method and proxy server
US20180248977A1 (en) Selective distribution of messages in a publish-subscribe system
CN114553762B (en) Method and device for processing flow table items in flow table
EP3345345A1 (en) Systems and methods for remote network topology discovery
CN101599910A (en) The method and apparatus that message sends
CN113709044B (en) Data forwarding method, device, electronic equipment and storage medium
CN113301079B (en) Data acquisition method, system, computing device and storage medium
CN113645287A (en) Automobile message storage method and device and automobile message storage system
CN110830527A (en) Method and device for data communication between networks and data communication system
CN113301173A (en) Domain name updating system and method, message forwarding method and server
CN115277504B (en) Network traffic monitoring method, device and system
EP4280561A1 (en) Information flow identification method, network chip, and network device
CN112367384B (en) Kafka cluster-based dynamic speed limiting method and device and computer equipment
CN105025042A (en) Method of determining data information, system and proxy servers
CN114095386B (en) Data stream statistics method, device and storage medium
US11323393B2 (en) System and method for improving network storage accessibility
CN111131083B (en) Method, device and equipment for data transmission between nodes and computer readable storage medium
CN113296973A (en) Message processing method, message reading method, device and readable medium
CN101635669B (en) Method for acquiring data fragments in data-sharing systems

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40062892

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant