[정보 보안 개론] 네트워크 3
TCP/IP ESTABLISHED
연결 지향형 프로토콜 : 패킷을 주고 받기 전, 미리 연결을 맺어 가상 경로를 설정하는 것. ex)TCP
따라서 설정하는 과정과 종료하는 과정 두가지로 나눠진다.
연결을 설정하는 과정 : 웨이 핸드셰이킹 (Way-Handshaking)
연결 시작
1. 두 시스템이 통신을 하기 전, 클라이언트는 포트가 닫힌 Closed 상태, 서버는 해당 포트로 항상 서비스를 제공하는 Listen 상태 이다.
2. 처음 클라이언트가 통신을 하고자 하면, 임의의 포트 번호가 클라이언트 프로그램에 할당되고 클라이언트는 서버에 연결하고 싶은 의사 표시로 SYN Sent 상태가 된다.
3. 클라이언트의 요청을 받은 서버는 SYN Received 상태가 되고, 클라이언트에게 연결 가능하다는 SYN+ACK 패킷을 전송한다.
4. 마지막으로 클라이언트는 연결을 요청한 것에 대한 서버의 응답을 확인했다는 표시로 ACK 패킷을 전송한다.
※3-way handshaking은 연결 지향형(Connection Oriented) 프로토콜인 TCP를 이해하는 기본적인 개념이다.
연결 종료
1. 통신을 하고 있는 상태로 클라이언트와 서버 모두 Established 상태이다.
2. 통신을 끊고자 하는 클라이언트가 서버에 FIN 패킷을 전송하고 Close wait 상태로 전환한다.
3. 서버는 클라이언트의 연결 종료 요청을 확인하고 응답으로 ACK패킷을 전송한다. 서버도 종료의 의미로 FIN 패킷을 전송하고 Close wait 상태로 전환한다.
4. 마지막으로 클라이언트는 서버의 연결종료 요청에 ACK패킷을 전송하고 종료한다.
☆TCP는 연결 지향형 프로토콜로, 수신 측이 데이터를 흘려버리지 않도록 데이터 흐름제어(Flow Control) 및 전송 중 에러가 발생할 경우 자동 재전송 하는 에러 제어(Error Control) 기능을 한다.
=================================================================================================================
=================================================================================================================