소켓 통신(TCP/UDP)

TCP(Transmission Controll Protocol)

  • 연결형 서비스를 제공한다.
  • 높은 신뢰성 보장한다.
  • 연결의 설정(3-way handshaking)
  • 연결의 해제(4-way handshaking)
  • 데이터의 흐름 제어, 혼잡 제어
    • 흐름제어 : 수신자 버퍼 오버플로우 방지
    • 혼잡제어 : 네트워크 내 패킷 수가 과도하게 증가하는 현상 방지
  • 전이중, 점대점 서비스(양뱡향 송수신 서비스)
  • 신뢰성이 중요한 파일 교환과 같은 경우에 쓰인다.

UDP(User Datagram Protocol)

  • 비연결형 서비스를 제공한다.
  • 신뢰성이 낮다.
  • 데이터의 전송 순서가 바뀔 수 있다.
  • 데이터 수신 여부 확인 안함(3-way handshaking과 같은 과정 없다)
  • TCP보다 전송속도가 빠르다.
  • 실시간성이 중요한 스트리밍에 주로 사용된다.
  • 1:1, 1:N, N:Mㄱ으로 연결이 가능하다.