What is “Sockets”?

- An Application Programming Interface (API) used for InterProcess Communications (IPC).
- A well defined method of connecting two processes, locally or across a network.
- Protocol and Language Independent
- Often referred to as Berkeley Sockets or BSD Sockets

Sockets are a protocol independent method of creating a connection between processes. Sockets can be either I connection based or connectionless: Is a connection established before communication or does each packet describe the destination?

- I packet based or streams based: Are there message boundaries
or is it one stream?
- I reliable or unreliable. Can messages be lost, duplicated,
reordered, or corrupted?

Find the complete tutorial attached!