TCP는 신뢰성 있는 데이터 통신을 위해 설계된 전송 계층 프로토콜이다.
TCP는 연결지향 방식의 신뢰성 있는 프로토콜로, 데이터를 정확하게, 순서대로, 중복 없이 전달하는 데 초점을 맞춘다.
- 통신 전 반드시 연결 설정이 필요하다. ( 연결 지향 ) 3-way handshake
- 손실/중복/순서 오류 방지 및 재전송 기능을 포함한다. ( 신뢰성 보장 )
- 송신 측이 수신 측의 처리 속도를 초과하지 않도록 조절한다. ( 흐름 제어 )
- 네트워크 과부하를 방지하기 위한 제어 알고리즘이 존재한다. ( 혼잡 제어 )
- 양방향 데이터 전송이 가능하다. ( 전이중 통신 )
- 패킷이 순서대로 도착하게 정렬되고 재조립한다. ( 패킷 순서 보장 )
🔷 TCP 헤더 구조
필드 | 설명 |
Source Port | 송신 포트 번호 |
Dest Port | 수신 포트 번호 |
Sequence Number | 송신 데이터의 순서 지정 |
Acknowledgment Number ( ACK ) | 수신 측에서 다음에 기대하는 순번 |
Data Offset | 헤더 길이 ( 데이터 부분이 어디부터 시작하는지 나타냄 ) |
Flags | 제어 플래그( SYN, ACK, FIN, RST 등 ) |
Window Size | 수신측에서 송신측에 윈도우 사이즈( 수신 확인을 기다리지 않고 묶어서 송신할 수 있는 데이터 양 ) |
Checksum | 오류 검출용 |
Urgent Pointer | 긴급하게 처리해야 할 데이터의 위치를 나타냄 |
'네트워크' 카테고리의 다른 글
[네트워크] TCP와 UDP 비교 (0) | 2025.04.22 |
---|---|
[네트워크] UDP (0) | 2025.04.22 |
[네트워크] 소켓 (0) | 2025.04.22 |
[네트워크] 프로토콜 적용 파일 클라 (0) | 2025.04.22 |
[네트워크] 프로토콜 적용 파일 서버 (0) | 2025.04.22 |