Packet loss tolerant stream transport protocol

No Thumbnail Available

URL

Journal Title

Journal ISSN

Volume Title

Perustieteiden korkeakoulu | Master's thesis

Date

2014

Major/Subject

Tietokoneverkot

Mcode

T-110

Degree programme

Language

en

Pages

vii + 70 s.

Series

Abstract

Commonly used TCP congestion control algorithms may not be reasonable under lossy network conditions. We present a stream transport protocol designed to work under these conditions, with emphasis on volumetric Layer 3 denial-of-service attacks. Our approach is based on generating linear codes over a binary extension field, replacing the retransmission scheme in typical TCP implementations. A recipient can decode a number of plain data segments when enough linearly independent code symbols have been acquired. We present experiment results using our implementation in a laboratory network with a simple topology. We alter round-trip time and packet loss in the test network to simulate difficult network conditions. We find that the coding scheme is CPU intensive when send rate, packet loss or round-trip time increase. We present analysis of how these variables affect the computational complexity, and propose a number of approaches to limiting the complexity. The experiment results show our implementation reaches nearly optimal end-to-end application throughput.

Yleisesti käytetyt algoritmit TCP:n ruuhkanhallintaan eivät sovellu kaikkiin tilanteisiin, joissa verkon pakettihäviö on suurta. Esitämme protokollan tavuvirtojen luotettavaan siirtoon tällaisissa tilanteissa, keskittyen erityisesti Layer 3 palvelunestohyökkäyksiin. Ratkaisumme perustuu lineaariseen kooditukseen tulkitsemalla lähetettävät datapaketit elementteinä äärellisessä binaarikunnassa. Nain korvataan TCP:n tavanomainen uudelleenlähetykseen perustuva virheenkorjaus. Vastaanottaja pystyy purkamaan alkuperäiset datapaketit vastaanotettuaan riittävän määrän lineaarisesti riippumattomia koodisymboleja. Toteutimme koejärjestelyn, jossa simuloitiin palvelunestohyökkäyksiä. Käytimme yksinkertaista verkkotopologiaa, jossa aiheutimme ruuhkaa ja pakettien kiertoajan (RTT) kasvua. Esitämme koejärjestelyn tulokset. Koodien generointi vaatii enenevästi prosessoriaikaa lähetysnopeuden, pakettihäviön sekä verkon kiertoajan kasvaessa. Analysoimme, kuinka nämä parametrit vaikuttavat koodituksen laskennalliseen vaativuuteen. Esitämme ratkaisuja laskennallisen vaativuuden hallintaan. Tuloksemme osoittavat, kuinka toteutuksemme saavuttaa lähes optimaalisen sovellusten välisen tiedonsiirtonopeuden.

Description

Supervisor

Aura, Tuomas

Thesis advisor

Kalliola, Aapo

Keywords

palvelunestohyökkäykset, lineaarinen koodi, TCP, ruuhkanhallinta, denial-of-service, linear code, network coding, congestion control

Other note

Citation