[네트워크] Transport Service, TCP, UDP

oldshoe·2024년 4월 17일

네트워크

목록 보기
6/34

Transport Service

Application은 Transport Service의 서비스를 받는다.
Application Layer에서 TCP와 UDP 중에 어떤 것을 선택할지 정해야 한다.

  • Data intergrity : 메시지를 보내면 반대 쪽 Applicaiton에서 완벽하게 수신이 되는 것은 Transport Layer가 보장해준다,
  • Timing : Delay 보장(효율을 위해 낮은 딜레이가 요구되는 상황)
  • Throughput : 1초에 몇 비트 전송되는지에 관한 내용(효율을 위해 최소한의 throughput을 요구하는 상황)
  • security : 암호화, data intergrity

해당 옵션에 따라 TCP와 UDP 둘 중 하나를 골라야 한다.

Internet transport protocols services

실제로 Transport Layer에 있는 서비스는 크게 TCP Service, UDP Service로 나눌 수 있다.

TCP service

  • relibale trasport : 데이터의 손실 X
  • flow control : 전송 속도 조절
  • congestion control : 네트워크 상황에 따라 속도 조절
  • timing, 최소한의 throughput 보장, security는 제공하지 않음
  • connection-oriented : 클라이언트와 서버가 통신하기 전에 커넥션을 셋업해주는 과정이 필요

UDP service

  • 프로세스 간 데이터를 보내기만 함
  • 위의 내용을 다 제공하지 않음

Securing TCP

아까 적혀있듯, Transport Layer에서 타이밍, 쓰루풋 등은 보장해주기 어렵다고 했다.
하지만 보안은 어느 정도 가능하다.

  • TLS : TCP 커넥션에 대해 암호화, data integrity, end-point authentication(상대편이 진짜 상대편인지 위조된 것인지 구별) 등을 제공해주는 서비스
  • TLS은 Transport Layer에 있는 것이 아니라 Application Layer에 라이브러리로 존재
  • TLS socketAPI를 통해 함
profile
toomuxi : There are many things in the world that I want to do

0개의 댓글