Ohjelmistopohjaisen kytkimen suorituskyvyn arvionti

No Thumbnail Available
Journal Title
Journal ISSN
Volume Title
Master's thesis
Date
2012
Major/Subject
Tietoverkkotekniikka
Mcode
S-38
Degree programme
Language
en
Pages
[11] + 72 s.
Series
Abstract
Ohjelmistopohjaisella pakettien välityksellä on suuri potentiaali syrjäyttää tyypillisesti ASIC:lla ja verkkoprosessoreilla toteutetut laitteet. Sen suurimmat edut näihin kilpaileviin tekniikoihin verrattuna ovat helppo ohjelmoitavuus ja edullinen hinta. Huonona puolena voidaan pitää suhteellisen heikkoa suorituskykyä. Myös tietoverkko-osaajien joukossa pakettien välittäminen ohjelmistopohjaisesti on vielä suhteellisen tuntematon käsite, vaikkakin suurin osa kotoa löytyvistä reitittimistä ja WLAN tukiasemista välittävät paketteja juuri tätä tapaa hyödyntäen. Tämän diplomityön tavoitteena on mitata Linuxin suorituskykyä kytkimen ä, käyttäen kaupallisesti saatavilla olevaa laitteistoa. Tämän lisäksi työssä käsitellään eri tapoja reitittimen tai kytkimen rakentamiseksi ja esitellään Intelin Nehalem mikroarkkitehtuuri. Myös olennaisimmat osat Linuxin verkkopinosta käydään läpi, minkä lisäksi käsitellään sekä laitteiston että ohjelmiston optimointia suorituskyvyn kannalta. Varsinaiset suorituskykymittaukset tehdään kahta eri palvelinta käyttäen: toinen palvelimista käyttää yhtä suoritinta toisen toimiessa kahden suorittimen varassa. Suorituskykyä optimoitiin muuttamalla Linuxin ytimen konfiguraatiota ja sekä BIOS:n että ajurien asetuksia muokkaamalla. Näitä muutoksia tekemällä saatiin yhden suorittimen palvelimesta kulkemaan läpi parhaimmillaan 7.2 miljoonaa kehystä sekunnissa, kun taas kahden suorittimen palvelin kykeni 10 miljoonaan kehykseen sekunnissa. Molemmat luvut jäävät kauas teoreettisesta maksimiläpäiskyvystä, minkä takia palvelimista yritettiin löytää pullonkaulat, jotka rajoittavat suorituskykyä. Pullonkauloiksi todettiin suorittimen kellotaajuus sekä muistikanavien lukumäärä.

Software based packet forwarding using commodity hardware has huge potential to become a viable option in smaller networks. Compared to hardware based on ASICs and network processors, the software option has significant advantages in both flexibility and price. The downside of software routers is obviously their performance compared to traditional hardware options. The field is also still quite unknown within the group of networking specialists, albeit most routers and WLAN boxes found at homes forward packets using software. The goal of this thesis is to evaluate the performance of commodity hardware under a switching load using the Linux bridging implementation. In addition, different ways of constructing a router or switch are explored and the Intel Nehalem microarchitecture presented. The relevant parts of the Linux network stack and optimization of both hardware and software performance are also covered. The actual performance evaluation is done using two servers: one with a single processor and another with dual processors. Optimizing performance by changing the Linux kernel configuration, BIOS settings and driver parameters led to the single processor server forwarding traffic at a maximum rate of 7.2 million frames per second compared to 10 million for the dual processor server. Both these values are still far from the theoretical maximums, which lead to the search for bottlenecks. The main bottlenecks were found out to be the processor clock frequency and memory channel width. They both clearly limited the performance.
Description
Supervisor
Manner, Jukka
Thesis advisor
Varis, Nuutti
Keywords
software routing, software switching, performance, Linux, ohjelmistopohjainen reititys, suorituskyky, Linux
Other note
Citation