✔️ 웹 통신의 큰 흐름
웹 통신의 큰 흐름
- 클라이언트
- 주소창에 특정 URL 값을 입력
- 브라우저
- URL에 입력된 값에 따라 DNS 서버를 조회하여 IP 주소 획득
- 브라우저 내부에서 결정된 규칙에 따라 HTTP Request 메시지 생성
- 만들어진 메시지를 웹 서버로 전송
- 프로토콜 스택
- 브라우저로부터 메시지를 받아 패킷 속에 저장
- 그리고 수신처 주소 등의 제어 정보를 덧붙여 LAN 어댑터로 전송
- 이후 통신 중 오류가 발생했을 때, 제어 정보를 사용하여 고쳐 보내거나, 각종 상황을 조절하는 역할을 하게 됨
- LAN 어댑터
- 전달 받은 패킷을 다음 홉의 MAC 주소를 붙인 전기신호로 변환한 후 송출
- 스위칭 허브 (스위치, 허브)
- LAN 어댑터가 송신한 프레임이 스위칭 허브를 경유
- 라우터
- 스위칭 허브를 경유한 프레임은 인터넷 접속용 라우터에 도착
- 라우터는 패킷을 통신사에게 전달하여 인터넷으로 들어가게 됨
- 통신 회선
- 패킷은 인터넷 입구에 있는 통신 회선에 의해 통신사용 라우터까지 운반
- 통신사용 라우터
- 이후 통신사용 라우터를 거쳐 인터넷의 핵심부로 이동
- 수 많은 고속 라우터들 사이로 패킷이 목적지를 향해 이동
- 방화벽
- 패킷이 인터넷 핵심부를 통과하여 웹 서버의 LAN에 도착하면 방화벽이 도착한 패킷을 검사
- 캐시 서버
- 패킷이 웹 서버까지 가야하는지, 가지 않아도 되는지 캐시 서버가 판단
- 굳이 서버까지 가지 않아도 된다면 캐시 서버에서 바로 값을 읽도록 함
- 웹 서버
- 패킷이 웹 서버에 도착하면 웹 서버의 프로토콜 스택은 패킷을 추출하여 메시지를 복원
- 복원한 메시지를 웹 서버 애플리케이션에 전송
- 웹 서버 애플리케이션은 요청 메시지에 따른 데이터를 응답 메시지에 넣어 클라이언트로 회송
- 클라이언트
- 위와 동일한 방식으로 응답 메시지가 클라이언트에게 전달
'Tech Interview > Network' 카테고리의 다른 글
[Network] Stateful과 Stateless (0) | 2024.01.24 |
---|---|
[Network] REST (0) | 2024.01.24 |
[Network] DNS (0) | 2024.01.23 |
[Network] 쿠키와 세션 (0) | 2024.01.17 |
[Network] CORS (0) | 2024.01.17 |