Skip to content

A project to learn C++ socket programming by building a custom server. It handles multiple client connections, manages data transmission, and implements basic error handling. Suitable for beginners in networking and C++.

Notifications You must be signed in to change notification settings

SarathiPrabu/http-server-cpp

Repository files navigation

C++ Socket Programming Server

This repository is my personal project to learn about socket programming and deepen my knowledge of C++. The project focuses on building a custom server using C++ to explore and understand the fundamentals of socket programming, enabling efficient communication between devices over a network. The server is designed to handle multiple client connections concurrently, demonstrating basic concepts such as socket creation, binding, listening, and data transmission. This project also includes the use of modern C++ features.

Features

  • Socket Creation: Establish and configure server sockets.
  • Concurrent Connections: Handle multiple client connections concurrently, showcasing efficient multithreading techniques.
  • Data Transmission: Send and receive messages between server and clients.
  • Error Handling: Implement basic error checking and handling for robustness.
  • Modern C++ Features: Utilizes std::optional for safe and expressive handling of optional values.

Getting Started

To get started, clone the repository and follow the instructions in the README to set up and run the server on your machine.

Prerequisites

  • Basic knowledge of C++ programming
  • Understanding of networking concepts
  • A compiler that supports C++11 or higher

How to Use

  1. Clone this repository.
  2. Compile the source code using your preferred C++ compiler.
  3. Run the server and connect clients to test the setup.

Contributing

Feel free to open issues or submit pull requests if you have improvements or features to add.

License

This project is licensed under the MIT License.

About

A project to learn C++ socket programming by building a custom server. It handles multiple client connections, manages data transmission, and implements basic error handling. Suitable for beginners in networking and C++.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •