기억저장소

기억저장소

Computer Networking

[열혈TCP/IP] 함수 정리

roaminpixel 2014. 6. 3. 18:05
728x90

3장

in_addr_t inet_addr( const char * string );

- 문자열로 표현된 IP 주소를 32비트 정수형으로 변환해 주는 함수

- 변환과정에서 네트워크 바이트 순서로의 변환도 동시에 진행된다.

- 성공 시 빅엔디안으로 변환된 32비트 정수 값, 실패 시 INADDR_NONE 반환


int inet_aton (const char * string, struct in_addr * )

- addr : 변환된 정보를 저장할 in_Addr 구조체 변수의 주소 값 전달


int sokcet(int domain, int type, int protocol)

- domain : 소켓이 사용할 프로토콜 체계 정보 전달

- type : 소켓의 데이터 전송방식에 대한 정보 전달

- protocol : 두 컴퓨터간 통신에 사용되는 프로토콜 정보 전달


int bind(int sockfd, struct sockaddr *myaddr, socklen_t addrlen)

- sockfd : 주소정보를 아이피, 포트를 할당할 소켓의 파일 디스크립터

- myaddr : 할당하고자 하는 주소정보를 지니는 구조체 변수의 주소 값

- addrlen : 두 번째 인자로 전달된 구조체 변수의 길이 정보


int listen( int sock, int backlog)

- 성공 시 0, 실패시 -1

- sock : 연결요청 대기상태에 두고자 하는 소켓의 파일 디스크립터 전달, 이 함수의 인자로 전달된 디스크립터의 소켓이 서버 소켓(리스닝소켓)이 된다.

- backlog : 연결요청 대기 큐의 크기정보 전달. 5가 전달되면 큐의 크기가 5. 클라이언트 연결요청을 5개까지 대기시킬 수 있다.


int accept( int sock, struct sockaddr * addr, socklen_t * addrlen)

- 성공 시 생성된 소켓의 파일 디스크립터, 실패 시 -1 반환

- sock : 서버 소켓의 파일 디스크립터 전달

- addr : 연결 요청한, 클라이언트 주소정보를 담을 변수의 주소 값.

- addrlen : 


[클라이언트] int connect ( int sock, struct sockaddr * servaddr, socklen_t addrlen)

- 성공 시 0, 실패시 -1

- sock : 클라이언트 소켓 파일 디스크립터 

- servaddr : 연결요청 할 서버의 주소정보를 담은 변수의 주소 값 전달

- addrlen : ~~~ 바이트 단위로 전달.

- connect 함수 호출 시 자동으로 소켓에 IP와 PORT가 할당된다.


pid_t wait( int * statloc);

- 성공 시 종료된 자식 프로세스의 ID, 실패 시 -1 반환

- 부모가 자식에게 요청하는 함수. (정상적으로 종료됐는 지 확인한다.)

- 임의의 자식 프로세스가 종료될 때까지 블로킹 상태에 놓인다는 특징. 함수 호출에 주의!


pid_t waitpid( pid_t pid, int * statloc, int options );

- 성공 시 종료된 자식 프로세스의 ID (혹은 O), 실패 시 -1 반환

- pid : 자식 프로세스의 ID

- statloc : wait 함수의 매개변수 statloc과 동일한 의미

- options : 헤더파일 sys/wait.h에 선언된 상수 WNOHANG을 인자로 전달하면, 종료된 자식 프로세스가 존재하지 않아도 블로킹 상태에 있지 않고, 0을 반환하면서 함수를 빠져나온다.


void (*signal( int signo, void (*func)(int) ) ) (int);

- 시그널 발생시 호출되도록 이전에 등록된 함수의 포인터 반환








Chapter 11 프로세스간 통신 (Inter Process Communication)


int pipe( int filedes[2]);

- 성공 0, 실패 -1 반환

- [0] 수신하는 파일 디스크립터, 출구

- [1] 전송하는 파일 디스크립터, 입구

728x90
반응형

'Computer Networking' 카테고리의 다른 글

1,2,3,4  (0) 2014.06.10
네트워크 함수관련 찾기 좋은 사이트  (0) 2014.06.07
computer networking - 내용정리  (0) 2014.06.03
중간,기말,프로젝트  (0) 2014.06.02
[TCP/IP] 1. 네트워크 프로그래밍의 시작  (0) 2014.06.02