본문 바로가기
IT기술노트/디지털네트워크

TCP(Transmission Control Protocol)

by 비트코기 2021. 2. 22.
반응형

I. 신뢰성 있는 데이터 통신 지원, TCP의 개요

가. TCP(Transmission Control Protocol)의 정의

   - 응용 계층과 네트워크 계층 사이에 위치하여 응용프로그램과 네트워크 동작 사이의 매개체로 사용되는 프로토콜

나. TCP의 전송 특성

특성

설명

스트림지향성

TCP는 옥텟(Octets)또는 바이트를 기본단위로 데이터를 스트림 형태로 처리

가상회선 연결

연결 설정하는 과정을 실행하여 연결이 정상적으로 설정되면 데이터 전송

버퍼를 이용한 전송

트래픽 혼잡을 최소화하고 효율적으로 전송이 되도록 버퍼를 이용하여 데이터 블록을 채운 후에 전송하는 방식

전이중 전송 연결

반대되는 방향성을 갖는 두개의 독립적인 스트림을 생성


II. TCP 세그먼트

가. TCP 세그먼트의 정의

   - OSI 7 Layer 4계층에 속하는 전송 프로토콜인 TCP의 계층상에서 데이터를 전달하는 정보의 최소 단위

나. TCP 세그먼트 구조

Source/Destination Port

IP주소 + 포트번호 = 소켓번호, 양측 호스트 내 종단 프로세스 식별

순서번호

각 세그먼트의 첫 번째 바이트에 부여되는 번호 (바이트 단위)

확인/응답

수신하기를 대기하는 다음 바이트 번호

헤더 길이 필드

4바이트 단위로 표시 (TCP 헤더 길이는 총 60바이트 이하)

Flag Bits

TCP 세그먼트 전달과 관련하여 TCP 회선 및 데이터 관리 제어기능을 하는 플래그

윈도우 크기

흐름제어를 위해서 허용하는 16비트

체크섬

세그먼트의 오류 검증 용

옵션

최대 40바이트까지 옵션 데이터 포함 가능


III. TCP 연결관리

가. TCP 연결관리의 정의

   - /수신단간에 신뢰성 있는 데이터 통신을 수행하기 위해 연결부터 종료까지의 TCP 연결 관리체계

나. TCP 연결관리의 대상

대상

설명

TCP 연결

종단 호스트 내 프로세스간에만 존재하는 연결 (3 Way-Handshake)

TCP 세션관리

흐름제어, 오류제어 수행

TCP 종료

4 Way-Handshake

다. TCP 연결관리

연결설정

개념도

설명

3 Way-

Handshake

세그먼트 1(SYN)

세그먼트 2(SYN+ACK)

세그먼트 3(ACK)

2 Way-

Handshake

목적

연결이 시작되고 옵션이 교환 되었음을 알림

주요정보

ISN (초기순번), 수신 윈도우 크기, 옵션 정보

4 Way-

Handshake

- TCP는 안정적이고 연결 지행적인 전송계층 프로토콜

- 세션의 설정을 위해 3 Way-Handshake 통해 회선개설

- 데이터 전송 완료

- 4번의 패킷 교환으로 회산 연결 종료


IV. TCP Timer

구분

설명

재전송 타이머

TCP가 신뢰성 있는 전송을 위해 사용, 패킷 전송과 동시에 재전송타이머 동작

지속 타이머

윈도우 크기가 0인 세그먼트를 수신하게 되면 새로운 세그먼트 전송 중지

Keep Alive Timer

데이터 교환 없이 오랜 시간 Idle 상태로 있는 것 방지

Time-Waited 타이머

TCP 연결 해지 용도, 마지막 세그먼트 수신 후 즉시 종료하는 것이 아닌 Time-Waited 시간까지 연결 유지

          

반응형

'IT기술노트 > 디지털네트워크' 카테고리의 다른 글

SCTP(Stream Control Transmission Protocol)  (0) 2021.02.22
UDP(User Datagram Protocol)  (0) 2021.02.22
TCP 소켓통신  (0) 2021.02.22
MPTCP(Multipath TCP)  (0) 2021.02.22
ARP(Address Resolution Protocol)  (0) 2021.02.22
IPv4 to IPv6  (0) 2021.02.22
IPv6  (0) 2021.02.22
DHCP  (0) 2021.02.21

댓글