-
[HTTP 기본] Web 그리고 Network기타 2022. 2. 15. 18:09반응형
이 글은 혼자 학습한 내용을 바탕으로 작성되었습니다.
틀리거나 잘못된 정보가 있을 수 있습니다.
댓글로 알려주시면 수정하도록 하겠습니다.
1. Http(HyperText Transfer Protocol)
우리가 흔히 사용하는 웹 브라우저(크롬, Edge, Explorer 등)에 URL(주소)를 입력하면 브라우저에 화면이 출력됩니다.
이 것은 브라우저가 보여주는 것이 아닌 입력한 URL에 있는 리소스를 서버로부터 받아와 웹 브라우저는 해당 리소스를 출력하여 주는 것입니다.
여기서 요청을 받아 리소스를 전달해 주는 쪽을 서버라고 부르며 웹 브라우저 등과 같이 요청을 한쪽을 클라이언트라고 부릅니다.
즉 클라이언트로부터 요청이 전달되어 서버는 해당 요청에 맞는 리소스를 다시 클라이언트로 전달하는 일련의 흐름을 결정하고 있는 것이 바로 Http입니다.
2. Http의 시작
http의 시작은 연구자 간의 지식을 공유를 위한 목적으로 만들어졌습니다.
최초 고안된 것은 문서를 전달하는 것으로 하이퍼텍스트에 의해 서로 참조할 수 있는 WWW(Word Wide Web)의 기본 개념이었습니다.
이러한 WWW의 구성은 문서 작성 언어로는 HTML(HyperText Markup Language)를 사용하고 HTML 문서를 전송하는 프로토콜은 HTTP를 사용 문서의 주소를 지정하는 것은 URL(Uniform Resource Locator) 등으로 고안되었습니다.
그래서 지금도 HTML을 이용하여 웹 페이지를 작성하고 HTTP를 통해 HTML 문서를 서버와 클라이언트 사이에서 전달하며 해당 문서를 지정하는 URL을 통해 웹 페이지를 받아 오는 것입니다.
이것이 현재에는 단순히 웹(Web)으로 불리고 있습니다.
3. 네트워크 TCP/IP
우리가 사용하는 일반적인 네트워크는 TCP/IP 프로토콜에서 동작하고 있습니다.
HTTP 또한 TCP/IP 프로토콜을 이용하여 네트워크 통신을 하고 있습니다.
컴퓨터는 다양한 하드웨어와 다양한 운영체제가 있습니다. 이런 서로 다른 컴퓨터가 네트워크를 통해 상호 통신을 하기 위해서는 동일한 방법으로 통신을 해야 됩니다.
서로 동일한 통신을 하기 위해서는 이러이러한 통신을 하자와 같은 규칙이 필요하게 되고 이러한 규칙을 우리는 프로토콜이라고 부릅니다.
케이블 규격 IP 주소 지정 방법 등 다양한 프로토콜이 존재합니다.
그중 인터넷과 관련된 프로토콜을 모아 놓은 것을 TCP/IP 프로토콜이라 부릅니다.
TCP/IP 프로토콜은 TCP 프로토콜과 IP 프로토콜을 합쳐 부르는 말이지만 IP 프로토콜을 사용하는 통신은 모두 TCP/IP로 총칭해서 사용됩니다.
4. Layer(계층)
TCP/IP 프로토콜에는 총 4개의 계층으로 나누어져 있습니다.
계층에 대한 상세 설명은 다음 포스팅에서 설명하고 계층으로 나누어진 이유에 대해 설명하도록 하겠습니다.
계층화를 하지 않고 하나의 프로토콜로 되어 있다면 통신 규약의 일부분이 변경되었을 때 전체를 변경해야 되는 경우가 생길 수 있습니다.
그러나 계층화를 통해 각 계층이 담당해야 될 부분만 담당한다면 통신 규약의 일부가 변경되어도 해당 통신을 담당하는 계층만 변경이 발생하므로 다른 계층에는 변경이 발생하지 않는 장점이 있습니다.
또한 계층화를 하면 설계를 쉽게 할 수 있습니다. 각 계층은 그 계층이 담당하는 부분을 고려하여 설계를 진행 하면 되므로 설계의 편의를 제공합니다.
이것으로 Http의 기본 Web이 무엇인지와 Http가 사용하는 TCP/IP 프로토콜에 대해 간단하게 알아보았습니다.
다음 포스팅에서는 TCP/IP 프로토콜의 4개 Layer에 대해 설명하도록 하겠습니다.
반응형'기타' 카테고리의 다른 글
[HTTP 기본] HTTP 메시지 (0) 2022.02.22 [HTTP 기본] HTTP 메소드 (0) 2022.02.17 [HTTP 기본] 간결한 HTTP 프로토콜 (0) 2022.02.17 [HTTP 기본] TCP/IP 4계층 (0) 2022.02.16 [Log4j] Zero Day 취약점 (0) 2021.12.26