wanna be dev 🧑‍💻

Cool 하고 Sick한 개발자가 되고 싶은 uzun입니다

A.K.A. Kick-snare, hyjhyj0901, h_uz99 solvedac-logo

Computer Science/Computer Network

📡 [Network] 전송층(Transport Layer)에 대해서 (개요)

Kick_snare 2022. 10. 10. 21:27
728x90

본 포스팅은 < 컴퓨터 네트워킹 하향식 접근[8판] James F. Kurose, Keith W. Ross 저/최종원, 강현국, 김기태 > 을 참고하여 작성되었습니다.

Ch03 Transport Layer

1. 전송층 서비스 : Transport-layer services

전송층 (transport layer)은 각기 다른 호스트에서 동작하는 어플리케이션 프로세스간의 논리적 통신을 제공한다.

논리적 통신은 어플리케이션의 관점에서 보면 프로세스들이 동작하는 호스트들이 직접 연결된 것처럼 보이게 된다. 실제로 호스트는 수많은 라우터와 링크를 통해 연결되어 지구상의 다른 지역에 있을 수 있다.

전송층 vs 네트워크층: 서비스와 프로토콜

네트워크층과 전송층을 비교해보자.

  • 네트워크층 : 호스트 간의 논리적 소통
  • 전송층 : 호스트의 프로세스 간의 논리적 소통
  • 하위층의 프로토콜에 의해 제약되는 서비스가 존재
    • 제약 : 지연보장, 대여폭 보장
    • 비제약 : 신뢰성, 보안

전송층의 동작

  • 전송자는 application의 message받아온다 (application layer)
  • 전송층에서 segment header를 붙인다 (transport layer)
  • IP 로 세그먼트로 보낸다 (network layer)

  • 수신자는 IP로 부터 세그먼트를 받아온다
  • 헤더를 체크하고 message를 뽑아낸다
  • 소켓으로 메세지를 demultiplexing
💡 *각 계층의 데이터 단위*
  • Application Layer ➡️ message
  • Transport Layer ➡️ segment
  • Network Layer ➡️ packet
  • Data Link Layer ➡️ frame
  • Physical Layer ➡️ bit

전송층의 TCP와 UDP

  • IP
    • best-effort delivery service : 패킷을 전달하기 위해 최대한 노력을 하지만 어떠한 보장도 하지않음
  • TCP
    • 연결을 설정한다
    • 신뢰성, 순서보장, 무결성 검사를 진행
    • 흐름 제어, 혼잡 제어를 진행
  • UDP
    • 무결성 검사를 진행
    • 순서, 신뢰성이 보장되지 않음

 

728x90