Code Monkey home page Code Monkey logo

multicast-file-distribution's Introduction

Multicast File Distribution

This is a multicast file distribution protocol with implementation written in C. I have only tested this using ethernet multicast on a local network.

Compiling

To compile, run make in the project directory. The obj and out directories will be created. Binaries for the server and client will be built into the out directory.

Running the Server

Usage: ./server [num_clients] [filepath] [port]

The server will wait until the number of clients connected is equal to num_clients before it start sending the file. The server will display its network interfaces so clients can see what its ip address is. Header information of the file specified at the given filepath will be printed when the server starts sending the file.

Running the Client

Usage: ./client [server_ip] [destination_path] [port]

The client will get a file from the server specified by the server_ip and copy it to the directory specified by the destination_path.

Notes

The code in the two files crc32.c and extern.h are taken from http://web.mit.edu/freebsd/head/usr.bin/cksum/

multicast-file-distribution's People

Contributors

12yuens2 avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Forkers

oucs638

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.