On successful completion of this assessment, you will be able to:
• A good understanding of the Python programming language
• A good understanding of how to design and construct a software program and demonstrate its operation.
• Understand how to collect data from the software application and display it graphically.
Transferable/Key Skills and other Attributes.
• Communication: Presenting Information in the form of clear written report
• Gain practical experience of a programming language.
You are required to create a software program using the Python programming language that correctly displays Throughput (T) and Utilisation (U) on an Ethernet network for a set of predefined conditions (successful completion of this task will equate to a minimal pass)
For additional marks; enhance the program to show how throughput and utilisation are affected by varying the packet size and other network parameters. (additional marks will be given in order of complexity).
Throughput on a computer network is the number of raw data bits transmitted, without including any protocol overheads. So, if the throughput is 70 Mbit/s in a 100 Mbit/s connection, the channel efficiency (another word for throughput) is 70% i.e. 70Mbits of actual data are transmitted every second. Network utilisation is a term related to the use of raw data bits and the overheads which normally consist of preamble sequences, frame headers and acknowledge packets. For example: in an Ethernet network the maximum frame size is 1526 Bytes (a maximum 1500 Byte payload + 8 Byte preamble + 14 Byte header + 4 Byte trailer). An additional minimum interframe gap corresponding to 12 Bytes is inserted after each frame. This corresponds to a maximum utilisation of 1526 / (1526+12) x 100% = 99.22%, or a maximum channel use of 99.22 Mbit/s. The maximum throughput is then 1500 / (1526+12) = 97.5 Mbit/s i.e. the data throughput without the protocol overhead. The aim of this assignment is to develop a good understanding of the Python programming language and how it can be applied to the data throughput and channel utilisation of an Ethernet network. Please consider the following network parameters:
Id = Intermodal distance (i.e. the distance between each node on the network) (meters)
L = Distance between end nodes (i.e. the distance between the first and last node on the network) (meters)
N = Number of nodes on the network c = Signal Velocity=2x10^8
T = Packet transmission time (s)
PL = Packet size / length (bits)
R = Channel transmission rate (bps)
P = Propagation delay (s)
U = Channel Utilisation
S = Throughput (bps)
Consider a typical Ethernet type LAN with 10 stations and average inter-nodal distance of 200 meters, a transmission rate of 5Mbps and a packet size of 1000 bits. If the propagation speed is 2 x 108 m/s. Calculate data Throughput and channel Utililisation.
Task 1: Implement the above in a Python script file so that T (Throughput) and U (Utililisation) are clearly displayed.
Task 2: Enhance your Python programme to show how Utililisation and Throughput are affected for a packet size that varies between 1000 bits to 10000 bits (9 equal increments from 1000).
You could also ask the user to enter parameters such as transmission rate and inter-nodal distance. You may also wish to consider plotting the data by either writing the data to a hard disk and importing it to Excel (or equivalent), or by using the graph plotting functions in matplotlib available in WinPython.
To get a feel for the assignment, it is recommended that you initially approach this task by sketching out a flow chart. Think about what functions you might need (I would suggest that at least throughput and utilisation are implemented as functions and saved in a separate file and imported into the main Python script; and what variables (network parameters) you might need from the user. It is also suggested that you adopt a procedural approach to this programming assignment, although an object-oriented approach will carry additional marks due to the added complexity. Whilst it is possible to get maximum marks using the facilities available in the computer labs in Newton building. It is recommended that you install WinPython on your own machines and use the functions in Please make sure you comment your code well and save any Python Code to Appendices.
• Report [70% for documenting the primary task + 30% for documenting the secondary task, both tasks are marked in accordance with the following guidelines] o Report structure, presentation and clarity [20%]
o Software design and implementation [50%]
o Software testing [20%]
o Conclusions [10%]
Feedback will be provided to you in the form of electronic annotation of your reports and will be available through Turnitin system from Friday of week 35 (22/05/2020)
Support arrangements: You can obtain support for this assessment by e-mailing Dr. Hope. Alternatively you may discuss the assignment with either members of staff in the lectures or workshops.
The University offers a range of support services for students through askUS.
The University takes all forms of academic misconduct seriously. This includes plagiarism, asking someone else to write your assessment for you or taking notes into an exam. You can find out how to avoid academic misconduct here.
If you have any questions about assessment rules, you can find out more here.
Circumstances If personal mitigating circumstances may have affected your ability to complete this assessment, you can find more information about personal mitigating circumstances procedure here. Personal Tutor/Student Progression Assistant If you have any concerns about your studies, contact your Personal Tutor or your Student Progression Assistant.
Deliverables Report (Due Friday May 1st, 2020 by 16:00)
The following must be submitted to the assignment area on Blackboard by the date outlined above: An individual report that outlines the design, development and testing of your software; it should include as a minimum an explanation of your design (flowchart), what parameters were chosen and why, screen captures of results, and any useful data particular to the network. The report should approximate the following structure: Title page, Contents page, List of figures, Introduction, Design and Implementation, Test results, Conclusions, Further work, Appendices (Python code).
This report is expected to be around 3000 words in length. You must also reference all research sources that you use in your report. To avoid missing the deadline for any reports, please allow extra time when submitting your coursework to allow for potential network problems. Work Expectation This assignment forms 25% of your possible marks for a 20-credit module. You would be expected to spend about 25 hours of time on it. All the submission (diagrams and text) must be in electronic format and submitted through the Turnitin system accessible within Blackboard. Feedback Feedback on the demonstration will be given verbally directly after the presentation.
Feedback on the Individual Report will be available through Turnitin system within 3 weeks after submission. i.e. by Friday (22/05/2020).
Your submission must be entirely your own work or that of your group as appropriate to the type of submission. You must not plagiarise other people’s work, or allow your work to be plagiarised by others.
You should not look at other group’s work for inspiration, you should not discuss your groups work, you should not share your groups ideas. At least a fair attempt must be made at referencing in the submitted report.
Reports that contain poor or non-existent referencing will be deemed to have failed to meet the learning outcomes of the assignment and will therefore not achieve a pass mark. Please read the declaration on the Turnitin submission page. By submitting the work you are assumed to have agreed to this declaration The rules of plagiarism are clearly stated in your Student Handbook which you must consult.
You are strongly advised to take care to reference and acknowledge any material that is not your own work. In particular, you must make sure that:
• Any sentences, including any definitions, that are copied word for word are in quotation marks, the source(s) are correctly cited in the text, and correctly referenced in the references section;
• The source(s) of any diagrams, images, etc copied are correctly cited in the text, and correctly referenced in the references section;
• Any code that is taken from any source (text book, WWW, journals etc) is correctly cited in the text, and correctly referenced in the references section;
• Any data that is taken from any source (text book, WWW, journals etc) is correctly cited in the text, and correctly referenced in the references section.
Holding a PhD degree in Finance, Dr. John Adams is experienced in assisting students who are in dire need...
55 - Completed Orders
Canada, Toronto I have acquired my degree from Campion College at the University of Regina Occuption/Desi...
52 - Completed Orders
Even since I was a student in Italy I had a passion for languages, in fact I love teaching Italian, and I...
102 - Completed Orders
To work with an organization where I can optimally utilize my knowledge and skills for meeting challenges...
109 - Completed Orders
JOB OBJECTIVE Seeking entry level assignments in Marketing & Business Development with an organization...
202 - Completed Orders
Current work profile Project manager- The Researchers Hub (2nd Jan 2016 to presently working) Researc...
20 - Completed Orders
Sales Assistant, Mito Marina Assigned to the Stationery dept – assisted in merchandising, stock taking...
100 - Completed Orders