[TCP의 전송 제어 절차]
1. 흐름 제어 (Flow Control)
송신측이 수신측의 처리속도 보다 더 빨리 데이타를 보내지 못하도록 제어해 주는 것입니다.
수신측에서 송신측 발송 데이타의 양이나 속도를 제한합니다. (송신측을 억제하는 형태)
이를 위해 수신측에서 데이터 넘침을 송신측에 통보하는 피드백 메커니즘 필요하게 됩니다.
한편, 이를 `속도 조절(pacing)`이라고도 합니다. (송신,수신의 속도를 일치시키는 것)
2. 흐름제어 방식 구분
1) 송신제어 방식 -> 정지대기방식 (Stop and Wait)
- 한번에 1개씩 수신확인하며 프레임을 전송하는 방식
. 링크상에서 보내고자하는 데이터가 프레임 길이 보다 긴 경우에는 비효율적.
2) 전송률 기반 흐름제어 (Rate-based)
- 데이터 송신률에 대한 임계값 관리에 의한 흐름제어
3) 윈도우 기반 흐름제어 (Window-based) -> Sliding Window
- 여러 개의 프레임을 동시에 보내고자하는 기법
기타 윈도우 방식 : 크레디트(Credit) 윈도우 방식, 페이징(paging) 윈도우 방식
3. 통신계층별 흐름제어
1) 데이터링크 계층에서 흐름제어
- 데이터 링크의 송수신 양단 간에 송신율 및 수신율의 균형을 맞춤
2) 망 계층에서 흐름제어
- 통신망 종류에 따라 흐름제어 기능 제공을 할 수도 안할 수도 있음
IP계층에서 흐름제어 방식
- IP계층에서는 명시적인 흐름제어 기능이 없음
그 상위계층(즉, 전송계층)에서 흐름제어 기능을 제공함
다만 IP계층에서는 송수신 버퍼 정도의 기능은 제공하게 됨
3) 전송 계층에서 흐름제어
- 단일 데이터 링크 간이 아닌 전송계층 종단-대-종단 간에 흐름제어 기능을 수행
* 전송계층 상에서의 흐름제어는 구현이 복잡
전송지연이 매우 가변적이므로 링크계층 처럼 단순한 재전송(시간만료) 메커니즘을 사용하기 어려움
1. 전송 제어
- 데이타를 원활하게 전송하기 위하여 회선접속의 확인, 상대방의 확인, 데이타가 올바르게 전송되었는가의 확인 등을 하는 일련의 절차
2. 전송 제어 특징
- 통신회선을 매개로 하여 데이타를 목적하는 장치에 착오없이 전송하기 위하여 송신장치와 수신장치간에 필요로 하는 절차
+ 전송제어절차 관련 제어 방식 (-데이터링크)
- 데이터장치 제어 : 데이타 송수신에 관련된 장치의 지정이나 확인 (- 매체접근제어)
- 데이타열의 제어 : 데이타 열을 논리적으로 구분하거나 (- Framing)
+ 순서를 관리 (- Sequence Number)
- 에러 제어 : 전송중의 에러의 검출 및 정정
통상적으로 OSI 참조모델의 제 2 계층에서 전송제어절차를 규정.
[TCP프로토콜 특성]
1. 연결형
- TCP는 장비가 데이터를 송신하기 전에 먼저 연결을 수립할 것을 요구
2. 양방향
- 일단 연결이 수립되면 TCP 장비는 누가 연결을 초기화했는지에 관계없이 데이터를 양방향으로 송수신.
3. 다중 연결과 종단 식별
- 연결된 두 장비가 사용하는 소켓 쌍은 TCP 연결의 종단을 식별
4. 신뢰성
- TCP는 모든 데이터가 목적지에 도달할 수 있도록 송신, 수신한 데이터를 추적하기 때문에 TCP 통신은 신뢰성有
5. 승인
- 신뢰성을 제공하는 데 핵심이 되는 특성은 TCP가 모든 전송에 대한 승인 메시지를 보낸다는 것.
6. 스트림 기반
- TCP는 애플리케이션이 연속적인 데이터 스트림을 송신할 수 있도록 함.
7. 구조화되지 않은 데이터
- TCP의 스트림 기반 특성때문에 애플리케이션은 메시지간 구별하는 방법을 제공해야 함.
8. 데이터 흐름 관리
- TCP는 데이터가 일정한 속도로 평탄하게 흐르고, 전송 경로 중 발생하는 문제를 처리할 수 있도록 연결을 관리.
'Network' 카테고리의 다른 글
UDP의 기능 및 전송 프레임 구조 특성 (0) | 2016.05.03 |
---|---|
TCP가 인터넷에서 정보전달에 끼치는 역할 및 효과, QoS기능 (0) | 2016.05.03 |
TCP의 기능 및 전송 프레임 구조 특성 (0) | 2016.05.03 |
Gnuplot 사용하기 (0) | 2016.04.26 |
Network Simulator - NS-3란? (0) | 2016.04.26 |
WRITTEN BY