0185

학교

[컴퓨터 네트워크] Chapter2. Application Layer (Part 2) - (1)

4. The Domain Name System DNS

[1] DNS : Domain Name System

1) 사람과 인터넷 호스트, 라우터의 식별자

  • 사람의 식별자 : SSN(주민번호), 이름, 여권 번호

  • 인터넷 호스트와 라우터의 식별자

    • IP 주소 (32 비트) : 데이터그램 주소 지정에 사용한다.

    • 이름 (예 : cs.umass.edu) : 사람이 사용하기 쉽게 만들어졌다.

3) Q. IP 주소와 이름을 어떻게 매핑하고, 그 반대의 경우는 어떻게 할까?

  • DNS의 핵심 기능을 나타내고, 이름과 IP 주소 간의 변환 방법에 대한 궁금증을 제기한다.

4) Domain Name System

: DNS는 분산 데이터베이스로, 많은 네임 서버의 계층 구조로 구현된다.

  • application-layer 프로토콜: 호스트, 네임 서버가 통신하여 이름을 해석 (주소/이름 변환)하기 위해 통신하는데 사용된다.

  • 참고 : 애플리케이션 계층 프로토콜로 구현된 핵심 인터넷 기능

  • 네트워크 “엣지”에서의 복잡성이 존재한다. (이는 DNS가 네트워크 코어가 아닌 엣지에서 작동함을 의미한다.)

[2] DNS : 어떻게 작동하는가?

1) 사용자가 www.handong.edu에 엑세스하는 경우

  1. 동일한 사용자 컴퓨터가 DNS 애플리케이션의 클라이언트 측을 사용한다.

  2. 브라우저는 URL에 호스트 이름 www.handong.edu을 추출하여, DNS 애플리케이션의 클라이언트 측에 호스트 이름을 전달한다.

  3. DNS 클라이언트가 호스트 이름이 포함된 쿼리를 DNS 서버로 보낸다.

  4. DNS 클라이언트는 호스트 이름의 IP 주소가 포함된 응답을 수신한다.

  5. 브라우저가 DNS로부터 IP 주소를 받으면, 해당 IP 주소의 포트 80에 위치한 HTTP 서버 프로세스에 대한 TCP 연결을 시작할 수 있다.

[3] DNS : Services, structure

1) DNS services

  • 호스트 이름을 IP 주소로 변환

  • 호스트 별명 지정 (앨리어싱): 하나의 호스트에 여러 이름을 부여할 수 있다.

    • 정식, 별칭 이름

  • 메일 서버 별명 지정 (앨리어싱): 이메일 라우팅을 위해 사용된다.

  • 부하 분산

    • 복제된 웹 서버 : 하나의 이름에 여러 IP 주소가 대응될 수 있다. (트래픽 분산 용도)

2) Q. Why not centralize DNS? (DNS를 중앙 집중화하지 않는 이유가 무엇인가?)

  • 단일 실패 지점 방지

  • 트래픽 양 관리: 모든 쿼리를 한 곳에서 처리하지 않아 효율적

  • 멀리 떨어진 중앙 집중식 데이터베이스의 문제

  • 유지 보수의 어려움

3) A. 확장이 불가능

  • comcast DNS 서버만 하루에 6000억 개의 DNS 쿼리 발생 (매우 큰 규모의 트래픽임을 보여준다.)