-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
-
17
-
18
-
19
-
20
-
21
-
22
-
23
-
24
-
25
-
26
-
27
-
28
-
29
-
30
-
31
-
32
-
33
-
34
-
35
-
36
-
37
-
38
-
39
-
40
-
41
-
42
-
43
-
44
-
45
-
46
-
47
-
48
-
49
-
50
-
51
-
52
-
53
-
54
-
55
-
56
-
57
-
58
-
59
-
60
-
61
-
62
-
63
-
64
-
65
-
66
-
67
-
68
-
69
-
70
-
71
-
72
-
73
-
74
-
75
목차
1. 소켓의 역사
2. 소켓의 본질
3. 리눅스 커널과 응용 프로그램의 소켓 참조
4. 소켓 C 프로그램 예제
2. 소켓의 본질
3. 리눅스 커널과 응용 프로그램의 소켓 참조
4. 소켓 C 프로그램 예제
본문내용
* 소켓의 정의
소켓은 소프트웨어로 작성된 통신 접속점
소켓은 서버와 서로 특정한 규약을 사용하여 데이터를 전송하는 방식
네트워크 응용 프로그램은 소켓을 통해 데이터 송수신
소켓 인터페이스 - 응용 프로그램에서 TCP/IP를 이용하는 창구 역할을 하는 인터페이스
...
* 소켓과 파이프의 차이점
소켓은 lseek(2)할 수 없다.
소켓은 위치 주소를 가지지만, 파일과 파이프는 네트워크 주소를 가질 수 없다.
소켓은 서로 다른 옵션을 사용할 수 있으며, 소켓에 대한 질문과 ioctl(2)를 사용할 수 있다.
소켓은 입/출력을 위해 올바른 상태를 가져야 하지만, 오픈된 파일은 어떠한 때라도 읽거나 쓸 수 있다.
...
소켓의 생성
Socketpair(2) 함수
int socketpair(int domain, int type, int protocol, int sv[2]);
소켓의 도메인
소켓의 형태
소켓이 사용하는 프로토콜
소켓을 생성하고 참조하는 파일 기술자를 받기 위한 배열 포인터
...
소켓의 입출력 실행
read(2), write(2), close(2) 함수 호출
#include
ssize_t read(int fd, void *buf, size_t count);
ssize_t write(int fd, const void *buf, size_t count);
int close(int fd);
read(2) : 파일 기술자의 이용 가능한 값을 count 바이트에 정의된 값 만큼 buf 에 할당
리턴값 : 읽은 바이트 숫자
...
Client/Server 예제(계속)
Client/Server 예제-Listing 1.3(Client)
78: printf(`Child sending request `%s`
`,msgp);
79: fflush(stdout);
소켓은 소프트웨어로 작성된 통신 접속점
소켓은 서버와 서로 특정한 규약을 사용하여 데이터를 전송하는 방식
네트워크 응용 프로그램은 소켓을 통해 데이터 송수신
소켓 인터페이스 - 응용 프로그램에서 TCP/IP를 이용하는 창구 역할을 하는 인터페이스
...
* 소켓과 파이프의 차이점
소켓은 lseek(2)할 수 없다.
소켓은 위치 주소를 가지지만, 파일과 파이프는 네트워크 주소를 가질 수 없다.
소켓은 서로 다른 옵션을 사용할 수 있으며, 소켓에 대한 질문과 ioctl(2)를 사용할 수 있다.
소켓은 입/출력을 위해 올바른 상태를 가져야 하지만, 오픈된 파일은 어떠한 때라도 읽거나 쓸 수 있다.
...
소켓의 생성
Socketpair(2) 함수
int socketpair(int domain, int type, int protocol, int sv[2]);
소켓의 도메인
소켓의 형태
소켓이 사용하는 프로토콜
소켓을 생성하고 참조하는 파일 기술자를 받기 위한 배열 포인터
...
소켓의 입출력 실행
read(2), write(2), close(2) 함수 호출
#include
ssize_t read(int fd, void *buf, size_t count);
ssize_t write(int fd, const void *buf, size_t count);
int close(int fd);
read(2) : 파일 기술자의 이용 가능한 값을 count 바이트에 정의된 값 만큼 buf 에 할당
리턴값 : 읽은 바이트 숫자
...
Client/Server 예제(계속)
Client/Server 예제-Listing 1.3(Client)
78: printf(`Child sending request `%s`
`,msgp);
79: fflush(stdout);
소개글