취미와 밥줄사이

[ Network ] TCP 3 Way-Handshake 본문

Infrastructure/Network

[ Network ] TCP 3 Way-Handshake

취미와 밥줄사이 2022. 3. 7. 16:54

TCP 3-way Handshake란

  • TCP는 장치들 사이에 논리적인 접속을 성리하기 위하여 3-way handshake 사용
  • TCP/IP 프로토콜을 이용해서 통신을 하는 응용프로그램이 데이터를 전송하기 전에 먼저 정확한 전송을 보장하기 위해 상대방 컴퓨터와 사전에 세션ㅇㄹ 수립하는 과정을 의미
    • Clinet -> Server : TCP SYN
    • Server -> Clinet : TCP SYN ACK
    • Clinet -> Server : TCP ACK
      • SYN: synchronize sequence numbers
      • ACK: acknowledgement
    • TCP 접속을 성공적으로 성리하기 위한 절차

3-way Handshaking의 역할

  • 양쪽 모두 데이터를 전송할 준비가 되었다는 것을 보장
  • 실제로 데이터 전달이 시작되기 전에 받는 쪽이 준비되었다는 것을 확인

3-way handshaking 과정

  • Step1
    • A 클라이언트는 B서버에 접속을 요청하는 SYN 패킷을 보낸다.
    • 이때 A 클라이언트는 SYN을 보내고 SYN/ACK 응답을 기다리는 SYN_SENT 상태가 된다.
  • Step2
    • 이떄 서버는 Listen 상태로 포트 서비스가 가능한 상태여야 한다.(Closed: 닫힌 상태)
    • B서버는 SYN 요청을 받고 A클라이언트에게 요청을 수락한다는 ACK와 SYN flag가 설정된 패킷을 발송
    • A가 다시 ACK으로 응답하기를 기다린다.
    • B서버는 SYN_RECEIVED 상태가 된다.
  • Step3
    • A 클라이언트는 B서버에게 ACK을 보내고 이후부터는 연결이 이루어지고 데이터가 오고간다.
    • B서버 상태가 ESTABLISHED
상태
Closed 닫힌 상태
Listen 포트가 열린 상태로 연결 요청 대기중
SYN-sendt SYN 요청을 한 상태
SYN-Received SYN 요청을 받고 상대방의 응답을 기다리는 중
Established 확인, 확립된 상태 즉, 연결인 확인된 상태

REFERENCE

https://mindnet.tistory.com/entry/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EC%89%BD%EA%B2%8C-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0-22%ED%8E%B8-TCP-3-WayHandshake-4-WayHandshake

 

[ 네트워크 쉽게 이해하기 22편 ] TCP 3 Way-Handshake & 4 Way-Handshake

우선  TCP의 3-way Handshaking 에 대하여 알아보겠습니다. * TCP 3-way Handshake 란? TCP는 장치들 사이에 논리적인 접속을 성립(establish)하기 위하여 three-way handshake를 사용한다. TCP 3 Way Handshake..

mindnet.tistory.com

https://bangu4.tistory.com/74

 

[네트워크] 3-way / 4-way Handshake 란?

1. TCP 3-way Handshake 란? TCP는 장치들 사이에 논리적인 접속을 성립(establish)하기 위하여 three-way handshake를 사용한다. TCP 3 Way Handshake는 TCP/IP프로토콜을 이용해서 통신을 하는 응용프로그램이..

bangu4.tistory.com

https://sleepyeyes.tistory.com/4

 

TCP 3 Way-Handshake

3 Way-Handshake 란 전송 제어 프로토콜(TCP)에서 통신을 하는 장치간 서로 연결이 잘 되어있는지 확인하는 과정, 방법이다.  더 자세하게 설명하기전에 상위 개념부터 간단히 알아보자.  먼저 네트

sleepyeyes.tistory.com

https://sleepyeyes.tistory.com/4

 

TCP 3 Way-Handshake

3 Way-Handshake 란 전송 제어 프로토콜(TCP)에서 통신을 하는 장치간 서로 연결이 잘 되어있는지 확인하는 과정, 방법이다.  더 자세하게 설명하기전에 상위 개념부터 간단히 알아보자.  먼저 네트

sleepyeyes.tistory.com

https://hyemsinabro.tistory.com/157

 

[정리] 3 Way-Handshake

3 Way-Handshake 란, 전송제어 프로토콜(TCP)에서 통신을 하는 장치간 서로 연결이 잘 되어있는지 확인하는 과정/방식이다. 더 쉽게 말해서 송수신자(데이터를 주고 받는 2사람이라고 생각하면 쉬울

hyemsinabro.tistory.com