IP Library Granted Patent US 9,313,235
Granted Patent B2
US 9,313,235 · App. 14/839,307 · Granted Apr 12, 2016

Systems and methods for network interoperability

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 9,313,235
App. No.
14/839,307
Granted
Apr 12, 2016
Kind
B2
Abstract

Systems and methods for interoperating between networks. A first network may be configured to operate according to a first real time network protocol and each of one or more second networks may be configured to operate according to respective second real time traffic protocols. A mapping may specify data routing between a plurality of ports and the routing may maintain real time behavior between the first network and the one or more second networks. Additionally, routing information may be inserted in packets routed from the one or more second networks to the first network and removed from packets routed from the first network to the one or more second networks. The packets may be routed, based on the mapping, to distinct queues for the first network and the one or more second networks for processing by an application executing on at least one device.

Claims (58)

1. A system for interoperating between a first network and one or more second networks, the system comprising:

a plurality of ports, comprising:

at least one port coupled to the first network, wherein the first network is configured to operate according to a first real time network protocol; and

one or more ports coupled respectively to the one or more second networks, wherein each of the one or more second networks are configured to operate according to respective second real time traffic protocols, wherein the first real time network protocol is not compatible with the respective second real time traffic protocols; and

a switch coupled to the plurality of ports, wherein the switch is configured with a mapping that specifies data routing between the plurality of ports, wherein the switch is configured to:

route packets between the first network and the one or more second networks based on the mapping, thereby maintaining real time behavior between the first network and the one or more second networks;

insert routing information in packets routed from the one or more second networks to the first network;

remove routing information from packets routed from the first network to the one or more second networks; and

route, based on the mapping, packets to distinct queues for the first network and the one or more second networks for processing by an application executing on at least one device.

2. The system of claim 1 ,

wherein the system is configured as a bridge between the first network and the one or more second networks.

3. The system of claim 1 ,

wherein the distinct queues comprise first queue pairs associated with traffic on the first network and one or more second queue pairs associated with traffic on the one or more second networks;

wherein the switch is further configured to time stamp ingress and egress of packets to/from the first queue pairs and the one or more second queue pairs; and

wherein the application correlates clock synchronization information of the first network and one or more second time networks based on the time stamps.

4. The system of claim 1 ,

wherein the switch further comprises:

one or more functional units, configured to perform said routing packets between the first network and the one or more second networks, said inserting routing information, said removing routing information, and said routing packets to distinct queues.

5. The system of claim 1 ,

wherein the system comprises a network interface controller.

6. The system of claim 1 ,

wherein the system comprises a network switch.

7. The system of claim 1 ,

wherein the routing information comprises a virtual local area network (VLAN) tag.

8. The system of claim 7 ,

wherein the first network is associated with a first VLAN tag, wherein each of the one or more second networks is associated with a respective second VLAN tag.

9. A method for interoperating between a first network and one or more second networks, the method comprising:

routing packets between the first network and the one or more second networks via a plurality of ports based on a mapping, wherein the first network is configured to operate according to a first real time network protocol, wherein each of the one or more second networks are configured to operate according to respective second real time traffic protocols, wherein the mapping specifies data routing between the plurality of ports, and wherein said routing maintains real time behavior between the first network and the one or more second networks;

inserting routing information in packets routed from the one or more second networks to the first network;

removing routing information from packets routed from the first network to the one or more second networks; and

routing, based on the mapping, packets to distinct queues for the first network and the one or more second networks for processing by an application executing on at least one device.

10. The method of claim 9 ,

wherein the distinct queues comprise first queue pairs associated with traffic on the first network and one or more second queue pairs associated with traffic on the one or more second networks, wherein the method further comprises:

time stamping ingress and egress of packets to/from the first queue pairs and the one or more second queue pairs, wherein the application correlates clock synchronization information of the first network and one or more second time networks based on the time stamps.

11. The method of claim 9 ,

wherein the plurality of ports are comprised in a network interface controller.

12. The method of claim 9 ,

wherein the routing information comprises a virtual local area network (VLAN) tag.

13. The method of claim 12 ,

wherein the first network is associated with a first VLAN tag, wherein each of the one or more second networks is associated with a respective second VLAN tag.

14. A non-transitory computer readable memory medium storing program instructions executable by a processor to:

route packets between a first network and one or more second networks via a plurality of ports based on a mapping, wherein the first network is configured to operate according to a first real time network protocol, wherein each of the one or more second networks are configured to operate according to respective second real time traffic protocols, wherein the mapping specifies data routing between the plurality of ports, and wherein said routing maintains real time behavior between the first network and the one or more second networks;

insert routing information in packets routed from the one or more second networks to the first network;

remove routing information from packets routed from the first network to the one or more second networks; and

route, based on the mapping, packets to distinct queues for the first network and the one or more second networks for processing by an application executing on at least one device.

15. The non-transitory computer readable memory medium of claim 14 ,

wherein the distinct queues comprise first queue pairs associated with traffic on the first network and one or more second queue pairs associated with traffic on the one or more second networks, wherein the program instructions are further executable to:

time stamp ingress and egress of packets to/from the first queue pairs and the one or more second queue pairs, wherein the application correlates clock synchronization information of the first network and one or more second time networks based on the time stamps.

16. The non-transitory computer readable memory medium of claim 14 ,

wherein the processor is comprised in a network interface controller.

17. The non-transitory computer readable memory medium of claim 14 ,

wherein the processor is comprised in a network switch.

18. The non-transitory computer readable memory medium of claim 14 ,

wherein the processor comprises one or more functional units, wherein the one or more functional units are configured to execute the program instructions.

19. The non-transitory computer readable memory medium of claim 14 ,

wherein the routing information comprises a virtual local area network (VLAN) tag.

20. The non-transitory computer readable memory medium of claim 19 ,

wherein the first network is associated with a first VLAN tag, wherein each of the one or more second networks is associated with a respective second VLAN tag.

Assignments (5)
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 057280/0028) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 065231/0466 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 052935/0001) Recorded Oct 13, 2023
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS ADMINISTRATIVE AGENT
To: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
Reel/Frame 065653/0463 →
SECURITY INTEREST Recorded Jun 18, 2021
From: NATIONAL INSTRUMENTS CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 057280/0028 →
SECURITY INTEREST Recorded Jun 14, 2020
From: NATIONAL INSTRUMENTS CORPORATION; PHASE MATRIX, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 052935/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2015
From: CHANDHOKE, SUNDEEP; CUMMINGS, RODNEY W.; GAO, CHANGZHE; ODOM, BRIAN KEITH
To: NATIONAL INSTRUMENTS CORPORATION
Reel/Frame 036450/0969 →