브라우저에 URL입력시 네트워크 상 일어나는 일
1. 브라우저에 URL 입력
핸들링 인풋 진행
브라우저 프로세스 안의 ui스레드가 입력된 텍스트 값 판단
Search Query
일 경우, 검색이 되도록 함(크롬 브라우저 → 구글 검색 엔진)URL
일 경우, URL값을 네트워크 스레드에게 전달할 준비를 함
URI, URL, URN
URI(Uniform Resource Identifier, 통합 자원 식별자)
인터넷 자원을 식별할 수 있는, 하나의
리소스
를 가르키는 문자열이때 리소스는 HTTP와 같은 프로토콜에서 요청한 대상
URI의 하위개념으로
URL
,URN
존재
URL(Uniform Resource Locator)
네트워크 상에서 웹 페이지, 이미지, 동영상 등의 파일이
위치
한 정보를 나타냄FTP, SMTP등 다른 프로토콜에서 사용 가능
URN(Uniform Resource Name)
URI
의 표준 포맷중 하나로 이름으로 리소스를 특정하는 URI리소스의 name을 가리키는데 사용
http와같은 프로토콜을 제외함
특징
리소스를 영구적이고 유일하게 식별할 수 있는 URI
리소스 접근방법과 웹 상의 위치가 표기되지 않음
리소스 자체에 부여된 영구적이고 유일한 이름이며 변하지 않음
실제 자원을 찾기 위해선 URN을 URL로 변환해 이용
URL과 URI의 차이점
URL은 어떻게 리소스를 얻을 것이고 어디에서 가져와야하는지 명시하는 URI
URN은 리소스를 어떻게 접근할 것인지 명시하지 않고 경로와 리소스 자체를 특정하는 것을 목표로하는 URI
2. 입력한 URL의 IP 주소를 찾기 위해 DNS 이용
캐시의 DNS 기록 확인
캐시에 없을 경우 DNS 쿼리 진행
3. 브라우저와 서버의 연결 (TCP connection)
인터넷 프로토콜을 이용해 브라우저와 서버 연결
웹 사이트의 경우 HTTP요청에 일반적으로 TCP연결 진행
3-way handshake을 통한 TCP connection 완성
4. 브라우저가 웹 서버에 HTTP 요청
TCP연결 후, 데이터 전송
5. 요청에 대한 서버의 응답
서버는 요청을 처리하고 response 생성
서버가 HTTP response를 보냄
6. 브라우저는 HTML content를 보여줌
브라우저는 HTML content를 단계적으로 보여줌
HTML 스켈레톤 렌더링 → HTML tag체크 후 추가 필요 요소(이미지, CSS, js파일..) Get 요청 → 정적파일 캐싱 → www.github.com 화면 보임
Last updated