본문 바로가기

카테고리 없음

TIL 0519 소켓

Socket이란?

네트워크를 경유하는 프로세스 간 통신의 종착점.

프로그램이 서로 데이터를 주고받을 수 있게끔 양쪽에 모두 생성되는 통신 단자. 

클라이언트에서 서버로 요청을 보내고 받는 형식인 http 통신과 달리 서버와 클라이언트에 양방향 연결을 이루어준다. 

위와 같은 속성으로 스트리밍, 채팅 등 데이터를 실시간으로 주고 받아야하는 경우에 적합하다.

http와 달리 connection을 계속해서 유지하기 때문에 리소스가 많이 소모된다. 

유니캐스트 

네트워크에 연결되어 있는 주소 중 식별된 하나의 네트워크 목적지에 1:1로 전송한다. 

1:1 통신이기 때문에 CPU 성능에 문제를 주지 않는다. 

브로드캐스트 

수신자를 특정하지 않고, 네트워크에 연결되어있는 모든 시스템에 모두 전송한다. 

브로드캐스팅용으로 주소가 따로 정해져있고, 전체 전송하는 만큼 트래픽 증가, CPU 성능 저하 문제가 있을 수 있다. 

멀티캐스트

한번의 송신으로 여러 컴퓨터에 전송하는  1:N 전송 방법이다. 

그룹에 속해있는 모든 수신지에게 전달.