
Learn how Linux sockets work as file descriptors via system calls, and how to create, bind, listen, accept, connect, and read and write between local and remote processes.
bind assigns a socket address with a generic address structure and length; the server listens with a backlog, accepts connections to create new client sockets, then reads and writes.
Build a practical echo client by creating a socket, connecting to a server, and exchanging a hello message with the server before closing the connection.
Compare echo and concurrent servers, and learn how fork creates child processes to handle multiple clients in parallel using a concurrent server.
Explore how a concurrent server uses forked child processes, wait and signal system calls to obtain termination status, and manage jambi and jumbe processes with a signal handler.
Build a UDP server using sockets, bind to a network address, and receive datagrams from clients into a buffer.
Learn how the select system call monitors multiple fds with read, write, and except sets. Understand nfds, timeouts, and the workflow from a listening socket to serving ready descriptors.
Practice the practical implementation of the select system call by building a server that uses fd sets to monitor listening and client sockets, accepts connections, and reads and writes data.
Do you want to learn Linux Socket programming? If yes then we have a good news for you.
This course is designed for people who want to learn Linux socket programming from scratch!
Here in this course, we are going to cover ;
Introduction to Sockets
Types of Sockets - Local Sockets
Socket System calls
Practical Local Socket Programming
Byte order Conversion and functions
Internet Socket Address Binding
TCP Echo Server
TCP Concurrent Server
UDP server
TCP Server with I/O Multiplexing