리주의 프로그래밍 공부

브라우저에서 URL을 입력하면 어떤 일이 벌어지나요? 본문

면접/면접공부

브라우저에서 URL을 입력하면 어떤 일이 벌어지나요?

Leezu_ 2023. 8. 15. 16:33

개발자 오픈채팅방에서도 자주 보이던 질문.

 

매번 봐왔지만, 매번 읽고 넘어가서 그랬더니.. 막상 면접에서 답할 생각은 못하겠어서 찾아보았다.

 

1. 인터넷에 연결할 서버를 파악

  > 입력한 도메인을 사용해서 웹 사이트를 호스팅하는 서버의 IP 주소를 조회

  > 이 때, DNS 조회를 사용

  > DNS는 복잡하고 빨라야하기 때문에 다양한 위치에 캐시로 저장됨

  (브라우저 캐시 > OS 캐시 > 라우터의 로컬 네트워크 캐시 > 회사 네트워크 또는 ISP 캐시 조회)

  > 캐시에서 해당 IP 주소를 찾을 수 없는 경우, 회사 네트워크 또는 ISP의 DNS 서버가 재귀적으로 DNS 조회 수행

2. DNS 조회로 얻은 IP 주소와 포트 번호를 사용하여 해당 서버에 TCP/IP 연결

  > HTTP의 경우는 기본 포트 80 사용, HTTPS의 경우는 기본 포트 443 사용

3. HTTP(s) 요청을 서버로 전송

  > 메서드(GET, POST, PUT, PATCH, DELETE 등), 경로, 헤더, 본문 등

4. 서버가 요청 처리 및 응답

5. 페이지 렌더링

  > Content-Type 헤더에 따른 리소스 렌더링

 

 

확실히 면접 준비하면서 평소에 실무하면서 생각해보지 않은 부분들을 복기하고 습득하게 되는 것 같다.