문득 이 차이가 헷갈렸다. URI가 더 큰 집합이라는 것은 알고 있었으나 정확하게 모르는 듯하다. 정리해두자.
들어가기에 앞서
먼저 URI와 같은 친구들이 필요한 이유부터 생각해보자. 결국 웹 기술은 어렵게 생각할 필요없이, 원하는 문서를 가져다 주기만 하면 된다. 이게 가장 중요하다. 그렇다면, 원하는 것이라는 것을 어떻게 정의할 것인가?
예를 들어, A친구 집에, 안방(…)에 들어가서 TV 밑에 있는 애플 홈팟을 가져다줘. 이런식으로 말을 하던가, A친구 집에 있는 애플 홈팟을 가져다줘. 이런식으로 말할 것이다. 전자의 경우는 내가 원하는 물건에 대한 정확한 “주소”를 말했고, 후자의 경우에는 “물건”에 집중해서 말했다. 이 과정에서 서로 상호간에 소통만 된다면, 이 요구를 받아들이는데는 전혀 문제가 없다.
Network는 이렇게 상식에 기반하는 경우가 많다. 전자를 대표하는 것이 URL이다. 그리고 후자를 대변하는 것이 URN이다. 그리고 상호간의 소통 방법이 Protocol이다. 그리고 이렇게 특정 “자원”을 요청하는 방식(URL, URN)을 일컫는 말이 URI이다.
대략적인 밑그림은 그렸으니, 세부적으로 알아보자.
찾아보기
지금은?
그럼 지금은 어떻게 사용하고 있을까? 위치의 변화에도 문제가 없으면서 URL기반을 사용하고 싶을 것이다. URN은 아직 상용화되지는 않았다. 그래서 URI가 많이 사용되고 있는 것이다. URN이 지적한 문제는, 사실 서버측에서 한번의 추가 계산이 있을 경우 해결된다. 그래서 URL과 비슷한 규칙을 가지면서, 정확한 위치가 아닌 문자열로 끝내는 URI를 통해 많은 사이트가 제작되어 있다. 그래서 URL과 URI가 헷갈리는 것 아닐까?