본문 바로가기

DEV LOGS

[Windows Socket]소켓의 개념

소켓 개념 이해

(1) 전화망에 비유한 소켓

(2) 전화망에 비유한 소켓 세부적으로 살펴보기


다양한 관점에서 보는 소켓

(1) 데이터 타입

- 소켓은 파일 디스크립터(file descriptor) 혹은 핸들(handle)과 유사하다.


- 파일 입출력 코드 VS 소켓 통신 코드

1
2
3
4
int fd = open("myfile", …);        // 파일 생성
read(fd, …)        // 데이터 읽기
write(fd, …)    // 데이터 
cs
>> 파일 입출력

1
2
3
4
SOCKET sock = socket(…);    // 소켓 생성
recv(sock,…)    // 데이터 받기
send(sock,…)    // 데이터 
cs

>> 소켓 통신


(2) 통신 종단점

- 소켓은 응용 프로그램 관점에서 통신의 출발점과 도착점이라고 간주할 수 있다.



(3) 네트워크 프로그래밍 인터페이스

- TCP/IP 프로토콜의 관점에서 소켓은 네트워크 프로그래밍 인터페이스에 불과하다. 따라서 응용 프로그램이 통신하기 위해 양쪽 모두 소켓을 사용해야 하는 것은 아니며, 같은 프로토콜을 사용하고 정해진 형태와 절차에 따라 데이터를 주고받으면 된다.



'DEV LOGS' 카테고리의 다른 글

[Centos7] Mysql 설치  (0) 2018.07.29
[Centos7] Nginx 설치  (0) 2018.07.29
[Windows Socket]데이터 전송 원리  (0) 2018.07.20
[Windows Socket]TCP/IP 프로토콜 구조  (0) 2018.07.19
[GIT]윈도우 10 Git 설치  (0) 2018.07.18