Web & HTTP 그리고 DNS

·2024년 6월 4일
0

FE Interview

목록 보기
2/16

🔗 참고

  1. 컴퓨터통신망 수업자료
  2. MDN : HTTP 개요
  3. MDN : HTTP의 흐름
  4. AWS : DNS
  5. Github

📌 Web & HTTP

Web

우선 웹 페이지는 객체들로 구성되어있다. 이 객체들은 HTML 파일, 이미지, 오디오 파일일 수도 있다. 웹 페이지는 base HTML 파일로 구성되어있는데 이들은 몇 개의 참조된 객체들을 포함하고 각각의 URL에 의해 주소화할 수 있다.


HTTP : Hypertext Transfer Protocol

HTTP는 HTML 문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜. 클라이언트-서버 프로토콜이다.

  1. client : 브라우저는 HTTP 프로토콜을 이용해서 요청을 할 수도 있고 응답을 받을 수도 있다. 그리고 웹 객체들을 표현하기도 한다.
  2. server : 웹 서버는 HTTP 프로토콜을 이용해서 요청(Request)에 대한 응답(Response)을 객체로 제공한다.

DNS : Domain Name System

인터넷은 IP 주소를 통해 통신을 하게 되는데 IP 주소를 숫자로 되어있어 사람들이 구분하기가 어려운 측면이 있다. 따라서 도메인 이름(ex. www.google.com)을 통해 통신을 할 수 있도록 한다. 즉 도메인 네임과 IP 주소를 바꾸게 되는(?) 프로토콜이라고 할 수 있다.

분산적인 형태의 데이터베이스로 되어있고 계층적이다. DNS 서버는 도메인 이름을 주소로 변환하여 클라이언트에게 제공한다.

  • Root DNS Servers : Top Level Domain 서버들을 관리하고 그 정보를 가진다.
  • Top Level Domain(TLD) : 인터넷에서 도메인 이름의 가장 마지막 부분으로 .com, .org, .edu, .kr 등을 의미한다. 각 최상위 도메인마다 server들에 대한 정보들을 가지고 있다. (ex. .com DNS Servers)
  • Authoritative Name Server : 각 기관 수준, 기관 내 모은 host에 대한 DNS Entry를 가지고 있다.
  • google.com DNS Servers : 특정 host에 대한 응답은 여기의 DNS Server가 제공

'google.com'을 입력한다면..

  1. 사용자가 웹 브라우저를 통해 google.com을 입력한다면, 루트 서버에서 .com DNS server를 찾은 뒤, 해당 DNS server의 IP 주소를 받는다. → .com DNS server에서 google.com DNS server를 얻기 위해 물으면, google의 authritative name server의 이름과 IP 주소를 받는다. → google.com DNS server에서 원하는 IP 주소를 받는다.
  2. 브라우저는 HTTP 프로토콜을 사용해 Request 메시지를 생성하고 HTTP Request 메시지는 TCP/IP 프로토콜을 사용하여 서버로 전송된다.
  3. 서버는 Response 메시지를 생성하여 다시 브라우저에게 데이터를 전송한다.
  4. 브라우저는 Response를 받아 파싱하여 화면에 렌더링한다.

0개의 댓글