1. 도메인 이름 입력 및 요청
사용자가 웹 브라우저의 주소창에 URL을 입력하고 엔터를 누르면, 브라우저는 입력받은 URL을 해석하여 해당 도메인의 IP 주소를 찾아야 합니다. URL이 도메인 이름으로 구성되어 있기 때문에, 먼저 이 도메인의 IP 주소를 알아내야 실제 서버와 통신이 가능합니다.
2. DNS 조회
브라우저는 도메인 이름을 IP 주소로 변환하기 위해 DNS(Domain Name System) 조회를 수행합니다. DNS는 전 세계의 도메인 이름과 그에 해당하는 IP 주소를 관리하는 시스템으로, 인터넷 전화번호부와 유사합니다.
• 브라우저는 먼저 로컬 DNS 캐시를 확인하여 최근에 조회된 도메인의 IP 주소가 저장되어 있는지 확인합니다.
• 캐시에 없는 경우, 브라우저는 설정된 DNS 서버에 요청을 보내 도메인 이름에 대한 IP 주소를 조회합니다.
• 이 과정에서 여러 DNS 서버를 거쳐 최종적으로 도메인을 관리하는 권한 있는(Authoritative) DNS 서버에서 응답을 받을 수 있습니다.
3. TCP 연결
IP 주소를 획득하면, 브라우저는 해당 서버에 접속하기 위해 TCP(Transmission Control Protocol) 연결을 시도합니다. TCP는 인터넷 프로토콜 스위트의 핵심 프로토콜로, 데이터가 정확하고 신뢰성 있게 전송되도록 합니다.
• 브라우저는 TCP 3-way handshake 과정을 통해 서버와의 연결을 확립합니다. 이는 SYN, SYN-ACK, ACK 패킷을 교환하는 과정으로 구성됩니다.
4. HTTP 요청 및 응답
TCP 연결이 확립되면, 브라우저는 HTTP(Hypertext Transfer Protocol) 요청을 서버로 보냅니다. 이 요청에는 사용자가 요구하는 리소스(예: 웹 페이지)의 정보가 포함되어 있습니다.
• 서버는 HTTP 요청을 받고 필요한 작업을 수행한 후 HTTP 응답을 브라우저로 전송합니다. 응답에는 요청된 웹 페이지의 데이터, 상태 코드, 헤더 등이 포함됩니다.
5. 콘텐츠 렌더링
브라우저는 서버로부터 받은 HTTP 응답을 해석하여 사용자에게 보여줄 웹 페이지를 구성합니다. 이 과정에는 HTML, CSS, JavaScript 등을 파싱하고 실행하여 최종적으로 사용자에게 웹 페이지를 렌더링하는 작업이 포함됩니다.
6. 완료
웹 페이지가 완전히 로드되면 사용자는 페이지의 모든 콘텐츠를 보고 상호작용할 수 있습니다. 이 단계에서 추가적인 사용자 요청이 있을 경우, 동일한 프로세스가 반복하여 수행됩니다.
'웹 기본지식' 카테고리의 다른 글
개발자 기술 로드맵 (0) | 2024.06.01 |
---|---|
public ip 와 private ip 는 어떤것인지 (0) | 2024.05.31 |
http status 값 정의 (2) | 2020.05.14 |
FTP 보안 프로토콜 (1) | 2020.05.13 |
쿠키 세션 기본 개념 (0) | 2020.05.13 |