CN114327262B - Method and device for maintaining port mapping of intelligent network card - Google Patents

Method and device for maintaining port mapping of intelligent network card Download PDF

Info

Publication number
CN114327262B
CN114327262B CN202111507566.XA CN202111507566A CN114327262B CN 114327262 B CN114327262 B CN 114327262B CN 202111507566 A CN202111507566 A CN 202111507566A CN 114327262 B CN114327262 B CN 114327262B
Authority
CN
China
Prior art keywords
storage
mapping
request
port
chip
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
CN202111507566.XA
Other languages
Chinese (zh)
Other versions
CN114327262A (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.)
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Original Assignee
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co 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 Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd filed Critical Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Priority to CN202111507566.XA priority Critical patent/CN114327262B/en
Publication of CN114327262A publication Critical patent/CN114327262A/en
Application granted granted Critical
Publication of CN114327262B publication Critical patent/CN114327262B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

The invention provides a method, a system, equipment and a storage medium for maintaining port mapping of an intelligent network card, wherein the method comprises the following steps: responding to a received request input from the outside, judging whether the request is a query request for port mapping information or a new mapping establishment request; responding to the request being a new mapping establishment request, respectively carrying out port information matching on the on-chip storage and the external storage; in response to successful matching, replacing the original mapping relation by using the new mapping relation; and writing the new mapping relation into the on-chip storage or the external storage in response to the matching failure of the on-chip storage or the external storage. According to the invention, the independent mapping module is added in the chip logic design, the on-chip storage with a fixed size provides faster access speed, and the external storage device is combined to provide higher-flexibility total capacity, so that the function chipalization of maintaining the port mapping relation of the transmission layer in network transmission is realized, and the transmission efficiency of network data on the intelligent network card is improved.

Description

Method and device for maintaining port mapping of intelligent network card
Technical Field
The present invention relates to the field of chip design, and in particular, to a method, system, device, and storage medium for maintaining port mapping for an intelligent network card.
Background
With the continuous improvement of the complexity of application scenes, the continuous development of technologies such as big data and cloud computing, the requirements of a large-scale data center on server interconnection and data transmission are higher and higher, and the requirements of technologies such as virtualization and resource pooling are met by a more complex interconnection topological structure and higher data transmission efficiency. At the same time, these demands bring higher load to the server CPU in data transmission control, seriously affecting the performance of the system.
This situation has led to the advent of intelligent network cards. The intelligent network card is different from the common network card, is not only responsible for two-layer forwarding between the server and the outside, but also plays a role in helping the CPU to process related transactions of the network so as to process more application requirements. In particular, the intelligence on the intelligent network card is embodied in that, besides being responsible for standard network interfaces as a common network card, the intelligent network card integrates calculation and control logic in a control chip (ASIC (Application Specific Integrated Circuit, application specific integrated circuit) or FPGA (Field-programmable Gate Array, field programmable gate array)) manner, so that many data processing operations conventionally completed by the CPU are completed directly at the network card level, and the operation results are directly sent to the CPU, or the subsequent operations are directly performed.
In the current various networks, including the internet, the internet of things, a data network of a data center and the like, in order to achieve the simplification of functions of each component and the standardization of design, a layered design method is adopted, and a seven-layer model and a TCP/IP four-layer model of OSI are most commonly adopted. The layering modes all comprise a physical layer/link layer, which is used for realizing remote transmission control of physical data, packaging the data into a data format consistent with a physical transmission channel during transmission, and packaging the received multiple groups of data into a data format required by upper software processing during reception; a network layer for controlling activities of the host/device in the network, such as configuring routing information, etc.; thirdly, a transmission layer provides end-to-end communication for an application program on a host; and fourthly, an application layer provides network functions for specific application programs. While from a hardware point of view, the physical layer/link layer must be implemented in hardware, the remaining three layers are implemented in software (i.e., programs on the CPU) from bottom to top. In this state, on each layer of protocol implemented by software, no specific configuration of the physical layer/link layer needs to be seen, and correspondingly, no specific operation of each layer of protocol implemented by software needs to be seen by the hardware end.
In the service of the data center, whether it is different application programs on the host or multiple virtual devices virtualized by single hardware, at the transmission layer, a mapping relationship from a port (i.e. an access port accessed by the application program) to network layer routing information needs to be maintained for this purpose, that is, communication between different application programs with the port number as an identifier is mapped to a specific network topology. In the application scenario of the intelligent network, the program operation part or most of the program operation part needs to be unloaded to the intelligent network card, and the mapping relation of the ports naturally needs to be maintained by the intelligent network card.
In the prior art, the simplest and direct method for introducing the intelligent network card to unload the program load On the host CPU is that a processor (processor Chip or integrated processor core On network card control Chip) and an SoC (System On Chip) subsystem are directly mounted On the intelligent network card at the time, so that the program function originally On the host CPU can be directly realized On the SoC subsystem. The dynamic mapping maintenance is realized by using the host CPU buffer, and is naturally realized by a processor on the intelligent network card.
The port mapping is relatively simple to implement by using the SoC subsystem, but the problem is also apparent. The key is that the performance and resources of the processor on the subsystem are limited, and the function (compression/decompression, encryption/decryption, database container operation and the like) of the intelligent network card is realized by software, so that the performance of the intelligent network card is often not superior to that of the intelligent network card by using a host CPU. If the functions are implemented by special chip logic circuits, port mapping is implemented by software, and network data transmission of the functions is to initiate interrupt and inquiry operations to the SoC first, which obviously reduces efficiency.
Disclosure of Invention
In view of this, an object of the embodiments of the present invention is to provide a method, a system, a computer device and a computer readable storage medium for mapping maintenance ports of an intelligent network card.
Based on the above objects, an aspect of the embodiments of the present invention provides a method for maintaining port mapping of an intelligent network card, including the following steps: responding to a received request input from the outside, judging whether the request is a query request for port mapping information or a new mapping establishment request; responding to the request being a new mapping establishment request, respectively carrying out port information matching on the on-chip storage and the external storage; in response to successful matching, replacing the original mapping relation by using the new mapping relation; and writing the new mapping relation into the on-chip storage or the external storage in response to the matching failure of the on-chip storage or the external storage.
In some embodiments, the method further comprises: querying the on-chip storage for port mapping information in response to the request being a query request for the port mapping information; in response to a query failure, querying the external store for the port mapping information; and responding to the successful inquiry, outputting an inquiry result and writing the port mapping information into the on-chip storage.
In some implementations, the querying the on-chip store for the port mapping information includes: and reading the mapping data pointed by the identification register in the on-chip storage, comparing the mapping data with the port mapping information, and judging whether the mapping data and the port mapping information are identical.
In some embodiments, writing the new mapping to the on-chip storage or the external storage includes: judging whether the storage space of the on-chip storage or the external storage is smaller than a threshold value; and replacing the earliest written information of the on-chip storage or the external storage with the new mapping relation in response to the storage space of the on-chip storage or the external storage being smaller than a threshold value.
In another aspect of the embodiment of the present invention, there is provided a system for maintaining port mapping for an intelligent network card, including: the input-output module is configured to respond to a received request input from the outside and judge whether the request is a query request for port mapping information or a request for establishing new mapping; the matching module is configured to respond to the request being a new mapping establishment request and respectively match port information in on-chip storage and external storage; a replacement module configured to replace an original mapping relationship with a new mapping relationship in response to successful matching; and a writing module configured to write the new mapping relationship to the on-chip storage or the external storage in response to a failure of the matching of the on-chip storage or the external storage.
In some implementations, the system further includes a query module configured to: querying the on-chip storage for port mapping information in response to the request being a query request for the port mapping information; in response to a query failure, querying the external store for the port mapping information; and responding to the successful inquiry, outputting an inquiry result and writing the port mapping information into the on-chip storage.
In some implementations, the query module is further configured to: and reading the mapping data pointed by the identification register in the on-chip storage, comparing the mapping data with the port mapping information, and judging whether the mapping data and the port mapping information are identical.
In some embodiments, the write module is configured to: judging whether the storage space of the on-chip storage or the external storage is smaller than a threshold value; and replacing the earliest written information of the on-chip storage or the external storage with the new mapping relation in response to the storage space of the on-chip storage or the external storage being smaller than a threshold value.
In yet another aspect of the embodiment of the present invention, there is also provided a computer apparatus, including: at least one processor; and a memory storing computer instructions executable on the processor, which when executed by the processor, perform the steps of the method as above.
In yet another aspect of the embodiments of the present invention, there is also provided a computer-readable storage medium storing a computer program which, when executed by a processor, implements the method steps as described above.
The invention has the following beneficial technical effects: by adding an independent mapping module in the chip logic design, the on-chip storage with a fixed size provides faster access speed, and the external storage device is combined to provide higher-flexibility total capacity, so that the function chipalization of maintaining the port mapping relation of the transmission layer in network transmission is realized, and the transmission efficiency of network data on the intelligent network card is improved.
Drawings
In order to more clearly illustrate the embodiments of the invention or the technical solutions in the prior art, the drawings that are necessary for the description of the embodiments or the prior art will be briefly described, it being obvious that the drawings in the following description are only some embodiments of the invention and that other embodiments may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a schematic diagram of an embodiment of a method for maintaining port mappings for an intelligent network card provided by the present invention;
FIG. 2 is a block diagram of an apparatus for maintaining port mapping for an intelligent network card according to the present invention;
FIG. 3 is a schematic diagram of a new mapping relationship flow provided by the present invention;
FIG. 4 is a schematic diagram of a query mapping relationship flow provided by the present invention;
FIG. 5 is a schematic diagram of an embodiment of a system for maintaining port mappings for an intelligent network card provided by the present invention;
FIG. 6 is a schematic diagram of a hardware architecture of an embodiment of a computer device for maintaining port mappings for an intelligent network card according to the present invention;
fig. 7 is a schematic diagram of an embodiment of a computer storage medium for maintaining port mapping for an intelligent network card according to the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the following embodiments of the present invention will be described in further detail with reference to the accompanying drawings.
It should be noted that, in the embodiments of the present invention, all the expressions "first" and "second" are used to distinguish two entities with the same name but different entities or different parameters, and it is noted that the "first" and "second" are only used for convenience of expression, and should not be construed as limiting the embodiments of the present invention, and the following embodiments are not described one by one.
In a first aspect of the embodiment of the present invention, an embodiment of a method for maintaining port mapping for an intelligent network card is provided. Fig. 1 is a schematic diagram of an embodiment of a method for maintaining port mapping for an intelligent network card according to the present invention. As shown in fig. 1, the embodiment of the present invention includes the following steps:
s1, responding to a received request input from the outside, and judging whether the request is a query request for port mapping information or a new mapping establishment request;
s2, responding to the request being a new mapping establishment request, and respectively carrying out port information matching on-chip storage and external storage;
s3, in response to successful matching, replacing the original mapping relation by using the new mapping relation; and
and S4, responding to the matching failure of the on-chip storage or the external storage, and writing the new mapping relation into the on-chip storage or the external storage.
Aiming at the requirement of the intelligent network card for operating the software to be chipped, the independent mapping module is added in the logic design of the chip, and the function of maintaining the port mapping relation of the transmission layer in the network transmission is chipped by combining with an external storage device, so that the transmission efficiency of network data on the intelligent network card is improved.
Fig. 2 is a schematic diagram of an apparatus for maintaining port mapping for an intelligent network card according to the present invention, where, as shown in fig. 2, a mapping module includes an input/output module, a flexibly configured storage control module, an on-chip storage unit, a DMA (direct memory access module), and an external storage interface.
The on-chip memory unit is a memory device integrated on a chip, and different devices such as sram, flash and the like can be adopted according to the chip technology and cost. Logically, the body portion is a fixed-size piece of memory, and an additional access identification register is required to identify the location of the currently accessed memory. By the memory control module, each access to on-chip memory (including read operations for matching and write operations for creating a map) is made from a location identified by the identification register in units of a single map information length.
If the writing operation is performed sequentially, namely after the operation is completed, the access identification register is moved backwards by one unit length, and when the storage space of the last unit length is accessed, the position identified by the identification register is moved to the first unit stored on the chip, and the operation is repeated. Obviously, in this way, when the on-chip storage is full, the next writing is replaced by storing the earliest written information on the current chip.
If the matching operation is performed in the reverse order, that is, after each reading operation is completed, the access identification register is moved forward by a unit length until the matching is successful or the reading operation stored on the whole chip is completed. In the way, the information which is successfully matched last time and the information which is written recently are preferentially accessed, and the matching efficiency can be improved according to the time locality principle of the program, namely, the same program port is more likely to be repeatedly called in a short time.
For example, assuming that a mapping information length is 10 bits, the on-chip memory size is 1Kb (1000 bits), the initial identification register points to bit 0, after the first write operation, the identification register points to bit 10, after the second write operation points to bit 20, and so on, the nineteenth operation points to bit 990, and after the first hundred write operations, the first hundred write operations point to bit 0 again, i.e., the first hundred write operations replace the value of the first write operation. In the matching operation, if the current identification register points to 990 th bit, after the first reading, the identification register points to 980 th bit, and if the second reading is successful, the value of the identification register is unchanged, the next access is started from 980 th bit, and if the second reading is completed for one hundred times, the matching failure is indicated, and the value of the identification register moves one hundred times and points to 990 th bit.
The DMA and the external storage interface are both designed and implemented by standard techniques, and the matching and writing operations for the external storage are the same as the on-chip storage, and are not described here.
It should be noted that, in particular, the external storage needs to be specifically described, and in general, the smart network card itself will integrate the external storage device to store data, because the storage space required by the mapping relationship is relatively small, and for cost consideration, the external storage can be directly borrowed, and a part of the fixed space can be statically drawn or dynamically allocated to meet the requirements of the present invention. For the method of the invention, the external storage only needs to be larger than the space stored on the chip, so that the effects of reducing matching failure and improving efficiency can be achieved, and the external storage space is larger, which represents more history port mapping information which can be stored simultaneously, but also represents longer time required for matching operation, which is needed to be balanced by combining specific network scale and characteristics.
In response to receiving an externally input request, it is determined whether the request is a query request for port mapping information or a request for establishment of a new mapping. And an input/output module: the input end is used for receiving an externally input query request for port mapping information and a new mapping establishment request, analyzing the query request and the new mapping establishment request, and then sending a specific instruction to the storage control module; at the output end, the result to be requested is output according to the format and timing requirements of the external receiver.
In response to the request being a new mapping establishment request, port information matching is performed on the on-chip storage and the external storage, respectively. The step is carried out in a memory control module, and when a mapping establishment request is processed, port information is matched with on-chip memory and external memory (through DMA) respectively.
And in response to successful matching, replacing the original mapping relation by using the new mapping relation. If the matching is successful, the original mapping relation is replaced by the new mapping relation.
And in response to the failure of the matching of the on-chip storage or the external storage, writing the new mapping relation into the on-chip storage or the external storage. If the on-chip storage fails to match, the new mapping information is written to the on-chip storage, and if the on-chip storage is full, the information written earliest to the current on-chip storage is replaced. If the external storage fails to match, the new mapping information is written into the external storage, and if the external storage is full, the earliest written information of the current external storage is replaced.
In some embodiments, the method further comprises: querying the on-chip storage for port mapping information in response to the request being a query request for the port mapping information; in response to a query failure, querying the external store for the port mapping information; and responding to the successful inquiry, outputting an inquiry result and writing the port mapping information into the on-chip storage. When the query request is processed, port information matching is carried out on the on-chip storage (namely, the on-chip storage mapping information is read out one by one and is compared with the target port, if the on-chip storage mapping information is the same as the target port, the matching is successful, if all the on-chip storage mapping information is read out, the matching is failed, the result is returned if the matching is successful, if the matching is failed, the DMA module is called to query the external storage, if the external storage matching is successful, the result is returned, and the matching information is written into the on-chip storage.
In some implementations, the querying the on-chip store for the port mapping information includes: and reading the mapping data pointed by the identification register in the on-chip storage, comparing the mapping data with the port mapping information, and judging whether the mapping data and the port mapping information are identical.
In some embodiments, writing the new mapping to the on-chip storage or the external storage includes: judging whether the storage space of the on-chip storage or the external storage is smaller than a threshold value; and replacing the earliest written information of the on-chip storage or the external storage with the new mapping relation in response to the storage space of the on-chip storage or the external storage being smaller than a threshold value. If the storage space of the on-chip storage or the external storage is smaller than the threshold value, the space of the on-chip storage or the external storage is considered to be full, and when the storage space of the on-chip storage or the external storage is full, the information written by the current earliest is replaced by the on-chip storage or the external storage.
Fig. 3 and fig. 4 are a schematic diagram of a new mapping relationship flow and a schematic diagram of a query mapping relationship flow provided by the present invention respectively; as shown in fig. 3 and fig. 4, the basic principle is that for the operation of inquiring port information, the operation is firstly inquired in the on-chip storage, if no external storage is inquired through DMA, if no external storage is stored in the on-chip storage, mapping information is written into the on-chip storage while outputting the result, so that the efficiency of next access is improved; for the operation of newly creating mapping information, then the operations are performed on the on-chip storage and the external storage at the same time: the mapping information of the port is firstly inquired, if yes, the mapping information is replaced, and if no, the mapping information is written in.
According to the embodiment of the invention, the independent mapping module is added in the chip logic design, the on-chip storage with the fixed size provides faster access speed, the external storage device is combined to provide the total capacity with higher flexibility, the function chipalization of maintaining the port mapping relation by the transmission layer in network transmission is realized, and the transmission efficiency of network data on the intelligent network card is improved.
It should be noted that, the steps in the embodiments of the method for maintaining port mapping of an intelligent network card may be intersected, replaced, added and deleted, so that the method for maintaining port mapping of an intelligent network card by using these reasonable permutation and combination changes shall also belong to the protection scope of the present invention, and shall not limit the protection scope of the present invention to the embodiments.
Based on the above object, a second aspect of the embodiment of the present invention proposes a system for maintaining port mapping of an intelligent network card. As shown in fig. 5, the system 200 includes the following modules: the input-output module is configured to respond to a received request input from the outside and judge whether the request is a query request for port mapping information or a request for establishing new mapping; the matching module is configured to respond to the request being a new mapping establishment request and respectively match port information in on-chip storage and external storage; a replacement module configured to replace an original mapping relationship with a new mapping relationship in response to successful matching; and a writing module configured to write the new mapping relationship to the on-chip storage or the external storage in response to a failure of the matching of the on-chip storage or the external storage.
In some implementations, the system further includes a query module configured to: querying the on-chip storage for port mapping information in response to the request being a query request for the port mapping information; in response to a query failure, querying the external store for the port mapping information; and responding to the successful inquiry, outputting an inquiry result and writing the port mapping information into the on-chip storage.
In some implementations, the query module is further configured to: and reading the mapping data pointed by the identification register in the on-chip storage, comparing the mapping data with the port mapping information, and judging whether the mapping data and the port mapping information are identical.
In some embodiments, the write module is configured to: judging whether the storage space of the on-chip storage or the external storage is smaller than a threshold value; and replacing the earliest written information of the on-chip storage or the external storage with the new mapping relation in response to the storage space of the on-chip storage or the external storage being smaller than a threshold value.
In view of the above object, a third aspect of the embodiments of the present invention provides a computer device, including: at least one processor; and a memory storing computer instructions executable on the processor, the instructions being executable by the processor to perform the steps of: s1, responding to a received request input from the outside, and judging whether the request is a query request for port mapping information or a new mapping establishment request; s2, responding to the request being a new mapping establishment request, and respectively carrying out port information matching on-chip storage and external storage; s3, in response to successful matching, replacing the original mapping relation by using the new mapping relation; and S4, responding to the failure of matching of the on-chip storage or the external storage, and writing the new mapping relation into the on-chip storage or the external storage.
In some embodiments, the steps further comprise: querying the on-chip storage for port mapping information in response to the request being a query request for the port mapping information; in response to a query failure, querying the external store for the port mapping information; and responding to the successful inquiry, outputting an inquiry result and writing the port mapping information into the on-chip storage.
In some implementations, the querying the on-chip store for the port mapping information includes: and reading the mapping data pointed by the identification register in the on-chip storage, comparing the mapping data with the port mapping information, and judging whether the mapping data and the port mapping information are identical.
In some embodiments, writing the new mapping to the on-chip storage or the external storage includes: judging whether the storage space of the on-chip storage or the external storage is smaller than a threshold value; and replacing the earliest written information of the on-chip storage or the external storage with the new mapping relation in response to the storage space of the on-chip storage or the external storage being smaller than a threshold value.
Fig. 6 is a schematic hardware structure of an embodiment of the computer device for maintaining port mapping of an intelligent network card according to the present invention.
Taking the example of the apparatus shown in fig. 6, a processor 301 and a memory 302 are included in the apparatus.
The processor 301 and the memory 302 may be connected by a bus or otherwise, for example in fig. 6.
The memory 302 is used as a non-volatile computer readable storage medium for storing non-volatile software programs, non-volatile computer executable programs, and modules, such as program instructions/modules corresponding to the method for maintaining port mapping for an intelligent network card in the embodiments of the present application. The processor 301 executes various functional applications of the server and data processing, i.e., implements a method for maintaining port mapping for the intelligent network card, by running non-volatile software programs, instructions and modules stored in the memory 302.
Memory 302 may include a storage program area that may store an operating system, at least one application program required for functionality, and a storage data area; the storage data area may store data created according to the use of a method for maintaining port mappings for the intelligent network card, etc. In addition, memory 302 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid-state storage device. In some embodiments, memory 302 may optionally include memory located remotely from processor 301, which may be connected to the local module via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
One or more computer instructions 303 corresponding to a method for maintaining port mapping for an intelligent network card are stored in the memory 302, which when executed by the processor 301, perform the method for maintaining port mapping for an intelligent network card in any of the method embodiments described above.
Any one embodiment of a computer device that performs the above method for maintaining port mapping for an intelligent network card may achieve the same or similar effects as any one of the method embodiments described above.
The present invention also provides a computer readable storage medium storing a computer program which when executed by a processor performs a method for maintaining port mapping for an intelligent network card.
Fig. 7 is a schematic diagram of an embodiment of the above-mentioned computer storage medium for maintaining port mapping of an intelligent network card according to the present invention. Taking a computer storage medium as shown in fig. 7 as an example, the computer readable storage medium 401 stores a computer program 402 that when executed by a processor performs the above method.
Finally, it should be noted that, as will be appreciated by those skilled in the art, implementing all or part of the above-described methods in the embodiments may be implemented by a computer program to instruct related hardware, and the program for the method for maintaining port mapping of an intelligent network card may be stored in a computer readable storage medium, where the program when executed may include the flow of the embodiments of the methods described above. The storage medium of the program may be a magnetic disk, an optical disk, a read-only memory (ROM), a random-access memory (RAM), or the like. The computer program embodiments described above may achieve the same or similar effects as any of the method embodiments described above.
The foregoing is an exemplary embodiment of the present disclosure, but it should be noted that various changes and modifications could be made herein without departing from the scope of the disclosure as defined by the appended claims. The functions, steps and/or actions of the method claims in accordance with the disclosed embodiments described herein need not be performed in any particular order. Furthermore, although elements of the disclosed embodiments may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated.
It should be understood that as used herein, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly supports the exception. It should also be understood that "and/or" as used herein is meant to include any and all possible combinations of one or more of the associated listed items.
The foregoing embodiment of the present invention has been disclosed with reference to the number of embodiments for the purpose of description only, and does not represent the advantages or disadvantages of the embodiments.
It will be understood by those skilled in the art that all or part of the steps for implementing the above embodiments may be implemented by hardware, or may be implemented by a program for instructing relevant hardware, and the program may be stored in a computer readable storage medium, where the storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
Those of ordinary skill in the art will appreciate that: the above discussion of any embodiment is merely exemplary and is not intended to imply that the scope of the disclosure of embodiments of the invention, including the claims, is limited to such examples; combinations of features of the above embodiments or in different embodiments are also possible within the idea of an embodiment of the invention, and many other variations of the different aspects of the embodiments of the invention as described above exist, which are not provided in detail for the sake of brevity. Therefore, any omission, modification, equivalent replacement, improvement, etc. of the embodiments should be included in the protection scope of the embodiments of the present invention.

Claims (10)

1. A method for maintaining port mappings for an intelligent network card, comprising the steps of:
responding to a received request input from the outside, judging whether the request is a query request for port mapping information or a new mapping establishment request;
responding to the request being a new mapping establishment request, respectively carrying out port information matching on the on-chip storage and the external storage;
in response to successful matching, replacing the original mapping relation by using the new mapping relation; and
and in response to the failure of the matching of the on-chip storage or the external storage, writing the new mapping relation into the on-chip storage or the external storage.
2. The method according to claim 1, wherein the method further comprises:
querying the on-chip storage for port mapping information in response to the request being a query request for the port mapping information;
in response to a query failure, querying the external store for the port mapping information; and
and responding to the success of the query, outputting a query result and writing the port mapping information into the on-chip storage.
3. The method of claim 2, wherein querying the on-chip storage for the port mapping information comprises:
and reading the mapping data pointed by the identification register in the on-chip storage, comparing the mapping data with the port mapping information, and judging whether the mapping data and the port mapping information are identical.
4. The method of claim 1, wherein writing the new mapping relationship to an on-chip storage or an external storage comprises:
judging whether the storage space of the on-chip storage or the external storage is smaller than a threshold value; and
and replacing the earliest written information of the on-chip storage or the external storage by the new mapping relation in response to the storage space of the on-chip storage or the external storage being smaller than a threshold value.
5. A system for maintaining port mappings for an intelligent network card, comprising:
the input-output module is configured to respond to a received request input from the outside and judge whether the request is a query request for port mapping information or a request for establishing new mapping;
the matching module is configured to respond to the request being a new mapping establishment request and respectively match port information in on-chip storage and external storage;
a replacement module configured to replace an original mapping relationship with a new mapping relationship in response to successful matching; and
and the writing module is configured to respond to the matching failure of the on-chip storage or the external storage and write the new mapping relation into the on-chip storage or the external storage.
6. The system of claim 5, further comprising a query module configured to:
querying the on-chip storage for port mapping information in response to the request being a query request for the port mapping information;
in response to a query failure, querying the external store for the port mapping information; and
and responding to the success of the query, outputting a query result and writing the port mapping information into the on-chip storage.
7. The system of claim 6, wherein the query module is further configured to:
and reading the mapping data pointed by the identification register in the on-chip storage, comparing the mapping data with the port mapping information, and judging whether the mapping data and the port mapping information are identical.
8. The system of claim 5, wherein the write module is configured to:
judging whether the storage space of the on-chip storage or the external storage is smaller than a threshold value; and
and replacing the earliest written information of the on-chip storage or the external storage by the new mapping relation in response to the storage space of the on-chip storage or the external storage being smaller than a threshold value.
9. A computer device, comprising:
at least one processor; and
a memory storing computer instructions executable on the processor, which when executed by the processor, perform the steps of the method of any one of claims 1-4.
10. A computer readable storage medium storing a computer program, characterized in that the computer program when executed by a processor implements the steps of the method of any of claims 1-4.
CN202111507566.XA 2021-12-10 2021-12-10 Method and device for maintaining port mapping of intelligent network card Active CN114327262B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111507566.XA CN114327262B (en) 2021-12-10 2021-12-10 Method and device for maintaining port mapping of intelligent network card

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111507566.XA CN114327262B (en) 2021-12-10 2021-12-10 Method and device for maintaining port mapping of intelligent network card

Publications (2)

Publication Number Publication Date
CN114327262A CN114327262A (en) 2022-04-12
CN114327262B true CN114327262B (en) 2024-03-08

Family

ID=81051411

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111507566.XA Active CN114327262B (en) 2021-12-10 2021-12-10 Method and device for maintaining port mapping of intelligent network card

Country Status (1)

Country Link
CN (1) CN114327262B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116208479B (en) * 2022-12-09 2024-05-28 四川天邑康和通信股份有限公司 Voice port matching method, system, electronic equipment and readable storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108696461A (en) * 2017-03-31 2018-10-23 英特尔公司 Shared memory for intelligent network interface card
CN111224899A (en) * 2019-10-31 2020-06-02 北京浪潮数据技术有限公司 Method, device, equipment and medium for mirroring flow of virtual port
CN111628999A (en) * 2020-05-27 2020-09-04 网络通信与安全紫金山实验室 SDN-based FAST-CNP data transmission method and system
CN111698167A (en) * 2020-04-01 2020-09-22 新华三大数据技术有限公司 Message processing method and device
CN112671578A (en) * 2020-12-23 2021-04-16 北京浪潮数据技术有限公司 SRIOV virtual network configuration method and related device
WO2021164398A1 (en) * 2020-02-20 2021-08-26 华为技术有限公司 Packet processing system and method, and machine-readable storage medium and program product
CN113645047A (en) * 2021-07-23 2021-11-12 苏州浪潮智能科技有限公司 Out-of-band management system and server based on intelligent network card

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7778203B2 (en) * 2008-02-01 2010-08-17 Microsoft Corporation On-demand MAC address lookup
US20180109471A1 (en) * 2016-10-13 2018-04-19 Alcatel-Lucent Usa Inc. Generalized packet processing offload in a datacenter
US11593140B2 (en) * 2019-06-28 2023-02-28 Hewlett Packard Enterprise Development Lp Smart network interface card for smart I/O
US11444996B2 (en) * 2020-04-20 2022-09-13 Cisco Technology, Inc. Two-level cache architecture for live video streaming through hybrid ICN

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108696461A (en) * 2017-03-31 2018-10-23 英特尔公司 Shared memory for intelligent network interface card
CN111224899A (en) * 2019-10-31 2020-06-02 北京浪潮数据技术有限公司 Method, device, equipment and medium for mirroring flow of virtual port
WO2021164398A1 (en) * 2020-02-20 2021-08-26 华为技术有限公司 Packet processing system and method, and machine-readable storage medium and program product
CN111698167A (en) * 2020-04-01 2020-09-22 新华三大数据技术有限公司 Message processing method and device
CN111628999A (en) * 2020-05-27 2020-09-04 网络通信与安全紫金山实验室 SDN-based FAST-CNP data transmission method and system
CN112671578A (en) * 2020-12-23 2021-04-16 北京浪潮数据技术有限公司 SRIOV virtual network configuration method and related device
CN113645047A (en) * 2021-07-23 2021-11-12 苏州浪潮智能科技有限公司 Out-of-band management system and server based on intelligent network card

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
一种智能网卡系统;党磊;;计算机产品与流通;20180515(第05期);全文 *
智能网卡应用于云网络加速方案研究;刘畅;陶云祥;戎胤;;电信工程技术与标准化;20200811(第08期);全文 *

Also Published As

Publication number Publication date
CN114327262A (en) 2022-04-12

Similar Documents

Publication Publication Date Title
US10915381B2 (en) System and method for computational storage device intercommunication
CN108701004B (en) System, method and corresponding device for data processing
JP4242835B2 (en) High data rate stateful protocol processing
US10783086B2 (en) Method and apparatus for increasing a speed of accessing a storage device
US20150127649A1 (en) Efficient implementations for mapreduce systems
US9304902B2 (en) Network storage system using flash storage
CN111654519B (en) Method and device for transmitting data processing requests
CN110912836B (en) Method for forwarding data by forwarding device, control device, storage medium and system
CN113472624A (en) Method for realizing virtual network data packet forwarding based on vDPA and application
CN113746749A (en) Network connection device
CN114465770A (en) Data processing method and related device
EP3744066B1 (en) Method and device for improving bandwidth utilization in a communication network
CN114327262B (en) Method and device for maintaining port mapping of intelligent network card
CN113411380A (en) Processing method, logic circuit and equipment based on FPGA (field programmable gate array) programmable session table
CN107294865B (en) load balancing method of software switch and software switch
CN116599892B (en) Server system, routing method, routing device, electronic equipment and storage medium
CN115941630A (en) DPU-based cross-network card forwarding method, system, medium, CPU processor and intelligent network card
CN116032837A (en) Flow table unloading method and device
CN106302201A (en) Flow control methods, equipment and system
CN117714398B (en) Data transmission system, method, electronic equipment and storage medium
CN118394420B (en) Driving method, computer equipment and medium
US12147429B2 (en) Method and device of data transmission
US20240045869A1 (en) A method and device of data transmission
CN115865803B (en) IO request processing method, device, equipment and readable storage medium
CN118113638A (en) RDMA data transmission method and device

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
GR01 Patent grant
GR01 Patent grant