본문 바로가기
면접공부/네트워크

TCP || UDP , Http통신 || Socket통신

by Box 2021. 6. 1.
728x90

TCP(Transmission Control Protocol) 연결지향적 프로토콜

- 클라이언트와 서버가 연결된 상태에서 데이터를 주고받는 프로토콜을 의미합니다.

 

UDP(User Datagram Protocol) 비연결지향적 프로토콜

- 데이터를 주고받을때 연결절차를 거치지않고 발신자가 일방적으로 데이터를 발신하는 방식을 의미합니다.

TCP와 UDP의 공통점
포트 번호를 이용하여 주소를 지정
데이터 오류 검사를 위한 체크섬 존재
  TCP UDP
연결방식 연결형서비스 비 연결형 서비스
패킷 교환 방식 가상 회선 방식 데이터그램 방식
전송 순서 전송 순서 보장 전송 순서가 바뀔 수 있음
수신 여부 확인 수신 여부를 확인함 수신 여부를 확인하지 않음
통신 방식 1:1 통신만 가능 1:1 / 1:N / N:N 통신 모두 가능
신뢰성 높음 낮음
속도 느림 빠름

 

Http통신

-client의 요청이 있을때만 서버가 응답하여 해당 정보를 전송하고 곧바로 연결을 종료하는 방식

 

[ Http 통신의특징 ]

  • Client가 요청을 보내는 경우에만 Server가 응답하는 단방향 통신이다.
  • Server로부터 응답을 받은 후에는 연결이 바로 종료된다. 
  • 실시간 연결이 아니고, 필요한 경우에만 Server로 요청을 보내는 상황에 유용하다.
  • 요청을 보내 Server의 응답을 기다리는 어플리케이션(Android or Ios)의 개발에 주로 사용된다

Socket통신

-client가 특정 port를 통해 실시간으로 양방향 통신을 하는 방식

 

[ Socket 통신의 특징 ]

  • Server와 Client가 계속 연결을 유지하는 양방향 통신이다.
  • Server와 Client가 실시간으로 데이터를 주고받는 상황이 필요한 경우에 사용된다.
  • 실시간 동영상 Streaming이나 온라인 게임 등과 같은 경우에 자주 사용된다.