[WEB] 웹의 동작 원리

토닉·2021년 8월 4일
0

WEB

목록 보기
1/1
post-thumbnail

웹의 동작 원리

인터넷이 동작하기 위해서는 컴퓨터가 최소 몇대 있어야 할까요?

인터넷이란?

  • 여러 통신망을 하나로 연결한다는 의미의 ‘인터 네트워크(inter-network)’라는 말에서 시작되었으며, 이제는 전 세계 컴퓨터들을 하나로 연결하는 거대한 컴퓨터 통신망을 의미합니다.
  • 클라이언트와 서버로 구성되어 있으며, TCP/IP라는 기본 프로토콜을 통해 제공되고 있습니다.

인터넷을 이용해 웹을 만들어 봅니다.

  • 인터넷으로 연결된 최소 2대의 컴퓨터가 필요

서버와 클라이언트

웹브라우저가 설치된 컴퓨터는 인터넷을 통해 전기적인 신호로 info.cern.ch라는 주소의 컴퓨터에게 request를 보냅니다.

웹브라우저-request("index.html이라는 파일의 코드를 주세요")

웹서버는 어떤 디렉토리에서 index.html이라는 파일을 찾고 웹브라우저가 설치된 컴퓨터에 신호를 보냅니다.

웹서버(info.cern.ch)-response(index.html)

이 때 요청하는 컴퓨터를 클라이언트 컴퓨터
응답하는 컴퓨터를 서버 컴퓨터라고 부릅니다.

웹브라우저는 클라이언트 컴퓨터에서 동작합니다.
웹서버는 서버 컴퓨터에서 동작합니다.

웹의 동작 원리


1. 사용자가 웹 브라우저를 통해 찾고 싶은 웹 페이지의 URL 주소를 입력
2. 입력한 URL 주소 중에서 도메인 네임 부분을 DNS 서버에서 검색
3. DNS 서버에서 해당 도메인 네임에 해당하는 IP 주소를 찾아 사용자가 입력한 URL 정보와 함께 전달
4. 웹 페이지 URL정보와 전달받은 IP 주소는 HTTP 프로토콜을 사용하여 HTTP 요청 메시지를 생성
5. 이렇게 생성된 HTTP 요청 메시지는 TCP 프로토콜을 사용하여 인터넷을 거쳐 해당 IP 주소의 컴퓨터로 전송
6. 도착한 HTTP 요청 메시지는 HTTP 프로토콜을 사용하여 웹 페이지 URL 정보로 변환
7. 웹 서버는 도착한 웹 페이지 URL 정보에 해당하는 데이터를 검색
8. 검색된 웹 페이지 데이터는 다시 HTTP 프로토콜을 사용하여 인터넷을 거쳐 원래 컴퓨터로 전송
9. 도착한 HTTP 응답 메시지(response)는 HTTP 프로토콜을 사용하여 웹 페이지 데이터로 변환
10. 변환된 웹 페이지 데이터는 웹 브라우저에 의해 출력되어 사용자가 볼 수 있게 됨

DNS, IP, TCP, HTTP가 뭔가요?

DNS

  • 범국제적 단위로 웹사이트의 IP 주소와 도메인 주소를 이어주는 환경/시스템
  • 이 안에서 부분적으로 역할을 하는 서버를 DNS 서버라고 부른다.
  • DNS 서버는 IP 주소를 특정 도메인 주소와 같다는 기록을 저장하고, 클라이언트가 도메인 주소를 검색했을 때 IP 주소로 연결되도록 해준다.

DNS 서버 종류 구분
DNS 서버가 초고성능으로 하나만 있다면 위 내용 그대로 이해하면 되지만, 도메인 수가 너무 많기 때문에 DNS 서버 종류를 계층화해서 단계적으로 처리합니다.
도메인의 총 관리는 ICANN에서 하기 때문에, DNS 서버도 최상위 도메인에서 개인 도메인의 서브 도메인까지 도메인 이름의 분류와 마찬가지로 디렉토리/계층 형태로 구분된다라고 생각하면 이해가 쉬울 것 같습니다.

전체적인 DNS 동작 원리

IP

컴퓨터의 주소, 이 프로토콜에서는 메시지(request)가 목표로 하는 컴퓨터에 잘 도착하도록 해주는 역할을 합니다.

TCP

IP의 상위 프로토콜입니다. 네트워크 상에서 메시지를 전달할 때, 한번에 메시지를 전달하기 보다, 작은 단위(패킷)으로 쪼개서 메시지를 전달합니다. TCP는 전달받은 패킷들을 재조립하고, 손상되거나 손실된 패킷이 있다면, 재요청합니다.

HTTP

TCP의 상위 프로토콜입니다. TCP에서 패킷을 재조립하여 메시지 전체를 확인했다면, 이제 그 메시지를 해석해야 합니다. HTTP에는 Request Methods, data type등 원하는 메시지를 전달히기 위한 여러 규칙들이 있습니다.

참고 자료
생활 코딩
DNS란?
IP,TCP,HTTP

profile
우아한테크코스 4기 교육생

0개의 댓글