[네트워크] 7차시 - 응용계층(4)

2023. 3. 15. 00:16CS/네트워크

728x90

//공부 기록용 포스팅입니다. 틀린 부분이 있을 경우 댓글로 알려주시면 감사합니다! 😎

 

 

HTTP의 예를 통한 응용계층 최적화 및 DNS 등 추가 응용계층 프로토콜을 배운다.

 

1. DNS(Domain Name System)

  • 인터넷에서의 ID(기계)
    • IPv4: 32bit: xxx.xxx.xxx.xxx
    • IPv6: 128bit: xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx
  • Domain Name
    • 순수하게 인간을 위한 시스템
    • 예) www.naver.com
    • 응용계층(인터넷 5계층)에서만 관여한다.

1-1. Domain Name System 서비스

  • Domain Name → IP 주소 변환
  • Aliasing 관리: 같은 곳에 대해서 여러 개의 주소를 쓰게 하는 개념
    • 동일한 IP에 다른 도메인 네임을 매핑
  • 전우주적으로 중앙 관리: 하나의 주소로 모든 사람이 접속
  • 분산 관리: 계층적 분산 관리
    • 동일한 서버에 접속하다 서버가 터지는 것을 막기 위해

1-2. Domain Name Server의 계층

  • 최상위 계층: Root Name
    • Top level domain name server 관리
    • Top level domain: .kr .com .edu .org .net
      • Top level domain server가 누구인지만 알려줌
    • Top level domain Server에 유효 기간과 함께 IP를 반환
    • 유효 기간 동안에는 동일한 top level domain server IP를 요청하지 않는다.
      • local name server는 top level domain가 궁금할 때 root name server에게 유효 기간 동안 한 번만 물어봄
      • 경우에 따라서는 local name server가 직접 물어보지 않고 local name server 위에 있는 서버에서 물어봄
    • TLDNS(.kr)에게 www.google.com 이 어디냐고 물어보면 답해주지 않음
      • Root NS를 알려주거나 .com NS만 알려줌
      • Authroized DNS, Local DNS는 알려줌
  • Root NS(Domain Name Server의 서비스를 받는 방법)
    • Recursive Domain Name Resolution
      • 모든 캐시가 time expired 되었다고 가정하면 → Local DNS는 Root NS에게 물어봄
      • 요즘의 Root DNS는 친절하지 않다. 프로토콜은 존재하지만 동작하지 않는다.
      +notrace @198.41.0.4 www.google.com ANY
      //최종적인 주소까지 알려주는 옵션이지만
      
      * 루트서버는 .com에 해당하는 도메인 네임서버의 주소만 알려줌
    • Iterative Domain Name Resolution
        • 모든 캐시가 time expired 되었다고 가정하면
        • Local DNS가 Root NS에게 물어보면 → Root NS는 .com TLDNS의 리스트를 알려준다.
          dig @198.41.0.4 www.google.com ANY
               (루트 서버)
          * .com에 해당하는 도메인 네임의 IP를 알려줌
      • Local DNS가 .com TLDNS의 IP주소에 물어보면 → .com TLDNS는 google.com Authroized DNS 리스트를 알려준다.
        dig @192.55.83.30 www.google.com ANY
             (.com TLDNS)
        * google.com에 해당하는 네임서버의 IP를 알려줌
      • Local DNS가 Authorized DNS의 IP주소에 물어보면 → Authorized DNS는 www.google.com을 알려준다.
        +notrace @198.41.0.4 www.google.com ANY
        //최종적인 주소까지 알려주는 옵션이지만
        
        * google.com의 IP를 알려줌
      • Local DNS는 사용자에게 www.google.com을 알려줄 수 있다.
  • 구글과 같은 한대의 IP로 감당할 수 없기 때문에 도메인 이름은 1개에 여러 개의 IP주소로 로드 밸런싱을 한다.

 

2. P2P(Peer-to-Peer)

  • 서버 없이 단말(peer)들끼리 직접 상호 간 서비스를 제공하는 시스템(물물교환)
  • 단점
    • 서비스가 보장되지 않는다.
    • peer들은 IP를 바꾸며 옮겨 다닐 수 있다.
  • Hybrid System
    • 서비스 메타 정보는 서버가 관리하고
    • 실질적인 서비스는 peer끼리
    • 예) skype, 스타크래프트 - 상대방이 어디에 있는지 알아야 하고, 실제 커뮤니케이션은 peer끼리
  • Pure P2P
    • torrent: 토렌트
    • 문제: peer가 없다, 신뢰 X(해쉬코드), 이기적, 조각들의 쏠림현상
    • 비트코인

 

[복습]

  1. Domain Name: 순수하게 인간을 위한 시스템으로 응용계층에서만 관여한다.
  2. Domain Name System: domain name  IP address
    1. 하나의 주소로 모든 사람이 접속(전우주적으로 중앙 관리)
    2. 동일한 서버에 접속하다 서버가 터지는 것을 막기 위해(계층적 분산 관리)
  3. 최상위 계층: Root Name - top level domain name server를 관리
    1. top level domain server에 유효기간과 IP주소를 반환
  4. Root NS - TLDNS - Authroized DNS - Local DNS
    1. RootNS와 TLDNS는 캐시가 없으며, 주소를 물어보면 아래 레벨까지만 알려준다.
    2. Authroized DNS와 Local DNS는 캐시를 가지고 있지만, 모든 캐시에는 타임아웃이 있다.
    3. 캐시로 인해 많이 물어보는 것에 대해서는 상위 단계로 올라가지 않고 캐시에서 찾을 수 있다.
  5. Domain Name Server의 서비스를 받는 방법
    1. Recursive Domain Name Resolution: Local DNS가 Root NS에 주소를 물어보는 방법, 프로토콜은 존재하지만 동작하지 않는다.
    2. Iterative Domain Name Resolution: Local DNS  Root NS  Local DNS  TLDNS  Local DNS → Authroized DNS  → IP 주소
  6. P2P: 서버 없이 단말들끼리 직접 상호 간 서비스를 제공하는 시스템

 

 

 

 


한국항공대학교 김철기 교수님의 [컴퓨터 네트워크] 강의 정리입니다감사합니다.

http://www.kocw.net/home/cview.do?lid=88cefaa8d4d718fc 

 

컴퓨터 네트워크

현대의 컴퓨터는 네트워크와 분리해서는 생각할 수 없다. 수많은 정보의 교류, 부가가치의 창출은 모두 네트워크를 통해서 이루어 진다. 본 과목에서는 컴퓨터 네트워크의 구성요소를 이해하고

www.kocw.net

 

728x90