Implementation of High-Performance Network Interface Monitoring
Tuomisto, Sami (2019)
Tuomisto, Sami
2019
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2019060314233
https://urn.fi/URN:NBN:fi:amk-2019060314233
Tiivistelmä
Insinöörityön tarkoituksena on esitellä projekti, jonka aiheena oli verkon monitorointi. Tavoitteena oli kehittää ohjelmistoratkaisu, joka pystyy monitoroimaan suuria määriä verkkoliikennettä ilman minkäänlaista ongelmaa. Projektin tavoite sekä vaatimukset olivat, että kaapattu data pitää saada kiinni semmoisenaan, eikä sitä saisi kadota juuri laisinkaan. Projekti toteutettiin niin ikään näyttönä, jonka tarkoituksena oli lujittaa mielipidettä siitä, että datan kerääminen palvelumuotoisena applikaationa on parempi ratkaisu, kun pyritään skaalaamaan olemassa olevaa ohjelmaa suurempaan mittapuuhun.
Projektin alussa laadittiin erilaisia vedoksia ohjelmiston arkkitehtuurista sekä sovittiin, mitkä ominaisuudet ovat tärkeimpiä projektin onnistumisen kannalta. Näiden toimenpiteiden jälkeen aloitettiin kehitysympäristöiden asentaminen, sekä hankittiin tarvittavat laitteistot. Kun laitteistot oli asennettu, pystyttiin siirtymään ohjelmoinnin pariin. Ensimmäiset vaiheet ohjelmoinnissa olivat erilaisiin suunnittelumalleihin tutustuminen sekä datan lähettäminen ja vastaanottaminen kaapelin välityksellä. Ensimmäisten ohjelmaluonnosten jälkeen siirryttiin opiskelemaan laitevalmistajan toimittamaa ohjelmistorajapintaa. Tämä ohjelmistorajapinta oli SmartNIC:in lisäksi projektin kannalta kaikkein tärkeimmät seikat, koska ne olivat pääsääntöisesti vastuussa datan kaappaamisesta sekä sen käsittelystä.
Projekti jaettiin kahtia ja kumpaakin osaa kehitettiin erillään toisesta. Ensimmäisessä vaiheessa projektia pyrittiin kehittämään serveri sekä asiakasohjelma, joilla kokonaisuutta voitaisiin testata. Tämän vaiheen jälkeen siirryttiin työstämään ohjelmistorajapinnan käyttöä datan kaappauksessa.
Lopulta projekti oli saavuttanut sellaisen pisteen, jossa se pystyi vastaanottamaan ehdot monitoroinnin aloittamiseksi asiakasohjelmalta, sekä lähettämään noiden ehtojen mukaista dataa takaisin.
Jatkokehityksenä projektiin voidaan toteuttaa monimutkaisempia ja tarkempia suodattimia asiakasohjelman parametrien perusteella. Nämä tehokkaammat suodattimet voivat antaa tarkempaa informaatiota verkon mahdollisista vikatiloista sekä ongelmista.
Projektin alussa laadittiin erilaisia vedoksia ohjelmiston arkkitehtuurista sekä sovittiin, mitkä ominaisuudet ovat tärkeimpiä projektin onnistumisen kannalta. Näiden toimenpiteiden jälkeen aloitettiin kehitysympäristöiden asentaminen, sekä hankittiin tarvittavat laitteistot. Kun laitteistot oli asennettu, pystyttiin siirtymään ohjelmoinnin pariin. Ensimmäiset vaiheet ohjelmoinnissa olivat erilaisiin suunnittelumalleihin tutustuminen sekä datan lähettäminen ja vastaanottaminen kaapelin välityksellä. Ensimmäisten ohjelmaluonnosten jälkeen siirryttiin opiskelemaan laitevalmistajan toimittamaa ohjelmistorajapintaa. Tämä ohjelmistorajapinta oli SmartNIC:in lisäksi projektin kannalta kaikkein tärkeimmät seikat, koska ne olivat pääsääntöisesti vastuussa datan kaappaamisesta sekä sen käsittelystä.
Projekti jaettiin kahtia ja kumpaakin osaa kehitettiin erillään toisesta. Ensimmäisessä vaiheessa projektia pyrittiin kehittämään serveri sekä asiakasohjelma, joilla kokonaisuutta voitaisiin testata. Tämän vaiheen jälkeen siirryttiin työstämään ohjelmistorajapinnan käyttöä datan kaappauksessa.
Lopulta projekti oli saavuttanut sellaisen pisteen, jossa se pystyi vastaanottamaan ehdot monitoroinnin aloittamiseksi asiakasohjelmalta, sekä lähettämään noiden ehtojen mukaista dataa takaisin.
Jatkokehityksenä projektiin voidaan toteuttaa monimutkaisempia ja tarkempia suodattimia asiakasohjelman parametrien perusteella. Nämä tehokkaammat suodattimet voivat antaa tarkempaa informaatiota verkon mahdollisista vikatiloista sekä ongelmista.