[네트워크] 웹 통신의 큰 흐름
chrome을 실행시켜 주소창에 특정 URL 값을 입력시키면 어떤 일이 일어나는가?
브라우저
- url을 해석하여 해당 서버에 접속해야 할 주소와 프로토콜을 결정함
- 결정된 주소와 프로토콜을 바탕으로 HTTP요청 메시지(웹페이지, 브라우저 정보, 쿠키 등)를 생성
- 생성된 메시지를 웹 서버로 전송함
프로토콜 스택, LAN 어댑터
- 프로토콜 스택(운영체제에 내장된 네트워크 제어용 소프트웨어)이 브라우저로부터 메시지를 받음
- 받은 메시지를 패킷 속에 저장함
- 목적지 주소 등의 제어정보를 덧붙임
- 패킷을 어댑터에 넘김
- LAN 어댑터는 다음 Hop의 MAC주소를 붙인 프레임을 전기신호로 변환시킴
- 신호를 LAN케이블에 송출시킴
허브, 스위치, 라우터
- 전송된 프레임은 로컬 네트워크의 허브와 스위치를 거쳐 라우터에 도달함
- 라우터는 패킷을 인터넷 서비스 제공자(ISP)에 전달함
- 인터넷에 연결됨
액세스 회선, 프로바이더
- 패킷은 ISP의 POP를 통해 인터넷 핵심 네트워크로 이동함
- 다양한 라우터와 네트워크를 거쳐 최종 목적지인 웹 서버로 향함
방화벽, 캐시서버
- 웹 서버의 LAN에 도착한 패킷은 방화벽에 의해 검사됨
- 캐시 서버가 이전에 접근한 페이지 데이터를 가지고 있으면, 웹 서버로의 요청 없이 캐시된 데이터를 사용하여 응답함
💡웹 서버
- 웹 서버가 HTTP 요청 메시지를 받아 처리함
- 요청된 데이터를 HTTP 응답 메시지에 담아 클라이언트(브라우저)에게 회송함
- 응답 메시지는 왔던 경로를 따라 클라이언트에게 돌아감