Computer Networks Assignment
Labs:
Submit your lab 1- Python Program for IPv4 Parsing
Submit your lab 2- Python Program for discrete fourier transforms
1. Compute the Fourier Coefficients for the function f(t)=t (0≤t≤1). (Note: This question appears to be missing quite a lot of relevant information - I've deliberately left it as is, because well - this is the standard book on Computer Networks after all).
2. TV channels are 6MHz wide. How many bits/sec can be sent if we use 4 level digital signals? (Assume a noiseless channel)
3. If a binary signal is sent over a 3kHz channel whose signal to noise ratio is 20dB (a factor of 100) what is the maximum achievable data rate?
4. An upper-layer packet is split into 10 frames each of which has an 80% change of arriving undamaged. If no error control is done by the data link protocol how many times must the message be sent on average to get the entire thing through?
5. What is the maximum overhead in a byte stuffing algorithm?
(i.e. the slightly crazy ones)
6. Imagine you are working on an online interactive product. Assuming you do not want any frame delay due to network latency, and that it takes 10 millisecond to process any input received. Also assume also that any signal sent will travel at 2x108 m/s. How close must your data centre be for this to be achievable at 30frames per second? How about 60? Consider only the time it takes for the signal to bounce back and forth, we aren't worried about controller input lag or screen display lag. What big city is farthest from Peterborough that could host this data centres in either case?
7. Suppose you are trying to optimize a massive video streaming service (youtube, Netflix, that sort of thing), with 1 billion users (exactly 1 billion). Assume that your average customer has 78 ms of latency (that's a real number I calculated using some Verizon data). Using https://support.google.com/youtube/answer/1722171?hl=en calculate how much data is stuck in transit for 1080p and 2160p video with 5.1 Audio (use 35 Mb/s for 2160p video). If you wanted to buffer enough to cover a very poor case - like north America to India (266ms) how much data do you need? Estimate bandwidth costs per user in both cases (companies like rackspace offer bandwidth pricing data, but it's up to you to research and source the data). Assume that you get the best rate available for data.
8. Write a program in python that calculates hamming codes for a 16 bit number and show how you tested this program to verify correctness.
9. The Edward Snowden leaks gave us a list of 4 products the NSA was unable to crack. One of those (trucrypt) we are going to ignore, as it's a dead project. The other 3 are OTR, TOR, and Zoho email. Each assignment will have you install and try out one of these products and see how well it works. For this assignment you should create a free Zoho account, and experiment with sending/receiving emails, files etc. Try and access the account on different devices (mobile phone, web browser, email program like thunderbird), and tell me about what works or what doesn't. Fair warning - last year when we tried this many emails simply didn't send or didn't receive, but that might be fixed. Write approximately 500 words on the process of setting up and using this service, problems you encountered and generally whether or not you think this is something the public could use.