Development of IPv6-IPv4 Translation Mechanisms for SIP
Download
Report
Transcript Development of IPv6-IPv4 Translation Mechanisms for SIP
Development of IPv6-IPv4
Translation Mechanisms for SIPbased VoIP Applications
Advisor: Dr. Kai-Wei Ke
Speaker: Wei-Ying Huang
Outline
Introduction
BIA
BIS
SLT
SIPv6 Translator
Implementation
Introduction
SIP VoIP application is an important
driving force to promote IPv6.
This paper presents the deployment
of two IPv6-IPv4 translation
mechanisms (i.e., Socket-layer
Translator and SIPv6 Translator) for
SIP VoIP applications.
IPv4/IPv6 Transition Mechanisms
Dual Stack
Reduce the cost invested in transition by running
both IPv4/IPv6 protocols on the same machine .
Tunneling
Reduce the cost in wiring by re-using current
IPv4 routing infrastructures as a virtual link.
Translation
Allow IPv6 realm to access the rich contents
already developed on IPv4 applications
Dual Stack
Dual stack hosts run
both the IPv4 and the
IPv6 in Network Layer.
Tunneling
Translation
Translation Mechanism is used when
the IPv4 network connects to IPv6
network
Translation (cont)
Install between the IPv4 network and
IPv6 network.
NAT-PT (Network Address Translation
and Protocol Translation)
ALG (Application-Level-Gateway)
SIIT (Stateless IP/ICMP Translation)
Install on host computer
BIS (Bump-In-the-Stack)
BIA (Bump-In-the-Application)
BIA (Bump-in-the-API)
Allows the dual stack hosts to
communicate with other IPv6 hosts
using existing IPv4 applications.
Provides the translation method
between the IPv4 APIs and IPv6 APIs.
The goal is simply achieved without
IP header translation.
BIA (cont)
The BIA technique inserts an API
translator between the socket API
module and the TCP/IP module in the
dual stack hosts.
Components of BIA
Components of BIA (cont)
Function Mapper
It translates an IPv4 socket API function
into an IPv6 socket API function.
Name Resolver
It returns a proper answer in response to
the IPv4 application's request.
Address Mapper
It internally maintains a table of the
pairs of an IPv4 address and an IPv6
address.
Behavior of BIA
---> A DNS message for name resolving
created by the applications and the name
resolver in the API translator.
+++> An IPv4 address request to and
reply from the address mapper for the
name resolver and the function mapper.
===> Data flow by socket API functions
created by the applications and the function
mapper in the API translator.
BIS (Bump-in-the-Stack)
Between a TCP/IPv4 module and
network card driver modules and
translate IPv4 into IPv6 and vice
versa.
Components of BIS
Components of BIS (cont)
Translator
It translates IPv4 into IPv6 using the IP
conversion mechanism
Extension Name Resolver
This action is the same as Name
Resolver in BIA
Address mapper
This action is the same as Address
mapper in BIA
SLT (Socket-layer Translator)
BIS and BIA can successfully translate NAT
friendly protocols (e.g. HTTP and TELNET)
Both of them only process the networklayer and transport-layer header
information.
Some protocols such as FTP and SIP
contain IP address and port information in
the application-layer headers
SLT (cont)
The SLT translates NAT friendly protocols by
redirecting IPv4 socket functions to IPv6.
For non-NAT friendly protocols (e.g., FTP
and SIP), we implement Application Layer
Gateways (ALGs) and ALG Manager.
ALGs and ALG Manager allow the dual-stack
hosts to access IPv6 resources through
IPv4 applications without any modification.
Components of SLT
Components of SLT (cont)
BIA Component
Operates the same functions as the BIA
mechanism
ALG-Manager
The ALG-Manager forwards the
parameters to SIP-ALG or FTP-ALG by
port number.
Components of SLT (cont)
FTP-ALG
Translate both IP/port information in the FTP
messages and the FTP commends.
Components of SLT (cont)
SIP-ALG
The SIP-ALG modifies IP address and
port number information in SIP From, To,
Via, Contact header fields and Session
Description Protocol (SDP) c and m fields.
Comparison of Transition Mechanisms
SIPv6 Translator
Problem :SIP UA cannot directly
communicate with IPv4-based SIP UA.
Components of SIPv6 Translator
NIC (Network interface controllers)
One NIC connects to IPv6 networks and
the other connects to IPv4 networks.
Packet Forwarding Engine
Intercepts the incoming packets,
forwards to the NAT-PT Component.
Sends the translated packets to the
destination NICs.
Components of SIPv6 Translator
(cont)
NAT-PT Component
Consists of the Stateless IP/ICMP
Translation (SIIT) component and an
IPv6-IPv4 mapping table.
Performs IPv6-IPv4 translation for IP and
ICMP headers.
ALG-Manager
Dispatches the incoming packet to DNSALG and SIP-ALG according to the
transport port number.
(Port 53->DNS, Port 5060->SIP)
Components of SIPv6 Translator
(cont)
DNS-ALG
Translates an IPv4 (or IPv6) DNS query
to an IPv6 (or IPv4) DNS query and
instructs the NAT-PT Component to
builds the IPv6-IPv4 mapping.
SIP-ALG
Translates the IP/port-related fields in
the SIP and SDP header and instructs
the NAT-PT Component to builds IPv6IPv4 mapping.
SLT Performance
Measure the NCTU SLT performance
on FTP applications transfer.
environment
Server: vsftpd running on Linux Fedora
Client: SmartFTP running on Windows XP
Network Bandwidth: 100Mbps Ethernet
Files size: 10KB to 2GB
Transmission Delay (sec)
Transmission Delay with and
without NCTU SLT
Evaluation of SLT and SIPv6
Translator Deployment
SIP/SDP header fields that are
checked by SIP VoIP devices
Conclusions
Present two IPv6-IPv4 translation
mechanisms (i.e., SLT and SIPv6 Translator)
and their deployment.
SLT
Translate a SIPv4 UA to IPv6 version.
SIPv6 Translator
Assist the SIPv6 UA to interwork with all SIPv4
UAs and PSTN gateways on NTP VoIP platform.
SLT only translate SIPv4 UA to IPv6 version,
but maybe can try to translate SIPv6 UA to
IPv4 version in future work.
Reference
Whai-En Chen; Wu, Q “Development and Deployment
of IPv6-Based SIP VoIP Networks” IEEE CNF 31-04 Jan.
2005 Page(s):76 - 79 Digital Object Identifier
10.1109/SAINTW.2005.1619982
Whai-En Chen, Chia-Yung Su and Yi-Bing Lin.“NCTU
SLT: A Socket-layer Translator forIPv6-IPv4
Translation”. Accepted and to appear inIEEE
Communications Letters.
S. Lee, M-K. Shin, Y-J. Kim, E. Nordmark, A.Durand.
“Dual Stack Hosts Using Bump-in-the-API(BIA)”. IETF
RFC3338. October 2002.
K. Tsuchiya, H. Higuchi, Y. Atarashi. “Dual Stack Hosts
using the Bump-In-the-Stack Technique (BIS)”. IETF
RFC2767. February 2000.
NAT-PT