Implementering av testplattform för end-to-end streaming telemetry i nätverk
Målen med denna studie är att implementera en testmiljö för streaming telemetry samt jämföra två alternativ för att möjliggöra realtidsanalys av det insamlade datat. Dessa två alternativ är Python-biblioteken PyKafka och Confluent-Kafka-Python. Bedömningskritierna för jämförselsen var dokumentation,...
Main Author: | |
---|---|
Format: | Others |
Language: | Swedish |
Published: |
Mittuniversitetet, Institutionen för informationssystem och –teknologi
2020
|
Subjects: | |
Online Access: | http://urn.kb.se/resolve?urn=urn:nbn:se:miun:diva-39383 |
id |
ndltd-UPSALLA1-oai-DiVA.org-miun-39383 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-UPSALLA1-oai-DiVA.org-miun-393832020-06-30T04:21:06ZImplementering av testplattform för end-to-end streaming telemetry i nätverksweErlandsson, NiklasMittuniversitetet, Institutionen för informationssystem och –teknologi2020Streaming TelemetryApache KafkaPythonReal-time analysisStreaming TelemetryApache KafkaPythonRealtidsanalysComputer EngineeringDatorteknikMålen med denna studie är att implementera en testmiljö för streaming telemetry samt jämföra två alternativ för att möjliggöra realtidsanalys av det insamlade datat. Dessa två alternativ är Python-biblioteken PyKafka och Confluent-Kafka-Python. Bedömningskritierna för jämförselsen var dokumentation, kodmängd och minnesanvändning. Testmiljön för streaming telemetry använder en router med Cisco IOS XR programvara som skickar data till en Cisco Pipeline collector, som vidare sänder datat till ett Kafka-kluster. Jämförelsen av Python-biblioteken utfördes med språket Python. Resultaten av jämförelsen visade att båda biblioteken hade välskriven dokumentation och liten skillnad i kodmängd, dock använde Confluent-Kafka-Python mindre minne. Studien visar att streaming telemetry med realtidsanalys kan fungera bra som ett komplement till eller en ersättning av SNMP. Studien rekommenderar användning av Confluent-Kafka-Python för implementering i produktionsmiljöer med ett stort antal nätverksenheter med tanke på den lägre minnesanvändningen. The goals of this study are to implement a test environment for streaming telemetry and compare two alternatives for analysing the collected data in realtime. The two alternatives are the Python libraries PyKafka and Confluent-Kafka-Python. The comparison focused mainly on three areas, these being documentation, amount of code and memory usage. The test environment for streaming telemetry was set up with a router running IOS XR software that is sending data to a Cisco Pipeline collector, which in turn sends data to a Kafka-cluster. The comparison of the two libraries for interfacing with the cluster was made with the language Python. The results of the comparison showed that both libraries had well-written documentation and showed a negligible difference in amount of code. The memory usage was considerably lower with the Confluent-Kafka-Python library. The study shows that streaming telemetry together with real-time analysis makes a good complement to or a replacement of SNMP. The study further recommends the use of Confluent-Kafka-Python in real-world implementations of streaming telemetry, particularly in large networks with a large amount of devices. Student thesisinfo:eu-repo/semantics/bachelorThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:miun:diva-39383Local DT-V20-G2-004application/pdfinfo:eu-repo/semantics/openAccess |
collection |
NDLTD |
language |
Swedish |
format |
Others
|
sources |
NDLTD |
topic |
Streaming Telemetry Apache Kafka Python Real-time analysis Streaming Telemetry Apache Kafka Python Realtidsanalys Computer Engineering Datorteknik |
spellingShingle |
Streaming Telemetry Apache Kafka Python Real-time analysis Streaming Telemetry Apache Kafka Python Realtidsanalys Computer Engineering Datorteknik Erlandsson, Niklas Implementering av testplattform för end-to-end streaming telemetry i nätverk |
description |
Målen med denna studie är att implementera en testmiljö för streaming telemetry samt jämföra två alternativ för att möjliggöra realtidsanalys av det insamlade datat. Dessa två alternativ är Python-biblioteken PyKafka och Confluent-Kafka-Python. Bedömningskritierna för jämförselsen var dokumentation, kodmängd och minnesanvändning. Testmiljön för streaming telemetry använder en router med Cisco IOS XR programvara som skickar data till en Cisco Pipeline collector, som vidare sänder datat till ett Kafka-kluster. Jämförelsen av Python-biblioteken utfördes med språket Python. Resultaten av jämförelsen visade att båda biblioteken hade välskriven dokumentation och liten skillnad i kodmängd, dock använde Confluent-Kafka-Python mindre minne. Studien visar att streaming telemetry med realtidsanalys kan fungera bra som ett komplement till eller en ersättning av SNMP. Studien rekommenderar användning av Confluent-Kafka-Python för implementering i produktionsmiljöer med ett stort antal nätverksenheter med tanke på den lägre minnesanvändningen. === The goals of this study are to implement a test environment for streaming telemetry and compare two alternatives for analysing the collected data in realtime. The two alternatives are the Python libraries PyKafka and Confluent-Kafka-Python. The comparison focused mainly on three areas, these being documentation, amount of code and memory usage. The test environment for streaming telemetry was set up with a router running IOS XR software that is sending data to a Cisco Pipeline collector, which in turn sends data to a Kafka-cluster. The comparison of the two libraries for interfacing with the cluster was made with the language Python. The results of the comparison showed that both libraries had well-written documentation and showed a negligible difference in amount of code. The memory usage was considerably lower with the Confluent-Kafka-Python library. The study shows that streaming telemetry together with real-time analysis makes a good complement to or a replacement of SNMP. The study further recommends the use of Confluent-Kafka-Python in real-world implementations of streaming telemetry, particularly in large networks with a large amount of devices. |
author |
Erlandsson, Niklas |
author_facet |
Erlandsson, Niklas |
author_sort |
Erlandsson, Niklas |
title |
Implementering av testplattform för end-to-end streaming telemetry i nätverk |
title_short |
Implementering av testplattform för end-to-end streaming telemetry i nätverk |
title_full |
Implementering av testplattform för end-to-end streaming telemetry i nätverk |
title_fullStr |
Implementering av testplattform för end-to-end streaming telemetry i nätverk |
title_full_unstemmed |
Implementering av testplattform för end-to-end streaming telemetry i nätverk |
title_sort |
implementering av testplattform för end-to-end streaming telemetry i nätverk |
publisher |
Mittuniversitetet, Institutionen för informationssystem och –teknologi |
publishDate |
2020 |
url |
http://urn.kb.se/resolve?urn=urn:nbn:se:miun:diva-39383 |
work_keys_str_mv |
AT erlandssonniklas implementeringavtestplattformforendtoendstreamingtelemetryinatverk |
_version_ |
1719324356076634112 |