네트워크

accept(2) 소켓에 연결을 받아들인다. 1.1절. 사용법 #include #include int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen); 1.2절. 설명 accept() 함수는 연결지향 소켓 타입 (SOCK_STREAM, SOCK_SEQPACKET, SOCK_RDM)에 사용된다. (e.g. TCP) 평상시에는 block되어있다가 3HSK이 성공하면 complete queue에서 해당 클라이언트 정보를 가져와서 connected socket을 만든다. sockfd 는 socket() 로 만들어진 end-point(듣기 소켓)을 위한 파일지정자이다. addr 는 sockaddr 구조체에 대한 포인터이다. 연결이 성공되면 이 구조체를..
listen(2) 소켓(:12)의 연결 대기열(:12)을 만든다. 사용법 #include int listen(int sockfd, int backlog); 설명 서버 프로그램은 socket(2)함수를 이용해서 클라이언트(의 연결을 받아들일 소켓을 만들게 된다. 클라이언트의 연결은 listen소켓을 통해서 이루어진다. 클라이언트는 connect(2)를 호출해서 서버에 연결을 시도하고, 3HSK이 성공하면 서버와 완전한 연결이 만들어 진다. 만들어진 연결은 queue에 들어가게 된다. listen(2) 시스템콜은 SOCK_STREAM과 SOCK_SEQPACKET에만 사용된다. (== TCP, SCTP) sockfd는 앞서 bind() 함수를 통해 바인딩 된 소켓의 소켓 디크립터이다. backlog는 연결이 ..
bind(2) 소켓에 특성을 부여(정의)한다. 1.1절. 사용법 #include #include int bind(int sockfd, struct sockaddr *my_addr, socklen_t addrlen); 1.2절. 설명 sockfd는 socket(2) 함수를 통해서 만들어진 소켓지정번호이다. bind 는 이 sockfd 에 my_addr 로 대변되는 특성을 부여한다. my_addr는 sockfd 가 통신을 하기 위해서 필요한 정보( "port", "인터넷주소", "소켓 흐름종류" 등등)를 포함하고 있다. addrlen 1.3절. 반환 값 성공했을 경우 0 실패했을 경우 -1을 반환하고 적당한 errno 값을 설정한다. 참고 링크 https://wvww.joinc.co.kr/w/man/2/bi..
connect(2) 한 소켓의 연결을 초기화한다. 사용법 #include /* See NOTES */ #include int connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen); 설명 서버의 주소(addr)로 접속하여 connection을 유지합니다. connect(2) 함수는 socket(2)의 type 설정시 SOCK_STREAM, SOCK_SEQPACKET 등으로 설정된 connection-base socket의 경우에만 가능합니다. 두번째 파라미터인 struct sockaddr는 Address Family에 따라서 다른 구조체를 갖습니다. sockfd - socket(2)의 두번째 parameter인 type이 SOCK_STRE..
가을맛
'네트워크' 카테고리의 글 목록 (2 Page)