Библиотека




Скачать 28.71 Kb.
НазваниеБиблиотека
Дата публикации17.03.2013
Размер28.71 Kb.
ТипДокументы
odtdocs.ru > География > Документы
ИМЯ

socket – создание конечной точки связи.

БИБЛИОТЕКА

Стандартная библиотека C (libc, -lc)

СИНТАКСИС

#include int socket(int domain, int type, int protocol); ОПИСАНИЕ socket () создание конечной точки связи и возвращения дескриптора. Параметры области указывают область связи в котором происходит сообщение; выбор используемого семейства протокола. Это семейство определено в файле включением . В натоящее время понимает форматы: PF_LOCAL Область местных протоколов (ранее UNIX) PF_INET Интернет протоколы ARPA PF_INET6 Протоколы IPv6 (Интернет протокол 6 версии) PF_ISO Протоколы ISO PF_NS Протоколы XEROX системы интернет PF_IMPLINK Хозяин IMP в канале IMP PF_APPLEATATLK Протоколы AppleTalk PF_BLUETOOTH Протоколы Bluetooth socket указанного типа,определяет семантику соединения. В настоящее время определены следующие типы: SOCK_STREAM SOCK_DGRAM SOCK_RAW SOCK_SEQPACKET SOCK_RDM Тип SOCK_STREAM последовательно обеспечивает, надёжное, двустороннюю связь основанную на байтовом потоке. Поддерживается передача механизма диапазон данных. SOCK_DGRAM поддерживает socket datagram(ненадёжные соединения сообщений фиксировано (обычно небольшой) максимальной длины). SOCK_SEQPACKET socket может обеспечить надёжную последовательную двустороннюю связь на основе передачи данных путём datagram фиксированной максимальной длины; получатель может быть обязан читать весь пакет с чтением каждого системного вызова. Этот объект является протоколом и может быть только для PF_NS. SOCK_RAW socket обеспечивает доступ к внутренним сетевым протоколам и интерфейсам. Тип SOCK_RAW, и SOCK_RDM, который планируется но ещё не реализован, здесь не описываются. Указание работы socket конкретный протокол. Обычно существует только один протокол чтобы поддерживать определённый тип socket в рамках одной семьи протоколов. Однако, вполне возможно более существование, и в этом случае определённый протокол должен быть указан следующим образом. Использовать номер протокола в обособленном соединении области в которой осуществляется связь; см protocols(5). Тип socket SOCK_STREAM является двусторонним байтовым потоком. Socket потока должен быть в состоянии подключения до отправки и получения данных. Соединение с другим socket создаётся вызовом connect(2). После подключения, данные могут быть переданы использованием вызова read(2) и write(2) или какой-либо вариант вызова recv(2). Когда сессия выполнения можно использовать closed(2). Могут так же из диапазона передаваться с помощью send(2) и получения как описано recv(2). Протоколы связи использующие SOCK_STREAM гарантируют что данные не потеряются или дублируются. Если часть данных буферного пространства протокола равноправного пользователя не могут быть успешно переданы в течении необходимого периода времени, то соединение считается сломанным и будет вызывать возвращаемую ошибку -1 и с определенным кодом глобальной перменной ошибки ETIMEOUT. Протоколы socket не обязательно держать ``тёплыми``, заставляя передавать каждую минуту отсутствия деятельности. Указание ошибки если в ответ простой связи в течении длительного периода времени (напирмер 5 минут). Сигнал SIGPIPE возникает если процесс отправляет на сломанный поток; это приводит к наивному процессу, который не обрабатывает сигнал, чтобы выйти. Socket SOCK_SEQPACKET используют теже самые вызовы; что SOCK_STREAM. Разница лишь в том что вызов read(2) будет возвращать количество запрашиваемых данных, и все оставшиеся в прибывание пакета будет отброшено. Socket SOCK_DGRAM и SOCK_RAW позволяют отправлять datagram корреспонденцией от имени вызываемой send(2). Datagrmma как правило полученная от recvfrom(2), возвращают следующую datagram`у с обратным адресом. Вызов fcntl(2) может быть использован для указания группы процессов ля получения сигнала SIGUP, при получении диапазона данных. Это также может произвести не блокируемое событие I/O через SIGIO. Операции socket контролируются параметром уровня socket. Эти параметры определены в файле . setsocktopt(2) и getsockopt(2) системные вызовы используемые для установки и получения параметров, соответственно. ВОЗВРАЩАЕМЫЕ ПЕРЕМЕННЫЕ Если произошла ошибка возвращение -1, в противном случае возвращаемое значение ссылка дескриптора socket. ОШИБКИ Не выполняется вызов socket(): [EACCES] Запрещено создание и/или проткола запрещено. [EAFNOSUPPORT] Не поддерживается (область) семьи протокола или указанная область не поддерживает эту семью протокола. [EMFILE] Полная таблица для каждого дескриптора процесса. [ENFILE] Полная таблица файловой системы. [ENOBUFS] Недостаточно доступного буферного пространства. Socket не может быть создан, пока не освобождены необходимые ресурсы. [ERROTONOSUPPORT] Не поддерживается семейство проколов или указанный протокол не поддерживается в этой области. [ERROTOTYPE] Тип socket не поддерживается протоколом. ТАКЖЕ accept(2), bind(2), connect(2), getsockname(2), getsockopt(2), ioctl(2), listen(2), poll(2), read(2), recv(2), select(2), send(2), setsockopt(2), shutdown(2), socketpair(2), write(2), getprotoent(3) Stuart Sechrest, An Introductory 4.4BSD Interprocess Communication Tutorial. (см /usr/share/doc/psd/20.ipctut) Samuel J. Leffler, Robert S. Fabry, William N. Joy, Phil Lapsley, Steve Miller, and Chris Torek, Advanced 4.4BSD IPC Tutorial. (см /usr/share/doc/psd/21.ipc) ИСТОРИЯ Функция socket() впервые появилась в 4.2BSD.

Добавить документ в свой блог или на сайт

Похожие:

Конкурсная игровая программа «Лесные тропинки»
Гос публичная историческая библиотека, межпоселенческая центр библиотека Сосновского района

Панорама деятельности Сланцевской центральной городской библиотека...
«Матушка- природа для лечения народа», в открытии выставки приняли участие 10 человек

Либертарная библиотека
Особого Совещания при Коллегии огпу от 12 июля 1929 года об административной высылке. Его книга "Достоевский" осталась в рукописи,...

Правила пользования библиотекой с. Рождественск, 2012 Правила пользования...
Правила пользования мбук «Рождественская сельская библиотека им. Ф. Павленкова» Рождественского сельского поселения правовой акт,...

I. Общие положения Библиотека является структурным подразделением...
Библиотека является структурным подразделением боу г. Омска «сош №53»  (далее – школа), участвующим в учебно-воспитательном процессе...

Сервер Webio маленький переносной веб-сервер, проектированный как...
Сервер Webio маленький переносной веб-сервер, проектированный как библиотека для включения во встроенные системы или как Основанный...

Сервер Webio маленький переносной веб-сервер, проектированный как...
Сервер Webio маленький переносной веб-сервер, проектированный как библиотека для включения во встроенные системы или как Основанный...

Сервер Webio маленький переносной веб-сервер, проектированный как...
Сервер Webio маленький переносной веб-сервер, проектированный как библиотека для включения во встроенные системы или как Основанный...

Сервер Webio маленький переносной веб-сервер, проектированный как...
Сервер Webio маленький переносной веб-сервер, проектированный как библиотека для включения во встроенные системы или как Основанный...

Сервер Webio маленький переносной веб-сервер, проектированный как...
Сервер Webio маленький переносной веб-сервер, проектированный как библиотека для включения во встроенные системы или как Основанный...

Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
odtdocs.ru
Главная страница