프론트엔드 관점 | 백엔드 관점 |
[1단계] DNS 조회(DNS Lookup): 도메인을 IP 주소로 변환 | |
- 브라우저가 캐시된 DNS 기록을 확인함 - 처음 접속하는 도메인인 경우 로컬 DNS 서버에 요청함 |
- 도메인을 IP 주소로 변환함 - 어플리케이션 계층(7th 계층)에서 이루어짐 |
[2단계] TCP(Transmission Control Protocol) 연결 | |
- 브라우저는 서버와 3-way handshake를 수행해 TCP 연결함 1. 브라우저가 SYN 패킷 보냄 2. 서버가 SYN-ACK 패킷 보냄 3. 브라우저가 ACK 패킷 보냄 |
- 브라우저는 서버와 통신을 시작함 - HTTP는 TCP/IP 기반으로 작동, TCP 3-Way Handshake수행 - 전송 계층(4th 계층)에서 이루어짐 |
[3단계] HTTP Request | |
- 웹페이지를 요청하는 메시지 - HTTP 요청: GET/HTTP/1.1 - HTTPS 요청: SSL/TLS Handshake(보안인증서 교환) |
- Packet 형태로 GET/HTTP/1.1 요청을 보냄 - TCP Protocol을 통해 80번 포트로 전달 - 네트워크 계층(3th)에서 IP 주소를 사용 + 데이터링크 계층(2th)에서 MAC 주소를 사용해 패킷 전송 |
[4단계] HTTP Response | |
- 서버가 요청에 따라 리소스를 브라우저에게 보냄 - HTTP 응답 코드(200 OK) + HTML, CSS, JavaScript |
- 서버에서 상태 코드(200 ok)와 웹 페이지 데이터를 전송함 - 브라우저에서 HTML,CSS,JS를 해석해 화면을 렌더링 |
[5단계] 브라우저 렌더링 파이프 라인 | [5단계] TCP 연결 종료 |
1. DOM과 CSSOM 생성하고, 렌더 트리 구성 2. 레이아웃과 페인트 단계를 통해 화면에 표시 |
- 4-Way Handshake로 TCP 연결 종료 |
매일메일 질문 중에서 프엔/백엔이 같은 질문을 가져온 게 신기해서 합쳐봤습니다
전체 흐름은 똑같은데 포커싱 한 부분이 조금 다르네요
출처
1. 매일메일. 250110. 사용자가 웹사이트에 처음 접근했을 때 발생하는 일련의 과정에 대해 설명해 주세요. 89번
2. 매일메일. 241225. 인터넷 창에 www.google.com 를 입력하면 무슨 일이 일어나는지 설명해주세요. 20번
관련된 이 블로그의 다른 글: HTTP
'개발자 강화 > 프론트엔드' 카테고리의 다른 글
[매일메일] 웹 어플리케이션의 성능을 최적화 하는 방법? (FE.250107/250102) (0) | 2025.01.15 |
---|---|
[매일메일] SSR의 개념과 장단점? (FE.250115) (0) | 2025.01.15 |
[매일메일] 디바운스와 쓰로틀, 무한 스크롤? (FE.250108) (0) | 2025.01.14 |
[매일메일] React에서 index를 key값으로 사용하면 안되는 이유(FE.250109) (0) | 2025.01.14 |
[매일메일] 웹 접근성과 개선 방법 (FE.250114) (0) | 2025.01.14 |