Introduction

Expanding the Programming Challenge

Most programming targets immediate functions or tasks on your desktop or laptop. These tasks rarely communicate with more than just the mouse, keyboard, display, and file system. A greater programming challenge involves several programs on different computers connected through a network channel. Network programming expands the challenge, because you have to coordinate tasks and send assignments.

The fundamental unit of all network programming in Linux (and most other operating systems) is the socket. In the same way that file I/O connects you to the file system, the socket connects you to the network. The socket is a junction that your program uses to address, send, and receive messages.

Network or ...

Get Linux® Socket Programming now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.