150 likes | 159 Views
Explore methods for identifying and optimizing P2P traffic, including passive and active approaches, to improve efficiency and reduce congestion. Consider the integration of different identification techniques and controlling mechanisms in a decentralized architecture.
E N D
Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking L. Mathy, D. P. Pezaros, University of Lancaster J. S. Sventek, Z. Xiaoying, L. Han, University of Glasgow I. Dedinski, H. De Meer, University of Passau
Motivation of P2P traffic optimization (control) • Example P2P file sharing: utilizes the usage of “free” resources in a decentralized manner • Suboptimal usage is better than nothing • Flat-rate users don’t care too much about efficiency • The location of a certain content or the network load doesn’t matter. • Huge amounts of available data • All of the available bandwidth can be easily consumed Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking
Motivation II • Legal issues • Providers do not want illegal content in their networks • External costs • Traffic from external providers is normally charged • Network management issues • P2P traffic load is not as predictable as client-server. • Can cause congestions, if left uncontrolled (flash crowds) • In fact: Some ISPs “were” selling much more bandwidth, as they really could provide! Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking
Common methods for P2P identification - passive • Application signature discovery in IP packets • + Works for many of the current P2P apps • - Has to search costly through all the traffic • - Can not automatically adapt to new P2P applications • - Can not deal with encryption • Transport layer port identification • + Does not need to check all the packets • + Does not need to look inside the payload • + Can be easily adapted to new P2P applications • - Can be fooled by intelligent P2P apps (port negotiation, usage of common ports like HTTP) Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking
Common methods for P2P identification – passive II • Heuristic approaches (e.g. detect usage of UDP and TCP simultaneously & TCP connections from many different IPs and different port numbers) • + Discover the majority of the P2P traffic • + Discover even unknown traffic • - It is possible to design a P2P application to avoid the heuristic identification • Search for heuristics, that can not be avoided. Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking
Common methods for P2P identification – active • Crawling at the application level (e.g. eDonkey) • + Efficient and reliable discovery • + Can be combined with network layer passive approaches • - Has to be changed for each P2P application • - Not applicable to every application (anonymity) Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking
Local vs. global P2P identification • Local (look only at the traffic, produced by a single host) • + Relatively simple • - Restricted reliability of detection • Global (collect and analyse global data to e.g. discover the topology spanned by a certain application) • - Rather complex and presumes good local discovery (clustering) of unknown traffic • + Can determine the nature of any unknown network application reliably Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking
Possible actions regarding identified P2P traffic • Block or shape (statically or dynamically) • + P2P load can be removed or decreased • + Shaping does not require 100% reliability of P2P identification • - The P2P users (customers) are not happy • - Efforts to avoid blocking and shaping can uprise • Optimize the P2P behaviour • + P2P load can be decreased while improving P2P performance • + P2P users are happy • - Not trivial for every P2P application Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking
Requirements to a P2P optimizing architecture • Cross-layer integration of different identification approaches • Active & passive • Global & local • Network & application level • Cross-layer integration of controlling and optimization mechanisms • Blocking and shaping traffic • Redirecting and optimizing traffic (e.g. caching) Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking
Requirements to a P2P optimizing architecture II • Decentralization • Monitoring and optimization of P2P traffic at “strategic” points inside the network. • Load balancing (especially because of global identification & optimization) • Programmability • Adaptation of the application level techniques to new applications Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking
Architectural design – planes and layers Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking
Architectural design - components Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking
Preliminary experimental results Frequency distribution as a function of packet inter-arrival time (in seconds) for (a) eDonkey control and (b) ftp control flows Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking
Preliminary experimental results II Frequency distribution as a function of packet size (in bytes) for (a) eDonkey data and (b) ftp data flows Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking
Conclusions & future work • The proposed architecture needs to be implemented and tested on an AN-environment. • Additional patterns for clustering P2P flows need to be identified. • Application-level optimization techniques and their applicability to different P2P apps need to be evaluated. Cross-Layer Peer-to-Peer Traffic Identification and Optimization Based on Active Networking