Teredo Client NAT Type Detection and Port Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current mechanisms for IPv4 clients to communicate over an IPv6 network, such as the 6 to 4 mechanism and Teredo protocol, face challenges when operating behind Network Address Translators (NATs), particularly with symmetric and restricted NATs, which restrict packet forwarding and port mapping, hindering effective communication between IPv4 and IPv6 systems.

Innovation Solution

The implementation of Teredo clients that detect the type of NAT they are behind and utilize UPnP-enabled NATs to establish port mappings, allowing for communication between IPv6-aware clients by constructing synthetic IPv6 addresses and employing bubble packets to manage port mappings dynamically.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If Teredo protocol is used for IPv4 clients to communicate over IPv6 network, then communication between IPv4 and IPv6 systems is enabled, but communication is hindered behind symmetric and restricted NATs due to packet forwarding and port mapping restrictions

Engineering Contradiction:
Improvecommunication capability between IPv4 and IPv6 systemsVSAvoidcommunication reliability behind NATs
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces a Teredo server as an intermediary to facilitate communication between clients behind symmetric NATs. The server acts as a mediator that receives packets from one client, translates them into the appropriate format, and forwards them to the destination client, thereby enabling communication that would otherwise be blocked by restrictive NAT configurations

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent dynamically changes packet parameters including source and destination addresses, ports, and protocol types based on the detected NAT type. By adapting packet parameters to match the specific restrictions of symmetric or restricted NATs, the system enables successful communication while maintaining compatibility with different NAT configurations

Inventive Principle:
Principle #35Parameter changes

2Reliability

If NAT type detection is performed to enable communication behind symmetric NATs, then communication reliability is improved, but detection time and system complexity increase

Engineering Contradiction:
Improvecommunication reliability behind NATsVSAvoidNAT detection time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent performs preliminary NAT type detection and classification before establishing actual communication. By proactively identifying the NAT type (full cone, restricted cone, port restricted, or symmetric) through initial probe packets and analyzing response patterns, the system prepares appropriate communication strategies in advance, preventing time loss during actual data transmission

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a feedback mechanism where the Teredo server monitors packet transmission results and NAT response patterns to dynamically adjust detection strategies. Based on feedback from probe packet responses, the system refines its understanding of the NAT type and optimizes subsequent communication parameters, reducing overall detection time through iterative learning

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If dynamic port mapping is implemented using bubble packets for UPnP-enabled NATs, then communication flexibility is improved, but device complexity and processing overhead increase

Engineering Contradiction:
Improveport mapping flexibilityVSAvoidport mapping management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements self-service port mapping where the Teredo client automatically discovers UPnP capability, initiates port mapping requests, and manages port allocations without manual configuration. The system autonomously handles the complexity of dynamic port mapping by implementing automated discovery mechanisms and self-configuring port forwardings based on detected UPnP support

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent creates a universal port mapping mechanism that automatically adapts to different NAT types and UPnP capabilities. The same bubble packet infrastructure serves multiple functions including port mapping, NAT type detection, and communication facilitation, reducing overall system complexity by consolidating multiple functions into a single versatile mechanism

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS7693091B2Teredo connectivity between clients behind symmetric NATs
Publication Date: 2010.04.06 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7693091B2 patent drawing
  • US7693091B2 patent drawing
  • US7693091B2 patent drawing

AI summary

Methods and systems for communicating between Teredo clients behind UPnP-enabled symmetric or restricted Network Address Translators.