BeOS: Porting UNIX Applications

Chapter 22: Networking

Overview

Networking was once an expensive extension to the operation of computers. In the early days of networking, the cabling was difficult to fit and the cards expensive to purchase; and the software available for communicating between machines was unreliable and difficult to use and didn't really provide much benefit over the traditional "sneaker-net" method of carrying disks around the office. Today the network forms an integral part of the whole computing experience.

The implementation of network services relies on some very simple principles and some basic protocols that define how machines communicate. Depending on how and what you want to communicate, there may be further layers above these protocols that make the implementation easier. The main protocol in modern use is the socket a simple channel that allows two-way communication between machines, using Standard C functions for transferring information. Sockets are the basic level of communication on the Internet.

In this chapter we will take a look at the BeOS implementation of sockets and the utility functions used to support them. Sockets are not specified in the POSIX specifications; the closest standard is the original BSD implementation.

22.1 Sockets

Sockets were first introduced in the Berkeley 4.2 version of UNIX in 1981. They have since become a major component of the network protocols that govern the Internet and a large part of the general network communication methods. They are now supplied as part of all variants of UNIX, and numerous implementations are available on the PC, the Mac, and...

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Network Monitoring Software
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.