Routing packets in multiple destination networks with overlapping address spaces

US10425330B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10425330-B2
Application numberUS-201715495232-A
CountryUS
Kind codeB2
Filing dateApr 24, 2017
Priority dateApr 24, 2017
Publication dateSep 24, 2019
Grant dateSep 24, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A packet is analyzed at an outbound end of a tunnel from a first data network to determine whether the packet is directed to a first remote target in a first remote data network over a first tunnel or to a second remote target in a second remote data network over a second tunnel. A target address of the packet is present in both the first remote data network and the second remote data network. When the packet is to be directed to the first remote target in the first remote data network, an octet in the target address of the packet is changed from a first value to a second value, the changing forming a modified packet. When the second value is stored in the octet, the modified packet is caused to be sent to the tunnel for delivery to the second data network.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: analyzing, at an outbound end of a tunnel from a first data network, a packet to determine whether the packet is directed to a first remote target in a first remote data network over a first tunnel or to a second remote target in a second remote data network over a second tunnel, wherein a target address of the packet is present in both the first remote data network and the second remote data network; changing, responsive to the packet being directed to the first remote target in the first remote data network, an octet in the target address of the packet from a first value to a second value, the changing forming a modified packet; causing, responsive to storing the second value of the octet, the modified packet to be sent to the tunnel for delivery to the second remote data network; causing, at a source of a second packet, a predetermined code to be stored in a field in a header of the second packet; determining, as a part of the analyzing, that the second packet is directed to a local target in a local network, wherein the target address of the second packet is present in the first remote data network and the local network, wherein the local network and the first remote network are on opposite sides of the first tunnel; and causing, by omitting the changing for the second packet, the second packet to be directed to the local network. 2. The method of claim 1 , further comprising: causing, at a source of the packet, a first code corresponding to the first remote data network to be stored in a field in a header of the packet, wherein the analyzing uses the first code to determine that the packet is directed to the first remote target even though the target address of the packet is present in both the first remote data network and the second remote data network. 3. The method of claim 1 , wherein the source and the local target are in different data networks on same side of the first tunnel. 4. The method of claim 1 , further comprising: causing a second packet to be received at an inbound end of the tunnel at the first remote data network; causing a determination at the inbound end whether the second packet has the second value in the octet in the target address; modifying, responsive to the target address having the second value in the octet, the second value to a third value, wherein the third value is suitable for routing the second packet to the first remote target in the first remote data network, the modifying forming a modified second packet; and routing the modified second packet to the first remote target in the first remote data network. 5. The method of claim 4 , wherein a target address in the second packet is the target address in the modified packet. 6. The method of claim 4 , wherein a target address in the modified second packet is the target address in the packet. 7. The method of claim 1 , further comprising: selecting the first tunnel from a plurality of tunnels, wherein the first tunnel corresponds to the second value of the octet. 8. The method of claim 1 , wherein the first remote data network is configured with a first set of internet protocol version 4 (IPv4) addresses and the second remote data network is configured with a second set of IPv4 addresses, and wherein the first set of IPv4 addresses and the second set of IPv4 addresses have at least one subset of addresses that are same in the first and the second sets, and wherein the target address is a member of the at least one subset of addresses. 9. The method of claim 1 , wherein the target address is an IPv4 target address, and wherein the octet is a first octet in the IPv4 target address. 10. A computer usable program product comprising one or more computer-readable storage devices, and program instructions stored on at least one of the one or more storage devices, the stored program instructions comprising: program instructions to analyze, at an outbound end of a tunnel from a first data network, a packet to determine whether the packet is directed to a first remote target in a first remote data network over a first tunnel or to a second remote target in a second remote data network over a second tunnel, wherein a target address of the packet is present in both the first remote data network and the second remote data network; program instructions to change, responsive to the packet being directed to the first remote target in the first remote data network, an octet in the target address of the packet from a first value to a second value, the changing forming a modified packet; program instructions to cause, responsive to storing the second value of the octet, the modified packet to be sent to the tunnel for delivery to the second remote data network; program instructions to cause, at a source of a second packet, a predetermined code to be stored in a field in a header of the second packet; program instructions to determine, as a part of the analyzing, that the second packet is directed to a local target in a local network, wherein the target address of the second packet is present in the first remote data network and the local network, wherein the local network and the first remote network are on opposite sides of the first tunnel; and program instructions to cause, by omitting the changing for the second packet, the second packet to be directed to the local network. 11. The computer usable program product of claim 10 , further comprising: program instructions to cause, at a source of the packet, a first code corresponding to the first remote data network to be stored in a field in a header of the packet, wherein the analyzing uses the first code to determine that the packet is directed to the first remote target even though the target address of the packet is present in both the first remote data network and the second remote data network. 12. The computer usable program product of claim 10 , wherein the source and the local target are in different data networks on same side of the first tunnel. 13. The computer usable program product of claim 10 , further comprising: program instructions to cause a second packet to be received at an inbound end of the tunnel at the first remote data network; program instructions to cause a determination at the inbound end whether the second packet has the second value in the octet in the target address; program instructions to modify, responsive to the target address having the second value in the octet, the second value to a third value, wherein the third value is suitable for routing the second packet to the first remote target in the first remote data network, the modifying forming a modified second packet; and program instructions to route the modified second packet to the first remote target in the first remote data network. 14. The computer usable program product of claim 13 , wherein a target address in the second packet is the target address in the modified packet. 15. The computer usable program product of claim 13 , wherein a target address in the modified second packet is the target address in the packet. 16. The computer usable program product of claim 10 , wherein the program instructions are stored in a computer readable storage device in a data processing system, and wherein the computer usable code is transferred over a network from a remote data processing system. 17. The computer usable program product of claim 10 , wherein the program instructions are stored in a computer readable storage device in a server data processing system, and wherein the computer usable code is downloa

Assignees

Inventors

Classifications

  • H04L45/74Primary

    Address processing for routing · CPC title

  • Interconnection of networks using encapsulation techniques, e.g. tunneling · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10425330B2 cover?
A packet is analyzed at an outbound end of a tunnel from a first data network to determine whether the packet is directed to a first remote target in a first remote data network over a first tunnel or to a second remote target in a second remote data network over a second tunnel. A target address of the packet is present in both the first remote data network and the second remote data network. …
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification H04L45/74. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Sep 24 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).