💡 컴퓨터들은 어떤 방법으로 통신을 할까?
초기에는 USB 케이블 과 같은 물리적 형태로 주고 받았지만 , 현재는 인터넷 사용!
✅ 인터넷이란?
- TCP/IP를 기반으로 하는 컴퓨터 네트워크 통신망
- World Wide Web(WWW) 구축
✅ 인터넷 프로토콜 (Internet Protocool) 이란?
- 인터넷이 통하는 네트워크에 관한 송수신에 대한 규약
❓ IP는 192.168.0.1이 아닌가 라는데 의문이 들어요
✔ 원래 알던 IP는 IP자체가 아니라 IP에 필요한 고유 주소이다.
♐ IP 주소
- 각 기기 간의 통신을 식별할 수 있는 전화번호 이고 데이터를 Packet 의 단위로 전달 한다
♐ Packet
- 소스 IP , 대상 IP 를 포함하고 있고 어떤 컴퓨터에 데이터를 전송할지 판별하는 단위들을 가지고 있다.
✔ 데이터를 일방적으로 주는 것이 아닌 양방향으로 주고받는다.
❌ IP 주소의 문제점
- 애플리케이션 구분 - 패킷을 어디에 사용할지 구분 ❌
- 비연결성 - 수신 대상의 상태와 상관없이 데이터 전송
- 비신뢰성 - 손상 여부를 서로 알 수 없음.
✔ 위의 문제를 해결 할 수 있는 것이 바로 TCP 프로토콜 이다.
✅ TCP(Transmission Control Protocol) 이란?
- 서버와 클라이언트 간 신뢰성 있는 전달 하기 위해 만들어진 프로토콜
♐ 3 Way HandShake (논리적 연결)
- 1단계 SYN - 클라이언트가 서버에게 연결을 요청
- 2단계 ACK - 서버가 SYN 패킷을 받고 이를 확인했다는 신호
- 3단계 ACK - ACK와 함께 데이터 전송 가능
♐ 데이터 전송 여부
- TCP를 통해 통신하면 데이터를 잘 받았다는 응답을 받을 수 있다.
♐ 패킷 순서
- 패킷이 나뉘어 져있어도 순서를 보장한다.
✔ 3 Way HandShake를 하는 만큼 시간이 오래 걸리기 때문에,그를 해결한게 UDP 프로토콜 이다.
✅ UDP(User Datagram Protocol) 이란?
- 비연결형 , 신뢰성이 없는 전송 프로토콜이며 실시간 통신이나 스트리밍 애플리케이션에 유리하다.
♐ 데이터 전송 방식
- IP방식과 거의 비슷하여 순소를 보장하지 않는다.
IP 와 차이점으로 PORT 가 존재
♐ 기능
- 추가적인 기능이 없는 만큼 속도가 빠르다.
♐ PORT 란?
- 같은 IP 내에서 프로세스 구분을 하기 위해 사용된다.
쉽게 말해 각 아파트의 호수 역할을 수행한다.
💡 자주 사용되는 PORT (개발 시 나머지 포트 사용)
1. **0 ~ 65535 할당 가능**
2. **이미 사용되고 있는 포트 (0 ~ 1023)**
- `FTP` - 20, 21 (TCP)
- `SSH` - 22 (TCP)
- `텔넷` - 23 (TCP)
- `SMTP` - 25 (TCP)
- `DNS` - 53 (TCP/UDP)
- `DHCP` - 67 (UDP)
- `HTTP`- **80 (TCP)**
- `HTTPS` - **443 (TCP)**
- `RDP` - 3389 (TCP/UDP)
'Spring' 카테고리의 다른 글
[Spring] Controller 와 RestContoller 의 차이 (0) | 2025.04.10 |
---|---|
[Spring] MVC 패턴 (0) | 2025.04.07 |
[Spring]HTTP 란? (2) (0) | 2025.03.31 |
[Spring]HTTP 란? (1) (0) | 2025.03.20 |
[Spring]DNS,URI,URL이란? (0) | 2025.03.19 |