[네트워크/기본] URI, URL 및 URN의 차이점

작성자 | 2021년 9월 18일 | HTTP, 컴퓨터 네트워크 | 코멘트 0개

수정 보완 중에 있습니다… 🙏 그래도 의견 있으시면 주세요.

⚡️ URI과 그 하위 개념 URL, URN 개념 이해하기

URL-URN

❗️URI 이란?

  • URI는 Uniform Resource Identifier, 통합 자원 식별자의 줄임말이다.
  • 브라우저의 검색창을 클릭하면 나타나는 주소가 URI이다. (URI는 인터넷의 자원을 식별할 수 있는 문자열을 의미한다. 그 중 URL이라는, URN이라는 하위 개념을 만들어서 특별히 어떤 표준을 지켜서 자원을 식별하는 것이다.)
  • 인터넷에 있는 자원을 나타내는 유일한 주소이다. (URL이 존재하기 전 표준 없었을 때는 개발자들이 다양한 방식의 URI 형식을 만들어서 사용하였음)
  • URI는 scheme, hosts, url-path에 더해 query, bookmark를 포함한다. (Query가 들어갔다고 URL이 아니지 않다.)
  • URI의 하위 개념으로 URL과 URN이 있다.
  • 그래서 결론은 URI라는 개념은 어떤 형식이 있다기 보다는 특정 자원을 식별하는 문자열을 의미한다. 그래서 URL이 아니고 URN도 아니면 그냥 URI가 되는 것이다.

👉 URI의 구성 (URI의 구성요소라기 보다는 URL의 구성요소, 왜냐하면 URN은 다른 형식임)

URL_URI

  • scheme(가장 먼저 작성) : 통신 방식(프로토콜)을 결정한다. 일반적인 웹 브라우저에서는 http(s)를 사용한다.
  • hosts : 웹 서버의 이름, 도메인, IP를 사용하며 주소를 나타낸다.
  • url-path : 웹 서버에서 지정한 루트 디렉토리부터 시작하여 웹 페이지, 이미지, 동영상 등이 위치한 경로와 파일명을 나타낸다.
  • query는 웹 서버에 보내는 추가적인 질문이다.

위 그림의 http://www.google.com:80/search?q=JavaScript 를 브라우저의 검색창에 입력하면,
구글에서 JavaScript를 검색한 결과가 나타난다.

❗️URL 이란?

  • URL은 Uniform Resource Locator의 줄임말이다.
  • URL은 네트워크 상에서 웹 페이지, 이미지, 동영상 등의 파일이 위치한 정보를 나타낸다.
  • URL은 scheme, hosts, url-path까지만 포함한 것이다. (URL이 Query를 포함할 수도 있다. 특정한 자원의 위치를 가리킨다는 것이 URL의 특징이다. 해당 위치의 리소스를 가리키면서 동시에 질의를 보낼 수도 있는 것이다.)
  • URL은 FTP, SMTP 등 다른 프로토콜에서도 사용할 수 있다.
  • URL은 웹 상의 주소를 나타내는 문자열이기 때문에 더 효율적으로 리소스에 접근하기 위해 클린한 URL 작성을 위한 방법론들이 생겨났는데 REST API도 그 중 하나이다. (파일이 존재하는 것은 아니지만 프로그램을 돌려서 결과로 만들어진 리소스를 표현한 것도 URL, 예를 들면 데이터베이스의 학생 목록 같은 것들을 자원을 URL로 정의해서 CRUD하는 REST API가 그러함, Query하여 좀 더 자원을 특정한다고 하여 URL이 아니지 않음)

👉 URL & URI 구성 표

부분명칭설명
file://, http://, https://scheme통신 프로토콜
127.0.0.1, www.google.comhosts웹 페이지, 이미지, 동영상 등의 파일이 위치한 웹 서버, 도메인 또는 IP
:80, :443, :3000port웹 서버에 접속하기 위한 통로
/search, /Users/username/Desktopurl-path웹 서버의 루트 디렉토리로부터 웹 페이지, 이미지, 동영상 등의 파일이 위치까지의 경로
q=JavaScriptquery웹 서버에 전달하는 추가 질문

❗️URN 이란?

  • URN은 (Uniform Resource Name)의 줄임말이다.
  • URN은 URI의 표준 포맷 중 하나로, 이름으로 리소스를 특정하는 URI이다.
  • http와 같은 프로토콜을 제외하고 리소스의 name을 가리키는데 사용된다.
  • URN은 리소스를 영구적이고 유일하게 식별할 수 있는 URI이다.
  • URN에는 리소스 접근방법과, 웹 상의 위치가 표기되지 않는다.
  • URN은 리소스 자체에 부여된 영구적이고 유일한 이름이고 변하지 않는다.
  • 실제 자원을 찾기 위해서는 URN을 URL로 변환하여 이용한다.

👉 URL과 URI의 차이점

  • URL은 어떻게 리소스를 얻을 것이고 어디에서 가져와야하는지 명시하는 URI이다.
  • URN은 리소스를 어떻게 접근할 것인지 명시하지 않고 경로와 리소스 자체를 특정하는 것을 목표로하는 URI이다.

👉 URN 예시

URN-예시

❗️정리

URIURL과 URL을 포함하는 상위개념이다.
따라서, ‘URL은 URI다.’ 는 참이고, ‘URI는 URL이다.’ 는 거짓이다.

❗️Reference

참고 : [WEB] URL, URI, URN 차이

참고 : [네트워크] URI, URL, URN

0개의 댓글

댓글 제출

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Related Posts