Revealing Skype Traffic: When Randomness Plays with You D. Bonfiglio 1, M. Mellia 1, M. Meo 1, D. Rossi 2, P. Tofanelli 3 Dipartimento di Elettronica,

Slides:



Advertisements
Similar presentations
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 Addressing the Network – IPv4 Network Fundamentals – Chapter 6.
Advertisements

KISS: Stochastic Packet Inspection for UDP Traffic Classification
CCNA – Network Fundamentals
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public ITE PC v4.0 Chapter 1 1 OSI Transport Layer Network Fundamentals – Chapter 4.
Chapter 7: Transport Layer
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
© 2007 Cisco Systems, Inc. All rights reserved.ICND1 v1.0—1-1 Building a Simple Network Understanding the TCP/IP Transport Layer.
RTP: A Transport Protocol for Real-Time Applications Provides end-to-end delivery services for data with real-time characteristics, such as interactive.
Chapter 7 – Transport Layer Protocols
The testbed environment for this research to generate real-world Skype behaviors for analyzation is as follows: A NAT-ed LAN consisting of 7 machines running.
Internet Traffic Classification KISS Dario Bonfiglio, Alessandro Finamore, Marco Mellia, Michela Meo, Dario Rossi 1.
Marios Iliofotou (UC Riverside) Brian Gallagher (LLNL)Tina Eliassi-Rad (Rutgers University) Guowu Xi (UC Riverside)Michalis Faloutsos (UC Riverside) ACM.
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #2 Header Compression.
© 2006 Cisco Systems, Inc. All rights reserved. 2.3: Encapsulating Voice Packets for Transport.
Stream Control Transmission Protocol 網路前瞻技術實驗室 陳旻槿.
1 Internet Networking Spring 2006 Tutorial 14 Header Compression.
Ch 23 1 Based on Data Communications and Networking, 4th Edition. by Behrouz A. Forouzan, McGraw-Hill Companies, Inc., 2007 Ameera Almasoud.
1 Summer Report Reporter : Yi-Cheng Lin Data: 2008/09/02.
Gursharan Singh Tatla Transport Layer 16-May
Tracking down Traffic Dario Bonfiglio Marco Mellia Michela Meo Nicolo’ Ritacca Dario Rossi.
Communication Network Protocols Jaya Kalidindi CSC 8320(fall 2008)
Ensuring the Reliability of Data Delivery © 2004 Cisco Systems, Inc. All rights reserved. Understanding How UDP and TCP Work INTRO v2.0—6-1.
What Can IP Do? Deliver datagrams to hosts – The IP address in a datagram header identify a host IP treats a computer as an endpoint of communication Best.
IP Network Basics. For Internal Use Only ▲ Internal Use Only ▲ Course Objectives Grasp the basic knowledge of network Understand network evolution history.
Process-to-Process Delivery:
A fast identification method for P2P flow based on nodes connection degree LING XING, WEI-WEI ZHENG, JIAN-GUO MA, WEI- DONG MA Apperceiving Computing and.
CS 218 F 2003 Nov 3 lecture:  Streaming video/audio  Adaptive encoding (eg, layered encoding)  TCP friendliness References: r J. Padhye, V.Firoiu, D.
TRANSPORT LAYER T.Najah Al-Subaie Kingdom of Saudi Arabia Prince Norah bint Abdul Rahman University College of Computer Since and Information System NET331.
Network and Systems Laboratory nslab.ee.ntu.edu.tw Te-Yuan Huang, Kuan-Ta Chen, Polly Huang Network and Systems Laboratory National Taiwan University Institute.
What is a Protocol A set of definitions and rules defining the method by which data is transferred between two or more entities or systems. The key elements.
1 Understanding VoIP from Backbone Measurements Marco Mellia, Dario Rossi Robert Birke, and Michele Petracca INFOCOM 07’, Anchorage, Alaska, USA Young.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Chapter 7: Transport Layer Introduction to Networking.
ACM 511 Chapter 2. Communication Communicating the Messages The best approach is to divide the data into smaller, more manageable pieces to send over.
6.1. Transport Control Protocol (TCP) It is the most widely used transport protocol in the world. Provides reliable end to end connection between two hosts.
1 7-Oct-15 OSI transport layer CCNA Exploration Semester 1 Chapter 4.
Introduction to Networks CS587x Lecture 1 Department of Computer Science Iowa State University.
Internet Protocol Internetworking Lab 1. Why Internet?
Mr. Mark Welton.  A computer network, or simply a network, is a collection of computers and other hardware interconnected by communication channels.
University of the Western Cape Chapter 12: The Transport Layer.
Transport Layer: UDP, TCP
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
ECE 526 – Network Processing Systems Design Packet Processing I: algorithms and data structures Chapter 5: D. E. Comer.
1 Networking Chapter Distributed Capabilities Communications architectures –Software that supports a group of networked computers Network operating.
Chapter 15 – Part 2 Networks The Internal Operating System The Architecture of Computer Hardware and Systems Software: An Information Technology Approach.
OS Services And Networking Support Juan Wang Qi Pan Department of Computer Science Southeastern University August 1999.
Presenter: Kuei-Yu Hsu Advisor: Dr. Kai-Wei Ke 2013/4/29 Detecting Skype flows Hidden in Web Traffic.
MULTIPLEXING/DEMULTIPLEXING, CONNECTIONLESS TRANSPORT.
Point-to-Point Protocol
3/10/2016 Subject Name: Computer Networks - II Subject Code: 10CS64 Prepared By: Madhuleena Das Department: Computer Science & Engineering Date :
@Yuan Xue CS 283Computer Networks Spring 2011 Instructor: Yuan Xue.
Tango1 Considering End-to-End QoS Constraints in IP Network Design and Planning M.Ajmone Marsan, M. Garetto, E. Leonardi. M. Mellia, E. Wille Dipartimento.
Cisco I Introduction to Networks Semester 1 Chapter 7 JEOPADY.
Process-to-Process Delivery:
Skype.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco Public 1 OSI transport layer CCNA Exploration Semester 1 – Chapter 4.
UDP: User Datagram Protocol. What Can IP Do? Deliver datagrams to hosts – The IP address in a datagram header identify a host – treats a computer as an.
On-line Detection of Real Time Multimedia Traffic
RTP: A Transport Protocol for Real-Time Applications
Transport Layer.
Chapter 14 User Datagram Program (UDP)
Understand the OSI Model Part 2
Chapter 14 User Datagram Protocol (UDP)
Process-to-Process Delivery:
CPEG514 Advanced Computer Networkst
Chapter 14 User Datagram Program (UDP)
Process-to-Process Delivery: UDP, TCP
Transport Layer 9/22/2019.
Presentation transcript:

Revealing Skype Traffic: When Randomness Plays with You D. Bonfiglio 1, M. Mellia 1, M. Meo 1, D. Rossi 2, P. Tofanelli 3 Dipartimento di Elettronica, Politecnico di Torino 1 ENST T é l é com Paris 2 Motorola Inc. 3 ACM Sigcomm 2007 Presented by Te-Yuan Huang

Outline  Goal  Contribution  Know More about Skype  Classifiers  Experiments  Conclusions

Outline  Goal  Contribution  Know More about Skype  Classifiers  Experiments  Conclusions

Goal  Identify Skype Traffic among aggregated traffic Direct session Either UDP or TCP  The algorithm should be Work in Real-Time Reliable Able to detect short flows (only last several seconds)

Outline  Goal  Contribution  Know More about Skype  Classifiers  Experiments  Conclusions

Importance of Skype Traffic Identification  Interest of network operator Network Design & Provisioning Traffic and Performance Monitoring Tariff Policies Traffic Differentiation

Difference from Related Work  K.T. Chen et al. “ Quantifying Skype USI ” Only identify UDP traffic Need Skype login phase to be monitored  Fail on backbone links  Fail if any modification on Skype login proc.  K. Suh et al. “ Characterizing and Detect relayed traffic: A case study using Skype ” Only identify relayed Skype traffic

Outline  Goal  Contribution  Know More about Skype  Classifiers  Experiments  Conclusions

Let ’ s get hands dirty – Know more about Skype traffic sources A Skype Message

Skype Parameters  Rate Codec Rate  Delta T Skype Message Framing Time  The time between two subsequent Skype Message  RF (Redundancy Factor) The number of past blocks that Skype retransmits

Parameters changes on Network Conditions

Skype Communication Mode  End-to-End (E2E) Skype user call Skype user  End-to-Out (E2O) Skype-in/Skype-out PSTN involved Only voice data  No video / file transfer / IM

Skype Codec  Codecs Automatically selected ISAC  The preferred codec for E2E G.729  The preferred codec for E2O

More on Skype Message  Skype encrypt the message TCP:  Reliable transport  Receive packet in correct sequence (from application layer point of view)  encrypt the whole content of the message UDP:  Unreliable  Maybe out-of-order  Application layer header is needed to resolve incorrect order Only can be obfuscated  Only encrypt partial message

TCP E2E Message  All ciphered 123Byte Frame

 Identified Field ID: 16-bit long identifier.  Randomly selected Fun: 5-bit long field masked by 0x8f  Used to stating the payload type 0x02, 0x03, 0x07,0x0f : signaling message 0x0d : Data message (all 4 types DATA)  Not Random, but obfuscate (Mixed) Frame: ciphered information UDP E2E Message 1234Byte … ID FunFun Frame

 Identified Field CCID: 4 bytes  Connection Identifier (CID) of PSTN gateway  Deterministic After initial signaling E2O Message 1234Byte … CIDFrame

Outline  Goal  Contribution  Know More about Skype  Classifiers  Experiments  Conclusions

How to Identify Skype Traffic?  Chi-Square Classifier (CSC) Utilize the knowledge of ciphering mechanism  Na ï ve Bayes Classifier (NBC) Utilize the general characteristics of VoIP traffics  Payload-Based Classifier (PBC) Look into the non-ciphered SoM Only used for traffic in UDP

Chi-Square Classifier (CSC)  Purpose: To Know whether message portion is encrypted  Rationale Given a message,  Only the third bytes is not random Probably, E2E Skype flow by UDP  The first four bytes are deterministic, others are ciphered Probably, E2O Skype flow by UDP  The whole message is ciphered Probably, Skype flow transported by TCP

Chi-Square Classifier (CSC) – Cont.  Chi-Square Distr. Observing the objects ’ ouput for n TOT times There are n possible output For i th output, it is expected to occur E i times among n TOT, and is observed to occur O i times Then, is Chi-Square Distr. With n-1 degree of freedom

Chi-Square Classifier (CSC) – Cont.  For each flow, take first G group of b bits  For each group g, there are 2 b possible output  If the content of the flow is random, then E i for each group is n TOT / 2 b b bits …..b bits 123G ….. ……

Chi-Square Classifier (CSC) – Cont.  Evaluate the test statistic as:  Define the thresholds by

Chi-Square Classifier (CSC) – Cont.  G = 16, b = 4bits are used  E2E over UDP The block g = 5 or 6 is mixed Others are random Classified Criteria

Chi-Square Classifier (CSC) – Cont.  E2O over UDP  E2E or E2O over TCP  Not Skype Otherwise

Chi-Square Classifier (CSC) – Cont.  Deterministic test satistics Linear with n TOT

Chi-Square Classifier (CSC) – Cont.  Mixed block: If one bit is fixed and the others are random Linearly increase with n TOT

Chi-Square Classifier (CSC) – Cont.

 Chi-Square works only if the observation is large enough, that is E i = n TOT /2 b >=5  Namely, n TOT >= 80  Choose n TOT = 100  Also, set

Na ï ve Bayes Classifier  Feature vector x = [x i ]  P{C|x} : the probability that the object is belong to class C, given the feature x is observed  P{x|C}: the probability that the feature x will be observed, given the object is belong to class C  Bayes Rule P{C|x} = P{x|C}P{C} / P{x}

Na ï ve Bayes Classifier – cont.  Na ï ve : features are independent  P{x|C} called belief

NBC – Feature Selection  VoIP Small Message Size Less burstier than data traffic  Feature Message size  Observe a window of message at a time x = [s 1, s 2, …, s w ] Average-Inter Packet Gap (average-IPG)

NBC – Feature Selection  Belief  How to determine P{s i |C} &

NBC – Feature Characterization  For each codec, the message size is determined by Rate Header length Redundancy factor (RF) Message framing time (delta T)  The message size can be represented by Gaussian distribution

NBC – Feature Characterization  Map each codec to a Gaussian distr.  Model average-IPG to a Gaussian distr. with For Constant Bit Rate Codec For variable Bit Rate Codec

NBC – Derive Beliefs

NBC – Make Decision  Let  Define a threshold B min If B > B min  Valid Skype flow Otherwise  Not Skype flow

Payload Based Classifier (PBC)  Used as cross check for previous two classifier  Only useful for UDP traffic  Two Part Per-flow Identification Per-host Identification

PBC - Per-flow Identification Utilize the knowledge about UDP E2E Message Fun: 5-bit long field masked by 0x8f  Used to stating the payload type 0x02, 0x03, 0x07,0x0f : signaling message 0x0d : Data message (all 4 types DATA) 1234Byte … ID FunFun Frame

PBC - Per-flow Identification  Terminology n TOT : the total number of packets in the flow n sig : the number of Skype signaling message n E2E : the number of Skype E2E data/video/chat/voice message n E2O : the number of Skype E2O voice message

PBC - Per-flow Identification  Criteria

PBC - Per-host Identification  Known: a Skype client always uses the same UDP port to send/receive traffic  Before start conversation, Signaling messages are sent between two clients  Able to identify a Skype client running at a specific IP and port

PBC - Per-host Identification  Criteria to identify the Skype client IP/port

Experiment  Two Data Set Campus – 95 hours took on 2006/5/29  No P2P traffic is allowed  Most traffic are TCP data flows ISP – one day took on 2006/5/15  All traffic is allowed  More heterogeneous  Expect little Skype traffic

Measurement Result

Measurement Result – UDP, Campus

Measurement Result – UDP, ISP

Measurement Result - TCP

Parameter Tuning - B min

Parameter Tuning – X 2 (Thr)

Parameter Tuning – B min & X 2 (Thr)

Conclusion  Reveal Skype Traffic from aggregate streams of packets  Two Approach Statistical properties of randomness Stochastic characteristics of voice traffic  Negligible False Positives  Few False Negative left out