[go: up one dir, main page]

KR20130089709A - Method and apparatus for sharing media content using modified url - Google Patents

Method and apparatus for sharing media content using modified url Download PDF

Info

Publication number
KR20130089709A
KR20130089709A KR1020110145976A KR20110145976A KR20130089709A KR 20130089709 A KR20130089709 A KR 20130089709A KR 1020110145976 A KR1020110145976 A KR 1020110145976A KR 20110145976 A KR20110145976 A KR 20110145976A KR 20130089709 A KR20130089709 A KR 20130089709A
Authority
KR
South Korea
Prior art keywords
url
media content
server
modulated
link
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
KR1020110145976A
Other languages
Korean (ko)
Other versions
KR101363164B1 (en
Inventor
최준균
송석현
박상민
오현택
Original Assignee
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원 filed Critical 한국과학기술원
Priority to KR1020110145976A priority Critical patent/KR101363164B1/en
Publication of KR20130089709A publication Critical patent/KR20130089709A/en
Application granted granted Critical
Publication of KR101363164B1 publication Critical patent/KR101363164B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Strategic Management (AREA)
  • Primary Health Care (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

PURPOSE: Media contents sharing method and device using a modulated uniform resource locator (URL) are provided to cache media contents received from a server and to offer a URL indicating media contents in the server and a link including information about URL of the cached media contents. CONSTITUTION: A media contents request detection unit (160) detects a request of media contents through a link. If the link includes a modulated URL, a URL generation unit (170) generates a first URL and a second URL for the media contents based on the modulated URL. A URL selection unit (180) selects a URL used to request the media contents in the first URL and the second URL. A transceiver unit (110) uses the selected URL, requests and receives the media contents. The first URL indicates the media contents in the first server and the second URL indicates the media contents in the second server. [Reference numerals] (110) Transceiver unit; (120) Storage unit; (130) Link generation detection unit; (140) Modulated URL generation unit; (150) Link providing unit; (160) Media contents request detection unit; (170) URL generation unit; (180) URL selection unit

Description

변조된 URL을 사용하는 미디어 콘텐츠 공유 방법 및 장치{METHOD AND APPARATUS FOR SHARING MEDIA CONTENT USING MODIFIED URL}METHOD AND APPARATUS FOR SHARING MEDIA CONTENT USING MODIFIED URL}

아래의 실시예들은 미디어 콘텐츠를 공유하기 위한 방법 및 장치에 관한 것이다. 변조된 URL을 사용하여 미디어 콘텐츠를 공유하고, 공유된 미디어 콘텐츠를 수신하는 방법 및 장치가 개시된다.The embodiments below relate to a method and apparatus for sharing media content. A method and apparatus for sharing media content using a modified URL and receiving the shared media content is disclosed.

본 연구는 방송통신위원회의 "IPTV 융합서비스 및 콘텐츠 공유를 위한 개방형 IPTV 플랫폼 기술 개발" 원천기술개발사업의 연구 결과로 수행되었다. (KCA- 2011-09912-03001)This study was carried out as a result of the original technology development project of "Open IPTV Platform Technology Development for IPTV Convergence Service and Content Sharing" by the Korea Communications Commission. (KCA- 2011-09912-03001)

오늘날, 소셜 네트워크 서비스(Social Network Service; SNS)들은 일상 생활의 일부가 되었다. 사용자는 자신의 미디어 콘텐츠를 생산(produce)할 수 있고, 자신의 SNS를 통해 생산된 콘텐츠를 배포(publish)할 수 있다. 또한, 사용자는 자신의 SNS를 통해 다른 사용자들과 상당 량의 기성 미디어 콘텐츠들을 공유할 수 있다.Today, social network services (SNS) have become part of everyday life. Users can produce their own media content and publish the produced content through their SNS. In addition, the user can share a substantial amount of ready-made media content with other users through their SNS.

그러나, 전통적인 미디어 콘텐츠 공유는, 시스템이 클라우드(cloud)를 사용함에도 불구하고, 중앙 집중식(centralized) 서버 시스템에 기반한다. 이러한 서비스들을 위한 서버 팜(farm)의 지점(branch)으로부터 멀리 떨어진 교외에 거주하는 사용자는 미디어 콘텐츠를 관람하기 위해 항상 바다 건너에 있는 서버에 접근(access)해야 한다. 이러한 접근은 미국 내에서 살지 않는 사용자들이 버퍼링(buffering) 또는 느린 로딩(loading) 때문에 비디오 콘텐츠를 시청함에 있어서 종종 불편함을 겪는 이유가 된다.However, traditional media content sharing is based on a centralized server system, even though the system uses a cloud. A user living in a suburb far away from the branch of a server farm for these services must always access a server across the sea to view the media content. This approach is a reason why users who do not live in the United States often suffer from watching video content because of buffering or slow loading.

하기에서, 상술된 문제들을 극복하기 위해 변형된(modified) 유일 자원 지시기(Uniform Resource Locator; URL) 단축(shortening)을 사용하여 미디어 콘텐츠를 공유하는 방법이 제시된다.]In the following, a method of sharing media content using a modified Uniform Resource Locator (URL) shortening is presented to overcome the problems described above.]

한국공개특허 제10-2005-0021751호(공개일 2005년 03월 07일)에는 클라이언트 기반 분산 웹 캐싱 시스템이 개시되었다. 상기의 시스템은 정보를 제공하는 웹 서버 및 공유된 여러 캐시 서버들이 개시된다. 클라이언트는 직접적으로 공유된 캐시들을 찾을 수 있으며, 웹 서버로부터 케시 서버의 정보가 클라이언트로 전송될 수 있다.Korean Patent Publication No. 10-2005-0021751 (published March 07, 2005) discloses a client-based distributed web caching system. The system discloses a web server providing information and several shared cache servers. The client can find shared caches directly, and information from the cache server can be sent from the web server to the client.

일 실시예는 서버로부터 미디어 콘텐츠를 수신하여 수신된 미디어 콘텐츠를 캐시하고, 서버 내의 미디어 콘텐츠를 가리키는 URL과 캐시된 미디어 콘텐츠의 URL에 대한 정보를 포함하는 링크를 제공하는 장치 및 방법을 제공할 수 있다.One embodiment may provide an apparatus and method for receiving media content from a server and caching the received media content and providing a link comprising a URL pointing to the media content within the server and information about the URL of the cached media content. have.

일 실시예는 변조된 URL을 사용하여 제1 서버 또는 제2 서버 중 하나의 선택된 서버로부터 미디어 콘텐츠를 수신하는 장치 및 방법을 제공할 수 있다.One embodiment may provide an apparatus and method for receiving media content from a selected server of either a first server or a second server using a modulated URL.

일 측면에 따르면, 단말이 미디어 콘텐츠의 링크를 제공하는 방법에 있어서, 상기 미디어 콘텐츠에 대한 링크의 생성 요청을 감지하는 단계, 상기 미디어 콘텐츠에 대한 변조된 유일 자원 지시기(Uniform Resource Locator; URL)를 생성하는 단계 및 상기 변조된 URL을 포함하는 상기 링크를 제공하는 단계를 포함하고, 상기 변조된 URL은 서버 및 상기 단말로부터 각각 상기 미디어 콘텐츠를 수신하기 위한 정보를 포함하는, 미디어 콘텐츠의 링크 제공 방법이 제공된다.According to an aspect, in a method of providing a link of media content, a terminal, the method comprising: detecting a request to create a link to the media content, and a modulated Uniform Resource Locator (URL) for the media content; Generating and providing the link including the modulated URL, wherein the modulated URL includes information for receiving the media content from a server and the terminal, respectively. This is provided.

상기 미디어 콘텐츠의 링크 제공 방법은, 상기 미디어 콘텐츠를 상기 서버로부터 수신하는 단계 및 상기 미디어 콘텐츠를 저장하는 단계를 더 포함할 수 있다.The link providing method of the media content may further include receiving the media content from the server and storing the media content.

상기 변조된 URL은 제1 정보 및 제2 정보를 포함할 수 있다.The modulated URL may include first information and second information.

상기 제1 정보는 제1 URL에 해싱을 적용함으로써 생성될 수 있고, 상기 제2 정보는 제2 URL에 해싱을 적용함으로써 생성될 수 있다.The first information may be generated by applying hashing to the first URL, and the second information may be generated by applying hashing to the second URL.

상기 제1 URL은 상기 서버 내의 상기 미디어 콘텐츠를 가리킬 수 있고, 상기 제2 URL은 상기 단말 내의 상기 미디어 콘텐츠를 가리킬 수 있다.The first URL may point to the media content in the server, and the second URL may point to the media content in the terminal.

상기 생성하는 단계는, 상기 제1 URL을 URL 단축 서버로 전송하는 단계, 상기 제1 URL에 해싱을 적용함으로써 생성된 상기 제1 정보를 상기 URL 단축 서버로부터 수신하는 단계, 상기 제2 URL을 상기 URL 단축 서버로 전송하는 단계 및 상기 제2 URL에 해싱을 적용함으로써 생성된 상기 제2 정보를 상기 URL 단축 서버로부터 수신하는 단계를 포함할 수 있다.The generating may include transmitting the first URL to a URL shortening server, receiving the first information generated by applying hashing to the first URL from the URL shortening server, and receiving the second URL. The method may include transmitting to the URL shortening server and receiving the second information generated by applying hashing to the second URL from the URL shortening server.

다른 일 측면에 따르면, 단말이 미디어 콘텐츠를 제공하는 방법에 있어서, 링크를 통한 미디어 콘텐츠의 요청을 감지하는 단계, 상기 링크가 변조된 URL을 포함하는 경우 상기 변조된 URL에 기반하여 상기 미디어 콘텐츠에 대한 제1 URL 및 제2 URL을 생성하는 단계, 상기 제1 URL 및 상기 제2 URL 중 상기 미디어 콘텐츠를 요청하기 위해 사용할 URL을 선택하는 단계 및 상기 선택된 URL을 사용하여 상기 미디어 콘텐츠를 요청 및 수신하는 단계를 포함하고, 상기 제1 URL은 제1 서버 내의 상기 미디어 콘텐츠를 가리키고, 상기 제2 URL은 제2 서버 내의 상기 미디어 콘텐츠를 가리키는, 미디어 콘텐츠 제공 방법이 제공된다.According to another aspect, a method of providing media content by a terminal, the method comprising: detecting a request for media content via a link; when the link includes a modulated URL, the media content is based on the modulated URL. Generating a first URL and a second URL, selecting a URL to use for requesting the media content from the first URL and the second URL, and requesting and receiving the media content using the selected URL And the first URL points to the media content in a first server and the second URL points to the media content in a second server.

상기 변조된 URL은 제1 정보 및 제2 정보를 포함할 수 있다.The modulated URL may include first information and second information.

상기 제1 URL은 상기 제1 정보에 해싱을 적용함으로써 생성될 수 있다. 상기 제2 URL은 상기 제2 정보에 해싱을 적용함으로써 생성될 수 있다.The first URL may be generated by applying hashing to the first information. The second URL may be generated by applying hashing to the second information.

상기 생성하는 단계는, 상기 제1 정보를 URL 복원 서버로 전송하는 단계, 상기 제1 정보에 해싱을 적용함으로써 생성된 상기 제1 URL을 상기 URL 복원 서버로부터 수신하는 단계, 상기 제2 정보를 상기 URL 복원 서버로 전송하는 단계 및 상기 제2 정보에 해싱을 적용함으로써 생성된 상기 제2 URL을 상기 URL 복원 서버로부터 수신하는 단계를 포함할 수 있다.The generating may include transmitting the first information to a URL restoration server, receiving the first URL generated by applying hashing to the first information from the URL restoration server, and receiving the second information. The method may include transmitting to the URL restoration server and receiving the second URL generated by applying hashing to the second information from the URL restoration server.

상기 선택하는 단계는, 상기 제1 URL이 가리키는 제1 서버 및 상기 제2 URL이 가리키는 제2 서버로 각각 핑 요청을 전송하는 단계 및 상기 제1 서버 및 상기 제2 서버 중 상기 핑 요청에 대해 더 빨리 응답한 서버를 가리키는 URL을 선택하는 단계를 포함할 수 있다.The selecting may include transmitting a ping request to the first server indicated by the first URL and the second server indicated by the second URL, and to the ping request among the first server and the second server, respectively. And selecting a URL that points to the server that responded quickly.

상기 선택하는 단계는, 상기 제1 URL이 나타내는 제1 지리적 위치 및 상기 제2 URL이 나타내는 제2 지리적 위치 중 상기 단말에 더 가까운 것으로 추정되는 지리적 위치를 결정하는 단계 및 상기 제1 URL 및 상기 제2 URL 중 상기 결정된 지리적 위치에 대응하는 URL을 선택하는 단계를 포함할 수 있다.The selecting may include determining a geographic location estimated to be closer to the terminal among a first geographic location indicated by the first URL and a second geographic location indicated by the second URL, and the first URL and the first URL. The method may include selecting a URL corresponding to the determined geographic location from two URLs.

상기 제2 서버는 상기 제1 서버로부터 상기 미디어 콘텐츠를 수신하여 상기 미디어 콘텐츠를 캐싱할 수 있다.The second server may receive the media content from the first server and cache the media content.

상기 링크는 상기 제2 서버에 의해 생성될 수 있다.The link may be created by the second server.

또 다른 일 측면에 따르면, 단말에 있어서, 미디어 콘텐츠의 링크의 생성 요청을 감지하는 링크 생성 감지부, 상기 미디어 콘텐츠에 대한 변조된 유일 자원 지시기(Uniform Resource Locator; URL)를 생성하는 변조된 URL 생성부 및 상기 변조된 URL을 포함하는 상기 링크를 제공하는 링크 제공부를 포함하고, 상기 변조된 URL은 서버 및 상기 단말로부터 각각 상기 미디어 콘텐츠를 수신하기 위한 정보를 포함하는, 단말이 제공된다.According to another aspect, in the terminal, a link generation detection unit for detecting a request to create a link of the media content, a modulated URL generation for generating a modulated Unique Resource Locator (URL) for the media content And a link providing unit for providing the link including the modulated URL, wherein the modulated URL includes information for receiving the media content from a server and the terminal, respectively.

또 다른 일 측면에 따르면, 단말에 있어서, 링크를 통한 미디어 콘텐츠의 요청을 감지하는 미디어 콘텐츠 요청 감지부, 상기 링크가 변조된 URL을 포함하는지 여부를 판단하고, 상기 링크가 상기 변조된 URL을 포함하는 경우 상기 변조된 URL에 기반하여 상기 미디어 콘텐츠에 대한 제1 URL 및 제2 URL을 생성하는 URL 생성부, 상기 제1 URL 및 상기 제2 URL 중 상기 미디어 콘텐츠를 요청하기 위해 사용할 URL을 선택하는 URL 선택부 및 상기 선택된 URL을 사용하여 상기 미디어 콘텐츠를 요청 및 수신하는 송수신부를 포함하고, 상기 제1 URL은 제1 서버 내의 상기 미디어 콘텐츠를 가리키고, 상기 제2 URL은 제2 서버 내의 상기 미디어 콘텐츠를 가리키는, 단말이 제공된다.According to another aspect, in the terminal, a media content request detector for detecting a request for media content via a link, determines whether the link includes a modulated URL, the link includes the modulated URL A URL generation unit for generating a first URL and a second URL for the media content based on the modulated URL, and selecting a URL to be used to request the media content among the first URL and the second URL. A URL selector and a transceiver for requesting and receiving the media content using the selected URL, wherein the first URL indicates the media content in a first server, and the second URL indicates the media content in a second server Pointing to, a terminal is provided.

상기 URL 선택부는 제1 URL이 가리키는 제1 서버 및 상기 제2 URL이 가리키는 제2 서버로 각각 핑 요청을 전송할 수 있고, 상기 제1 서버 및 상기 제2 서버 중 상기 핑 요청에 대해 더 빨리 응답한 서버를 가리키는 URL을 선택할 수 있다.The URL selecting unit may transmit a ping request to the first server indicated by the first URL and the second server indicated by the second URL, respectively, and respond to the ping request of the first server and the second server more quickly. You can choose a URL that points to the server.

상기 URL 선택부는 상기 제1 URL이 나타내는 제1 지리적 위치 및 상기 제2 URL이 나타내는 제2 지리적 위치 중 상기 단말에 더 가까운 것으로 추정되는 지리적 위치를 결정할 수 있고, 상기 제1 URL 및 상기 제2 URL 중 상기 결정된 지리적 위치에 대응하는 URL을 선택할 수 있다.The URL selecting unit may determine a geographic location estimated to be closer to the terminal among a first geographic location indicated by the first URL and a second geographic location represented by the second URL, and wherein the first URL and the second URL are determined. The URL corresponding to the determined geographic location may be selected.

또 다른 일 측면에 따르면, 단말에 있어서, 제1 미디어 콘텐츠의 제1 링크의 생성 요청을 감지하는 링크 생성 감지부, 상기 제1 미디어 콘텐츠에 대한 제1 변조된 유일 자원 지시기(Uniform Resource Locator; URL)를 생성하는 변조된 URL 생성부, 상기 제1 변조된 URL을 포함하는 상기 제1 링크를 제공하는 링크 제공부, 제2 링크를 통한 제2 미디어 콘텐츠의 요청을 감지하는 미디어 콘텐츠 요청 감지부, 상기 링크가 변조된 URL을 포함하는지 여부를 판단하고 상기 제2 링크가 제2 변조된 URL을 포함하는 경우 상기 제2 변조된 URL에 기반하여 상기 제2 미디어 콘텐츠에 대한 제1 URL 및 제2 URL을 생성하는 URL 생성부, 상기 제1 URL 및 상기 제2 URL 중 상기 제2 미디어 콘텐츠를 요청하기 위해 사용할 URL을 선택하는 URL 선택부 및 상기 선택된 URL을 사용하여 상기 제2 미디어 콘텐츠를 요청 및 수신하는 송수신부를 포함하고, 상기 제1 변조된 URL은 제1 서버 및 상기 단말로부터 각각 상기 제1 미디어 콘텐츠를 수신하기 위한 정보를 포함하고, 상기 제1 URL은 제2 서버 내의 상기 미디어 콘텐츠를 가리키고, 상기 제3 URL은 제2 서버 내의 상기 미디어 콘텐츠를 가리키는, 단말이 제공된다.According to another aspect, a terminal, the link generation detector for detecting a request to create a first link of the first media content, a first modulated Uniform Resource Locator (URL) for the first media content (Uniform Resource Locator; URL) A modulated URL generation unit for generating a), a link providing unit for providing the first link including the first modulated URL, a media content request detection unit for detecting a request for second media content through a second link, Determine whether the link includes a modulated URL, and if the second link includes a second modulated URL, the first URL and the second URL for the second media content based on the second modulated URL A URL generation unit generating a URL, a URL selecting unit selecting a URL to be used to request the second media content among the first URL and the second URL, and the second media content using the selected URL. And a requesting and receiving transceiver, wherein the first modulated URL includes information for receiving the first media content from a first server and the terminal, respectively, and the first URL is the media content in a second server. And the third URL points to the media content in a second server.

서버로부터 미디어 콘텐츠를 수신하여 수신된 미디어 콘텐츠를 캐시하고, 서버 내의 미디어 콘텐츠를 가리키는 URL과 캐시된 미디어 콘텐츠의 URL에 대한 정보를 포함하는 링크를 제공하는 장치 및 방법이 제공된다.An apparatus and method are provided for receiving media content from a server, caching the received media content, and providing a link comprising a URL pointing to the media content in the server and information about the URL of the cached media content.

변조된 URL을 사용하여 제1 서버 또는 제2 서버 중 하나의 선택된 서버로부터 미디어 콘텐츠를 수신하는 장치 및 방법이 제공된다.An apparatus and method are provided for receiving media content from a selected server of either a first server or a second server using a modulated URL.

도 1은 일 실시예에 따른 단말의 블록도이다.
도 2는 일 예에 따른 변조된 URL을 설명한다.
도 3은 일 실시예에 따른 미디어 콘텐츠의 링크 제공 방법의 흐름도이다.
도 4는 일 예에 따른 해시된 URL의 제공하는 방법의 흐름도이다.
도 5는 일 실시예에 따른 단말이 변조된 URL을 사용하여 미디어 콘텐츠를 제공하는 방법의 흐름도이다.
도 6은 일 예에 따른 해시된 URL의 복원을 나타내는 흐름도이다.
도 7은 일 예에 따른 리다이렉트 서버의 동작을 나타내는 흐름도이다.
1 is a block diagram of a terminal according to an embodiment.
2 illustrates a modulated URL according to an example.
3 is a flowchart of a link providing method of media content according to an exemplary embodiment.
4 is a flowchart of a method of providing a hashed URL according to an example.
5 is a flowchart of a method of providing, by a terminal, media content using a modulated URL according to an embodiment.
6 is a flowchart illustrating restoration of a hashed URL according to an example.
7 is a flowchart illustrating an operation of a redirect server according to an example.

이하에서, 실시예들을, 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, the present invention is not limited to or limited by the embodiments. Like reference symbols in the drawings denote like elements.

이하에서, 용어 "URL" 및 "통합 자원 식별자(Uniform Resource Identifier; URI)"는 동일한 의미로 사용될 수 있으며, 상호 대체될 수 있다.Hereinafter, the terms "URL" and "Uniform Resource Identifier (URI)" may be used interchangeably and may be interchanged with each other.

URL 단축(shortening)은 일반적인 URL을 짧고 간단하기 만드는 서비스를 의미한다. URL은 단축은, 특히 소셜 미디어 등에서, 다양한 미디어 콘텐츠를 링크하기 위해 널리 사용될 수 있다.URL shortening refers to a service that makes common URLs short and simple. URL shortening can be widely used to link various media content, especially in social media and the like.

대부분의 웹 브라우저는 이미지 또는 비디오와 같은 콘텐츠를 캐시(cache)할 수 있다. 예컨대, 사용자가 웹 브라우저를 사용하여 인터넷 상에서 어떤 미디어 콘텐츠를 시청하였을 때, 미디어 콘텐츠의 파일이 사용자의 단말의 임시 파일 폴더 내에 저장될 수 있다.Most web browsers can cache content such as images or videos. For example, when a user watches certain media content on the Internet using a web browser, a file of the media content may be stored in a temporary file folder of the user's terminal.

사용자는 자신의 단말 내에 캐시된 콘텐츠를 다른 사용자에게 제공할 수 있다. 따라서, 사용자는 캐시된 콘텐츠를 콘텐츠 공유의 새로운 소스(source)로서 사용할 수 있다. HTML5 표준의 웹 어플리케이션 및 웹 브라우저 기술(technology)에 따라, 웹 브라우저는 특별한 네이티브(native) 어플리케이션 소프트웨어(software) 없이도, 웹 서버로서 동작할 수 있다.The user can provide the content cached in his terminal to other users. Thus, the user can use the cached content as a new source of content sharing. According to the web application and web browser technology of the HTML5 standard, a web browser can operate as a web server without any special native application software.

즉, 최신의 웹 브라우저는 브라우저 익스텐션(extension) 또는 웹 앱(app)의 형태를 통해, 다양한 추가 기능을 별도의 어플리케이션을 사용하지 않은 채 웹 브라우저 상에서 제공할 수 있다. 이러한 추가 기능은 이-메일(e-mail) 검사 또는 게임 등과 같은 다양한 기능을 포함할 수 있다.That is, the modern web browser can provide various additional functions on the web browser without using a separate application through the form of a browser extension or a web app. These additional functions may include various functions such as e-mail checks or games.

이러한 변경을 통해, 사용자는 다른 사용자의 브라우저에 의해 캐시된 콘텐츠에 접근할 수 있다. 또한, SNS 상의 친구들은 서로 인근에 거주할 수 있다. 즉, SNS에서의 친구 관계는 많은 케이스들에 있어서 지리적 근접성을 의미할 수 있으며, 원래의 SNS 또는 미디어 서비스 서버에 비해 보다 근접한 미디어 콘텐츠의 소스로서 사용될 수 있다. 하기의 실시예는 SNS 상에서의 분산 미디어 콘텐츠 공유의 일 형태를 제공할 수 있다.This change allows a user to access content cached by another user's browser. In addition, friends on SNS can live near each other. In other words, friendship in SNS can mean geographic proximity in many cases, and can be used as a source of media content closer than the original SNS or media service server. The following embodiments can provide one form of distributed media content sharing on SNS.

피어-투-피어(Peer-to-Peer; P2P) 기술은 단 하나의 소스가 아닌 사용자의 주변의 가까운 소스들로부터 파일을 수신하는 분산 공유 방식을 통해 파일의 전송 효율을 높이는 기술이다. 그러나, 최소한의 레이턴시(latency), 링크(link)/노드(node) 스트레스(stress) 및 룩업(look-up) 시간을 지원하는 P2P 오버레이(overlay) 네트워크를 구축하는 것은 여전히 공개된 과제이다. Peer-to-Peer (P2P) technology is a technology that improves the transmission efficiency of a file through a distributed sharing method in which a file is received from nearby sources around the user instead of just one source. However, building a P2P overlay network that supports minimal latency, link / node stress, and look-up time is still an open challenge.

더욱이, P2P에 있어서, 불특정 다수를 위해 자신의 컴퓨터의 자원을 일부 제공한다는 것에 불만을 가지고, 오로지 다운로드(download)만 받고, 파일의 공유에는 참여하지 않는 무임 승차(free-riding) 문제가 발생할 수 있다. 또한, P2P의 새로운 피어가 추가됨에 따라, 브로커(broker)가 계속적으로 파일의 공유에 참여하는 사용자들의 목록(list)을 관리하고, 새로운 오버레이(overlay) 네트워크를 구성해주어야 하는 문제가 발생할 수 있다. 상기의 문제들은 실제의 어플리케이션에 있어서 큰 장애가 될 수 있으며, 아직까지 최적의(optimal) 해법(solution)이 발견되지 않은 개방된(open) 문제로 간주될 수 있다. 하기의 실시예는 HTML5 웹 기술을 사용하는 SNS 상의 미디어 콘텐츠 공유 방법을 개시할 수 있다.
Moreover, with P2P, there are complaints about freeing up some of the resources of your computer for an unspecified number, and you may encounter free-riding problems that only receive downloads and do not participate in file sharing. have. In addition, as a new peer of P2P is added, a problem may arise in that a broker continuously manages a list of users participating in file sharing and configures a new overlay network. The above problems can be a big obstacle in practical applications and can be regarded as open problems where no optimal solution has yet been found. The following embodiments may disclose a method of sharing media content on an SNS using HTML5 web technology.

도 1은 일 실시예에 따른 단말의 블록도이다.1 is a block diagram of a terminal according to an embodiment.

사용자가 단말(100)의 웹 브라우저를 사용하여, 인터넷 상에서 어떤 미디어 콘텐츠를 시청할 수 있다. 이때, 단말(100)은 사용자가 시청하는 미디어 콘텐츠(즉, 미디어 콘텐츠의 파일)을 단말 내에 캐시할 수 있다. 미디어 콘텐트는 단말의 파일 시스템의 특정한 위치에 파일로서 저장될 수 있다.The user can watch certain media content on the Internet using a web browser of the terminal 100. In this case, the terminal 100 may cache media content (ie, a file of media content) that the user watches in the terminal. The media content may be stored as a file at a specific location in the file system of the terminal.

사용자는 자신이 시청한 미디어 콘텐츠를 소셜 서비스 등을 통해 공유할 수 있다. 미디어 콘텐츠를 공유하기 위해, 사용자는 상기의 미디어 콘텐츠를 가리키는 링크를 생성할 수 있고, 생성된 링크를 웹 서버가 제공하는 페이지 내에 삽입할 수 있다. 다른 사용자는 상기의 링크를 통해 미디어 콘텐츠에 접근할 수 있다.The user may share the media content viewed by the user through a social service or the like. To share media content, a user can create a link that points to the media content and insert the generated link into a page provided by a web server. Other users can access the media content through the link above.

이때, 미디어 콘텐츠는 1) 애초에 단말(100)에게 미디어 콘텐츠를 제공한 서버 또는 2) 미디어 콘텐츠를 캐시한 단말(100)에 의해 제공될 수 있다. 즉, 미디어 콘텐츠는 2 개의 개체(entity)들에 의해 제공될 수 있다. 이하, 애초에 미디어 콘텐츠를 제공한 개체를 원본 서버로 명명할 수 있다. 또한, 미디어 콘텐츠를 캐시한 후 제공하는 개체(즉, 단말(110))를 캐시 서버로 명명할 수 있다.In this case, the media content may be provided by 1) the server that initially provided the media content to the terminal 100, or 2) the terminal 100 that cached the media content. In other words, media content may be provided by two entities. In the following, the object that originally provided the media content can be named as the origin server. In addition, an entity (ie, the terminal 110) providing a cache after media content may be referred to as a cache server.

미디어 콘텐츠가 복수 개의 서버들 각각으로부터 제공되기 위해서, 하나의 링크가 복수 개의 서버들 각각으로부터 미디어 콘텐츠를 수신하기 위한 정보를 포함할 필요가 있다. 예컨대, 타 사용자는 상기의 링크를 사용하여 원본 서버 내에 저장된 미디어 콘텐츠 또는 캐시 서버 내에 저장된 미디어 콘텐츠를 선택적으로 접근할 수 있다. 링크는 1) 제1 서버(예컨대, 원본 서버) 내에 저장된 미디어 콘텐츠를 특정하기 위한 제1 정보 및 2) 제 2 서버(예컨대, 캐시 서버) 내에 저장된 미디어 콘텐츠를 특정하기 위한 제2 정보를 포함할 수 있다.In order for media content to be provided from each of the plurality of servers, one link needs to contain information for receiving the media content from each of the plurality of servers. For example, other users can selectively access media content stored in the origin server or media content stored in the cache server using the link. The link may include 1) first information for specifying media content stored in a first server (eg, origin server) and 2) second information for specifying media content stored in a second server (eg, cache server). Can be.

기존의 URL에 비해, 상기의 제1 정보 및 제2 정보를 포함한 URL을 변조된(modified) URL로 명명한다. 여기서, 제1 정보는 제1 URL로 변환될 수 있고, 제2 정보는 제2 URL로 변환될 수 있다. 즉 변조된 URL은 원본 서버 및 캐시 서버 등을 포함한 복수 개의 서버들 각각으로부터 미디어 콘텐츠를 수신하기 위한 정보를 포함할 수 있다. 변조된 URL의 형식의 일 예가 하기에서 도 2를 참조하여 상세히 설명된다.\Compared with the existing URL, the URL including the first information and the second information is named as a modified URL. Here, the first information may be converted to the first URL, and the second information may be converted to the second URL. That is, the modified URL may include information for receiving media content from each of a plurality of servers including an origin server and a cache server. An example of the format of a modulated URL is described in detail with reference to FIG. 2 below.

단말(100)은 송수신부(110), 저장부(120), 링크 생성 감지부(130), 변조된 URL 생성부(140), 링크 제공부(150), 미디어 콘텐츠 요청 감지부(160), URL 생성부(170) 및 URL 선택부(180)를 포함할 수 있다.The terminal 100 includes a transceiver 110, a storage 120, a link generation detector 130, a modulated URL generator 140, a link provider 150, a media content request detector 160, The URL generating unit 170 and the URL selecting unit 180 may be included.

상기의 구성 요소들(110 내지 180)은 웹 브라우저의 일부일 수 있으며, 또는 웹 브라우저의 확장(extension)일 수 있다.The components 110 to 180 may be part of a web browser, or may be an extension of the web browser.

송수신부(110), 저장부(120), 링크 생성 감지부(130), 변조된 URL 생성부(140) 및 링크 제공부(150)는 변조된 URL을 생성하기 위한 구성 요소로 간주될 수 있다.The transceiver 110, the storage 120, the link generation detector 130, the modulated URL generator 140, and the link provider 150 may be regarded as components for generating a modulated URL. .

하기에서, 제1 링크는 사용자가 다른 사용자와 공유하기를 원하는 제1 미디어 콘텐츠에 대한 링크일 수 있다.In the following, the first link may be a link to first media content that a user wants to share with another user.

송수신부(110)는 서버로부터 제1 미디어 콘텐츠를 수신할 수 있다.The transceiver 110 may receive the first media content from the server.

저장부(120)는 수신된 제1 미디어 콘텐츠를 저장할 수 있다.The storage unit 120 may store the received first media content.

링크 생성 감지부(130)는 제1 미디어 콘텐츠에 대한 제1 링크의 생성 요청을 감지할 수 있다.The link generation detector 130 may detect a request for generating a first link for the first media content.

변조된 URL 생성부(140)는 제1 링크의 생성이 요청된 제1 미디어 콘텐츠에 대한 제1 변조된 URL을 생성할 수 있다.The modulated URL generator 140 may generate a first modulated URL for the first media content for which the generation of the first link is requested.

제1 변조된 URL은 서버 및 단말(100)로부터 각각 제1 미디어 콘텐츠를 수신하기 위한 정보를 포함할 수 있다.The first modulated URL may include information for receiving first media content from the server and the terminal 100, respectively.

링크 제공부(150)는 제1 변조된 URL을 포함하는 제1 링크를 제공할 수 있다.The link provider 150 may provide a first link including the first modulated URL.

송수신부(110), 저장부(120), 미디어 콘텐츠 요청 감지부(160), URL 생성부(170) 및 URL 선택부(180)는 변조된 URL에 대응하는 미디어 콘텐츠를 제공하는 구성 요소로 간주될 수 있다.The transceiver 110, the storage 120, the media content request detector 160, the URL generator 170, and the URL selector 180 are regarded as components that provide media content corresponding to the modulated URL. Can be.

하기에서, 제2 링크는 사용자가 접근하기를 원하는 제2 미디어 콘텐츠에 대한 링크일 수 있다.In the following, the second link may be a link to second media content that the user wants to access.

미디어 콘텐츠 요청 감지부(160)는 제2 링크를 통한 제2 미디어 콘텐츠의 요청을 감지할 수 있다.The media content request detector 160 may detect a request for the second media content through the second link.

URL 생성부(170)는 제2 링크가 제2 변조된 URL을 포함하는지 여부를 판단할 수 있다.The URL generator 170 may determine whether the second link includes the second modulated URL.

제2 변조된 URL은 제2 서버 및 제3 서버로부터 각각 제2 미디어 콘텐츠를 수신하기 위한 정보를 포함할 수 있다.The second modulated URL may include information for receiving second media content from a second server and a third server, respectively.

URL 생성부(170)는, 제2 링크가 제2 변조된 URL을 포함하는 경우, 제2 변조된 URL 에 기반하여 제2 미디어 콘텐츠에 대한 제1 URL 및 제2 URL을 생성할 수 있다.When the second link includes the second modulated URL, the URL generator 170 may generate a first URL and a second URL for the second media content based on the second modulated URL.

URL 선택부(180)는 제1 URL 및 제2 URL 중 제2 미디어 콘텐츠를 요청하기 위해 사용할 URL을 선택할 수 있다..The URL selector 180 may select a URL to be used for requesting the second media content among the first URL and the second URL.

송수신부(110)는 선택된 URL을 사용하여 제2 미디어 콘텐츠를 요청 및 수신할 수 있다.The transceiver 110 may request and receive the second media content using the selected URL.

저장부(120)는 수신된 제2 미디어 콘텐츠를 저장할 수 있다.
The storage unit 120 may store the received second media content.

도 2는 일 예에 따른 변조된 URL을 설명한다.2 illustrates a modulated URL according to an example.

URL은 네트워크 상에서 자원이 어디에 있는가를 알려주기 위한 규약이다. 일반적인 URL이 특정한 자원의 단일한 네트워크 상의 위치를 나타내는 것이라면, 변조된 URL(200)은 특정한 자원(예컨대, 미디어 콘텐츠)의 복수 개의 네트워크 상의 위치들을 나타낼 수 있다..The URL is a convention for telling where resources are on the network. If the generic URL is indicative of a location on a single network of particular resources, then the modulated URL 200 may represent locations on multiple networks of a particular resource (eg, media content).

변조된 URL(200)은 프로토콜 식별부(210), 제1 구분자(220), 제1 주소부(230), 제2 주소부(240), 제2 구분자(250) 및 제3 주소부(260)를 포함할 수 있다.The modulated URL 200 includes a protocol identification unit 210, a first delimiter 220, a first address unit 230, a second address unit 240, a second delimiter 250, and a third address unit 260. ) May be included.

프로토콜 식별부(210)는 변조된 URL(200)이 적용되는 프로토콜(예컨대, 하이퍼 텍스트 트랜스퍼 프로토콜(Hyper Text Transfer Protocol; HTTP))을 나타낼 수 있다.The protocol identifier 210 may indicate a protocol (eg, Hyper Text Transfer Protocol (HTTP)) to which the modulated URL 200 is applied.

제1 구분자(220)는 변조된 URL(200) 중 프로토콜 식별부(210) 및 나머지 부분을 구분할 수 있다. 제2 구분자(250)는 제2 주소부(250) 및 제3 주소부(260)를 구분할 수 있다.The first delimiter 220 may distinguish between the protocol identifier 210 and the rest of the modulated URL 200. The second delimiter 250 may distinguish between the second address unit 250 and the third address unit 260.

전술된 것처럼, 변조된 URL(200)은 복수 개의 서버들 각각으로부터 미디어 콘텐츠를 수신하기 위한 정보를 포함할 수 있다. 제1 서버로부터 미디어 콘텐츠를 수신하기 위한 제1 정보는 제1 주소부(230) 및 제2 주소부(240)를 포함할 수 있다. 또는, 제1 정보는 제1 주소부(230) 및 제2 주소부(240)로 구성될 수 있다. 제2 서버로부터 미디어 콘텐츠를 수신하기 위한 제2 정보는 제3 주소부(260)를 포함할 수 있으며, 제1 주소부(230) 및 제3 주소부(260)을 포함할 수 있다. 또는, 제2 정보는 제3 주소부(260)로 구성될 수 있고, 제1 주소부(230) 및 제3 주소부(260)로 구성될 수 있다.As described above, the modulated URL 200 may include information for receiving media content from each of the plurality of servers. The first information for receiving the media content from the first server may include a first address unit 230 and a second address unit 240. Alternatively, the first information may include a first address unit 230 and a second address unit 240. The second information for receiving the media content from the second server may include a third address unit 260, and may include a first address unit 230 and a third address unit 260. Alternatively, the second information may be composed of the third address unit 260 and may be composed of the first address unit 230 and the third address unit 260.

제1 서버 내의 미디어 콘텐츠를 가리키는 제1 URL(270)은, 예컨대 변조된 URL 생성부(140) 또는 후술될 URL 단축 서버에 의해, 제1 정보로 변환될 수 있다. 또한, 제1 정보는, 예컨대 URL 생성부(170) 또는 후술될 URL 복원 서버에 의해, 제1 URL(270)로 변환될 수 있다.The first URL 270 indicating the media content in the first server may be converted into the first information, for example, by the modulated URL generator 140 or a URL shortening server to be described later. In addition, the first information may be converted into the first URL 270 by, for example, the URL generator 170 or a URL restoration server to be described later.

또한, 제2 서버 내의 미디어 콘텐츠를 가리키는 제1 URL(280)은, 예컨대 변조된 URL 생성부(140) 또는 후술될 URL 단축 서버에 의해, 제2 정보로 변환될 수 있다. 또한, 제2 정보는, 예컨대 URL 생성부(170) 또는 후술될 URL 복원 서버에 의해, 제2 URL(280)로 변환될 수 있다. 여기서, 제2 URL은 제2 서버의 IP 주소를 포함할 수 있고, 제2 서버 내에서의 미디어 콘텐츠의 경로를 포함할 수 있다.In addition, the first URL 280 indicating the media content in the second server may be converted into the second information, for example, by the modulated URL generating unit 140 or the URL shortening server to be described later. In addition, the second information may be converted into the second URL 280 by, for example, the URL generator 170 or a URL restoration server to be described later. Here, the second URL may include an IP address of the second server and may include a path of media content in the second server.

여기서, 제1 정보 및 제1 URL는(또는, 제2 정보 및 제2 URL는)은 해싱(hashing)에 의해 서로 간에 변환될 수 있다. 따라서, 변조된 URL은 제1 정보 및 제2 정보에 기반하여 생성될 수 있다. 즉, 제1 정보는 제1 URL(270)에 해싱을 적용함으로써 생성된 해시된 제1 URL일 수 있다. 또한, 제2 정보는 제2 URL(280)에 해싱을 적용함으로써 생성된 해시된 제2 URL일 수 있다.Here, the first information and the first URL (or the second information and the second URL) may be converted to each other by hashing. Therefore, the modulated URL may be generated based on the first information and the second information. That is, the first information may be a hashed first URL generated by applying hashing to the first URL 270. Also, the second information may be a hashed second URL generated by applying hashing to the second URL 280.

변조된 URL(200)이 3 개 이상의 서버들 각각으로부터 미디어 콘텐츠를 수신하기 위한 정보를 포함할 수 있다. 3 개 이상의 서버들 각각으로부터 미디어 콘텐츠를 수신하기 위한 정보를 포함하기 위해, 변조된 URL(200)은 추가적인 주소부들을 포함할 수 있다. 추가적인 주소부들 중 k 번째 추가적인 주소부는 제k+2 서버로부터 미디어 콘텐츠를 수신하기 위한 정보를 포함할 수 있다. 여기서, k는 1 이상 n-2 이하의 정수이다. n은 서버들의 개수이다.
The modulated URL 200 may include information for receiving media content from each of the three or more servers. In order to include information for receiving media content from each of the three or more servers, the modulated URL 200 may include additional addressing portions. The k th additional address unit among the additional address units may include information for receiving the media content from the k + 2th server. Here, k is an integer of 1 or more and n- 2 or less. n is the number of servers.

도 3은 일 실시예에 따른 미디어 콘텐츠의 링크 제공 방법의 흐름도이다.3 is a flowchart of a link providing method of media content according to an exemplary embodiment.

사용자는 특정한 미디어 콘텐츠를 시청하기 위해 단말(100)을 조작하여 상기의 미디어 콘텐츠를 수신할 수 있다.The user may receive the media content by manipulating the terminal 100 to watch specific media content.

단계(310)에서, 송수신부(110)는 미디어 콘텐츠를 수신할 수 있다.In operation 310, the transceiver 110 may receive media content.

단계(320)에서, 저장부(120)는 수신된 미디어 콘텐츠를 저장할 수 있다.In operation 320, the storage 120 may store the received media content.

사용자는 수신된 미디어 콘텐츠에 대한 링크를 생성하려고 할 수 있다. 사용자는 단말(100)을 조작하여 미디어 콘텐츠에 대한 링크의 생성을 요청할 수 있다.The user may attempt to create a link to the received media content. The user may operate the terminal 100 to request the generation of a link to the media content.

단계(330)에서, 링크 생성 감지부(110)는 미디어 콘텐츠에 대한 링크의 생성 요청을 감지할 수 있다.In operation 330, the link generation detecting unit 110 may detect a request to create a link for media content.

단계(340)에서, 링크 생성 감지부(110)는 미디어 콘텐츠가 단말(100) 내에 저장되었는지 여부를 판단할 수 있다. 단말(100) 내에 미디어 콘텐츠가 저장된 경우, 단말(100)이 미디어 콘텐츠를 제공하기 위해, 변조된 URL이 생성될 필요가 있다. 단말(100) 내에 미디어 콘텐츠가 저장되지 않은 경우, 단말(100)은 미디어 콘텐츠를 제공할 수 없다. 따라서, 변조된 URL 대신 미디어 콘텐츠에 대한 일반적인 URL이 생성될 필요가 있다.In operation 340, the link generation detecting unit 110 may determine whether the media content is stored in the terminal 100. When media content is stored in the terminal 100, in order for the terminal 100 to provide the media content, a modulated URL needs to be generated. If media content is not stored in the terminal 100, the terminal 100 may not provide the media content. Thus, a generic URL for media content needs to be generated instead of a modulated URL.

단말(100) 내에 미디어 콘텐츠가 저장된 경우 단계(370)가 수행될 수 있고, 그렇지 않은 경우 단계(350)가 수행될 수 있다.If media content is stored in the terminal 100, step 370 may be performed. Otherwise, step 350 may be performed.

단계(350)에서, 변조된 URL 생성부(140)는 미디어 콘텐츠에 대한 URL을 생성할 수 있다. 상기의 URL은 서버로부터 미디어 콘텐츠를 수신하기 위한 URL일 수 있다. 또한, 상기의 URL은 축약 URL일 수 있다. 축약 URL을 생성하는 방법의 일 예가 하기에서 도 4를 참조하여 상세히 설명된다.In operation 350, the modulated URL generator 140 may generate a URL for media content. The URL may be a URL for receiving media content from a server. In addition, the URL may be a shortened URL. An example of a method for generating a shortened URL is described in detail with reference to FIG. 4 below.

단계(360)에서, 링크 제공부(150) 생성된 URL을 포함하는 링크를 제공할 수 있다.In operation 360, the link providing unit 150 may provide a link including the generated URL.

단계(370)에서, 변조된 URL 생성부(140)는 미디어 콘텐츠에 대한 변조된 URL을 생성할 수 있다. 변조된 URL은 서버 및 단말(100)로부터 각각 미디어 콘텐츠를 수신하기 위한 정보를 포함할 수 있다.In operation 370, the modulated URL generator 140 may generate a modulated URL for media content. The modulated URL may include information for receiving media content from the server and the terminal 100, respectively.

변조된 URL은 제1 정보 및 제2 정보를 포함할 수 있다. 변조된 URL 생성부(140)는 제1 URL에 해싱을 적용함으로써 제1 정보를 생성할 수 있고, 제2 URL에 해싱을 적용함으로써 제2 정보를 생성할 수 있다.The modulated URL may include first information and second information. The modulated URL generator 140 may generate first information by applying hashing to the first URL, and may generate second information by applying hashing to the second URL.

제1 URL은 미디어 콘텐츠를 제공한 서버 내의 미디어 콘텐츠를 가리킬 수 있다. 즉, 단계(310)에서, 송수신부(110)는 제1 URL을 사용하여 미디어 콘텐츠를 수신할 수 있다.The first URL may point to media content in the server that provided the media content. That is, in step 310, the transceiver 110 may receive the media content using the first URL.

제2 URL은 단말(100) 내의 상기 미디어 콘텐츠를 가리킬 수 있다. 따라서, 타 사용자는 제2 URL을 사용하여 단말(100)로부터 미디어 콘텐츠를 수신할 수 있다. 단말(100)(또는, 단말(100)의 웹 브라우저)는 미디어 콘텐츠를 제공하는 웹 서버의 역할을 할 수 있다.The second URL may point to the media content in the terminal 100. Therefore, another user may receive media content from the terminal 100 using the second URL. The terminal 100 (or a web browser of the terminal 100) may serve as a web server for providing media content.

제1 URL 및 제2 URL에 각각 기반하여 제1 정보 및 제2 정보를 생성하기 위한 구체적인 방법의 일 예가 하기에서 도 4를 참조하여 상세히 설명된다.An example of a specific method for generating the first information and the second information based on the first URL and the second URL, respectively, is described in detail with reference to FIG. 4 below.

단계(380)에서, 링크 제공부(150)는 생성된 변조된 URL을 포함하는 링크를 제공할 수 있다.In operation 380, the link provider 150 may provide a link including the generated modulated URL.

여기서, 링크는 변조된 URL일 수 있다. 링크가 문자열(string)일 경우, 상기의 문자열 중 전부 또는 일부는 변조된 URL일 수 있다.
Here, the link may be a modified URL. If the link is a string, all or part of the string may be a modified URL.

도 4는 일 예에 따른 해시된 URL의 제공하는 방법의 흐름도이다.4 is a flowchart of a method of providing a hashed URL according to an example.

단계(410)에서, 단말(100)은 URL 단축 서버(400)에게 URL을 전송할 수 있다.In operation 410, the terminal 100 may transmit a URL to the URL shortening server 400.

URL 단축 서버(400)는 URL에 대한 단축 서비스를 제공하는 서버일 수 있다.The URL shortening server 400 may be a server that provides a shortening service for a URL.

단계(420)에서, URL 단축 서버(400)는 전송된 URL에 해싱을 적용함으로써 해시된 URL을 생성할 수 있다. 상기의 해싱에 의해, 전송된 URL의 길이가 단축될 수 있다. 따라서, 해시된 URL은 축약(shorten) URL으로도 명명될 수 있다. 또한, 축약 URL은 "/" 등의 특수 문자를 포함하지 않을 수 있고, 수문자로 구성될 수 있다. 또한, 축약 URL의 길이는 URL의 길이 이하일 수 있다.In operation 420, the URL shortening server 400 may generate a hashed URL by applying hashing to the transmitted URL. By the above hashing, the length of the transmitted URL can be shortened. Thus, the hashed URL can also be called a shorten URL. In addition, the shortened URL may not include special characters such as "/" and may be composed of numbers. Also, the length of the shortened URL may be equal to or less than the length of the URL.

URL 단축 서버(400)는 해싱을 위해 해시 테이블(table)을 사용할 수 있고, 전송된 URL의 전부 또는 일부를 해시 테이블(table)에 대한 해시 코드(code)로서 사용할 수 있다. 여기서, 전송된 URL의 일부는 전송된 URL 중 특정한 서버 내에서의 경로를 특정하는 부분일 수 있다. 또한, 전송된 URL의 일부는 전송된 URL 중 특정한 서버 및 상기의 특정한 서버 내에서의 경로를 특정하는 부분일 수 있다.The URL shortening server 400 may use a hash table for hashing, and may use all or part of the transmitted URL as a hash code for the hash table. Here, a part of the transmitted URL may be a part of specifying a path in a specific server among the transmitted URLs. In addition, a part of the transmitted URL may be a part of specifying a specific server and a path within the specific server among the transmitted URLs.

단계(430)에서, 단말(100)은 URL 단축 서버(400)로부터 해시된 URL을 수신할 수 있다.In operation 430, the terminal 100 may receive the hashed URL from the URL shortening server 400.

여기서, 전술된 단계(370)는 단계들(410 내지 430)을 포함할 수 있다. 단계(370)에서, 단계들(410 내지 430)은 2 회 수행될 수 있다. 첫 번째의 반복은 단계(370)의 제1 URL에 대한 것이고, 두 번째의 반복은 단계(370)의 제2 URL에 관한 것이다.Here, step 370 described above may include steps 410 to 430. In step 370, steps 410 through 430 may be performed twice. The first iteration is for the first URL of step 370 and the second iteration is for the second URL of step 370.

즉, 단계(410)의 URL은 단계(370)의 제1 URL 또는 제2 URL을 나타낼 수 있다. 또한, 단계(430)의 해시된 URL은 단계(370)의 제1 정보 또는 제2 정보를 나타낼 수 있다. 따라서, URL 단축 서버(400)는 제1 URL에 해싱을 적용함으로써 제1 정보를 생성할 수 있고, 제2 URL에 해싱을 적용함으로써 제2 정보를 생성할 수 있다. 단계(360) 또는 단계(380)에서 반환되는 링크는 축약 URL 또는 변조된 URL을 포함할 수 있다.That is, the URL of step 410 may represent the first URL or the second URL of step 370. In addition, the hashed URL of step 430 may represent the first information or the second information of step 370. Accordingly, the URL shortening server 400 may generate first information by applying hashing to the first URL, and generate second information by applying hashing to the second URL. The link returned in step 360 or step 380 may include a shortened URL or a modulated URL.

단계들(410 내지 430)에서 상술된 URL 단축 서버(400)의 기능은 변조된 URL 생성부(140)에 의해서도 수행될 수 있다.
The functions of the URL shortening server 400 described above in steps 410 to 430 may also be performed by the modulated URL generating unit 140.

도 5는 일 실시예에 따른 단말이 변조된 URL을 사용하여 미디어 콘텐츠를 제공하는 방법의 흐름도이다.5 is a flowchart of a method of providing, by a terminal, media content using a modulated URL according to an embodiment.

사용자는, 예컨대 브라우저 내에 표시된 링크를 클릭함으로써, 특정한 미디어 콘텐츠를 요청할 수 있다.The user can request specific media content, for example by clicking on a link displayed in the browser.

단계(510)에서, 미디어 콘텐츠 요청 감지부(160)는 링크를 통한 미디어 콘텐츠의 요청을 감지할 수 있다.In operation 510, the media content request detector 160 may detect a request for media content through a link.

단계(520)에서, URL 생성부(170)는 링크가 변조된 URL을 포함하는지 여부를 판단할 수 있다. 링크가 변조된 URL을 포함하지 않을 경우, 단계(530)가 수행될 수 있다. 링크가 변조된 URL을 포함하는 경우, 단계(540)가 수행될 수 있다.In operation 520, the URL generator 170 may determine whether the link includes a modified URL. If the link does not include a modulated URL, step 530 may be performed. If the link includes a modulated URL, step 540 may be performed.

단계(530)에서, 링크는 일반적인 URL 또는 해시된 URL(즉, 축약 URL)을 포함할 수 있다.In step 530, the link may comprise a generic URL or a hashed URL (ie, a shortened URL).

단계(530)에서, 송수신부(110)는 링크가 포함하는 URL을 사용하여 미디어 콘텐츠를 요청 및 수신할 수 있다. URL은 서버로부터 미디어 콘텐츠를 수신하기 위한 정보를 포함할 수 있다.In operation 530, the transceiver 110 may request and receive media content using a URL included in the link. The URL may include information for receiving media content from the server.

링크가 포함하는 URL이 해시된 URL인 경우, 송수신부(110)가 링크가 포함하는 URL을 사용하여 미디어 콘텐츠를 요청 및 수신하기 이전에 해시된 URL이 원래의 URL로 복원될 필요가 있다. 해시된 URL을 복원하기 위한 방법의 일 예가 하기에서 도 6을 참조하여 상세히 설명된다.When the URL included in the link is a hashed URL, the hashed URL needs to be restored to the original URL before the transceiver 110 requests and receives the media content using the URL included in the link. An example of a method for recovering a hashed URL is described in detail with reference to FIG. 6 below.

단계(540)에서, URL 생성부(170)는 링크가 포함하는 변조된 URL에 기반하여 미디어 콘텐츠에 대한 제1 URL 및 제2 URL을 생성할 수 있다.In operation 540, the URL generator 170 may generate a first URL and a second URL for the media content based on the modulated URL included in the link.

제1 URL은 제1 서버 내의 미디어 콘텐츠를 가리킬 수 있다. 여기서, 제1 서버는 타 사용자의 단말에게 미디어 콘텐츠를 제공한 서버일 수 있다. 제2 URL은 제2 서버 내의 미디어 콘텐츠를 가리킬 수 있다. 여기서, 제2 서버는 제1 서버로부터 미디어 콘텐츠를 수신하여, 수신된 미디어 콘텐츠를 캐싱하고, 상기의 미디어 콘텐츠에 대한 링크를 생성한 타 사용자의 단말일 수 있다. 즉, 링크는 제2 서버에 의해 생성된 것일 수 있다. 또한, 타 사용자의 단말에 의해 생성된 링크는 단계(510)의 링크일 수 있다.The first URL may point to media content within the first server. Here, the first server may be a server that provides media content to another user's terminal. The second URL may point to media content within the second server. Here, the second server may be a terminal of another user who receives the media content from the first server, caches the received media content, and generates a link to the media content. That is, the link may be generated by the second server. In addition, the link generated by another user's terminal may be the link of step 510.

URL 생성부(170)는 변조된 URL에서 해시된 제1 URL 및 해시된 제2 URL을 추출할 수 있다. URL 생성부(170)는 변조된 URL의 제1 정보에 해싱을 적용함으로써 제1 URL을 생성할 수 있고, 변조된 URL의 제2 정보에 해싱을 적용함으로써 제2 URL을 생성할 수 있다.The URL generator 170 may extract the hashed first URL and the hashed second URL from the modulated URL. The URL generator 170 may generate the first URL by applying hashing to the first information of the modulated URL, and generate the second URL by applying hashing to the second information of the modulated URL.

또한, 제1 URL 및 제2 URL은 URL 복원 서버에 의해 생성될 수 있다. 복원 서버를 사용하여 제1 URL 및 제2 URL을 생성하는 방법의 일 예가 하기에서 도 6을 참조하여 상세히 설명된다.Also, the first URL and the second URL may be generated by the URL restoration server. An example of a method of generating the first URL and the second URL using the restoration server is described in detail with reference to FIG. 6 below.

또한, 단계(540)에서의 제1 URL 및 제2 URL은 해시된 URL(또는, 축약 URL)일 수 있다. 이러한 경우, 후술될 단계(560) 등에서 리다이렉팅 서버가 사용될 수 있다.Also, the first URL and the second URL in step 540 may be hashed URLs (or abbreviated URLs). In this case, the redirecting server may be used at step 560 and the like, which will be described later.

단계(550)에서, URL 선택부(180)는 제1 URL 및 제2 URL 중 미디어 콘텐츠를 요청하기 위해 사용할 URL을 선택할 수 있다.In operation 550, the URL selector 180 may select a URL to be used to request media content from among the first URL and the second URL.

미디어 콘텐츠를 요청하기 위해 사용할 URL을 선택하기 위해, 하기와 같은 방법들이 사용될 수 있다.In order to select a URL to use to request media content, the following methods may be used.

첫 번째 방법으로, URL 선택부(180)는 제1 URL 및 제2 URL 각각이 가리키는 서버들 중 핑 요청에 대해 더 빨리 응답하는 서버를 선택할 수 있다. 핑 요청에 대해 더 빨리 응답하는 서버가 미디어 콘텐츠도 더 짧은 시간 내에 단말(100)로 전송할 수 있을 것이라고 간주될 수 있기 때문이다.In a first method, the URL selector 180 may select a server that responds faster to a ping request among servers indicated by each of the first URL and the second URL. This is because a server that responds faster to a ping request may be considered to be able to send media content to the terminal 100 in a shorter time.

말하자면, 단계(550)는, 1) URL 선택부(180)가 제1 URL이 가리키는 제1 서버 및 제2 URL이 가리키는 제2 서버로 각각 핑(ping) 요청을 전송하는 단계, 2) URL 선택부(180)가 제1 서버 및 제2 서버 각각으로부터 핑 요청에 대한 응답을 수신하는 단계 및 3) URL 선택부(180)가 제1 서버 및 제2 서버 중 핑 요청에 대해 더 빨리 응답한 서버에 대응하는 URL을 선택하는 단계를 포함할 수 있다.In other words, step 550, 1) the URL selector 180 transmits a ping request to the first server indicated by the first URL and the second server indicated by the second URL, and 2) URL selection. The unit 180 receiving a response to the ping request from the first server and the second server, respectively, and 3) a server to which the URL selecting unit 180 responds to the ping request faster than the first server and the second server. Selecting a URL corresponding to the may include.

만약, 제1 서버 및 제2 서버 중 하나의 서버가 가용하지 않은 경우, 상기의 가용하지 않은 서버는 핑 요청에 대해 응답하지 않는다. 따라서, URL 선택부(180)는 핑 요청에 대한 응답한 서버를 가리키는 URL을 선택할 수 있다.If one of the first server and the second server is not available, the unavailable server does not respond to the ping request. Accordingly, the URL selector 180 may select a URL indicating a server responding to the ping request.

두 번째 방법으로, URL 선택부(180)는 제1 URL이 나타내는 제1 지리적 위치 및 제2 URL이 나타내는 제2 지리적 위치에 기반하여 제1 URL 및 제2 URL 중 하나의 URL을 선택할 수 있다.In a second method, the URL selector 180 may select one of the first URL and the second URL based on the first geographical position indicated by the first URL and the second geographical position indicated by the second URL.

말하자면, 단계(550)는, 1) URL 선택부(180)가 제1 URL이 나타내는 제1 지리적 위치 및 제2 URL이 나타내는 제2 지리적 위치 중 단말에 더 가까운 것으로 추정되는 지리적 위치를 결정하는 단계 및 2) 제1 URL 및 제2 URL 중 결정된 지리적 위치에 대응하는 URL을 선택하는 단계를 포함할 수 있다.In other words, step 550 may include: 1) determining, by the URL selector 180, a geographic location estimated to be closer to the terminal among the first geographic location indicated by the first URL and the second geographic location indicated by the second URL. And 2) selecting a URL corresponding to the determined geographical location among the first URL and the second URL.

예컨대, 단말(100)이 특정한 국가 내에 있을 경우, URL 선택부(180)는 제1 URL 및 제2 URL 중 단말(100)이 위치한 국가에 대응하는 인터넷 프로토콜(Internet Protocol; IP) 주소를 나타내는 URL을 선택할 수 있다. 또는, URL 선택부(180)는 제1 URL 및 제 URL 중 단말이 포함된 서브 네트워크와 동일한 서브 네트워크에 대응하는 URL을 선택할 수 있다.For example, when the terminal 100 is in a specific country, the URL selector 180 may display an Internet Protocol (IP) address corresponding to a country where the terminal 100 is located among the first URL and the second URL. Can be selected. Alternatively, the URL selector 180 may select a URL corresponding to the same subnetwork as the subnetwork including the terminal among the first URL and the first URL.

또는, URL 선택부(180)는 제1 URL에 대응하는 제1 IP 및 제2 URL에 대응하는 제2 IP 중 단말의 IP와 더 유사한 IP를 선택할 수 있고, 선택된 더 유사한 IP에 대응하는 URL을 선택할 수 있다. 여기서, URL 선택부(180)는 양 IP들 간에 공통되는 프리픽스의 길이를 기준으로 양 IP들 간의 유사한 정도를 결정할 수 있다.Alternatively, the URL selector 180 may select an IP more similar to the IP of the terminal among the first IP corresponding to the first URL and the second IP corresponding to the second URL, and select a URL corresponding to the selected more similar IP. You can choose. Here, the URL selector 180 may determine a similar degree between the two IPs based on the length of the prefix common between the two IPs.

단계(560)에서, 송수신부(110)은 선택된 URL을 사용하여 미디어 콘텐츠를 요청 및 수신할 수 있다. 선택된 URL이 해싱된 URL(또는, 축약 URL)일 경우, 송수신부(110)는 선택된 URL을 사용하여 도 7을 참조하여 후술될 리다이렉트(redirect) 서버에게 미디어 콘텐츠를 요청할 수 있으며, 리다이렉트 서버에 의해 반환된 URL을 사용하여 미디어 콘텐츠를 요청 및 수신할 수 있다.In operation 560, the transceiver 110 may request and receive media content using the selected URL. When the selected URL is a hashed URL (or abbreviated URL), the transceiver 110 may request media content from a redirect server, which will be described later with reference to FIG. 7, using the selected URL. The returned URL can be used to request and receive media content.

단계(570)에서, 저장부(120)는 수신된 미디어 콘텐츠를 저장할 수 있다.
In operation 570, the storage unit 120 may store the received media content.

도 6은 일 예에 따른 해시된 URL의 복원을 나타내는 흐름도이다.6 is a flowchart illustrating restoration of a hashed URL according to an example.

단계(610)에서, URL 생성부(170)는 변조된 URL을 분할하여 해시된 제1 URL 및 해시된 제2 URL을 추출할 수 있다. 변조된 URL은 도 2를 참조하여 전술된 제1 정보 및 제2 정보를 포함할 수 있다. 제1 정보는 해시된 제1 URL에 대응할 수 있다. 제2 정보는 해시된 제2 URL에 대응할 수 있다.In operation 610, the URL generator 170 may extract the hashed first URL and the hashed second URL by dividing the modulated URL. The modulated URL may include the first information and the second information described above with reference to FIG. 2. The first information may correspond to the hashed first URL. The second information may correspond to the hashed second URL.

단계(620)에서, URL 생성부(170)는 URL 복원 서버(600)에게 해시된 제1 URL을 전송할 수 있다.In operation 620, the URL generator 170 may transmit the hashed first URL to the URL restoration server 600.

URL 복원 서버(600)는 해시된 제1 URL에 대한 복원 서비스를 제공할 수 있다. 여기서, 복원은 축약 URL을 원래의 URL로 되돌리는 것을 의미할 수 있다. URL 단축 서버(400) 및 URL 복원 서버(600)는 물리적으로 동일한 서버일 수 있다.The URL restoration server 600 may provide a restoration service for the hashed first URL. Here, the restoration may mean returning the shortened URL to the original URL. The URL shortening server 400 and the URL restoration server 600 may be physically the same server.

단계(630)에서, URL 복원 서버(600)는 해시된 제1 URL에 해싱을 적용함으로써 원래의 제1 URL을 계산할 수 있다. 즉, 제1 URL은 해시된 제1 URL에 해싱을 적용함으로써 생성될 수 있다.In step 630, the URL recovery server 600 may calculate the original first URL by applying hashing to the hashed first URL. That is, the first URL may be generated by applying hashing to the hashed first URL.

URL 복원 서버(600)는 해싱을 위해 해시 테이블(table)을 사용할 수 있고, 해시된 제1 URL의 전부 또는 일부를 해시 테이블(table)에 대한 해시 코드(code)로서 사용할 수 있다. 여기서, 해시된 제1 URL의 일부는 해시된 제1 URL 중 특정한 서버 내에서의 경로를 특정하는 부분일 수 있다. 또한, 해시된 제1 URL의 일부는 해시된 제1 URL 중 특정한 서버 및 상기의 특정한 서버 내에서의 경로를 특정하는 부분일 수 있다.The URL recovery server 600 may use a hash table for hashing, and may use all or part of the hashed first URL as a hash code for the hash table. Here, a part of the hashed first URL may be a part that specifies a path in a specific server among the hashed first URLs. In addition, the portion of the hashed first URL may be a portion of the hashed first URL that specifies a specific server and a path within the specific server.

단계(640)에서, URL 생성부(170)는 URL 복원 서버(600)로부터 제1 URL을 수신할 수 있다.In operation 640, the URL generator 170 may receive the first URL from the URL restoration server 600.

단계(650)에서, URL 생성부(170)는 URL 복원 서버(600)에게 해시된 제2 URL을 전송할 수 있다.In operation 650, the URL generator 170 may transmit the hashed second URL to the URL restoration server 600.

단계(660)에서, URL 복원 서버(600)는 해시된 제2 URL에 해싱을 적용함으로써 원래의 제2 URL을 계산할 수 있다. 즉, 제2 URL은 해시된 제2 URL에 해싱을 적용함으로써 생성될 수 있다.In step 660, the URL recovery server 600 may calculate the original second URL by applying hashing to the hashed second URL. That is, the second URL can be generated by applying hashing to the hashed second URL.

단계(670)에서, URL 생성부(170)는 URL 복원 서버(600)로부터 제2 URL을 수신할 수 있다.In operation 670, the URL generator 170 may receive a second URL from the URL restoration server 600.

도 5를 참조하여 전술된 단계(540)는 단계들(610 내지 670)을 포함할 수 있다. 단계(540)의 제1 정보는 단계(610)의 해시된 제1 URL에 대응할 수 있다. 단계(540)의 제2 정보는 단계(610)의 해시된 제2 URL에 대응할 수 있다.
Step 540 described above with reference to FIG. 5 may include steps 610 through 670. The first information of step 540 may correspond to the hashed first URL of step 610. The second information of step 540 may correspond to the hashed second URL of step 610.

도 7은 일 예에 따른 리다이렉트 서버의 동작을 나타내는 흐름도이다.7 is a flowchart illustrating an operation of a redirect server according to an example.

리다이렉트 서버는 단말로부터 해시된 URL을 수신할 수 있고, 상기의 해시된 URL에 대한 원래의 URL을 단말에게 송신할 수 있다. 여기서, 단말은 변조된 URL을 다룰 수 없는 단말일 수 있다. 따라서, 해시된 URL은 단말에 의해 처리되지 않은 변조된 URL일 수 있다.The redirect server can receive the hashed URL from the terminal and send the original URL for the hashed URL to the terminal. Here, the terminal may be a terminal that cannot handle the modulated URL. Thus, the hashed URL may be a modulated URL that has not been processed by the terminal.

단계(710)에서, 리다이렉트 서버는 단말로부터 해시된 URL을 수신할 수 있다.In step 710, the redirect server may receive the hashed URL from the terminal.

단계(720)에서, 리다이렉트 서버는 수신된 해시된 URL이 변조된 URL인지 여부를 판단할 수 있다. 해시된 URL이 변조된 URL인 경우, 단계(730)가 수행될 수 있다. 해시된 URL이 변조된 URL이 아닌 경우, 단계(740)가 수행될 수 있다.In step 720, the redirect server may determine whether the received hashed URL is a modulated URL. If the hashed URL is a modulated URL, step 730 may be performed. If the hashed URL is not a modulated URL, step 740 may be performed.

단계(730)에서, 리다이렉트 서버는 해시된 URL 중 일부분을 제거할 수 있다. 여기서, 제거되는 일부분은 도 2를 참조하여 전술된 제2 구분자(250) 및 제3 주소부(260)일 수 있다. 또는, 제거되는 일부분은 제2 구분자(250) 및 상기의 제2 구분자(250) 이후의 부분일 수 있다.In step 730, the redirect server may remove the portion of the hashed URL. Here, the removed portion may be the second separator 250 and the third address unit 260 described above with reference to FIG. 2. Alternatively, the portion to be removed may be a part after the second separator 250 and the second separator 250.

해시된 URL을 전송한 단말은 변조된 URL을 처리 또는 식별할 수 없는 단말일 수 있다. 변조된 URL을 처리할 수 없는 단말은 미디어 콘텐츠를 요청하기 위해 변조된 URL 전체를 리다이렉트 서버에게 전송할 수 있다.The terminal transmitting the hashed URL may be a terminal that cannot process or identify the modified URL. The terminal that cannot handle the modulated URL may transmit the entire modulated URL to the redirect server to request media content.

단계(740)에서, 리다이렉트 서버는 해시된 URL에 기반하여 원래의 URL을 생성할 수 있다. 리다이렉트 서버는 해시된 URL에 해싱을 적용함으로써 원래의 URL을 생성할 수 있다. 여기서, 해시된 URL은 축약 URL일 수 있고, 원래의 URL은 축약되기 전의 URL일 수 있다.In step 740, the redirect server may generate the original URL based on the hashed URL. The redirect server can generate the original URL by applying hashing to the hashed URL. Here, the hashed URL may be a shortened URL, and the original URL may be a URL before it is shortened.

단계(750)에서, 리다이렉트 서버는 생성된 URL을 단말에게 반환(또는, 전송)할 수 있다.In operation 750, the redirect server may return (or transmit) the generated URL to the terminal.

전술된 단계들(710 또는 750)에 의해, 변조된 URL을 포함하는 링크가 상기의 변조된 URL을 인식하지 못하는 단말에 의해서도 사용될 수 있다.
By the steps 710 or 750 described above, the link including the modulated URL may be used by the terminal that does not recognize the modulated URL.

일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예들을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예들의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
The method according to one embodiment may be implemented in the form of program instructions that may be executed through various computer means and recorded on a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described by way of limited embodiments and drawings, but the present invention is not limited to the above embodiments, and those skilled in the art to which the present invention pertains various modifications and variations from such descriptions. This is possible.

그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined by the equivalents of the claims, as well as the claims.

100: 단말
110: 송수신부
120: 저장부
130: 링크 생성 감지부
140: 변조된 URL 생성부
150: 링크 제공부
160: 미디어 콘텐츠 요청 감지부
170: URL 생성부
180: URL 선택부
100: terminal
110: Transmitting /
120:
130: link generation detector
140: modified URL generation unit
150: link providing unit
160: media content request detector
170: URL generation unit
180: URL selection unit

Claims (15)

단말이 미디어 콘텐츠의 링크를 제공하는 방법에 있어서,
상기 미디어 콘텐츠에 대한 링크의 생성 요청을 감지하는 단계;
상기 미디어 콘텐츠에 대한 변조된 유일 자원 지시기(Uniform Resource Locator; URL)를 생성하는 단계; 및
상기 변조된 URL을 포함하는 상기 링크를 제공하는 단계
를 포함하고,
상기 변조된 URL은 서버 및 상기 단말로부터 각각 상기 미디어 콘텐츠를 수신하기 위한 정보를 포함하는, 미디어 콘텐츠의 링크 제공 방법.
In the method for providing a link of the media content, the terminal,
Detecting a request to create a link to the media content;
Generating a modulated Unique Resource Locator (URL) for the media content; And
Providing the link comprising the modulated URL
Lt; / RTI >
The modulated URL includes information for receiving the media content from a server and the terminal, respectively.
제1항에 있어서,
상기 미디어 콘텐츠를 상기 서버로부터 수신하는 단계; 및
상기 미디어 콘텐츠를 저장하는 단계
를 더 포함하는, 미디어 콘텐츠의 링크 제공 방법.
The method of claim 1,
Receiving the media content from the server; And
Storing the media content
Further comprising a link providing method of the media content.
제1항에 있어서,
상기 변조된 URL은 제1 정보 및 제2 정보를 포함하고,
상기 제1 정보는 제1 URL에 해싱을 적용함으로써 생성되고, 상기 제2 정보는 제2 URL에 해싱을 적용함으로써 생성되고,
상기 제1 URL은 상기 서버 내의 상기 미디어 콘텐츠를 가리키며, 상기 제2 URL은 상기 단말 내의 상기 미디어 콘텐츠를 가리키는, 미디어 콘텐츠의 링크 제공 방법.
The method of claim 1,
The modulated URL includes first information and second information,
The first information is generated by applying hashing to the first URL, the second information is generated by applying hashing to the second URL,
Wherein the first URL points to the media content in the server and the second URL points to the media content in the terminal.
제3항에 있어서,
상기 생성하는 단계는,
상기 제1 URL을 URL 단축 서버로 전송하는 단계;
상기 제1 URL에 해싱을 적용함으로써 생성된 상기 제1 정보를 상기 URL 단축 서버로부터 수신하는 단계;
상기 제2 URL을 상기 URL 단축 서버로 전송하는 단계; 및
상기 제2 URL에 해싱을 적용함으로써 생성된 상기 제2 정보를 상기 URL 단축 서버로부터 수신하는 단계;
를 포함하는, 미디어 콘텐츠의 링크 제공 방법.
The method of claim 3,
Wherein the generating comprises:
Transmitting the first URL to a URL shortening server;
Receiving from the URL shortening server the first information generated by applying hashing to the first URL;
Transmitting the second URL to the URL shortening server; And
Receiving the second information generated by applying hashing to the second URL from the URL shortening server;
The link providing method of the media content comprising a.
단말이 미디어 콘텐츠를 제공하는 방법에 있어서,
링크를 통한 미디어 콘텐츠의 요청을 감지하는 단계;
상기 링크가 변조된 URL을 포함하는 경우 상기 변조된 URL에 기반하여 상기 미디어 콘텐츠에 대한 제1 URL 및 제2 URL을 생성하는 단계;
상기 제1 URL 및 상기 제2 URL 중 상기 미디어 콘텐츠를 요청하기 위해 사용할 URL을 선택하는 단계; 및
상기 선택된 URL을 사용하여 상기 미디어 콘텐츠를 요청 및 수신하는 단계
를 포함하고,
상기 제1 URL은 제1 서버 내의 상기 미디어 콘텐츠를 가리키고, 상기 제2 URL은 제2 서버 내의 상기 미디어 콘텐츠를 가리키는, 미디어 콘텐츠 제공 방법.
In the method for providing the media content, the terminal,
Detecting a request for media content via a link;
Generating a first URL and a second URL for the media content based on the modulated URL if the link includes a modulated URL;
Selecting a URL to use to request the media content from the first URL and the second URL; And
Requesting and receiving the media content using the selected URL
Lt; / RTI >
And wherein the first URL points to the media content in a first server and the second URL points to the media content in a second server.
제5항에 있어서,
상기 변조된 URL은 제1 정보 및 제2 정보를 포함하고,
상기 제1 URL은 상기 제1 정보에 해싱을 적용함으로써 생성되고, 상기 제2 URL은 상기 제2 정보에 해싱을 적용함으로써 생성되는, 미디어 콘텐츠 제공 방법.
The method of claim 5,
The modulated URL includes first information and second information,
Wherein the first URL is generated by applying hashing to the first information, and the second URL is generated by applying hashing to the second information.
제6항에 있어서,
상기 생성하는 단계는,
상기 제1 정보를 URL 복원 서버로 전송하는 단계;
상기 제1 정보에 해싱을 적용함으로써 생성된 상기 제1 URL을 상기 URL 복원 서버로부터 수신하는 단계;
상기 제2 정보를 상기 URL 복원 서버로 전송하는 단계; 및
상기 제2 정보에 해싱을 적용함으로써 생성된 상기 제2 URL을 상기 URL 복원 서버로부터 수신하는 단계
를 포함하는, 미디어 콘텐츠 제공 방법.
The method according to claim 6,
Wherein the generating comprises:
Transmitting the first information to a URL restoration server;
Receiving from the URL recovery server the first URL generated by applying hashing to the first information;
Transmitting the second information to the URL recovery server; And
Receiving the second URL generated by applying hashing to the second information from the URL recovery server.
The media content providing method comprising a.
제5항에 있어서,
상기 선택하는 단계는,
상기 제1 URL이 가리키는 제1 서버 및 상기 제2 URL이 가리키는 제2 서버로 각각 핑 요청을 전송하는 단계; 및
상기 제1 서버 및 상기 제2 서버 중 상기 핑 요청에 대해 더 빨리 응답한 서버를 가리키는 URL을 선택하는 단계
를 포함하는, 미디어 콘텐츠의 제공 방법.
The method of claim 5,
The selecting step,
Transmitting a ping request to a first server indicated by the first URL and a second server indicated by the second URL; And
Selecting a URL pointing to a server that has responded faster to the ping request between the first server and the second server;
The media content providing method comprising a.
제5항에 있어서,
상기 선택하는 단계는,
상기 제1 URL이 나타내는 제1 지리적 위치 및 상기 제2 URL이 나타내는 제2 지리적 위치 중 상기 단말에 더 가까운 것으로 추정되는 지리적 위치를 결정하는 단계; 및
상기 제1 URL 및 상기 제2 URL 중 상기 결정된 지리적 위치에 대응하는 URL을 선택하는 단계
를 포함하는, 미디어 콘텐츠의 제공 방법.
The method of claim 5,
The selecting step,
Determining a geographic location estimated to be closer to the terminal among a first geographic location indicated by the first URL and a second geographic location indicated by the second URL; And
Selecting a URL corresponding to the determined geographic location from the first URL and the second URL;
The media content providing method comprising a.
제5항에 있어서,
상기 제2 서버는 상기 제1 서버로부터 상기 미디어 콘텐츠를 수신하여 상기 미디어 콘텐츠를 캐싱하고,
상기 링크는 상기 제2 서버에 의해 생성된, 미디어 콘텐츠의 제공 방법.
The method of claim 5,
The second server receives the media content from the first server and caches the media content,
And wherein said link is generated by said second server.
단말에 있어서,
미디어 콘텐츠의 링크의 생성 요청을 감지하는 링크 생성 감지부;
상기 미디어 콘텐츠에 대한 변조된 유일 자원 지시기(Uniform Resource Locator; URL)를 생성하는 변조된 URL 생성부; 및
상기 변조된 URL을 포함하는 상기 링크를 제공하는 링크 제공부
를 포함하고,
상기 변조된 URL은 서버 및 상기 단말로부터 각각 상기 미디어 콘텐츠를 수신하기 위한 정보를 포함하는, 단말.
In the terminal,
A link generation detector for detecting a request for creating a link of media content;
A modulated URL generator configured to generate a modulated Unique Resource Locator (URL) for the media content; And
Link providing unit for providing the link including the modified URL
Lt; / RTI >
The modulated URL includes information for receiving the media content from a server and the terminal, respectively.
단말에 있어서,
링크를 통한 미디어 콘텐츠의 요청을 감지하는 미디어 콘텐츠 요청 감지부;
상기 링크가 변조된 URL을 포함하는지 여부를 판단하고, 상기 링크가 상기 변조된 URL을 포함하는 경우 상기 변조된 URL에 기반하여 상기 미디어 콘텐츠에 대한 제1 URL 및 제2 URL을 생성하는 URL 생성부;
상기 제1 URL 및 상기 제2 URL 중 상기 미디어 콘텐츠를 요청하기 위해 사용할 URL을 선택하는 URL 선택부; 및
상기 선택된 URL을 사용하여 상기 미디어 콘텐츠를 요청 및 수신하는 송수신부
를 포함하고,
상기 제1 URL은 제1 서버 내의 상기 미디어 콘텐츠를 가리키고, 상기 제2 URL은 제2 서버 내의 상기 미디어 콘텐츠를 가리키는, 단말.
In the terminal,
A media content request detector for detecting a request for media content via a link;
A URL generator that determines whether the link includes a modulated URL, and generates a first URL and a second URL for the media content based on the modulated URL when the link includes the modulated URL. ;
A URL selecting unit that selects a URL to be used for requesting the media content among the first URL and the second URL; And
Transmitting and receiving unit for requesting and receiving the media content using the selected URL
Lt; / RTI >
Wherein the first URL points to the media content in a first server and the second URL points to the media content in a second server.
제12항에 있어서,
상기 URL 선택부는 제1 URL이 가리키는 제1 서버 및 상기 제2 URL이 가리키는 제2 서버로 각각 핑 요청을 전송하고, 상기 제1 서버 및 상기 제2 서버 중 상기 핑 요청에 대해 더 빨리 응답한 서버를 가리키는 URL을 선택하는, 단말.
The method of claim 12,
The URL selecting unit transmits a ping request to the first server indicated by the first URL and the second server indicated by the second URL, respectively, and responds to the ping request earlier among the first server and the second server. Selecting a URL pointing to the terminal.
제12항에 있어서,
상기 URL 선택부는 상기 제1 URL이 나타내는 제1 지리적 위치 및 상기 제2 URL이 나타내는 제2 지리적 위치 중 상기 단말에 더 가까운 것으로 추정되는 지리적 위치를 결정하고, 상기 제1 URL 및 상기 제2 URL 중 상기 결정된 지리적 위치에 대응하는 URL을 선택하는, 단말.
The method of claim 12,
The URL selecting unit determines a geographic position estimated to be closer to the terminal among a first geographic position indicated by the first URL and a second geographic position indicated by the second URL, and among the first URL and the second URL. Selecting a URL corresponding to the determined geographical location.
단말에 있어서,
제1 미디어 콘텐츠의 제1 링크의 생성 요청을 감지하는 링크 생성 감지부;
상기 제1 미디어 콘텐츠에 대한 제1 변조된 유일 자원 지시기(Uniform Resource Locator; URL)를 생성하는 변조된 URL 생성부;
상기 제1 변조된 URL을 포함하는 상기 제1 링크를 제공하는 링크 제공부;
제2 링크를 통한 제2 미디어 콘텐츠의 요청을 감지하는 미디어 콘텐츠 요청 감지부;
상기 링크가 변조된 URL을 포함하는지 여부를 판단하고 상기 제2 링크가 제2 변조된 URL을 포함하는 경우 상기 제2 변조된 URL에 기반하여 상기 제2 미디어 콘텐츠에 대한 제1 URL 및 제2 URL을 생성하는 URL 생성부;
상기 제1 URL 및 상기 제2 URL 중 상기 제2 미디어 콘텐츠를 요청하기 위해 사용할 URL을 선택하는 URL 선택부; 및
상기 선택된 URL을 사용하여 상기 제2 미디어 콘텐츠를 요청 및 수신하는 송수신부
를 포함하고,
상기 제1 변조된 URL은 제1 서버 및 상기 단말로부터 각각 상기 제1 미디어 콘텐츠를 수신하기 위한 정보를 포함하고,
상기 제1 URL은 제2 서버 내의 상기 미디어 콘텐츠를 가리키고, 상기 제3 URL은 제2 서버 내의 상기 미디어 콘텐츠를 가리키는, 단말.
In the terminal,
A link generation detector for detecting a request for creating a first link of first media content;
A modulated URL generator for generating a first modulated Uniform Resource Locator (URL) for the first media content;
A link provider for providing the first link including the first modulated URL;
A media content request detector for detecting a request for second media content via a second link;
Determine whether the link includes a modulated URL, and if the second link includes a second modulated URL, the first URL and the second URL for the second media content based on the second modulated URL URL generation unit for generating a;
A URL selecting unit that selects a URL to be used for requesting the second media content among the first URL and the second URL; And
Transmitting and receiving unit for requesting and receiving the second media content using the selected URL
Lt; / RTI >
The first modulated URL includes information for receiving the first media content from a first server and the terminal, respectively.
Wherein the first URL points to the media content in a second server and the third URL points to the media content in a second server.
KR1020110145976A 2011-12-29 2011-12-29 Method and apparatus for sharing media content using modified url Expired - Fee Related KR101363164B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110145976A KR101363164B1 (en) 2011-12-29 2011-12-29 Method and apparatus for sharing media content using modified url

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110145976A KR101363164B1 (en) 2011-12-29 2011-12-29 Method and apparatus for sharing media content using modified url

Publications (2)

Publication Number Publication Date
KR20130089709A true KR20130089709A (en) 2013-08-13
KR101363164B1 KR101363164B1 (en) 2014-02-18

Family

ID=49215488

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110145976A Expired - Fee Related KR101363164B1 (en) 2011-12-29 2011-12-29 Method and apparatus for sharing media content using modified url

Country Status (1)

Country Link
KR (1) KR101363164B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017051941A1 (en) * 2015-09-22 2017-03-30 선샤인 앱 인코포레이티드 Method for reducing traffic of cloud service by using p2p connection and apparatus therefor
WO2017209490A1 (en) * 2016-05-30 2017-12-07 삼성전자 주식회사 Apparatus and method for transmitting/receiving information regarding media content in multimedia system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050021751A (en) * 2003-08-26 2005-03-07 정길도 Distributed Web Caching System with Client-Based
KR20060034121A (en) * 2004-10-18 2006-04-21 주식회사 네오위즈 Method, system and recording medium for providing integrated contents management service for multimedia
KR20110132849A (en) * 2010-06-03 2011-12-09 주식회사 다음커뮤니케이션 LRL Converter and 변환 RL conversion method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017051941A1 (en) * 2015-09-22 2017-03-30 선샤인 앱 인코포레이티드 Method for reducing traffic of cloud service by using p2p connection and apparatus therefor
WO2017209490A1 (en) * 2016-05-30 2017-12-07 삼성전자 주식회사 Apparatus and method for transmitting/receiving information regarding media content in multimedia system
KR20190007063A (en) * 2016-05-30 2019-01-21 삼성전자주식회사 Apparatus and method for transmitting / receiving information related to media contents in a multimedia system
US10880588B2 (en) 2016-05-30 2020-12-29 Samsung Electronics Co., Ltd. Apparatus and method for transmitting/receiving information regarding media content in multimedia system

Also Published As

Publication number Publication date
KR101363164B1 (en) 2014-02-18

Similar Documents

Publication Publication Date Title
US11758013B2 (en) Methods and systems for caching data communications over computer networks
TWI657682B (en) Method and system for realizing precise dispatch request on content distribution network (CDN)
US8938526B1 (en) Request routing management based on network components
US8156243B2 (en) Request routing
US8577992B1 (en) Request routing management based on network components
US9871850B1 (en) Enhanced browsing using CDN routing capabilities
US20100115613A1 (en) Cacheable Mesh Browsers
JP6485980B2 (en) Network address resolution
CN101997759A (en) Service implementation method and service system
CN110958279B (en) Data processing method and device
KR101363164B1 (en) Method and apparatus for sharing media content using modified url
WO2010135254A1 (en) Limiting storage messages in peer to peer network
JP6081847B2 (en) Web content distribution device
Karapapas et al. Enhancing IPFS Bitswap
Meyn Browser to browser media streaming with HTML5
JP6081846B2 (en) Web content distribution device
KR20160147861A (en) Information object acquisition method, server and user equipment
JP6081845B2 (en) Web content distribution device
JP6054799B2 (en) Web content distribution device
HK40026978A (en) Data processing method and device therefor
Yang Improving ABR Video Serving Performance in IPFS
Swimmer et al. WEB3 WILL BITE YOU IN THE WEB 2.0–EXPLORING IPFS THREATS
Pereira et al. Web Services Deployment on P2P Networks, based on JXTA.

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

D13-X000 Search requested

St.27 status event code: A-1-2-D10-D13-srh-X000

D14-X000 Search report completed

St.27 status event code: A-1-2-D10-D14-srh-X000

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R11-asn-PN2301

R19-X000 Request for party data change rejected

St.27 status event code: A-3-3-R10-R19-oth-X000

P22-X000 Classification modified

St.27 status event code: A-2-2-P10-P22-nap-X000

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R11-asn-PN2301

R19-X000 Request for party data change rejected

St.27 status event code: A-3-3-R10-R19-oth-X000

N231 Notification of change of applicant
PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

P22-X000 Classification modified

St.27 status event code: A-2-2-P10-P22-nap-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

FPAY Annual fee payment

Payment date: 20170202

Year of fee payment: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20180208

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20180208

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000