HTTP - URI & 웹 브라우저 요청 흐름

meluu_·2023년 8월 3일
0

HTTP

목록 보기
2/8
post-thumbnail

🔹URI

우리가 흔히 브라우저를 사용하여 특정 사이트에 들어갈 때 사용하는 것이
바로 URL이다. 그렇다면 URI는 무엇일까?

URI 뜻

Uniform : 리소스 식별하는 통일된 방식
Resource : 자원, URI로 식별할 수 있는 모든 것(제한 없음)
Identifier : 다른 항목과 구분하는 데 필요한 정보 (식별자)

URI라는 큰 개념안에 URLURN 이 들어있다.

URL, URN

Locator : 리소스 위치 지정
Name : 리소스에 이름을 부여 ( 사용을 거의 안한다.)

📊 URL(URI) 분석

https://www.google.com/search?q=http&hl=ko
scheme://[userinfo@]host[:port][/path][?query][#fragment]

  • scheme : 사용할 프로토콜 (https 주로 사용)
    • 프로토콜 : 자원 접근 방식에 대한 약속 규칙
    • 포트는 생략 가능
    • https 는 http에 강력한 보안을 추가 HTTP Secure
      (데이터 전송의 보안을 강화하기 위해 암호화)
  • userinfo : URL에 사용자 정보를 포함해서 인증 (거의 사용 X)
  • 호스트명(www.google.com)
    • 도메인 명 or IP주소 직접 사용 가능
  • 포트 번호(443) // http (80)
  • 패스(/search)
    • 리소스 경로(path), 계층적 구조
    • /Suport/join
    • /download/file1.mp4
  • 쿼리 파라미터(q=http&hl=ko)
    • key=value 형태
    • ?로 시작, &로 추가 가능 ?keyA=valueA&keyB=valueB
    • query parameter, query string등으로 불림
  • fragment
    • html 내부 북마크 등에 사용
    • 서버에 전송하는 정보 X

〰️ 웹 브라우저 요청 흐름

https://www.google.com <:443(생략됌)>/search?q=http&hl=ko

  1. 웹 브라우저가 DNS를 조회하여 IP주소를 획득
  2. 웹 브라우저가 HTTP 요청 메시지 생성
  3. SOCKET 라이브러리를 통해 전달
    • TCP/IP 연결(IP, PORT) - 3 way handshake 시행
    • 데이터 전달
  1. TCP/IP 패킷 생성, HTTP 메시지 포함

  2. 이더넷 프레임을 감싸서 인터넷을 통해 서버에 전송

  3. 서버가 응답 패킷을 전달 (똑같이 TCP/IP패킷으로 HTTP메세지을 감싼 형태)

  4. 도착한 패킷을 웹 브라우저가 HTML 렌더링 하여 화면 출력


이번 학습을 통해 URL을 보게 되면 각 항목이 무엇인지 약간이나마 분석할 줄 알게 되었다. 천천히 정리한 것을 복습하면서 부족한 부분을 채워나가자!


출처 및 참고자료

모든 개발자를 위한 HTTP 웹 기본 지식

Http 아이콘 제작자: Freepik - Flaticon

profile
열심히 살자

0개의 댓글