Packet loss tolerant stream transport protocol

No Thumbnail Available
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