본문 바로가기
CS/네트워크

[네트워크] URI와 웹 브라우저 요청 흐름

by 서현 SEOHYEON 2023. 1. 11.

🟡 URI(Uniform Resource Identifier)

URI는 로케이터(locator), 이름(name) 또는 둘 다 추가로 분류될 수 있다.

URI(Resource Identifier)안에 URL(Resource Locator), URN(Resource Name) 존재

 

 

URI 단어 뜻

- Uniform: 리소스 식별하는 통일된 방식

- Resource: 자원, URI로 식별할 수 있는 모든 것

- Identifier: 다른 항목과 구분하는데 필요한 정보(ex. 주민번호)

 

URL, URN 단어 뜻

- URL → Locator: 리소스가 있는 위치를 지정

- URN → Name: 리소스에 이름을 부여

- URN 이름만으로 실제 리소스를 찾을 수 있는 방법이 보편화 되지 않음

 

URL 전체 문법

- scheme://[userinfo@]host[:port][/path][@query][#fragment]

- 예시

https://www.google.com:443/search?q=hello&hl=ko

→ 프로토콜(https)

→ 호스트명(www.google.com)

→ 포트 번호(443)

→ 패스(/search)

→ 쿼리 파라미터(q=hello&hl=ko)

 

① scheme

https://www.google.com:443/search?q=hello&hl=ko

- 주로 프로토콜 사용

- 프로토콜: 어떤 방식으로 자원에 접근할 것인가 하는 약속 규칙(http, https, ftp)

- http는 80 포트, https는 443 포트를 주로 사용. 포트는 생략 가능

 

② host

https://www.google.com:443/search?q=hello&hl=ko

- 호스트명

- 도메인명 또는 IP 주소를 직접 사용 가능

 

③ PORT

https://www.google.com:443/search?q=hello&hl=ko

- 접속 포트

- 일반적으로 포트는 생략

- http는 80포트, https는 443 포트 주로 사용

 

④ path

https://www.google.com:443/search?q=hello&hl=ko

- 리소스 경로, 계층적 구조

 

⑤ query

https://www.google.com:443/search?q=hello&hl=ko

- key=value 형태

- ?로 시작, &로 추가 가능

- 웹 서버에 제공하는 파라미터, (숫자를 전달해도) 문자 형태

 

🟡 웹 브라우저 요청 흐름

https://www.google.com:443/search?q=hello&hl=ko 라는 주소를 요청할때의 흐름을 알아보자.

- DNS 조회를 통해 www.google.com의 IP주소를 알아내고, https를 사용하므로 포트번호가 443임을 알 수 있다.

- 이를 토대로 웹 브라우저는 HTTP 요청 메시지 생성 및 전송

생성

 

전송

- 요청 패킷을 서버의 IP 주소로 전달

- 요청 패킷이 도착하면 서버는 응답 메시지를 작성 후 브라우저에 응답 패킷을 전달한다.

- 웹 브라우저는 응답패킷을 웹 브라우저에서 HTML 렌더링 시킨다.

 


이 글은 인프런 [모든 개발자를 위한 HTTP 웹 기본 지식] 강의를 들으며 학습한 내용을 토대로 작성되었습니다.

댓글