안녕하세요 오늘은 3 way handshake에 대해 알아보겠습니다.
TCP통신을 하기전에 TCP통신을 안전하고 정확하게 하기 위해서 하는 절차 입니다.
이 절차는 TCP통신을 하기전 무조건 성립되는 절차라고 생각하시면 됩니다.
이번에는 3 way handshake 과정에서 나오는 용어들에 대해 알아보겠습니다.
SYN : 연결을 할수있어? 라고 물어보는 용어 입니다.
ACK : 할수있다고 말하는 용어 입니다.
우선 Client가 Server한테 연결을 할수있어? 라고 SYN으로 물어봅니다.
다음으로 Sever가 "나 연결할수있어! 너 포트좀 열어줘"하고 ACK와 SYN을 보냅니다.
마지막으로는 Client가 "아 ㅇㅋ 열어줄게" 하고 포트를 열어주면 이제 통신이 시작되는것 입니다.
그리고 위 사진에 설명되있는거와 같이 Client가 SYN을 보내면 SYN_SENT 상태가 되고,
Server가 SYN과 ACK를 보내면 SYN_RECEIVED상태가 되고, Client가 ACK를 보내면,
ESTABLLISHED상태가 된다.
4 way handshake는 3 way handshake와 정반대로 3 way handshake는 통신을 시작할때 절차 였다면
4 way handshake는 통신을 끝낼때 절차입니다.
우선 Client가 Sever한테 이제 통신을 그만 하겠다는 의미인 FIN 플래그를 보냅니다.
다음으로 Server가 알겠다고 답변후, 서버가 통신을 끝낸다고 말합니다.
마지막으로 Client가 알겠다고 말하면 통신은 끝나는것 입니다.
위 사진에 나와있는것 처럼 상태가 계속 바뀝니다.
끝!
[네트워크] Remote shell 개념/종류 (0) | 2023.07.28 |
---|---|
[네트워크] Nat 개념/동작과정 (0) | 2023.07.26 |
[네트워크] ARP 개념/동작과정/태이블 (0) | 2023.07.24 |
[네트워크] ip주소, Mac 주소 (0) | 2023.05.24 |
[네트워크] Packet (0) | 2023.05.23 |