Coder Social home page Coder Social logo

udp-tcp_socket_programming's Introduction

2020-2021 Computer Networking
This is implementing a Remote Backup System with UDP/TCP socket programming.

* Dev Environment
 - OS: MacOS
 - complier: 'clang++ -std=c++11'

* Usage
  - w/ makefile under folder "src"
    - type 'make', following commands will be executed;
      'clang++ server.cc -g -std=c++11 -o ../executable/server'
      'clang++ client.cc -g -std=c++11 -o ../executable/client'
  - or use g++ complier is okay as well;
    'g++ -std=c++11 server.cc -o server'
    'g++ -std=c++11 client.cc -o client'

  Run the Server/Client with:
    ./server [-p port]
    ./client [-s server_address] -p port

* Folder Structure
  - backup
  - executable
    - extension w/ '.dSYM' are auto-generated while compiling, please ignore.
    - TEST.pdf
    - client
    - server
  - src
    - makefile
    - server.h
    - socket-server.h
    - server.cc
    - client.h
    - socket-client.h
    - client.cc
    - message.h
  - README.txt

* Compulsory functions are all Implemented (except bonus part)
  * Client Command Functions
    - ls
    - send [filename w/path]
      * it accepts relative or absolute path or just filename if you are in the same level;
      - e.g. 'send ./executable/TEST.pdf' or 'send Desktop/TEST.pdf' or simply 'send TEST.pdf'
    - remove [filename]
    - rename [filename] [target filename]
    - quit
    - shutdown

  * Server Response Functions
    - ls
    - send
    - remove
    - rename
    - shutdown

udp-tcp_socket_programming's People

Contributors

keeliu07 avatar

Watchers

 avatar

Forkers

andy824

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.