WO2022263359A1 - Vorrichtung und verfahren zur verarbeitung von dateneinheiten - Google Patents
Vorrichtung und verfahren zur verarbeitung von dateneinheiten Download PDFInfo
- Publication number
- WO2022263359A1 WO2022263359A1 PCT/EP2022/065994 EP2022065994W WO2022263359A1 WO 2022263359 A1 WO2022263359 A1 WO 2022263359A1 EP 2022065994 W EP2022065994 W EP 2022065994W WO 2022263359 A1 WO2022263359 A1 WO 2022263359A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- protocol data
- pdu
- search
- search tree
- data unit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 34
- 230000015654 memory Effects 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 11
- 230000003750 conditioning effect Effects 0.000 claims description 8
- 230000008859 change Effects 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 claims description 4
- 230000004048 modification Effects 0.000 claims description 4
- 238000012986 modification Methods 0.000 claims description 4
- 230000011664 signaling Effects 0.000 claims description 3
- 230000004044 response Effects 0.000 claims 1
- 239000013598 vector Substances 0.000 description 15
- 238000010586 diagram Methods 0.000 description 7
- 230000001105 regulatory effect Effects 0.000 description 2
- 238000010845 search algorithm Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 208000025438 thrombocytopenia with congenital dyserythropoietic anemia Diseases 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/54—Organization of routing tables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
- H04L45/304—Route determination for signalling traffic
Definitions
- the disclosure relates to an apparatus for processing data units.
- the disclosure further relates to a method for processing data units.
- Exemplary embodiments relate to a device for processing data units, for example protocol data units, having a first number of input interfaces for receiving protocol data units and a second number of output interfaces for outputting protocol data units, and a processing device that is designed to do so to carry out a search in at least one first search tree, based on a PDU identifier associated with a received protocol data unit, which has an assignment of a respective PDU identifier to at least one connection identifier characterizing a data connection.
- the first number is greater than or equal to one. In other exemplary embodiments, the second number is greater than or equal to one.
- the device is designed to, based on the received protocol Data unit to determine a connection identifier associated with the received protocol data unit.
- the processing device has at least one hardware component which is designed to carry out the search in the first search tree and/or to determine the connection identifier associated with the received protocol data unit.
- the first search tree is a binary tree.
- the search tree is a ternary or n-ary, n>3, tree.
- the device is designed to output the received protocol data unit based on the connection identifier associated with the received protocol data unit to at least one specific output interface of the second number of output interfaces.
- the processing device has at least one software component which is designed to at least temporarily a) form and/or b) modify, for example balance, the first search tree.
- the at least one software component is designed to carry out a predetermined reaction if no connection identifier associated with the received protocol data unit can be determined for the received protocol data unit, for example if for the received protocol data unit no connection identifier associated with the received protocol data unit is present in the first search tree, with the specifiable reaction having at least one of the following elements, for example: a) discarding the received protocol data unit, b) assigning a connection identifier, for example a configurable one to the received Protocol data unit, c) setting or inserting first information for the received protocol data unit, for example in the form of a bit flag, the first information indicating, for example, that the received protocol data unit has been checked, for example by means of a firewall device shall be.
- the device for example the at least one software component, is designed to generate a second search tree, for example based on the first search tree, and/or to manage it, for example to modify it.
- the first search tree and/or the second search tree is a red-black tree.
- the first search tree is a binary tree, for example without color information (e.g. red/black) and that the second search tree is a red-black tree.
- the device is designed to organize the first search tree and/or the second search tree at least temporarily in the form of at least one table.
- the device is designed to determine, at least partially in a temporally overlapping manner, a) based on the received protocol data unit, a connection identifier associated with the received protocol data unit, for example using the at least one hardware component, for example using the execution of the search in the first search tree by the at least one hardware component and b), for example by means of at least one software component to generate a or the second search tree, for example based on the first search tree, and/or to manage, for example to modify.
- the device is designed to execute at least one of the following elements: a) at least temporarily, for example selectively, using the first search tree or the second search tree, for example the connection identifier associated with the received protocol data unit to determine, b) transferring a content and/or a structure of the second search tree to the first search tree, c) transferring a content and/or a structure of the first search tree to the second search tree.
- the device for example the at least one software component, is designed to signal at least one of the following elements, for example to the at least one hardware component, for example by means of second information: a) the first search tree for the performing the search, b) the second search tree is to be used for performing the search, c) a modification of the first search tree and/or the second search tree, for example inserting at least one node and/or balancing the tree in question, is closed.
- the device for example the at least one hardware component, is designed to use the first search tree or the second search tree for carrying out the search based on the signaling.
- the device for example the at least one hardware component, is designed to use the first search tree or the second search tree for carrying out the search between two, for example consecutive, searches, for example for the future carrying out of the search or Search, to activate, for example, by specifying which of the two search trees is to be used from now on for performing the search or search.
- the device is designed to control or regulate a rate at which protocol data units are output via at least one output interface of the second number of output interfaces.
- the device has at least one memory for at least temporarily storing one or more protocol data units or parts of one or more protocol data units.
- the device has a conditioning device which is designed to change, for example to normalize, a PDU identifier associated with a received protocol data unit.
- FIG. 1 For example a computer-implemented method, for processing data units, for example protocol data units, for a device, for example according to at least one of the preceding claims, having a first number of input interfaces for receiving protocol data units and one second plurality of output interfaces for outputting protocol data units, and a processing device, the method comprising: performing, based on a PDU identifier associated with a received protocol data unit, a search in at least a first search tree having an association of each one PDU identifier for at least one data connection characterizing connection identifier.
- the method has: determining, based on the received protocol data unit, a connection identifier associated with the received protocol data unit.
- the processing device has at least one hardware component, with the execution of the search in the first search tree and/or the determination of the connection identifier associated with the received protocol data unit is performed by means of the at least one hardware component.
- the processing device has at least one software component, with the method having: a) at least temporarily forming the search tree using the at least one software component, and/or b) at least temporarily modifying, for example balancing, the search tree using the at least a software component.
- a gateway for example an automotive gateway, having at least one device according to the embodiments.
- a connection identifier associated with a received protocol data unit searching, e.g by means of a hardware component, a connection identifier associated with a received protocol data unit, c) managing at least one search tree, d) executing a hardware-based search for a connection identifier for a data unit, for example a protocol data unit, for example a gateway for automotive applications, where, for example, the search can be carried out with logarithmic effort, e) routing or switching of data units, for example protocol data units, for example of a vehicle, for example motor vehicle, with for example the data units unt can have different types, f) assignment of a, for example, protocol-independent, connection identifier, g) execution of multicast transmissions, h) determination of whether a predetermined received data unit, for example protocol data unit, is not provided with a connection identifier, for example stored, contained in the search tree, for example, i) software-based processing of a received data unit, for example protocol data unit, for which no connection identifie
- 1 schematically shows a simplified block diagram according to exemplary embodiments
- 2 schematically shows a simplified block diagram according to example embodiments
- 13 schematically shows a simplified block diagram according to example embodiments
- 14 schematically shows a simplified flow chart according to exemplary embodiments
- FIG. 17 schematically illustrates aspects of uses according to exemplary embodiments.
- a device 100 for processing data units PDU-1 for example protocol data units, having a first number of input interfaces 110 for receiving protocol data units PDU-1 and a second number of output interfaces 120, 120a for outputting protocol data units, and a processing device 130 which is designed to, based on a PDU identifier MSG-ID associated with a received protocol data unit PDU-1, see FIG a first search tree B-1 (FIG. 1) which has an assignment Z of a respective PDU identifier MSG-ID (FIG. 2) to a connection identifier VB-ID characterizing at least one data connection.
- PDU-1 for example protocol data units
- a processing device 130 which is designed to, based on a PDU identifier MSG-ID associated with a received protocol data unit PDU-1, see FIG a first search tree B-1 (FIG. 1) which has an assignment Z of a respective PDU identifier MSG-ID (FIG. 2) to a connection identifier VB-ID characterizing at least one data connection.
- FIG. 3 A flowchart of a corresponding method according to exemplary embodiments is shown in FIG. 3, where block 200 symbolizes the execution of the search in the at least one first search tree B-1 (FIG. 1).
- the device 100 (FIG. 1) is designed to assign a connection identifier VB-ID-1 associated with the received protocol data unit PDU-1 based on the received protocol data unit PDU-1 determine, cf. the optional block 202 according to Fig. 3, for example by means of the search 200 in the first search tree B-1.
- the processing device 130 (Fig. 1) has at least one hardware component 132, which is used to carry out the search 200 in the first search tree B-1 and/or to determine 202 the protocol data unit PDU- 1 associated connection identifier VB-ID-1.
- the first search tree B-1 is a binary tree.
- the first search tree B-1 is a ternary or n-ary, n>3, tree.
- the device is designed to read the received protocol data unit PDU-1 and/or data that can be derived or derived therefrom based on the connection identifier VB-ID associated with the received protocol data unit PDU-1 -1 to at least one specific output interface 120a (Fig. 1) of the second number of output interfaces 120, cf. the optional block 204 according to Fig. 3.
- the processing device 130 has at least one software component 134 which is designed to form the first search tree B-1 at least temporarily a), cf. block 210 according to Fig. 4, and/or b) to modify, for example to balance, see block 212.
- a modified, for example balanced, first search tree B-1 can be obtained.
- the at least one software component 134 (Fig. 1) is designed to carry out a predetermined reaction R 222 if the received protocol data unit PDU-1 does not match the received Protocol data unit PDU-1 associated connection identifier VB-ID-1 can be determined, for example if the received protocol data unit PDU-1 does not have a connection identifier VB-ID-1 associated with the received protocol data unit PDU-1 in the first search tree B-1 exists, where
- the specifiable reaction R has at least one of the following elements: a) Discarding 225 the received protocol data unit PDU-1, b) Assigning 226 a connection identifier VB-ID-CFG, for example a configurable one, to the received protocol data unit PDU- 1, c) setting or inserting 227 a first piece of information 11 for the received protocol data unit PDU-1, for example in the form of a bit flag, the first piece of information 11 indicating, for example, that the received protocol data unit PDU
- the device 100 for example the at least one software component 134, is designed to generate a second search tree B-2 230, for example based on the first search tree B -1, and/or to manage 232, e.g. to modify, whereby e.g. a modified second search tree B-2' can be obtained.
- the first search tree B-1 and/or the second search tree B-2 is a red-black tree.
- the first search tree B-1 is a binary tree, for example without color information (e.g. red/black), and that the second search tree B-2 is a red-black tree.
- the second search tree B-2 is designed as a red-black tree.
- the device 100 is designed to organize the first search tree B-1 and/or the second search tree B-2 at least temporarily in the form of at least one table.
- FIG. 8 it is provided that the device 100 is designed to, at least partially overlapping in time, a) based on the received protocol data unit PDU-1 a connection identifier associated with the received protocol data unit PDU-1 VB-ID-1 to be determined 240, for example by means of the at least one hardware component 132, for example by means of the execution of the search in the first search tree B-1 by the at least one hardware component 132 and b), for example by means of the at least one software component 134, one or to generate 242 the second search tree B-2, e.g. based on the first search tree B-1 (e.g. by copying the first search tree B-1), and/or to manage 244, e.g tree and/or changing the elements or structure of the search tree).
- the device 100 is designed to execute at least one of the following elements: a) at least temporarily, for example selectively, using 250 the first search tree B-1 or the second search tree B-2, for example to determine the connection identifier VB-ID-1 associated with the received protocol data unit PDU-1, b) transferring 251 a content and/or a structure of the second search tree B-2 to the first search tree B-1 (for example , in order to make a search tree B-2, B-2' modified, e.g. balanced, e.g. by means of the software component 134 into the first search tree B-1, e.g.
- the device for example the at least one software component, is designed to signal 255, for example to the at least one hardware component, at least one of the following elements, for example by means of a second piece of information I2: a) let the first search tree B-1 be used for performing the search, b) use the second search tree B-2 for performing the search, c) a modification of the first Search tree B-1 and/or the second search tree B-2, for example inserting at least one node and/or balancing the relevant search tree, is complete.
- the device 100 for example the at least one hardware component 132, is designed to use the first search tree B-1 or the second search tree B-2 to carry out the search based on the signaling 255 256.
- the device 100 for example the at least one hardware component 132, is designed to use the first search tree B-1 or the second search tree B-2 for performing the search between two, for example consecutive, searches, for example for the future execution of the search or searches, to activate 257, for example by specifying 257a which of the two search trees is to be used from now on for executing the searches or searches.
- the device 100 is designed to control 261 or regulate 262 a rate at which protocol data units are output via at least one output interface of the second number of output interfaces
- Block 260 in FIG. 11 symbolizes, for example, a receipt of protocol data units for which the stated rate is controlled 261 or regulated 262 in further exemplary embodiments.
- FIG. 12 schematically shows a simplified block diagram of a device 100a according to exemplary embodiments, which in further exemplary embodiments can have a functionality comparable to the device 100 according to FIG. 1 .
- Block E1 according to FIG. 12 symbolizes a search device, for example implementable in the form of hardware, for example by means of or comparable to the hardware component 132 according to FIG. 1.
- Block E2 symbolizes the first search tree B-1 (FIG. 1), which can be organized, for example, in the form of a first table which, in further exemplary embodiments, can be referred to as a "work table”.
- Block E3 symbolizes the second search tree B-2 (FIG. 7), which can be organized, for example, in the form of a second table which, in further exemplary embodiments, can be referred to as a "shadow table".
- the device 100a has a multiplexer device E23, via which the search device E1 can, for example, selectively access the first table E2 or the second table E3, for example to carry out a search, cf. block 200 according to Fig. 3.
- the first table E2 or the second table E3 can be selected, e.g. by means of a control signal a1, which in further exemplary embodiments can form the search device E1 and/or output to the multiplexer device E23.
- the device 100a has at least one memory for at least temporarily storing one or more, e.g. received, protocol data units PDU-1 (FIG. 1) or parts of one or more protocol data units.
- the device 100a has, for example, a first buffer memory E5, which can, for example, at least temporarily store incoming protocol data units or protocol data units that can be received or received by the device 100a, for example according to the FIFO (first in first out) principle.
- the first buffer memory E5 can also carry out a desegmentation of received protocol data units, at least temporarily.
- the device 100a has a second buffer memory E6, which can be used, for example, to “delay” at least one received protocol data unit, i.e. for temporarily buffering the received protocol data unit or at least part of the received protocol data unit , for example until the protocol data unit is output, for example at a later point in time that can be specified if necessary.
- the second buffer memory E6 is designed to delay a received protocol data unit until the search device E1 has determined the connection identifier VB-ID-1 associated with the received protocol data unit PDU-1, for example by a search in the first search tree B-1, E2 carried out, for example, by means of the hardware component 132, E1.
- a storage capacity or storage size of the second buffer memory E6 can be specified based on a maximum search duration in the first search tree B-1.
- a maximum search duration is proportional to a logarithm, e.g. logarithm dualis (Id), a number of nodes of the search tree and to a number of clock cycles that are required for reading and evaluating a node of the search tree.
- the device 100a has a conditioning device E4, which is designed to change, for example to normalize, a PDU identifier associated with a received protocol data unit.
- 14 schematically shows a simplified flowchart according to further exemplary embodiments, with block 265 symbolizing an optional receipt of a protocol data unit PDU-1, with block 266 symbolizing the changing of a PDU identifier MSG-ID associated with a received protocol data unit, whereby, for example, a changed PDU identifier MSG-ID' is obtained.
- the optional block 267 symbolizes further processing of the changed PDU identifier MSG-ID' according to further exemplary embodiments, e.g. performing a search in the first search tree B-1, E2 based on the changed PDU identifier MSG-ID'.
- Conditioning device E4 is designed to form a search vector a2, which can be passed to the search device E1, for example.
- the search vector a2 can have at least one of the following elements: a) one with the received protocol data unit PDU-1 associated PDU identifier MSG-ID, b) information rxbus, the one, for example virtual,
- the search device E1 is designed to compare the search vector a2 with reference vectors in the first table E2, the reference vectors for example defining a format or one of a number of possible formats.
- one or more of the following formats can be used for the PDU identifier MSG-ID, e.g. based on a respective input interface 110 via which a protocol data unit PDU-1 has been received: a) e.g. with a CAN (controller Area Network) protocol or CAN bus-associated protocol data units, e.g. of the l-PDU type (Interaction Layer Protocol Data Unit, e.g. according to AUTOSAR), b) 11-bit standard ID, c) 29-bit extended ID, d) 32 bit message ID, e.g.
- a CAN-XL acceptance field e) l-PDUs associated with a LIN (local interconnect network) bus, f) AUTOSAR Dynamic l-PDU Multiplexing using UDP or CAN as transport layer (ASAR sockets in TUNETH_DEV or CAN sockets in TUNCAN_DEV), g) SomelP S-PDU Multiplexing (SomelP socket in TUNETH_DEV or CAN sockets in TUNCAN_DEV), h) AVTP P1722 L-PDU Multiplexing (AVB socket in TUNETH_DEV).
- the conditioning device E4 is designed to form a, for example compatible, search vector a2, for example by normalizing the above-mentioned formats for the PDU identifier MSG-ID, for example a normalized search vector a2' is obtained.
- the search vector a2 and/or the normalized search vector a2 can have 32 bits.
- a function of the conditioning device E4 can be characterized, for example, by the following pseudocode ("pseudocode 1").
- variable "noSearch" provided in the above pseudocode 1 can be used to characterize whether or not a search is to be carried out by the search device E1.
- the information associated with the variable noSearch can be transmitted to the search device E1 by the conditioning device E4 (see, for example, arrow a3 in accordance with FIG. 12).
- variable “validMsg” provided in the above pseudocode 1 can be used in order to be able to distinguish between valid and invalid messages or data frames.
- a configurable connection identifier VB-ID-CFG (cf. e.g. block 226 according to FIG. 6) can be specified for such types of PDU identifiers, ie for example without a preceding search.
- a or the configurable connection identifier VB-ID-CFG is used for those PDU identifiers for which no search is carried out.
- the device 100a has a device E7 for modifying header data which is designed, for example, to selectively discard a protocol data unit PDU-1, for example based on a control a4 by the search device E1, for example if the search by the search device E1 has produced no result.
- a device E7 for modifying header data which is designed, for example, to selectively discard a protocol data unit PDU-1, for example based on a control a4 by the search device E1, for example if the search by the search device E1 has produced no result.
- the device 100a has a third buffer memory E8, which can buffer log data units to be output at least temporarily and, optionally, at least temporarily carry out a segmentation.
- the device 100a has a statistical device E9 which is designed to determine or manage statistical information relating to an operation of the device 100, 100a or the search device E1.
- the device 100a for example the statistics device E9, is designed to manage at least one of the following examples of counters, FIG Total number of protocol data units processed by device 100, 100a, c) counter Z3 for a number of protocol data units forwarded by device 100, 100a, d) counter Z4 for a number of search hits from search device E1, e) counter Z5 for a number of unsuccessful searches using the search device E1, f) counter Z6 for protocol data units to be discarded, which are damaged, for example, for which the conditioning device E4 indicates, for example, that they are to be discarded, for example with the exception of protocol data units of type AVB P1722 GPC, g) Counter Z7 for a number of bytes transmitted by the device 100, 100a are.
- At least one of the above-mentioned counters Z1, Z2, .., Z7 has a data width of 32 bits, which in further exemplary embodiments, for example, requires comparatively low-frequency polling (e.g. every second or less often than once per second), e.g by means of software, eg by means of the software component 134 (FIG. 1).
- a design of the search device E1 (FIG. 12) can depend on a search algorithm used.
- the following exemplary embodiments for the search algorithm are conceivable, both of the following exemplary embodiments being variants of, for example, a binary search and using, for example, a work table E2 (Fig. 12) and a shadow table E3.
- the work table E2 is used, for example, by the hardware component 132 (Fig. 1), e.g., for performing 200 the search (Fig. 3) and/or for determining 202 a PDU-1 associated with the received protocol data unit Connection identifier VB-ID-1.
- the shadow table E3 is used, e.g., by the software component 134, e.g., to modify the lookup table, e.g., when entries are added and/or removed, e.g., during runtime of the device 100, 100a.
- a binary sorted table can be used, for example, which has, for example, a sorted plurality ("array") of reference vectors, for example the reference vectors mentioned above.
- each entry of the binary sorted table is callable a node.
- a search tree for example a balanced search tree, for example a red-black tree, can be used, see for example the above description of the first search tree B-1 and the second search tree B-2.
- a search tree for example a balanced search tree, for example a red-black tree
- at least one of the search trees B-1, B-2 may be organized in the form of a table.
- ⁇ sec ⁇ secGen (1 bit) secChk (1 bit) ⁇ fw (1 bit) nodeLeft (log2(entries) bit) nodeRight (log2(entries) bit)
- refVector characterizes a reference vector
- the reference vector can have the elements rxbus (e.g. with 8 bits), rembus (with e.g. 8 bits), msgid (with e.g.
- Attrib being optional attributes for a node characterized, with sec characterizing attributes associated with a possible authentication, with fw characterizing an optional attribute that indicates whether a security check, for example optional, for example by means of a firewall, for a relevant protocol data unit or for a connection identifier pduCid associated protocol data units, is to be executed, where nodeLeft characterizes the left child node in the binary search tree, where nodeRight characterizes the right child node in the binary search tree, and where color characterizes a color attribute for the search tree.
- a binary search tree e.g., storable or stored in a hardware memory
- This can be used in further exemplary embodiments in order to be able to modify the search tree, e.g. "in memory” (e.g. e.g. directly in memory), e.g. without having to create a copy, e.g. expensive, in the software's main memory.
- the search tree that can be evaluated by means of the hardware component 132 e.g. the first search tree B-1, has no color information (red-black) for its nodes.
- this color information (red-black) is provided and/or used, for example, when nodes are added and/or removed, which operations are performed, for example, on the second search tree B-2, for example by means of the software component 134.
- the color information (red-black) associated with the nodes of the second search tree B-2 can be kept in a table that can be managed by the software component 134 or at least temporarily stored.
- the search tree that can be evaluated using the hardware component 132 e.g. the first search tree B-1, has color information (e.g. red-black) for its nodes, e.g. realizable using the above-mentioned "color" component.
- color information e.g. red-black
- the exemplary embodiments mentioned above based on a binary search advantageously require a comparatively small, since logarithmic, search effort based on the total number of elements of the relevant search tree or the relevant table.
- the search device E1 in a successful search 200 (Fig. 3) the optional attributes attrib for the node found in the search 200, for example of the search tree B-1, to the device E7 for modifying header data, see arrow a5 according to FIG PDU-1 signals, see arrow a4 already described above with reference to FIG.
- the search device E1 performs at least one of the following actions in the event of an unsuccessful search 200: a) Instructing the device E7, e.g. using arrow a4, to discard the protocol data unit PDU-1 (whereby, for example, the Counter Z6, Fig. 13, can be incremented), b) inserting a e.g. static and/or configurable connection identifier VB-ID-CFG (and/or setting a firewall flag fw, which indicates that the protocol data unit PDU - 1 is to be subjected to a security check, for example by an optional firewall device that can be integrated, for example, into the device 100, 100a).
- a4 Instructing the device E7, e.g. using arrow a4, to discard the protocol data unit PDU-1 (whereby, for example, the Counter Z6, Fig. 13, can be incremented)
- Fig. 3 relate to a method, e.g. a computer-implemented method, for processing data units, e.g first number of input interfaces 110 for receiving protocol data units and a second number of output interfaces 120 for outputting protocol data units, and a processing device 130, the method comprising: executing 200 (Fig. 3) based on a protocol received with one -Data unit PDU-1 associated PDU identifier MSG-ID, a search in at least one first search tree B-1, which has an assignment Z of a respective PDU identifier to at least one data connection characterizing connection identifier.
- a method e.g. a computer-implemented method, for processing data units, e.g first number of input interfaces 110 for receiving protocol data units and a second number of output interfaces 120 for outputting protocol data units, and a processing device 130, the method comprising: executing 200 (Fig. 3) based on a protocol received with one -Data unit PDU-1 associated PDU identifier MSG-ID,
- the method has: determining 202, based on the received protocol data unit PDU-1, a connection identifier VB-ID-1 associated with the received protocol data unit PDU-1.
- the processing device 130 has at least one hardware component 132, the execution 200 of the search in the first search tree B-1 and/or the determination 202 of the connection identifier VB-ID associated with the received protocol data unit -1 is executed by means of the at least one hardware component 132.
- the processing device 130 has at least one software component 134, the method having: a) at least temporarily forming 210 the search tree B-1 using the at least one software component 134, and/or b) at least temporarily modifying 212, for example balancing, of the search tree B-1 using the at least one software component 134.
- the device can have, for example, at least one of the configurations 100, 100a already described above by way of example with reference to FIGS. 1, 12.
- the device can alternatively or additionally also have the configuration 300 shown as an example in FIG. 15 or a configuration 300 similar thereto.
- Device 300 has: a computing device ("computer") 302 having at least one computing core 302a, 302b, 302c, a memory device 304 assigned to computing device 302 for at least temporarily storing at least one of the following elements: a) data DAT, b) computer program PRG , in particular for carrying out the method according to the embodiments.
- a computing device (“computer") 302 having at least one computing core 302a, 302b, 302c
- a memory device 304 assigned to computing device 302 for at least temporarily storing at least one of the following elements: a) data DAT, b) computer program PRG , in particular for carrying out the method according to the embodiments.
- the memory device 304 has a volatile memory (eg random access memory (RAM)) 304a and/or a non-volatile memory (eg flash EEPROM) 304b, or a combination thereof or with other memory types not explicitly mentioned.
- the data DAT can at least temporarily include at least one received protocol data unit PDU-1 and/or at least part of at least one search tree B-1, B-2 and/or associated information, eg red-black attributes of the second Color information characterizing search tree B-2.
- At least one of the buffer memories E5, E6, E8 according to FIG. 12 can be implemented, for example, by means of the memory device 304 or the RAM 304a.
- the device 300 has at least one data interface 306 for receiving and/or sending data, for example protocol data units.
- at least some of the input interfaces 110 (FIG. 1) and/or the output interfaces 120 can be implemented using the data interface 306, for example.
- FIG. 1 Further exemplary embodiments relate to a data carrier signal DCS, which characterizes and/or transmits the computer program PRG according to the embodiments.
- the data carrier signal DCS can be transmitted via the data interface 306 of the device 300, for example.
- a respective connection identifier VB-ID-1 can be determined for protocol data units PDU-1 arriving at the device, for example by means of hardware, and wherein, for example, based on the determined connection identifier VB-ID-1, the incoming protocol data units PDU-1 can be output.
- the input interfaces 110 and/or the output interfaces 120 can also each have at least one virtual interface, e.g. in contrast to a physical interface.
- a virtual interface can be characterized in that individual data units, e.g. protocol data units, e.g. as a so-called “contained PDU", e.g. in an Ethernet or UDP packet, e.g. a so-called “container PDU”.
- the contained PDUs can be extracted from the container PDU, e.g. by means of a packet parser.
- the device according to the embodiments can use a common data format or message format, e.g. for processing incoming protocol data units PDU-1, for example independently of a particular type (e.g. L-PDUs, l-PDUs, N- PDUs, S-PDUs) of the incoming protocol data units PDU-1.
- a common data format or message format e.g. for processing incoming protocol data units PDU-1, for example independently of a particular type (e.g. L-PDUs, l-PDUs, N- PDUs, S-PDUs) of the incoming protocol data units PDU-1.
- the received protocol data units PDU-1 e.g. PDUs, N-PDUs, S-PDUs
- the incoming protocol data units PDU-1 independent connection identifier VB-ID-1 on the basis of which, for example, routing, e.g. forwarding, of the protocol data units PDU-1 by the device or is executable in the device, e.g. to one or more (multicast) output interfaces.
- the PDU identifier PDU-ID can optionally be modified.
- unknown protocol data units for which the search 200 or the determination 202 was negative, for example, and therefore did not lead to a connection identifier associated with the PDU identifier PDU ID
- the device 100, 100a, 300 can be used, for example, as a, e.g. unidirectional, feedback device for a gateway, for example for an automotive gateway 10, see FIG , 300 is designed to receive protocol data units PDU-1 from at least one output interface 12 of the gateway 10 and to supply the protocol data units PDU-1 to at least one input interface 11 of the gateway 10 .
- the block 14 in FIG. 16 can have the configuration 100, 100a, 300 according to the exemplary embodiments described above.
- the block arrow 13 symbolizes a data flow in the gateway 10, for example from the input interface 11 to the output interface 12, as it is associated with a processing pipeline of the gateway 10, for example.
- data units for example complete data units, e.g. protocol data units, for example sequentially (“serialized”), for example from a component of the at least one output interface 12 of the gateway 10.
- data units for example complete data units, e.g. protocol data units, for example sequentially (“serialized"), for example from a component of the at least one output interface 12 of the gateway 10.
- the device 100, 100a, 300 configured to output protocol data units to be output in the same format as they were received.
- the device 100, 100a, 300 is designed to insert a connection identifier determined, for example, based on the search 200 into a received protocol data unit PDU-1.
- the device 100, 100a, 300 is designed to insert a connection identifier determined, for example, based on the search 200 into a received protocol data unit PDU-1.
- a length of a received protocol data unit PDU-1 for example in the case of received padded ("padded") data units which are associated, for example, with CAN-FD data frames.
- PDU-1 received protocol data unit
- padded padded
- the second search tree B-2 can thus be loaded into the device, e.g. externally, and at a predeterminable time, for example when the device is reset, the content of the second search tree B-2 can be loaded into the first search tree B-1 are transmitted, so that from now on the first search tree B-1 can be used with the new content based on the loaded second search tree B-2, for example for the hardware-based search 200.
- the device 100, 100a, 300 can optionally use, for example, a search tree B-1 or a first search tree B-1 and a second search tree B-2 or corresponding tables, for example in some exemplary embodiments a for the or the search trees or the corresponding tables memory area available for a search tree B-1 or a table can be used, whereby for example in further exemplary embodiments the memory area available for the search tree or the search trees or the corresponding tables can be used for both Search trees B-1, B-2 or corresponding tables can be used, so that, for example, in the case of two search trees, there is essentially half the storage capacity for each search tree, compared with the case of a single search tree B-1.
- a search tree B-1 or a first search tree B-1 and a second search tree B-2 or corresponding tables for example in some exemplary embodiments a for the or the search trees or the corresponding tables memory area available for a search tree B-1 or a table can be used, whereby for example in further exemplary embodiments the memory area available for the search
- the first buffer memory E5 can be used, for example, for rate adaptation, e.g.
- the rate can be controlled 261 or regulated 262, for example (FIG. 11).
- both a rate at which protocol data units are received by the gateway 10 or its output interface 12 and a rate at which protocol data units are sent to the gateway 10 or its input interface 12, e.g the processing pipeline 14 may be predetermined.
- the search device E1 is designed to work at a non-constant rate with regard to processing (e.g. search), because e.g. individual searches 200 for different received protocol data units, e.g. in the first search tree B-1, e.g. take different lengths of time can.
- processing e.g. search
- an optional security check or a security check that can be activated selectively for individual protocol data units can likewise lead to a non-constant processing rate for protocol data units.
- such a possibly non-constant processing rate can be at least partially, for example by the Using at least one of the buffer memory E5, E6, E8, are compensated or adjusted to a predetermined rate.
- the first buffer memory E5 is designed to output status information a6, e.g. to a component 12 of the gateway 10 providing the protocol data units PDU-1, which indicates, for example, that a e.g. configurable first degree of filling of the first buffer memory E5 has been reached .
- the first buffer memory E5 is designed to no longer output the status information a6, e.g. if the e.g ) of the first buffer memory E5 is fallen below again.
- Fig. 17 relate to a use 400 of the device 100, 100a, 300 according to the embodiments and/or the method according to the embodiments and/or the computer-readable storage medium SM according to the embodiments and/or the computer program PRG according to the Embodiments and/or the data carrier signal DCS according to the embodiments and/or the gateway 10 according to the embodiments for at least one of the following elements: a) processing 401 of data units, for example protocol data units PDU-1, for example of a vehicle, for example a motor vehicle, b) Determining 402, for example searching, for example by means of a hardware component 132, of a connection identifier associated with a received protocol data unit PDU-1, c) managing 403 at least one search tree B-1, B-2, d) executing 404 a hardware-based search of a connection identifier for a data unit, e.g.
- protocol data unit e.g. of a gateway 10 for automotive applications, where, for example, the search can be carried out with logarithmic effort, e) routing 405 or mediation of data units, e.g. protocol data units, e.g. of a vehicle, e.g can have different types, f) assigning 406 a, for example protocol-independent, connection identifier, g) executing 407 multicast transmissions, h) determining 408 whether for a specifiable received data unit, for example protocol data unit, no connection identifier is provided, for example stored, for example contained in the search tree B-1, i) software-based processing 409 of a received data unit, for example protocol data unit, for which no connection identifier is provided, stored, for example, contained in the search tree, for example.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
Claims
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023577402A JP2024522224A (ja) | 2021-06-18 | 2022-06-13 | データユニットを処理するための装置および方法 |
CN202280055879.2A CN117813805A (zh) | 2021-06-18 | 2022-06-13 | 用于处理数据单元的设备和方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102021206267.9 | 2021-06-18 | ||
DE102021206267.9A DE102021206267A1 (de) | 2021-06-18 | 2021-06-18 | Vorrichtung und Verfahren zur Verarbeitung von Dateneinheiten |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022263359A1 true WO2022263359A1 (de) | 2022-12-22 |
Family
ID=82361215
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/EP2022/065994 WO2022263359A1 (de) | 2021-06-18 | 2022-06-13 | Vorrichtung und verfahren zur verarbeitung von dateneinheiten |
Country Status (4)
Country | Link |
---|---|
JP (1) | JP2024522224A (de) |
CN (1) | CN117813805A (de) |
DE (1) | DE102021206267A1 (de) |
WO (1) | WO2022263359A1 (de) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001063852A1 (en) * | 2000-02-21 | 2001-08-30 | Tellabs Oy | A method and arrangement for constructing, maintaining and using lookup tables for packet routing |
US20190379606A1 (en) * | 2018-06-07 | 2019-12-12 | Vmware, Inc. | Packet classification with multiple classifiers |
-
2021
- 2021-06-18 DE DE102021206267.9A patent/DE102021206267A1/de active Pending
-
2022
- 2022-06-13 CN CN202280055879.2A patent/CN117813805A/zh active Pending
- 2022-06-13 WO PCT/EP2022/065994 patent/WO2022263359A1/de active Application Filing
- 2022-06-13 JP JP2023577402A patent/JP2024522224A/ja active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001063852A1 (en) * | 2000-02-21 | 2001-08-30 | Tellabs Oy | A method and arrangement for constructing, maintaining and using lookup tables for packet routing |
US20190379606A1 (en) * | 2018-06-07 | 2019-12-12 | Vmware, Inc. | Packet classification with multiple classifiers |
Also Published As
Publication number | Publication date |
---|---|
DE102021206267A1 (de) | 2022-12-22 |
JP2024522224A (ja) | 2024-06-11 |
CN117813805A (zh) | 2024-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3785832T2 (de) | Netzwerkanpassungseinrichtung zur verbindung eines lokalen netzes mit einem hauptnetz. | |
DE69836684T2 (de) | Unterstützung von vollständigen bäumen in hochleistungsnetzwerkgeräten | |
DE102015102871B4 (de) | Technologien für verteilten Leitweglenkungstabellennachschlag | |
DE69834122T2 (de) | Verbindingsunterstützung in einer hochleistungsnetzwerkvorrichtung | |
DE69434330T2 (de) | Übertragungsvorrichtgung und verfahren | |
DE69926109T2 (de) | Paketversendegerät mit einer Flussnachweistabelle | |
DE69325557T2 (de) | Paketformat in Knotenpunkt für ein Datenübertragungssystem | |
DE69934644T2 (de) | Netzwerkvermittlungseinrichtung mit auf der Basis von Benutzung verteilten Umleitungsdatenbanken | |
DE69127198T2 (de) | Nachrichtenlenkung in einem Nezt, das aus über Brücken verbundenen Lokalnetzsegmenten besteht | |
DE60202136T2 (de) | Cache-eintrag-auswahlverfahren und -vorrichtung | |
DE69829645T2 (de) | Verfahren zur Änderung von dynamischen Entscheidungsbäume | |
EP2882145B1 (de) | Verfahren und Filteranordnung zum Speichern von Informationen über einen seriellen Datenbus eines Kommunikationsnetzwerks eingehender Nachrichten in einem Teilnehmer des Netzwerks | |
DE10297269T5 (de) | Kennzeichnung von Paketen mit einem Nachschlageschlüssel zur leichteren Verwendung eines gemeinsamen Paketweiterleitungs-Cache | |
DE60311800T2 (de) | Verfahren und vorrichtung zur verbesserung der netzwerkleitweglenkung | |
DE112019002591T5 (de) | Weiterleitungselement-datenebene mit flussgrössendetektor | |
WO2023025764A1 (de) | Vorrichtung und verfahren zur verarbeitung von dateneinheiten | |
DE10119754A1 (de) | Verfahren und Vorrichtung zum Speichern von Datenpaketen | |
WO2022263359A1 (de) | Vorrichtung und verfahren zur verarbeitung von dateneinheiten | |
DE60206720T2 (de) | Methode und Vorrichtung zur Paketübertragung in einem Netzwerk mit Überwachung von unzulässigen Paketen | |
DE60319882T2 (de) | Verfahren und System zum Empfangen und Senden verschiedener Datenrahmen in einem digitalen Übertragungsnetz | |
DE102014207479A1 (de) | Verfahren zum Klassifizieren eines Datensegments bezüglich dessen Weiterverarbeitung | |
DE102022203281A1 (de) | Vorrichtung und Verfahren zur Verarbeitung von Dateneinheiten | |
DE102020134185A1 (de) | Verfahren zur Durchleitung von Service-Anfragen und Echtzeitrechner zur Durchführung des Verfahrens zur Durchleitung von Service-Anfragen | |
DE102008017192A1 (de) | Verfahren zum Aufbau eines Netzwerks | |
DE102019218061A1 (de) | Weiterleitungsgerät |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22736152 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 18568652 Country of ref document: US |
|
ENP | Entry into the national phase |
Ref document number: 2023577402 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 202280055879.2 Country of ref document: CN |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 22736152 Country of ref document: EP Kind code of ref document: A1 |