Computer Science/Network

[Network] URI(Uniform Resource Identifier)?

검은 까마귀 2023. 9. 12. 12:27

 

인터넷 세상은 무지하게 큽니다

세계일주가 아니라 인터넷 일주를 한다면 얼마나 걸릴까요?

 

물론 인터넷은 컴퓨터 하나로 모든 사이트에 도착할 수 있으니깐 금방하겟죠?

오프라인 세상으로 넘어와서

국가를 판별할 수 있는 것은 국가명이 있습니다.

 

제가 살고 있는 "대한민국"같이 말입니다.

그리고 저는 대한민국에 살고 있기 때문에 "주민등록증"을 갖고있습니다.

주민등록증은 저를 식별할 수 있는 중요한 도구입니다.

 

 

 

그렇다면 광활한 인터넷에서도 엄청나게 많은 자원이 존재할텐데

그 자원들을 사용하고 싶다면 찾아내어 식별해야합니다!!

자원(리소스)는 어떤 방식으로 식별을 진행하게 될까요?

 

바로! URI(Uniform Resource Identifier)을 통해 식별을 진행하게 됩니다.

 

URI는 인터넷에서 리소스를 고유하게 식별하기 위한 문자열형식으로 이루어져있습니다.

URI는 리소스의 위치 또는 이름을 나타납니다

 

일단 구조부터 살펴볼까요?

scheme:[//authority]path[?query][#fragment]
  1. Scheme (스키마): 스키마는 리소스에 접근하는 방법을 정의합니다.
    일반적인 스키마로는 "http", "https", "ftp", "mailto" 등이 있습니다. 스키마는 URI의 가장 앞에 위치하고, 콜론(:)으로 끝납니다.
  2. Authority (권한) (옵션): 권한은 호스트(또는 서버) 정보를 포함합니다. 일반적으로 "사용자:비밀번호@호스트:포트" 형식으로 나타날 수 있으며, 스키마에 따라 권한이 없을 수도 있습니다.
  3. Path (경로): 경로는 리소스의 경로 또는 위치를 나타냅니다. 스키마와 권한 다음에 오며, 슬래시(/)로 구분된 여러 세그먼트로 구성될 수 있습니다.
  4. Query (쿼리 문자열) (옵션): 쿼리 문자열은 리소스에 대한 매개변수를 전달하는 데 사용됩니다. 물음표(?) 뒤에 키와 값 쌍으로 이루어진 문자열로 표현되며, 각 쌍은 앰퍼샌드(&)로 구분됩니다.
  5. Fragment (프래그먼트 또는 앵커) (옵션): 프래그먼트는 리소스의 특정 부분을 가리키는 데 사용됩니다. 해시(#) 다음에 나타나며, 웹 페이지 내의 앵커 또는 특정 섹션을 가리킬 때 사용됩니다.

 

URI는 2가지 형식으로 표현되는데

  • URL(Uniform Resource Locator) : 자원의 위치나 주소를 지정
    • 특정 프로토콜(HTTP, FTP)에 사용
    • 위의 예시는 URL이겠죠??
  • URN(Uniform Resource Name)
    • 리소스의 고유성을 강조

 

 

이렇게 URI를 사용하게 되면 여러가지 이점이 있습니다.

1. 인터넷 리소스접근 용이

2. 리소스 공유 용이

3. 검색 및 인덱싱 용이

4. 분산 시스템 및 네트워킹 용이

 

이렇듯 여러 곳에 나의 자원을 뿌려두고 자원을 연결할 수 있게 코드만 작성해둔다면

클라우드나 개발을 할때 꼭 나의 자원이 나의 프로세서에 없더라도

편하게 작업을 진행 할 수 있겠죠??

 

 

 

오늘은 인터넷에서 어떤 방식으로 자원을 식별하고 URI의 구조에 대해서 알아보았습니다.

 

 

반응형