본문 바로가기

IT/몰라요

URI, URL, URN 차이점 정리!

1. URI와 URL 그리고 URN은 뭘까요?

 

・ 흔히 URL이란, 인터넷 주소를 말하는 데 사용했었는데, 자세히 알아보도록 하겠습니다.

 

URI, URL, URN의 규약Uniform Resource Identifiers (URI): Generic Syntax RFC3986에서 소개하고 있습니다.

 

A URI can be further classified as a locator, a name, or both. The term "Uniform Resource Locator" (URL) refers to the subset of URIs that, in addition to identifying a resource, provide a means of locating the resource by describing its primary access mechanism (e.g., its network "location"). The term "Uniform Resource Name" (URN) has been used historically to refer to both URIs under the "urn" scheme [RFC2141], which are required to remain globally unique and persistent even when the resource ceases to exist or becomesunavailable, and to any other URI with the properties of a name. An individual scheme does not have to be classified as being just "name" or "locator". Instances of URIs from any given scheme may have the characteristics of names or locators or both, often depending on the persistence and care in the assignment of identifiers by the naming authority, rather than on any quality of the scheme. Future specifications and related documentation should use the general term "URI" rather than the more restrictive terms "URL" and "URN" [RFC3305].

 

・ 그만 알아보도록 하겠습니다.


 

・ 그래도 포스팅은 해야 하니까... 이 말장난 같은 것을 요약하여 그림으로 표현해보겠습니다.

 

 

・ 대충 이런 모양인것 같습니다. 이 포스트에는 자원이라는 단어가 자주 등장할텐데, 여기서 말하는 자원이란, 인터넷상의 데이터나 서비스를 의미합니다.

2. URI(Uniform Resouce Identifier)

 

・ 먼저, URI(Uniform Resource Identifier)의 위키백과 설명입니다.

 

통합 자원 식별자는 인터넷에 있는 자원을 나타내는 유일한 주소입니다. URI의 존재는 인터넷에서 요구되는 기본 조건으로서 인터넷 프로토콜에 항상 붙어 다닙니다. URI의 하위 개념으로 URL, URN이 있습니다.

 

・ 다시 정리해보면, URI는 정보나 어떠한 자원을 하나의 뜻으로 식별하기 위한 데이터 서식을 정의한 기술표준입니다. 인터넷에서 이름 또는 자원을 식별하는데 사용하는 것이라고 합니다.

 

・ 그리고 이 URI에는 두 가지 종류가 있는데, 그것이 URL과 URN입니다. 이 두 가지 종류를 이용하여 식별하는 것입니다.

3. URL(Uniform Resource Locator)

 

・ 다시, URL(Uniform Resource Locator)의 위키백과 설명입니다.

 

URL은 네트워크상에서 자원이 어디 있는지를 알려주기 위한 규약이다. 흔히 웹 사이트 주소로 알고 있지만, URL은 웹 사이트 주소뿐만 아니라 컴퓨터 네트워크 상의 자원을 모두 나타낼 수 있다.

 

・ URL은 네트워크 상에서 자원이 어디 있는지를 알려주기 위한 기술표준입니다. URL은 인터넷상의 파일 주소를 찾아서 자원을 가져오는 것입니다.

 

・ 또한, 그 파일 주소에 접속하려면, 해당 URL에 맞는 프로토콜을 알아야 합니다.

 

・ http://, https://, mailto://, file://, ftp:// 등의 프로토콜을 이용합니다.

 

https://itbellstone.tistory.com/index.html
mailto:bellstone@gmail.com
file://bellstone/C:/bellstone.txt

 

・ 위와 같은 형식이 URL입니다.

4. URN(Uniform Resource Name)

 

・ 마지막으로, URN(Uniform Resource Name)의 위키백과 설명입니다.

 

URN은 urn:scheme를 사용하는 URI를 위한 역사적인 이름이다. URN은 영속적이고, 위치에 독립적인 자원을 위한 지시자로 사용 RFC 2141 문서에서 정의되었다.

 

・ URN은 리소스가 더 이상 존재하지 않거나 사용할 수 없게 되어도, urn:scheme를 사용하는 URI영속적이고 독립적이게 유지할 수 있습니다.

 

・따라서, URL에서는 파일의 위치에 따라서 URI 문자열이 바뀌지만, URN은 어느 위치에 파일이 있어도 URI의 문자열이 바뀌지 않는 특징이 있습니다.

 

urn:namespace:the:id:for:file

 

・ 위와 같은 형식이 URN입니다.

5. 정리!

 

・ 정리해보면, 차이점은 URL은 반드시 URI이지만, URI는 반드시 URL인 것은 아니라는 것을 정리할 수 있습니다.(BELLSTONE은 블로그이지만, 모든 블로그는 BELLSTONE이 아닌 것처럼요!) 그러니까 URI와 URL은 같다!라는 주장은 잘못된 것입니다.(사실 이것 때문에, 정리해보았습니다.)

 

・ 또한, URI는 식별자이고, 자원의 이름 자체를 의미하거나 자원의 장소를 가져오는 방법입니다. 구글 지도를 예를 들면, URN은 건물의 이름을, URL은 건물의 주소로 표기되어 있는 것입니다.

 

 

 

・ 그럼 URL도 아니고 URN도 아닌 것 중 쿼리 스트링이라는 것이 있습니다.

 

https://bellstonecorp.com/search?id=bellstone

 

・ 이렇게, http://이라는 프로토콜을 사용하지만, 다른 특정한 파라미터 값을 얻어 사용하는 것입니다.

 

6. 마치며

 

・ 사실 저도 잘 이해하고 있는지 모르겠습니다. ㅠㅠ 그냥 URI는 URL일 수도 있고 아닐 수도 있따!!!!!!!!

 

・ 그럼 끝!