우리가 Naver를 접속하고자 할 때, Naver의 IP를 암기하고 접속하지 않는다.
www.naver.com이라고 주소창에 치면 포탈에 접근이 가능하다.
이러한 시스템이 이루어지기 위해서 DNS가 필요하다.
DNS에 대해서 알아보기 위해 역사?부터 시작해서 설명하고자 한다.
인터넷 규모가 작을 때는 host file을 두어서 해당 도메인에 맞는 IP주소를 맵핑해
놓았다.
하지만 도메인만 몇억개가 넘어가는데 하나의 host file에 이 모든 데이터를 만들어
각 컴퓨터에 배치하는 것은 현실적으로 불가능 할것이다.
저장이 가능하다 하여도, 만약에 naver의 IP주소가 바뀌면 전 세계 모든 컴퓨터의
host file이 변경되어야 한다. 이것 또한 현실적으로 불가능 하다.
결과적으로 나온 개념이 그래서 DNS이다.
위와 같이 엄청난 양의 정보를 작게 나누어서 DNS 서버라는 수 많은 컴퓨터에 분산
시켜서 저장 한다. 그리고 각 호스트는 대응이 필요할 경우 이 정보를 가지고 있는
가장 가까운 컴퓨터와 통신하는 개념이다.
그러면 www.naver.com이 어떻게 w.x.y.z의 IP로 변환 될까?
여기서 주소를 이름으로, 이름을 주소로 대응 시키는 것을 이름-주소 변환(name -
address resolution)이라고 한다.
주소를 이름으로, 혹은 이름을 주소로 대응시키고자 하는 호스트는 변환기(resolver)
라고 불리는 DNS 클라이언트를 호출한다.
그러면 변환기는 대응 요구를 보내기 위해 가장 가까운 DNS 서버에 접속한다.
그러고 만약 접속한 DNS 서버에 요구하는 정보가 있으면 바로 응답이 가능하다.
하지만 접속한 DNS 서버에 데이터가 없을 경우에는 다른 서버를 참조하게 하거나
다른 서버가 이 정보를 제공하도록 요구한다.
위에서 설명한 거와 같이 다른 서버를 참조하게 하거나 다른 서버가 이 정보를 제공
하도록 요구 와 같이 2가지 요청 방식이 있다는 것을 알 수있다.
하나는 귀환적 변환(Recursive resolution)이고 다른 하나는 반복전 변환
(iterative resolution)방법이다..
수업에서 들었을때 교수님이 이렇게 설명 하셨다.
귀환적 방법은 책임지고 모든 일을 마무리하고 결과를 가져다 주는 것이다.
반복접 방법은 책임지지 않고 모르겠다 하고 있을만한 곳을 힌트를 주고
다시 찾아가는 방법이다.
같이 일하는 사람은 귀환적인 유형의 사람을 선호한다고..
밑의 그림에서 알 수 있듯이, 귀환적 방법을 경우
클라이언트가 하나의 서버에 한번 요구하면 기다리면 결과를 가져온다.
반면 반복적 방법은 하나의 서버에 요구하고 없으면 다시 다른 곳에 여러번 요구해서
자기가 결과를 찾아야 한다.
위와 같이 DNS가 작동 과정을 알아보았다.
'학부_대학원 > 네트워크' 카테고리의 다른 글
SSL[Secure Socket Layer] (0) | 2016.08.08 |
---|---|
IPSec [1] (0) | 2016.08.05 |
네트워크 [신뢰성 대 비신뢰성] (0) | 2016.08.02 |
네트워크 [비연결 vs 연결 지향 ] (0) | 2016.08.02 |
LAN의 매체 접근 제어[MAC]방식 (0) | 2016.07.31 |