리소스를 사용하는 앱(=클라이언트) 그리고 리소스가 존재하는 곳(=서버)
리소스를 사용하는 앱(=클라이언트) 리소스를 전달해주는 앱(=서버) 그리고 리소스 저장공간(=데이터 베이스)
웹과 서버간의 통신규약(=약속)
여러 프로토콜이 있다. HTTP HTTPS FTP SMTP SSH RDP WebSocket TCP UDP
웹에서 브라우저와 서버가 통신하기 위한 프로토콜
서버가 리소스 전달을 위한 메뉴판, 즉 API를 구축해놓아야 클라이언트가 이를 활용할 수 있다. 보통 인터넷에 있는 데이터를 요청할 때에는 HTTP라는 프로토콜을 사용하며, 주소(URL, URI)를 통해 접근할 수 있게 된다.
☑ URI 그리고 URL
URI가 좀 더 큰 개념이고 그리고 그 안에 URL 이 속해있다.
URL은 scheme, hosts, url-path로 구분할 수 있다.
URI는 scheme, hosts, url-path, query, bookmark 까지 포함한다.
☑ IP 그리고 Port
IP는 Internet Protocol의 줄임말로, 인터넷상에서 사용하는 주소체계를 의미한다. 인터넷에 연결된 모든 PC는 IP 주소체계를 따라 네 덩이의 숫자(IPv4) 그리고 여섯덩이의 숫자(IPv6)
- localhost, 127.0.0.1 : 현재 사용 중인 로컬 PC를 지칭합니다.
- 0.0.0.0, 255.255.255.255 : broadcast address, 로컬 네트워크에 접속된 모든 장치와 소통하는 주소입니다. 서버에서 접근 가능 IP 주소를 broadcast address 로 지정하면, 모든 기기에서 서버에 접근할 수 있습니다.
Port는 IP 주소가 가리키는 PC에 접속할 수 있는 통로(채널)을 의미한다.
22 : SSH
80 : HTTP
443: HTTPS
3000 : 임시포트
☑ 도메인 그리고 DNS
IP주소가 직관적이지 않으므로 나타낸 주소를 도메인(ex. codestates.com)
DNS는 Domain Name System의 줄임말로, 호스트의 도메인 이름을 IP 주소로 변환하거나 반대의 경우를 수행할 수 있도록 개발된 데이터베이스 시스템.