SIP NAT Traversal via Port Prediction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Network Address Translator (NAT) servers hinder peer-to-peer (P2P) communication in Voice over Internet Protocol (VoIP) systems, specifically in Session Initiation Protocol (SIP), leading to reduced communication efficiency due to the need for SIP proxy servers to relay SIP speech packets, which increases costs and reduces efficiency.

Innovation Solution

A method for NAT traversal in SIP that involves detecting and predicting port numbers assigned by NAT servers, allowing direct communication between NAT servers without the need for SIP proxy servers, by modifying the Invite and 200 OK messages with IP and port information to facilitate peer-to-peer speech packet transfer.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If SIP proxy servers are used to transfer speech packets between NAT servers, then communication can be established, but communication efficiency is reduced and costs increase

Engineering Contradiction:
Improvecommunication establishmentVSAvoidcommunication efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by performing port number detection and prediction before actual speech communication. The system detects the port assignment rules of NAT servers during session setup, predicts the ports that will be assigned for speech packets, and embeds this information in SIP messages. This preliminary preparation enables direct P2P communication without requiring SIP proxy servers to relay speech packets during the actual communication phase.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent extracts the speech packet transfer function from the SIP proxy server and establishes direct P2P communication between endpoints. By taking out the relay function from the proxy server and enabling direct connection between NAT servers, the system eliminates the inefficiency of proxy-mediated speech transfer while maintaining the proxy server's role in SIP signaling.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If SIP proxy servers are used to transfer speech packets, then communication can be maintained, but VoIP provider costs increase

Engineering Contradiction:
Improvecommunication maintenanceVSAvoidVoIP provider costs
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent applies self-service by enabling NAT servers and endpoints to autonomously determine their port assignment rules and predict future port numbers without requiring continuous assistance from SIP proxy servers. The system independently detects, analyzes, and adapts to NAT port assignment behaviors, allowing endpoints to self-manage their communication paths and reduce reliance on expensive proxy infrastructure.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent uses SIP messages as an intermediary to transmit port prediction information between endpoints. By embedding predicted port numbers and NAT server IP addresses in SIP INVITE and 200 OK messages, the system creates an information bridge that enables direct P2P connection setup without requiring the SIP proxy server to mediate actual speech packet flow.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If port number prediction is performed, then direct P2P communication can be established, but detection and measurement complexity increases

Engineering Contradiction:
Improvedirect P2P communicationVSAvoidport number detection
Core Design Contradiction:
ProductivityVSDifficulty of detecting and measuring

Solution Approach 1:

The patent applies partial action by performing a limited number of detection operations (e.g., 3-5 test packets) to identify NAT port assignment rules, rather than exhaustive probing. This partial detection approach gathers sufficient information to predict future port numbers without excessive measurement complexity, balancing the need for accurate prediction with the cost of detection.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent uses copying by replicating detection patterns and analyzing the responses to identify NAT port assignment rules. By sending multiple test packets with predictable patterns and copying the response patterns, the system infers the NAT server's port assignment algorithm, enabling prediction without complex direct measurement of the NAT server's internal logic.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8676933B2NAT traversal method in session initial protocol
Publication Date: 2014.03.18 NAT TAIPEI UNIV OF TECH
  • US8676933B2 patent drawing
  • US8676933B2 patent drawing
  • US8676933B2 patent drawing

AI summary

The present invention provides an NAT (Network Address Translator) traversal method in Session Initiation Protocol (SIP) for solving the problems of SIP in Internet phone (VoIP) under current Internet environment. In other words, the present invention solves the SIP problems caused by NAT (Network Address Translator) that P2P (Peer to Peer) transmission cannot traverse the NAT firewall directly. The major content of the present invention is that the computer conducts multiple registrations before issuing an Invite message in order to detect the rule of the NAT server to assign port number and IP address. Additional commands or parameters beyond the SIP standard are not required for the NAT traversal function. Hence, the capability of SIP for a NAT traversal function is provided without no additional commands or parameters.