1. TCP 네트워킹
1.1 TCP 프로토콜 이해
- TCP(Transmission Control Protocol)는 신뢰성 있는 데이터 전송을 보장하는 연결 지향적 프로토콜입니다.
- 주요 특징:
- 연결 지향성: 데이터 전송 전 연결 수립 필요
- 신뢰성 보장: 데이터 손실, 중복, 순서 변경 방지
- 흐름 제어: 송신자와 수신자 간의 데이터 처리 속도 조절
- 혼잡 제어: 네트워크 상황에 따른 데이터 전송량 조절
- 양방향 통신(Full-duplex): 데이터의 동시 송수신 가능
1.2 TCP 통신 기본 개념
- 3-way handshaking을 통한 연결 수립
- SYN: 클라이언트가 서버에 연결 요청
- SYN+ACK: 서버가 클라이언트에 요청 수락
- ACK: 클라이언트가 수락 확인
- 연결 해제는 4-way handshaking으로 진행됩니다.