본문 바로가기
컴퓨터공학/소켓 프로그래밍(tcp ip programming)

소켓이란

by 바코94 2019. 8. 4.

데이터 송수신을 위해 운영체제가 제공해주는 소프트웨어 모듈. 

 

복잡한 내부 구현과 물리적인 기능을 다 구현해 놓은 형태이기 때문에 사용하기 용이하다.

 

소켓 = 전화기 라고 이해하면된다.

 

서버측 소켓은 socket() -> bind() -> listen() -> accept() 순으로 실행되며

클라이언트측 소켓은 socket() -> connect() 순으로 실행

 

서버측 소켓은 

1. 전화기를 구입한다 ( socket() -> 소켓을 만든다.)

2. 전화기 번호를 부여받는다 (bind() -> 소켓에 IP주소와 PORT번호를 할당한다.)

3. 전화선을 연결한다. ( listen() -> 클라이언트 측 요청을 받을 수 있는 상태로 만든다.)

4. 전화 받을 준비를 하다가 받는다. ( accept() -> 데이터 요청을 받는다.)

5. 전화 통화를 한다. ( 데이터 송수신을 자유롭게 한다.)

 

클라이언트측 소켓은 자동화가 되있어 서버측 소켓보다 간단하다.

자동화의 내용은 이후 학습한다.

1. socket() 

2. connect()

3. 데이터 송수신.

 

 

'컴퓨터공학 > 소켓 프로그래밍(tcp ip programming)' 카테고리의 다른 글

sockaddr_in 멤버 분석  (0) 2019.08.05
socket() 인자  (0) 2019.08.04
저수준 함수란?  (0) 2019.08.04
socket in window  (0) 2019.08.04
socket in linux  (0) 2019.08.04