BackEnd 학습/인터넷

URI/웹브라우저 동작방식

잉아당 2022. 9. 8. 18:22
728x90

- URI(Uniform Resource Identifier)
<URI, URL, URN>
URI는 locator, name 또는 둘다 추가로 분류될 수 있다.

*URI (리소스 식별)
 - URL(locator) : 리소스 위치 url://example.com:8080/a/b?name=hello
 - URN(name) : 리소스 이름 ex) urn:example:xxx:yyy

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

*URL 문법
https://example.com:8080/a/b?name=hello#frag

#프로토콜(https) : 어떤 방식으로 자원에 접근할 것인가 하는 약속 규칙 / https(http Secure)를 의미
#호스트명(example.com) : 도메인명 혹은 IP 사용
(호스트명은 무수한 도메인명을 지정하는것 중 하나의 종류)
#포트번호(8080) : 접속 포트
#패스(a/b) : 계층적 구조
#쿼리파라미터(name=hello) : key=value 형태, ? 로 시작, &로 여러개 붙여서 사용
#fragment(#frag) : 서버에 전달하는 정보가 아닌 html 내부에서 사용

- 웹 브라우저 요청 흐름 
1. dns 조회로 ip 찾음, 프로토콜에 따른 포트는 생략, http 요청 메시지 생성
2. SOCKET 라이브러리를 통해 전달 TCP/IP연결(3 way handshake) 및 데이터 전달 후 TCP/IP 패킷 생성(메시지 데이터 포함)
3. 요청 패킷 전달 
4. 요청 패킷 도착
5. 전달된 HTTP 메시지를 통해 해석
6. 해석을 통해 HTTP 응답 메시지 생성 후 TCP/IP 패킷을 씌우고 전달
7. 응답 패킷 도착
8. HTTP 응답 메시지를 통해 처리

 

출처 : https://www.inflearn.com/course/http-웹-네트워크

'BackEnd 학습 > 인터넷' 카테고리의 다른 글

HTTP 상태 코드  (0) 2022.10.11
HTTP활용  (0) 2022.09.29
HTTP 메서드  (0) 2022.09.25
HTTP  (0) 2022.09.18
인터넷 네트워크  (0) 2022.09.08