본문 바로가기
기초

Web

by Adam92 2020. 6. 6.

처음에 Web하면 그냥 인터넷을 생각 했던 것 같다. 하지만 공부해보니 생각보다 재미있는구조로  되있엇다.

 

 Web 이란 : World Wide Web을 줄여서 부르고 인터넷에 연결된 사용자들이 서로의 정보를 공유할 수 있는 공간을 의미한다.

인터넷과 같은 의미로 사용되곤 있지만 정확히 말해, Web은 인터넷상의 인기 있는 하나의 서비스일 뿐이다.

하지만 지금은 인터넷의 가장 큰 부분을 차지하고있다.

 

Web의 특징 : 웹은 인터넷 상에서 텍스트나 그림, 소리, 비디오등과 같은 멀티미디어 정보를 하이퍼텍스트 방식으로 연결하여 제공합니다. 

 

웹의 구성


웹에서 HTML 언어를 사용하여 작성된 하이퍼텍스트 문서를 Web page라고 부릅니다. 그리고 Web page들의 집할을 Web site라고 부릅니다. 

 

웹은 이렇게 수많은 웹 파이지들이 hyperlink를 통해 서로 연결되어 구성됩니다.

여기서, hypertext란 문서 내부에 또 다른 문서로 연결되는 참조를 집어 넣음으로써 웹상에 존재하는 여러 문서끼리 서로 참조할 수있는 기술을 의미하고 이떄 내부에서 또 다른 문서로 연결되는 참조를 hyperlink라고 부릅니다.

 

사용자가  Web page에 포함된 hyperlink를 따라 다른 Web page들로 이동하는 것을 Web Surfing 이라 부르며, 이때 검색하기 위해 사용하는 프로그램을 Web browser라고 합니다.

 

흔히 Web site와 Homepage라는 용어ㅏ를 같은 의미로 사용하는 경우가 많은데, 사실 Homepage의 정확한 의미는 Web browser가 시작 될때 맨 처음 자동으로 표시되는 Web page나 Web browser의 홈 버튼을 누를 때 이동되는 Web page를 말합니다.

 

 

 

웹의 동작 방식

웹의 동작 방식은 여러분의 컴퓨터나 폰의 웹브라우저 안에서 웹페이지를 볼때 무슨일이 발생하는지에 대한 개념입니다.


클라이언트와 서버

 

클라이언트와 서버는 웹에 연결된 컴퓨터입니다. 이둘은 서로 상호작용화는 밑의 그림과 같습니다.

 

 

Cliend and Server

  • 클라이언트는 일반적인 웹사용자의 인터넷이 연결된 장치들 (예를들어 핸드폰, 컴퓨터, 태블릿pc 등등)과 이런 장치들에서 이용가능한 웹에 접근하는 소프트웨어 (예를들어 파이어폭스, 크롬과 같은 웹브라우저들)입니다.

 

  • 서버는 웹페이지, 사이트, 또는 앱을 저장하는 컴퓨터입니다. 클라이언트의 장비가 웹페이지에 접근을 원할때 (requests  -> )  서버로부터 클라이언트의 장치로 사용자의 웹 브라우저에서 보여지기 위한 웹페이지의 사본이 다운로드 됩니다.( <- response )

 

 

여러 용어

 

TCP / IP : Transmission Control Protocol (전송 제어 규약)과 Internet Protocol (인터넷 규약)

  • 데이터가 어떻게 웹을 건너 여행해야 하는지 정의 하는 통신규약입니다. 주문을하고 살 수있게 하는 운송장치와같습니다.
  • 예를들어, 이것은 차 또는 자동차 또는 여러분들의 두다리와 같습니다.

 

 

DNS : Domain Name System Servers (도메인 이름 시스템 서버)

  • 웹사이트를 위한 주소록과 같습니다.  도메인이름 (www.google.com)을 머신이 읽을 수 있는 IP 주소(199.0.4.0)로 변환
  • DNS 서버는 이름에 대한 요청을 IP주소로 변환하여 최종 사용자가 도메인 이름을 웹 브라우저에 입력할 떄 해당 사용자를 어떤 서버에 연결할 것인지를 제어하고 이요청을 쿼리라고 부른다. ex) Cafe24, Amazon Route등.. 

 

 

Hosting : Web hosing service (호스팅)

  • 클라이언트의 요청이 오면 홈페이지의 구성파일들(html, css, javascript)을  절대 꺼지지 않는 호스트컴퓨터(웹 서버)에 저장되어 있다가 보내주어 응답해주는 것 

 

 

HTTP : Hypertext Transfer Protocol (하이퍼텍스트 전송 규약)

  • 클라이언트와 서버가 서로 통신할 수 있게 하기위한 언어를 정의하는 어플리케이션 규약입니다. (예를들어 상품을 주문하기위해 사용하는 언어와 같습니다.       

 

 

컴포넌트 파일

  • 코드 파일 : 웹사이트는 근본적으로 HTML, CSS, JavaScript로 생성됩니다.
  • 자원 : 이미지, 음악, 영상등 웹사이트를 만드는 요소들을 위한 공동적인 이름입니다.

 

 

 

Conclusion


 

 

 

 

  1. 브라우저는 DNS 서버로 가서 웹사이트가 있는 서버의 ip주소를 찾습니다.
  2. 브라우저는 서버에게 웹사이트의 사본을 클라이언트에게 보내달라는 HTTP 요청 메세지를 서버로 전송합니다.이메세지는 그리고 클라이언트와 서버 사이에 전송된 모든 데이터는 TCP/IP 연결을 통해 전송됩니다.
  3. 이메세지를 받은 서버는 클라이언트의 요청을 승인하고 "Hello World" 메세지를 클라이언트에게 전송합니다. 그다음 서버는 웹사이트의 파일들을 데이터 패킷이라 불리는 작은 일련의 덩어리들로 브라우저에 전송하기시작합니다.
  4. 브라우저는 이 작은 덩어리들을 완전한 웹사이트로 조립하고, 사용자에게 보여줍니다.이제 사용자는 화면에서 "Hello Wolrd" 메세지를 볼 수 있을 겁니다. 

 

 

 

이상 Web에대해서 다뤄 봤습니다. 조금이나마 도움되시는 분들이 있으면 좋겠습니다.

 

'기초' 카테고리의 다른 글

Data Structure : day 1  (0) 2020.06.08
Git and Github  (0) 2020.06.04