Skip to content

Python implementation of a custom protocol to send and receive files over the network.

Notifications You must be signed in to change notification settings

mc-cat-tty/Python-Socket-FileServer

Repository files navigation

Python Socket FileServer

Python implementation of a custom protocol to send and receive files (binary data) over the network.

For protocol specification see protocol diagrams and implementation.

This is an application-layer protocol, carried by a TCP connection, that aims to turn a simple socket stream into a reliable way to transfer long files by sending start, end and control bytes, as well as defining and handling different types of error.

This multi threading server is able to manage multiple connections.

Table of Contents

Usage

Server-side: run py server.py

Client-side (one or multiple clients): run py client.py

Protocol diagrams

ProtocolInputOutput

ProtocolUploadDownload

Authors

  • Francesco Mecatti - I.T.I.S Enrico Fermi - Italy, Modena