socket()

서버와 통신할 때 사용할 소켓을 생성할 수 있는 함수.

int s_socket;

s_socket = socket(PF_INET, SOCK_STREAM, 0);
if(-1 == s_socket)
{
    printf("Failed to make the socket\n");
    return (-1);
}
  • 헤더
    • #include <sys/types.h>
    • #include <sys/socket.h>

  • 형태
    • int socket(int domain, int type, int protocol);

  • 인수
    • int domain, 인터넷을 통해 통신할 지, 같은 시스템 내에서 프로세스 끼리 통신할지
      • PF_INET, AF_INET
        • IPv4 인터넷 프로토콜을 사용
      • PF_INET6
        • IPv6 인터넷 프로토콜을 사용
      • PF_LOCAL, AF_UNIX
        • 같은 시스템 내에서 프로세스 끼리 통신
      • PF_PACKET
        • Low level socket을 인터페이스로 사용
      • PF_IPX
        • IPX 노벨 프로토콜을 사용합니다.
    • int type, 데이터의 전송 형태를 지정
      • SOCK_STREAM
        • TCP/IP 프로토콜을 이용
      • SOCK_DGRAM
        • UDP/IP 프로토콜을 이용
    • int  protocol, 통신에 있어 특정 프로토콜 사용을 지정하기 위한 변수, 보통 0

  • 반환 값
    • -1 이외는 소켓 식별자
    • -1 은 실패



저작자 표시
신고