For top results in this unit, you need to demonstrate excellent achievement of the unit learning...
Fantastic news! We've Found the answer you've been seeking!
Question:
Transcribed Image Text:
For top results in this unit, you need to demonstrate excellent achievement of the unit learning outcomes. You need to demonstrate your ability to explore networking concepts beyond the unit content. For this high distinction task, you will be developing your own version of the Ping application using Python. Task Requirement Present evidence that you have been able to develop the Ping application according to the instructions provided. You need to submit your summary and reflections on your learning & evidence to OnTrack. Task Instruction For this task, you will build your own Ping application using Python. Ping is a network utility that we primarily use to check whether any network device including web servers are reachable or not. Ping uses Internet Control Message Protocol (ICMP) which is a network layer protocol used to diagnose network communication issues or control purposes. For example, you can see the following responses when you use ping command in command prompt or terminal to check the connection between your host and "www.google.com". PING www.google.com (142.250.70.196): 56 data bytes 64 bytes from 142.250.70.196: icmp_seq=0 ttl=55 time=19.395 ms 64 bytes from 142.250.70.196: icmp_seq=1 ttl=55 time=27.511 ms Request timeout for icmp_seq 2 64 bytes from 142.250.70.196: icmp_seq=3 ttl=55 time=19.652 ms Request timeout for icmp_seq 4 64 bytes from 142.250.70.196: icmp_seq-5 ttl=55 time=15.992 ms Request timeout for icmp_seq 6. Now, your task is to build this ping application in Python without using Python's inbuilt ping system commands. You need to create sockets, check the checksum, send and receive relevant ICMP messages, and do any additional processing required to display the relevant information. Note that you will need to create a raw socket to build this application and send ICMP messages, which can only be done from processes running as root (in Mac OS) or as Administrator in Windows. You may want to use the Python libraries including os, sys, socket, struct, select, and time. Note that you will only need to write the client side of the program, as the functionality needed on the server side is built into OSS. Your Ping must have the following features and functionality: A function to send a single Ping to the "host name" that you provide in the code. For example, my_ping (www.yahoo.com). You need to create a packet header with the required field (you do not need to use all the header fields) with dummy data and the checksum. To create a packet, you then need to add data to the packet header. A function to receive a single ping and extract relevant information, such as type, checksum, and sequence number of the packet (can use "struct.unpack" ). Calculate the round-trip time and return the values that are required to display in the terminal. A function to returns the time delay between sending and receiving a single ping so that you can send a ping request to an intended host in every one second. Function to display ping statistics. You need to display at least number of bytes received,IP address of the host that you sent the ping request, ttl, and round-trip time if the ping is successful. Display "Request timed out" if the ping is unsuccessful. When you print the Ping statistics, you should also display the following line in the terminal to indicate that the Ping application is running "ping destination IP addresses in Python" Note that you only need to develop the client side of the application as the server side is already built into operating systems. Task Submission Instruction You need to submit the following files to On Track: 1. A pdf demonstrating the evidence that you have successfully developed the Ping application (screenshots clearly showing that your ping application is able to ping different hosts), and summary and reflection on your learning. 2. Python code For top results in this unit, you need to demonstrate excellent achievement of the unit learning outcomes. You need to demonstrate your ability to explore networking concepts beyond the unit content. For this high distinction task, you will be developing your own version of the Ping application using Python. Task Requirement Present evidence that you have been able to develop the Ping application according to the instructions provided. You need to submit your summary and reflections on your learning & evidence to OnTrack. Task Instruction For this task, you will build your own Ping application using Python. Ping is a network utility that we primarily use to check whether any network device including web servers are reachable or not. Ping uses Internet Control Message Protocol (ICMP) which is a network layer protocol used to diagnose network communication issues or control purposes. For example, you can see the following responses when you use ping command in command prompt or terminal to check the connection between your host and "www.google.com". PING www.google.com (142.250.70.196): 56 data bytes 64 bytes from 142.250.70.196: icmp_seq=0 ttl=55 time=19.395 ms 64 bytes from 142.250.70.196: icmp_seq=1 ttl=55 time=27.511 ms Request timeout for icmp_seq 2 64 bytes from 142.250.70.196: icmp_seq=3 ttl=55 time=19.652 ms Request timeout for icmp_seq 4 64 bytes from 142.250.70.196: icmp_seq-5 ttl=55 time=15.992 ms Request timeout for icmp_seq 6. Now, your task is to build this ping application in Python without using Python's inbuilt ping system commands. You need to create sockets, check the checksum, send and receive relevant ICMP messages, and do any additional processing required to display the relevant information. Note that you will need to create a raw socket to build this application and send ICMP messages, which can only be done from processes running as root (in Mac OS) or as Administrator in Windows. You may want to use the Python libraries including os, sys, socket, struct, select, and time. Note that you will only need to write the client side of the program, as the functionality needed on the server side is built into OSS. Your Ping must have the following features and functionality: A function to send a single Ping to the "host name" that you provide in the code. For example, my_ping (www.yahoo.com). You need to create a packet header with the required field (you do not need to use all the header fields) with dummy data and the checksum. To create a packet, you then need to add data to the packet header. A function to receive a single ping and extract relevant information, such as type, checksum, and sequence number of the packet (can use "struct.unpack" ). Calculate the round-trip time and return the values that are required to display in the terminal. A function to returns the time delay between sending and receiving a single ping so that you can send a ping request to an intended host in every one second. Function to display ping statistics. You need to display at least number of bytes received,IP address of the host that you sent the ping request, ttl, and round-trip time if the ping is successful. Display "Request timed out" if the ping is unsuccessful. When you print the Ping statistics, you should also display the following line in the terminal to indicate that the Ping application is running "ping destination IP addresses in Python" Note that you only need to develop the client side of the application as the server side is already built into operating systems. Task Submission Instruction You need to submit the following files to On Track: 1. A pdf demonstrating the evidence that you have successfully developed the Ping application (screenshots clearly showing that your ping application is able to ping different hosts), and summary and reflection on your learning. 2. Python code
Expert Answer:
Related Book For
Financial Reporting Financial Statement Analysis and Valuation a strategic perspective
ISBN: 978-1337614689
9th edition
Authors: James M. Wahlen, Stephen P. Baginski, Mark Bradshaw
Posted Date:
Students also viewed these computer network questions
-
Planning is one of the most important management functions in any business. A front office managers first step in planning should involve determine the departments goals. Planning also includes...
-
can someone solve this Modern workstations typically have memory systems that incorporate two or three levels of caching. Explain why they are designed like this. [4 marks] In order to investigate...
-
Lead nitrate solution is added to a test tube containing potassium iodide solution. (a) Write the name and colour of the compound precipitated. (b) Write the balanced chemical equation for the...
-
Make a presentation on the topic: "Cross Culture Leadership"
-
For the dipole in Figure P24.30, can you draw a twodimensional closed surface through which the field line flux is \((a)\) zero, \((b)+16,(c)-16\), and \((d)+3\) ? Data from Figure P24.30 E
-
Meagan and Jenny are in partnership, sharing profits equally. Provision exists in the partnership agreement for charging interest on capital at the rate of 8% p.a. and interest on drawings at 10%...
-
Chudrick Inc. makes unfinished bookcases that it sells for $62. Production costs are $36 variable and $10 fixed. Because it has unused capacity, Chudrick is considering finishing the bookcases and...
-
(a) During the audit of the Weak Bank (W), RBI has suggested that the Bank should either merge with another bank or may close down. Strong Bank (S) has submitted a proposal of merger of Weak Bank...
-
Figure 12.15 represents the network for delivering coolant to five different machine tools in an automated machining system. The grid is a rectangle 7.5 m by 15 m. All pipes are drawn steel tubing...
-
An aircraft performs a maneuver called an aileron roll. Duringthis maneuver, the plane turns like a screw as it maintains astraight flight path, by using its ailerons to set the wings incircular...
-
Scenario You are an employee of Wolfpack Company, and you just received 1,000 shares of restricted stock that vest in 4 years at no cost. You plan on selling the stock as soon as it vests. Here are...
-
Your organisation is looking to sign a new contract with one of the following suppliers: Supplier 1: - Is a preferred supplier - Provided a verbal quote for $60,000 - No presentation given Supplier...
-
Prepare tax work for Wilkinson CPA s , LLC out of Manhattan, KS . Your client is Powercat Ranch, Inc. ( S - Corp, located in New Mexico, owned by 2 shareholders Terry and Sarah ) . Powercat...
-
Consider the following adjacency matrix. A B C DE 3 -4 17 A05 6 0 4 B C D E 8 8 8 8 8 80 8 -5 0 36 0 a) Draw the graph that is represented by the matrix. b) Apply Bellman-Ford's algorithm to the...
-
The following table for 5.5% par-value bonds with annual coupons will be used in this question: Term 1 year 2 year Yield 1.7% 2.45% 2.75% 3 year Use the above table to determine the 3 year spot rate....
-
An airplane carrying an ALS system emits a laser pulse with a pointing angle of a = 14.723 that takes 0.0051245 millisecond to reach an object on the ground and return to the sensor. At the same...
-
An educational researcher devised a wooden toy assembly project to test learning in 6-year-olds. The time in seconds to assemble the project was noted, and the toy was disassembled out of the childs...
-
Three years of combined data for two firms appear below (in millions). One of these firms is FedEx, a relatively high-growth firm that provides courier services, and the other is Kellogg Company, a...
-
Exhibit 5.22 presents selected financial data for ABC Auto and XYZ Comics for fiscal Year 5 and Year 6. ABC Auto manufactures automobile components that it sells to automobile manufacturers....
-
Montgomery Ward operates a retail department store chain. It filed for bankruptcy during the first quarter of Year 12. Exhibit 3.22 presents a statement of cash flows for Montgomery Ward for Year 7...
-
With a neat sketch of a room air-conditioner, explain its working principle.
-
Explain the working of domestic refrigeration system with a neat sketch?
-
The dynamic viscosity of lubricating oil used between shaft and sleeve is 12 poise. The diameter of the shaft, which rotates at \(240 \mathrm{rpm}\), is 0.5 \(\mathrm{m}\). The sleeve length is \(120...
Study smarter with the SolutionInn App