-
브라우저에 주소를 적으면 일어나는 일Web, Server, Cloud 2022. 6. 20. 14:01
기본적인 내용
- Local cache를 검색해서 매핑된 ip가 있는지 찾는다.
- hosts 파일을 검색해서 매핑된 ip가 있는지 찾는다.
- DNS Hierarchy* 를 검색해서 매핑된 ip가 있는지 찾는다.
- 1, 2, 3 과정 중 하나로 domain name에 매핑된 ip를 획득한다.
- 해당 ip로 TCP 연결을 맺는다.
- TCP 연결 하에서 HTTP request를 보낸다.
- HTTP response를 받는다.
* 참고 : DNS Hierarchy
GSLB
GSLB (Global Server Load Balance)
Load Balance라는 이름과는 조금 다르게, GSLB는 일반적으로 생각하는 로드밸런싱과는 차이가 있다.
GSLB는 전통적인 DNS와 같이 동작하며 추가적으로 health check와 active/backup을 지정 가능하게 하여
재해복구, 지역적인 부하분산, 응답시간 중심의 서비스를 제공 가능하게 할 수 있다.
GSLB의 목표는 다음과 같다.
- DR (재해 복구, Disaster Recovery) : Health check를 통해 사용 불가능한 서버를 미리 파악하고, 서비스 대상에서 제외한다.
- Load sharing (부하 분산) : 트래픽을 여러 서버로 분산시켜준다.
- Performance (성능) : Client 위치를 파악하여 가장 가까운 서버를 선택함으로써 성능을 높여준다.
DNS와의 차이점
GSLB DNS 재해복구 서버의 상태를 모니터링(Health check) 하여 사용 불가능한 서버를 미리 파악하고, 서비스 대상에서 제외 서버의 상태를 파악할 수 없음 로드밸런싱 서버의 로드를 모니터링하여 로드가 적은 서버로 신규 트래픽을 유입시킴 Round Robin 방식을 사용하기에 정교한 로드밸런싱 불가함 Latency 지역별 Latency 정보를 기반으로 더 적은 Latency를 가지는 서버로 연결 Round Robin 방식을 사용하기에 Latency가 매우 긴 서버로 연결될 수 있음 위치기반 유저의 IP를 기반으로 지역정보를 획득 후 해당 지역을 담당하는 서버로 연결 Round Robin 방식을 사용하기에 별도의 지역성을 활용할 수 없음 GSLB 적용 시 브라우저에 주소를 적으면 일어나는 일
GSLB는 Local DNS Server와 Second-level Domain 사이에 위치한다.
- Local cache를 검색해서 매핑된 ip가 있는지 찾는다.
- hosts 파일을 검색해서 매핑된 ip가 있는지 찾는다.
- DNS Query를 Local DNS → Root DNS → Top Level DNS(.com, .kr, …)를 거쳐 GLSB로 보내진다.
- GSLB는 DNS Proxy로 동작하여 Second-level Domain을 감싸고 있으며, GSLB 정책이 적용된다.
- 접속 IP 기반으로 Latency, 위치 지역성을 토대로 가장 빠른 서버의 IP를 반환한다. 이 때, GSLB 자체적으로 Health check를 하고 있으므로 장애가 발생한 서버는 서비스 대상에서 제외된다.
- Domain name에 매핑된 ip를 획득한다.
- 해당 ip로 TCP 연결을 맺는다.
- TCP 연결 하에서 HTTP request를 보낸다.
- HTTP response를 받는다.
References
반응형'Web, Server, Cloud' 카테고리의 다른 글
OSI 7 Layers vs TCP/IP (0) 2022.06.23 URI vs URL (0) 2022.06.21 ubuntu 20.4 mongodb 설치 (0) 2022.06.17 gcloud 브라우저 없이 로그인 하기 (0) 2022.06.17 AWS ElastiCache 간단히 살펴보기 (0) 2022.01.12