[TIL 23] 웹의 동작 원리

_dodo_hee·2021년 3월 10일
0

OTHERS

목록 보기
4/8
post-thumbnail

웹의 동작 방식

클라이언트가 서버에 요청을 보내면 서버는 해당 요청에 대해 응답한다.

예를 들어, 음식점에 웹 동작 방식을 비유하면 쉽게 생각 할 수 있다.

클라이언트와 서버 📌

웹에 연결된 컴퓨터는 클라이언트 와 서버 라고 합니다.

  • 클라이언트 : 웹 사용자의 인터넷 연결된 장치들과 웹에 접근하는 소프트웨어이다.(크롬,파이어폭스)
  • 서버 : 웹페이지, 사이트 또는 앱을 저장하는 컴퓨터이다.

쉽게 비유하면 클라이언트는 종업원 서버는 요리사이다.

웹 주소를 입력할때 웹에서는 무슨일이 일어날까?

실제로는 엄청 복잡한 방식으로 진행된다

tcpschool의 웹 동작원리 사진

주요용어 📌

  • 인터넷 연결 : 웹에서 데이터를 보내고 받을 수 있게 해준다.
  • TCP/IP : Transmission Control Protocol (전송 제어 규약)과 Internet Protocol (인터넷 규약)은 데이터가 어떻게 웹을 여행해야 하는지 정의하는 통신 규약이다.
  • DNS : Domain Name System Servers (도메인 이름 시스템 서버)는 웹사이트를 위한 주소록과 같다.
  • HTTP : Hypertext Transfer Protocol (하이퍼텍스트 전송 규약)은 클라이언트와 서버가 서로 통신할 수 잇게 하기 위한 언어를 정의하는 어플리케이션 규약이다.
  • 컴포넌트 파일 : 주요한 타입이 두가지 있다.
  • 코드파일 : HTML,CSS,JAVASCRIPT 로 생성.
  • 자원 : 이미지,음악,비디오,단어 문서, PDF 같은 모든 것들

비유를 해서 생각해보자 😁

내가 상점을 가려고 하는데 상점과 우리집과의 거리가 있다. (인터넷 연결)
내가 상점을 갈때 이용하는 교통수단. (TCP/IP)
내가 상점 주소를 찾아보는 것 (DNS)
내가 상품을 사기 전에 사용하는 언어 (HTTP)

브라우저에 웹 주소를 입력할때 작동 순서 🔍

  1. 브라우저는 DNS 서버로 가서 웹사이트가 있는 서버의 진짜 주소를 찾습니다.
    (내가 상점 주소를 찾는다.)
  2. 브라우저는 서버에게 웹사이트의 사본을 클라이언트에게 보내달라는 HTTP 요청 메세지를 서버로 전송한다. 메세지,클라이언트와 서버 사이에 전송된 모든 데이터는 TCP/IP 연결을 통해 전송된다.
    (상점에서 상품을 준비한다.)
  3. 메세지를 받은 서버는 클라이언트의 요청을 승인하고 "200 OK" 메세지를 클라이언트에게 전송한다. 그 다음 서버는 웹사이트의 파일들을 데이터 패킷이라 불리는 작은 일련의 덩어리들로 브라우저에 전송하기 시작한다.
    👉200 ok는 "물론이죠 당신은 웹사이트를 볼 수 있어요!"라는 뜻
    (상점은 여러분이 주문한 상품을 전달하고 여러분은 그것을 집으로 가져간다.)
  4. 브라우저는 작은 덩어리들을 완전한 웹 사이트로 조립하고 당신에게 보여준다.
    (상품이 당신의 문에 도착한다.)

DNS

Domain Name System Servers (도메인 이름 시스템 서버)는 웹사이트를 위한 주소록과 같다.

도메인 이름 서버는 여러분이 브라우저에 입력하는 웹주소를 웹사이트의
실제 주소에 맞춰주는 서버이다.
도메인 이름 서버는 브라우저에 입력하는 웹주소를 웹사이트의
실제 주소에 맞춰주는 특별한 서버이다.

패킷

서버에서 클라이언트로 전송되는 데이터의 포맷

데이터가 웹에서 거쳐서 전송될때 수천개의 작은 덩어리들로 전송된다.
그래서 다양한 웹 사용자들은 동시에 같은 웹 사이트를 다운로드 할 수 있게 된다.
만약, 웹 사이트가 하나의 큰 덩어리들로 전송된다면,
오직 한 번에 하나의 사용자만 다운로드 할 수 있을 것이다. (매우 비효율)

profile
무럭무럭 자라나는 도도 개발성장일기

0개의 댓글