首页 > > 详细

Masters Programmes in CommunicationsSoftware for Network Services (SNS)

 Masters Programmes in CommunicationsSoftware for Network Services (SNS)

Project Assignment
2019/2020
Assignment Issued: 6th December 2019
_____________________________________________________________________
Guidelines:
Penalties will be applied for late submissions in accordance with the guidelines:
https://wwws.ee.ucl.ac.uk/masters/masters-docs/regulations/late-coursework-penalties
_____________________________________________________________________
Software for Network Services (SNS) 2019/2020
1 Objective: Throughput forecasting
In this project you will build a forecasting system that is able to forecast the data rate for a given 
IP address in the Internet. This could be of paramount benefit for many applications, service 
providers and ISPs. The system should be able to forecast the throughput to any IP address in 
the Internet
You will do this in two steps:
1. Collecting as much data as possible of pairs (e.g. 
128.34.5.2,20304). This can be done with several options. Among them:
a. Using the code you have done in the networking session
b. Using python libraries (e.g. https://docs.python.org/3/library/http.client.html)
c. Using applications like wget (https://www.gnu.org/software/wget/)
2. Train and test a deep learning model with the data and show how accurate the model is. 
You can use a simple neural network like the one used in the lab sessions or something 
more elaborate (e.g. convolution neural networks. The dataset you collected in the 
previous step should be split into:
a. Train set (80% of the samples). You can further split this set into:
i. Train set – used to train the model
ii. Validation set – used to evaluate the model in order to find the best 
hyperparameters (e.g. learning rate, batch size, number of epochs) and 
architecture (e.g. how many hidden layers, how many neurons per 
layer, activation function). Alternatively, you can use a k-fold cross￾validation technique, which should give better hyperparameters.
b. Test set (20%) – used to evaluate the model (do not use this data for training or 
validation). Report the model Mean Square Error (MSE) of your test set with 
your trained model. After you evaluate the model with the test set you should 
not change any hyperparameters or the architecture.
Although IP addresses should printed as strings in your file, they should be processes as a 32 bit 
vector.
Goals of the project
1. To be able to implement networking applications based on the socket interface
2. To be able to design and implement a deep learning model
Note that you have to be particularly careful on the quality of your data. For example, bear in 
mind TCP slow start and explain clearly the amount of data you retrieved for each sample (how 
many bytes did you get from each site). You should put your data in your web page (call it 
data.csv, comments should have)
2 Evaluation
December 2019
Software for Network Services (SNS) 2019/2020
The project will be developed individually and should consist of a report (between 10 and 20 
pages approximately)
Your project will be assessed on the basis of the following: • 40% of the mark will relate to your networking code and the quality and quantity of 
your data. 
• 60% of the mark will relate to the quality of your deep learning model and the accuracy 
of your results.
You are encouraged to share your data with your colleagues (by putting it in your webpage). 
Obviously, you are not allowed to share any code. You will not be disadvantaged for sharing
data and you will not be advantaged for using more data than yours.
END OF ASSIGNMENT
December 2019
联系我们 - QQ: 99515681 微信:codinghelp
程序辅导网!