JP6139030B2 - サードパーティ・キャプティブ・ポータル - Google Patents

サードパーティ・キャプティブ・ポータル Download PDF

Info

Publication number
JP6139030B2
JP6139030B2 JP2016524279A JP2016524279A JP6139030B2 JP 6139030 B2 JP6139030 B2 JP 6139030B2 JP 2016524279 A JP2016524279 A JP 2016524279A JP 2016524279 A JP2016524279 A JP 2016524279A JP 6139030 B2 JP6139030 B2 JP 6139030B2
Authority
JP
Japan
Prior art keywords
user
server
communication network
router
domain
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.)
Active
Application number
JP2016524279A
Other languages
English (en)
Other versions
JP2016532934A5 (ja
JP2016532934A (ja
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 JP2016532934A publication Critical patent/JP2016532934A/ja
Publication of JP2016532934A5 publication Critical patent/JP2016532934A5/ja
Application granted granted Critical
Publication of JP6139030B2 publication Critical patent/JP6139030B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/41User authentication where a single sign-on provides access to a plurality of computers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources

Description

本開示は、一般に、通信ネットワークに関する。
スマートフォン、タブレット・コンピュータ、またはラップトップ・コンピュータなどの、モバイル・コンピューティング・デバイスは、GPS受信機、コンパス、またはジャイロスコープなど、そのロケーション、方位、または向きを決定するための機能を含むことができる。そのようなデバイスは、BLUETOOTH(登録商標)通信、近距離無線通信(NFC)、もしくは赤外線(IR)通信、または無線ローカル・エリア・ネットワーク(WLAN)もしくはセルラ電話ネットワークとの通信などの、無線通信のための機能も含むことができる。そのようなデバイスは、1つまたは複数のカメラ、スキャナ、タッチ・スクリーン、マイクロフォン、またはスピーカも含むことができる。モバイル・コンピューティング・デバイスは、また、ゲーム、ウェブ・ブラウザ、またはソーシャル・ネットワーキング・アプリケーションなどの、ソフトウェア・アプリケーションを実行することができる。ソーシャル・ネットワーキング・アプリケーションを用いて、ユーザは、ソーシャル・ネットワーク内の他のユーザと接続し、通信し、情報を共有することができる。
ソーシャル・ネットワーキング・システムに関連付けられている例示的なネットワーク環境を示す図。 例示的な通信ネットワークの一例を示す図。 例示的なモバイル・コンピューティング・デバイスを示す図。 通信ネットワークのキャプティブ・ポータル挙動を変更するための例示的なステート・マシーンを示す図。 通信ネットワークのキャプティブ・ポータル挙動を変更するための例示的な方法を示す図。 特定のドメインによって管理されている通信ネットワークに接続するための例示的な方法を示す図。 例示的なソーシャル・グラフを示す図。 例示的なコンピューティング・システムを示す図。
特定の実施形態では、通信ネットワークにログオンしたときの、キャプティブ・ポータル検出ダイアログ・プロセスのデフォルトの挙動は、変更され得る。例示的な方法は、通信ネットワークへの接続を求めるモバイル・コンピューティング・デバイスによる要求を含むことができる。たとえば、キャプティブ・ポータルは、モバイル・コンピューティング・デバイスが、キャプティブ・ポータルのウェブ・ビューに対応する特定のURLまたはIPアドレスに要求を行うことができるようにモバイル・コンピューティング・デバイスを向けることができる。通信ネットワークのルータは、モバイル・コンピューティング・デバイスからの要求がインターネットに到達することを阻止し、モバイル・コンピューティング・デバイスによって送信された要求を、特定のドメインに関連付けられた特定のURLまたはIPアドレスにリダイレクトすること、たとえば、HTTP302リダイレクトなどを行うことができる。モバイル・コンピューティング・デバイスは、ユーザを認証するように構成されたネットワーク・リソースと直接的に通信するために、リダイレクトに従うことができる。特定の実施形態では、ルータは、ルータとモバイル・コンピューティング・デバイスとの間の通信に応答して、通信ネットワークへのアクセスを提供する
。たとえば、クッキを伴うウェブ・ブラウザ上での証明書(たとえば、SAFARI)は、サードパーティ通信ネットワーク、たとえば、WI−FIへのログオンをユーザに許可することができる。別の例として、キャプティブ・ポータルのウェブ・ビューは、特定のURLまたはウェブサイト、たとえば、FACEBOOK.comにユーザを向けるように「リンク化」され得る。
図1は、ソーシャル・ネットワーキング・システムに関連付けられている例示的なネットワーク環境100を示す。ネットワーク環境100は、互いにネットワーク110によって接続されたユーザ101、クライアント・システム130、ソーシャル・ネットワーキング・システム160、およびサードパーティ・システム170を含む。図1は、ユーザ101、クライアント・システム130、ソーシャル・ネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110の特定の構成を示すが、この開示は、ユーザ101、クライアント・システム130、ソーシャル・ネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110の任意の好適な構成を企図する。限定するものとしてではなく一例として、クライアント・システム130、ソーシャル・ネットワーキング・システム160、およびサードパーティ・システム170の2以上は、ネットワーク110をバイパスして互いに直接的に接続されてもよい。別の例として、クライアント・システム130、ソーシャル・ネットワーキング・システム160、およびサードパーティ・システム170の2以上が、全体として、または部分的に互いに物理的に、または論理的に同じ場所にあってもよい。さらに、図1は、特定の数のユーザ101、クライアント・システム130、ソーシャル・ネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110を示すが、この開示は、任意の好適な数のユーザ101、クライアント・システム130、ソーシャル・ネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110を企図する。限定するものとしてではなく一例として、ネットワーク環境100は、複数のユーザ101、クライアント・システム130、ソーシャル・ネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110を含んでもよい。
特定の実施形態では、ユーザ101は、ソーシャル・ネットワーキング・システム160と、またはソーシャル・ネットワーキング・システム160を通じて対話、すなわち通信する個人(人間のユーザ)、エンティティ(たとえば、企業、事業者、またはサードパーティ・アプリケーション)、または(たとえば、個人またはエンティティの)グループであってよい。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、オンライン・ソーシャル・ネットワークをホストするネットワークアドレス指定可能なコンピューティング・システムであってよい。ソーシャル・ネットワーキング・システム160は、たとえばユーザプロフィール・データ、コンセプトプロフィール・データ、ソーシャル・グラフ情報、またはオンライン・ソーシャル・ネットワークに関係する他の好適なデータなど、ソーシャル・ネットワーキング・データを生成、記憶、受信、および送信する。ソーシャル・ネットワーキング・システム160は、ネットワーク環境100の他の構成要素によって、直接的に、またはネットワーク110を通じてアクセスされてもよい。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、ユーザ101がたとえば適切なプライバシ設定を設定することによってなど、自分達のアクションをソーシャル・ネットワーキング・システム160によって記録させる、または他のシステム(たとえば、サードパーティ・システム170)と共有させることについてオプトインまたはオプトアウトすることを可能にする認可サーバ(または他の適切な構成要素)を含んでもよい。ユーザのプライバシ設定は、そのユーザに関連付けられているどの情報が記録されるか、そのユーザに関連付けられている情報がどのように記録されるか、そのユーザに関連付けられている情報がいつ記録されるか、そのユーザに関連付けられている情報を誰が記録するか、そのユーザに関連付けられている情報が誰と共有されるか、およ
びそのユーザに関連付けられている情報が何の目的で記録され共有されるかを決定することができる。認可サーバは、ブロッキング、データのハッシュ化、匿名化、または他の適切な技術を通じて、ソーシャル・ネットワーキング・システム30のユーザの1以上のプライバシ設定を適切に実施するために用いられる。特定の実施形態では、サードパーティ・システム170は、ネットワークアドレス指定可能なコンピューティング・システムであってよい。サードパーティ・システム170は、ネットワーク環境100の他の構成要素によって、直接的に、またはネットワーク110を通じてアクセスされてもよい。特定の実施形態では、1または複数のユーザ101が1または複数のクライアント・システム130を使用し、ソーシャル・ネットワーキング・システム160またはサードパーティ・システム170にアクセスし、データを送り、それらからデータを受信してもよい。クライアント・システム130は、ソーシャル・ネットワーキング・システム160またはサードパーティ・システム170に直接的に、ネットワーク110を通じて、またはサードパーティ・システムを通じてアクセスしてもよい。限定するものとしてではなく一例として、クライアント・システム130は、サードパーティ・システム170にソーシャル・ネットワーキング・システム160を通じてアクセスしてもよい。クライアント・システム130は、たとえばパーソナル・コンピュータ、ラップトップ・コンピュータ、携帯電話、スマートフォン、またはタブレット・コンピュータなど、任意の好適なコンピューティング・デバイスであってよい。
この開示は、任意の好適なネットワーク110を企図する。限定するものとしてではなく一例として、ネットワーク110の1または複数の部分は、アドホック・ネットワーク、イントラネット、エクストラネット、仮想プライベート・ネットワーク(VPN)、ローカル・エリア・ネットワーク(LAN)、無線LAN(WLAN)、ワイド・エリア・ネットワーク(WAN)、無線WAN(WWAN)、メトロポリタン・エリア・ネットワーク(MAN)、インターネットの一部分、公衆交換電話網(PSTN)の一部分、携帯電話ネットワーク、またはこれらの2以上の組合せを含んでもよい。ネットワーク110は、1または複数のネットワーク110を含んでもよい。
リンク150は、クライアント・システム130、ソーシャル・ネットワーキング・システム160、およびサードパーティ・システム170を通信ネットワーク110に、または互いに接続する。この開示は、任意の好適なリンク150を企図する。特定の実施形態では、1または複数のリンク150は、1または複数の有線(たとえば、デジタル加入者線(DSL)またはDOCSIS(Data Over Cable Service
Interface Specification)など)、無線(たとえば、Wi−FiまたはWiMAX(Worldwide interoperability for Microwave Access)など)、または光(たとえば、同期光ネットワーク(SONET)または同期デジタル・ハイアラーキ(SDH)など)リンクを含む。特定の実施形態では、1または複数のリンク150は、それぞれ、アドホック・ネットワーク、イントラネット、エクストラネット、VPN、LAN、WLAN、WAN、WWAN、MAN、インターネットの一部分、PSTNの一部分、セルラ技術ベースのネットワーク、衛星通信技術ベースのネットワーク、別のリンク150、または2以上のそのようなリンク150の組合せを含む。リンク150は、必ずしもネットワーク環境100全体を通じて同じであることを必要としない。1または複数の第1のリンク150は、1または複数の点で1または複数の第2のリンク150と異なってもよい。
特定の実施形態では、通信ネットワーク110は、クライアント・システム130のユーザ101が、一般に、支払い情報、もしくはログインもしくはパスワード証明書を入力することを通して、またはネットワーク管理者のサービス利用規約に同意することを通して、認証を実行するまで、インターネット(または他の通信ネットワーク110)へのアクセスを妨げる、ウェブ・ポータルまたは「キャプティブ・ポータル」を、ネットワーク
・リソース(たとえば、ゲートウェイまたはサーバ)においてホストすることができる。本明細書では、インターネットへのアクセスについての言及は、たとえば、インターネットのセカンド・レベル・ドメイン(SLD)(たとえば、www.FACEBOOK.com)など、任意の適切なドメインへのユーザ・エージェントを通したアクセスにも当てはまり得る。キャプティブ・ポータル技法は、インターネットへのアクセスを提供する前に、通信ネットワーク110に接続されるユーザ・エージェント(たとえば、ハイパー・テキスト転送プロトコル(HTTP)クライアント)が、ネットワーク・アクセス・ページを(通常は認証目的で)強制的に提示されるようにすることができる。キャプティブ・ポータルは、クライアント・システム130上で実行されるユーザ・エージェント(たとえば、ウェブ・ブラウザ)を、認証デバイスに変えることができる。限定ではなく、例として、キャプティブ・ポータル認証プロセスは、ユーザ101が、たとえば、ウェブ・ブラウザなどの、ユーザ・エージェントを開き、インターネットへのアクセスを試みるまで、クライアント・システム130によって送信されるすべてのデータ・パケットを、アドレスまたはポートに関係なく、インターセプトすることによって実行され得る。その時、クライアント・システム130のユーザ・エージェントは、認証もしくは支払いを要求することができる、またはユーザ101が同意しなければならない利用規定を表示する、特定のネットワーク・アクセス・ページにリダイレクトされ得る。認証が成功するまで、クライアント・システム130は、キャプティブ・ポータルの「ウォールド・ガーデン」内に「閉じ込められ」得る。キャプティブ・ポータルは、WI−FIホットスポットにおいて使用され、(たとえば、アパート、ホテルの部屋、ビジネス・センタ、または「オープン」イーサネット(登録商標)・ジャックにおいて)有線アクセスを制御するためにも同様に使用され得る。キャプティブ・ポータルは、HTTPリダイレクト、インターネット・プロトコル(IP)リダイレクト、およびドメイン・ネーム・サーバ(DNS)リダイレクトなど、多種多様なパケット・インターセプト技法を使用することができる。
特定の実施形態では、クライアント・システム130は、ハードウェア、ソフトウェア、または埋め込み論理要素もしくは2つ以上のそのような要素の組合せを含み、クライアント・システム130によって実装またはサポートされる適切な機能を実施することが可能な、電子デバイスである。限定ではなく、例として、クライアント・システム130は、デスクトップ・コンピュータ、ノートブックもしくはラップトップ・コンピュータ、ネットブック、タブレット・コンピュータ、電子書籍リーダ、全地球測位システム(GPS)デバイス、カメラ、携帯情報端末(PDA)、ハンドヘルド電子デバイス、セルラ電話、スマートフォン、他の適切な電子デバイス、またはそれらの任意の適切な組合せなどの、コンピュータ・システムを含むことができる。本開示は、任意の適切なクライアント・システム130を企図している。クライアント・システム130は、クライアント・システム130のネットワーク・ユーザが、ネットワーク110にアクセスすることを可能にすることができる。クライアント・システム130は、ユーザ101が、他のクライアント・システム130の他のユーザと通信することを可能にすることができる。
特定の実施形態では、クライアント・システム130は、MICROSOFT INTERNET EXPLORER、GOOGLE CHROME、またはMOZILLA FIREFOXなどの、ウェブ・ブラウザ132を含むことができ、TOOLBARまたはYAHOO TOOLBARなどの、1つまたは複数のアドオン、プラグイン、または他の拡張を有することができる。クライアント・システム130のユーザは、ユニフォーム・リソース・ロケータ(URL)または他のアドレスを入力して、ウェブ・ブラウザ132を、(ソーシャル・ネットワーキング・システム160のサーバ、またはサードパーティ・システム170に関連付けられているサーバなど)特定のサーバに向けられることができ、ウェブ・ブラウザ132は、HTTP要求を生成し、HTTP要求をサーバに伝達することができる。サーバは、HTTP要求を受け入れ、HTTP要求に応答して、クライアント・システム130に、1つまたは複数のハイパー・テキスト・マークアップ言
語(HTML)ファイルを伝達することができる。クライアント・システム130は、ユーザ101に提示するために、サーバからのHTMLファイルに基づいて、ウェブページをレンダリングすることができる。上で説明されたように、ウェブページは、キャプティブ・ポータルに関連付けられているネットワーク・アクセス・ページである。本開示は、任意の適切なウェブページ・ファイルを企図している。限定ではなく、例として、ウェブページは、特定の必要に従って、HTMLファイル、拡張HTML(XHTML)ファイル、または拡張マークアップ言語(XML)ファイルからレンダリングすることができる。そのようなページは、また、たとえば、限定することなしに、JAVASCRIPT、JAVA(登録商標)、MICROSOFT SILVERLIGHT、およびAJAX(非同期JAVASCRIPTおよびXML)などのマークアップ言語とスクリプトの組合せなどで記述されたものなどの、スクリプトを実行することができる。本明細書では、適切である場合は、ウェブページについての言及は、(ブラウザがウェブページをレンダリングするために使用することができる)1つまたは複数の対応するウェブページ・ファイルを包含し、その逆も成り立つ。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、たとえば、サーバなどの、1つまたは複数のネットワーク・リソースを含むことができる。各サーバは、単一のサーバであることができ、または複数のコンピュータもしくは複数のデータセンタにまたがる分散サーバである。サーバは、たとえば、限定することなしに、ウェブ・サーバ、ニュース・サーバ、メール・サーバ、メッセージ・サーバ、広告サーバ、ファイル・サーバ、アプリケーション・サーバ、交換サーバ、データベース・サーバ、プロキシ・サーバ、本明細書で説明される機能もしくはプロセスを実行することに適した別のサーバ、またはそれらの任意の組合せなど、さまざまなタイプに属することができる。特定の実施形態では、各サーバは、サーバによって実装またはサポートされる適切な機能を実施するための、ハードウェア、ソフトウェア、または埋め込み論理要素もしくは2つ以上のそのような要素の組合せを含むことができる。
特定の実施形態では、広告は、1つもしくは複数のウェブページ上に、1つもしくは複数の電子メール内に、またはユーザ101によって要求されたサーチ結果と関連して提示される、(HTMLリンクを貼られ得る)テキスト、(HTMLリンクを貼られ得る)1つもしくは複数の画像、1つもしくは複数の映像、オーディオ、1つもしくは複数のADOBEフラッシュ・ファイル、これらの適切な組合せ、または任意の適切なデジタル形式の他の任意の適切な広告である。加えて、または代替として、広告は、1つまたは複数のスポンサ付きのストーリ(たとえば、ソーシャル・ネットワーキング・システム160上のニュース・フィードまたはティッカ・アイテム)である。スポンサ付きのストーリは、広告主が、たとえば、ソーシャル・アクションを、ユーザ101のプロファイル・ページもしくは他のページの事前決定された領域内に提示してもらうこと、広告主に関連付けられている追加情報とともに提示してもらうこと、他のユーザのニュース・フィードもしくはティッカ内でランクアップもしくは他の方法で強調してもらうこと、または他の方法で昇格してもらうことによって、昇格する、ユーザ101によるソーシャル・アクション(ページに対して「いいね!」を表明すること、ページ上の投稿に対して「いいね!」を表明すること、もしくはコメントすること、ページに関連付けられているイベントへの出欠の返事を出すこと、ページ上に投稿された質問に投票すること、ある場所にチェックインすること、アプリケーションを使用すること、もしくはゲームをプレイすること、またはウェブサイトに対して「いいね!」を表明すること、もしくはウェブサイトを共有することなどの)であってもよい。広告主は、ソーシャル・アクションを昇格してもらうために、支払いを行うことができる。限定ではなく、例として、広告は、サーチ結果ページのサーチ結果の間に含まれることができ、スポンサ付きのコンテンツは、スポンサ付きでないコンテンツよりも優先して昇格される。
特定の実施形態では、広告は、ソーシャル・ネットワーキング・システムのウェブページ、サードパーティのウェブページ、または他のページ内に表示するために要求され得る。広告は、ページの上部のバナー領域内、ページの側部のカラム内など、ページの専用部分内に、ページのグラフィカル・ユーザ・インタフェース(GUI)内に、ポップアップ・ウィンドウ内に、ドロップダウン・メニュー内に、ページの入力フィールド内に、ページのコンテンツの上部を覆って、またはページに関する別の場所に表示され得る。加えて、または代替として、広告は、アプリケーション内に表示され得る。広告は、専用ページ内に表示されて、ユーザ101がページにアクセスすること、またはアプリケーションを利用することができる前に、広告と対話すること、または広告を見ることをユーザに要求することができる。ユーザ101は、たとえば、ウェブ・ブラウザを通して、広告を見ることができる。
ユーザ101は、任意の適切な方法で、広告と対話することができる。ユーザ101は、広告をクリックすること、または他の方法で選択することができる。広告を選択することによって、ユーザ101(ユーザによって使用されているブラウザまたは他のアプリケーション)は、広告に関連付けられているページに向けられ得る。広告に関連付けられているページにおいて、ユーザ101は、広告に関連付けられている製品もしくはサービスを購入すること、広告に関連付けられている情報を受け取ること、または広告に関連付けられているニュースレターを定期購読することなど、追加のアクションを取ることができる。オーディオまたは映像を伴う広告は、(「再生ボタン」など)広告の構成要素を選択することによって、再生され得る。代替として、広告を選択することによって、ソーシャル・ネットワーキング・システム160は、ユーザの特定のアクションを実行または変更することができる。
広告は、ユーザ101が対話することができる、ソーシャル・ネットワーキング・システム機能も含むことができる。限定ではなく、例として、広告は、ユーザ101が、支持に関連付けられているアイコンまたはリンクを選択することによって、広告に対して「いいね!」を表明すること、または他の方法で支持することを可能にすることができる。別の例として、限定することなしに、広告は、ユーザ101が、広告主に関連するコンテンツを(たとえば、問い合わせを実行することによって)サーチすることを可能にすることができる。同様に、ユーザ101は、(たとえば、ソーシャル・ネットワーキング・システム160を通して)別のユーザと広告を共有すること、または(たとえば、ソーシャル・ネットワーキング・システム160を通して)広告に関連付けられているイベントへの出欠の返事を出すことができる。加えて、または代替として、広告は、ユーザ101向けのソーシャル・ネットワーキング・システムにおける状況も含むことができる。限定ではなく、例として、広告は、広告の対象に関連付けられているアクションを取った、ソーシャル・ネットワーキング・システム160内のユーザの友人についての情報を表示することができる。
以下で説明されるように、ユーザ101は、通信ネットワーク110を所有するエンティティ(たとえば、企業)と無関係なエンティティ(たとえば、ソーシャル・ネットワーキング・システム160)によって管理されている、通信ネットワーク110のルータを通して、ユーザ101のアクティビティに少なくとも部分的に基づいて、エンティティ(たとえば、企業)の地理的ロケーションにおいて自動的に「チェックイン」させられ得る。特定の実施形態では、通信ネットワーク110を所有するエンティティは、通信ネットワーク110を通して地理的ロケーションにおいて「チェックイン」するユーザ101に、付け値または割引を提供することができる。限定ではなく、例として、ソーシャル・ネットワーキング・システム160は、通信ネットワーク110を管理することができ、通信ネットワーク110を所有する企業が上で説明された広告を無料で行うことを提供することができる。さらに、支払いは、ユーザ101に広告を送信したことと、その後でユー
ザ101が通信ネットワーク110を通して地理的ロケーションにおいて「チェックイン」したこととに少なくとも部分的に基づいて、企業によってソーシャル・ネットワーキング・システム160に対して行われ得る。特定の実施形態では、その後で地理的ロケーションにおいて「チェックイン」したユーザ101は、広告を読んだことから企業の顧客になることへのコンバージョンを示す標識であることができ、ユーザ101が物理的に地理的ロケーションに存在することの証拠を提供することができる。
図2は、例示的な通信ネットワークの一例を示している。特定の実施形態では、コンピュータ・システムによって管理される通信ネットワーク110は、1つまたは複数のルータ50を含むことができる。図2は、クライアント・システムおよびルータの特定の配置を用いた、特定の通信ネットワークを説明し、図示しているが、本開示は、ルータおよびクライアント・システムの任意の適切な配置を用いた、任意の適切な通信ネットワークを企図している。限定ではなく、例として、通信ネットワーク110を管理するコンピュータ・システムは、コンピューティング、ストレージ、ネットワーキング、またはそれらの任意の組合せのための1つまたは複数の要素を含むことができる、コンピューティング・インフラストラクチャおよびプラットフォームである。特定の実施形態では、通信ネットワーク110を管理するコンピュータ・システムは、通信ネットワーク110を所有する特定のエンティティと無関係である。限定ではなく、例として、通信ネットワーク110は、たとえば、WI−FIネットワークなどの、LANであることができ、通信ネットワーク110のルータ50は、たとえば、企業などの、特定のエンティティに関連付けられている地理的ロケーションに配置され得る。
たとえば、インターネットなどの、WANへのアクセスは、通信ネットワーク110を通して、1つまたは複数のクライアント・システム130に提供され得る。限定ではなく、例として、1つまたは複数のクライアント・システム130は、たとえば、ボインゴ(BOINGO)などによって管理されている、たとえば、空港当局などの特定のエンティティの、通信ネットワーク110のルータ50を通して、インターネットにアクセスすることができる。別の例として、特定のエンティティは、たとえば、上で説明されたソーシャル・ネットワーキング・システムなど、特定のエンティティに対応する特定のSLDに対応することができる。通信ネットワーク110へのアクセスは、クライアント・システム130を通して通信ネットワーク110に接続するときに、ユーザがログオン手順を実行したことに応答して、提供され得る。限定ではなく、例として、ログオン手順は、上で説明されたネットワーク・アクセス・ページを通した、ログイン・コードの取得、ユーザに関連付けられている電子メール・アドレスの提供、特定のエンティティに関連付けられている地理的ロケーションにおける「チェックイン」の実行、またはそれらの任意の組合せを含むことができる。特定の実施形態では、クライアント・システム130のユーザ・エージェントは、クライアント・システム130を通して通信ネットワーク110に接続したことに応答して、たとえば、ソーシャル・ネットワーキング・システムなどの、コンピュータ・システムのネットワーク・リソース(たとえば、サーバ)に向けられ得る。限定ではなく、例として、ユーザ・エージェントは、たとえば、ウェブ・ブラウザまたは電子メール・クライアントなど、ユーザのために動作することができるソフトウェア・クライアントである。
上で説明されたように、クライアント・システム130を接続することは、通信ネットワーク110のキャプティブ・ポータルを通して実行され得る。特定の実施形態では、通信ネットワーク110への接続に関連付けられているダイアログ・プロセスのデフォルト挙動は、ネットワーク管理者によって変更され得る。通信ネットワーク110に接続するクライアント・システム130は、接続を許可するように求める要求を、ルータ50のうちの1つに送信することができる。限定ではなく、例として、要求は、インターネットを通してアクセス可能な特定のURLへのHTTP要求である。さらに、要求は、クライア
ント・システム130上で実行されるユーザ・エージェント(たとえば、ウェブ・ブラウザ)を通して送信され得る。上で説明されたように、通信ネットワーク110のルータ50は、HTTP要求を、キャプティブ・ポータルの「ウォールド・ガーデン」内に閉じ込めることができる。WI−FI接続が、キャプティブ・ポータルとして機能していること(たとえば、キャプティブ・ポータルのウォールド・ガーデン内に閉じ込められていること)を検出すると、クライアント・システム130は、キャプティブ・ポータルのネットワーク・アクセス・ページを含むウェブ・ビューを起動することができる。特定の実施形態では、通信ネットワーク110のルータ50は、以下で説明されるように、アプリケーションまたはウェブ・ブラウザによってチェックされる、たとえば、特定のIPアドレスまたはURLなどの、特定のエンドポイントへの参照を含むことができる。限定ではなく、例として、クライアント・システム130は、以下で説明されるように、通信ネットワークの特定のドメインへのアクセスを提供するように構成されたネットワーク・リソースのIPアドレスまたはURLに向けられたHTTP要求に少なくとも部分的に基づいて、通信ネットワーク110に接続され得る。
図3は、例示的なモバイル・コンピューティング・デバイスを示している。特定の実施形態では、上で説明されたクライアント・システムは、モバイル・コンピューティング・デバイス10である。本開示は、任意の適切な物理的形態を取るモバイル・コンピューティング・デバイス10を企図している。特定の実施形態では、モバイル・コンピューティング・デバイス10は、以下で説明されるようなコンピューティング・システムである。限定ではなく、例として、モバイル・コンピューティング・デバイス10は、(たとえば、コンピュータ・オン・モジュール(COM)もしくはシステム・オン・モジュール(SOM)などの)シングルボード・コンピュータ・システム(SBC)、ラップトップもしくはノートブック・コンピュータ・システム、モバイル電話、スマートフォン、携帯情報端末(PDA)、タブレット・コンピュータ・システム、またはこれらのうちの2つ以上の組合せである。特定の実施形態では、モバイル・コンピューティング・デバイス10は、入力要素として、タッチ・センサ12を有することができる。図3の例では、タッチ・センサ12は、モバイル・デバイス10の前面上に組み込まれる。容量性タッチ・センサの場合、送信および受信の2つのタイプの電極が存在し得る。これらの電極は、電気的パルスを用いて送信電極を駆動し、タッチまたは近接入力によって引き起こされた受信電極からの容量の変化を測定するように設計された、コントローラに接続され得る。図3の例では、1つまたは複数のアンテナ14A〜14Bは、モバイル・コンピューティング・デバイス10の1つまたは複数の側面内に組み込まれ得る。アンテナ14A〜14Bは、電流を無線波に、また無線波を電流に変換する要素である。信号の送信中、送信機は、振動する無線周波数(RF)電流をアンテナ14A〜14Bの端子に印加し、アンテナ14A〜14Bは、印加された電流のエネルギーを電磁(EM)波として放射する。信号の受信中、アンテナ14A〜14Bは、到来したEM波の電力を、アンテナ14A〜14Bの端子における電圧に変換する。電圧は、増幅のために、受信機に送信され得る。
モバイル・コンピューティング・デバイス10は、イーサネットもしくは他の有線ベースのネットワーク、もしくは無線NIC(WNIC)と通信するための、アンテナ14A〜14Bに結合された通信要素、たとえば、WI−FIネットワークなどの、無線ネットワークと通信するための無線アダプタ、または第3世代移動通信(3G)もしくはロング・ターム・エボリューション(LTE)ネットワークなどの、セルラ・ネットワークと通信するためのモデムを含むことができる。本開示は、任意の適切な通信ネットワーク、およびそれのための任意の適切な通信要素を企図している。限定ではなく、例として、モバイル・コンピューティング・デバイス10は、アドホック・ネットワーク、パーソナル・エリア・ネットワーク(PAN)、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、メトロポリタン・エリア・ネットワーク(MAN)、もしくはインターネットの1つもしくは複数の部分、またはこれらのうちの2つ以上の
組合せと通信することができる。これらのネットワークのうちの1つまたは複数の、1つまたは複数の部分は、有線または無線である。別の例として、モバイル・コンピューティング・デバイス10は、(たとえば、BLUETOOTH WPANなどの)無線PAN(WPAN)、WI−FIネットワーク、WI−MAXネットワーク、(たとえば、移動通信用グローバルシステム(GSM(登録商標))、3G、もしくはLTEネットワークなどの)セルラ電話ネットワーク、もしくは他の適切な無線ネットワーク、またはこれらのうちの2つ以上の組合せと通信することができる。モバイル・コンピューティング・デバイス10は、適切である場合は、これらのネットワークのうちのいずれかのための任意の適切な通信要素を含むことができる。
限定ではなく、例として、モバイル・コンピューティング・デバイス10は、モバイル・コンピューティング・デバイス10のオペレーティング・システム(OS)の構成パイプラインのプロセスを実行することによって、通信ネットワーク(たとえば、WI−FIネットワーク)に接続することができる。特定の実施形態では、構成パイプラインは、無線接続を構成するためのプロセスをサポートすることができ、無線接続を構成することを担うばかりでなく、特定の通信ネットワークに関連付けられているキャプティブ・ポータル・プロンプトのキャプチャを行い、実行することも担う、いくつかのプロセスを含むことができる。たとえば、構成パイプラインは、以前に使用された認証証明書またはクッキを記憶するスマート・クライアントを含むことができる。特定の実施形態では、構成パイプラインは、国際ローミング・アクセス・プロトコル(IRAP)を実装するプロセスを含むことができる。限定ではなく、例として、モバイル・コンピューティング・デバイス10のユーザ・エージェントは、通信ネットワークのルータのキャプティブ・ネットワーク・サポートに、HTTP要求を送信することができる。上で説明されたように、ネットワーク・アクセス・ページは、通信ネットワークのルータとの接続を確立したときに、モバイル・コンピューティング・デバイス10のディスプレイ上でユーザに提示され得る。特定の実施形態では、モバイル・コンピューティング・デバイス10は、たとえば、WI−FIネットワークなどの、通信ネットワークにアクセスするために、モバイル・コンピューティング・デバイス10上で実行される、たとえば、ウェブ・ブラウザまたはネイティブ・アプリケーションなどの、ユーザ・エージェントを利用することができる。特定の実施形態では、ネットワーク・アクセス・ページは、ネットワーク・アクセスが、通信ネットワークを管理するコンピュータ・システム(たとえば、ソーシャル・ネットワーキング・システム)を通して達成されたことを示す情報を含むことができる。
特定の実施形態では、通信ネットワークを管理するコンピュータ・システムは、上で説明された、デフォルトのキャプティブ・ポータル挙動を変更することができる。上で説明されたように、WANを通して特定のSLDにアクセスするために、HTTP要求が、モバイル・コンピューティング・デバイス10のユーザ・エージェントによって、キャプティブ・ポータルに送信され得る。限定ではなく、例として、HTTP要求は、モバイル・コンピューティング・デバイス10のブラウザのタイプを識別するユーザ・エージェント・ストリング(たとえば、SAFARI)を含むことができる。別の例として、HTTP要求は、URLまたはインターネット・プロトコル(IP)アドレスを含むことができる。特定の実施形態では、モバイル・コンピューティング・デバイス10からのHTTP要求は、キャプティブ・ポータルのデフォルトのネットワーク・リソースから、たとえば、上で説明されたようなSLDなどの、特定のドメインへのアクセスを提供するように構成されたネットワーク・リソースにリダイレクトされ得る。限定ではなく、例として、リダイレクションは、HTTPステータス・コードの302リダイレクトを通して実行され得る。特定の実施形態では、特定のドメインのネットワーク・リソースは、たとえば、ログインもしくはパスワード証明書を提供すること、またはネットワーク管理者のサービス利用規約に同意することなど、キャプティブ・ポータル挙動の要件をエミュレートするための入力を、自動的に、またユーザ入力を用いずに、提供することができる。限定ではなく
、例として、特定のドメインのネットワーク・リソースは、特定のドメインに関連付けられている、モバイル・コンピューティング・デバイス10上に記憶された1つまたは複数のクッキにアクセスすることができる。さらに、通信ネットワークを管理するコンピュータ・システムは、ルータのキャプティブ・ネットワーク・サポートをバイパスして、通信ネットワークの特定のドメインにユーザを接続することができる。
上で説明されたように、モバイル・コンピューティング・デバイス10は、モバイル・コンピューティング・デバイス10上で実行されるアプリケーションを通して、通信ネットワークの、たとえば、www.FACEBOOK.comなどの、特定のドメインに接続することができる。特定の実施形態では、アプリケーションは、たとえば、ソーシャル・ネットワーキング・システムなどの、通信ネットワークの特定のドメインとの間の対話を容易にするように構成され得る。特定の実施形態では、アプリケーションは、通信ネットワークの特定のネットワーク・リソースに(たとえば、HTTP要求を通して)送信されているデータが、通信ネットワークのルータのキャプティブ・ポータルによってインターセプトされていることを検出することができる。さらに、アプリケーションは、通信ネットワークが、特定のドメイン(たとえば、ソーシャル・ネットワーキング・システム)によって管理されているかどうかを決定することができる。特定の実施形態では、アプリケーションは、アプリケーションに関連付けられている特定のドメインに対してユーザを認証するように構成された、特定のドメインのネットワーク・リソースの特定のIPアドレスまたはURLを含むことができる、要求(たとえば、HTTP要求)を生成することができる。特定の実施形態では、モバイル・コンピューティング・デバイス10のアプリケーションは、要求をネットワーク・リソースのIPアドレスまたはURLに送信することができ、たとえば、HTTPステータス・コードの200など、成功コードをルータが返したことに応答して、通信ネットワークへの接続が確立される。限定ではなく、例として、アプリケーションは、認証ネットワーク・リソースのIPアドレスへのHTTP要求と、アプリケーションが特定のドメインのネットワーク・リソースと対話している(たとえば、ログオンされている)ことを示す標識(たとえば、記憶されたクッキ)とに少なくとも部分的に基づいて、通信ネットワークを通して、特定のドメインのネットワーク・リソースに接続され得る。たとえば、モバイル・コンピューティング・デバイス10は、ソーシャル・ネットワーキング・システムの認証サーバのIPアドレスまたはURLにHTTP要求を送信するモバイル・コンピューティング・デバイス10のネイティブ・アプリケーションと、ソーシャル・ネットワーキング・システムにログオンされているモバイル・コンピューティング・デバイス10のアプリケーションとに基づいて、ソーシャル・ネットワーキング・システムによって管理されている通信ネットワークを通して、インターネットへのアクセスを受け取ることができる。
特定の実施形態では、特定のドメインのネットワーク・リソースは、通信ネットワークへの接続をモバイル・コンピューティング・デバイス10に提供するルータのIPアドレスに少なくとも部分的に基づいて、モバイル・コンピューティング・デバイスが、特定の地理的ロケーションに配置されていることを決定することができる。限定ではなく、例として、ユーザは、ネイティブ・アプリケーションを通して、通信ネットワークに関連付けられている地理的ロケーションにおいて、ソーシャル・ネットワーキング・システム上に手動で「チェックイン」することができる。別の例として、通信ネットワークを管理するコンピュータ・システムは、特定のドメインによって管理されている通信ネットワークのルータを通して特定のドメインのネットワーク・リソースとユーザが対話していることに少なくとも部分的に基づいた地理的ロケーションにおいて、ユーザを自動的に「チェックイン」させることができる。たとえば、ユーザは、モバイル・コンピューティング・デバイスが通信ネットワークの範囲内にある場合、またはルータを通して通信ネットワークにアクセスしようと試みる場合、通信ネットワークに関連付けられている地理的ロケーションにおいて、自動的に「チェックイン」させられ得る。
図4は、通信ネットワークのキャプティブ・ポータル挙動を変更するための例示的なステート図を示している。特定の実施形態では、上で説明されたキャプティブ・ポータル挙動の変更は、ステート・マシーン400として実装され得る。限定ではなく、例として、ステート・マシーン400は、モバイル・コンピューティング・デバイスと通信ネットワークとの間のキャプティブ・ポータル挙動をエミュレートし、変更することができる。特定の実施形態では、モバイル・コンピューティング・デバイスから要求を受信したルータは、モバイル・コンピューティング・デバイスによって送信されたHTTP要求をリダイレクトする、ステート・マシーン400の初期ステートSに対応するフラグを設定することができる。限定ではなく、例として、フラグは、モバイル・コンピューティング・デバイス10の媒体アクセス制御(MAC)アドレスと関連付けられ得る。さらに、特定の実施形態では、ステート・マシーン400のステートSは、モバイル・コンピューティング・デバイスの通信ネットワークへの接続の完了(たとえば、ログインもしくはパスワード証明書を提供すること、またはネットワーク管理者のサービス利用規約に同意すること)に影響することができる、たとえば、ボタンなどの、特定の対話要素を含むように、モバイル・コンピューティング・デバイス上に表示されるネットワーク・アクセス・ページを変更することができる。特定の実施形態では、変更されたネットワーク・アクセス・ページ上に表示される情報は、たとえば、ソーシャル・ネットワーキング・システムに関連付けられているアプリケーションなど、モバイル・コンピューティング・デバイスの特定のアプリケーションに関する情報、またはそれを起動するためのハイパーリンクを含み、アプリケーションに関連付けられているSLDにユーザを接続することができる。
図5は、通信ネットワークのキャプティブ・ポータル挙動を変更するための例示的な方法を示している。方法は、ステップ300において開始することができ、そこで、ルータは、ルータを通して通信ネットワークにアクセスすることを求める、ユーザのクライアント・コンピューティング・デバイスのユーザ・エージェントからの要求を検出する。特定の実施形態では、ユーザ・エージェントは、クライアント・コンピューティング・デバイスのウェブ・ブラウザである。ステップ302は、ルータによって、ユーザ・エージェントを第1のネットワーク・リソースから第2のネットワーク・リソースに自動的にリダイレクトする。特定の実施形態では、第1のネットワーク・リソースは、通信ネットワークへのアクセスを提供するために、ユーザを認証するように構成され、第2のネットワーク・リソースは、通信ネットワークの特定のドメインへのアクセスを提供するために、ユーザを認証するように構成される。ステップ304において、第2のネットワーク・リソースが、ユーザの認証に成功した場合、ルータは、通信ネットワークの特定のドメインへのアクセスをユーザ・エージェントに提供し、その時点で、方法は、終了することができる。本開示は、図5の方法の特定のステップを、特定の順序で生じるものとして説明し、図示しているが、本開示は、任意の適切な順序で生じる、図5の方法の任意の適切なステップを企図している。特定の実施形態は、適切である場合は、図5の方法の1つまたは複数のステップを繰り返すことができる。さらに、本開示は、図5の方法の特定のステップを含む、デフォルトのキャプティブ・ポータル挙動を変更するための例示的な方法を説明し、図示しているが、本開示は、適切である場合は、図5の方法のステップのすべてもしくは一部を含むことができる、またはまったく含まなくてよい、任意の適切なステップを含む、デフォルトのキャプティブ・ポータル挙動を変更するための任意の適切な方法を企図している。さらに、本開示は、図5の方法の特定のステップを実施する特定の要素を説明し、図示しているが、本開示は、図5の方法の任意の適切なステップを実施する、たとえば、モバイル・コンピューティング・デバイスまたはコンピューティング・システムのサーバのプロセッサなどの、任意の適切な要素の任意の適切な組合せを企図している。
図6は、特定のドメインによって管理されている通信ネットワークに接続するための例示的な方法を示している。方法は、ステップ350において開始することができ、そこで
、コンピューティング・デバイスは、コンピューティング・デバイスによって通信ネットワークを通して第1のネットワーク・リソースに送信されたデータのインターセプトを検出する。特定の実施形態では、データの送信、および検出は、コンピューティング・デバイスのアプリケーションによって実行され得る。特定の実施形態では、第1のネットワーク・リソースは、通信ネットワークの特定のドメインに対応するサーバである。ステップ352は、コンピューティング・デバイスによって、通信ネットワークが特定のドメインによって管理されているかどうかを決定する。特定の実施形態では、通信ネットワークは、通信ネットワークを所有するエンティティと無関係なエンティティによって管理され得る。ステップ354は、コンピューティング・デバイスによって、決定に少なくとも部分的に基づいて、第2のネットワーク・リソースを識別する、通信ネットワークへのアクセスを求める要求を自動的に生成する。特定の実施形態では、第2のネットワーク・リソースは、通信ネットワークの特定のドメインに対してユーザを認証するように構成されたサーバである。特定の実施形態では、ルータのキャプティブ・ポータルのデフォルト要求は、第2のネットワーク・リソースのURLまたはIPアドレスを含むように変更される。ステップ354において、コンピューティング・デバイスは、通信ネットワークへのアクセスを求める要求を第2のネットワーク・リソースに送信し、その時点で、方法は、終了することができる。本開示は、図6の方法の特定のステップを、特定の順序で生じるものとして説明し、図示しているが、本開示は、任意の適切な順序で生じる、図6の方法の任意の適切なステップを企図している。特定の実施形態は、適切である場合は、図6の方法の1つまたは複数のステップを繰り返すことができる。さらに、本開示は、図6の方法の特定のステップを含む、アプリケーションを通して通信ネットワークに接続するための例示的な方法を説明し、図示しているが、本開示は、適切である場合は、図6の方法のステップのすべてもしくは一部を含むことができる、またはまったく含まなくてよい、任意の適切なステップを含む、アプリケーションを通して通信ネットワークに接続するための任意の適切な方法を企図している。さらに、本開示は、図6の方法の特定のステップを実施する特定の要素を説明し、図示しているが、本開示は、図6の方法の任意の適切なステップを実施する、たとえば、モバイル・コンピューティング・デバイスのプロセッサまたはコンピューティング・システムのサーバなどの、任意の適切な要素の任意の適切な組合せを企図している。
図7は、例示的なソーシャル・グラフを示す。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、1または複数のソーシャル・グラフ200を1または複数のデータ・ストア内に記憶する。特定の実施形態では、ソーシャル・グラフ200は、複数のノード(複数のユーザ・ノード202または複数のコンセプト・ノード204を含んでもよい)と、それらのノードを接続する複数のエッジ206とを含んでもよい。図7に示されている例示的なソーシャル・グラフ200は、説明のために、2次元の視覚マップ表現で示されている。特定の実施形態では、ソーシャル・ネットワーキング・システム160、クライアント・システム130、またはサードパーティ・システム170は、適切な用途のためにソーシャル・グラフ200および関連するソーシャル・グラフ情報にアクセスする。ソーシャル・グラフ200のノードおよびエッジは、データ・オブジェクトとして、たとえばデータ・ストア(ソーシャル・グラフ・データベースなど)内に記憶されてもよい。そのようなデータ・ストアは、ソーシャル・グラフ200のノードまたはエッジの、1または複数の検索可能または照会可能なインデックスを含んでもよい。
特定の実施形態では、ユーザ・ノード202は、ソーシャル・ネットワーキング・システム160のユーザに対応する。限定するものとしてではなく一例として、ユーザは、ソーシャル・ネットワーキング・システム160と、またはソーシャル・ネットワーキング・システム160を通じて対話または通信する個人(人間のユーザ)、エンティティ(たとえば、企業、事業者、またはサードパーティ・アプリケーション)、または(たとえば、個人またはエンティティの)グループであってよい。特定の実施形態では、ユーザがア
カウントをソーシャル・ネットワーキング・システム160に登録するとき、ソーシャル・ネットワーキング・システム160は、そのユーザに対応するユーザ・ノード202を作成し、そのユーザ・ノード202を1または複数のデータ・ストア内に記憶する。本明細書に記載のユーザおよびユーザ・ノード202は、適切な場合、登録されたユーザ、および登録されたユーザに関連付けられているユーザ・ノード202に及ぶ。それに加えて、または代替として、本明細書に記載のユーザおよびユーザ・ノード202は、適切な場合、ソーシャル・ネットワーキング・システム160に登録しなかったユーザに及ぶ。特定の実施形態では、ユーザ・ノード202は、ユーザによって提供された情報、またはソーシャル・ネットワーキング・システム160を含む様々なシステムによって収集された情報に関連付けられてもよい。限定するものとしてではなく一例として、ユーザは、自分の名前、プロフィール写真、連絡先情報、誕生日、性別、婚姻状態、家族状態、雇用、学歴、好み、関心、または他の人口統計情報を提供してもよい。特定の実施形態では、ユーザ・ノード202は、ユーザに関連付けられている情報に対応する1または複数のデータ・オブジェクトに関連付けられてもよい。特定の実施形態では、ユーザ・ノード202は、1または複数のウェブページに対応してもよい。上述したように、ユーザ・ノード202に関連付けられているユーザは、ユーザ・ノード202に関連付けられている情報に少なくとも部分的に基づいて、特定のカテゴリに分類されてもよい。限定するものでなく一例として、ユーザは、年齢、ロケーション、友達の数、およびこれらの任意の組合せに少なくとも部分的に基づいて、カテゴリ分けされてもよい。さらに、上述したように、例えば、ソーシャル・ネットワーキング・システム160上でユーザが実行したアクションなど、ユーザに関連付けられているアクション・ログに記録されている他の情報と合わせてユーザ・ノード202に関連付けられている情報に基づいて、ユーザは分類されてもよい。
特定の実施形態では、コンセプト・ノード204は、コンセプトに対応する。限定するものとしてではなく一例として、コンセプトは、場所(たとえば、映画館、レストラン、目印、または都市など)、ウェブサイト(たとえば、ソーシャル・ネットワーキング・システム160に関連付けられているウェブサイト、またはウェブアプリケーションサーバに関連付けられているサードパーティウェブサイトなど)、エンティティ(たとえば、人、事業者、グループ、スポーツチーム、または有名人など)、ソーシャル・ネットワーキング・システム160内、またはウェブアプリケーションサーバなど外部サーバ上に位置するリソース(たとえば、オーディオファイル、映像ファイル、デジタル写真、テキストファイル、構造化文書、またはアプリケーションなど)、実際の財産または知的財産(たとえば、彫刻、絵画、映画、ゲーム、楽曲、着想、写真、または書物など)、ゲーム、アクティビティ、着想もしくは理論、別の好適なコンセプト、または2以上のそのようなコンセプトに対応してもよい。コンセプト・ノード204は、ユーザによって提供されたコンセプトの情報、またはソーシャル・ネットワーキング・システム160を含む様々なシステムによって収集された情報に関連付けられてもよい。限定するものとしてではなく一例として、コンセプトの情報は、名前もしくはタイトル、1または複数の画像(たとえば、本の表紙の画像)、ロケーション(たとえば、住所または地理的ロケーション)、(URLに関連付けられる)ウェブサイト、連絡先情報(たとえば、電話番号または電子メール・アドレス)、他の好適なコンセプト情報、またはそのような情報の任意の好適な組合せを含んでもよい。特定の実施形態では、コンセプト・ノード204は、コンセプト・ノード204に関連付けられている情報に対応する1または複数のデータ・オブジェクトに関連付けられてもよい。特定の実施形態では、コンセプト・ノード204は、1または複数のウェブページに対応してもよい。
特定の実施形態では、ソーシャル・グラフ200内のノードは、ウェブページを表しても、ウェブページによって表されてもよい(「プロフィール・ページ」と呼ばれる)。プロフィール・ページは、ソーシャル・ネットワーキング・システム160によってホスト
され、またはそこからアクセス可能であってもよい。また、プロフィール・ページは、サードパーティ・システム170に関連付けられているサードパーティウェブサイト上でホストされてもよい。限定するものとしてではなく一例として、特定の外部ウェブページに対応するプロフィール・ページは、その特定の外部ウェブページであってもよく、プロフィール・ページが、特定のコンセプト・ノード204に対応してもよい。プロフィール・ページは、他のユーザのすべてまたは選択されたサブセットによって閲覧可能であってもよい。限定するものとしてではなく一例として、ユーザ・ノード202は、対応するユーザがコンテンツを追加し、宣言をし、または他の方法で自分を表現する、対応するユーザプロフィールページを有してもよい。限定するものとしてではなく別の例として、コンセプト・ノード204は、1または複数のユーザがコンセプト・ノード204に対応するコンセプトに特に関連してコンテンツを追加し、宣言をし、またはユーザ自身を表現する、対応するコンセプトプロフィールページを有してもよい。
特定の実施形態では、コンセプト・ノード204は、サードパーティ・システム170によってホストされるサードパーティウェブページまたはリソースを表す。サードパーティウェブページまたはリソースは、要素の中でもとりわけ、コンテンツ、選択可能なアイコンもしくは他のアイコン、またはアクションもしくはアクティビティを表す(たとえば、JavaScript(登録商標)、AJAX、またはPHPコードにより実装される)他の対話可能なオブジェクトを含んでもよい。限定するものとしてではなく一例として、サードパーティウェブページは、「いいね」、「チェックイン」、「食べる」、「推奨する」、または別の好適なアクションまたはアクティビティなど、選択可能なアイコンを含んでもよい。サードパーティウェブページを閲覧するユーザは、アイコンの1つ(たとえば、「食べる」)を選択することによって、アクションを行う。これによって、クライアント・システム130は、ユーザのアクションを示すメッセージをソーシャル・ネットワーキング・システム160へ送信する。ソーシャル・ネットワーキング・システム160は、メッセージに応答して、ユーザに対応するユーザ・ノード202とサードパーティウェブページまたはリソースに対応するコンセプト・ノード204との間にエッジ(たとえば、「食べる」エッジ)を作成し、エッジ206を1または複数のデータ・ストア内に記憶する。
特定の実施形態では、ソーシャル・グラフ200内の1対のノードが、1または複数のエッジ206によって互いに接続されてもよい。1対のノードを接続するエッジ206は、その対のノード間の関係を表す。特定の実施形態では、エッジ206は、1対のノード間の関係に対応する1または複数のデータ・オブジェクトまたは属性を含み、または表してもよい。限定するものとしてではなく一例として、第1のユーザは、第2のユーザが第1のユーザの「友達」であることを示してもよい。この示したことに応答して、ソーシャル・ネットワーキング・システム160は、「友達要求」を第2のユーザに送信してもよい。第2のユーザが「友達要求」を確認した場合、ソーシャル・ネットワーキング・システム160は、ソーシャル・グラフ200内で第1のユーザのユーザ・ノード202を第2のユーザのユーザ・ノード202に接続するエッジ206を作成し、エッジ206をソーシャル・グラフ情報としてデータ・ストア24の1または複数に記憶してもよい。図6の例では、ソーシャル・グラフ200は、ユーザ「A」とユーザ「B」とのユーザ・ノード202間の友達関係を示すエッジ206と、ユーザ「C」とユーザ「B」とのユーザ・ノード202間の友達関係を示すエッジとを含む。本開示は特定のユーザ・ノード202を接続する特定の属性を有する特定のエッジ206について記載し示しているが、本開示は、ユーザ・ノード202を接続する任意の好適な属性を有する任意の好適なエッジ206を企図する。限定するものとしてではなく一例として、エッジ206は、友達関係、家族関係、仕事関係もしくは雇用関係、ファン関係、フォロワー関係、ビジタ関係、加入者関係、主従関係、相互的関係、非相互的関係、別の好適なタイプの関係、または2以上のそのような関係を表してもよい。さらに、本開示は一般にノードを接続されているものと
して記載しているが、本開示は、ユーザまたはコンセプトも接続されているものとして記載している。本明細書では、接続されているユーザまたはコンセプトへの言及は、適切な場合、ソーシャル・グラフ200内で1または複数のエッジ206によって接続されているユーザまたはコンセプトに対応するノードに及ぶ。
特定の実施形態では、ユーザ・ノード202とコンセプト・ノード204との間のエッジ206は、コンセプト・ノード204に関連付けられているコンセプトに向かってユーザ・ノード202に関連付けられているユーザによって行われる特定のアクションまたはアクティビティを表してもよい。限定するものとしてではなく一例として、図7に示されているように、ユーザは、コンセプトに対して「いいね」と表明することができ、コンセプトに「通った」、コンセプトを「プレイした」、「聴いた」、「調理した」、コンセプトに「勤務した」、またはコンセプトを「見た」のであり、コンセプトのそれぞれは、エッジタイプまたはサブタイプに対応する。コンセプト・ノード204に対応するコンセプトプロフィールページは、たとえば、選択可能な「チェックイン」アイコン(たとえば、クリック可能な「チェックイン」アイコン)または選択可能な「いいね」アイコンを含んでもよい。別の例として、クライアント・システムのソーシャル・ダッシュボードは、選択可能な「チェックイン」アイコン(たとえば、クリック可能な「チェックイン」アイコン)または選択可能な「いいね」アイコンを含んでもよい。同様に、ユーザがこれらのアイコンをクリックした後、ソーシャル・ネットワーキング・システム160は、それぞれのアクションに対応するユーザのアクションに応答して「いいね」エッジ、または「チェックイン」エッジを作成する。上述したように、少なくとも部分的に通信ネットワークのルータのIPアドレスと、クライアント・システム上で実行されているソーシャル・ネットワーク・システムのアプリケーションとに基づいて、ユーザは特定のコンセプト・ノード204に関連付けられている地理的ロケーションにおいて自動的に「チェックイン」されてもよい。 限定するものとしてではなく別の例として、ユーザ(ユーザ「C」)は、特定のアプリケーション(オンラインミュージックアプリケーションであるSPOTIFY)を使用して特定の楽曲(「ランブル・オン」)を聴く。この場合には、ソーシャル・ネットワーキング・システム160は、ユーザに対応するユーザ・ノード202と楽曲およびアプリケーションに対応するコンセプト・ノード204との間に「聴いた」エッジ206および「使用した」エッジ(図7に図示)を作成し、ユーザがその楽曲を聞き、そのアプリケーションを使用したことを示す。さらに、ソーシャル・ネットワーキング・システム160は、楽曲およびアプリケーションに対応するコンセプト・ノード204間に「プレイした」エッジ206(図7に図示)を作成し、特定の楽曲が特定のアプリケーションによってプレイされたことを示す。この場合には、「プレイした」エッジ206は、外部アプリケーション(SPOTIFY)によって外部オーディオファイル(楽曲「イマジン」)に対して行われたアクションに対応する。本開示は、ユーザ・ノード202とコンセプト・ノード204とを接続する特定の属性を有する特定のエッジ206について記載しているが、本開示は、ユーザ・ノード202とコンセプト・ノード204とを接続する任意の好適な属性を有する任意の好適なエッジ206を企図する。さらに、本開示は、ユーザ・ノード202とコンセプト・ノード204の間の単一の関係を表すエッジについて記載しているが、本開示は、ユーザ・ノード202とコンセプト・ノード204との間の1または複数の関係を表すエッジを企図する。限定するものとしてではなく一例として、エッジ206は、ユーザが「いいね」と表明したこと、および特定のコンセプトを使用したことの両方を表してもよい。あるいは、別のエッジ206が、ユーザ・ノード202とコンセプト・ノード204(図6に示されているように、ユーザ「E」に関するユーザ・ノード202と「SPOTIFY」に関するコンセプト・ノード204)との間の関係の各タイプ(または単一の関係の複数)を表してもよい。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、ソーシャル・グラフ200内でユーザ・ノード202とコンセプト・ノード204との間にエッジ2
06を作成する。限定するものとしてではなく一例として、(たとえば、ウェブ・ブラウザまたはユーザのクライアント・システム130によってホストされる専用アプリケーションを使用することによってなど)コンセプトプロフィールページを閲覧するユーザは、「いいね」アイコンをクリックまたは選択することによって、ユーザがコンセプト・ノード204によって表されたコンセプトに対して「いいね」と表明することを示す。これによって、ユーザのクライアント・システム130は、コンセプトプロフィールページに関連付けられているコンセプトに対してユーザが「いいね」と表明することを示すメッセージをソーシャル・ネットワーキング・システム160へ送信(トランスミット)する。ソーシャル・ネットワーキング・システム160は、そのメッセージに応答して、ユーザとコンセプト・ノード204との間の「いいね」エッジ206によって示されているように、ユーザに関連付けられているユーザ・ノード202とコンセプト・ノード204との間にエッジ206を作成してもよい。特定の実施形態では、ソーシャル・ネットワーキング・システム160は、エッジ206を1または複数のデータ・ストア内に記憶してもよい。特定の実施形態では、エッジ206は、特定のユーザ・アクションに応答してソーシャル・ネットワーキング・システム160によって自動的に形成されてもよい。限定するものとしてではなく一例として、第1のユーザが写真をアップロードし、映画を見たか、または楽曲を聴いた場合、エッジ206は、第1のユーザに対応するユーザ・ノード202とそれらのコンセプトに対応するコンセプト・ノード204との間に形成されてもよい。本開示は、特定のエッジ206を特定の方法で形成することについて記載しているが、本開示は、任意の好適なエッジ206を任意の好適な方法で形成することを企図する。
図8は、例示的なコンピューティング・システムを示す。特定の実施形態では、1または複数のコンピュータ・システム60は、本明細書に記載され、または示されている1または複数の方法の1または複数のステップを実施する。特定の実施形態では、1または複数のコンピュータ・システム60は、本明細書に記載され、または示されている機能を提供する。特定の実施形態では、1または複数のコンピュータ・システム60上で動作するソフトウェアは、本明細書に記載され、または示されている1または複数の方法の1または複数のステップを実施し、または本明細書に記載され、または示されている機能を提供する。特定の実施形態は、1または複数のコンピュータ・システム60の1または複数の部分を含む。本明細書では、コンピュータ・システムに言及することは、適切な場合、コンピューティング・デバイスを包含してもよい。さらに、コンピュータ・システムに言及することは、適切な場合、1または複数のコンピュータ・システムを包含してもよい。
この開示は、任意の好適な数のコンピュータ・システム60を企図する。この開示は、任意の好適な物理形態をとるコンピュータ・システム60を企図する。限定するものとしてではなく一例として、コンピュータ・システム60は、組込みコンピュータ・システム、システム・オン・チップ(SOC)、シングルボード・コンピュータ・システム(SBC)(たとえば、コンピュータ・オン・モジュール(COM)またはシステム・オン・モジュール(SOM)など)、デスクトップ・コンピュータ・システム、ラップトップもしくはノートブック・コンピュータ・システム、対話キオスク、メインフレーム、コンピュータ・システムのメッシュ、移動体コンピューティング・システム10、携帯情報端末(PDA)、サーバ、タブレット・コンピュータ・システム、またはこれらの2以上の組合せであってよい。適切な場合、コンピュータ・システム60は、1または複数のコンピュータ・システム60を含んでもよく、一元的なものであっても分散型であってもよく、複数のロケーションに跨ってもよく、複数のマシンに跨ってもよく、複数のデータセンタに跨ってもよく、クラウド内にあってもよく、クラウドは、1または複数のネットワーク内で1または複数のクラウド・コンポーネントを含んでもよい。適切な場合、1または複数のコンピュータ・システム60は、実質的な空間的または時間的制限なしに、本明細書に記載され、または示されている1または複数の方法の1または複数のステップを実施してもよい。限定するものとしてではなく一例として、1つまたは複数のコンピュータ・シス
テム60は、リアルタイムで、またはバッチ・モードで、本明細書に記載され、または示されている1または複数の方法の1または複数のステップを実施してもよい。1または複数のコンピュータ・システム60は、適切な場合、異なる時に、または異なるロケーションで、本明細書に記載され、または示されている1または複数の方法の1または複数のステップを実施してもよい。
特定の実施形態では、コンピュータ・システム60は、プロセッサ62、メモリ64、ストレージ66、入力/出力(I/O)インターフェース68、通信インターフェース70、およびバス72を含む。この開示は、特定の数の特定の構成要素を特定の構成で有する特定のコンピュータ・システムについて記載し示しているが、この開示は、任意の好適な数の任意の好適な構成要素を任意の好適な構成で有する任意の好適なコンピュータ・システムを企図する。
特定の実施形態では、プロセッサ62は、コンピュータ・プログラムを構成するものなど命令を実行するためのハードウェアを含む。限定するものとしてではなく一例として、命令を実行するために、プロセッサ62は、内部レジスタ、内部キャッシュ、メモリ64、またはストレージ66から命令を取り出し(またはフェッチし)、それらを復号および実行し、次いで、1または複数の結果を内部レジスタ、内部キャッシュ、メモリ64、またはストレージ66に書き込む。特定の実施形態では、プロセッサ62は、データ、命令、またはアドレス用に1または複数の内部キャッシュを含んでもよい。この開示は、適切な場合、任意の好適な数の任意の好適な内部キャッシュを含むプロセッサ62を企図する。限定するものとしてではなく一例として、プロセッサ62は、1または複数の命令キャッシュ、1または複数のデータ・キャッシュ、および1または複数の変換索引バッファ(TLB)を含んでもよい。命令キャッシュ内の命令は、メモリ64またはストレージ66内の命令のコピーであってもよく、命令キャッシュは、プロセッサ62によるこれらの命令の取り出しを高速化する。データ・キャッシュ内のデータは、プロセッサ62にて実行される命令が操作するための、メモリ64またはストレージ66内のデータのコピー、プロセッサ62で実行される後続の命令によるアクセスための、またはメモリ64もしくはストレージ66に書き込むための、プロセッサ62で実行された以前の命令の結果、あるいは他の好適なデータであってもよい。データ・キャッシュは、プロセッサ62による読出しまたは書込み動作を高速化する。TLBは、プロセッサ62のために仮想アドレス変換を高速化する。特定の実施形態では、プロセッサ62は、データ、命令、またはアドレス用に1または複数の内部レジスタを含む。この開示は、適切な場合、任意の好適な数の任意の好適な内部レジスタを含むプロセッサ62を企図する。適切な場合、プロセッサ62は、1または複数の算術論理演算ユニット(ALU)を含むことができ、マルチコア・プロセッサであってもよく、1または複数のプロセッサ62を含んでもよい。この開示は、特定のプロセッサについて記載し示しているが、この開示は、任意の好適なプロセッサを企図する。
特定の実施形態では、メモリ64は、プロセッサ62が実行するための命令、またはプロセッサ62が操作するためのデータを記憶するための主記憶装置を含む。限定するものとしてではなく一例として、コンピュータ・システム60は、ストレージ66または別のソース(たとえば、別のコンピュータ・システム60など)からメモリ64に命令をロードする。次いで、プロセッサ62は、メモリ64から内部レジスタまたは内部キャッシュに命令をロードする。命令を実行するために、プロセッサ62は、内部レジスタまたは内部キャッシュから命令を取り出し、それらを復号する。命令の実行中、または実行後、プロセッサ62は、1または複数の結果(中間結果であることも最終結果であることもある)を内部レジスタまたは内部キャッシュに書き込む。次いで、プロセッサ62は、それらの結果の1または複数をメモリ64に書き込む。特定の実施形態では、プロセッサ62は、1もしくは複数の内部レジスタもしくは内部キャッシュ内、または(ストレージ66も
しくは他の場所ではなく)メモリ64内の命令だけを実行し、1もしくは複数の内部レジスタもしくは内部キャッシュ内、または(ストレージ806もしくは他の場所ではなく)メモリ64内のデータだけを操作する。1または複数のメモリ・バス(それぞれがアドレス・バスとデータ・バスを含むことがある)がプロセッサ62をメモリ64に結合してもよい。バス72は、下記に記載されているように、1または複数のメモリ・バスを含んでもよい。特定の実施形態では、1または複数のメモリ管理ユニット(MMU)が、プロセッサ62とメモリ64との間に存在し、プロセッサ62によって要求されるメモリ64へのアクセスを容易にする。特定の実施形態では、メモリ64は、ランダム・アクセス・メモリ(RAM)を含む。このRAMは、適切な場合、揮発性メモリであり得る。適切な場合、このRAMは、ダイナミックRAM(DRAM)またはスタティックRAM(SRAM)であってよい。さらに、適切な場合、このRAMは、シングルポート型またはマルチポート型RAMであってよい。この開示は、任意の好適なRAMを企図する。メモリ64は、適切な場合、1または複数のメモリ64を含んでもよい。この開示は、特定のメモリについて記載し示しているが、この開示は、任意の好適なメモリを企図する。
特定の実施形態では、ストレージ66は、データまたは命令用のマス・ストレージを含む。限定するものとしてではなく一例として、ストレージ66は、ハード・ディスク・ドライブ(HDD)、フロッピー(登録商標)ディスク・ドライブ、フラッシュ・メモリ、光ディスク、光磁気ディスク、磁気テープ、もしくはユニバーサル・シリアル・バス(USB)ドライブ、またはこれらの2以上の組合せを含んでもよい。ストレージ66は、適切な場合、取外し式または非取外し式(または固定)媒体を含んでもよい。ストレージ66は、適切な場合、コンピュータ・システム60に対して内部であっても外部であってもよい。特定の実施形態では、ストレージ66は、不揮発性のソリッドステート・メモリである。特定の実施形態では、ストレージ66は、読出し専用メモリ(ROM)を含む。適切な場合、このROMは、マスクプログラムドROM、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的書き換え可能ROM(EAROM)、もしくはフラッシュ・メモリ、またはこれらの2以上の組合せであってよい。この開示は、任意の好適な物理形態をとるマス・ストレージ66を企図する。ストレージ66は、適切な場合、プロセッサ62とストレージ66の間の通信を容易にする1または複数のストレージ制御ユニットを含んでもよい。適切な場合、ストレージ66は、1または複数のストレージ66を含んでもよい。この開示は、特定のストレージについて記載し示しているが、この開示は、任意の好適なストレージを企図する。
特定の実施形態では、I/Oインターフェース68は、コンピュータ・システム60と1または複数のI/Oデバイスとの間の通信のために1または複数のインターフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。コンピュータ・システム60は、適切な場合、これらのI/Oデバイスの1または複数を含んでもよい。これらのI/Oデバイスの1または複数は、人とコンピュータ・システム60の間の通信を可能にする。限定するものとしてではなく一例として、I/Oデバイスは、キーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカ、スチル・カメラ、スタイラス、タブレット、タッチ・スクリーン、トラックボール、ビデオ・カメラ、別の好適なI/Oデバイス、またはこれらの2以上の組合せを含んでもよい。I/Oデバイスは、1または複数のセンサを含んでもよい。この開示は、任意の好適なI/Oデバイス、およびそれらのための任意の好適なI/Oインターフェース68を企図する。適切な場合、I/Oインターフェース68は、プロセッサ62がこれらのI/Oデバイスの1または複数を駆動することを可能にする1または複数のデバイスまたはソフトウェア・ドライバを含む。I/Oインターフェース68は、適切な場合、1または複数のI/Oインターフェース68を含んでもよい。この開示は、特定のI/Oインターフェースについて記載し示しているが、この開示は、任意の好適なI/Oインターフェースを企図する。
特定の実施形態では、通信インターフェース70は、コンピュータ・システム60と1もしくは複数の他のコンピュータ・システム60または1もしくは複数のネットワークとの間の通信(たとえば、パケットベースの通信など)のために1または複数のインターフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。限定するものとしてではなく一例として、通信インターフェース70は、ETHERNET(登録商標)もしくは他の有線ベースのネットワークとの通信のためのインターフェース・コントローラ(NIC)もしくはネットワーク・アダプタ、またはWI−FIネットワークなど無線ネットワークとの通信のための無線NIC(WNIC)もしくは無線アダプタを含んでもよい。この開示は、任意の好適なネットワーク、およびそのための任意の好適な通信インターフェース70を企図する。限定するものとしてではなく一例として、コンピュータ・システム60は、アドホック・ネットワーク、パーソナル・エリア・ネットワーク(PAN)、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、メトロポリタン・エリア・ネットワーク(MAN)、またはインターネットの1もしくは複数の部分、あるいはこれらの2以上の組合せと通信する。これらのネットワークの1または複数のうちの1または複数の部分は、有線であっても無線であってもよい。一例として、コンピュータ・システム60は、無線PAN(WPAN)(たとえば、BLUETOOTH(登録商標)WPANなど)、WI−FIネットワーク、WI−MAXネットワーク、携帯電話ネットワーク(たとえば、グローバル移動体通信システム(GSM(登録商標))ネットワークなど)、もしくは他の好適な無線ネットワーク、またはこれらの2以上の組合せと通信する。コンピュータ・システム60は、適切な場合、これらのネットワークのいずれかのための任意の好適な通信インターフェース70を含んでもよい。通信インターフェース70は、適切な場合、1または複数の通信インターフェース70を含んでもよい。この開示は、特定の通信インターフェースについて記載し示しているが、この開示は、任意の好適な通信インターフェースを企図する。
特定の実施形態では、バス72は、コンピュータ・システム60の構成要素を互いに結合するハードウェア、ソフトウェア、またはその両方を含む。限定するものとしてではなく一例として、バス72は、アクセラレィティッド・グラフィックス・ポート(AGP)もしくは他のグラフィックス・バス、EISA(Enhanced Industry Standard Architecture)バス、フロントサイド・バス(FSB)、HT(HYPERTRANSPORT)相互接続、ISA(Industry Standard Architecture)バス、インフィニバンド相互接続、LPC(low−pin−count)バス、メモリ・バス、MCA(Micro Channel
Architecture)バス、PCI(Peripheral Component Interconnect)バス、PCIエクスプレス(PCIe)バス、SATA(serial advanced technology attachment)バス、VLB(Video Electronics Standards Association local)バス、もしくは別の好適なバス、またはこれらの2以上の組合せを含んでもよい。バス72は、適切な場合、1または複数のバス72を含んでもよい。この開示は、特定のバスについて記載し示しているが、この開示は、任意の好適なバスまたは相互接続を企図する。
本明細書では、1または複数の非一時的コンピュータ可読記憶媒体は、適切な場合、1または複数の半導体ベースの、もしくは他の集積回路(IC)(たとえば、フィールド・プログラマブル・ゲート・アレイ(FPGA)または特定用途向けIC(ASIC))、ハード・ディスク・ドライブ(HDD)、ハイブリッド・ハード・ドライブ(HHD)、光ディスク、光ディスク・ドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピー(登録商標)・ディスケット、フロッピー(登録商標)・ディスク・ドライブ(FDD)、磁気テープ、ソリッドステート・ドライブ(SSD)、RAMドライブ、セキュ
ア・デジタル・カードもしくはセキュア・デジタル・ドライブ、任意の他の好適な非一時的コンピュータ可読記憶媒体、またはこれらの2以上の組合せを含んでもよい。非一時的コンピュータ可読記憶媒体は、適切な場合、揮発性、不揮発性、または揮発性と不揮発性の組合せであってよい。
本明細書では、「または(もしくは)」は、別段明確に示されていない限り、または別段文脈によって示されない限り、包括的(inclusive)であり、排他的なものではない。したがって、本明細書では、「AまたはB」は、別段明確に示されていない限り、または別段文脈によって示されない限り、「A、B、またはその両方」を意味する。さらに、「および」は、別段明確に示されていない限り、または別段文脈によって示されない限り、共同であり、個別的でもある。したがって、本明細書では、「AおよびB」は、別段明確に示されていない限り、または別段文脈によって示されない限り、「AおよびBを共同で、または個別的に」意味する。
この開示の範囲は、当業者であれば理解するであろう、本明細書に記載され、または示されている例示的な実施形態に対する変更、置換、変形、代替、および修正すべてを包含する。この開示の範囲は、本明細書に記載され、または示されている例示的な実施形態に限定されない。さらに、この開示は、それぞれの実施形態について、本明細書では、特定の構成要素、要素、機能、動作、またはステップを含むものとして記載し示しているが、これらの実施形態のいずれも、当業者であれば理解するであろう、本明細書のどこかに記載され、または示されている構成要素、要素、機能、動作、またはステップのいずれかの任意の組合せまたは並べ替えを含んでもよい。さらに、添付の特許請求の範囲において、特定の機能を実施するように適合された、するように配置された、することが可能な、するように構成された、することが可能である、するように動作可能である、またはするように動作する装置もしくはシステム、または装置もしくはシステムの構成要素に言及することは、その装置、システム、または構成要素がそのように適合され、配置され、動作可能であり、構成され、可能であり、動作可能であり、動作する限り、それ、またはその特定の機能が作動される、オンにされる、またはロック解除されるか否かにかかわらず、その装置、システム、構成要素を包含する。

Claims (21)

  1. ルータが、ユーザのクライアント・コンピューティング・デバイスのユーザ・エージェントからの要求であって、前記ルータを通して通信ネットワークにアクセスするためのアクセス要求を受信する工程であって、前記ルータは、前記通信ネットワークの特定のドメインに関連付けられているエンティティによって管理され、前記ルータは、前記アクセス要求を第1のサーバに送信するようにデフォルトとして構成され、前記アクセス要求は、前記特定のドメインに関連付けられている第2のサーバへの参照を含み、前記特定のドメインは、特定のソーシャル・ネットワーキング・システムに関連付けられており、前記第1のサーバは、前記ユーザが前記通信ネットワークにアクセスすることを認証するように構成される、工程と、
    前記ルータが、前記通信ネットワークが前記特定のドメインの前記エンティティによって管理されるという前記ユーザ・エージェントによる決定に基づいて、前記特定のドメインに関連付けられている前記第2のサーバ前記アクセス要求をユーザの入力なしで自動的に送信する工程であって、前記ユーザ・エージェントによる決定は、前記特定のドメインに関連付けられている前記第2のサーバへの参照を含む前記ルータの情報に前記ユーザ・エージェントがアクセスすることに少なくとも部分的に基づき、前記特定のドメインに関連付けられている前記第2のサーバは、前記アクセス要求を前記第1のサーバに送信する代わりに、前記ユーザを認証して、前記通信ネットワークの特定のドメインを通じて、認証された前記ユーザに前記通信ネットワークへのアクセスを提供するように構成される、工程と、
    前記ルータが、前記特定のドメインに関連付けられている前記第2のサーバからの前記ユーザが正常に認証されたことを示す標識を受信することに応答して、前記通信ネットワークの前記特定のドメインへのアクセスを前記ユーザ・エージェントに自動的に提供する工程と、を備える方法。
  2. 前記第1のサーバは、前記通信ネットワークのネットワーク・アクセス・ページを前記ユーザ・エージェントに提供するようにさらに構成され
    前記第2のサーバは、前記特定のドメインに関連付けられた情報または前記特定のドメインへのハイパーリンクを備えるウェブ・ビューを提供するようにさらに構成され、前記第2のサーバは、前記第1のサーバとは独立である、請求項1に記載の方法。
  3. 前記アクセス要求を前記第2のサーバに送信する工程は、前記第1のサーバによる前記ユーザの認証をバイパスする、請求項1に記載の方法。
  4. 前記通信ネットワークは、インターネットであり、
    前記特定のドメインは、前記インターネットのセカンド・レベル・ドメイン(SLD)である、請求項1に記載の方法。
  5. 前記ユーザ・エージェントは、ウェブ・ブラウザである、請求項1に記載の方法。
  6. 前記アクセス要求は、前記ルータによるキャプティブ・ネットワーク・サポートのためのものである、請求項1に記載の方法。
  7. 前記アクセス要求を前記第2のサーバに送信する工程は、前記ルータの前記キャプティブ・ネットワーク・サポートをバイパスする、請求項に記載の方法。
  8. 前記ルータは、Wi−Fiアクセス・ポイントである、請求項1に記載の方法。
  9. ソフトウェアを具現する1以上の非一時的コンピュータ可読記憶媒体であって、実行されたとき、
    ユーザのクライアント・コンピューティング・デバイスのユーザ・エージェントからの要求であって、ルータを通して通信ネットワークにアクセスするためのアクセス要求を受信する工程であって、前記ルータは、前記通信ネットワークの特定のドメインに関連付けられているエンティティによって管理され、前記ルータは、前記アクセス要求を第1のサーバに送信するようにデフォルトとして構成され、前記アクセス要求は、前記特定のドメインに関連付けられている第2のサーバへの参照を含み、前記特定のドメインは、特定のソーシャル・ネットワーキング・システムに関連付けられており、前記第1のサーバは、前記ユーザが前記通信ネットワークにアクセスすることを認証するように構成される、工程と、
    前記通信ネットワークが前記特定のドメインの前記エンティティによって管理されるという前記ユーザ・エージェントによる決定に基づいて、前記特定のドメインに関連付けられている前記第2のサーバに前記アクセス要求をユーザの入力なしで自動的に送信する工程であって、前記ユーザ・エージェントによる決定は、前記特定のドメインに関連付けられている前記第2のサーバへの参照を含む前記ルータの情報に前記ユーザ・エージェントがアクセスすることに少なくとも部分的に基づき、前記特定のドメインに関連付けられている前記第2のサーバは、前記アクセス要求を前記第1のサーバに送信する代わりに、前記ユーザを認証して、前記通信ネットワークの特定のドメインを通じて、認証された前記ユーザに前記通信ネットワークへのアクセスを提供するように構成される、工程と、
    前記特定のドメインに関連付けられている前記第2のサーバからの前記ユーザが正常に認証されたことを示す標識を受信することに応答して、前記通信ネットワークの前記特定のドメインへのアクセスを前記ユーザ・エージェントに自動的に提供する工程と、を行わせるように構成される、媒体。
  10. 前記第1のサーバは、前記通信ネットワークのネットワーク・アクセス・ページを前記ユーザ・エージェントに提供するようにさらに構成され
    前記第2のサーバは、ネ前記特定のドメインに関連付けられた情報または前記特定のドメインへのハイパーリンクを備えるウェブ・ビューを提供するようにさらに構成され、前記第2のサーバは、前記第1のサーバとは独立である、請求項に記載の媒体。
  11. 前記アクセス要求を前記第2のサーバに送信する工程は、前記第1のサーバによる前記ユーザの認証をバイパスする、請求項に記載の媒体。
  12. 前記通信ネットワークは、インターネットであり、
    前記特定のドメインは、前記インターネットのセカンド・レベル・ドメイン(SLD)である、請求項に記載の媒体。
  13. 前記ユーザ・エージェントは、ウェブ・ブラウザである、請求項に記載の媒体。
  14. 前記アクセス要求は、前記ルータによるキャプティブ・ネットワーク・サポートのためのものである、請求項に記載の媒体。
  15. 前記ルータは、Wi−Fiアクセス・ポイントである、請求項に記載の媒体。
  16. プロセッサと、
    前記プロセッサに結合され、ソフトウェアを具現する1以上の非一時的コンピュータ可読記憶媒体と、を備えるルータであって、前記ソフトウェアは、
    ユーザのクライアント・コンピューティング・デバイスのユーザ・エージェントからの要求であって、ルータを通して通信ネットワークにアクセスするためのアクセス要求を受信する工程であって、前記ルータは、前記通信ネットワークの特定のドメインに関連付けられているエンティティによって管理され、前記ルータは、前記アクセス要求を第1のサーバに送信するようにデフォルトとして構成され、前記アクセス要求は、前記特定のドメインに関連付けられている第2のサーバへの参照を含み、前記特定のドメインは、特定のソーシャル・ネットワーキング・システムに関連付けられており、前記第1のサーバは、前記ユーザが前記通信ネットワークにアクセスすることを認証するように構成される、工程と、
    前記通信ネットワークが前記特定のドメインの前記エンティティによって管理されるという前記ユーザ・エージェントによる決定に基づいて、前記特定のドメインに関連付けられている前記第2のサーバに前記アクセス要求をユーザの入力なしで自動的に送信する工程であって、前記ユーザ・エージェントによる決定は、前記特定のドメインに関連付けられている前記第2のサーバへの参照を含む前記ルータの情報に前記ユーザ・エージェントがアクセスすることに少なくとも部分的に基づき、前記特定のドメインに関連付けられている前記第2のサーバは、前記アクセス要求を前記第1のサーバに送信する代わりに、前記ユーザを認証して、前記通信ネットワークの特定のドメインを通じて、認証された前記ユーザに前記通信ネットワークへのアクセスを提供するように構成される、工程と、
    前記特定のドメインに関連付けられている前記第2のサーバからの前記ユーザが正常に認証されたことを示す標識を受信することに応答して、前記通信ネットワークの前記特定のドメインへのアクセスを前記ユーザ・エージェントに自動的に提供する工程と、を行わせる、ルータ。
  17. 前記第1のサーバは、前記通信ネットワークのネットワーク・アクセス・ページを前記ユーザ・エージェントに提供するようにさらに構成され
    前記第2のサーバは、前記特定のドメインに関連付けられた情報または前記特定のドメインへのハイパーリンクを備えるウェブ・ビューを提供するようにさらに構成され、前記第2のサーバは、前記第1のサーバとは独立である、請求項16に記載のルータ。
  18. 前記アクセス要求を前記第2のサーバに送信する工程は、前記第1のサーバによる前記ユーザの認証をバイパスする、請求項16に記載のルータ。
  19. 前記通信ネットワークは、インターネットであり、
    前記特定のドメインは、前記インターネットのセカンド・レベル・ドメイン(SLD)である、請求項16に記載のルータ。
  20. 前記ユーザ・エージェントは、ウェブ・ブラウザである、請求項16に記載のルータ。
  21. 前記アクセス要求は、前記ルータによるキャプティブ・ネットワーク・サポートのためのものである、請求項16に記載のルータ。
JP2016524279A 2013-07-03 2014-06-30 サードパーティ・キャプティブ・ポータル Active JP6139030B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/935,239 2013-07-03
US13/935,239 US9619644B2 (en) 2013-07-03 2013-07-03 Third-party captive portal
PCT/US2014/044781 WO2015002854A1 (en) 2013-07-03 2014-06-30 Third-party captive portal

Publications (3)

Publication Number Publication Date
JP2016532934A JP2016532934A (ja) 2016-10-20
JP2016532934A5 JP2016532934A5 (ja) 2017-04-20
JP6139030B2 true JP6139030B2 (ja) 2017-05-31

Family

ID=52133714

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016524279A Active JP6139030B2 (ja) 2013-07-03 2014-06-30 サードパーティ・キャプティブ・ポータル

Country Status (11)

Country Link
US (1) US9619644B2 (ja)
EP (1) EP3017633B1 (ja)
JP (1) JP6139030B2 (ja)
KR (1) KR101826114B1 (ja)
CN (1) CN105519197B (ja)
AU (1) AU2014284539B2 (ja)
BR (1) BR112015033025A8 (ja)
CA (1) CA2917296C (ja)
IL (1) IL243394B (ja)
MX (1) MX351030B (ja)
WO (1) WO2015002854A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11822931B2 (en) 2020-02-12 2023-11-21 Red Hat, Inc. Providing a captive portal to manage a driver application for a peripheral device

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7839870B2 (en) 2005-11-23 2010-11-23 Comcast Cable Holdings, Llc Device-to-device communication among customer premise equipment devices
US8108911B2 (en) 2007-11-01 2012-01-31 Comcast Cable Holdings, Llc Method and system for directing user between captive and open domains
US9479488B2 (en) * 2012-01-26 2016-10-25 Facebook, Inc. Network access based on social-networking information
US9590884B2 (en) * 2013-07-03 2017-03-07 Facebook, Inc. Native application hotspot
US10277554B2 (en) * 2014-03-04 2019-04-30 Cisco Technology, Inc. Transparent proxy authentication via DNS processing
US9432334B2 (en) * 2014-12-01 2016-08-30 Intermedia.Net, Inc. Native application single sign-on
US11115326B2 (en) * 2015-02-18 2021-09-07 Deependra Tewari Port-based multi-tenancy router to manage wireless network
CN105392141A (zh) * 2015-10-30 2016-03-09 小米科技有限责任公司 设备控制方法及装置
US10454897B1 (en) 2016-01-21 2019-10-22 Amazon Technologies, Inc. Proxy captive portal traffic for input-limited devices
US10601832B1 (en) * 2016-03-30 2020-03-24 Amazon Technologies, Inc. Proxy captive portal traffic for input-limited devices
FR3050850B1 (fr) * 2016-05-02 2018-04-27 Peek's Print Borne a impression de carte postale
WO2018164486A1 (ko) 2017-03-08 2018-09-13 삼성전자주식회사 전자 장치 및 그의 무선 통신 연결 제어 방법
US10904253B2 (en) * 2017-04-24 2021-01-26 Single Digits, Inc. Techniques for providing full-featured browser access during captive portal authentication routines
US10491494B2 (en) * 2017-11-23 2019-11-26 Harman International Industries, Incorporated Captive portal detection
US10430768B1 (en) * 2019-01-18 2019-10-01 iStyxX Network LLC Wi-Fi management and monetization system and method
US11171956B2 (en) 2019-01-31 2021-11-09 At&T Intellectual Property I, L.P. Systems and methods for initiating network access according to automatic authentication utilizing a mobile device
US11228575B2 (en) 2019-07-26 2022-01-18 International Business Machines Corporation Enterprise workspaces
US11206249B2 (en) * 2019-07-26 2021-12-21 International Business Machines Corporation Enterprise workspaces
US11343236B2 (en) 2020-07-22 2022-05-24 Charter Communications Operating, Llc System and method for rendering a landing page based on location
CN116032848A (zh) * 2021-10-27 2023-04-28 北京字节跳动网络技术有限公司 管理客户端应用的网络流量的方法和装置

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010105705A (ko) 2000-05-17 2001-11-29 정문술 다중 인터넷 서비스에 대한 통합 사용자 관리환경 제공방법 및 이를 위한 시스템
KR20030085735A (ko) 2002-05-01 2003-11-07 김화종 무선 인터넷 서비스 방법 및 그 프로그램을 기록한컴퓨터로 읽을 수 있는 기록매체
KR100566632B1 (ko) 2002-06-25 2006-03-31 주식회사 케이티 인터넷 도메인 정보를 이용한 사용자 인증 처리 장치 및그 방법
CN100437550C (zh) * 2002-09-24 2008-11-26 武汉邮电科学研究院 一种以太网认证接入的方法
US20060069782A1 (en) * 2004-09-16 2006-03-30 Michael Manning Method and apparatus for location-based white lists in a telecommunications network
KR20060028921A (ko) 2004-09-30 2006-04-04 주식회사 케이티 인터넷 접속의 복합 제어시스템 및 그 제어방법
CN101510196A (zh) * 2008-02-14 2009-08-19 华为技术有限公司 网页推送方法、系统及其装置
US8819791B2 (en) * 2009-03-16 2014-08-26 Apple Inc. Captive network negotiation interface and automation
AU2009350015A1 (en) * 2009-07-17 2012-03-08 Boldstreet Inc. Hotspot network access system and method
CN102083037B (zh) * 2009-11-30 2013-09-11 华为终端有限公司 进入空闲模式的方法、网络切换方法、通信系统及设备
US20110258303A1 (en) * 2010-03-29 2011-10-20 Badri Nath System and method for personal device sharing using social networks
US8340292B1 (en) * 2010-04-01 2012-12-25 Sprint Communications Company L.P. Lawful intercept management by an authorization system
US20120110640A1 (en) * 2010-11-02 2012-05-03 Donelson Loren J Method, apparatus and system for wireless network authentication through social networking
US9456018B2 (en) * 2010-12-22 2016-09-27 Aruba Networks, Inc. HTTP proxy based captive portal
US8479263B1 (en) * 2011-03-07 2013-07-02 Symantec Corporation Method and system for detecting captive portals
EP2521329B1 (en) * 2011-05-04 2013-07-10 Alcatel Lucent A server, a system, a method, a computer program and a computer program product for accessing a server in a computer network
KR101243713B1 (ko) * 2011-07-08 2013-03-13 이광민 무선랜 접속 장치 및 그 동작 방법
US20130067081A1 (en) 2011-09-12 2013-03-14 Qualcomm Incorporated Mobile Device Authentication and Access to a Social Network
US20130080520A1 (en) * 2011-09-22 2013-03-28 Nokia Corporation Method and apparatus for provisioning resource credentials based on social networking data
US9820200B2 (en) * 2011-12-19 2017-11-14 Facebook, Inc. Captive portal state detection and avoidance for multiple-interface traffic offloading
US9178883B2 (en) * 2012-12-12 2015-11-03 SocialSign.in, Inc. Leveraging online identities to grant access to private networks

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11822931B2 (en) 2020-02-12 2023-11-21 Red Hat, Inc. Providing a captive portal to manage a driver application for a peripheral device

Also Published As

Publication number Publication date
BR112015033025A8 (pt) 2019-12-31
WO2015002854A1 (en) 2015-01-08
AU2014284539B2 (en) 2018-03-15
CA2917296C (en) 2017-10-31
AU2014284539A1 (en) 2016-02-18
KR20160027180A (ko) 2016-03-09
CN105519197A (zh) 2016-04-20
CN105519197B (zh) 2019-09-27
IL243394B (en) 2018-02-28
EP3017633A4 (en) 2017-02-15
CA2917296A1 (en) 2015-01-08
MX2016000228A (es) 2016-06-15
US20150012970A1 (en) 2015-01-08
KR101826114B1 (ko) 2018-02-06
US9619644B2 (en) 2017-04-11
MX351030B (es) 2017-09-28
EP3017633A1 (en) 2016-05-11
EP3017633B1 (en) 2019-09-04
JP2016532934A (ja) 2016-10-20

Similar Documents

Publication Publication Date Title
JP6139030B2 (ja) サードパーティ・キャプティブ・ポータル
JP6220440B2 (ja) モバイル・デバイスのためのキャリアの検出
JP6097885B2 (ja) ネイティブ・アプリケーション・ホットスポット
JP5933864B2 (ja) アプリケーション用ソーシャル・コンテキスト
JP2018092646A (ja) ユーザ・インターフェースのソーシャル・フィルタリング
JP6028114B2 (ja) Wi−Fi管理コンソール

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170317

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170317

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20170317

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170327

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170404

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170426

R150 Certificate of patent or registration of utility model

Ref document number: 6139030

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250