참고 유튜브 : 널널한 개발자 TV https://www.youtube.com/channel/UCdGTtaI-ERLjzZNLuBj3X6A
1. PC의 브라우져에 주소를 (URL)을 입력한다면?
URL 또는 도메인 네임(www.naver.com)을 검색하려면,
이름이 www이고 naver.com 도메인에 속해있는 컴퓨터의 인터넷 망에서 통신하려면 naver.com의 IP 주소를 알아야함.
따라서 1차적으로 DNS 서버에 질의를 하게 되어 있음.
(DNS는 분산형DB구조를 가지고 있으며 DDNS도 있음 이건 추후 검색)
1-1. 다만, DNS에 질의하기 전에 hosts 파일을 찾아서 뭐라고 적혀 있는지 IP를 찾음.
1-2. 그리고 DNS 질의를 하고 나서 DNS의 응답을 캐싱하는데 이 캐싱이 남아있는지 확인함.
1-3. 캐싱이 남아 있지 않으면 질의를 하는데,
1-3-1. PC의 설정을 확인 후 DNS에 질의함. 공유기라면 공유기가 DNS에 질의해서 응답을 받아주는 형태가 될 수 있음.
1-3-2. 또는 ISP의 DNS한테 직접 질의를 할 수 있음. 이 과정을 거처 naver.com 도메인의 IP를 얻어냄.
** IP는 달라질 수 있음! CDN을 사용 하는 서버라면 접속자의 IP 주소를 보고 원활한 IP로 매핑해주기 때문임!
2. naver.com의 ip와 TCP 연결을 시도함.
PC에서 naver.com의 ip주소로 TCP 연결을 함. 주소를 검색하면 http연결을 할 것인데, http 통신은 tcp 통신 기반이기 떄문이다.
3. TCP 연결이 성공한다면 그때 HTTP Request가 송신!
4. HTTP Response를 받음.
그 다음 중요! GSLB, CDN
이제 GSLB 또는 CDN의 개념을 알아야 한다.
CDN(Content Delivery Network)이란 지리적 제약 없이 전 세계 사용자에게 빠르고 안전하게 콘텐츠를 전송할 수 있는 콘텐츠 전송 기술이다.
각 지역에 캐시 서버(PoP, Points of Presence)를 분산 배치함으로써 사용자와 서버의 물리적인 거리를 줄이는 것으로 빠른 서비스를 제공하는 것이다.
ex) 미국에서 naver.com을 호출 할 시 naver.com이 CDN을 이용하는 중이라면 미국에 위치한 PoP 서버에서 웹사이트 콘텐츠를 제공할 것이다.
'웹개발 > 개념' 카테고리의 다른 글
멀티쓰레드 (0) | 2022.10.12 |
---|---|
[JAVA] String, Stringbuilder, Stringbuffer 차이점 (0) | 2022.10.12 |
[JAVA] 상속과 오버라이딩 (0) | 2022.10.12 |
웹 개발 개념 정리 (0) | 2022.10.11 |
URL과 URI의 차이점 (0) | 2022.10.11 |