HIP-Based NAT Traversal in P2P-Environments

Slides:



Advertisements
Similar presentations
SIP, Firewalls and NATs Oh My!. SIP Summit SIP, Firewalls and NATs, Oh My! Getting SIP Through Firewalls Firewalls Typically.
Advertisements

Using HIP to solve MULTI-HOMING IN IPv6 networks YUAN Zhangyi Beijing University of Posts and Telecommunications.
© 2004 SafeNet, Inc. All rights reserved. Mobike Protocol Design draft-ietf-mobike-design-00.txt Tero Kivinen
Firewalls and Network Address Translation (NAT) Chapter 7.
STUN Date: Speaker: Hui-Hsiung Chung 1.
SIP Traversal over NAT Problems and Solutions Mr. Ting-Yun Chi May 2,2006 (Taiwan,NICI IPv6 R&D Division)
NAT Traversal for P2PSIP Philip Matthews Avaya. Peer X Peer Y Peer W 2. P2PSIP Network Establishing new Peer Protocol connection Peer Protocol messages.
NAT TRAVERSAL FOR IPSEC Research Seminar on Datacommunications Software HIIT
1 © 2005 Nokia mobike-transport.ppt/ MOBIKE Transport mode usage and issues Mohan Parthasarathy.
1 Internet Networking Spring 2004 Tutorial 13 LSNAT - Load Sharing NAT (RFC 2391)
SIP, NAT, Firewall SIP NAT Firewall How to Traversal NAT/Firewall for SIP.
Internet Protocol Security (IPSec)
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #12 LSNAT - Load Sharing NAT (RFC 2391)
SIP and NAT Dr. Jonathan Rosenberg Cisco Fellow. What is NAT? Network Address Translation (NAT) –Creates address binding between internal private and.
Section 461.  ARP  Ghostbusters  Grew up in Lexington, KY  Enjoy stargazing, cycling, and mushroom hunting  Met Mario once (long time ago)
Host Identity Protocol
Middleboxes & Network Appliances EE122 TAs Past and Present.
Support Protocols and Technologies. Topics Filling in the gaps we need to make for IP forwarding work in practice – Getting IP addresses (DHCP) – Mapping.
Mobile IP Traversal Of NAT Devices By, Vivek Nemarugommula.
Host Mobility for IP Networks CSCI 6704 Group Presentation presented by Ye Liang, ChongZhi Wang, XueHai Wang March 13, 2004.
Overview of SHIM6 Multihoming Protocol Fuad Bin Naser Std. No A presentation for CSE6806: Wireless & Mobile Communication Networks.
March 7, 2005MOBIKE WG, IETF 621 Mobility Protocol Options for IKEv2 (MOPO-IKE) Pasi Eronen.
Objectives Configure routing in Windows Server 2008 Configure Network Address Translation 1.
Implementing ISA Server Publishing. Introduction What Are Web Publishing Rules? ISA Server uses Web publishing rules to make Web sites on protected networks.
STUN - Simple Traversal of User Datagram Protocol (UDP) Through Network Address Translators (NATs) speaker : Wenping Zhang date :
1 Design of the MOBIKE Protocol Editors: T. Kivinen H. Tschofenig.
Security, NATs and Firewalls Ingate Systems. Basics of SIP Security.
4.1.4 multi-homing.
Approaches to Multi6 An Architectural View of Multi6 proposals Geoff Huston March 2004.
Making SIP NAT Friendly Jonathan Rosenberg dynamicsoft.
Firewalls2 By using a firewall: We can disable a service by throwing out packets whose source or destination port is the port number for that service.
Interactive Connectivity Establishment : ICE
Michael G. Williams, Jeremey Barrett 1 Intro to Mobi-D Host based mobility.
Securing Access to Data Using IPsec Josh Jones Cosc352.
SHIP: Performance Reference: “SHIP mobility management hybrid SIP-HIP scheme” So, J.Y.H.; Jidong Wang; Jones, D.; Sixth International Conference on
V4 traversal for IPv6 mobility protocols - Scenarios Mip6trans Design Team MIP6 and NEMO WGs, IETF 63.
CS 3700 Networks and Distributed Systems
NAT Traversal in HIP Xiang LIU TML/HIIT 1.
Firewalls, Network Address Translators(NATs), and H.323
Could SP-NAT Save the Internet?
Usurp: Distributed NAT Traversal for Overlay Networks
NAT (Network Address Translation)
NAT : Network Address Translation
Preferred Alternatives for Tunnelling HIP (PATH)
Original slides prepared by Theo Benson
Transport of Media Independent HO Messages over IP
Network Address Translation (NAT)
4.1.5 multi-homing.
改良UDP洞穿技術設計物聯網通訊: 以遠端門鈴監控系統為例 Improving UDP Hole Punching Technique For IoT Communications: A Remote Door-bell Monitoring System 報告時間28~32分佳 楊凱勝 指導教授:柯開維.
Support for Flow bindings in MIPv6 and NEMO
CS 3700 Networks and Distributed Systems
Network Address Translation (NAT)
Introducing To Networking
Hiding Network Computers Gateways
NET323 D: Network Protocols
New Solutions For Scaling The Internet Address Space
* Essential Network Security Book Slides.
Network Virtualization
CS 3700 Networks and Distributed Systems
NET323 D: Network Protocols
Setting Up Firewall using Netfilter and Iptables
CS4470 Computer Networking Protocols
Chapter 11: Network Address Translation for IPv4
Mobile IP Outline Homework #4 Solutions Intro to mobile IP Operation
Request for Comments(RFC) 3489
Mobile IP Outline Intro to mobile IP Operation Problems with mobility.
Network Address Translation (NAT)
Chapter 3 Transport Layer
Computer Networks Protocols
Presentation transcript:

HIP-Based NAT Traversal in P2P-Environments Ari Keränen NomadicLab, Ericsson Research Supervisor: prof. Jörg Ott

Outline Background NAT Traversal Using HIP Measurement results Network Address Translation (NAT) NAT Traversal Host Identity Protocol (HIP) NAT Traversal Using HIP implementation of a NAT traversal library Measurement results Findings & Conclusions

Network Address Translation NAT can transparently change a network internal, private address to a public address a new mapping is dynamically created when the first packet for a connection passes the NAT return traffic can use the same mapping to the other direction allows normally only outbound connections often use TCP/UDP ports for multiplexing NAT src: 10.0.0.1 dst: 130.233.240.9 src: 198.76.28.1 NAT’s public address:198.76.28.1

NAT Types Mapping and filtering behavior varies between NAT implementations Mapping if the destination address and/or port changes, will the source public address at the NAT change Filtering which source addresses and/or ports on the external side of NAT are allowed to use the mapping

NAT Types Endpoint independent filtering any host using any port in the external side can use the mapping the NAT has created Address (and port) dependent filtering only packets from the same destination address (and port) that created the mapping are accepted Endpoint independent mapping NAT uses the same mapping (i.e., public address and port) for packets even if the destination address or port changes Address (and port) dependent mapping NAT mapping is changed if the destination address (or port) is changed

NAT Traversal A way to make the responder behind a NAT reachable Needed especially in P2P environments since a peer is likely behind a NAT compare to client-server model, where servers are normally in the public, globally routable network Can be done using hole punching responder sends a packet to a (STUN) server and learns the NAT mapping from the response the initiator may be able to use that mapping depending on the type of the NATs

Interactive Connectivity Establishment A robust NAT traversal solution Combines hole punching with a set of optimizations and methodology works also in scenarios where simple hole punching does not work Both endpoints probe for connectivity using multiple (all) possible address candidates relayed route as the last resort controlling hosts decides when to stop tests and which path to use

Host Identity Protocol A new namespace and a layer between transport and IP layers transport layer connections bound to host identity Enables natural host mobility and multihoming IP address changes invisible to upper layers transport layer connections survive address changes

Host Identity Protocol Connection established using a four-way handshake; the HIP base exchange proof of identity, IPsec setup, DoS attack protection Legacy applications can use HIP transparently presentation of the host identity (Host Identity Tag) looks like a normal IPv6 address Problems with NATs HIP is normally run directly on top of IP simple UDP encapsulation works if the responder is not behind a NAT

NAT Traversal Using HIP Use ICE for traversing the NATs ICE candidates sent in the HIP base exchange base exchange through a relay or a P2P overlay network Single NAT traversal solution for all applications no need for application specific solutions

Implementation Implemented ICE library 3+1 Internet-Drafts ICE: draft-ietf-mmusic-ice-19 STUN: draft-ietf-behave-rfc3489bis-15 TURN: draft-ietf-behave-turn-07 (draft-rosenberg-mmusic-ice-nonsip-00) Tested the library using various NAT types is ICE able to create a path how much traffic is generated

Measurement Scenarios Two hosts behind different NATs NAT types can be changed (filtering behavior + Linux NAT) STUN/TURN server in the public network ICE connectivity checks run between the two hosts

Measurement Results ICE is able to create a working path in all the scenarios outperforms simple hole punching Best path depends on the scenario Linux-Linux NAT scenario requires a relay port dependent filtering with Linux NAT needs a relay depending on timing of the checks all other scenarios work with direct path some variation in the amount of messages

Measurement Results EI: Endpoint-Independent AD: Address-Dependent PD: Address and Port-Dependent L: Linux

Findings The default timer values for non-RTP ICE are suboptimal connectivity checks can take multiple seconds even in common NAT scenarios can be fixed relatively easily Good local stopping criteria/algorithm is essential for performance of ICE

Conclusions ICE is a good solution for HIP P2P NAT traversal works with all tested scenarios (and likely with many others) minor changes to basic ICE are useful The solution increases overhead but not substantially compared to other options

That’s all folks! Questions?