연결지향형 TCP 프로토콜 - TCP 프로토콜 구조와 TCP의 플래그

hyemin's velog💬·2022년 8월 17일
0

네트워크

목록 보기
10/19

TCP 프로토콜

TCP가 하는 일

전송 제어 프로토콜(Transmission Control Protocol, TCP)은 인터넷에 연결된 컴퓨터에서 실행되는 프로그램 간의 통신을 안정적으로, 순서대로, 에러없이 교환할 수 있게 한다.

TCP의 안정성을 필요로 하지 않는 애플리케이션의 경우 일반적으로 TCP 대신 비접속형 사용자 데이터그램 프로토콜(User Datagram Protocol)을 사용한다.

TCP는 UDP보다 안전하지만 느리다.

TCP 프로토콜의 구조

  • Source Port :
  • Destination Port :
  • Sequence Number
  • Acknowledgement Number
  • Offset : 헤더의 길이. 4로 나눔
  • Reserved : 예약된 필드. 사용x
  • TCP Flags CEUAPRSF : 현재 패킷의 종류를 표시
  • Window : 사용공간을 상대방에 알려주는 필드. 남아있는 TCP 버퍼 공간을 알려주는 필드
  • Checksum : 체크썸
  • Urgent Pointer :
  • TCP Options (variable length, optional) : 일반적으로 잘 안 붙고 4byte씩 10개(총 40byte)까지 붙음

🌟(중요)TCP 플래그

TCP 플래그의 종류

  • U(Urgent Flag) : 긴급 bit. 우선순위가 높은 데이터가 포함되어있다. 1로 표시 Urgent Pointer와 세트. *Urgent Pointer : 어디서부터가 긴급 데이터인지 알려주는 위치값
  • A(ACK Flag) : 승인 bit. TCP에서 많이 사용되고 중요한 flag. 응답(승인)할 때 사용
  • P(Push Flag) : 밀어넣기 bit. TCP 버퍼가 일정 크기만큼 쌓여야 추가적으로 전송하는데 이와 상관없이 데이터를 밀어넣겠다. 많이 사용x
  • R(Reset) : 초기화 bit. 상대방과 연결된 상태에서 데이터를 주고받으려는데 문제가 발생했을 때 연결을 reset하는 bit
  • S(Sync) : 동기화 bit. 상대방과 연결을 시작할 때 무조건 사용함. 제일 중요✨ 얘가 처음 보내지고나서 둘 사이의 연결이 서로 동기화되기 시작함.
  • F(Fin) : 종료 bit. 데이터를 다 주고 받은 뒤 연결을 끊을 때

https://youtu.be/cOK_f9_k_O0

profile
기록장👻

0개의 댓글