DNS(Domain Name System)
www.xxxxx.com처럼 사람이 읽을 수 있는 도메인 이름을
12.34.56.78과 같은 IP주소로 바꿔서 컴퓨터가 통신할 수 있게 도와주는 분산형 데이터베이스 시스템이다.
- 인터넷용 전화번호부이다.
이름으로 전화번호를 저장하면 번호를 일일이 외울 필요가 없기 때문이다.

구성 요소
- 도메인 네임 스페이스 : DNS가 저장 관리하는 계층적 구조
- 네임서버 : 권한이 있는 DNS 서버, 해당 도메인 이름의 IP 주소를 찾는다
- 리졸버 : 권한 없는 DNS 서버, DNS 클라이언트 요청을 네임서버로 전달하고 찾은 정보를 클라이언트에게 제공하는 기능을 수행
과정
- 브라우저가 www.xxx.com을 입력하면 DNS 리졸버는 자신의 캐시에 있는지 확인하고 있다면 반환한다.
없다면 DNS 서버에 요청한다.
- DNS 리졸버는 Root DNS Server에 요청하면 TLD DNS Server의 IP 주소를 전달
- .com TLD DNS Server(www.xxx".com" 이기때문)는 해당 도메인 이름의 Authoritative DNS Server의 주소를 전달
- Authoritative DNS Server는 실제 IP 주소를 반환
- 리졸버는 해당 주소를 캐싱한다.
ROOT -> COM -> xxx.com 서버를 차례대로 질의해서 답을 찾는 과정을 Recursive Query라고 한다.
DNS Round Robin
DNS 서버 구성 방식 중 하나이다.

원리
- 웹 서비스를 담당할 여러 대의 웹 서버는 자신의 공인 IP를 각각 가짐
- 접속을 위해 브라우저에 도메인 주소를 입력하면 DNS는 정보를 조회하는데 이때 IP 주소를 여러대의 서버 IP리스트 중 랜덤하게 하나 또는 여러개를 선택해 알려준다.
- 사용자는 복수의 웹 서버에 나뉘어 접속 되며 자연스럽게 부하가 분산된다.
단점
1. 서버의 수 만큼 공인 IP 주소가 필요하다.
2. 균등하게 분산 되지 않는다.
- 모바일 사이트의 경우 프록시 서버는 이름변환 결과가 일정 시간 동안 캐싱되어 같은 프록시 서버를 경유 하는 접속은 항상 같은 서버로 접속된다.
또한 PC 용 웹 브라우저도 DNS 질의 결과를 캐싱하기 때문에 균등하게 부하분산 되지 않습니다.
3. 서버가 다운되도 확인이 불가능 하다.
- 다운이 되었는지 접속 수 가 꽉찾는지 상황에 따라 질의 결과를 제어할 수 없다.
해결법
1. 다중 구성화 방식(Synchronous Time-Division Multiplexing)
- AP 서버에 VIP를 부여하여 다중화를 구성하면 각 AP서버를 체크한 후 이상이 감시되면 VIP를 정상 AP 서버로 인계 하는 방식이다.
서버 상태를 확인하여 우회루트 제공 또는 에러를 전송하는 방식이다.
2. 가중치 편성 방법(Weighted round robin)
- 각각의 서버에 가중치를 두어 분산 비율을 정한다.
예를 들면 처리 능력이 좋은 서버에 가중치를 높게 두어 많은 접속을 처리하는 방법이 있다.
3. 최소 연결 방식(Least connection)