Sending Binary Data over Multi-Threaded Servers in C

Veröffentlicht am: 27 Februar 2025
auf dem Kanal: Tralie Thinks Through
364
20

We discuss how to create a thread-safe multi-threaded server in C, and I show how to send and receive binary data. I finish by looking at this traffic in wireshark.

Code can be found here:
https://github.com/ursinusnetworks/Mo...

Related assignment at this link:
https://ursinusnetworks.github.io/S20...

Also note that Beej's guide explains an alternative way to handle multiple clients by forking processes in C:
https://beej.us/guide/bgnet/html/spli...


Table of contents:
00:40 Modifications to getaddrinfo() for server

04:30 bind() and listen()

08:06 accept() incoming connections and create new full duplex sockets

13:00 Printing IP address of newly connected clients

16:00 recv() on new socket

18:36 Setting up pthreads for multithreaded socket connections

22:36 Passing along multiple parameters to thread servicing methods

26:15 Receiving data in threads

29:30 Sending binary headers from client to server

35:20 Being careful about endianness before sending binary data

38:47 Receiving binary header and body on the server

44:10 Locking shared variables between threads with mutexes

49:53 Be very careful to unlock the locks when you're finished!

51:30 Examining 3 way handshake and traffic in wireshark


Auf dieser Seite können Sie das Online-Video Sending Binary Data over Multi-Threaded Servers in C mit der Dauer stunde minuten sekunde in guter Qualität ansehen, das der Benutzer Tralie Thinks Through 27 Februar 2025 hochgeladen hat, den Link mit Freunden und Bekannten teilen, dieses Video wurde auf Youtube bereits 364 Mal angesehen und es wurde von 20 den Zuschauern gefallen. Viel Spaß beim Betrachtenden Zuschauern gefallen!