IP Library Granted Patent US 11,770,399
Granted Patent B2
US 11,770,399 · App. 16/934,612 · Granted Sep 26, 2023

Lightweight and trust-aware routing in NoC based SoC architectures

Inventors: Thelijjagoda S N Charles (Gainesville, FL); Prabhat Kumar Mishra (Gainesville, FL)
Assignee: UNIVERSITY OF FLORIDA RESEARCH FOUNDATION, INC.
H04L63/1433G06F15/7825H04L45/745H04L49/109H04L69/22
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,770,399
App. No.
16/934,612
Granted
Sep 26, 2023
Kind
B2
Abstract

Various examples are provided related to software and hardware architectures that enable lightweight and trust-aware routing. In one example, among others, a method for trust-aware routing includes calculating trust values to represent how much a node can be trusted to route packets through its router. Each node can store the trust values of routers that are one hop and two hops away from it, which represent direct trust and delegated trust, respectively. When a router receives a packet, the router can update trust values and forward the packet to the next hop.

Claims (53)

1. A method for trust-aware routing, comprising:

receiving, by a node in a network-on-chip (NoC) based system-on-chip (SoC), a packet comprising a header indicating a source node and a destination node;

checking, by the node, at least one entry in a communication table, the at least one entry comprising a source field and a destination field;

determining, by the node, that a communication corresponding to an entry is not a retransmission;

selecting, by the node, a next-hop node in the NoC-based SoC;

increasing, by the node, a trust value for the next-hop node based at least in part on the communication corresponding to the entry not being a retransmission; and

delegating, by the node, the trust value for the next-hop node to at least one neighboring node, the next-hop node not being directly connected to the at least one neighboring node within the NoC-based SoC.

2. The method of claim 1 , wherein checking the at least one entry comprises comparing the source node for the packet with the source field of the at least one entry and the destination node for the packet with the destination field of the at least one entry.

3. The method of claim 1 , wherein the at least one entry further comprises a retransmission flag, and determining that the communication corresponding to the entry is not a retransmission comprises checking the retransmission of the at least one entry.

4. The method of claim 1 , wherein selecting the next-hop node comprises:

determining, by the node, a plurality of routing paths in a direction of the destination node;

calculating, by the node, an aggregate trust value for respective ones of the plurality of routing paths;

identifying, by the node, a routing path from the plurality of routing paths having a greatest aggregate trust value; and

selecting, by the node, a neighboring node from the routing path having a greatest trust value as the next-hop node.

5. The method of claim 1 , wherein delegating the trust value for the next-hop node to the at least one neighboring node comprises broadcasting a delegated trust packet comprising the trust value for the next-hop node to the at least one neighboring node, wherein the at least one neighboring node is not the next-hop node.

6. The method of claim 1 , further comprising:

removing, by the node, the entry from the communication table; and

creating, by the node, a new entry in the communication table corresponding to the packet.

7. A system for trust-aware routing, comprising:

a network-on-chip (NoC) based system-on-chip (SoC) comprising a plurality of nodes, a node of the plurality of nodes comprising an intellectual property core and a router; and

machine-readable instructions that, when executed, cause the node to at least:

determine a plurality of paths from the node to a destination node;

receive a packet comprising a same source node and a same destination node as an entry in a communication table;

select a next-hop node in the NoC-based SoC based at least in part on an aggregate trust value corresponding to a routing path comprising the next-hop node;

calculate a trust value for the next-hop node based at least in part on whether a communication corresponding to the entry is a retransmission; and

delegate the trust value for the next-hop node to at least one neighboring node, the next-hop node not being directly connected to the at least one neighboring node within the NoC-based SoC.

8. The system of claim 7 , wherein the entry further comprises an address field, a timestamp, and a retransmission flag.

9. The system of claim 7 , wherein the machine-readable instructions further cause the node to at least:

compare an address field corresponding to the entry with an address corresponding to the packet;

in response to determining that the address field corresponding to the entry matches the address corresponding to the packet, update a retransmission flag corresponding to the entry, the retransmission flag indicating that a communication corresponding to the entry is a retransmission; and

reduce the trust value corresponding to the next-hop node.

10. The system of claim 7 , wherein delegating the trust value for the next-hop node to the at least one neighboring node comprises broadcasting a delegated trust packet comprising the trust value for the next-hop node to the at least one neighboring node.

11. The system of claim 7 , wherein the machine-readable instructions further cause the node to at least:

remove the entry from the communication table; and

create a new entry in the communication table corresponding to the packet.

12. The system of claim 7 , wherein the next-hop node is a neighboring node.

13. A method for trust-aware routing, comprising:

receiving, by a node in a network-on-chip (NoC) based system-on-chip (SoC), a packet comprising a header indicating an address;

checking, by the node, at least one entry in a communication table, the at least one entry comprising an address field;

in response to determining that the address field of the at least one entry matches the address for the packet, determining, by the node that a communication corresponding to an entry is a retransmission;

selecting, by the node, a next-hop node in the NoC-based SoC; and

decreasing, by the node, a trust value for the next-hop node based at least in part on the communication corresponding to the entry being a retransmission, the next-hop node not being directly connected to the at least one neighboring node within the NoC-based SoC.

14. The method of claim 13 , wherein the at least one entry further comprises a retransmission flag, and determining that the communication corresponding to the entry is a retransmission comprises checking the retransmission flag of the at least one entry.

15. The method of claim 13 , wherein selecting the next-hop node comprises:

determining, by the node, a plurality of routing paths in a direction of a destination node;

calculating, by the node, an aggregate trust value for respective ones of the plurality of routing paths;

identifying, by the node, a routing path from the plurality of routing paths having a greatest aggregate trust value; and

selecting, by the node, an adjacent node from the routing path having the greatest aggregate trust value as the next-hop node.

16. The method of claim 15 , wherein the destination node associated with the packet is determined based at least in part on an identifier from a destination field of the packet.

17. The method of claim 15 wherein individual ones of the plurality of routing paths comprise a first node that is one hop from a current node and a second node that is two hops from the current node.

18. The method of claim 17 , wherein calculating the aggregate trust value for respective ones of the plurality of routing paths further comprises calculating a sum of a first trust value for the first node and a second trust value for the second node.

19. The method of claim 18 , wherein the first trust value is a direct trust value and the second trust value is a delegated trust value.

20. The method of claim 15 , wherein the routing path having the greatest aggregate trust value is selected at random from a plurality of routing paths having the greatest aggregate trust value.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2021
From: MISHRA, PRABHAT KUMAR; CHARLES, THELIJJAGODA S N
To: UNIVERSITY OF FLORIDA RESEARCH FOUNDATION, INC.
Reel/Frame 057802/0188 →
CONFIRMATORY LICENSE Recorded Jul 22, 2020
From: UNIVERSITY OF FLORIDA
To: NATIONAL SCIENCE FOUNDATION
Reel/Frame 053287/0421 →
Continuity (2)
Provisional Application 62878147 · Jul 24, 2019
Related Publication 20210029152A1 · Jan 28, 2021