Skip to content

AsyncServerClient is the simple, open-source, cross-platform Async TCP Server-Client project (with SQL and 3-Way Handshaking support) for .NET Assemblies built in .NET Core

License

Dentrax/AsyncServerClient

Repository files navigation

AsyncServerClient

MIT Licence Open Source Love Build Status Sourcegraph

AsyncServerClient is the simple, open-source, cross-platform Async TCP Server-Client project with SQL support for .NET Assemblies built in .NET Core

Warning: It is an old project I made in 2015. I converted whole project into .NET Core and made new improvements.

Click here for .NET Core

What It Is

How To Use

Features

Requirements

Dependencies

About

Collaborators

Branches

Copyright & Licensing

Contributing

Contact

What It Is

AsyncServerClient is the simple, open-source, cross-platform Async TCP Server-Client project with SQL support for .NET Assemblies built in .NET Core SDK

AsyncServerClient teaches you how TCP based Async Server-Client works actually with the three-way handshake architecture, as simplified as possibly. It is designed in the bare-minimum struct.

Uses : .NET Core 2

Controls and wizards are available for users to:

  • Deep detect feature to incoming-outgoing packets
  • Analyze server-side or client-side packets with deeper details
  • Send packets with any data type
  • Three-Way TCP Handshaking feature
  • Blowfish encrypted secure packets (You can also add new algorithms easily)
  • Not complex, not hard, best project to understand TCP Async Server-Client Networking

Screenshot

ServerClient

How To Use

  1. Clone the project to your computer by executing the following command:
$ git clone https://github.com/Dentrax/AsyncServerClient.git
  1. Navigate to your AsyncServerClient folder:
$ cd AsyncServerClient/
  1. Build the all projects using dotnet command:
$ dotnet build --configuration Release --output ./bin/Release --verbosity quiet

Warning: You may want to change your hardcoded Server-Client binding addresses from here and here

  1. Run the AsyncServer:
$ dotnet add .\AsyncServer\ package System.Data.SqlClient --version 4.6.0

$ cp .\resources\server.ini .\AsyncServer\bin\Release

$ dotnet run --configuration Release --project .\AsyncServer\
  1. Run the AsyncClient:
$ dotnet run --configuration Release --project .\AsyncClient\

Requirements

  • You should be familiar with C# programming
  • You should be familiar with TCP Socket programming
  • You should be familiar with Handshaking
  • You should be familiar with Asynchronous Sockets
  • You will need a computer on which you have the rights to compile dotnet files

Dependencies

About

AsyncServerClient was created to serve three purposes:

AsyncServerClient teaches you how Async Server-Client works actually as simplified as possibly

  1. To act as a guide to teach how Async Server-Client works using .NET Core

  2. To provide a simplest and easiest way to learn things about Three-Way TCP Handshaking

  3. There is a source for you to develop own Server-Client mechanism in dotNET environment using ServerFramework

Collaborators

Project Manager - Furkan Türkal (GitHub: Dentrax)

Branches

We publish source for the [AsyncServerClient] in single rolling branch:

The master branch is extensively tested and makes a great starting point. Also tracks live changes by commits.

Copyright & Licensing

The base project code is copyrighted by Furkan 'Dentrax' Türkal and is covered by single licence.

All program code (i.e. cs, .md) is licensed under MIT License unless otherwise specified. Please see the LICENSE.md file for more information.

ServerFramework

It was developed and made by Drew 'pushedx' Benton. For more information, please click here

References

While this repository is being prepared, it may have been quoted from some sources.

If there is an unspecified source or if you think that I made a copyright infringement, please contact with me.

Contributing

Please check the CONTRIBUTING.md file for contribution instructions and naming guidelines.

Contact

AsyncServerClient was created by Furkan 'Dentrax' Türkal

You can contact by URL: CONTACT

Best Regards