C言語-socket関数



socketシステムコール

TCPまたはUDP通信を行う場合に、OSにソケットの作成を依頼します。

#include<sys/types.h>
#include<sys/socket.h>

int socket(int domain, int type, int protocol);

domain

プロトコルファミリを指定します。

AF_INET インターネット(INET)ドメインの2ホスト間プロセス通信(UNIXネットワークソケット)。
AF_UNIX UNIXドメインの1ホスト内プロセス通信。ファイルシステムソケット。
AF_ISO ISO標準プロトコル
AF_NS Xerox Network Systemsプロトコル

type

通信の種類を定義します。

SOCK_STREAM 順次双方向バイトストリーム。コネクション型の信頼性が高い通信となります。
SOCK_DGRAM データグラム。ベストエフォート型の通信となります。
SOCK_ROW 直接IPを用いた通信を行なう

protocol

エンドツーエンドプロトコルを指定します。

0 自動設定(AF_INET&SOCK_RAWでIPを直接扱いたい場合も含む)
IPPROTO_TCP TCP/IP(AF_INET&SOCK_STREAMの場合。0も可。)
IPPROTO_UDP UDP/IP(AF_INET&SOCK_DGRAMの場合。0も可。)
IPPROTO_RAW ICMP

戻り値

ソケット記述子 成功

-1 失敗


ソケットの破棄

ソケットディスクリプタをclose()します。

int close( int socket );

関連

C言語-ソケットプログラミング



スポンサード リンク