브라우저

· 네트워크
URL을 웹 브라우저의 주소창에 입력한다. 웹 브라우저가 URL을 해석 후 문법에 맞지 않는다면 검색엔진을 이용해 검색한다. 문법에 맞으면 URL의 호스트 부분을 인코딩한다. HSTS(HTTP Strict Transport Security) 목록을 확인하고 있으면 HTTPS로, 없다면 HTTP로 요청한다. DNS(Domain Name Server) 조회 브라우저/로컬 캐시를 확인해서 도메인에 해당하는 IP가 있는지 확인한다. 없다면 OS에게 DNS 서버에 요청을 지시 DNS 서버는 해당 도메인에 해당하는 IP를 돌려준다 (HTTP 요청) TCP 3-way handshake과정을 통해 연결을 설정한다. 클라이언트가 서버에게 연결 요청 (SYN 패킷) 서버가 클라이언트에게 요청을 수락하고 연결을 설정한다는 ..
브러우저의 랜더링 원리 브라우저가 화면에 나타나는 요소를 렌더링할 때, webkit이나 Gecko 등과 같은 렌더링 엔진을 사용한다. 렌더링 엔진이 HTML, CSS, Javascript를 렌더링할 때 CRP(Critical Rendering Path)라는 프로세스를 사용하며 아래의 단계들로 이루어진다. 토큰화된 HTML 문자열들을 이용해 DOM(Document Object Model) 트리를 구축 DOM은 Javascript를 이용해 실제 상호작용할 수 있는 HTML 엘리먼트로 이루어진 객체 HTML 파서의 특징 너그러운 속성 ▶ 최상단에 태그, 닫는 태그를 작성하지 않아도 정상적으로 렌더링된다. (HTML은 대부분의 프로그래밍 어너가 속한 촘스키의 문맥자유문법에 속하지 않기에 그렇다 한다) 파싱 과정..
58청춘
'브라우저' 태그의 글 목록