y.developer
[240321] 브라우저 주소창에 URL을 입력하면 일어나는 일 본문
2024.03.21
Careertone Challenge Study 02
브라우저 주소창에 URL을 입력하면 일어나는 일
브라우저는 사용자가 선택한 자원(Resource)을 서버에 요청하고, 서버로부터 받은 응답(Response)을 브라우저에 렌더링(Rendering)합니다.
- URL 요청 : 사용자가 웹 브라우저에 URL을 입력하면, 브라우저는 URL의 도메인 이름을 DNS 서버에서 검색하여 IP주소를 찾습니다.
- HTTP 요청 생성 : 브라우저는 IP 주소와 URL 정보를 기반으로 HTTP 요청 메시지를 생성합니다. 이는 TCP 프로토콜을 사용하여 서버로 전송됩니다.
- 서버 처리 : 서버는 HTTP 요청 메시지를 받아서 처리하고, 요청된 웹 페이지 데이터를 검색합니다.
- HTTP 응답 전송 : 서버는 웹 페이지 데이터를 HTTP 응답 메시지에 포함시켜 다시 TCP 프로토콜을 통해 사용자의 컴퓨터로 전송합니다.
- 브라우저 렌더링 : HTTP 응답 메시지는 웹 페이지 데이터로 변환되고, 브라우저는 데이터를 해석하여 사용자의 브라우저에 렌더링합니다.
URL은 무엇인가요?
통합 자원 지시자(Uniform Resource Locator)
인터넷의 리소스를 가리키는 표준 명칭으로 서버의 자원을 요청할 때 사용됩니다. URL을 통해 인터넷 상의 모든 리소스를 요청할 수 있으며, HTTP, FTP 등의 자원 요청도 가능합니다.
HTTP는 무엇인가요?
HTTP(HyperText Transfer Protocol)
TCP 기반의 클라이언트와 서버 사이에 이루어지는 요청/응답 프로토콜입니다. Text Protocol로 사람이 쉽게 읽고 쓸 수 있습니다. 프로토콜 설계상 클라이언트가 요청을 보내면 반드시 응답을 받아야 합니다. 응답을 받아야 다음 request를 보낼 수 있습니다.
IP는 무엇인가요?
IP(Internet Protocol)
비신뢰성, 비연결지향 데이터그램 프로토콜로 패킷을 받아서 주소를 해석하고 경로를 결정하여 다음 호스트로 전송하는 역할을 합니다.
프로토콜이 무엇인가요?
통신하기 위한 약속들을 기술적으로 정의한 것입니다. 데이터를 송수신하는 순서와 내용을 결정합니다. HTTP, TCP/IP, UDP 모두 프로토콜입니다.
DNS는 무엇인가요?
도메인 이름 시스템(DNS)
사람이 읽을 수 있는 도메인 이름(예: www.amazon.com)을 머신이 읽을 수 있는 IP(예: 192.0.2.44)로 변환합니다. 모든 통신에는 주소가 필요하며, 출발지와 도착지를 알아야 통신이 가능합니다. 해당 주소를 IP라고 부르며, IP 주로소 변환하는 과정에 DNS가 필요합니다.
TCP는 무엇인가요?
전송 제어 프로토콜(TCP)
두 개의 호스트를 연결하고 데이터 스트림을 교환하게 해주는 네트워크 프로토콜입니다. 데이터 전송을 제어하고 데이터를 어떻게 보낼 지, 어떻게 맞출 지 정합니다. 또한 데이터와 패킷이 보내진 순서대로 전달하는 것을 보장합니다. 따라서 신뢰성과 연결성을 책임집니다.
Response는 무엇인가요?
HTTP 메시지는 서버와 클라이언트 간에 데이터가 교환되는 방식입니다. 메시지 타입은 두 가지가 있습니다. 요청(request)은 클라이언트가 서버로 전달해서 서버의 액션이 일어나게끔 하는 메시지고, 응답(response)은 요청에 대한 서버의 답변입니다.
파싱은 무엇인가요?
하나의 프로그램을 런타임 환경(예를 들면, 브라우저 내 자바스크립트 엔진)이 실제로 실행할 수 있는 내부 포맷으로 분석하고 변환하는 것을 의미합니다. 즉, 문서의 내용을 토큰(token)으로 분석하고, 문법적 의미와 구조를 반영한 파스트리(parse tree)를 생성하는 과정입니다.