ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Uniform Resource의 세가지 그림자 (URI & URL & URN)
    CS(ComputerScience) 2022. 1. 30. 10:58

    안녕하세요. 그린입니다🟢

    이번 포스팅에서는 Uniform Resource의 구성인 URI, URL, URN에 대해 학습해보겠습니다🙌

     

    개념과 사용은 익히 다들 서버 통신하면서 알고 계셨을거에요.

    저도 마찬가지였는데 정리를 간단히라도 해본적이 없더라구요..?🧐

    그래서 오랜만에 미디엄에서 URI를 다룬 글을 보다가 내가 이들의 차이를 정확히 알고 있는건가?

    두루뭉실하게 알고만 쓰는게 아닌가 생각이 들었어요🥲

    그렇기에 이번 포스팅을 빌미로 딱 핵심으로 차이와 특징을 정리해보려합니다👍

    URI와 구성요소인 URN, URL의 관계도

    URI

    URI는 통합 자원 식별자를 뜻하는 Uniform Resource Identifier의 약자로 인터넷에 있는 자원을 나타내는 유일한 주소!

    URI는 인터넷 및 통신에서의 디폴트 조건으로 인터넷 프로토콜에 붙어 다닙니다.

    여기까지가~ 나무위키의 대략적인 정의입니다.

    뭐 사실 더 풀어 쓸 말이 없어요🥲

    정리하자면 모든 인터넷 자원에는 URI를 가지고 있는겁니다!

    URI 표현방법

    scheme:[//[user[:password]@]host[:port]][/path][?query][#fragment]

    URI는 이런 문법으로 표기된다고 합니다.

    저기서 scheme은 http나 https, urn같은 것들이 될 수 있어요.

    우리가 도메인으로 많이 쓰는 URL형식들이 이것에 포함되죠.

    웹에서의 리소스 자원을 식별하는 문자열 시퀀스입니다🚀

    URI 구조

    위에서 표현방법에서 설명한 부분을 하나씩 어떤 의미인지 파해쳐보죠!

    - scheme

    해당 URI가 사용될 프로토콜로 보통 http, https를 사용하며 ftp나 mailto와 같은 형태도 사용됩니다.

    - user

    리소스에 접근하는 유저 이름

    - password

    리소스에 접근하는 유저 비밀번호

    - host

    접근할 리소스의 호스트명

    - port

    접근할 리소스의 포트번호

    - query

    리소스에 전달되는 파라미터 정보

    - fragment

    리소스의 하위 리소스 접근에 필요한 식별 정보

    URL

    URL은 Uniform Resource Locator의 약자로 간단히 URI의 주소라고 보면 됩니다.

    즉 인터넷에서 웹, 영상, 이미지 등의 자원의 위치를 표기하는 문자열입니다.

    흔히 우리는 웹 주소 혹은 링크로 부르고 있습니다.

    URL 표현방법

    scheme://<user>:<password>@<host>:<port>/<url-path>

    어디서 많이 본것 같죠?

    위에서 URI의 표현방법과 상당히 겹치죠!

    그도 그럴것이 뒤 query하고 fragment 문자열 부분 빼고는 동일합니다.

    즉 URI에서 URL이 구성요소로 들어감을 확인시켜줍니다.

    scheme은 보통 우리는 HTTP URL scheme을 많이 사용합니다.

    대개 익숙하신 웹 주소들이 이 형태를 띄고 있습니다.

    URN

    통합 자원 이름을 뜻하는 Uniform Resource Name의 약자로 URI의 이름이라고 보면됩니다.

    URL은 주소가 바뀌면 리소스를 찾을 수 없는 단점이 있습니다.

    그에 URN은 리소스의 위치에 영향을 받지 않는 즉 URL처럼 주소가 바뀌어도 무방한 이름과 같은

    영속성의 역할을 가집니다.

    다만 아직 URN을 채택하여 쓰지 않기에 굉장히 낯설거에요🥲

    정리하자면 URL은 주소이기에 해당 주소가 조금만 바뀌어도 리소스를 찾을 수 없고

    URN은 고유의 영속한 이름이기에 그것과 상관없이 리소스의 위치가 바뀌어도 찾을 수 있습니다.

    즉 우리는 URL이 표준이라 URN을 만날 기회가 없을것 같지만 미래에는 이 규약이 바뀔수도 있겠죠🧐

    URN 문법

    <URN> ::= "urn:" <NID> ":" <NSS>

    배커스-나우르 표기법을 사용합니다.

    예를들어 이런식으로 나타납니다.

    green.org/img.png

    이렇게 고유한 이름으로 표기됩니다.

    마무리

    간단히 3개의 차이를 명확히 알아본 시간이였습니다.

    사실 개념적으론 되게 간단한 내용인데 항상 서버 및 통신은 뭔가 어렵게 느껴져요..ㅋㅋ

    이 포스팅이 차이가 헷갈리는 분들께 도움이 되었으면 좋겠습니다🙌

    참고자료

    https://ko.wikipedia.org/wiki/통합_자원_식별자

     

    통합 자원 식별자 - 위키백과, 우리 모두의 백과사전

     

    ko.wikipedia.org

     

    'CS(ComputerScience)' 카테고리의 다른 글

    Turing machine (튜링 머신)  (46) 2023.09.21
    동일성과 동등성  (0) 2021.07.21
    연결 리스트  (2) 2021.05.20
    큐 (Queue)  (0) 2021.05.19
    스택  (0) 2021.05.18
Designed by Tistory.