Spring 강의/network

[network] - (2) URI와 웹 브라우저 요청 흐름

lxexjx 2022. 4. 4. 15:36

URI (리소스를 식별하는 통합된 방법)
URL(리소스의 위치)
URN(리소스의 이름)

 

[URI] 
U : 리소스를 식별하는 통일된 방식(자원 자체를 식별하는 방식)
R : URI 로 식별할 수 있는 모든~ 것, 자
I : 식별하는데 필요한 정보
[URL]
리소스가 있는 위치를 지정
[URN]
리소스의 이름을 부여 but거의 사용x
-->URI==URL


[URL문법]
scheme://[userinfo@]host[:port][/path][?query][#fragment]
1. scheme : 주로 프로토콜 사용 ex)http, https, ftp 등
2. userinfo : URL에 사용자 정보를 인증시에 사용하는데 거의 안씀.
3. host : 호스트명으로 도메인 명이나 ip주소를 직접 사용.  (ex) www.google.com
4. port : 생략가능. ex) :80
5. path : 리소스가 있는 계층적 구조의 경로. ex) /members/100
6. query : key=value 형태. ?로 시작, &로 추가 가능 ex) ?/q=hello
7. fragment : html 내부 북마크 등에 사용


1) 먼저 웹브라우저가 DNS에 조회해서 IP가 나오면 

2) HTTP요청 메세지를 생성해

 

IP,PORT정보찾아내고-> HTTP요청 메세지 생성->

전송데이터란? 웹브라우저가 만든 HTTP메세지

1. 애플리케이션에서 웹브라우저가 HTTP메세지 생성
2. 소켓 라이브러리를 통해서 OS에 (TCP/IP계층)전달.
    찾은 ip,port로 syn/ack해서 구글 서버와 연결하고 데이터 전달
3.TCP/IP에서 팩해서 한번 씌우고 (IP,PORT정보 들어있음) 인터넷에 들어가->인터넷 노드를 통해 전달

구글 서버는 요청 패킷이 도착하면 TCP/IP까서 버리고 HTTP메세지를 꺼내서 해석하고-> HTTP응답 메세지를 만들어서 보내

'Spring 강의 > network' 카테고리의 다른 글

[network] - (6) HTTP 상태코드  (0) 2022.04.07
[network] - (5) HTTP메서드 활용  (0) 2022.04.05
[network] - (4) HTTP 메서드  (0) 2022.04.04
[network] - (3) HTTP 기본  (0) 2022.04.04
[network] (1) - 인터넷 네트워크  (0) 2022.04.04