Fragmented packet recombination method and device, electronic equipment, chip and storage medium
By using a shard table update method with a full hardware structure in shard packet restructuring, the problem of slow shard packet restructuring in the prior art is solved, and faster processing speed and higher efficiency are achieved.
Patent Information
- Application Number
- CN202311198769.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-15
- Publication Date
- 2025-03-18
AI Technical Summary
The prior art processes slower during the shard packet reorganization process, especially when the number of independent shard records increases, the linked list method leads to an increase in search time, and the complex software and hardware interaction reduces the reorganization speed.
By receiving the first shard packet, it obtains its identification information, determines the corresponding shard table, and updates its offset information to the shard table. When the shard table contains offset information of all shard packets, it is judged that the data packet reorganization is successful. This method adopts a full hardware structure, simplifying the structure and interaction process.
The reading time of independent shard records is shortened, the processing speed of shard packet reorganization is improved, and the complexity of software and hardware interaction is avoided through the full hardware structure, and the reorganization efficiency is improved.
Smart Images

Figure CN119652838A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the technical field of data transmission, and in particular to a fragment packet reassembly method and device, electronic equipment, chip and storage medium. Background Art
[0002] For a specific network, the maximum amount of data allowed for a single transmission is the maximum transmission unit (MTU) of the specific network. When the data packet to be transmitted is larger than the MTU of the network, it is necessary to divide the data packet into multiple fragment packets that are smaller than the MTU of the network, that is, fragmentation is performed, and the fragment packets obtained by the fragmentation are transmitted to the receiving end respectively. At the receiving end, the fragment packets need to be reassembled to obtain a complete data packet. This is the reorganization of the fragment packets.
[0003] At present, software and hardware methods are generally used to reassemble fragmented packets. A commonly used specific method is to use a linked list method to reassemble the fragmented packets, which has a slow processing speed. Summary of the invention
[0004] The present disclosure provides a fragment packet reassembly method, device, electronic device, chip and storage medium to solve the problems in the related art.
[0005] A first aspect embodiment of the present disclosure proposes a fragment packet reassembly method, the method comprising: receiving a first fragment packet and obtaining identification information of the first fragment packet; determining a fragment table corresponding to a first data packet based on the identification information of the first fragment packet, wherein the first fragment packet belongs to the first data packet, and the fragment table records offset information of one or more fragment packets included in the first data packet; updating the offset information of the first fragment packet to the fragment table; and determining that the first data packet has been successfully reassembled when the fragment table includes the offset information of all fragment packets of the first data packet.
[0006] In some embodiments of the present disclosure, obtaining identification information of the first fragment packet includes: determining a header and a data portion of the first fragment packet; parsing the header to determine identification information, wherein the identification information includes at least one of an identification of the first fragment packet, an identification of a first data packet to which the first fragment packet belongs, and a serial number of the first data packet.
[0007] In some embodiments of the present disclosure, determining the fragment table corresponding to the first data packet based on the identification information of the first fragment packet includes: determining whether fragment page information of the first data packet exists in the first storage space as a judgment result based on the identification information of the first fragment packet; and determining the fragment table corresponding to the first data packet based on the judgment result.
[0008] In some embodiments of the present disclosure, determining the shard table corresponding to the first data packet based on the judgment result includes: when the shard page information of the first data packet does not exist in the first storage space, creating the shard page information and shard table corresponding to the first data packet in the first storage space.
[0009] In some embodiments of the present disclosure, determining the fragment table corresponding to the first data packet based on the judgment result includes: when there is fragment page information of some fragment packets contained in the first data packet in the first storage space, determining the fragment table corresponding to the first data packet based on the fragment page information.
[0010] In some embodiments of the present disclosure, the method further includes: if the fragment page information of all the fragment packets included in the first data packet exists in the first storage space, discarding the first fragment packet.
[0011] In some embodiments of the present disclosure, the shard page information includes at least one of the following: information of a reorganized data space, shard table space information, and the number of shard table records. The reorganized data space is used to store one or more shard packets in a first data packet. The shard table space information is used to identify the location of the shard table in the first storage space. The number of shard table records is used to identify the number of data items recorded in the shard table.
[0012] In some embodiments of the present disclosure, when the fragment page information of the first data packet does not exist in the first storage space, updating the offset information of the first fragment packet into the fragment table includes: reading the created fragment table from the first storage space; writing the offset information of the first fragment packet into the created fragment table in the second storage space; and updating the fragment page information corresponding to the first data packet.
[0013] In some embodiments of the present disclosure, when fragment page information of some fragment packets included in the first data packet exists in the first storage space, updating the offset information of the first fragment packet into the fragment table includes: reading the fragment table corresponding to the first data packet from the first storage space, wherein the offset information of the some fragment packets is recorded in the fragment table corresponding to the first data packet; comparing the offset information of the first fragment packet with the offset information of the some fragment packets in the second storage space, and inserting the offset information of the first fragment packet into the fragment table corresponding to the first data packet in the first order; and updating the fragment page information corresponding to the first data packet.
[0014] In some embodiments of the present disclosure, the first fragment packet is stored in the reassembly data space according to the offset information of the first fragment packet.
[0015] In some embodiments of the present disclosure, when the first data packet is reassembled successfully, the space of the shard table of the first data packet is released in the first storage space, and the shard page information corresponding to the first data packet is updated; when the first data packet is not reassembled successfully, the updated shard table is written back to the first storage space, and the shard page information corresponding to the first data packet is updated.
[0016] The second aspect embodiment of the present disclosure proposes a fragment packet reassembly device, which includes: an acquisition module, which receives a first fragment packet and obtains identification information of the first fragment packet; a determination module, which is used to determine the fragment table corresponding to the first data packet based on the identification information of the first fragment packet, wherein the first fragment packet belongs to the first data packet, and the fragment table records the offset information of one or more fragment packets included in the first data packet; an update module, which is used to update the offset information of the first fragment packet to the fragment table; and a reassembly module, which is used to determine that the reassembly of the first data packet is successful when the fragment table includes the offset information of all fragment packets of the first data packet.
[0017] The third aspect embodiment of the present disclosure proposes an electronic device, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the method described in the first aspect embodiment of the present disclosure.
[0018] The fourth aspect embodiment of the present disclosure proposes a non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to enable a computer to execute the method described in the first aspect embodiment of the present disclosure.
[0019] A fifth aspect embodiment of the present disclosure provides a computer program product, including a computer program, which executes the method described in the first aspect embodiment of the present disclosure when a processor is used to execute the computer program.
[0020] The fifth aspect embodiment of the present disclosure proposes a chip, characterized in that it includes at least one processor and a communication interface; the communication interface is used to receive signals input into the chip or signals output from the chip, and the processor communicates with the communication interface and implements the method described in the first aspect embodiment of the present disclosure through logic circuits or execution code instructions.
[0021] In summary, the fragment packet reassembly method proposed in the present invention receives the first fragment packet, obtains the fragment table corresponding to the first data packet according to the identification information of the fragment packet, reads the fragment table information once, updates the offset information of the first fragment packet to the fragment table, and determines that the first fragment packet is successfully reassembled when the fragment table contains the offset information of all fragment packets of the first data packet, thereby shortening the reading time of independent fragment records and improving the processing speed of fragment packet reassembly.
[0022] In addition, the fragment packet reassembly method proposed in the present disclosure adopts a full hardware structure, which is simple in structure and does not require software and hardware interaction. The reassembly of the fragment packets is not limited by the processing speed of the processor, so the efficiency of the fragment packet reassembly can be improved.
[0023] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] The drawings herein are incorporated into and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the description are used to explain the principles of the present disclosure, and do not constitute improper limitations on the present disclosure.
[0025] Figure 1 A schematic diagram of a flow chart of a fragment packet reassembly method provided in an embodiment of the present disclosure;
[0026] Figure 2 A schematic diagram of a flow chart of a fragment packet reassembly method provided in an embodiment of the present disclosure;
[0027] Figure 3 A schematic diagram of a flow chart of a fragment packet reassembly method provided in an embodiment of the present disclosure;
[0028] Figure 4 A schematic diagram of a flow chart of a fragment packet reassembly method provided in an embodiment of the present disclosure;
[0029] Figure 5 A schematic diagram of a flow chart of a fragment packet reassembly method provided in an embodiment of the present disclosure;
[0030] Figure 6 A schematic diagram of a flow chart of a fragment packet reassembly method provided in an embodiment of the present disclosure;
[0031] Figure 7 An architecture diagram of a fragment packet reassembly system provided in an embodiment of the present disclosure;
[0032] Figure 8 An architecture diagram of a fragment packet reassembly system provided in an embodiment of the present disclosure;
[0033] Fig. 9An exemplary method diagram of a fragment packet reassembly provided in an embodiment of the present disclosure;
[0034] Fig.10 A schematic diagram of the structure of a fragment packet reassembly device provided in an embodiment of the present disclosure;
[0035] Fig.11 A schematic diagram of the structure of an electronic device provided in an embodiment of the present disclosure;
[0036] Fig.12 A schematic diagram of the chip structure provided in an embodiment of the present disclosure. DETAILED DESCRIPTION
[0037] Embodiments of the present disclosure are described in detail below, and examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are intended to be used to explain the present disclosure, and should not be construed as limiting the present disclosure.
[0038] In the information age, economic and social development depends on data and information, and the demand for information exchange has shown explosive growth, which has put forward higher requirements for data transmission. In the process of data transmission, it is necessary to transmit based on the physical network. For a specific physical network, there is a limit on the maximum transmission unit. When the data packet to be transmitted is larger than the maximum transmission unit of a specific physical network, the data packet can be fragmented into multiple fragment packets and transmitted separately. After receiving all the fragment packets, the receiving end reassembles the fragment packets into a complete data packet. This process is a complete fragment packet reassembly process, in which the receiving end can be a data transceiver.
[0039] At present, the common method for fragment packet reassembly is the linked list method, which records fragment information in a linked list. When the number of independent fragment records increases, the linked list continues to grow, the search time increases, and the fragment packet reassembly speed decreases. Secondly, the existing technology usually uses a combination of software and hardware to reassemble fragment packets. The complex interaction between software and hardware will also reduce the fragment packet reassembly speed.
[0040] In order to solve the problems existing in the related technology, the present disclosure proposes a fragment package reorganization method, which shortens the reading time of independent fragment records and improves the processing speed of fragment package reorganization by utilizing the fragment table to record historical independent fragments; secondly, the fragment package reorganization method proposed in the present disclosure adopts a full hardware structure, has fast processing speed and simple structure, and improves the reorganization efficiency of fragment packages.
[0041] For example, the shard packet reorganization method disclosed in the present invention can use the following architecture to complete the shard packet reorganization. The architecture may include an index module, a main control module, a shard table update module, a local shard table, and a memory space, etc. The index module indexes the reception status of the data packet and the shard page information; the main control module is used to interact with the memory space to perform operations such as reading and writing back the shard page information and shard table, and moving the shard packet data; the shard table update module can be used to compare and reorganize the historical independent shard records in the local shard table with the currently received shard information, and update the shard table; the local shard table can be used to store the shard table read back from the memory space and the updated shard table; the memory space can be used to store information such as shard pages, shard tables, and reorganized data space, and can be used to implement the storage of historical independent shard records and the storage of data to be reorganized.
[0042] Figure 1 The following is a flow chart of a fragment packet reassembly method provided by an embodiment of the present disclosure. Figure 1 As shown, the method can be executed by an electronic device, optionally, the method can be executed by a network device, optionally, the method can be executed by a data packet transceiver device. The method can include the following steps.
[0043] Step 101: Receive a first fragment packet and obtain identification information of the first fragment packet.
[0044] In some embodiments, the first fragment packet may be composed of a header and a data portion, wherein the header information stores identification information of the first fragment packet; and the data portion information contains a portion of data in the first data packet.
[0045] In some embodiments, the first data packet may be a data packet to be integrated, and its name may also be a receiving-end data packet, a data packet to be restored, etc., and the present disclosure does not limit its name.
[0046] In some embodiments, the identification information may be used to indicate relevant information of the first fragment packet, for example, to which data packet the first fragment packet belongs, offset information of the first fragment packet, and the like.
[0047] In some embodiments, to obtain the identification information of the first fragment packet, it is first necessary to determine the header and data part of the first fragment packet, the header of the fragment packet contains the identification information of the fragment packet, and then the header is parsed to determine the identification information, wherein the identification information includes at least one of the identification of the first fragment packet, the identification of the first data packet to which the first fragment packet belongs, and the serial number of the first data packet.
[0048] Step 102: determine a fragment table corresponding to the first data packet according to the identification information of the first fragment packet, wherein the first fragment packet belongs to the first data packet, and the fragment table records the offset information of one or more fragment packets included in the first data packet.
[0049] In some embodiments, the fragmentation table can record the start and end offset information of independent fragments received for the same data packet, and store the offset information of these independent fragments in order of the offset. For example, a fragmentation table can correspond to a first data packet, wherein the size of the fragmentation table can be manually controlled, and the scalability is high. For example, when the fragmentation table is set to be larger, the more start and end offset information of independent fragments that can be recorded, the smaller the fragmentation granularity supported for the original data packet, and the maximum number of concurrent fragmented data packets can be achieved.
[0050] In some embodiments, the original data packet may be a data packet that a sending end needs to send to a receiving end during a data transmission process and that has not been fragmented.
[0051] In some embodiments, the fragmentation granularity of the original data packet may refer to the amount of data in the fragmented packets obtained when the original data packet is fragmented. The smaller the fragmentation granularity, the smaller the amount of data in the fragmented packets, and the more fragmented packets will be obtained.
[0052] In some embodiments, the fragment table corresponding to the first data packet can be determined based on the identification information of the first fragment packet. For example, an index method can be used to query the corresponding fragment table information. For example, a bitmap query, hash index, etc. can be used to identify the identification information of the first fragment packet, and the matching fragment table information can be queried based on the identification information.
[0053] Step 103: Update the offset information of the first fragment packet into the fragment table.
[0054] In some embodiments, the offset information of the first fragment packet can be updated to the fragment table, and the offset information of the first fragment packet can be sorted with the start and end offset information of independent fragments of the same data packet recorded in the fragment table, and the offset information of the first fragment packet can be updated to the fragment table.
[0055] In the above embodiment, if one or more offset information in the shard table can be merged with the offset information of the first shard package, two or more independent shard package offset information can be combined into an independent shard package offset information, and redundant shard table space can be released. The released shard table space can be used to receive more shard packages, realize the circulation of shard table space, reduce the required number of shard table spaces, and reduce memory requirements.
[0056] Optionally, "there is a situation where merging is possible" may mean that the offset information of the currently received first fragment packet overlaps, intersects or ends with the offset information of one or more fragment packets in the fragment table, wherein the overlap may be complete overlap or partial overlap.
[0057] For example, the offset information of the first fragment package is: the starting position of the first fragment package is the 100th data bit, and the ending position is the 199th data bit; the offset information of the existing independent historical fragment packages in the fragment table is: the starting position of historical fragment package #1 is the 0th data bit, and the ending position is the 150th data bit, and the starting position of historical fragment package #2 is the 190th data bit, and the ending position is the 300th data bit. Then, after the first fragment package is inserted into the fragment table, a fragment package is formed, whose starting position is the 0th data bit and the ending position is the 300th data bit. At this time, the number of fragment packages updated in the fragment page is 1.
[0058] For another example, the offset information of the first fragment package is: the starting position of the first fragment package is the 100th data bit, and the ending position is the 199th data bit; the offset information of the existing independent historical fragment packages in the fragment table is: the starting position of historical fragment package #1 is the 0th data bit, and the ending position is the 99th data bit, and the starting position of historical fragment package #2 is the 200th data bit, and the ending position is the 300th data bit. After the first fragment package is inserted into the fragment table, a fragment package is formed, and its starting position is the 0th data bit, and the ending position is the 300th data bit. At this time, the number of fragment packages updated in the fragment page is 1.
[0059] For another example, the offset information of the first fragment package is: the starting position of the first fragment package is the 100th data bit, and the ending position is the 199th data bit; the offset information of the existing independent historical fragment packages in the fragment table is: the starting position of historical fragment package #1 is the 0th data bit, and the ending position is the 50th data bit, and the starting position of historical fragment package #2 is the 200th data bit, and the ending position is the 300th data bit. After the first fragment package is inserted into the fragment table, two fragment packages are formed, namely, the fragment package with the starting position of the 0th data bit and the ending position of the 50th data bit, and the fragment package with the starting position of the 100th data bit and the ending position of the 300th data bit. At this time, the number of fragment packages updated in the fragment page is 2.
[0060] Step 104: When the fragment table includes the offset information of all fragment packets of the first data packet, it is determined that the first data packet is successfully reassembled.
[0061] In some embodiments, after the fragment table is updated, it can be confirmed by querying whether the fragment package sequence number is complete, whether the last fragment package identification information is received, etc., whether the fragment table has obtained the offset information of all fragment packages. When the offset information of all fragment packages is obtained, it can be determined that the first data packet is reassembled successfully and the reassembled data packet can be output.
[0062] In summary, the above-mentioned embodiments of the present application receive the first fragment packet and obtain the identification information of the first fragment packet; determine the fragment table corresponding to the first data packet according to the identification information of the first fragment packet, wherein the first fragment packet belongs to the first data packet, and the fragment table records the offset information of one or more fragment packets included in the first data packet; update the offset information of the first fragment packet to the fragment table; when the fragment table includes the offset information of all fragment packets of the first data packet, determine that the first data packet is successfully reassembled, thereby shortening the reading time of independent fragment records and improving the processing speed of fragment packet reassembly.
[0063] In addition, the above-mentioned embodiments of the present application use a full hardware structure to implement fragment packet reassembly, without software and hardware interaction scenarios, thereby improving the efficiency of fragment packet reassembly.
[0064] Figure 2 The following is a flow chart of a fragment packet reassembly method provided by an embodiment of the present disclosure. Figure 2 As shown, based on Figure 1 In the embodiment shown, this embodiment specifically describes the above step 102. The method may include the following steps.
[0065] Step 201: Determine whether fragment page information of a first data packet exists in a first storage space according to identification information of a first fragment packet.
[0066] In some embodiments, the fragment page information may be used to represent relevant information of the first data packet.
[0067] In some embodiments, the shard page information may include at least one of the following: information about the reorganized data space, shard table space information, and the number of shard table records.
[0068] In some embodiments, the reorganized data space information is used to identify the position of the reorganized data space in the first storage space, and the reorganized data space is used to store one or more fragment packets in the first data packet. The arrangement method of these fragment packets is consistent with the arrangement method of each independent fragment record in the fragment table, and is sorted according to the offset information of the fragment packets.
[0069] In some embodiments, the shard table space information is used to identify the location of the shard table in the first storage space, wherein the first storage space may be a memory space. Specifically, in the present disclosure, the first storage space may be a double data rate (DDR) memory space, and the shard page, shard table, and reorganized data space may all be stored in the DDR space.
[0070] In some embodiments, the number of records in the shard table is used to identify the number of data items recorded in the shard table. The shard table can record its information based on the received first shard packet, and the number of recorded data items is the number of records in the shard table.
[0071] In some embodiments, according to the identification information of the first fragment packet, the fragment page information of the matching first data packet can be queried in the first storage space. For example, an index method can be used to query the fragment page information in the first storage space.
[0072] Step 202: If the fragment page information of the first data packet does not exist in the first storage space, create fragment page information and a fragment table corresponding to the first data packet in the first storage space.
[0073] In some embodiments, if the first storage space does not contain a fragmentation page of the first data packet, a new fragmentation page and a fragmentation table may be created, and the identification information of the newly created fragmentation page and the fragmentation table matches the first data packet. The corresponding information of the first data packet is written into the newly created fragmentation page, and the offset information of the received fragmentation packet is written into the newly created page table.
[0074] Step 203: When the fragment page information of some fragment packets included in the first data packet exists in the first storage space, determine the fragment table corresponding to the first data packet according to the fragment page information.
[0075] In some embodiments, the first storage space contains fragment packets belonging to the first data packet, but does not contain all fragment packets. In this case, the reorganization is in an unsuccessful state, and the corresponding fragment page information can be queried during query.
[0076] In some embodiments, the shard table space information corresponding to the first data packet can be found based on the queried shard page information, and the shard table corresponding to the first data packet can be found.
[0077] Step 204: If the fragment page information of all the fragment packets included in the first data packet exists in the first storage space, the first fragment packet is discarded.
[0078] In some embodiments, the first storage space contains fragment packets belonging to the first data packet and contains all fragment packets. At this time, reassembly can be completed and the reassembly is successful. The received first fragment packet can be discarded.
[0079] In summary, the above-mentioned embodiments of the present application, by querying the corresponding fragment page and fragment table according to the identification information of the first fragment package, and processing the first fragment package accordingly according to the different reception conditions of the fragment package in the first data packet, realize the integration, sorting and reception of the fragment packages, and facilitate the subsequent reorganization of the fragment packages.
[0080] Figure 3 The following is a flow chart of a fragment packet reassembly method provided by an embodiment of the present disclosure. Figure 3 As shown, based on Figure 2In the embodiment shown, this embodiment specifically describes the above step 202. The method may include the following steps.
[0081] Step 301: read the created shard table from the first storage space.
[0082] In some embodiments, when the fragment page information of the first data packet does not exist in the first storage space, a new fragment table may be created. This step has been described in detail in step 202 and will not be repeated here.
[0083] Step 302: In the second storage space, write the offset information of the first fragment packet into the created fragment table.
[0084] In some embodiments, the second storage space may be a local storage space storing a local shard table for storing the shard table read back from the first storage space and the updated shard table.
[0085] In some embodiments, the newly created shard table in the first storage space may be read into the local shard table in the second storage space, and the offset information of the first shard packet may be written into the local shard table in the second storage space for updating.
[0086] Step 303: Update the fragment page information corresponding to the first data packet.
[0087] In some embodiments, after completing the update of the shard table through step 302, the updated shard table can be written back to the first storage space to complete the update of the shard table in the first storage space, and the shard page information corresponding to the first data packet can also be updated according to the updated shard table.
[0088] In summary, the above-mentioned embodiments of the present application, when the fragment page information of the first data packet does not exist in the first storage space, create a fragment table and a fragment page, and update the received first fragment packet information to the fragment table and the fragment page, thereby realizing the reception of the fragment packet without receiving any fragment packet, thereby facilitating the reception and reorganization of subsequent fragment packets.
[0089] Figure 4 The following is a flow chart of a fragment packet reassembly method provided by an embodiment of the present disclosure. Figure 4 As shown, based on Figure 2 In the embodiment shown, this embodiment specifically describes the above step 203. The method may include the following steps.
[0090] Step 401: read a fragment table corresponding to a first data packet from a first storage space, wherein the fragment table corresponding to the first data packet records offset information of some fragment packets.
[0091] In some embodiments, the first storage space contains fragment packets belonging to the first data packet, but does not contain all fragment packets. At this time, the fragment table corresponding to the first data packet can be queried, and the fragment table stores offset information of some fragment packets.
[0092] In some embodiments, the local fragment table in the second storage space can be used to read back the fragment table corresponding to the first data packet from the first storage space.
[0093] Step 402: In the second storage space, compare the offset information of the first fragment packet with the offset information of some fragment packets, and insert the offset information of the first fragment packet into the fragment table corresponding to the first data packet according to the first sequence.
[0094] In some embodiments, after reading back the fragment table corresponding to the first data packet from the first storage space to the local fragment table, the offset information of the first fragment packet can be inserted into the fragment table corresponding to the first data packet in the first order by comparing the offset information of the first fragment packet with the offset information of other fragment packets in the fragment table.
[0095] In some embodiments, the first order may be the composition order of the original data packet, that is, the order obtained by sorting the fragment packets according to their positions in the original data packet.
[0096] Step 403: Update the fragment page information corresponding to the first data packet.
[0097] In some embodiments, after the shard table information is updated locally, the updated shard table can be written back to the shard table in the first storage space to complete the update of the shard table.
[0098] In some embodiments, after the shard table is updated, the new information of the shard table can be transmitted to the shard page, and the relevant information of the shard page can be updated.
[0099] In summary, in the above embodiments of the present application, when the first storage space contains partial fragment packets of the first data packet, the fragment table is updated and the offset information of the received fragment packets is sorted in the first order to facilitate the subsequent reorganization of the fragment packets.
[0100] Figure 5 The following is a flow chart of a fragment packet reassembly method provided by an embodiment of the present disclosure. Figure 5 As shown, based on Figure 3 and Figure 4 In an embodiment, the method may further include the following steps.
[0101] Step 501: store the first fragment packet into the reorganization data space according to the offset information of the first fragment packet.
[0102] In some embodiments, the first fragment packet is stored in the reassembly data space, and the first fragment packet is stored in the reassembly data space in a first order to facilitate the subsequent reassembly of the fragment packet.
[0103] In some embodiments, reassembly of the first fragment packet is also performed in the reassembly data space.
[0104] In summary, the above embodiments of the present application implement reception and storage of the fragment packets at the receiving end by storing the first fragment packets in the reassembly data space in the first order, thereby facilitating the subsequent completion of the reassembly process.
[0105] Figure 6 The following is a flow chart of a fragment packet reassembly method provided by an embodiment of the present disclosure. Figure 6 As shown, based on Figure 1 In the embodiment shown, the method may further include the following steps.
[0106] Step 601, when the first data packet is reassembled successfully, in the first storage space, the space of the fragment table of the first data packet is released, and the fragment page information corresponding to the first data packet is updated.
[0107] In some embodiments, when all fragment packets have been received in the reassembled data space, the data is reassembled successfully and the reassembled data packet is output.
[0108] In some embodiments, after the data is successfully reorganized and output, there is no data on the shard table. At this time, the shard table space can be released and the shard page information corresponding to the first data packet can be updated. The release of the shard table space can realize the circulation of the shard table space, reduce the number of shard table spaces required, and reduce memory requirements.
[0109] Step 602, when the first data packet is not successfully reassembled, the updated fragment table is written back to the first storage space, and the fragment page information corresponding to the first data packet is updated.
[0110] In some embodiments, when the reassembly data space does not receive all the fragment packets, data reassembly is unsuccessful. At this time, the first fragment packet may be stored in the reassembly data space.
[0111] In some embodiments, after the first fragment packet is stored in the reorganized data space, the information of the fragment table needs to be updated, the offset information of the first fragment packet is compared with the offset information of other fragment packets in the fragment table, and the offset information of the first fragment packet is inserted into the fragment table to implement the fragment table update.
[0112] In some embodiments, after the shard table information is updated, it can be written back to the first storage space and the corresponding information of the shard page can be updated.
[0113] In summary, in the above-mentioned embodiments of the present application, when the shard package reorganization is unsuccessful, the first shard package is received and the corresponding shard table shard page information is updated to facilitate the subsequent reorganization of the shard package; when the shard package reorganization is successful, the shard table space is released and the shard page information is updated to realize the circulation of the shard table space, reduce the required number of shard table spaces, and reduce memory requirements.
[0114] The technical solution of the present disclosure is further described in detail below in conjunction with specific application examples.
[0115] Figure 7 An architectural diagram of a fragment packet reassembly method system provided in an embodiment of the present disclosure.
[0116] The system includes an index module, a main control module, a shard table update module, a local shard table and a DDR space.
[0117] In some embodiments, the index module can be used to implement fast indexing of data packet reception status and fragment page information.
[0118] In some embodiments, the main control module can be used for interaction with the DDR, including reading and writing back the slice page information and slice table, and moving the slice packet data.
[0119] In some embodiments, the shard table update module can be used to compare and reorganize the historical independent shard records in the local shard table with the currently received shard information to update the shard table.
[0120] In some embodiments, the local shard table may be used to store the shard table read back from the DDR and the updated shard table.
[0121] In some embodiments, the DDR space stores fragment pages, fragment tables, and reorganization data space, which can be used to implement storage of historical independent fragment records and storage of data to be reorganized.
[0122] In some embodiments, the shard page contains shard information of the data packet; the shard information in the shard page may include the following information: reorganized data space information, shard table space information, the number of historical independent shard records in the shard table, etc.
[0123] In some embodiments, the fragmentation table is used to record the start and end offset information of the historically received independent fragments of the same data packet, and each independent fragmentation record is arranged in the order of the offset; one fragmentation table corresponds to one data packet to be reassembled. The user can set the number of historical independent fragmentation records that can be recorded by adjusting the size of the fragmentation table, which has high scalability; the larger the fragmentation table, the more independent fragmentation records that can be recorded, and the smaller the fragmentation granularity of the original data packet that can be supported.
[0124] In some embodiments, the reassembly data space is used to store the fragmented packet data to be reassembled of the same data packet, and the fragmented packets stored therein correspond one-to-one with the independent fragment record information recorded in the fragment table (e.g. Figure 8 shown).
[0125] Based on the above architecture, an example method for reassembling fragmented packets is provided, such as Fig. 9 As shown, the specific steps of the method are as follows.
[0126] Step 901: According to the packet identification information, the receiving status and fragment page information of the corresponding data packet are indexed by the index module.
[0127] Among them, the indexing method can be: bitmap query, hash index, etc.;
[0128] Among them, each data packet has a unique packet identification information;
[0129] If the corresponding shard page is not indexed, a new shard page needs to be applied for.
[0130] Step 902, obtaining the reception status of the data packet according to the index and making a judgment.
[0131] a. If the data packet is a "sharded packet that has not been received", it is necessary to apply for a new reorganization data space and shard table space; then execute step 903.
[0132] b. If the data packet is a "partially received fragmented packet" but has not been reassembled successfully, the fragmentation information of the corresponding data packet is read from the DDR according to the fragmentation page information; then step 904 is executed.
[0133] c. If the data packet is “completely received”, discard the fragment packet; then jump to step 908.
[0134] Step 903, move the fragment packet to the corresponding offset of the reorganized data space, write the offset information of the current fragment packet into the fragment table, update the fragment page information, and update the data packet reception status to "partial fragment packet has been received"; then jump to step 908.
[0135] Step 904: According to the reassembled data space information in the fragmentation information and the offset information of the current fragmentation packet, the current fragmentation packet is moved to the corresponding offset in the reassembled data space.
[0136] Among them, the fragment packets are moved to the corresponding offset. Since the fragment packets have been sorted in the process of storing the fragment packets, it is convenient for the output of the data packet after the subsequent reassembly is successful.
[0137] Step 905: read the historical independent shard records in the corresponding shard table from the DDR into the local shard table according to the shard table space information and the number of historical independent shard records in the shard information.
[0138] Among them, no matter how many shard records are contained in the shard table, they can be read back to the local shard table at one time.
[0139] Step 906: The shard table update module compares the historical independent shard records and the current shard information in the shard table and updates the shard records.
[0140] The shard table update module reads the historical independent shard records in the local shard table one by one, compares them with the current shard information, updates the shard records, and then writes the updated shard records back to the local shard table one by one. Although the time to update shard records will increase with the increase in the number of shard records, it can be basically ignored compared to the time of cross-bus interaction.
[0141] Step 907: After updating the fragment record, it is necessary to determine whether the fragment package is reassembled successfully.
[0142] a. If it is determined that the fragment packet reassembly is unsuccessful, the updated fragment table is written back to the DDR and the fragment page information is updated.
[0143] b. If it is determined that the fragment packet is reassembled successfully, the reassembled data packet information is output, the fragment table space is released, the fragment page information is updated, and the data packet reception status is updated to "completely received".
[0144] The release of shard table space can realize the circulation of shard table space, reduce the number of shard table spaces required, and reduce the DDR memory requirements;
[0145] The reassembled data packet information points to the corresponding reassembled data space, including the reassembled data space address and the reassembled data length.
[0146] Step 908, the current fragment package reassembly is completed, and the next fragment package information input is waited.
[0147] Fig.10 FIG. 1 is a schematic diagram of a fragment packet reassembly device 1000 provided in an embodiment of the present disclosure. Fig.10 As shown, the fragment packet reassembly device includes:
[0148] The acquisition module 1010 is used to receive the first fragment packet and obtain the identification information of the first fragment packet; the determination module 1020 is used to determine the fragment table corresponding to the first data packet based on the identification information of the first fragment packet, wherein the first fragment packet belongs to the first data packet, and the fragment table records the offset information of one or more fragment packets included in the first data packet; the update module 1030 is used to update the offset information of the first fragment packet to the fragment table; the reassembly module 1040 is used to determine that the first data packet is successfully reassembled when the fragment table includes the offset information of all fragment packets of the first data packet.
[0149] In some embodiments, the acquisition module 1010 can also be used to: determine the header and data part of the first fragment packet; parse the header to determine identification information, wherein the identification information includes at least one of the identification of the first fragment packet, the identification of the first data packet to which the first fragment packet belongs, and the serial number of the first data packet.
[0150] In some embodiments, the determination module 1020 may also be used to:
[0151] Determine, according to the identification information of the first fragment packet, whether fragment page information of the first data packet exists in the first storage space;
[0152] When the fragment page information of the first data packet does not exist in the first storage space, create the fragment page information and the fragment table corresponding to the first data packet in the first storage space;
[0153] In a case where fragment page information of some fragment packets included in the first data packet exists in the first storage space, determining a fragment table corresponding to the first data packet according to the fragment page information;
[0154] When the fragment page information of all the fragment packets included in the first data packet exists in the first storage space, the first fragment packet is discarded.
[0155] In some embodiments, the shard page information includes at least one of the following: information of the reorganized data space, shard table space information, and the number of shard table records; the reorganized data space is used to store one or more shard packets in the first data packet, the shard table space information is used to identify the location of the shard table in the first storage space, and the number of shard table records is used to identify the number of data items recorded in the shard table.
[0156] In some embodiments, the updating module 1030 may also be used to: when there is no fragment page information of the first data packet in the first storage space, updating the offset information of the first fragment packet into the fragment table includes:
[0157] Read the created shard table from the first storage space;
[0158] In the second storage space, write the offset information of the first fragment packet into the created fragment table;
[0159] Update the fragment page information corresponding to the first data packet.
[0160] In some embodiments, the updating module 1030 may also be used to: when there is fragment page information of some fragment packets included in the first data packet in the first storage space, updating the offset information of the first fragment packet into the fragment table includes:
[0161] Reading a fragment table corresponding to the first data packet from the first storage space, wherein the fragment table corresponding to the first data packet records offset information of some fragment packets;
[0162] In the second storage space, compare the offset information of the first fragment packet with the offset information of the partial fragment packets, and insert the offset information of the first fragment packet into the fragment table corresponding to the first data packet according to the first order;
[0163] Update the fragment page information corresponding to the first data packet.
[0164] In some embodiments, the updating module 1030 may also be configured to: store the first fragment packet in the reassembled data space according to the offset information of the first fragment packet.
[0165] In some embodiments, the recombination module 1040 may also be used to:
[0166] When the first data packet is reassembled successfully, in the first storage space, the space of the fragment table of the first data packet is released, and the fragment page information corresponding to the first data packet is updated;
[0167] In the case that the first data packet is not reassembled successfully, the updated fragment table is written back to the first storage space, and the fragment page information corresponding to the first data packet is updated.
[0168] Since the device provided in the embodiment of the present disclosure corresponds to the methods provided in the above-mentioned embodiments, the implementation of the method is also applicable to the device provided in the embodiment and will not be described in detail in this embodiment.
[0169] In summary, the fragment packet reassembly device proposed in the present invention receives a first fragment packet and obtains identification information of the first fragment packet; determines the fragment table corresponding to the first data packet according to the identification information of the first fragment packet, wherein the first fragment packet belongs to the first data packet, and the fragment table records the offset information of one or more fragment packets included in the first data packet; updates the offset information of the first fragment packet to the fragment table; and determines that the first data packet is successfully reassembled when the fragment table includes the offset information of all fragment packets of the first data packet, thereby shortening the reading time of independent fragment records and improving the processing speed of fragment packet reassembly.
[0170] In the embodiments provided in the present application, the methods and devices provided in the embodiments of the present application are introduced. In order to implement the functions in the methods provided in the embodiments of the present application, the electronic device may include a hardware structure and a software module, and implement the functions in the form of a hardware structure, a software module, or a hardware structure plus a software module. A function of the functions may be executed in the form of a hardware structure, a software module, or a hardware structure plus a software module.
[0171] Fig.11 1 is a block diagram of an electronic device 1100 for implementing the above-mentioned fragment packet reassembly method according to an exemplary embodiment. For example, the electronic device 1100 may be a mobile phone, a computer, a messaging device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, etc.
[0172] Reference Fig.11 , the electronic device 1100 may include one or more of the following components: a processing component 1102 , a memory 1104 , a power component 1106 , a multimedia component 1108 , an audio component 1110 , an input / output (I / O) interface 1112 , a sensor component 1114 , and a communication component 1116 .
[0173] The processing component 1102 generally controls the overall operation of the electronic device 1100, such as operations associated with display, phone calls, data communications, camera operations, and recording operations. The processing component 1102 may include one or more processors 1120 to execute instructions to complete all or part of the steps of the above-mentioned method. In addition, the processing component 1102 may include one or more modules to facilitate the interaction between the processing component 1102 and other components. For example, the processing component 1102 may include a multimedia module to facilitate the interaction between the multimedia component 1108 and the processing component 1102.
[0174] The memory 1104 is configured to store various types of data to support operations on the electronic device 1100. Examples of such data include instructions for any application or method operating on the electronic device 1100, contact data, phone book data, messages, pictures, videos, etc. The memory 1104 may be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk, or optical disk.
[0175] The power supply component 1106 provides power to various components of the electronic device 1100. The power supply component 1106 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the electronic device 1100.
[0176] The multimedia component 1108 includes a screen that provides an output interface between the electronic device 1100 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundaries of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 1108 includes a front camera and / or a rear camera. When the electronic device 1100 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.
[0177] The audio component 1110 is configured to output and / or input audio signals. For example, the audio component 1110 includes a microphone (MIC), and when the electronic device 1100 is in an operation mode, such as a call mode, a recording mode, and a voice recognition mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in the memory 1104 or sent via the communication component 1116. In some embodiments, the audio component 1110 also includes a speaker for outputting audio signals.
[0178] I / O interface 1112 provides an interface between processing component 1102 and peripheral interface modules, which may be keyboards, click wheels, buttons, etc. These buttons may include but are not limited to: a home button, a volume button, a start button, and a lock button.
[0179] The sensor assembly 1114 includes one or more sensors for providing various aspects of status assessment for the electronic device 1100. For example, the sensor assembly 1114 can detect the open / closed state of the electronic device 1100, the relative positioning of components, such as the display and keypad of the electronic device 1100, and the sensor assembly 1114 can also detect the position change of the electronic device 1100 or a component of the electronic device 1100, the presence or absence of user contact with the electronic device 1100, the orientation or acceleration / deceleration of the electronic device 1100, and the temperature change of the electronic device 1100. The sensor assembly 1114 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly 1114 may also include an optical sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 1114 may also include an accelerometer, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
[0180] The communication component 1116 is configured to facilitate wired or wireless communication between the electronic device 1100 and other devices. The electronic device 1100 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, 4G LTE, 5G NR (NewRadio) or a combination thereof. In an exemplary embodiment, the communication component 1116 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 1116 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.
[0181] In an exemplary embodiment, the electronic device 1100 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the above methods.
[0182] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 1104 including instructions, and the instructions can be executed by a processor 1120 of the electronic device 1100 to perform the above method. For example, the non-transitory computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, etc.
[0183] The embodiments of the present disclosure further provide a non-transitory computer-readable storage medium storing computer instructions, wherein the computer instructions are used to enable a computer to execute the image encoding method described in the above embodiments of the present disclosure.
[0184] An embodiment of the present disclosure further provides a computer program product, including a computer program, which executes the image encoding method described in the above embodiment of the present disclosure when a processor is used to execute the computer program.
[0185] Fig.12 FIG. 1 is a schematic diagram of a structure of a chip 1200 for implementing the above-mentioned fragment packet reassembly method according to an exemplary embodiment. Fig.12 The chip 1200 includes a communication interface 1201 and at least one processor 1202. The communication interface 1201 is used to receive a signal input to the chip 1200 or a signal output from the above chip 1200. The processor 1202 communicates with the communication interface 1201 and implements the fragment packet reassembly method described in the above embodiment of the present disclosure through a logic circuit or executing code instructions.
[0186] It should be noted that the terms "first", "second", etc. in the specification and claims of the present disclosure and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present disclosure described herein can be implemented in an order other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.
[0187] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "illustrative embodiments", "examples", "specific examples" or "some examples" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiments or examples are included in at least one embodiment or example of the present invention. In this specification, the schematic representation of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner.
[0188] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, segment or portion of code that includes one or more executable instructions for implementing the steps of a specific logical function or process, and the scope of the preferred embodiments of the present invention includes alternative implementations in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in the reverse order depending on the functions involved, which should be understood by those skilled in the art to which the embodiments of the present invention belong.
[0189] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as an ordered list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by an instruction execution system, device or apparatus (such as a computer-based system, a system including a processing module, or other system that can fetch instructions from an instruction execution system, device or apparatus and execute instructions), or in combination with these instruction execution systems, devices or apparatuses. For the purposes of this specification, "computer-readable medium" can be any device that can contain, store, communicate, propagate or transmit a program for use by an instruction execution system, device or apparatus, or in combination with these instruction execution systems, devices or apparatuses. More specific examples of computer-readable media (a non-exhaustive list) include the following: an electrical connection with one or more wires (control method), a portable computer disk box (magnetic device), a random access memory (RAM), a read-only memory (ROM), an erasable and programmable read-only memory (EPROM or flash memory), a fiber optic device, and a portable compact disk read-only memory (CDROM). In addition, the computer-readable medium may even be paper or other suitable medium on which the program is printed, since the program may be obtained electronically, for example, by optically scanning the paper or other medium and then editing, interpreting or otherwise processing in a suitable manner if necessary, and then stored in a computer memory.
[0190] It should be understood that the various parts of the embodiments of the present invention can be implemented by hardware, software, firmware or a combination thereof. In the above embodiments, multiple steps or methods can be implemented by software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented by hardware, as in another embodiment, it can be implemented by any one of the following technologies known in the art or their combination: a discrete logic circuit having a logic gate circuit for implementing a logic function for a data signal, a dedicated integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.
[0191] A person skilled in the art may understand that all or part of the steps in the method for implementing the above-mentioned embodiment may be completed by instructing related hardware through a program, and the program may be stored in a computer-readable storage medium, which, when executed, includes one or a combination of the steps of the method embodiment.
[0192] In addition, each functional unit in each embodiment of the present invention may be integrated into a processing module, or each unit may exist physically separately, or two or more units may be integrated into one module. The above-mentioned integrated module may be implemented in the form of hardware or in the form of a software functional module. If the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it may also be stored in a computer-readable storage medium. The above-mentioned storage medium may be a read-only memory, a disk or an optical disk, etc.
[0193] Although the embodiments of the present invention have been shown and described above, it is to be understood that the above embodiments are exemplary and are not to be construed as limitations of the present invention. A person skilled in the art may make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.
Claims
1. A fragment packet reassembly method, characterized in that: The method comprises: Receive a first fragment packet and obtain identification information of the first fragment packet; Determine, according to the identification information of the first fragment packet, a fragment table corresponding to the first data packet, wherein the first fragment packet belongs to the first data packet, and the fragment table records offset information of one or more fragment packets included in the first data packet; Update the offset information of the first fragment packet into the fragment table; In a case where the fragment table includes offset information of all fragment packets of the first data packet, it is determined that the first data packet is successfully reassembled.
2. The method according to claim 1, characterized in that The obtaining the identification information of the first fragment packet includes: Determine the header and data portion of the first fragment packet; The header is parsed to determine the identification information, wherein the identification information includes at least one of an identification of the first fragment packet, an identification of the first data packet to which the first fragment packet belongs, and a serial number of the first data packet.
3. The method according to claim 1, characterized in that The determining, according to the identification information of the first fragment packet, a fragment table corresponding to the first data packet comprises: Determine, according to the identification information of the first fragment packet, whether fragment page information of the first data packet exists in the first storage space as a judgment result; According to the judgment result, a fragmentation table corresponding to the first data packet is determined.
4. The method according to claim 3, characterized in that Determining, according to the judgment result, the fragmentation table corresponding to the first data packet includes: When the fragment page information of the first data packet does not exist in the first storage space, the fragment page information and the fragment table corresponding to the first data packet are created in the first storage space.
5. The method according to claim 3, characterized in that: Determining, according to the judgment result, the fragmentation table corresponding to the first data packet includes: In the case that the first storage space contains fragment page information of some fragment packets included in the first data packet, the fragment table corresponding to the first data packet is determined according to the fragment page information.
6. The method according to claim 3, characterized in that The method further comprises: When the fragment page information of all the fragment packets included in the first data packet exists in the first storage space, the first fragment packet is discarded.
7. The method according to any one of claims 3 to 6, characterized in that: The shard page information includes at least one of the following: information of the reorganized data space, shard table space information, and the number of shard table records; The reorganized data space is used to store one or more fragment packets in the first data packet, the fragment table space information is used to identify the position of the fragment table in the first storage space, and the fragment table record number is used to identify the number of data records in the fragment table.
8. The method according to claim 3, characterized in that In a case where the fragment page information of the first data packet does not exist in the first storage space, updating the offset information of the first fragment packet into the fragment table includes: Read the created shard table from the first storage space; In the second storage space, writing the offset information of the first fragment packet into the created fragment table; Update the fragment page information corresponding to the first data packet.
9. The method according to claim 3, characterized in that: In a case where the fragment page information of some fragment packets included in the first data packet exists in the first storage space, updating the offset information of the first fragment packet into the fragment table includes: Reading a fragment table corresponding to the first data packet from the first storage space, wherein the fragment table corresponding to the first data packet records offset information of the part of the fragment packets; In the second storage space, compare the offset information of the first fragment packet with the offset information of the partial fragment packet, and insert the offset information of the first fragment packet into the fragment table corresponding to the first data packet according to the first order; Update the fragment page information corresponding to the first data packet.
10. The method according to claim 5 or 6, characterized in that: The method further comprises: According to the offset information of the first fragment packet, the first fragment packet is stored in the reorganized data space.
11. The method according to claim 3, characterized in that The method further comprises: When the first data packet is reassembled successfully, in the first storage space, the space of the fragment table of the first data packet is released, and the fragment page information corresponding to the first data packet is updated; If the first data packet is not successfully reassembled, the updated fragment table is written back to the first storage space, and the fragment page information corresponding to the first data packet is updated.
12. A fragment packet reassembly device, characterized in that: The device comprises: An acquisition module, used for receiving a first fragmentation packet and acquiring identification information of the first fragmentation packet; A determination module, configured to determine a fragmentation table corresponding to a first data packet according to the identification information of the first fragmentation packet, wherein the first fragmentation packet belongs to the first data packet, and the fragmentation table records offset information of one or more fragmentation packets included in the first data packet; An updating module, configured to update the offset information of the first fragmentation packet into the fragmentation table; The reassembly module is used to determine that the first data packet is successfully reassembled when the fragment table includes offset information of all fragment packets of the first data packet.
13. An electronic device, characterized in that: include: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 11.
14. A non-transitory computer-readable storage medium storing computer instructions, characterized in that: The computer instructions are used to cause the computer to execute the method according to any one of claims 1-11.
15. A chip, characterized in that: It includes at least one processor and a communication interface; the communication interface is used to receive a signal input to the chip or a signal output from the chip, and the processor communicates with the communication interface and implements the method as described in any one of claims 1 to 11 through a logic circuit or by executing code instructions.