Skip to content

This repository contains implementations of multiple networking protocols clients and servers. In order to achieve that multithreading is highly utilized in this repository

License

Notifications You must be signed in to change notification settings

ArturMarekNowak/Networking

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

76 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Networking

Build CodeFactor

This repository contains implementations of simple networking examples.

Table of contents

General info

Thus far there are two projects implemented:

  1. TCP - implementation of simple chat in client-server-client architecture. This implementation has two major assumptions. One is usage of multithreading and the second one is implementation of some sort of graceful shutdown on client or server disconnection. TCP protocol is utlized in order to provide connection-oriented communication between sockets. This repository was review by @peter-csala on CodeReview stack exchange: Multithreaded tcp server accepting two clients with task factory and graceful shutdown
  2. UDP - implementation of simple chat in client-server-client architecture. This implementation has two major assumptions. One is usage of multithreading and the second one is implementation of some sort of graceful shutdown on client or server disconnection. UDP protocol is utilized in order to provide connection-less communication between sockets.
  3. Netstat - console application which run is an equivalent to "nestat -a" command on windows OS.
  4. Ping - console application which run is an equivalent to "ping " command on windows OS.
  5. NTP - implementation of simple NTP client. I was curious about the differences between the four times defined in RFC 2030 which are reference, originate, receive and transmit timestamps and immediate call of DateTime.Now. This repository was review by @peter-csala (again :D) on CodeReview stack exchange: NTP client displaying reference, originate, receive and transmit timestamps periodically with graceful shutdown in C#
  6. SMTP - implementation of simple SMTP client allowing to add multiple attachments. Based on: The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required?
  7. RFC3091 - implementation of PI generator described in RFC 3091 document, but without the multicast service.

Technologies

  • .NET 6
  • Jetbrains Rider

Setup

I am making sure that dotnet build is all that you need to make everything work.

Status

Project is: finished

Inspiration

Network programming classes at AGH University of Science and Technology

About

This repository contains implementations of multiple networking protocols clients and servers. In order to achieve that multithreading is highly utilized in this repository

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages