데이터 송수신을 위해 운영체제가 제공해주는 소프트웨어 모듈.
복잡한 내부 구현과 물리적인 기능을 다 구현해 놓은 형태이기 때문에 사용하기 용이하다.
소켓 = 전화기 라고 이해하면된다.
서버측 소켓은 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 |