반응형
Transport Layer services
Transport Layer의 역할
-
- Source부터 Destination까지 패킷이 제대로 전송될 수 있도록 한다.
- Application Layer에서 만든 데이터를 일정한 크기로 자른다.
Transport Layer 프로토콜의 종류
세부적으로 들어가면 Transport Layer에도 여러가지 프로토콜들이 존재하지만, 대표적으로 두가지 프로토콜이 있다.
TCP (Transmission Control Protocol) for loss-sensitive application
- reliable transport
- 전송 프로세스와 수신 프로세스 간의 안정적인 전송이 가능하다.
- in-order delivery
- 데이터를 순서대로 전송한다.
- connection-oriented (연결 지향), connection setup : 데이터를 보내기 전에 상대방의 상태를 확인하고, 클라이언트와 서버 간에 설정(setup)을 요구한다.
- 여기서 말하는 설정(setup)이란?
- sender/receiver에 buffer 할당
- buffer & window size 설정 등
- 여기서 말하는 설정(setup)이란?
- flow control
- 라우터와 받는 수신자의 상황을 봐서, sender 측 버퍼가 넘치치 않도록 보내는 패킷 양을 조절한다.
- congestion control
- 각 TCP 연결이 네트워크 대역폭을 공평하게 공유할 수 있게끔 제어한다.
- Delay나 Bandwidth를 건드리지는 못한다.
- timing, minimum throughput guarantee, security 등의 기능은 제공하지 않는다.
UDP (User Datagram Protocol) for delay-sensitive application
- unreliable data transfer
- 패킷을 어떤 수신자의 어떤 서비스가 받아야 하는지(IP 주소, Port 번호), 패킷이 중간에 망가지지는 않았는지만 처리한다.
- UDP는 TCP에서 제공하는 것을 하나도 제공하지 않는다.
- reliability, connection setup, flow control, congestion control, timing, minimum throughput guarantee, security 등을 제공하지 않는다.
- 정말 아무것도 안 하는 것 같은데 필요한 이유가 무엇일까?
- UDP는 포트 번호에 따라 전달하는 역할을 한다.
- UDP는 신뢰성을 보장하지는 않지만, TCP에 비하여 빠른 전송 속도를 제공한다.
- UDP는 비연결을 지향하기 때문에 데이터를 재전송할 필요도 없고, 흐름 제어나 에러 체크도 항상 필요로 하지 않는다.
참고 자료
- Computer Networking: A Top Down Approach 6th edition - Jim Kurose, Keith Ross Addison-Wesley March 2012
- https://ddongwon.tistory.com/m/79
반응형
'Computer Science > Computer Network' 카테고리의 다른 글
[네트워크] GBN(Go-back-N), SR(Selective Repeat) - Pipelined Protocols (0) | 2022.10.18 |
---|---|
[네트워크] Reliable Data Transfer의 원리와 RDT 모델 알고리즘 (0) | 2022.10.18 |
[네트워크] "BitTorrent" - P2P applications (2) (0) | 2022.10.18 |
[네트워크] "Napster", "Gnutella" - P2P applications (1) (0) | 2022.10.18 |
[네트워크] DNS (Domain Name System, 도메인 네임 시스템) (0) | 2022.10.18 |