Presentation is loading. Please wait.

Presentation is loading. Please wait.

Jan 8, 2011COMSNETS 2011 ANT : A System for Audio Signaling Based NAT Traversal Ashish Patro Yadi Ma Fatemah Panahi Jordan Walker Suman Banerjee Department.

Similar presentations


Presentation on theme: "Jan 8, 2011COMSNETS 2011 ANT : A System for Audio Signaling Based NAT Traversal Ashish Patro Yadi Ma Fatemah Panahi Jordan Walker Suman Banerjee Department."— Presentation transcript:

1 Jan 8, 2011COMSNETS 2011 ANT : A System for Audio Signaling Based NAT Traversal Ashish Patro Yadi Ma Fatemah Panahi Jordan Walker Suman Banerjee Department of Computer Sciences University of Wisconsin-Madison University of Wisconsin-Madison

2 Outline Problem Overview of ANT Component Details Evaluation Summary Jan 8, 2011COMSNETS 2011

3 Typical NAT scenario Jan 8, 2011COMSNETS 2011

4 Typical NAT scenario Jan 8, 2011COMSNETS 2011 Problem : Setting up a direct connection between NATed clients across different LANs.

5 Scenario Jan 8, 2011COMSNETS 2011 Client A Client B Laptop Cellular Phones

6 Goal Create a direct end to end connection between any 2 NATed clients. Use no third party intermediate node. Can be used as a building block by applications. e.g. : Direct Transfer of Large Files, Chat etc. Jan 8, 2011COMSNETS 2011

7 Issues Identify internal and external IP/port information. Common Solutions : Modify router configuration (Port Mapping), use external relay servers etc. Cumbersome for lay users to deal with NAT traversal Jan 8, 2011COMSNETS 2011

8 Solution?? ANT…. A system for Audio signaling based NAT Traversal. Uses an ordinary phone connection as an out of band mechanism for NAT traversal. Jan 8, 2011COMSNETS 2011

9 Outline Problem Overview of ANT Component Details Evaluation Summary Jan 8, 2011COMSNETS 2011

10 ANT in action Jan 8, 2011COMSNETS 2011 Step 1 : Setup a phone connection. Client A Client B

11 ANT in action Jan 8, 2011COMSNETS 2011 Step 1 : Setup a phone connection. Client A Client B

12 ANT in action Jan 8, 2011COMSNETS 2011 Step 1 : Setup a phone connection. Client A Client B

13 ANT in action Jan 8, 2011COMSNETS 2011 Step 2 : A obtains configuration information for NAT traversal from its UPnP enabled router. Client A Client B NAT Router Internal IP:Port : 10.0.0.3:6000 Configuration Info :- External IP:Mapped port : 128.32.12.3:54678

14 ANT in action Jan 8, 2011COMSNETS 2011 Step 3 : A encodes configuration data into audio signals. Client A Client B NAT Router 10101001……

15 ANT in action Jan 8, 2011COMSNETS 2011 Step 4 : Sound is transferred from As laptop to As phone, then from Bs phone to Bs laptop. Step 4 : Sound is transferred from As laptop to As phone, then from Bs phone to Bs laptop. Client A Client B NAT Router

16 ANT in action Jan 8, 2011COMSNETS 2011 Step 4 : Sound is transferred from As laptop to As phone, then from Bs phone to Bs laptop. Step 4 : Sound is transferred from As laptop to As phone, then from Bs phone to Bs laptop. Client A Client B NAT Router

17 ANT in action Jan 8, 2011COMSNETS 2011 Step 4 : Sound is transferred from As laptop to As phone, then from Bs phone to Bs laptop. Step 4 : Sound is transferred from As laptop to As phone, then from Bs phone to Bs laptop. Client A Client B NAT Router

18 ANT in action Jan 8, 2011COMSNETS 2011 Step 5 : B decodes audio, corrects errors and gets the data back. Step 5 : B decodes audio, corrects errors and gets the data back. Client A Client B NAT Router 10101001……

19 ANT in action Jan 8, 2011COMSNETS 2011 Step 6 : Setup a direct Peer to Peer (P2P) connection. Client A Client B NAT Router

20 Outline Problem Overview of ANT Component Details Evaluation Summary Jan 8, 2011COMSNETS 2011

21 ANT Components Port Mapping at Client A. Encoding/decoding audio signals. Synchronizing encoder/decoder. Noise filtering. Error Correction. Jan 8, 2011COMSNETS 2011

22 NAT Traversal NATed machines can only make outgoing connections directly. NAT traversal requires internal-external IP/Port Mapping. UPnP helps here. Jan 8, 2011COMSNETS 2011

23 UPnP for NAT traversal Standard interface and widely available in Internet Gateway Devices (IGD) for the purpose of mapping ports to clients. Retrieves the external IP address device. Can add/remove port mappings. We use Java Library for UPnP to create a port mapping for ANT. Jan 8, 2011COMSNETS 2011

24 Data to Audio Conversion Modulate binary data to audio signals. Keying techniques ASK : Amplitude Shift Keying PSK : Pulse Shift Keying FSK : Frequency Shift Keying We use a technique analogous to FSK. Jan 8, 2011COMSNETS 2011

25 Audio Frequencies Human audible frequency range : 20Hz to 20,000Hz. Laptop soundcards work well between 800Hz to 9000Hz. Phone soundcards work well between 1000Hz to 4000Hz. We used the range 1200Hz – 3100Hz. Jan 8, 2011COMSNETS 2011

26 Encoding Scheme We group consecutive bits into symbols. Use 1 unique frequency per symbol. Symbol Size = N bits. Unique frequencies required = 2 N. Jan 8, 2011COMSNETS 2011

27 Encoding Scheme Jan 8, 2011COMSNETS 2011 Symbol Size : 8 bits e.g. : 1001011 ------- 1200Hz ------- 1230Hz. ------- 8820Hz ------- 8850Hz 256 frequencies

28 Encoding Scheme Jan 8, 2011COMSNETS 2011 Symbol Size : 8 bits e.g. : 1001011 ------- 1200Hz ------- 1230Hz. ------- 8820Hz ------- 8850Hz 256 frequencies Requires a band of 7650 Hz for 256 unique frequencies separated by 30 Hz.

29 Encoding Scheme Jan 8, 2011COMSNETS 2011 Symbol Size : 4 bits e.g. : 1001 ------- 1200Hz ------- 1250Hz. ------- 1900Hz ------- 1950Hz 16 frequencies Easily fits within the frequency band available.

30 Synchronization Jan 8, 2011COMSNETS 2011 Problem : -Detect start and end of the audio transmission. Problem : -Detect start and end of the audio transmission.

31 Synchronization Jan 8, 2011COMSNETS 2011 Problem : -Detect start and end of the audio transmission. Problem : -Detect start and end of the audio transmission. Solution : -Use a preamble/postamble for each transmission. Solution : -Use a preamble/postamble for each transmission.

32 Synchronization Detect start of transmission. Similar to preamble in wireless networks. Also used to infer timing information. 2 synchronization frequencies for start. 1 synchronization frequency for end. Jan 8, 2011COMSNETS 2011

33 Synchronization Jan 8, 2011COMSNETS 2011

34 Synchronization Jan 8, 2011COMSNETS 2011

35 Synchronization Jan 8, 2011COMSNETS 2011

36 Synchronization Jan 8, 2011COMSNETS 2011

37 Distinguish Consecutive Symbols Consecutive symbols can be same. Need to distinguish between them. One solution : Use a separation beep. Problem : Halves the data rate. Jan 8, 2011COMSNETS 2011

38 Distinguish Consecutive Symbols Our Solution : Use two non-overlapping frequency bands. Transmit consecutive symbols in alternating bands. Much easier to decode symbols. ANT uses two separate bands of 16 frequencies (< 2000 Hz). Jan 8, 2011COMSNETS 2011

39 Decoding Audio Symbols Synchronization to detect start of transmission. Fast Fourier Transform (FFT) on captured audio samples. Noise Filtering : Discard noise away from relevant frequencies (F – 15Hz to F + 15Hz) and below certain amplitude. Jan 8, 2011COMSNETS 2011

40 Error Correction Handle errors/erasures during transmission/reception. ANT uses Forward Error Correction (FEC). FEC avoids a back-channel. ANT uses Reed-Solomon codes in GF(16). Jan 8, 2011COMSNETS 2011

41 Putting the pieces together… Use UPnP to setup a port mapping at Client A. Client A transmits mapping via the out-of- band audio channel to Client B. Client B decodes audio signals to obtain mapping. Client B connects to Client A. Jan 8, 2011COMSNETS 2011

42 Putting the pieces together… Jan 8, 2011COMSNETS 2011 Client A Client B NAT Router

43 Other applications of ANT Password Transfer. Product Key exchange. Jan 8, 2011COMSNETS 2011

44 Outline Problem Overview of ANT Component Details Evaluation Summary Jan 8, 2011COMSNETS 2011

45 Evaluation Tested ANT with a variety of devices (laptops, phones). Environments No or Light Noise : Quiet Conference Room. Medium Noise : Offices, homes. Heavy Noise : Compute Lab (Background noise). Jan 8, 2011COMSNETS 2011

46 Experiment 1 Clients A and B are in quiet environments. Used different combinations of phones. Tested ANT 4-6 times for each combination. Reported the overall success rate. Jan 8, 2011COMSNETS 2011

47 Results : Experiment 1 Jan 8, 2011COMSNETS 2011

48 Results : Experiment 1 Jan 8, 2011COMSNETS 2011 -ANT performed really well in the presence of little or no noise. -Failures occurred due to a bad speaker in the Sony phone. -ANT performed really well in the presence of little or no noise. -Failures occurred due to a bad speaker in the Sony phone.

49 Experiment 2 First client is a heavy noise environment. Second client in a light/medium noise environment. Jan 8, 2011COMSNETS 2011

50 Results : Experiment 2 Jan 8, 2011COMSNETS 2011

51 Results : Experiment 2 Jan 8, 2011COMSNETS 2011 -Errors/erasures caused by noise cause a few failures. -Success rate still above 66% in all cases. -Errors/erasures caused by noise cause a few failures. -Success rate still above 66% in all cases.

52 Experiment 3 (Speak Test) Human speakers present near laptop with 4 scenarios : Jan 8, 2011COMSNETS 2011 ScenarioClient AClient B Scenario 1 (S1)Speaking with soft voice Quiet, no/light background noise Scenario 2 (S2)Speaking with loud voice Quiet, no/light background noise Scenario 3 (S3)Speaking with soft voice Quiet, heavy background noise Scenario 4 (S4)Speaking with loud voice Quiet, heavy background noise

53 Results : Experiment 3 Jan 8, 2011COMSNETS 2011

54 Results : Experiment 3 Jan 8, 2011COMSNETS 2011 -Human voice causes some problems for ANT. -2-3 attempts enough to establish a connection in most cases. -Human voice causes some problems for ANT. -2-3 attempts enough to establish a connection in most cases.

55 Playing Background Music… Cause major problems to ANT. Music generates a vast range of frequencies. Interferes with ANT by inserting spurious symbols into audio transmissions. Causes problems for the decoder. Jan 8, 2011COMSNETS 2011

56 Outline Problem Overview of ANT Component Details Evaluation Summary Jan 8, 2011COMSNETS 2011

57 Summary UPnP is easily available and provides a standard interface for port mapping. Short Audio transmission (few seconds). Out-of-band audio mechanism for NAT traversal works well is most scenarios. Can also use audio mechanism for short, robust and secure data transmissions. Jan 8, 2011COMSNETS 2011

58 ANT Demo. A demo video demonstrating ANT is available at :- http://www.cs.wisc.edu/wings/projects/ant Link also available in the paper. Jan 8, 2011COMSNETS 2011

59 Thank you. Questions ? Jan 8, 2011COMSNETS 2011


Download ppt "Jan 8, 2011COMSNETS 2011 ANT : A System for Audio Signaling Based NAT Traversal Ashish Patro Yadi Ma Fatemah Panahi Jordan Walker Suman Banerjee Department."

Similar presentations


Ads by Google