Starting from:

$30

ENE 419 Computer Networks Assignment 2 -Solved


1. What information is used by a process running on one host to identify a 
process running on another host? 
2. This elementary problem begins to explore propagation delay and transmission 
delay, two central concepts in data networking. Consider two hosts, A and B, 
connected by a single link of rate R bps. Suppose that the two hosts are separated by 
m meters, and suppose the propagation speed along the link is s meters/sec. Host A is 
to send a packet of size L bits to Host B. 
a. Express the propagation delay, dprop, in terms of m and s. 
b. Determine the transmission time of the packet, dtrans, in terms of L and R. 
c. Ignoring processing and queuing delays, obtain an expression for the end
to-end delay. 
3. Suppose users share a 3 Mbps link. Also suppose each user requires 150 kbps when 
transmitting, but each user transmits only 10 percent of the time. 
a. When circuit switching is used, how many users can be supported? 
b. Suppose there are 120 users. Find the probability that at any given time, 
exactly n users are transmitting simultaneously. Your answer could be 
given in formula (no need for computation). 
4. Write a simple TCP program for a server that accepts lines of input from a client and 
prints the lines onto the server’s standard output. (Please modify the following 
TCPServer.py program) Compile and execute your program. On any other machine 
that contains a Web browser, set the proxy server in the browser to the host that is 
running your server program (localhost); also configure the port number 
appropriately. Your browser should now send its GET request messages to your 
server, and your server should display the messages on its standard output. Use this 
platform to determine whether your browser generates conditional GET messages for 
objects that are locally cached.TCPServer.py 
from socket import * 
serverPort = 12000 
serverSocket = socket(AF_INET,SOCK_STREAM) 
serverSocket.bind((‘’,serverPort)) 
serverSocket.listen(1) 
print ‘The server is ready to receive’ 
while 1: 
connectionSocket, addr = serverSocket.accept() 
sentence = connectionSocket.recv(1024) 
capitalizedSentence = sentence.upper() 
connectionSocket.send(capitalizedSentence) 
connectionSocket.close() 
5. Install traceroute (or nmap.org or any similar) and perform a traceroute from 
your location to destination host of your choice in Korea (perhaps to KT’s 
DNS server ip? Search for it!). Provide the results of the traceroute. 

More products