Mário M. Freire
         Full Professor (Professor Catedrático)

           Department of Computer Science, University of Beira Interior
           Rua Marquês de Ávila e Bolama, 6201-001 Covilhã, Portugal

           E-mail addresses: mfreire(at)computer.org  or  mfreire(at)acm.org  or  mario(at)di.ubi.pt

Datasets, Source Code and Software
"Whenever humanity seems condemned to heaviness, I think I should fly like Perseus into a different space. I don't mean escaping into dreams or into the irracional. I mean that I have to change my approach, look at the world from a different pespective, with a different logic and with fresh methods of cognition and verification. The images of lightness that I seek should not fade away like dreams dissolved by the realities of present and future..... (...)
Then we have computer science. It is true that software cannot exercise its power of lightness except through the weight of hardware. But it is software that gives the orders, acting on the outside world and on machines that exist only as functions of software and evolve so that they can work out ever more complex programs. The second industrial revolution, unlike the first, does not present us with crushing images as rolling mills and molten steel, but with "bits" in a flow of information traveling along circuits in the form of electronic impulses. The iron machines still exit, but they obey the orders of weightless bits."

Italo Calvino (1923–1985), Italian writer, Lightness, in Six Memos for the Next Millennium, Harvard University Press, 1988.

Datasets and Source Code of the Classifier for Real-time Classification of Encrypted Peer-to-Peer Traffic Flows

HTTP Download
HTTP/HTTPS browsing and streaming
P2P with single torrent
P2P with single torrent
Classifier Source Code  |   Dataset 1  |   Dataset 2  |   Dataset 3

Herein we make available the source code of a classifier for real-time classification of encrypted traffic generated by P2P VoIP applications, P2P file-sharing applications or P2P media-streaming applications. Datasets used in the experiments to evaluate the classifier are also made available.

The zip file with the source code includes all the workspace of Eclipse, which may be helpful for configurations. All configurations herein available are for Linux operating systems. Libpcap or winpcap libraries need also to be installed whether you use Linux or Windows operating systems.

Regarding the source code:
- The FileSystemOperations class is used for directory manipulation. It may not make sense in operating systems different from Linux.
- The PCapOperations class is not directly used by the server. It may be used to obtain information about data traces, such as the number of packets, number of flows, etc.
- The PCapWrap class is a wrapper for libpcap, which serves to create objects for each packet and includes subclasses for each protocol.
- The StatisticalAnalyzer class serves to generate the libStatisticalAnalyzer.so dynamic library that is used by all classifiers and includes implementations for calculating different statistical packages.
- The TrafficAnalyzer class serves to generate an application that analyzes and displays traffic characteristics.
- The SimpleHostBasedClassifier class is the classifier that identifies network nodes that are using P2P applications.
- The VoIPInspector class is the classifier that identifies VoIP sessions and the respective voice codec.
- The HostPortBasedClassifier class is the classifier that identifies flows of P2P applications for file sharing or streaming media.

Details about the classifier and the datasets may be found on the following paper: João V. Gomes, Pedro R. M. Inácio, Manuela Pereira, Mário M. Freire, and Paulo P. Monteiro, "Classification of Peer-to-Peer Traffic Using Entropy Over Behavioral Pattern Features in Traffic Flows", submitted for publication.

“One of the problems of being a pioneer is you always make mistakes and I never, never want to be a pioneer. It’s always best to come second when you can look at the mistakes the pioneers made”.

Seymour Cray (1925-1996), Public Lecture at Lawrence Livermore Laboratories on the introduction of the CRAY-1, 1976.
Last update: 2014/12/28.