辅导CSE205留学生、讲解Python

- 首页 >> Python编程


CSE205 Introduction to Networking Project 1

1

CSE205 Introduction to Networking

Project 1

Large file transmission

Contribution to Overall Marks 10%

Submission Deadline Fri. 25th Oct. 2019, 23:59

How the work should be submitted?

• SOFT COPY ONLY!

• You must submit your work through ICE so that markers can run your codes during

marking.

• Make sure your name (Last name SURNAME, eg. San ZHANG) and your student

ID on the cover page of your report.

Project requirements

This project aims at using some basic concepts of Python programming and network

programming using Python (socket) to achieve a practical application. In the daily work

and study, large file transmission is important and frequently used. Generally, we use

QQ or Apply Airdrop to delivery very large files. I am sure you are interested in what

happened inside. Let’s try to develop our own large file transmission application!

First of all, you are encouraged to exploit UDP for this task as it is simple, fast and

straightforward.

There are some other requirements and challenges:

• A pair of apps including sender and receiver should be developed;

• The transmitted file size should be over 100 MB;

• Only os, socket, struct, hashlib, math, tqdm modules can be used for this project;

• File check should be required after transmission;

• You should define the file transmission protocol;

• You can discuss and make a shared protocol between your classmates. However,

DO NOT copy codes directly. If you select to use a shared protocol, please indicate

who are your partners. The codes using the same protocol will be tested together.

OR, you can define a private protocol only for you. As one of the most important

spirit of networking is sharing, you are encouraged to make a shared protocol. But,

please REMEMBER, this project is an individual task, only the protocol can be

shared;

• You can try any function you want to enhance your app (optional).

CSE205 Introduction to Networking Project 1

2

What should be submitted?

• A development report (no more than 8 pages, single column, PDF format)

including:

- Introduction: project requirement (in your own language), background,

literature review (try to find some papers or development reports of similar

apps), what you did…

- Methodology: proposed ideas, protocols (using FSM or mind map), program

flow chats

- Implementation: steps of implementation, what difficulties you met and how

to solve them.

- Testing and results: testing plan and testing results (screenshot, curves…)

- Conclusion: what you did? Do you have a future plan to improve it?

- Reference [IEEE format]

• A pair of Python codes;

• Please compress the report and codes to a ZIP file (not rar, not Kuaiya and not any

other formats please), the file name should be:

CSE205_P1_Last name_SURNAME.zip (eg. CSE205_P1_San_ZHANG.zip).

• You are encouraged to use LaTeX to finish your report. The template is

https://github.com/feimax/latex_template_for_xjtlu_eee . If you are still using MS

word, please refer to the PDF file in the LaTeX template.




站长地图