Monitoring of computer networks is central to ensuring that they function as intended, with solutions based on SNMP being used since the inception of the protocol. SNMP is however increasingly being challenged by solutions that, instead of requiring a request-response message flow, simply send information to a central collector at predefined intervals. These solutions are often based on Protobuf and gRPC, which are supported and promoted by equipment manufacturers such as Cisco, Huawei, and Juniper. Two models exist for monitoring. The pull model used by SNMP where requests are sent out in order to retrieve data, has historically been widely used. The push model, where data is sent at predefined intervals without a preceding request, is used by the implementations using Protobuf and gRPC. There is a perceived need to understand which model more efficiently uses bandwidth and the monitored system’s memory and processing resources. The purpose of the thesis is to compare two monitoring solutions, one being SNMP, and one based on Protobuf and gRPC. This is done to determine if one solution makes more efficient use of bandwidth and the system resources available to the network equipment. This could aid those who operate networks or develop monitoring software in determining how to implement their solutions. The study is conducted as a case study, where two routers manufactured by Cisco and Huawei were used to gather data about the bandwidth, memory, and CPU utilisation of the two solutions. The results of the measurements show that when retrieving information about objects that have 1-byte values SNMP was the better performer. When objects with larger values were retrieved SNMP performed best until 26 objects were retrieved per message. Above this point the combination of Protobuf and gRPC performed better, resulting in fewer bytes being sent for a given number of objects. No impact on the memory and CPU utilisation in the routers was shown. / Övervakning av nätverk är av yttersta vikt för att säkerställa att de fungerar som tänkt. Lösningar baserade på SNMP har använts sen protokollet kom till. SNMP utmanas mer och mer av lösningar som, istället för att använda ett meddelandeflöde baserat på fråga-svar, helt enkelt sänder information till en insamlande enhet i fördefinierade intervall. Dessa lösningar baseras ofta på Protobuf och gRPC, vilka stöds och propageras för av bland andra utrustningstillverkarna Cisco, Huawei, och Juniper. Två modeller för övervakning finns. Pull-modellen där frågor skickas ut för att hämta data, används av SNMP och har historiskt sett använts i stor skala. Push- modellen, där data skickas i fördefinierade intervall utan föregående fråga, används av lösningar som använder Protobuf och gRPC. Det finns ett behov av att förstå vilken modell som på ett mer effektivt sätt använder bandbredd och de övervakade systemens minnes- och processorresurser. Syftet med denna rapport är att jämföra två övervakningslösningar. SNMP är den ena lösningen, och den andra lösningen är baserad på Protobuf och gRPC. Detta i syfte att utröna om endera lösning på ett mer effektivt sätt använder bandbredd och systemresurser i nätverksutrustning. Detta kan hjälpa nätverksoperatörer och utvecklare av mjukvara för övervakning att avgöra hur dessa bör implementeras. För att besvara detta används en fallstudie, där två routrar tillverkade av Cisco och Huawei används för att samla in data om de två lösningarnas användning av bandbredd, minne, och processorkraft. Mätningarnas resultat visade att när objekt vars värde var 1 byte hämtades så presterade SNMP bättre. När objekt vars värden var större hämtades presterade SNMP bäst tills 26 objekt hämtades per meddelande. Därefter presterade kombinationen Protobuf och gRPC bättre, och krävde färre bytes för att skicka information om ett givet antal objekt. Ingen påverkan på minnes- eller processoranvändningen i routrarna påvisades av mätresultaten.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-299853 |
Date | January 2021 |
Creators | Pettersson, Erik |
Publisher | KTH, Skolan för elektroteknik och datavetenskap (EECS) |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | Swedish |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Relation | TRITA-EECS-EX ; 2021:262 |
Page generated in 0.003 seconds