1. URL 입력
- URL: protocol, domain, path
- URI: domain, path
URL vs. URI: URL은 locator로 찾아가기 위한 충분한 정보가 있다. URI은 식별하기 위한 충분한 정보가 있다.
2. DNS resolution
domain -> ip
- 1. hosts file
- 2. DNS cache
- 3. 질의
-- DNS 서버 주소: 공유기 또는 실제 DNS 서버. DNS 주소는 ISP가 주기도 함.
4. TCP 연결
5. TLS handshake
6. HTTPS request
7. HTTPS response
1 전에 DHCP (Dynamic Host Configuration Protocol):
- UDP 기반으로 동작
- layer: application
- DORA: discover - offer - request - ack
- 배정: 공용망 (ISP의 DHCP), 사설망 (라우터)
GSLB (Global Server Load Balancing):
- DNS 서버의 확장된 개념
- health check
- 최적의 IP를 반환
CDN (Cloud Delivery Network):
- 여러 edge 서버를 둠
- GSLB를 활용 (edge 서버를 선택하는데 사용)
- 컨텐츠 캐싱
Routing
- 최적의 경로를 찾아서 길을 찾는 개념
Routing table
- 최적의 경로를 담아둠
- 특정 IP가 왔을 때 next hop에 대한 mac이 저장 되어있음
Router: 프레임 교체가 일어남
- routing table을 참조하여 dst MAC을 next hop의 mac으로 바꿈
- src MAC을 자신의 mac으로 바꿈
NAT: 사설망에서 공용망으로 나갈 때 패킷 내 src IP를 바꿔주는 기술.
- port도 변경 가능
Port: TCP header 에는 src port와 dst port가 적혀있게 된다
- application socket: ip + port
웹브라우저 순서
1. DNS resolution
- search 순서: hosts file, DNS cache, query to DNS server
- 결과: IP 획득
2. 획득한 IP로 TCP connection
- 과정 중 공유기에 의해 NAT가 보편적으로 일어남
3. HTTP request - HTTP response
4. 좀 더 자세하게는 GSLB와 CDN에 대한 내용을 추가해서 말씀드릴 수 있습니다.
5. GSLB
- health check 까지 겸임하여 failover 및 무중단 배포를 지원합니다.
6. CDN
- 서비
'Linux' 카테고리의 다른 글
HR 면접 예상 질문과 답변 기준) "일 할 때 일 자산이 될 순간들" (1) | 2025.02.08 |
---|---|
Linux) DAC의 한계 [Limitations of Discretionary Access Control] (0) | 2020.11.04 |
Linux) Capabilities (0) | 2020.10.29 |
Linux) C에서 mkdir -p 처럼 디렉토리 만드는 방법 (0) | 2020.06.16 |