1) TCP, UDP 개요
- 연결
TCP에만 연결(Connection, Session, Circuit)의 개념이 있다
여기서 연결은 Virtual 측면을 의미하며 Virtual Circuit이라고도 불린다
연결은 결과적으로 순서번호로 구현된다
연결은 '상태(전이)' 개념을 동반한다
TCP와 UDP의 큰 차이는
Application 수준에서 발생하는 오류중 하나인 Zero Window가 발생할 때,
TCP는 트래픽을 멈추게 되고
UDP는 신경 쓰지 않고 트래픽을 계속 보내버린다
- 다시 짚고 가는 식별자와 단위
- 다시 짚고가는 Port 번호의 다양한 의미
1_
L2 Interface 네트워크 스위치 수준에서
Interface 번호를 Port 번호라고 한다
2_
L4 수준에서 방화벽과 네트워크 서비스 관련해서는
서비스 식별자라고 한다
3_
End-point server를 담당하는 사람들은 프로세스 식별자라고도 부른다
- TCP 연결 과정 개요
TCP는 기본적으로 Client와 Server의 연결 과정을 기반으로 한다
PID(Process ID)를 지닌 Client Process가 Socket을 Open 하고
OS에서 TCP Port 번호를 부여해준다
그리고 이를 타고온 트래픽을
Socket을 생성하고 개방한 Server Process가 연결 대기 상태(LISTEN)인지 확인하고
연결이 진행된다
만약, 연결중인 Process가 없거나 Socket이 개방되어 있지 않다면
Server의 TCP 단계에서 연결의 응답이 불가능함을 OS에서 자동으로 처리한다
이처럼,
TCP 통신을 위해서는
상대방의 IP 주소와 접속가능한 TCP Port 번호를 알아야 연결을 시도할 수 있다
'CS > [널널한 개발자] 네트워크' 카테고리의 다른 글
4-3] L4 수준에서 외울 것들 - TCP 연결 종료 및 상태 변화 (0) | 2023.06.20 |
---|---|
4-2] L4 수준에서 외울 것들 - TCP 연결과정 (0) | 2023.06.20 |
3-5] L3 수준에서 외울 것들 - TTL, 단편화, DHCP, ARP, Ping (0) | 2023.06.19 |
3-4] L3 수준에서 외울 것들 - Broadcast IP, Host IP (0) | 2023.06.17 |
3-3] L3 수준에서 외울 것들 - IP 헤더형식, 서브넷 마스크와 CIDR (0) | 2023.06.17 |