1. TCP 프로토콜
- 전송 제어 프로토콜(Transmissio Control protocol, TCP)은 인터넷에 연결된 컴퓨터에서 실행되는 프로그램 간에 통신을 안정적으로, 순서대로, 에러없이 교환할 수 있게 한다.
- TCP의 안정성을 필요로 하지 않는 애플리케이션의 경우 일반적으로 TCP 대신 비접속형 사용자 데이터그램 프로토콜(User Datagram Protocol)을 사용한다.
- TCP는 UDP보다 안전하지만 느리다.(But TCP와 UDP와의 속도 차이를 느낄만큼 차이는 나지않는다. )
2. TCP 프로토콜의 구조
* 사진 추가 설명 *
- Sequence Number(4Byte)
- Acknowledgment Number(4Byte)
- TCP Options : 일반적으로 잘 안붙고, 붙더라도 4Byte씩 붙고 총 10개까지 붙을수있다.
- Offset이라고 보다는 Header의 길이라고 생각하면 됨.
- Reserved는 예약된 필드로 사용하지 않는 필드
- Window : 상대방에게 얼마만큼 보내야 하는지 확인과 알려주는 곳.
3. TCP 플래그
- 플래그가 하는 일은 TCP가 계속 통신을 하면서 상대방과 연결 상태 등을 물어보는데에 사용.
- U, Urgent Flag(긴급 비트) : 보내는 데이터가 우선 순위가 높은 데이터가 포함되어있음을 지정
- A, ACK Flag : TCP에서 중요하고 가장 많이 사용되는 Flag, 승인을 해줄때 사용되는 플래그
- P, Pash Flag : TCP버퍼가 일정한 크기만큼 쌓여야 되는데, 상관없이 데이터를 밀어넣겠다라는 것을 의미
- R, Reset Flag : 상대방과 연결되어있는 상태에서 추가적으로 데이터를 받을려고 하는데 문제가 발생했을때, 이떄 새로고침 할때의 플래그
- S, Synchronization Flag(동기화 비트) : 상대방과 연결을 시작할때 무조건 사용하는 플래그
- F, Finish Flag : 연결을 끊을때 사용되는 플래그
* 추가설명*
Reserved, Nonce, Congestion Window Reduced, ECN-Echo는 잘 사용안하고 그 아래에 있는 플래그만 주로 사용
'네트워크 기초(개정판)' 카테고리의 다른 글
11. www(웹)를 이용할 때는 이렇게 데이터를 주고받는다 - HTTP 프로토콜이란? (0) | 2021.02.01 |
---|---|
10. NAT와 포트 포워딩 (0) | 2021.02.01 |
08. 비연결지향형 UDP 프로토콜 - 이론 (0) | 2021.01.27 |
07. 컴퓨터의 프로그램끼리는 이렇게 데이터를 주고 받는다 - 4계층 이론 (0) | 2021.01.27 |
06. 멀리 있는 컴퓨터끼리는 이렇게 데이터를 주고받는다 - 조각화 이론 (0) | 2021.01.26 |
댓글