27.3.1. Что такое сокет?

27.3.1. Что такое сокет?

Сокет — это двунаправленный канал между двумя компьютерами в сети, который обеспечивает конечную точку соединения. «Двунаправленный» означает, что данный могут передаваться в двух направлениях — от клиента к серверу и наоборот. Понятие сокета — абстрактное, это как бы программный соединитель, через который обмениваются данными программа-сервер и программа-клиент.

Сокет-интерфейс используется для получения доступа к транспортному уровню протокола TCP/IP и представляет собой набор системных вызовов операционной системы и библиотечных функций на языке С. Все эти функции можно условно разделить на три группы:

? управляющие функции;

? функции установления связи;

? функции сетевого ввода/вывода.

Общий алгоритм работы сетевой программы, использующей сокеты:

1. Подготовить (создать) сокет — функция socket().

2. Связать сокет — функция bind().

3. Установить связь с удаленным компьютером (клиенту — установить связь, а серверу — ожидать установления связи).

4. Произвести обмен данными — функции recv() и send().

5. Завершить сеанс связи — close() и shutdown().

Библиотечные функции для работы с сокетами находятся в заголовочном файле sys/socket.h, поэтому для любой сетевой программы обязательна следующая директива:

#include <sys/socket.h>

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

4.1.1. Что такое X.Оrg

Из книги Fedora 8 Руководство пользователя автора Колисниченко Денис Николаевич

4.1.1. Что такое X.Оrg 4.1.1.1. Немного истории В первых версиях Linux не было графического интерфейса.В апреле 1992 года для Linux была создана система X Window - графическая подсистема Linux.X Window (полное название X Window System) - это не графический интерфейс пользователя, это система,


Что такое CVS?

Из книги Управление исходными текстами. Часть 1. Краткое руководство по CVS автора Рыженков Илья

Что такое CVS? CVS - это система управления версиями. На самом деле, для CVS не важно, версиями чего вы управляете, однако здесь этот инструмент будет рассматриваться в том контексте, в котором он обычно используется - управление исходными текстами при разработке ПО. CVS помогает


(1.9) Что такое DFS?

Из книги Win2K FAQ (v. 6.0) автора Шашков Алексей

(1.9) Что такое DFS? Distributed File System – один из инструментов Active Directory. Он позволяет создавать сетевые ресурсы, в которые могут входить множество файловых систем на различных машинах. Для пользователя Active Directory это абсолютно прозрачно и не имеет никакого значения, где и на каких


1.2. Что такое htb?

Из книги HOWTO по управлению трафиком с помощью tcng и HTB автора Браун Мартин А

1.2. Что такое htb? Hierarchichal Token Bucket — это классовая дисциплина обработки очереди, написанная Мартином Девером (Martin Devera) с упрощенным набором конфигурационных параметров по сравнению с CBQ. Есть много хорошей документации по HTB и ее применению на сайте автора и сайте Стефа Коэна


19.1. Что такое ICQ

Из книги Самоучитель работы на компьютере автора Колисниченко Денис Николаевич

19.1. Что такое ICQ ICQ — один из самых популярных сервисов мгновенного обмена сообщениями. Это своего рода Интернет-пейджер. Аббревиатура ICQ означает «I seek you» («Я ищу тебя»), в России эту программу принято называть «аськой».В общих чертах общение в ICQ выглядит так. Вы


Что такое NAT

Из книги Сетевые средства Linux автора Смит Родерик В.

Что такое NAT Средства NAT позволяют изменять в процессе маршрутизации содержимое TCP- и IP-пакетов. В частности, при NAT-преобразовании изменяется IP-адрес источника и назначения в составе пакета. Ниже описаны ситуации, в которых оправданы подобные изменения


Что такое PDF?

Из книги Наглядный самоучитель работы на нетбуке автора Сенкевич Г. Е.

Что такое PDF? PDF — очень распространенный тип документов, предложенный компанией Adobe. В таком виде публикуют инструкции к технике, различные справочные и рекламные материалы, каталоги товаров, электронные версии журналов и книг. Поскольку документы, сохраненные в виде PDF,


1. Что это такое?

Из книги Первые шаги с Windows 7. Руководство для начинающих автора Колисниченко Денис Н.

1. Что это такое? Точки восстановления системы — это «моментальные снимки» (snapshots) текущего состояния Windows, позволяющие вернуть систему к более раннему состоянию. Конечно, при таком откате будет потеряна часть настроек, включая список последних документов, списки истории,


Что такое АГС?

Из книги Как сделать свой сайт и заработать на нем. Практическое пособие для начинающих по заработку в Интернете автора Мухутдинов Евгений


3.1. Что такое I2P?

Из книги Анонимность и безопасность в Интернете. От «чайника» к пользователю автора Колисниченко Денис Николаевич

3.1. Что такое I2P? В главе 2 мы познакомились с распределенной сетью Tor, позволяющей зашифровать и анонимизировать трафик. Здесь будет рассмотрен другой проект анонимизации – I2P (Invisible Internet Project, проект "Невидимый Интернет"). I2P – это так называемая оверлейная сеть, то есть


Сокет типа «один-к-одному»

Из книги UNIX: разработка сетевых приложений автора Стивенс Уильям Ричард

Сокет типа «один-к-одному» Данный тип сокета был разработан специально для облегчения переноса существующих приложений с TCP на SCTP. Его модель практически идентична описанной в главе 4. Существуют, конечно, некоторые отличия, о которых следует помнить (в особенности, при


Сокет типа «один-ко-многим»

Из книги Описание языка PascalABC.NET автора Коллектив РуБоард

Сокет типа «один-ко-многим» Сокет типа «один-ко-многим» дает разработчику приложения возможность написать сервер, не использующий большого количества дескрипторов сокетов. Один дескриптор для такого сервера будет представлять несколько ассоциаций, подобно сокету UDP,


Пример: функция bind и доменный сокет Unix

Из книги автора

Пример: функция bind и доменный сокет Unix Программа, показанная в листинге 15.2, создает доменный сокет Unix, с помощью функции bind связывает с ним полное имя и затем вызывает функцию getsockname и выводит это полное имя.Листинг 15.2. Связывание полного имени с доменным сокетом


28.4. Ввод через символьный сокет

Из книги автора

28.4. Ввод через символьный сокет Первый вопрос, на который следует ответить, говоря о символьных сокетах, следующий: какие из полученных IP-дейтаграмм ядро передает символьному сокету? Применяются следующие правила:1. Получаемые пакеты UDP и TCP никогда не передаются на


Что такое .NET

Из книги автора

Что такое .NET Платформа Microsoft .NET - это комплекс программ, устанавливаемый поверх операционной системы и обеспечивающий выполнение программ, написанных специально для .NET. .NET-программы компактны, пользуются единым набором типов данных и библиотек. Компания Microsoft активно