Find Jobs
Hire Freelancers

Assignment code on perl (or) python

kr192-1600 SEK

Zaprt
Objavljeno pred približno 6 leti

kr192-1600 SEK

Plačilo ob dostavi
Write a script to probe the an SNMP agent and find the rate of change for several counters between successive probes/ samples. The rate calculated for each counter/OID should be displayed on the console, one line for each calculated rate, the output format will be described in detail in 'output format'. Futhermore, as the only requirement on the OIDs is that they are of the type COUNTER, this means that there are both 32 and 64 bit versions of counters. Your solution should handle both counter types, and in the case that a counter wraps (ie goes from a high number to a low number), your solution should address/rectify (if its possible). The solution needs also to handle that an SNMP agent restarts (i.e. the sysUpTime OID becomes less than it was before, ie. it starts counting from zero), and timeouts, i.e. the device does not respond to your request in time. It will be tested that your solution maintains the requested sampling frequency (i.e. the requests from your solution should be sent so that the sampling frequency is maintained, irrespectively if the device has responded or not). The script will be invoked as follows: prober <Agent IP:port:community> <sample frequency> <samples> <OID1> <OID2> …….. <OIDn> where, IP, port and community are agent details, OIDn are the OIDs to be probed (they are absolute, cf. IF-MIB::ifInOctets.2 for interface 2, or 1.3.6.1.2.1.2.2.1.10.2 [1]) Sample frequency (Fs) is the sampling frequency expressed in Hz, you should handle between 10 and 0.1 Hz. Samples (N) is the number of successful samples the solution should do before terminating, hence the value should be greater or equal to 2. If the value is -1 that means run forever (until CTRL-C is pressed, or the app is terminated in someway). Following are the files to be submitted: Note: The file has to be submitted with ".txt" extension so that plagiarism control will work. [login to view URL] Script that probes the agent, may be written in any language (perl, python,etc.), make use of the SHEBANG to handle what language interpreter that execute the script. If you use a complied language, make sure that the compiler outputs the correct filename on the executable. What ever language you choose to implement the solution in, make sure that you use a proper API for the SNMP communication, i.e. using system commands is not the way to do it. The aim is to train API interaction. Output format The output from the script _MUST_ be as follows: Sample time | OID1 | OID2 | .... | OIDn Sample time: Timestamp of the last sample, in UNIX time (seconds). OID*: Rate of OID* between the last two successful samples As an example: 1504083911 | 2124 | 819 | 0 | 281761 1504083912 | 2471 | 819 | 110 | 450782 1504083913 | 1904 | 819 | 2000 | 325448 --Technical Testing--: Your solution will be tested against a simulated/real SNMP agent, where the behavior is known. A test script will be launch your solution and validate the results against the known results. The script will check: - that the solution generates the correct number of samples, as requested, at the requested sample frequency. - that the solution sends the snmp request at the required sampling frequency, will be tested by packet tracing. - that the SNMP request contain all the requested OIDs, by packet tracing - that the solution handles non-responsive SNMP agents, ie. timeouts. Ie the inter sample time presented in console would be n/Fs where Fs is sample frequency and n=1,2,3,... - that the solution handles that the SNMP agent restarts/reboots - that the output from the solution matches the configuration of the agent - that the solution handles counters that wrap around, both 32 and 64 bit counters. Use SysUpTime[2] as to detect device reboots and to obtain the device time when calculating rates. [1] [login to view URL] [2] [login to view URL]
ID projekta: 16438439

Več o projektu

5 ponudb
Projekt na daljavo
Aktivno pred 6 leti

Želite zaslužiti?

Prednosti oddajanja ponudb na Freelancerju

Nastavite svoj proračun in časovni okvir
Prejmite plačilo za svoje delo
Povzetek predloga
Registracija in oddajanje ponudb sta brezplačna
5 freelancerjev je oddalo ponudbo s povprečno vrednostjo kr910 SEK za to delo
Avatar uporabnika
Hello , I have bachelor's degree in computer science and i have been programming in C/C++ for both linux and windows for more than 8 years.I have written various network applications some of which are down to the IP packet level. I have written a linux based network packet analyzer without using except the standard C library. and also written simple versions of network diagnostic tools ping and traceroute. With extensive knowledge cryptology and underlying mathematics. Additionally I have previous experience with python,php and perl. let me know if you're interested.
kr1.000 SEK v 3 dneh
5,0 (6 ocen)
3,6
3,6
Avatar uporabnika
May be my bid is very low, but trust me, my product will have high quality and I ensure your satisfaction.
kr227 SEK v 3 dneh
5,0 (1 ocena)
0,6
0,6
Avatar uporabnika
Hello , I’m a professional software developer working in a cyber security company. I have worked on python , shell for years. Kindly take a chance on visiting my profile . The best part is I have already done a similar script that sends snmp traps when some counter values reach threshold . So it should be a piece of cake for me . I can get the job done . Kind Regards , Ameer Khan
kr1.333 SEK v 3 dneh
0,0 (0 ocen)
0,0
0,0

O stranki

Zastava SWEDEN
Karlskrona, Sweden
0,0
0
Plačilna metoda je verificirana
Član(ica) od feb. 2, 2018

Verifikacija stranke

Hvala! Po e-pošti smo vam poslali povezavo za prevzem brezplačnega dobropisa.
Pri pošiljanju vašega e-sporočila je šlo nekaj narobe. Poskusite znova.
Registrirani uporabniki Skupaj objavljenih del
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Nalaganje predogleda
Geolociranje je bilo dovoljeno.
Vaša prijavna seja je potekla, zato ste bili odjavljeni. Prosimo, da se znova prijavite.