1 IntroductionThis assignment is based on real data processing I have had to undertake as part of a research project at Loughborough. A brieng with an overview of this work will be undertaken on Thursday of week 2 of the module. 2 Exercise You must write some Python and/or Shell code to process data les and produce an outputle. The input les are logs from runs of an experiment on BGPSecurity(RPKI) and the output le is a measure of the performance of the run. There are two types of data le: publication and router. 2.1 Context In BGP Secruritys RPKI Infrastructure a Route Origin Authorisation (ROA) object consists of: an AS number. an IP address. a prex length. a prex maximum length. An example would be: 42 8.0.0.0/16-32 Here the prexis 8.0.0.0 the length 16,the maximum length 24 and the ASnumber42. (Dont not worry about the term maximum length. For the purposes of this exercise all you need to know is that it is there). The purpose of a ROA is to form a cryptographic bind between an AS number to a prex. ROAs are published by publication points and received at routers. We have log les logging the time of publication and receipt and these log les are the input to your program. 2.2 Input This les contain information about when ROA objects are published and received. Extracts from sample input les are shown in gure 1. Objects can be published at many publication points. Each one has a publication log(pubd.log). Note from the gure that we are only interested in lines containing ROAs, these can be identied by the 4th eld ending in .roa, and then we only need the time and the information from the last two elds. Objects are received at many routers. Each one has an rtr-origin-client.log. Note we are only interested in the lines with a + in the 4th eld. The AS number is then the fth eld and the prex and its lengths are in the following eld. Note that for both publication and router log les there are many lines which can be ignored. Files are presented in the following way. The network consists of a large number of machines, some of which act as publication points and some as routers. Each machine has a folder with a set of sub folders. If the le machinename/rpki/daemon-logs/pubd.log.gz exists, then this machine is a publication point, otherwise its a router (in this experiment a machine cannot be both). If a router, then the required log le is machinename/rpki/rtr-origin-client.log.gz All other les can be ignored. 2.3 Output We are interested in the time taken (in seconds) for each object to progress from the publication point to a router. One le of output is needed, which will have one line for each ROA object received at a router together with the time taken for that object to propagate from the publication point to the router. 2.4 Compression As the input les can be big they are compressed using gzip. Look into python functions for opening and reading compressed les. (Hint: gzip.open) 2.5 Your Code Your code needs to read all the les and process them. As with lab exercise 4, the key thing is to have a good set of internal data structure to hold the information as you read it from the les. 2.6 Sample Input A set of sample input les and folders are stored in sci-linux in the folder: ~eliwp/505-23.
Programming
[Solved] SOLVED:Internet Systems Assignment
$25
File Name: SOLVED:Internet_Systems_Assignment.zip
File Size: 320.28 KB
Only logged in customers who have purchased this product may leave a review.
Reviews
There are no reviews yet.