유튜브같은 멀티미디어 서비스가 어떻게 동작하는가?
버퍼링이 길면 안끊겨서 좋은데 , 사람의 인내심과 끊기지 않음으로 고려해서 합의 봐야한다.
2GB 크기의 영화를 보려고 한다.
이거를 여러개의 Chunks들을 모아둔거로? 보려고 한다
Chunks는 하나에 256kb 크기다.
그리고 그 하나마다 각각 버전이 다르다. (속도가)
박거성이 matrix를 딱 누르면 유튜브가 저 manifest file을 넘겨준다. 그 안에는 각 chunk가의 각 버전들이 적혀있는 url 저장소가 있다.
유튜브는 네트워크 상황에 맞춰서 버전을 바꾼다. 상향 조정하다가 속도가 너무 느려지면 다시 하향의 버전으로 맞춘다.
CDN contribute distribution network
캐나다의 CDN서버는 같은 URL을 요청한다.
한국의 CDN서버와 같이 !
King 도메인 주소와 IP 주소의 맵핑은 누가 해주나?
King CDN의 Authoritative DNS Server가 해준다.
한국에서 물어본 kING CDN 서버의 IP를 넘겨주고
캐나다에서는 캐나다의 CDN IP를 알려주면 된다.
그 작업을 바로 CDN 서버 안에 있는 DNS 서버가 해준다. 어떻게? 박거성이 저 IP주소를 알기 위해서 DNS 쿼리를 보냈겠지? DNS 쿼리는 UDP에 담겨져서 올거고 UDP는 결국 IP PACKET에 담겨져서 올테니까 IP패킷의 소스를 보면 박거성의 IP가 나오지. 한국에서 산다는 거 알게되지 근처의 CDN 서버의 IP를 연결해주면 게임 끝.