Skip to content

nguyenhuy0206/Computer_network-Assignment1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Peer-to-Peer Tracker Server

This project is a simple Tracker Server implementation used in a hybrid peer-to-peer chat system. It manages peer registrations and provides a list of available peers upon request.

Features

  • Accept connections from peers
  • Receive and store peer information (IP and PORT)
  • Return the current peer list to requesting clients
  • Threaded handling for multiple client connections
  • Basic logging of system events

Project Structure

README.md server client tracker.log data utils

Built-in Python Modules Used

These are all part of the Python standard library:

  • socket
  • threading
  • argparse
  • json
  • logging

FEATURES

  • Peer registration via submit_info <ip> <port>
  • Peer list sharing via get_list command
  • Logging to tracker.log
  • Connection management using threads
  • Simple CLI with `argparse

ERRORS

  • Tracker crashes if peer sends invalid or incomplete command
  • No validation for IP or port format
  • Server does not handle persistent storage (peer list is in-memory only)

FUTURE IMPROVEMENT

  • Add persistent peer storage (e.g., save/load from file or database)
  • Add heartbeat mechanism to remove inactive peers
  • Add authentication or verification for peer identity
  • Improve CLI and interactive server control
  • Add support for peer removal manually or on disconnect

About

BTL MMT

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages