728x90

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

//성공시 파일디스크립터, 실패 시 -1을 리턴//

 

domain : 생성할 소켓이 통신을 하기 위해 사용할 프로토콜 체계(Protocol Family)를 설정한다.

type : 소켓이 데이터를 전송하는데 있어서, 사용하게 되는 전송 타입을 설정해 준다.

protocol : 두 호스트간에 통신을 하는데 있어서 특정 프로토콜을 지정 하기위해 사용된다.

 

1. Domain(Protocol Family)

 

PF_INET : IPv4 인터넷 프로토콜

PF_INET6 : IPv6 인터넷 프로토콜

PF_LOCAL : Local 통신을 위한 UNIX 프로토콜

PF_PACKET : Low level socket을 위한 인터페이스

PF_IPX : IPX 노벨 프로토콜

 

2. Type(소켓의 타입)

 

SOCK_STREAM

인터넷 기반 연결 지향 소켓(TCP 소켓)

SOCK_DGRAM

인터넷 기반 비연결 지향 소켓(UDP 소켓)

 

3. Protocol

 

IPPROTO_TCP : TCP를 기반으로 하는 소켓을 생성

IPPROTO_UDP : UDP를 기반으로 하는 소켓을 생성

 

 

예제

socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);

또는

socket(PF_INET, SOCK_STREAM, 0);

 

socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP);

또는

socket(PF_INET, SOCK_DGRAM, 0);

 

728x90
Posted by 정망스
,


맨 위로
홈으로 ▲위로 ▼아래로 ♥댓글쓰기 새로고침