KR20150080595A - 짧은 url들에 액세스하기 위한 선제 프레임워크 - Google Patents

짧은 url들에 액세스하기 위한 선제 프레임워크 Download PDF

Info

Publication number
KR20150080595A
KR20150080595A KR1020157014185A KR20157014185A KR20150080595A KR 20150080595 A KR20150080595 A KR 20150080595A KR 1020157014185 A KR1020157014185 A KR 1020157014185A KR 20157014185 A KR20157014185 A KR 20157014185A KR 20150080595 A KR20150080595 A KR 20150080595A
Authority
KR
South Korea
Prior art keywords
url
server
short
actual
metadata
Prior art date
Application number
KR1020157014185A
Other languages
English (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 퀄컴 인코포레이티드
Publication of KR20150080595A publication Critical patent/KR20150080595A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/9558Details of hyperlinks; Management of linked annotations
    • G06F17/30887
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F17/30882

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)

Abstract

본 개시물은 짧은 URL (uniform resource locator) 의 타겟과 관련된 메타데이터를 획득하는 것에 관한 것이다. 실시형태는 짧은 URL 을 서버 (415; 515) 로 송신 (520; 720) 하고, 서버로부터 응답을 수신 (530; 730) 하는 것으로서, 응답은 실제 URL 에 대한 포인터를 포함하는, 상기 수신하고, 서버로부터 실제 URL 과 관련된 메타데이터를 요청 (540; 740) 하며, 그리고 서버로부터 실제 URL 에 대한 메타데이터를 수신 (550; 750) 한다. 일 실시형태는 짧은 URL (uniform resource locator) 의 타겟을 확인하는 것에 관한 것이다. 일 실시형태는 짧은 URL 을 수신 (810) 하고, 짧은 URL 에 기초하여 실제 URL 과 관련된 메타데이터를 획득 (820) 하고, 메타데이터로부터 호스트 웹사이트를 추출 (830) 하고, 실제 URL 이 호스트 웹사이트를 가리키는지 여부를 결정 (840) 하며, 그리고 결정의 결과의 통지를 전송 (850) 한다.

Description

짧은 URL들에 액세스하기 위한 선제 프레임워크{A PREEMPTIVE FRAMEWORK FOR ACCESSING SHORT URLS}
본 개시물은 짧은 URL들에 액세싱하기 위한 선제 프레임워크를 제공하는 것에 관한 것이다.
소정의 메시징 시스템들, 예컨대 단문 메시지 서비스 (SMS), 마이크로블로깅 서비스들 등은 메시지로 송신될 수 있는 문자의 수를 제한한다. 짧은 URL들 (uniform resource locators) 은 그러한 시스템들에서 URL들을 나타내는 편리한 방식이다. 사용자는, 전체 길이 URL 을 전송하기 보다는, 실제 URL 의 실질적으로 더 짧은 버전이지만, 여전히 동일한 위치를 지시하는, 짧은 URL 을 전송할 수 있다. 사용자들이 짧은 URL들을 생성할 수 있게 하는 다수의 URL 단축화 서비스들이 있다.
예를 들어, URL http://example.com/index.asp?mod=profiles&id=193 은 http://examp.le/3plcydx 로 컨버팅될 수도 있다. 실제 URL 은 길이가 48 문자이지만, 짧은 URL 은 길이가 23 문자이다.
짧은 URL 은 실제 URL 을 모호하게 한다. 따라서, 사용자가 짧은 URL 을 수신할 때, 사용자가 그것을 클릭할 때까지 사용자는 짧은 URL 의 타겟을 아는 방법이 없다. 그 결과, 짧은 URL들은 예상치 못한 사이트들, 스캠 페이지들, 또는 악성 코드 (malware) 또는 XSS (cross-site scripting) 공격들을 포함하는 페이지들로 리디렉트하는데 사용될 수 있다. 악성 코드 또는 XSS 공격들을 포함하는 페이지들은 종종 URL 블랙리스트들을 우회하기 위해 짧은 URL들을 사용한다. 이 때문에, 일부 웹사이트들은 짧은 URL들이 포스팅되는 것을 방지한다.
본 개시물은 짧은 URL (uniform resource locator) 의 타겟과 관련된 메타데이터를 획득하는 것에 관한 것이다. 일 실시형태는 짧은 URL 을 서버로 송신하고, 서버로부터 응답을 수신하며, 응답은 실제 URL 에 대한 포인터를 포함하고, 서버로부터 실제 URL 과 관련된 메타데이터를 요청하며, 서버로부터 실제 URL 에 대한 메타데이터를 수신한다. 일 실시형태는 짧은 URL 의 타겟을 확인한다. 이 실시형태는 짧은 URL 을 수신하고, 짧은 URL 에 기초하여 실제 URL 과 관련된 메타데이터를 획득하고, 메타데이터로부터 호스트 웹사이트를 추출하고, 실제 URL 이 호스트 웹사이트를 가리키는지 여부를 결정하며, 그 결정의 결과의 통지를 전송한다.
본 발명의 한정이 아닌 예시를 위해서만 제시되는 첨부 도면들과 연계하여 고려될 때 다음의 상세한 설명을 참조하여 더 잘 이해되는 것과 마찬가지로 본 발명의 실시형태들 및 그 수반되는 많은 이점들의 보다 완전한 이해가 쉽게 획득될 것이다.
도 1 은 본 발명의 일 실시형태에 따른 무선 통신 시스템의 하이 레벨 시스템 아키텍처를 도시한다.
도 2 는 본 발명의 실시형태들에 따른 사용자 장비들 (UE들) 의 예들을 도시한다.
도 3 은 본 발명의 일 실시형태에 따른 기능을 수행하도록 구성된 로직을 포함하는 통신 디바이스를 도시한다.
도 4 는 예시적인 짧은 URL 콜 플로우를 도시한다.
도 5 는 일 실시형태에 따른 예시적인 짧은 URL 콜 플로우를 도시한다.
도 6 은 일 실시형태에 따른 UE 의 예시적인 스크린샷들을 도시한다.
도 7 은 UE 또는 서버에 의해 수행될 수 있는 일 실시형태의 예시적인 플로우를 도시한다.
도 8 은 짧은 URL 의 타겟이 확인되는, 일 실시형태의 예시적인 플로우를 도시한다.
본 발명의 양태들은 발명의 특정 실시형태들에 관한 것인 다음의 설명 및 관련 도면들에서 개시된다. 대안의 실시형태들이 발명의 범위를 벗어나지 않으면서 창안될 수도 있다. 부가적으로, 발명의 잘 알려진 엘리먼트들은 발명의 관련 상세들을 모호하게 하지 않도록 상세하게 설명되지 않거나 생략될 것이다.
단어들 "예시적인" 및/또는 "예" 는 본 명세서에서 "예, 예증, 또는 예시로서 제공하는" 을 의미하도록 사용된다. "예시적인" 및/또는 "예" 로서 본 명세서에 기재된 임의의 실시형태가 다른 실시형태들 보다 바람직하거나 이로운 것으로 반드시 해석되지 않는다. 마찬가지로, 용어 "발명의 실시형태들" 은 발명의 모든 실시형태들이 논의된 피처, 이점 또는 동작의 모드를 포함하는 것을 요구하지 않는다.
또한, 많은 실시형태들이 예를 들어, 컴퓨팅 디바이스의 엘리먼트들에 의해 수행될 액션들의 시퀀스들에 관해서 기재된다. 본 명세서에 기재된 다양한 액션들은 특정 회로들 (예를 들어, 주문형 집적 회로들 (ASIC들)) 에 의해, 하나 이상의 프로세서들에 의해 실행되는 프로그램 명령들에 의해, 또는 양자의 조합에 의해 수행될 수 있다는 것을 알게 된다. 부가적으로, 본 명세서에 기재된 액션들의 이러한 시퀀스는, 실행 시 연관된 프로세서로 하여금 본 명세서에 기재된 기능을 수행하게 하는 컴퓨터 명령들의 대응 세트가 저장된 임의의 형태의 컴퓨터 판독가능 저장 매체 내에서 전부 실시되는 것으로 고려될 수 있다. 따라서, 발명의 다양한 양태들은 다수의 상이한 형태들로 실시될 수도 있으며, 그 모든 형태들은 청구된 청구물의 범위 내에 있는 것으로 고려된다. 부가적으로, 본 명세서에 기재된 실시형태들의 각각에 대하여, 임의의 그러한 실시형태들의 대응 형태는 본 명세서에서 예를 들어, 기술된 액션을 수행하도록 "구성된 로직" 으로서 기술될 수도 있다.
본 명세서에서 사용자 장비 (UE) 로서 지칭되는 클라이언트 디바이스는 모바일이거나 정지식일 수도 있으며, 무선 액세스 네트워크 (RAN) 와 통신할 수도 있다. 본 명세서에서 사용된 바와 같이, 용어 "UE" 는 "액세스 단말" 또는 "AT", "무선 디바이스", "가입자 디바이스", "가입자 단말", "가입자국", "사용자 단말" 또는 UT, "모바일 단말', "이동국" 및 그 변형들로서 상호교환가능하게 지칭될 수도 있다. 일반적으로, UE들은 RAN 을 통해 코어 네트워크와 통신할 수 있고, 그 코어 네트워크를 통해, UE들이 인터넷과 같은 외부 네트워크와 접속될 수 있다. 물론, 코어 네트워크 및/또는 인터넷에 접속하는 다른 메커니즘들이, 예컨대 유선 액세스 네트워크들, WiFi 네트워크들 (예를 들어, IEEE 802.11 등에 기초함) 등을 통해, UE들에 대해 또한 가능하다. UE들은 PC 카드들, 컴팩 플래시 디바이스들, 외부 또는 내부 모뎀들, 무선 또는 유선 전화기들 등을 포함하지만 이에 한정되지 않는 다수의 유형의 디바이스들 중 임의의 디바이스에 의해 실시될 수 있다. UE들이 RAN 으로 신호들을 전송할 수 있는 통신 링크는 업링크 채널 (예를 들어, 역방향 트래픽 채널, 역방향 제어 채널, 액세스 채널 등) 로 불린다. RAN 이 UE들로 신호들을 전송할 수 있는 통신 링크는 다운링크 또는 순방향 링크 채널 (예를 들어, 페이징 채널, 제어 채널, 브로드캐스트 채널, 순방향 트래픽 채널 등) 으로 불린다. 본 명세서에서 사용된 바와 같이, 용어 트래픽 채널 (TCH) 은 업링크/역방향 또는 다운링크/순방향 트래픽 채널 중 어느 하나를 지칭할 수 있다.
도 1 은 본 발명의 실시형태에 따른 무선 통신 시스템 (100) 의 하이 레벨 시스템 아키텍처를 도시한다. 무선 통신 시스템 (100) 은 UE들 (UE1...UE N) 을 포함한다. UE들 (UE1...UE N) 은 셀룰러 폰, 개인용 디지털 보조기 (PDA들), 페이저들, 랩탑 컴퓨터, 데스크탑 컴퓨터 등을 포함할 수 있다. 예를 들어, 도 1 에서, UE들 (UE1...UE2) 은 셀룰러 콜링 폰들로서 도시되고, UE들 (UE3...UE5) 은 셀룰러 터치스크린 폰들 또는 스마트 폰들로서 도시되며, UE N 은 데스크탑 컴퓨터 또는 PC 로서 도시된다.
도 1 을 참조하면, UE들 (UE1...UE N) 은 공중 인터페이스들 (104, 106, 108) 및/또는 직접 유선 접속으로서 도 1 에 나타낸 물리 통신 인터페이스 또는 계층을 통해 액세스 네트워크 (예를 들어, RAN (120), 액세스 포인트 (125) 등) 와 통신하도록 구성된다. 공중 인터페이스 (104 및 106) 은 주어진 셀룰러 통신 프로토콜 (예를 들어, CDMA, EVDO, eHRPD, GSM, EDGE, W-CDMA, LTE 등) 에 따를 수 있고, 공중 인터페이스 (108) 은 무선 IP 프로토콜 (예를 들어, IEEE 802.11) 에 따를 수 있다. RAN (120) 은 공중 인터페이스들 (104 및 106) 과 같은, 공중 인터페이스들을 통해 UE들을 서빙하는 복수의 액세스 포인트들을 포함한다. RAN (120) 에서의 액세스 포인트들은 액세스 노드들 또는 AN들, 액세스 포인트들 또는 AP들, 기지국들 또는 BS들, 노드 B들, e노드 B들 등으로서 지칭될 수 있다. 이들 액세스 포인트들은 지상 액세스 포인트들 (또는 지상국들) 또는 위성 액세스 포인트들일 수 있다. RAN (120) 은 RAN (120) 에 의해 서빙되는 UE들과 RAN (120) 또는 상이한 RAN 모두에 의해 서빙되는 다른 UE들 간 회로 스위칭형 (CS) 콜들을 브리징하는 것을 포함하는 다양한 기능들을 수행할 수 있고, 또한 인터넷 (175) 과 같은 외부 네트워크들과의 패킷 스위칭형 (PS) 데이터의 교환을 중재할 수 있는, 코어 네트워크 (140) 에 접속하도록 구성된다. 인터넷 (175) 은 다수의 라우팅 에이전트들 및 프로세싱 에이전트들 (편의를 위해 도 1 에 도시되지 않음) 을 포함한다. 도 1 에서, UE N 은 인터넷 (175) 에 직접 접속하는 것으로 (즉, 예컨대 WiFi 또는 802.11 기반 네트워크의 에더넷 접속을 통해 코어 네트워크 (140) 와는 별도로) 나타나 있다. 이로써, 인터넷 (175) 은 코어 네트워크 (140) 를 통해 UE N 과 UE들 (UE1...N) 간 패킷 스위칭형 데이터 통신들을 브리지하도록 기능할 수 있다. 또한, 도 1 에서는 RAN (120) 과 별개인 액세스 포인트 (125) 가 나타나 있다. 액세스 포인트 (125) 는 코어 네트워크 (140) 에 의존하지 않고 (예를 들어, FiOS, 케이블 모뎀 등과 같은 광통신 시스템을 통해) 인터넷 (175) 에 접속될 수도 있다. 공중 인터페이스 (108) 은 일 예에서 IEEE 802.11 과 같은, 로컬 무선 접속을 통해 UE 4 또는 UE 5 를 서빙할 수도 있다. UE N 은 (예를 들어, 유선 및 무선 접속 양자를 갖는 WiFi 라우터를 위해) 일 예에서 액세스 포인트 (125) 그 자체에 대응할 수 있는, 모뎀 또는 라우터로의 직접 접속과 같은, 인터넷 (175) 으로의 유선 접속을 갖는 데스크탑 컴퓨터로서 나타나 있다.
도 1 을 참조하면, 어플리케이션 서버 (170) 가 인터넷 (175), 코어 네트워크 (140), 또는 양자에 접속된 것으로 나타나 있다. 어플리케이션 서버 (170) 는 복수의 구조적으로 별개의 서버들로서 구현될 수 있고, 또는 대안으로 단일 서버에 대응할 수도 있다. 하기에서 더 상세하게 설명되는 바와 같이, 어플리케이션 서버 (170) 는 코어 네트워크 (140) 및/또는 인터넷 (175) 을 통해 어플리케이션 서버 (170) 에 접속할 수 있는 UE들에 대해 하나 이상의 통신 서비스들 (예를 들어, VoIP (Voice-over-Internet Protocol) 세션들, PTT (Push-to-Talk) 세션들, 그룹 통신 세션들, 소셜 네트워킹 서비스들 등) 을 지원하도록 구성된다.
도 2 는 발명의 실시형태들에 따른 UE들의 예들을 도시한다. 도 2 를 참조하면, UE (200A) 는 콜링 폰으로서 도시되고 UE (200B) 는 터치스크린 디바이스 (예를 들어, 스마트 폰, 테블릿 컴퓨터 등) 으로서 도시된다. 도 2 에 나타낸 바와 같이, UE (200A) 의 외부 케이싱은 안테나 (205A), 디스플레이 (210A), 적어도 하나의 버튼 (215A)(예를 들어, PTT 버튼, 전력 버튼, 볼륨 제어 버튼 등) 및 키패드 (220A), 그외 종래에 알려진 바와 같은 다른 컴포넌트들로 구성된다. 또한, UE (200B) 의 외부 케이싱은 터치스크린 디스플레이 (205B), 주변 버튼들 (210B, 215B, 220B 및 225B)(예를 들어, 전력 제어 버튼, 볼륨 또는 진동 제어 버튼, 에어플레인 모드 토글 버튼 등), 적어도 하나의 프런트 패널 버튼 (230B)(예를 들어, 홈 버튼, 등), 그외 종래에 알려진 바와 같은 다른 컴포넌트들로 구성된다. UE (200B) 의 부분으로서 명시적으로 나타내지는 않았지만, UE (200B) 는 WiFi 안테나들, 셀룰러 안테나들, 위성 포지션 시스템 (SPS) 안테나들 (예를 들어, 글로벌 포지셔닝 시스템 (GPS) 안테나들) 등을 포함하지만 이에 한정되지 않는, UE (200B) 의 외부 케이싱에 내장된 하나 이상의 통합된 안테나 및/또는 하나 이상의 외부 안테나를 포함할 수 있다.
UE들 (200A 및 200B) 와 같은 UE들의 내부 컴포넌트들은 상이한 하드웨어 구성들로 실시될 수 있지만, 내부 하드웨어 컴포넌트들의 기본적인 하이 레벨 UE 구성은 도 2 에서 플랫폼 (202) 으로서 나타나 있다. 플랫폼 (202) 은 소프트웨어 어플리케이션들, 코어 네트워크 (140), 인터넷 (175) 및/또는 다른 리모트 서버들 및 네트워크들 (예를 들어, 어플리케이션 서버 (170), 웹 URL들 등) 로부터 결국 나올 수도 있는 RAN (120) 으로부터 송신된 데이터 및/또는 커맨드들을 수신하고 실행할 수 있다. 플랫폼 (202) 은 또한 RAN 상호작용 없이 국부적으로 저장된 어플리케이션들을 독립적으로 실행할 수 있다. 플랫폼 (202) 은 주문형 집적 회로 (ASIC)(208) 또는 다른 프로세서, 즉 마이크로프로세서, 로직 회로, 또는 다른 데이터 프로세싱 디바이스에 동작적으로 커플링된 트랜시버 (206) 를 포함할 수 있다. ASIC (208) 또는 다른 프로세서는 무선 디바이스의 메모리 (212) 에서의 임의의 상주하는 프로그램들과 인터페이스하는 어플리케이션 프로그래밍 인터페이스 (API)(210) 를 실행한다. 메모리 (212) 는 리드 온니 메모리 (ROM) 또는 랜덤 액세스 메모리 (RAM), 전기적 소거가능 프로그램가능 ROM (EEPROM), 플래시 카드들, 또는 컴퓨터 플랫폼들에 공통인 임의의 메모리로 구성될 수 있다. 플랫폼 (202) 은 또한 다른 데이터 뿐만 아니라, 액티브하게 사용되지 않는 어플리케이션들을 메모리 (212) 에 저장할 수 있는 로컬 데이터베이스 (214) 를 포함할 수 있다. 로컬 데이터베이스 (214) 는 통상 플래시 메모리 셀이지만, 자기 매체들, EEPROM, 광학 매체들, 테이프, 소프트 또는 하드 디스크 등과 같은, 종래에 알려진 바와 같은 임의의 보조 저장 디바이스일 수 있다.
따라서, 발명의 일 실시형태는 본 명세서에 기재된 기능들을 수행하는 능력을 포함하는 UE (예를 들어, UE (200A), UE (200B) 등) 를 포함할 수 있다. 당업자에 의해 이해되는 바와 같이, 다양한 로직 엘리먼트들은 본 명세서에 기재된 기능을 달성하기 위해 이산 엘리먼트들, 프로세서 상에서 실행되는 소프트웨어 모듈들 또는 소프트웨어 및 하드웨어의 임의의 조합에서 실시될 수 있다. 예를 들어, ASIC (208), 메모리 (212), API (210) 및 로컬 데이터베이스 (214) 는 모두 본 명세서에 기재된 다양한 기능들을 로딩, 저장 및 실행하기 위해 협력적으로 사용될 수도 있으며, 따라서 이들 기능들을 수행하는 로직이 다양한 엘리먼트들에 걸쳐 분산될 수도 있다. 대안으로, 하나의 이산 컴포넌트 내에 기능이 통합될 수 있다. 이에 따라, 도 2 에서의 UE들 (200A 및 200B) 은 단지 예시적인 것으로 고려되어야 하고, 본 발명은 예시된 피처들 또는 배열에 한정되지 않는다.
UE들 (200A 및/또는 200B) 과 RAN (120) 간 무선 통신은 상이한 기술들, 예컨대 CDMA, W-CDMA, 시간 분할 다중 액세스 (TDMA), 주파수 분할 다중 액세스 (FDMA), 직교 주파수 분할 멀티플렉싱 (OFDM), GSM, 또는 무선 통신 네트워크 또는 데이터 통신 네트워크에 사용될 수도 있는 다른 프로토콜에 기초할 수 있다. 앞서 논의되고 종래에 알려진 바와 같이, 보이스 송신 및/또는 데이터는 다양한 네트워크들 및 구성들을 사용하여 RAN 으로부터 UE들로 송신될 수 있다. 따라서, 본 명세서에 제공된 예시들은 발명의 실시형태들을 한정하는 것으로 의도되지 않으며 단지 발명의 실시형태들의 양태들의 설명을 돕기 위한 것이다.
도 3 은 기능을 수행하도록 구성된 로직을 포함하는 통신 디바이스 (300) 를 도시한다. 통신 디바이스 (300) 는 UE들 (UE (200A), 또는 UE (200B)), RAN (120) 의 임의의 컴포넌트, 코어 네트워크 (140) 의 임의의 컴포넌트, 코어 네트워크 (140) 및/또는 인터넷 (175)(예를 들어, 어플리케이션 서버 (170)) 등을 포함하지만 이에 한정되지 않는, 위에 주시된 통신 디바이스들 중 임의의 것에 대응할 수 있다. 따라서, 통신 디바이스 (300) 는 도 1 의 무선 통신 시스템 (100) 을 통해 하나 이상의 다른 엔티티들과 통신 (또는 통신을 용이하게) 하도록 구성되는 임의의 전자 디바이스에 대응할 수 있다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 을 포함한다. 일 예에서, 통신 디바이스 (300) 가 무선 통신 디바이스 (예를 들어, UE (200A) 또는 UE (200B)) 에 대응하는 경우, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 무선 트랜시버 및 관련 하드웨어 (예를 들어, RF 안테나, 모뎀, 변조기 및/또는 복조기 등) 과 같은 무선 통신 인터페이스 (예를 들어, 블루투스, WiFi, 2G, CDMA, W-CDMA, 3G, 4G, LTE 등) 를 포함한다. 또 다른 예에서, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 유선 통신 인터페이스 (예를 들어, 인터넷 (175) 이 접속될 수 있는, 시리얼 접속, USB 또는 파이어와이어 (Firewire) 접속, 에더넷 접속 등) 에 대응할 수 있다. 따라서, 통신 디바이스 (300) 가 네트워크 기반 서버 (예를 들어, 어플리케이션 (170)) 의 일부 유형에 대응하는 경우, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은, 일 예에서, 에더넷 프로토콜을 통해 다른 통신 엔티티들에 네트워크 기반 서버를 접속하는 에더넷 카드에 대응할 수 있다. 추가 예에서, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은, 통신 디바이스 (300) 가 그 로컬 환경을 모니터링할 수 있는 감지 또는 측정 하드웨어 (예를 들어, 가속도계, 온도 센서, 광 센서, 로컬 RF 신호들을 모니터링하는 안테나 등) 를 포함할 수 있다. 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은, 실행될 때, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 의 연관된 하드웨어가 그 수신 및/또는 송신 기능(들) 을 수행하는 것을 허용하는, 소프트웨어를 포함할 수 있다. 하지만, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 단독으로 소프트웨어에 대응하지 않으며, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 그 기능을 달성하기 위해 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 프로세싱하도록 구성된 로직 (310) 을 더 포함한다. 일 예에서, 정보를 프로세싱하도록 구성된 로직 (310) 은 적어도 프로세서를 포함할 수 있다. 정보를 프로세싱하도록 구성된 로직 (310) 에 의해 구성될 수 있는 프로세싱의 유형의 예시의 구현들은, 결정들을 수행하는 것, 접속들을 확립하는 것, 상이한 정보 옵션들 간 선택들을 행하는 것, 데이터와 관련된 평가들을 수행하는 것, 측정 동작들을 수행하기 위해 통신 디바이스 (300) 에 커플링된 센서들과 상호작용하는 것, 정보를 일 포맷에서 다른 포맷으로 (예를 들어, .wmv 에서 .avi 등과 같은 상이한 프로토콜들 간) 컨버팅 하는 것 등을 포함한다. 예를 들어, 정보를 프로세싱하도록 구성된 로직 (310) 에 포함된 프로세서는 범용 프로세서, 디지털 신호 프로세서 (DSP), ASIC, 필드 프로그램가능 게이트 어레이 (FPGA) 또는 다른 프로그램가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 본 명세서에 기재된 기능들을 수행하도록 설계된 그 임의의 조합에 대응할 수 있다. 범용 프로세서는 마이크로 프로세서일 수도 있지만, 대안으로, 그 프로세서는 임의의 종래 프로세서, 제어기, 마이크로제어기 또는 상태 머신일 수도 있다. 프로세서는 또한 컴퓨팅 디바이스들의 조합으로서, 예를 들어 DSP 및 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 결합하는 하나 이상의 마이크로프로세서들 또는 임의의 다른 그러한 구성으로서 구현될 수도 있다. 정보를 프로세싱하도록 구성된 로직 (310) 은 또한, 실행될 때, 정보를 프로세싱하도록 구성된 로직 (310) 의 연관된 하드웨어가 그 프로세싱 기능(들) 을 수행하는 것을 허용하는 소프트웨어를 포함할 수 있다. 하지만, 정보를 프로세싱하도록 구성된 로직은 단독으로 소프트웨어에 대응하지 않으며, 정보를 프로세싱하도록 구성된 로직 (310) 은 그 기능을 달성하기 위해 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 저장하도록 구성된 로직 (315) 을 더 포함한다. 일 예에서, 정보를 저장하도록 구성된 로직 (315) 은 적어도 비일시적 메모리 및 연관된 하드웨어 (예를 들어, 메모리 제어기 등) 를 포함할 수 있다. 예를 들어, 정보를 저장하도록 구성된 로직 (315) 에 포함된 비일시적 메모리는 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드 디스크, 탈착가능 디스크, CD-ROM 또는 종래에 알려진 저장 매체의 임의의 다른 형태에 대응할 수 있다. 정보를 저장하도록 구성된 로직 (315) 은 또한, 실행될 때, 정보를 저장하도록 구성된 로직 (315) 의 연관된 하드웨어가 그 저장 기능(들)을 수행하는 것을 허용하는 소프트웨어를 포함할 수 있다. 하지만, 정보를 저장하도록 구성된 로직 (315) 은 단독으로 소프트웨어에 대응하지 않으며, 정보를 제공하도록 구성된 로직 (315) 은 그 기능을 달성하기 위해 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 통신 디바이스 (300) 는 정보를 제시하도록 구성된 로직 (320) 을 선택적으로 더 포함한다. 일 예에서, 정보를 제시하도록 구성된 로직 (320) 은 적어도 출력 디바이스 및 연관된 하드웨어를 포함할 수 있다. 예를 들어, 출력 디바이스는 비디오 출력 디바이스 (예를 들어, 디스플레이 스크린, USB, HDMI 등과 같은 정보를 반송할 수 있는 포트), 오디오 출력 디바이스 (예를 들어, 스피커들, 마이크 잭, USB, HDMI 등과 같은 오디오 정보를 반송할 수 있는 포트), 진동 디바이스 및/또는 정보가 통신 디바이스 (300) 의 사용자 또는 오퍼레이터에 의해 실제 출력되는 또는 출력을 위해 포맷될 수 있는 임의의 다른 디바이스를 포함할 수 있다. 예를 들어, 도 2 에 나타낸 바와 같이, 통신 디바이스 (300) 가 UE (200A) 또는 UE (200B) 에 대응하는 경우, 정보를 제시하도록 구성된 로직 (320) 은 UE (200A) 의 디스플레이 (210A) 또는 UE (200B) 의 터치스크린 디스플레이 (205B) 를 포함할 수 있다. 추가 예에서, 정보를 제시하도록 구성된 로직 (320) 은 소정의 통신 디바이스들, 예컨대 로컬 사용자를 갖지 않는 통신 디바이스들 (예를 들어, 네트워크 스위치들 또는 라우터들, 리모트 서버들 등) 에 대해 생략될 수 있다. 정보를 제시하도록 구성된 로직 (320) 은 또한, 실행될 때, 정보를 제시하도록 구성된 로직 (320) 의 연관된 하드웨어가 그 프레젠테이션 기능(들) 을 수행하는 것을 허용하는 소프트웨어를 포함할 수 있다. 하지만, 정보를 제시하도록 구성된 로직 (320) 은 단독으로 소프트웨어에 대응하지 않고, 정보를 제시하도록 구성된 로직 (320) 은 그 기능을 달성하기 위해 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 통신 디바이스 (300) 는 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 을 선택적으로 더 포함한다. 일 예에서, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 적어도 사용자 입력 디바이스 및 연관된 하드웨어를 포함할 수 있다. 예를 들어, 사용자 입력 디바이스는 버튼들, 터치스크린 디스플레이, 키보드, 카메라, 오디오 입력 디바이스 (예를 들어, 마이크 또는 마이크 잭 등과 같은 오디오 정보를 반송할 수 있는 포트) 및/또는 정보가 통신 디바이스 (300) 의 사용자 또는 오퍼레이터로부터 수신될 수 있는 임의의 다른 디바이스를 포함할 수 있다. 예를 들어, 통신 디바이스 (300) 가 도 2 에 나타낸 바와 같이 UE 200A 또는 UE 200B 에 대응하는 경우, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 키패드 (220A), 버튼들 (215A 또는 210B 부터 225B), 터치스크린 디스플레이 (205B) 등을 포함할 수 있다. 추가 예에서, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 소정의 통신 디바이스들, 예컨대 로컬 사용자를 갖지 않는 네트워크 통신 디바이스들 (예를 들어, 네트워크 스위치들 또는 라우터들, 리모트 서버들 등) 에 대해 생략될 수 있다. 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 또한, 실행될 때, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 이 그 입력 수신 기능(들) 을 수행하는 것을 허용하는 소프트웨어를 포함할 수 있다. 하지만, 로컬 사용자 입력을 수신하도록 구성된 로직 (325) 은 단독으로 소프트웨어에 대응하지 않고, 로컬 사용자 입력 (325) 을 수신하도록 구성된 로직은 그 기능을 달성하기 위해 하드웨어에 적어도 부분적으로 의존한다.
도 3 을 참조하면, 도 3 에서 305 내지 325 의 구성된 로직들이 별도의 또는 별개의 블록들로서 나타나 있지만, 각각의 구성된 로직이 그 기능을 수행하는 하드웨어 및/또는 소프트웨어는 부분적으로 오버랩할 수 있다는 것을 이해하게 된다. 예를 들어, 305 내지 325 의 구성된 로직들의 기능을 용이하게 하는데 사용되는 임의의 소프트웨어가 정보를 저장하도록 구성된 로직 (315) 과 연관된 비일시적 메모리에 저장될 수 있어서, 305 내지 325 의 구성된 로직들은 정보를 저장하도록 구성된 로직 (315) 에 의해 저장된 소프트웨어의 동작에 부분적으로 기초하여 그 기능을 각각 수행한다. 마찬가지로, 구성된 로직들 중 하나와 집적 연관되는 하드웨어는 가끔 다른 구성된 로직들에 의해 브라우징되거나 사용될 수 있다. 예를 들어, 정보를 프로세싱하도록 구성된 로직 (310) 의 프로세서는, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 에 의해 송신되기 전에, 데이터를 적절한 포맷으로 포맷할 수 있어서, 정보를 수신 및/또는 송신하도록 구성된 로직 (305) 은 정보를 프로세싱하도록 구성된 로직 (310) 과 연관된 하드웨어 (즉, 프로세서) 의 동작에 부분적으로 기초하여 그 기능 (즉, 이 경우, 데이터의 송신) 을 수행한다.
일반적으로, 다르게 명시적으로 사용되지 않으면, 본 개시물 전체에 걸쳐 사용되는 바와 같이, 구절 "하도록 구성된 로직" 은 적어도 부분적으로 하드웨어로 구현되는 일 실시형태를 원용하고자 하는 것이고, 하드웨어에 의존하지 않는 소프트웨어-온니 구현들에 매핑하고자 하는 것은 아니다. 또한, 다양한 블록들에서 구성된 로직 또는 "하도록 구성된 로직" 은 특정 로직 게이트들 또는 엘리먼트들에 한정되지 않지만, 일반적으로 본 명세서에 기재된 기능을 (하드웨어 또는 하드웨어 및 소프트웨어의 조합을 통해) 수행하는 능력을 지칭하는 것을 이해하게 된다. 따라서, 다양한 블록들에 도시된 바와 같이 구성된 로직들 또는 "하도록 구성된 로직" 은 단어 "로직" 을 공유하더라도 로직 게이트들 또는 로직 엘리먼트들로서 반드시 구현되지 않는다. 다양한 블록들에서의 로직 간 다른 상호작용들 또는 협조는 하기에서 더 상세하게 설명되는 실시형태들의 리뷰로부터 당업자에게 명백해질 것이다.
소정의 메시징 시스템들, 예컨대 단문 메시지 서비스 (SMS), 마이크로블로깅 서비스들 등은 메시지로 송신될 수 있는 문자의 수를 제한한다. 짧은 URL들 (uniform resource locators) 은 그러한 시스템들에서 URL들을 나타내는 편리한 방식이다. 전체 길이 URL 을 전송하기 보다, 사용자는 실제 URL 의 실질적으로 더 짧은 버전이지만 여전히 동일한 위치를 지시하는, 짧은 URL 을 전송할 수 있다. 사용자가 짧은 URL들을 생성하는 것을 허용하는 다수의 URL 단축화 서비스들이 있다.
예를 들어, URL http://example.com/index.asp?mod=profiles&id=193 는 http://examp.le/3plcydx 로 컨버팅될 수도 있다. 실제 URL 은 길이가 48 문자이지만, 짧은 URL 은 길이가 23 문자이다.
URL 에 위치된 컨텐츠는 HTTP (hypertext transport protocol) 을 사용하여 통상 획득된다. HTTP 는 클라이언트-서버 컴퓨팅 모델에 대한 요청-응답 프로토콜이다. 클라이언트는 특정 URL 에 위치된, 웹페이지와 같은 컨텐츠를 획득하기를 원할 때, 클라이언트는 URL 에 의해 식별된 서버에 HTTP GET 요청을 전송한다. 서버는 HTTP 응답 헤더 및 컨텐츠로 응답한다. 응답 헤더는 서버에 관한 그리고 URL 에 의해 식별된 컨텐츠, 예컨대 로케이션, 호스트, 컨텐츠-유형, 컨텐츠-길이, 서버 등으로의 추가 액세스에 관한 정보를 주는 헤더 필드들을 포함한다.
도 4 는 예시적인 짧은 URL 콜 플로우를 도시한다. 410 에서, UE (405) 는 짧은 URL 을 수신한다. 짧은 URL 은, 예를 들어, 마이크로블로깅 서비스로부터 마이크로포스트에서 수신될 수도 있다. 420 에서, UE (405) 는 짧은 URL 에 위치된 컨텐츠를 요청하는 HTTP GET 메시지를 URL 단축화 서버 (415) 로 전송한다. URL 단축화 서버 (415) 는 실제 URL 로부터 짧은 URL 을 생성했던 서버이고, 짧은 URL 에 의해 식별된다. 430 에서, URL 단축화 서버 (415) 는 HTTP 301 로 "영구 이동" 응답을 회신하는데, 이 응답은 응답 헤더의 로케이션 필드에서 실제 URL 에 대한 포인터를 포함한다. 포인터는 통상 실제 URL 을 포함하는 리디렉트 URL 이다. 440 에서, UE (405) 는 실제 URL 에 위치된 컨텐츠를 요청하는 실제 URL 에서 식별된 HTTP GET 메시지를 컨텐츠 서버 (425) 로 전송한다. 450 에서, 컨텐츠 서버 (425) 는 HTTP 200 로 "OK" 응답을 회신한다. 응답은 실제 URL 에 위치된 컨텐츠 및 컨텐츠 헤더를 포함한다.
짧은 URL 은 실제 URL 을 모호하게 한다. 따라서, 사용자가 짧은 URL 을 수신할 때, 사용자는 그것을 클릭할 때까지 짧은 URL 의 타겟을 아는 방법이 없다. 그 결과, 짧은 URL들은 예상치 못한 사이트들, 스캠 페이지들, 또는 악성코드 또는 XSS (cross-site scripting) 를 포함하는 페이지들을 리디렉트하는데 사용될 수 있다. 악성 코드 또는 XSS 공격들을 포함하는 페이지들은 종종 URL 블랙리스트들을 우회하는데 짧은 URL들을 사용한다. 이 때문에, 일부 웹사이트들은 짧은 URL들이 포스팅되는 것을 방지한다.
짧은 URL들에 의한 이슈들의 일부를 해결하는 현재 솔루션들이 있다. 하나의 서비스는 사용자가 짧은 URL 을 탐색 필드에 진입하도록 하는 것을 허용하며 실제 URL 을 복원한다. 또 다른 서비스는 URL 스트링 그 자체에 "프리뷰" 필드를 갖는 짧은 URL들을 생성한다. 이들 짧은 URL들은 사용자들이 짧은 URL 에 클릭하기 전에 실제 URL 을 볼 수 있도록 한다. 또 다른 서비스는 사용자들이 실제 URL 을 보기 위해 URL 의 끝에 물음표를 부가하도록 한다. 또 다른 유형의 서비스는 짧은 URL 을 생성하기 전에 실제 URL 을 검증하기 위해 다양한 안전 체크들을 수행한다.
다양한 실시형태들은 실제 URL 과 연관된 컨텐츠를 실제로 다운로딩하지 않고 짧은 URL 과 연관된 메타데이터를 선제적으로 불러온다. 메타데이터는 실제 URL 과 연관된 컨텐츠, 예컨대 컨텐츠 유형, 컨텐츠의 사이즈, 컨텐츠와 연관된 호스트 명칭, 및/또는 짧은 URL 뒤의 실제 URL 을 포함할 수 있다. 소정의 웹사이트들에 대해 사용자 정의된 블랙리스트와 같은 다른 로컬 상세들이 또한 통합될 수 있다. 이러한 메타데이터를 사용자에게 제시하는 것은 짧은 URL 을 따를지 여부를 결정하기 전에 사용자에게 실제 URL 의 살짝 엿보기를 제공한다.
도 5 는 일 실시형태에 따른 예시적인 짧은 URL 콜 플로우를 도시한다. 510 에서, UE (505) 는 짧은 URL 을 수신한다. 짧은 URL 은, 예를 들어 마이크로블로깅 서비스로부터 마이크로포스트에서 수신될 수도 있다. 520 에서, UE 505 는 URL 단축화 서버 (515) 에 HTTP HEAD 메시지를 전송한다. HEAD 메시지 는 GET 요청에 대해 수신될 것과 동일하지만 컨텐츠가 없는 응답을 찾는다. 즉, HEAD 메시지에 대한 응답이 바로 HTTP 응답 헤더이다. 따라서, 530 에서, URL 단축화 서버 (515) 는 로케이션 헤더 필드에서 실제 URL 에 대한 포인터를 갖는 HTTP 301 "영구 이동" 메시지로 응답한다.
540 에서, UE (505) 는 또 다른 HTTP HEAD 메시지를 URL 단축화 서버로 전송하며, 이번은 301 응답의 로케이션 헤더 필드에 있었던 포인터 URL 을 포함한다. 포인터 URL 은 실제 URL 을 포함한다. 550 에서, URL 단축화 서버 (515) 는, 실제 URL 에 대한 응답 헤더를 포함하는 200 "OK" 메시지로 응답한다.
UE (505) 는 실제 URL 및 연관된 컨텐츠에 관한 메타데이터를 응답으로부터 추출하고 사용자가 그 컨텐츠를 다운로드할지 여부를 결정할 수 있도록 사용자에게 그것을 디스플레이한다. 메타데이터는 로케이션 필드로부터 추출된 실제 URL, 서버 필드로부터 추출된 호스트 이름, 컨텐츠-유형 필드로부터 추출된 컨텐츠의 MIME (multipurpose internet mail extensions) 유형, 컨텐츠-길이 필드로부터 추출된 컨텐츠의 사이즈 등을 포함할 수 있다.
560 에서, 리턴된 메타데이터를 살펴본 후, 사용자는 실제 URL 에서 컨텐츠를 다운로드할 것을 결정한다. 따라서, 570 에서, UE (505) 는 실제 URL 에 위치된 컨텐츠를 요청하는 실제 URL 에서 식별된 HTTP GET 메시지를 컨텐츠 서버로 전송한다. 580 에서, 컨텐츠 서버 (525) 는 HTTP 200 "OK" 응답으로 회신한다. 응답은 실제 URL 에 위치된 컨텐츠 및 응답 헤더를 포함한다.
도 6 은 일 실시형태에 따른 UE (600) 의 예시적인 스크린샷들 (610A 및 610B) 을 도시한다. 도 6 의 예에서, 사용자는 이름이 Amy Smith 인 누군가와 텍스트 메시징 대화에 참여한다. 대화 동안, Amy Smith 는 SMS 메시지 (620) 에서 짧은 URL 을 사용자에게 텍스팅한다. 스크린샷 (610A) 에 나타낸 바와 같이, SMS 메시지 (620) 는 임의의 다른 SMS 메시지가 되는 것과 같이 초기에 디스플레이된다. 하지만, 스크린샷 (610B) 에 나타낸 바와 같이, 사용자가 짧은 URL 또는 그것을 포함하는 SMS 메시지 (620) 을, 예컨대 그것을 터치하는 것에 의해 선택할 때, 정보 박스 (630) 는 실제 URL 의 상세들을 나타내는 것처럼 보인다. 사용자는 그 후 그것을 다시 터치하는 것에 의해 따를지 말지 여부를 결정할 수 있다.
도 6 은 짧은 URL 이 SMS 메시지에서 수신되는 일 실시형태를 도시하지만, 다양한 실시형태들이 그렇게 제한되지 않는다는 것이 명백하다. 다양한 실시형태들은 어떻게 수신되는지에 관계없이 짧은 URL들에 적용된다. 예를 들어, 짧은 URL들은 마이크로블로깅 서비스 메시지들 (예를 들어, 마이크로포스트들), 모바일 이메일 서비스 등에서 수신될 수 있다. 또한, 모바일 웹 브라우저에 최적화된 웹 페이지는 전체 길이 URL들 보다는 오히려 짧은 URL들을 디스플레이할 수도 있다. 데스크탑 환경들에 최적화된 웹 페이지들 및 이메일 서비스들 조차도 여러 가지 이유로 짧은 URL들을 사용할 수도 있다.
도 7 은 UE 또는 서버에 의해 수행될 수 있는 일 실시형태의 예시적인 플로우를 도시한다. 710 에서, UE 또는 서버는 짧은 URL 을 수신한다. UE 는 문자 메시지, 마이크로포스트, 이메일, 웹페이지 등에서 짧은 URL 을 수신할 수도 있다. 서버는 UE 로부터 짧은 URL 을 수신할 수도 있다. 720 에서, UE 또는 서버는 짧은 URL 을 생성했던 URL 단축화 서버로 짧은 URL 을 송신한다. 730 에서, UE 또는 서버는 실제 URL 에 대한 포인터를 포함하는 응답을 수신한다. 740 에서, UE 또는 서버는 실제 URL 과 관련된 메타데이터에 대한 요청을 URL 단축화 서버로 전송한다. 750 에서, UE 또는 서버는 URL 단축화 서버로부터 메타데이터를 수신한다. 760 에서, UE 또는 서버는 실제 URL 에 위치된 컨텐츠를 요청하는 실제 URL 에서 식별된 요청을 컨텐츠 서버로 전송한다. 770 에서, UE 또는 서버는 컨텐츠 서버로부터 컨텐츠를 수신한다.
도 8 은 짧은 URL 의 타겟이 확인되는, 일 실시형태의 예시적인 플로우를 도시한다. 도 8 의 실시형태는 서버 또는 UE 에서 수행될 수 있다. 서버는 URL 단축화 서버 또는 일부 다른 프록시 서버일 수도 있다. 810 에서, 서버 또는 UE 는 짧은 URL 을 수신한다. UE 는 문자 메시지, 마이크로포스트, 이메일, 웹페이지 등에서 짧은 URL 을 수신할 수도 있다. 서버는 UE 로부터 짧은 URL 을 수신할 수도 있다.
820 에서, 서버 또는 UE 는 짧은 URL 에 기초하여 실제 URL 과 관련된 메타데이터를 획득한다. 이것은 도 7 의 실시형태에 따라 달성될 수 있다. 830 에서, 서버 또는 UE 는 획득된 메타데이터로부터 호스트 웹사이트를 추출한다. 호스트 웹사이트는 로케이션 필드에서의 포인터 URL 로부터 또는 호스트 웹사이트를 포함하는 HTTP 응답 헤더에서의 필드로부터 추출될 수 있다.
실제 URL 은 이러한 호스트 웹사이트를 실제로 디렉트하지 않을 수도 있다. 따라서, 840 에서, 서버 또는 UE 는 실제 URL 이 호스트 웹사이트를 실제 가리키는지 여부를 결정한다. 850 에서, 서버 또는 UE 는 그 후 이러한 결정의 결과의 통지를 전송한다. 실제 URL 이 호스트 웹사이트를 가리키는 경우, 통지는 확인일 수도 있고, 그렇지 않은 경우, 통지는 에러 메시지일 수도 있다. UE 가 도 8 의 실시형태를 수행하고 있는 경우, 모바일 디바이스는 UE 의 사용자 인터페이스 상에 그 통지를 디스플레이함으로써 사용자에게 그 통지를 전송한다. 서버가 도 8 의 실시형태를 수행하고 있는 경우, 서버는 짧은 URL 을 수신했던 UE 로 그 통지를 전송한다.
당업자는 정보 및 신호들이 여러 상이한 기술들 및 기법들 중 임의의 것을 사용하여 표현될 수도 있다는 것을 알게 될 것이다. 예를 들어, 위의 설명 전체에 걸쳐 언급될 수도 있는 데이터, 명령들, 커맨드들, 정보, 신호들, 비트들, 심볼들, 및 칩들은 전압, 전류, 전자기파, 자기 장 또는 입자, 광학 장 또는 입자, 또는 그 임의의 조합으로 표현될 수도 있다.
추가로, 당업자는 본 명세서에 개시된 실시형태들과 관련하여 기술된 다양한 예시적인 로직 블록들, 모듈들, 회로들 및 알고리즘 단계들은 전자 하드웨어, 컴퓨터 소프트웨어 또는 양자의 조합으로 구현될 수도 있다는 것을 알게 될 것이다. 이러한 하드웨어 및 소프트웨어의 상호교환 능력을 명확하게 예시하기 위해서, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들은 일반적으로 그 기능에 관하여 위에서 기술되었다. 그러한 기능이 하드웨어 또는 소프트웨어로서 구현되는지 여부는 전체 시스템에 부과된 특정 어플리케이션 및 설계 제약들에 의존한다. 당업자는 각각의 특정 어플리케이션에 대하여 여러 방식으로 기술된 기능을 구현할 수도 있지만, 그러한 구현 결정들은 본 발명의 범위를 벗어나게 하는 것으로서 해석되지 않아야 한다.
본 명세서에 기재된 실시형태들과 관련하여 설명된 다양한 예시적인 로직 블록들, 모듈들 및 회로들은 범용 프로세서, 디지털 신호 프로세서 (DSP), 주문형 집적회로 (ASIC), 필드 프로그램가능 게이트 어레이 (FPGA) 또는 다른 프로그램가능 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들 또는 본 명세서에 기재된 기능을 수행하도록 설계된 그 임의의 조합으로 구현되거나 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안으로, 프로세서는 임의의 종래 프로세서, 제어기, 마이크로제어기 또는 상태 머신일 수도 있다. 프로세서는 또한 컴퓨팅 디바이스들의 조합, 예를 들어 DPS 및 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 연계하는 하나 이상의 마이크로프로세서들, 또는 임의의 다른 그러한 구성으로 구현될 수도 있다.
본 명세서에 개시된 실시형태들과 관련하여 기술된 방법들, 시퀀스들 및/또는 알고리즘들은 하드웨어에서 직접 구현될 수도 있고, 프로세서에 의해 실행되는 소프트웨어에서 구현될 수도 있으며, 또는 2 개의 조합에서 구현될 수도 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드 디스크, 탈착가능 디스크, CD-ROM, 또는 종래에 알려진 저장 매체의 임의의 다른 형태에 상주할 수도 있다. 예시적인 저장 매체는 프로세서가 저장 매체로부터 정보를 판독하고 저장 매체에 정보를 기록할 수 있다. 대안으로, 저장 매체는 프로세서에 통합될 수도 있다. 프로세서 및 저장 매체는 ASIC 에 상주할 수도 있다. ASIC 는 사용자 단말 (예를 들어, UE) 에 상주할 수도 있다. 대안으로, 프로세서 및 저장 매체는 사용자 단말에 이산 컴포넌트들로서 상주할 수도 있다.
하나 이상의 예시적인 실시형태들에서, 기술된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 그 임의의 조합에서 구현될 수도 있다. 소프트웨어에서 구현되는 경우, 그 기능들은 컴퓨터 판독가능 매체 상에 하나 이상의 명령들 또는 코드로서 저장되거나 송신될 수도 있다. 컴퓨터 판독가능 매체는 하나의 장소에서 다른 장소로 컴퓨터 프로그램의 전송을 용이하게 하는 임의의 매체를 포함하는 통신 매체 및 컴퓨터 저장 매체의 양자를 포함한다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체들일 수도 있다. 한정이 아닌 예시로서, 그러한 컴퓨터 판독가능 매체들은 RAM, ROM, EEPROM, CD-ROM 도는 다른 광학 디스크 스토리지, 자기 디스크 스토리지 또는 다른 자기 저장 디바이스들 또는 명령들 또는 데이터 구조들의 형태로 원하는 프로그램 코드를 반송 또는 저장하는데 사용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수도 있다. 또한, 임의의 접속은 적절하게 컴퓨터 판독가능 매체라고 칭한다. 예를 들어, 소프트웨어가 웹사이트, 서버, 또는 동축 케이블, 광섬유 케이블, 꼬임쌍선, 디지털 가입자 라인 (DSL), 또는 적외선, 무선 및 마이크로파를 사용하는 다른 리모트 소스로부터 송신되는 경우, 동축 케이블, 광섬유 케이블, 꼬임쌍선, DSL, 또는 무선기술들, 예컨대 적외선, 무선 및 마이크로파는 매체의 정의 내에 포함된다. 본 명세서에서 사용된 바와 같이, 본 명세서에서 사용된 바와 같이, 디스크 (disk) 및 디스크 (disc) 는 컴팩 디스크 (CD), 레이저 디스크, 광학 디스크, 디지털 다기능 디스크 (DVD), 플로피 디스크 및 블루레이 (blu-ray) 디스크를 포함하며, 여기서 디스크들 (disks) 은 보통 데이터를 자기적으로 재생하고, 디스크들 (discs) 은 데이터를 레이저에 의해 광학적으로 재생한다. 위의 조합들이 또한 컴퓨터 판독가능 매체의 범위 내에 포함되어야 한다.
앞서 언급된 개시는 발명의 예시적인 실시형태들이며, 첨부된 청구항들에 의해 정의된 바와 같은 발명의 범위를 벗어나지 않으면서 다양한 변화들 및 변경들이 본 명세서에서 이루어질 수 있음을 주시해야 한다. 본 명세서에 기재된 발명의 실시형태들에 따른 방법 청구항들의 기능들, 단계들 및/또는 액션들은 임의의 특정 순서로 수행될 필요는 없다. 게다가, 발명의 엘리먼트들이 단수로 기재되거나 청구될 수도 있더라도, 단수로의 한정이 명시적으로 언급되지 않으면 복수가 고려된다.

Claims (15)

  1. 짧은 URL (uniform resource locator) 의 타겟과 관련된 메타데이터를 획득하는 방법으로서,
    상기 짧은 URL 을 서버 (415; 515) 로 송신 (520; 720) 하는 단계;
    상기 서버로부터 응답을 수신 (530; 730) 하는 단계로서, 상기 응답은 실제 URL 에 대한 포인터를 포함하는, 상기 수신하는 단계;
    상기 서버로부터 상기 실제 URL 과 관련된 메타데이터를 요청 (540; 740) 하는 단계; 및
    상기 서버로부터 상기 실제 URL 에 대한 상기 메타데이터를 수신 (550; 750) 하는 단계를 포함하는, 짧은 URL 의 타겟과 관련된 메타데이터를 획득하는 방법.
  2. 제 1 항에 있어서,
    상기 서버는 URL 단축화 서버인, 짧은 URL 의 타겟과 관련된 메타데이터를 획득하는 방법.
  3. 제 1 항에 있어서,
    상기 메타데이터를 요청하는 단계는, 상기 실제 URL 에 대한 포인터를 포함하는 HTTP (hypertext transport protocol) 메시지를 송신하는 단계를 포함하는, 짧은 URL 의 타겟과 관련된 메타데이터를 획득하는 방법.
  4. 제 3 항에 있어서,
    상기 HTTP 메시지는 HTTP HEAD 메시지인, 짧은 URL 의 타겟과 관련된 메타데이터를 획득하는 방법.
  5. 제 1 항에 있어서,
    상기 메타데이터를 수신하는 단계는, 상기 메타데이터를 포함하는 HTTP 메시지를 수신하는 단계를 포함하는, 짧은 URL 의 타겟과 관련된 메타데이터를 획득하는 방법.
  6. 제 5 항에 있어서,
    상기 HTTP 메시지는 HTTP 200 메시지인, 짧은 URL 의 타겟과 관련된 메타데이터를 획득하는 방법.
  7. 제 1 항에 있어서,
    상기 메타데이터는,
    상기 실제 URL;
    상기 실제 URL 에 위치된 컨텐츠의 유형;
    상기 실제 URL 에 위치된 상기 컨텐츠의 사이즈; 또는
    상기 실제 URL 에 위치된 상기 컨텐츠의 호스트
    중 적어도 하나를 포함하는, 짧은 URL 의 타겟과 관련된 메타데이터를 획득하는 방법.
  8. 제 1 항에 있어서,
    상기 실제 URL 에 위치된 컨텐츠를 상기 컨텐츠를 호스팅하는 컨텐츠 서버로부터 요청하는 단계; 및
    상기 컨텐츠 서버로부터 상기 컨텐츠를 수신하는 단계를 더 포함하는, 짧은 URL 의 타겟과 관련된 메타데이터를 획득하는 방법.
  9. 짧은 URL (uniform resource locator) 의 타겟을 확인하는 방법으로서,
    상기 짧은 URL 을 수신 (810) 하는 단계;
    상기 짧은 URL 에 기초하여 실제 URL 과 관련된 메타데이터를 획득 (820) 하는 단계;
    상기 메타데이터로부터 호스트 웹사이트를 추출 (830) 하는 단계;
    상기 실제 URL 이 상기 호스트 웹사이트를 가리키는지 여부를 결정 (840) 하는 단계; 및
    상기 결정하는 단계의 결과의 통지를 전송 (850) 하는 단계를 포함하는, 짧은 URL 의 타겟을 확인하는 방법.
  10. 제 9 항에 있어서,
    상기 짧은 URL 은 모바일 디바이스로부터 수신되고,
    상기 전송하는 단계는 상기 통지를 상기 모바일 디바이스로 전송하는 단계를 포함하는, 짧은 URL 의 타겟을 확인하는 방법.
  11. 제 9 항에 있어서,
    상기 수신하는 단계는, 모바일 디바이스에서 상기 짧은 URL 을 수신하는 단계를 포함하고,
    상기 전송하는 단계는, 상기 모바일 디바이스의 사용자 인터페이스 상에 상기 통지를 디스플레이하는 단계를 포함하는, 짧은 URL 의 타겟을 확인하는 방법.
  12. 짧은 URL (uniform resource locator) 의 타겟과 관련된 메타데이터를 획득하는 장치 (200A; 200B; 300; 505) 로서,
    상기 짧은 URL 을 서버 (415; 515) 로 송신 (520; 720) 하도록 구성된 로직;
    상기 서버로부터 응답을 수신 (530; 730) 하도록 구성된 로직으로서, 상기 응답은 실제 URL 에 대한 포인터를 포함하는, 상기 수신하도록 구성된 로직;
    상기 서버로부터 상기 실제 URL 과 관련된 메타데이터를 요청 (540; 740) 하도록 구성된 로직; 및
    상기 서버로부터 상기 실제 URL 에 대한 상기 메타데이터를 수신 (550; 750) 하도록 구성된 로직을 포함하는, 짧은 URL 의 타겟과 관련된 메타데이터를 획득하는 장치.
  13. 짧은 URL (uniform resource locator) 의 타겟을 확인하는 장치 (200A; 200B; 300; 505; 515) 로서,
    상기 짧은 URL 을 수신 (810) 하도록 구성된 로직;
    상기 짧은 URL 에 기초하여 실제 URL 과 관련된 메타데이터를 획득 (820) 하도록 구성된 로직;
    상기 메타데이터로부터 호스트 웹사이트를 추출 (830) 하도록 구성된 로직;
    상기 실제 URL 이 상기 호스트 웹사이트를 가리키는지 여부를 결정 (840) 하도록 구성된 로직; 및
    상기 결정의 결과의 통지를 전송 (850) 하도록 구성된 로직을 포함하는, 짧은 URL 의 타겟을 확인하는 장치.
  14. 장치 (200A; 200B; 300; 505; 515) 로서,
    제 1 항 내지 제 11 항 중 어느 한 항에 기재된 방법을 수행하는 수단을 포함하는, 장치.
  15. 컴퓨터 판독가능 매체를 포함하는 컴퓨터 프로그램 제품으로서,
    상기 컴퓨터 판독가능 매체가 통신 엔티티 (200A; 200B; 300; 505; 515) 로 하여금 제 1 항 내지 제 11 항 중 어느 한 항에 기재된 방법을 수행하게 하는 적어도 하나의 명령을 포함하는, 컴퓨터 프로그램 제품.
KR1020157014185A 2012-10-30 2013-10-28 짧은 url들에 액세스하기 위한 선제 프레임워크 KR20150080595A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/663,627 US20140122567A1 (en) 2012-10-30 2012-10-30 Preemptive framework for accessing short urls
US13/663,627 2012-10-30
PCT/US2013/067001 WO2014070632A2 (en) 2012-10-30 2013-10-28 A preemptive framework for accessing short urls

Publications (1)

Publication Number Publication Date
KR20150080595A true KR20150080595A (ko) 2015-07-09

Family

ID=49918806

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157014185A KR20150080595A (ko) 2012-10-30 2013-10-28 짧은 url들에 액세스하기 위한 선제 프레임워크

Country Status (6)

Country Link
US (1) US20140122567A1 (ko)
EP (1) EP2915073A2 (ko)
JP (1) JP6356136B2 (ko)
KR (1) KR20150080595A (ko)
CN (1) CN104769587A (ko)
WO (1) WO2014070632A2 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10177967B2 (en) * 2013-03-15 2019-01-08 Jesse Lakes Redirection service resource locator mechanism
CN104601736B (zh) * 2013-10-30 2018-10-23 腾讯科技(深圳)有限公司 一种短url服务的实现方法及装置
CN104717185B (zh) * 2013-12-16 2019-03-26 腾讯科技(北京)有限公司 短统一资源定位符的展示响应方法、装置、服务器和***
KR101670687B1 (ko) * 2014-12-17 2016-10-31 주식회사 케이티 메시지 전송 시스템, 방법 및 컴퓨터 프로그램
US10438261B2 (en) * 2014-12-30 2019-10-08 Ebay Inc. Marketplace listing generation using message metadata
CN106484720B (zh) * 2015-08-28 2019-07-23 北京奇虎科技有限公司 一种检测推广url的有效性的方法和装置
CN105808632B (zh) * 2015-12-22 2019-03-01 北京奇虎科技有限公司 链接生成方法和装置
CN106230788A (zh) * 2016-07-22 2016-12-14 上海斐讯数据通信技术有限公司 一种portal认证的重定向方法、无线接入设备、portal服务器
CN106548068A (zh) * 2016-10-31 2017-03-29 珠海市魅族科技有限公司 短网址信息显示***及方法
JP6504218B2 (ja) * 2017-09-15 2019-04-24 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理システム、制御方法、及びプログラム
WO2019089418A1 (en) * 2017-10-31 2019-05-09 Wood Michael C Computer security system and method based on user-intended final destination
CN110710158B (zh) * 2018-05-07 2022-08-09 谷歌有限责任公司 验证与数字助理应用交接的代理的操作状态
US11704380B1 (en) * 2020-06-17 2023-07-18 Amazon Technologies, Inc. Supply of image assets for presentation at a mobile device
JPWO2023032113A1 (ko) * 2021-09-02 2023-03-09

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6021435A (en) * 1996-03-13 2000-02-01 Sun Microsystems, Inc. Apparatus and method for displaying enhanced hypertext link anchor information regarding hypertext page availability and content
US6282548B1 (en) * 1997-06-21 2001-08-28 Alexa Internet Automatically generate and displaying metadata as supplemental information concurrently with the web page, there being no link between web page and metadata
US5974445A (en) * 1997-10-28 1999-10-26 International Business Machines Corporation Web browser which checks availability of hot links
US6360262B1 (en) * 1997-11-24 2002-03-19 International Business Machines Corporation Mapping web server objects to TCP/IP ports
US7155489B1 (en) * 2000-06-28 2006-12-26 Microsoft Corporation Acquiring web page information without commitment to downloading the web page
US7031968B2 (en) * 2000-12-07 2006-04-18 Prev-U Israel Ltd. Method and apparatus for providing web site preview information
JP4448623B2 (ja) * 2001-03-29 2010-04-14 セイコーエプソン株式会社 デジタルコンテンツ提供システム,デジタルコンテンツ提供方法,サーバ装置及びデジタルコンテンツ提供プログラム
US20030100320A1 (en) * 2001-10-31 2003-05-29 Peeyush Ranjan Efficient hyperlinks for transmitted hyperlinked information
US20030187806A1 (en) * 2002-03-28 2003-10-02 International Business Machines Corporation Calculating and displaying the cost of downloading web content
US6987987B1 (en) * 2002-07-03 2006-01-17 Sprint Spectrum L.P. Method and system for providing advanced notice of cost to access web content
JP2007504563A (ja) * 2003-09-04 2007-03-01 イーエムシー コーポレイション データメッセージミラーリングおよび宛て先変更
JP2005186473A (ja) * 2003-12-25 2005-07-14 Canon Inc 画像形成装置および方法
KR100619018B1 (ko) * 2004-05-12 2006-08-31 삼성전자주식회사 네트워크를 통하여 a/v 컨텐츠를 공유하는 방법, 싱크디바이스, 소오스 디바이스 및 메시지 구조
JPWO2006123399A1 (ja) * 2005-05-17 2008-12-25 三菱電機株式会社 メタデータ管理装置
US20070027971A1 (en) * 2005-07-26 2007-02-01 Sunil Marolia Device management network with notifications comprising multiple choice prompts
US7698269B2 (en) * 2005-11-29 2010-04-13 Yahoo! Inc. URL shortening and authentication with reverse hash lookup
TW200720931A (en) * 2005-11-30 2007-06-01 Benq Corp Systems, methods and machine-readable storage media for device or service management
US7620725B2 (en) * 2005-12-05 2009-11-17 About Us, Inc. Metadata collection within a trusted relationship to increase search relevance
US20070157261A1 (en) * 2005-12-15 2007-07-05 Ryan Steelberg Digital media management system and method
US8819539B1 (en) * 2007-12-03 2014-08-26 Appcelerator, Inc. On-the-fly rewriting of uniform resource locators in a web-page
US8490011B2 (en) * 2008-05-14 2013-07-16 At&T Intellectual Property I, L.P. Display of supplementary information on a graphical user interface
US20090290492A1 (en) * 2008-05-23 2009-11-26 Matthew Scott Wood Method and apparatus to index network traffic meta-data
US20100131528A1 (en) * 2008-11-26 2010-05-27 Gm Global Technology Operations, Inc. System and method for identifying attributes of digital media data
CN101547197B (zh) * 2009-04-30 2012-05-30 珠海金山软件有限公司 Url洗白装置和洗白方法
US8930805B2 (en) * 2009-07-24 2015-01-06 Bank Of America Corporation Browser preview
WO2011085562A1 (en) * 2010-01-18 2011-07-21 Hewlett-Packard Development Company, L.P. System and method for automatically extracting metadata from unstructured electronic documents
US8869271B2 (en) * 2010-02-02 2014-10-21 Mcafee, Inc. System and method for risk rating and detecting redirection activities
US20110289434A1 (en) * 2010-05-20 2011-11-24 Barracuda Networks, Inc. Certified URL checking, caching, and categorization service
US8630200B2 (en) * 2010-06-01 2014-01-14 Meltwater News International Holdings, GmbH Method and apparatus for embedding information in a short URL
US8381276B2 (en) * 2010-08-23 2013-02-19 Microsoft Corporation Safe URL shortening
US20120072835A1 (en) * 2010-09-20 2012-03-22 UberMedia, Inc. Microblog Client
US8560843B1 (en) * 2010-09-24 2013-10-15 Symantec Corporation Encrypted universal resource identifier (URI) based messaging
US8510368B2 (en) * 2010-10-20 2013-08-13 Mskynet Inc. Short URI payload-status systems and methods
US20120203929A1 (en) * 2011-02-03 2012-08-09 Kpi Global Technologies, Inc. Visual preview of shortened url
CN102111750A (zh) * 2011-02-25 2011-06-29 中兴通讯股份有限公司 一种实现内容下载的方法及***
US20130041876A1 (en) * 2011-08-08 2013-02-14 Paul Alexander Dow Link recommendation and densification
US8903953B2 (en) * 2011-09-27 2014-12-02 International Business Machines Corporation Event media file discovery
US20130238470A1 (en) * 2012-03-07 2013-09-12 Z:Wordz, LLC Substituting a user-defined word set in place of a formatted network resource address
US8924546B1 (en) * 2012-03-21 2014-12-30 Trend Micro Incorporated Roaming bandwidth guidance for mobile computing devices
KR20140028961A (ko) * 2012-08-31 2014-03-10 삼성전자주식회사 데이터 송수신 방법 및 그 전자 장치

Also Published As

Publication number Publication date
WO2014070632A3 (en) 2014-06-26
JP2016502177A (ja) 2016-01-21
JP6356136B2 (ja) 2018-07-11
WO2014070632A2 (en) 2014-05-08
US20140122567A1 (en) 2014-05-01
EP2915073A2 (en) 2015-09-09
CN104769587A (zh) 2015-07-08

Similar Documents

Publication Publication Date Title
JP6356136B2 (ja) 短縮urlにアクセスするためのプリエンプティブフレームワーク
US9344512B2 (en) Loading a re-directed web resource on a web browser of a client device in a communications system
US9258344B2 (en) Multi-hop single sign-on (SSO) for identity provider (IdP) roaming/proxy
US9306829B1 (en) Method and system for providing real-time end-user WiFi quality data
US10341810B2 (en) Geolocation compatibility for non-RCS devices
US10511973B2 (en) Personal virtual core networks
EP3178048B1 (en) Triggering a communicative action based on a client-determined relationship between proximate client devices
CN110999257B (zh) 用于服务器通知的递送的传送方法选择
US10104067B2 (en) Providing a masked short message service in a wireless network
KR20160142854A (ko) 서버를 통한 p2p-가능 클라이언트 디바이스들 간의 데이터의 선택적 교환
US8620315B1 (en) Multi-tiered anti-abuse registration for a mobile device user
EP3000219B1 (en) Access to data source via proxy
CN108370500B (zh) 无线装置的优化设置
US8989166B1 (en) Method and system for detection and correction of a WiFi login failure
CN107079052B (zh) 利用lte-d发现进行应用层上下文通信的高效群通信
US20240244018A1 (en) System and method for validation of representative links in messages

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid