네트워크

HTTP정리 - URL과 웹 브라우저 요청 흐름

ghtis1798 2021. 5. 15. 20:47

URI이란?

Uniform Resource Identifier로 통일된 리소스 식별자이다. 리소스 식별을 위한 방법은 구체적으로 URL과 URN 2가지가 더 있다.

URL

Uniform Resource Locator로 위치를 통해 Resource를 식별하는 방식이다.

  1. scheme : http, https, ftp와 같은 프로토콜을 지정한다.
  2. host : url, urn, dns와 같은 host명을 적는다. ex) www.google.com
  3. port : port 번호를 적는다. 생략 가능
  4. path : /path로 리소스 경로를 적는다. ex) search
  5. query : ?로 시작하며 &로 추가 가능하다. ?keyA=valueA&keyB=valueB
    • query parameter, query string 등으로 불리며 웹서버에 제공하는 파라미터이다.

URN

Uniform Resource Name으로 위치를 통해 이름을 통해 Resource를 식별하는 방식이다. URL과의 차이점은 위치는 변할 수 있지만, 이름은 변하지 않는다는 점이다. 따라서 URN은 절대적이고 영속적인 경로를 지정하는데 유용할 수 있다.

HTTP 전송과정

  1. 애플리케이션 단에서 HTTP 메서드를 생성한다.
  2. 생성한 HTTP 메서드를 SOCKET 라이브러리를 통해 전달한다.
    • SOCKET라이브러리는 다음과 같은 역할을 한다.
      • A: TCP/IP 연결 (IP, PORT)를 연결한다.
      • B: 데이터를 전달한다.
  3. OS는 SOCKET 라이브러리로부터 데이터를 전달받고, TCP/IP 패킷 생성하며 (HTTP 메시지 포함)
  4. 네트워크 인터페이스는 OS로부터 TCP/IP 패킷을 전달받은 뒤 LAN 드라이버, 장비를 통해 인터넷을 통해 서버로 전달한다.

패킷 생성과정

  1. TCP/IP 패킷에는 출발지 IP, 목적지 IP, PORT 정보 등이 포함되어 있다.
  2. 여기에 전송 데이터 HTTP 메시지가 포함된다.

해당 글은 김영한님의 모든 웹 개발자를 위한 HTTP 강의를 수강하며 공부한 내용을 정리하였습니다.

'네트워크' 카테고리의 다른 글

HTTP 정리 - 인터넷 통신이 이루어지는 방식  (0) 2021.05.09