IP Library › Granted Patent US 9,876,757
Granted Patent B2
US 9,876,757 · App. 15/206,830 · Granted Jan 23, 2018

Systems and methods for dynamic network address modification

Inventors: Gary Mitchell (Woodbine, MD); Scott Whittle (Olney, MD); Kurt Quasebarth (Baltimore, MD)
H04L61/2076H04L12/4641H04L45/306H04L45/42H04L61/2015H04L63/0272H04L61/1511H04L61/2514
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,876,757
App. No.
15/206,830
Granted
Jan 23, 2018
Kind
B2
Abstract

The invention presented herein permits split-routing to occur without any changes, modifications, or configuration of the requesting host, network stacks, network architectures and routing and forwarding behavior. The invention is carried out by way of a Module that intercepts the normal and standard DHCP communication between a requesting device and a DHCP server, and substitutes the elements within the server response with the Module's own predefined elements. These substitute elements leverage the behavior of standard protocols to gain desired device network behavior.

Claims (22)

1. A method for initiating a direct tunnel between previously unconnected endpoints residing on an otherwise obstructed network path, comprising:

sending, via a native endpoint configured with a direct connect module, a message comprising identifying information and status information of the native endpoint to a management database;

sending, via a nonnative endpoint configured with a direct connect module, a message comprising identifying information and status information of the nonnative endpoint to a management database;

sending, via the management database, a message comprising a unique ID packet of the native endpoint to the nonnative endpoint;

sending, via the management database, a message comprising a unique ID packet of the nonnative endpoint to the native endpoint;

upon receiving a nonnative endpoint unique ID, initiating a sequence of outbound communication sessions from a sending native endpoint to the nonnative endpoint;

upon receiving a native endpoint unique ID, initiating a sequence of outbound communication sessions from a sending nonnative endpoint to the native endpoint;

discovering by the direct connect module a connection between the previously unconnected endpoints upon receiving by the direct connect module the outbound communication from the sending endpoint at a receiving endpoint, wherein the receiving endpoint is one of a nonnative endpoint receiving the outbound communication from the sending native endpoint or a native endpoint receiving the outbound communication from the sending nonnative endpoint;

synchronizing by the direct connect module status information between the connected endpoints;

identifying the sending endpoint address as a server endpoint and the remaining endpoint as a client endpoint; and

disengaging by the direct connect module communication from the management database by the server endpoint and client endpoint, thereby permitting direct endpoint-to-endpoint connectivity and establishing a direct tunnel between the previously unconnected endpoints.

2. A non-transitory computer-readable medium storing computer-readable instructions that, when executed by a processor of a computing device, instruct the processor to perform a method for generating a direct tunnel between endpoints residing on an otherwise obstructed network path, comprising:

sending, via a native endpoint configured with a direct connect module, a message comprising identifying information and status information of the native endpoint to a management database by the direct connect module;

sending, via a nonnative endpoint configured with a direct connect module, a message comprising identifying information and status information of the nonnative endpoint to a management database;

sending, via the management database, a message comprising a unique ID packet of the native endpoint to the nonnative endpoint;

sending, via the management database, a message comprising a unique ID packet of the nonnative endpoint to the native endpoint;

upon receiving a nonnative endpoint unique ID, initiating a sequence of outbound communication sessions from a sending native endpoint to the nonnative endpoint;

upon receiving a native endpoint unique ID, initiating a sequence of outbound communication sessions from a sending nonnative endpoint to the native endpoint;

discovering by the direct connect module a connection between the previously unconnected endpoints upon receiving the outbound communication from the sending endpoint at a receiving endpoint, wherein the receiving endpoint is one of the nonnative endpoint receiving the outbound communication from the sending native endpoint or the native endpoint receiving the outbound communication from the sending nonnative endpoint;

synchronizing by the direct connect module status information between the connected endpoints;

identifying the sending endpoint address as a server endpoint and the remaining endpoint as a client endpoint; and

disengaging communication from the management database by the server endpoint and client endpoint, thereby permitting direct endpoint-to-endpoint connectivity and establishing a direct tunnel between the previously unconnected endpoints.

Continuity (3)
Continuation 14185395 · Feb 20, 2014
Provisional Application 61767229 · Feb 20, 2013
Related Publication 20160323242A1 · Nov 3, 2016