Multi-Layer NAT Peer-to-Peer Connection via Intermediary Address Mapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-layer network address translator structures, establishing peer-to-peer connections between nodes is challenging due to hairpinning limitations, as packets cannot be routed correctly through network address translators, preventing successful connections between nodes of different hierarchical layers.
Innovation Solution
A network transmission method and system that involves a peer-to-peer server sending internal IP addresses and port numbers to nodes connected through a top-layer network address translator, with intermediary addresses and port numbers being used to facilitate packet routing across multiple network address translators, allowing successful peer-to-peer connections by performing lookup operations to map addresses and port numbers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If nodes use external addresses and external port numbers corresponding to the network address translator for peer-to-peer connection, then connection can be established in single-layer NAT, but connection fails in multi-layer NAT due to hairpinning limitation
Solution Approach 1:
The patent introduces intermediary addresses and intermediary port numbers as a mediator between internal addresses and external addresses in multi-layer NAT structures. The intermediary NAT device acts as a bridge that receives packets from peer nodes using external addresses, performs lookup operations using intermediary addresses, and forwards packets to the correct internal addresses, thereby enabling peer-to-peer connections through multi-layer NAT structures.
Solution Approach 2:
The patent segments the address translation process into multiple stages: external address to intermediary address translation at the intermediary NAT layer, and intermediary address to internal address translation at the inner NAT layer. This segmentation allows each NAT layer to handle only its specific translation task, resolving the hairpinning limitation by breaking the complex multi-layer translation into manageable segments.
2Reliability
If nodes use internal addresses and internal port numbers for peer-to-peer connection, then connection can be established within the same NAT layer, but packet routing fails across different hierarchical layers
Solution Approach 1:
The intermediary address serves as a mediator that enables packet routing across different hierarchical NAT layers. When a packet is sent from one peer to another, the intermediary NAT device uses the intermediary address to perform lookup operations and determine the correct internal address, thereby facilitating cross-layer packet routing without requiring nodes to be aware of the complex multi-layer structure.
Solution Approach 2:
The patent establishes intermediary address mappings in advance before peer-to-peer communication occurs. The intermediary NAT device pre-configures the mapping between intermediary addresses and internal addresses, so that when packets need to be routed across layers, the lookup operation can quickly determine the correct routing path without complex real-time calculations.
3Reliability
If traditional NAT address translation is used in multi-layer structures, then address privacy is maintained, but peer-to-peer direct connection is blocked
Solution Approach 1:
The intermediary address acts as a mediator that enables peer-to-peer connections while preserving address privacy. The intermediary NAT device maintains the mapping between intermediary addresses and internal addresses, allowing direct peer-to-peer communication to occur through the intermediary layer without exposing the complex multi-layer NAT structure to external peers.
Data Source
AI summary
A peer-to-peer server sends a first internal internet protocol (IP) address and a first internal port number of a first node to a second node, and sends a second internal IP address and a second internal port number of the second node to the first node. The first node sends a first packet to the second internal IP address and the second internal port number via a network address translator. The network address translator send a second packet corresponding to the first packet from an intermediary IP address and an intermediary port number to the second node. The second node sends a third packet to the intermediary IP address and the intermediary port number. The network address translator performs a lookup operation to send a fourth packet corresponding to the third packet to the first internal IP address and the first internal port number.


