IT/Network2011. 4. 20. 01:05

TCP(Transmission Control Protocol)

- Layer 4계층 프로토콜

- 연결 지향 서비스(Connection-Oriented Service) - 무결성 보장

- 스트림 서비스 제공(Stream Data Service)

 

TCP는 3-Way Handshaking과정을 실시한다.

왜 3-Way Handshaking를 사용할까? 에러율이 낮고, 데이터 손실률이 적음.

 

흐름제어(Flow Control)

-TCP는 통신에 참여한 두 호스트가 송신할 수 있는 데이터 양을 네트워크 상황에 맞게 조절하는 기능을 제공.

즉, 매번 송신한 데이터에 대한 응답을 수신해야만, 그 다음 데이터를 송신할 수 있음.(Stop-and-Wait)

 

- TCP는 슬라이딩 원도우(Sliding Window) 기능을 이용하여 상호 협의한 원도우 크기만큼 데이터를 송신하고 수신함.

(Sliding window을 사용하므로서 데이터 전송 처리율과 메모리에 대한 효율성을 보장)

 

오류제어(Error Control)및 오류 정정(Error Correction)

- TCP는 세그먼트에 포함된 체크섬을 이용하여 세그먼트 손상 여부를 검사

 

동작원리

송신측 -----------------> 수신측

1. 세그먼트 송신

 

2. 수신측에서 만약 세그먼트 손상이 발견되면

수신측에서 해당 세그먼트 폐기, 송신측으로 응답을 보내지 않는다.

 

3. 송신측에서는 일정 시간이 초과되기 이전에 응답을 수신하지 못하면,

해당 세그먼트가 손상되었거나 손실되었다고 간주.

 

4. 송신측에서 각 세그먼트마다 시간 초과 카운터를 이용하여 주기적으로 확인.

카운터 값이 만기되면 해당 세그먼트 재전송

 

혼잡 제어 (Congestion Control)

전자 통신 네트워크로 들어가는 정보 소통량을 조절하여 네트워크가 혼잡해지지 않게 조절하는 것을 말한다.

 

각 호스트는 정보를 빨리 보내기 위하여 정해진 시간 내에 보낼 수 있는 최대의 패킷을 보냈고,

일부 라우터에서는 혼잡 현상이 발생하여 정해진 시간 내에 받은 패킷들을 모두 처리하지 못하였다.

정해진 시간 내에 패킷이 처리되지 않으면 호스트는 패킷을 재전송하였고, 라우터는 더 많은

패킷을 받게 되어서 혼잡 현상이 더 심해졌다.

 

동작 원리

TCP의 혼잡 제어는 패킷을 보내는 쪽에서 네트워크의 수용량을 결정하는 방식으로 동작한다.

패킷을 보내는 측에서 안전하게 보낼 수 있는 패킷의 수를 알고 있고, 패킷이 잘 도착하면 ACK 패킷을 받는다.

즉 이전에 보낸 패킷이 잘 도착되었다는 것을 ACK 패킷을 받은 것으로 알 수 있고, ACK 패킷을 받으면 안전하게

새 패킷을 더 보낼 수 있기 때문에 TCP의 혼잡 제어를 셀프클록 방식(self-clocking)이라고 한다.

(위키백과사전 참조)

Posted by 예영교육 연구소