전송 프로토콜
전송 프로토콜 (Transport Protocols)
TCP, UDP, 연결 지향 전송 메커니즘, 흐름 제어, 오류 제어
전송 서비스 유형
| 유형 | 설명 |
|---|---|
| 연결 지향 (Connection-oriented) | 논리적 연결의 설정/유지/종료 포함, 신뢰할 수 있는 서비스 |
| 비연결 지향 (Connectionless/Datagram) | 연결 설정 없이 데이터 전송 |
신뢰할 수 있는 네트워크 서비스
- 세그먼트가 순서대로 전달 보장
- 예: 연결 모드 LLC 서비스의 IEEE 802.3 LAN
주요 문제점
- 주소 지정 (Addressing): 사용자 식별, 전송 엔티티 식별, 호스트 주소, 네트워크 번호 추출
- 다중화 (Multiplexing): 포트 번호로 여러 사용자 구분
- 상향 다중화: 여러 연결 → 단일 하위 연결
- 하향 다중화: 단일 연결 → 여러 하위 연결
- 흐름 제어 (Flow Control): 전송 지연 가변성으로 인해 복잡
- 연결 설정/종료
흐름 제어 대안
- 아무것도 하지 않음: 버퍼 초과 세그먼트 폐기 → 전송 엔티티가 재전송
- 네트워크 서비스에서 거부: 네트워크 서비스에 위임
- 고정 슬라이딩 윈도우: 신뢰할 수 있는 네트워크에서 효과적
- 크레딧 제도: 신뢰할 수 없는 네트워크에서 효과적
신뢰할 수 없는 네트워크 서비스
- 세그먼트 손실 가능, 가변 전송 지연으로 순서 뒤바뀔 수 있음
- 예: IP를 사용하는 인터넷워크, LAPF 코어만 사용하는 프레임 릴레이
해결 메커니즘
- 순서 지정된 전달: 세그먼트에 순차 번호 부여 (TCP는 옥텟 단위)
- 재전송 전략: 수신자가 ACK 반환, 타이머 만료 시 재전송
- 중복 탐지: 순서 번호로 중복 인식
- 연결 설정: SYN 교환 (양방향 핸드셰이크)
- 연결 종료: FIN 세그먼트 사용
- 실패 복구: 유지 타이머로 반쯤 열린 연결 처리
TCP (Transmission Control Protocol)
- RFC 793 정의
- 연결 지향, 신뢰성 있는 전송
- 각 데이터 옥텟에 순차 번호 부여
UDP (User Datagram Protocol)
- RFC 768 정의
- 비연결 서비스 제공
- 전달 보장 없음, 중복 보호 없음
- 오버헤드 줄임 → 빠른 전송에 적합