TCP (전송 제어 프로토콜) 는 IETF 의 RFC793 에 의해 정의된 접속 지향, 신뢰할 수 있는 바이트 스트림 기반 전송 계층 통신 프로토콜입니다. 컴퓨터 네트워크의 단순화된 OSI 모델에서는 레이어 4 전송 계층에서 규정된 기능을 수행합니다. UDP (User Datagram Protocol) 는 동일한 계층의 또 다른 중요한 전송 프로토콜입니다.
인터넷 프로토콜 그룹에서 TCP 계층은 IP 계층 위, 애플리케이션 계층 아래 중간 계층입니다. 서로 다른 호스트의 애플리케이션 계층 간에 신뢰할 수 있는 파이프 연결이 필요한 경우가 많지만 IP 계층은 이러한 흐름 메커니즘을 제공하지 않고 신뢰할 수 없는 그룹 교환을 제공합니다.
애플리케이션 계층이 네트워크 간 전송을 위한 8 비트 데이터 스트림을 TCP 계층으로 전송할 때 TCP 는 데이터 스트림을 적절한 길이의 세그먼트로 나눕니다. 최대 전송 세그먼트 크기 (MSS) 는 일반적으로 컴퓨터가 연결된 네트워크의 데이터 링크 계층의 최대 전송 단위 (MTU) 에 의해 제한됩니다. 그런 다음 TCP 는 패킷을 IP 계층으로 보내고 IP 계층은 네트워크를 통해 수신 엔티티의 TCP 계층으로 패킷을 보냅니다.
TCP 프로토콜에는 다음과 같은 규칙이 있습니다.
1 데이터 조각: 사용자 데이터는 발신자에서 조각화되고 수신측에서 재구성됩니다. TCP 는 조각의 크기를 결정하고 조각 및 재구성을 제어합니다.
② 도착 확인: 수신자가 조각 데이터를 받으면 조각 데이터의 일련 번호에 따라 발신자에게 확인을 보냅니다.
③ 시간 초과 재전송: 발신자는 조각을 보낼 때 시간 초과 타이머를 시작하고, 타이머 시간 초과 후 적절한 확인을 받지 못하면 슬라이스를 재전송합니다.
4 슬라이딩 창: TCP 연결의 각 측면에 있는 수신 버퍼 공간은 고정되어 있으며 수신측은 수신 버퍼가 수용할 수 있는 데이터만 다른 쪽에서 전송할 수 있습니다. TCP 는 슬라이딩 창을 기반으로 흐름 제어를 제공하여 속도가 느린 호스트가 속도가 빠른 호스트로 인해 버퍼 오버플로가 발생하지 않도록 합니다.
⑤ 임의 순서 처리: IP 데이터그램으로 전송된 TCP 세그먼트가 순차적으로 도착할 수 있으며 TCP 는 수신된 데이터를 재정렬하여 애플리케이션 계층에 올바른 순서로 전달합니다.
⑥ 반복 처리: IP 데이터그램으로 전송된 TCP 세그먼트가 복제되고 TCP 수신측은 복제된 데이터를 폐기해야 합니다.
⑦ 데이터 검증: TCP 는 전송 중 데이터의 변경 사항을 감지하기 위한 포괄적인 체크섬인 헤더 및 데이터의 체크섬을 유지합니다. 수신된 세그먼트의 체크섬에 오류가 있을 경우 TCP 는 해당 세그먼트를 삭제하고 메시지 세그먼트 수신을 확인하지 않으므로 피어가 시간 초과되어 다시 전송됩니다.