CN108990423A - 减少重定向 - Google Patents
减少重定向 Download PDFInfo
- Publication number
- CN108990423A CN108990423A CN201780000484.1A CN201780000484A CN108990423A CN 108990423 A CN108990423 A CN 108990423A CN 201780000484 A CN201780000484 A CN 201780000484A CN 108990423 A CN108990423 A CN 108990423A
- Authority
- CN
- China
- Prior art keywords
- server
- client terminal
- terminal device
- ping
- servers
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/563—Data redirection of data network streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
公开了用于减少客户端装置的重定向的方法、系统、和计算机可读介质。一种用于将用户定向至目的地页面的方法包括:由一个或者多个服务器检测与客户端装置处的数字分量的交互;由所述一个或者多个服务器识别所述一个或者多个服务器要将所述客户端装置重定向至其的不同服务器和通过与所述数字分量的所述交互来请求的目的地页面;由所述一个或者多个服务器将所述客户端装置重定向至目的地页面,而不将所述客户端装置重定向至所述不同服务器;以及由所述一个或者多个服务器利用包括和与所述数字分量的所述交互相对应的交互数据的请求来ping所述不同服务器。
Description
背景技术
本文档涉及减少重定向。互联网提供对各种资源的访问,并且在一些情形下,希望访问资源的用户在最终被重定向至托管该资源的服务器之前可以被重定向至多个不同的服务器。
发明内容
通常,在本说明书中描述的主题的一个创新方面可以以包括由一个或者多个服务器检测与客户端装置处的数字分量的交互的方法来实施。该方法包括:由所述一个或者多个服务器识别所述一个或者多个服务器要向其重定向客户端装置的中间服务器和通过与数字分量的交互来请求的目的地服务器。该方法包括:由所述一个或者多个服务器将客户端装置重定向至目的地服务器,而不将该客户端装置重定向至中间服务器。该方法包括:由所述一个或者多个服务器利用包括和与数字分量的交互相对应的交互数据的请求来ping该中间服务器。
可选地,这些实施例和其它实施例均可以包括一个或者多个下面的特征。
在一些示例中,识别中间服务器包括:检查用于联系所述一个或者多个服务器的URL,并且提取指定该中间服务器的路径的信息。在一些示例中,该方法包括:从中间服务器接收将所述一个或者多个服务器重定向至第二中间服务器的重定向响应,并且由所述一个或者多个服务器利用包括来自重定向响应的数据的第二请求来ping该第二中间服务器。
在一些示例中,ping中间服务器包括:发起与客户端装置至目的地服务器的重定向不同的第二重定向路径。在一些示例中,ping中间服务器包括:在发起ping时开始计数器;使用该计数器来跟踪已流逝请求时间;并且在所述一个或者多个服务器接收到来自中间服务器的响应之前,在已流逝请求时间超出超时阈值时重试对中间服务器的ping。
在一些示例中,客户端装置是通过无线通信网络通信的移动装置,并且所述一个或者多个服务器独立于该移动装置通过有线通信网络通信。在一些示例中,该方法包括:由所述一个或者多个服务器沿循(follow)如果所述一个或者多个服务器未将客户端装置重定向至目的地服务器则客户端装置本应沿循的多服务器重定向路径。
在另一一般方面中,一种系统包括:数据存储,该数据存储存储和与各个数字分量的客户端侧交互相对应的交互数据;前端接口,该前端接口包括通过一个或者多个通信网络来实现通信的通信接口;以及跟踪服务器,该跟踪服务器连接至前端接口,其中,该跟踪服务器通过执行操作来中断客户端装置所沿循的重定向链。该操作包括:由所述一个或者多个服务器检测与客户端装置处的数字分量的交互;由所述一个或者多个服务器识别所述一个或者多个服务器要向其重定向客户端装置的不同服务器和通过与数字分量的交互来请求的目的地页面;由所述一个或者多个服务器将客户端装置重定向至目的地页面,而不将客户端装置重定向至该不同服务器;以及由所述一个或者多个服务器利用包括和与数字分量的交互相对应的交互数据的请求来ping该不同服务器。
在一些示例中,识别该不同服务器包括:检查用于联系所述一个或者多个服务器的URL,并且提取指定该不同服务器的信息。在一些示例中,该操作包括:从该不同服务器接收将所述一个或者多个服务器重定向至第二不同服务器的重定向响应,并且由所述一个或者多个服务器利用包括来自重定向响应的数据的第二请求来ping该第二不同服务器。
在一些示例中,ping该不同服务器包括:发起与客户端装置至目的地页面的重定向不同的第二重定向路径。在一些示例中,ping不同服务器包括:在发起ping时开始计数器;使用计数器来跟踪已流逝请求时间;以及在已流逝请求时间超出超时阈值时重试对该不同服务器的ping。
在一些示例中,客户端装置是通过无线通信网络通信的移动装置,并且所述一个或者多个服务器独立于该移动装置通过有线通信网络通信。在一些示例中,该操作包括:由所述一个或者多个服务器沿循如果所述一个或者多个服务器未将客户端装置重定向至目的地页面则该客户端装置本应沿循的多服务器重定向路径。
在另一一般方面中,一种存储指令的非暂时性计算机可读介质,该指令在由一个或者多个计算装置执行时使得一个或者多个计算装置执行操作。该操作包括:由一个或者多个服务器检测与客户端装置处的数字分量的交互;由所述一个或者多个服务器识别所述一个或者多个服务器要向其重定向客户端装置的不同服务器和通过与数字分量的交互来请求的目的地页面;由所述一个或者多个服务器将客户端装置重定向至目的地页面,而不将客户端装置重定向至该不同服务器;以及由所述一个或者多个服务器利用包括和与数字分量的交互相对应的交互数据的请求来ping该不同服务器。
在一些示例中,标识该不同服务器包括:检查用于联系所述一个或者多个服务器的URL,并且提取指定该不同服务器的信息。在一些示例中,该操作包括:从该不同服务器接收将所述一个或者多个服务器重定向至第二不同服务器的重定向响应,以及由所述一个或者多个服务器利用包括来自重定向响应的数据的第二请求来ping该第二不同服务器。
在一些示例中,ping该不同服务器包括:发起与客户端装置至目的地页面的重定向不同的第二重定向路径。在一些示例中,ping不同服务器包括:在发起ping时开始计数器;使用该计数器来跟踪已流逝请求时间;并且在已流逝请求时间超出超时阈值时重试对该不同服务器的ping。
在一些示例中,客户端装置是通过无线通信网络通信的移动装置,并且所述一个或者多个服务器独立于该移动装置通过有线通信网络通信。
在另一一般方面中,一种方法包括:由一个或者多个服务器检测与客户端装置处的数字分量的交互。该方法还包括:由所述一个或者多个服务器识别能够将客户端装置重定向至通过与数字分量的交互来请求的目的地资源的中间服务器。该方法包括:由所述一个或者多个服务器利用包括和与数字分量的交互相对应的交互数据的请求来ping该中间服务器,以及由所述一个或者多个服务器经由中间服务器来接收目的地资源的标识符。该方法包括:由所述一个或者多个服务器使用所述标识符将客户端装置重定向至目的地资源。
该方面的其它实施例包括:对应的系统、设备、以及配置为执行该方法的动作的、编码在计算机存储装置上的计算机程序。
可以实现该文档中描述的主题的特定实施例以便达成下面的优点中的一个或者多个。当客户端装置对资源作出请求时,客户端装置可以跳过客户端装置否则本应进行的一个或者多个中间的重定向,由此减少客户端装置必须沿循以从托管资源的目的地服务器获得资源的重定向的数目。使得客户端装置能够跳过中间的重定向(例如,在客户端装置对资源的初始请求与客户端装置被定向至托管资源的目的地服务器之间发生的重定向)降低了将阻止客户端装置从目的地服务器获得资源的错误的可能性。将阻止客户端装置从目的地服务器获得资源的错误的示例包括:客户端装置在被重定向至托管资源的目的地服务器之前遇到无响应的中介服务器或者遇到影响其中一个中间服务器的暂时性网络故障。在被重定向至目的地服务器之前,客户端装置可能会在被重定向至中介服务器时失去网络连接。在一些示例中,中间服务器可以提供将客户端装置引导至不正确的目的地的错误的重定向数据。
因为向中间服务器的每个重定向增加了从目的地服务器获得资源所需的时间量,所以当重定向的数目减少时客户端从目的地服务器获得资源所需的时间量减少。在移动装置的场境(context)下,由每个重定向所添加的时间量可能在本质上源于网络调用如何在无线(例如,蜂窝)网络中执行的性质,并且可以造成消极的用户体验或者页面加载错误(例如,由于不稳定的无线网络可用性或者加载)。同样,为了减少由移动装置的重定向引入的时延,减少这些重定向的数目是重要的。减少重定向的数目也减少了所使用的移动数据量,由此提供对移动数据的更高效的使用,移动数据对于许多用户而言可能是有限的。贯穿对该文档的讨论,与将客户端装置重定向至中间服务器相反,通过使用本文讨论的技术,给定服务器代表客户端装置来联系中间服务器而不是要求客户端装置来联系中间服务器。例如,给定服务器可以沿循客户端装置本应沿循的重定向链(例如,对中间服务器的一系列调用),而不是要求客户端装置来沿循重定向链。
给定服务器通常通过可靠的通信链路来与中间服务器通信,由此增加了向每个中间服务器提供适当的信息的可能性。例如,与中间服务器的通信可以发生在高速有线网络——诸如光网络、数字订户线路网、或者混合网络——上。此外,使用给定服务器来与中间服务器通信使得用户具备额外的可靠性技术,诸如在尚未在指定的时间量内实现发送至其中一个中间服务器的请求时能够利用“重试”的服务器。例如,如果“超时”出现在其中一个中间服务器作出响应之前,则给定服务器可以发起将请求的第二实例传送至未能作出响应的中间服务器的重试。当客户端装置被给予任务来联系每个中间服务器时,“重试”的使用通常是不可用的。由此,在该文档中讨论的技术增强了将来自客户端装置的数据递送至重定向链中的每个中间服务器的可靠性。
在下面的附图和描述中阐述了本说明书中描述的主题的一个或者多个实施例的细节。该主题的其它特征、方面、和优点将根据说明书、附图、和权利要求书而变得显而易见。
附图说明
图1是分发数字分量以供与电子文档一起呈现的示例环境的框图。
图2A-B是将用户重定向至目的地页面的示例数据流。
图3是将用户定向至目的地页面的示例过程的流程图。
图4是示例计算系统的框图。
在各附图中类似的附图标记和名称指示类似的元素。
具体实施方式
本文档描述了减少客户端装置在试图访问由该客户端装置请求的资源时必须沿循的重定向的数目的方法、系统、和装置。在一些情形下,当通过与客户端装置处的数字分量的交互而生成对资源的请求时,生成的初始请求可以将客户端装置定向至与托管所请求的资源的服务器不同的给定服务器。例如,给定服务器可以是跟踪与数字分量的交互的跟踪服务器。在该示例中,跟踪服务器检查该请求——并且在特定情况下检查统一资源定位符(URL)的内容,其被用于联系跟踪服务器以识别、提取、和记录与和数字分量的交互有关的信息(例如,发生交互的客户端装置的标识符或者执行交互的用户的账户标识符)。
一旦跟踪服务器已经从该请求获得信息,跟踪服务器就能沿着朝向托管所请求的资源的目的地服务器的路径重定向客户端装置(例如,使用指定待联系的下一个服务器的301或者302重定向命令)。在一些情形下,由跟踪服务器下发的重定向可以指向与目的地服务器不同的中间服务器。例如,在数字分量的提供者利用各种不同的跟踪服务的情形下,中间服务器可以是被要求获得有关与数字分量的交互的信息以便提供另一跟踪服务的另一服务器。当将客户端服务重定向至该中间服务器时,可以将客户端装置重定向至另一中间服务器,和/或在最终被重定向至托管通过与数字分量的交互而最初请求的资源的目的地页面之前,沿循指向各个中间服务器的相继的重定向的链。
如下文中更详细地讨论的,可以通过将重定向职责分摊(offload)到给定服务器装置来减少在到达目的地服务器之前要求客户端装置沿循的重定向的数目。在一些实施方式中,给定服务器(例如,由客户端装置响应于和数字分量或者随后的中间服务器的交互而联系的初始服务器)可以通过直接将客户端装置重定向至目的地服务器而不是将客户端装置重定向至中间服务器来中断由客户端装置沿循的重定向链。当给定服务器将客户端装置重定向至目的地服务器时,给定服务器可以沿循否则本应由客户端装置沿循的重定向路径以确保重定向链中的每个中间服务器和与由客户端装置提供的交互有关的信息相联系。由此,将客户端装置所请求的资源呈现在客户端装置处的时间少于如果客户端装置已经沿循完整的重定向链本应需要的时间,并且通过减少客户端装置与中间服务器建立的通信链接的数目而增加将所请求的资源成功递送至客户端装置的可靠性。
注意,在本文档中描述的技术还可以在用户正在可用应用间浏览(例如,在在线应用商店或者web浏览器中)的情形下或者在其它环境中(例如,在发布者网页上)实现。为了简洁起见,以下大部分描述将涉及搜索结果环境。
如贯穿本文档所使用的,短语“数字分量”指代数字内容或者数字信息的离散单元(例如,视频剪辑、音频剪辑、多媒体剪辑、图像、文本、或者另一内容单元)。可以按照电子的方式将数字分量存储在作为单个文件的物理存储器装置或者存储在文件集合中,并且数字分量可以采取视频文件、音频文件、多媒体文件、图像文件、或者文本文件的形式并且包括广告信息,使得广告是一种类型的数字分量。通常,数字分量由单个提供者或者来源(例如,广告主、发布者、或者其它内容提供者)限定(或者提供),但是可以是来自多种来源的内容的组合。可以将来自多种不同的来源的数字分量组合到单个电子文档(例如,各种不同的数字分量的集合)中,并且可以将来自不同的来源的各个数字分量的部分与从搜索结果提取的信息(或者内容的其它部分)一起组合到单个数字分量中。
图1是分发数字分量以供与电子文档一起呈现的示例环境100的框图。示例环境100包括网络102,诸如局域网(LAN)、广域网(WAN)、互联网、或者它们的组合。网络102连接电子文档服务器104、客户端装置106、中间服务器108、和数字分量分发系统(DCDS)110(也称为分量分发系统)。示例环境100可以包括许多不同的电子文档服务器104、客户端装置106、和中间服务器108。
客户端装置106是能够通过网络102来请求和接收资源的电子装置。示例客户端装置106包括可以通过网络102来发送和接收数据的个人计算机、移动通信装置、和其它装置。客户端装置106通常包括诸如web浏览器用户应用以来促进数据通过网络102的发送和接收,但是由客户端装置106执行的本原应用也可以促进数据通过网络102的发送和接收。
电子文档是将内容集合呈现在客户端装置106处的数据。电子文档的示例包括网页、文字处理文档、便携式文档格式(PDF)文档、图像、视频、搜索结果页面、和馈送源。本原应用(例如,“app”)——诸如安装在移动计算设备、平板计算设备、或者台式计算装置上的应用——也是电子文档的示例。可以由电子文档服务器104(“电子Doc服务器”)将电子文档105(“电子Doc”)提供给客户端装置106。例如,电子文档服务器104可以包括托管发布者网站的服务器。在该示例中,客户端装置106可以发起对资源——诸如给定发布者网页的请求,并且托管给定发布者网页的电子文档服务器104可以通过发送机器可执行指令来对该请求作出响应,该机器可执行指令发起在客户端装置106处对给定网页的呈现。
在另一示例中,电子文档服务器104可以包括客户端装置106可以从其下载app的应用服务器。在该示例中,客户端装置106可以请求资源——诸如安装app所需的文件,下载客户端装置106处的文件,并且然后在本地执行所下载的应用。
电子文档105可以包括各种内容。例如,电子文档105可以包括在电子文档自身内和/或不随着时间发生变化的静态内容(例如,文本或者其它指定的内容)。电子文档105还可以包括可以随时间或者以每请求方式发生变化的动态内容。例如,给定电子文档105的发布者可以维护用于填充电子文档105的部分的数据源。在该示例中,给定电子文档105可以包括一个或者多个标记或者脚本,当由客户端装置106对给定电子文档105进行处理(例如,渲染或者执行)时该一个或者多个标记或者脚本使得客户端装置106向数据源请求内容。客户端装置106将从数据源获得的内容整合到给定的电子文档105中以创建包括从数据源获得的内容的复合电子文档。
在一些情形下,给定电子文档105可以包括引用DCDS 110的一个或者多个数字分量标记或者数字分量脚本。在这些情形下,当由客户端装置106对给定电子文档105进行处理时,由客户端装置106执行数字分量标记或者数字分量脚本。对数字分量标记或者数字分量脚本的执行将客户端装置106配置为生成对包括一个或者多个数字分量112的资源的请求(称为“分量请求”),通过网络102将该请求传送至DCDS 110。例如,数字分量标记或者数字分量脚本可以使得客户端装置106能够生成包括报头和有效载荷数据的分组化数据请求。分量请求112可以包括指定特征的事件数据,所述特征诸如正在向其请求数字分量的服务器的名称(或者网络位置)、进行请求的装置(例如,客户端装置106)的名称(或者网络位置)、和/或DCDS 110可以用来选择在对请求作出的响应中提供的一个或者多个数字分量的信息。由客户端装置106通过网络102(例如,电信网络)将分量请求112传送至DCDS 110的服务器。
分量请求112可以包括指定其它事件特征——诸如所请求的电子文档和电子文档的可以呈现数字分量的位置的特性——的事件数据。例如,可以向DCDS 110提供将指定对将呈现数字分量的电子文档(例如,网页)的引用(例如,URL)的事件数据、电子文档的可用于呈现数字分量的可用位置、可用位置的大小、和/或适格在位置中呈现的媒体类型。类似地,指定与电子文档相关联的关键字(“文档关键字”)或者由电子文档引用的实体(例如,人、地点、或者事物)的事件数据还可以被包括在分量请求112中(例如,作为有效载荷数据)并且提供给DCDS 110以促进适格与电子文档一起呈现的数字分量的标识。事件数据还可以包括从客户端装置106提交的搜索查询以获得搜索结果页面和/或指定搜索结果和/或包括在搜索结果中的文本内容、可听内容、或者其它视觉内容的数据。
分量请求112还可以包括与其它信息有关的事件数据,诸如客户端装置的用户已经提供的信息、指示向其提交了分量请求的州或者地区的地理信息、或者针对将显示数字分量的环境提供场境(context)的其它信息(例如,分量请求的日内时间、分量请求的周内日、将显示数字分量的装置类型——诸如移动装置或者平板装置)。例如,可以通过分组化网络来传送分量请求112,并且分量请求112自身可以被格式化为具有报头和有效载荷数据的分组化数据。报头可以指定分组的目的地,并且有效载荷数据可以包括上文讨论的任何信息。
响应于接收到分量请求112和/或使用包括在分量请求112中的信息,DCDS 110选择将与给定电子文档一起呈现的数字分量。在一些实施方式中,对数字分量选择(通过使用本文描述的技术)少于两次,以避免可能由数字分量的延迟选择致使的错误。例如,响应于分量请求112而提供数字分量方面的延迟可以导致客户端装置106处的页面加载错误或者使得电子文档的部分即使在将电子文档的其它部分被呈现在客户端装置106处之后仍保持未填充状态。而且,当将数字分量递送至客户端装置106时,随着在将数字分量提供给客户端装置106方面的延迟增加,更加有可能电子文档将不再被呈现在客户端装置106处,从而消极地影响对电子文档的用户体验。进一步地,在提供数字分量方面的延迟可以导致数字分量的递送失败,例如,如果在提供数字分量时不再将电子文档105呈现在客户端装置106处。
在一些实施方式中,DCDS 110实现在分布式计算系统中,该分布式计算系统包括例如重定向减少设备111(例如,包括计算硬件和代码的服务器)和/或互连的和响应于请求112而识别并分发数字分量的多个计算装置的集合。多个计算装置的集合共同操作以从数以百万计的可用数字分量的语料库当中识别适格呈现在电子文档中的数字分量的集合。例如,在数字分量数据库116中可以对数以百万计的可用数字分量进行索引。每个数字分量索引条目可以引用对应的数字分量和/或包括增进(contribute to)(例如,约束(condition)或者限制)对应的数字分量的分发/传送的分发参数。例如,分发参数可以通过要求分量请求包括与数字分量的其中一个分发参数匹配(例如,完全地匹配或者以某个预先指定的相似水平来匹配)的至少一个准则来增进数字分量的传送。
DCDS 110的重定向减少设备(RRA)111可以是与各个中间服务器——诸如中间服务器108——通信的跟踪服务器。RRA 111可以将客户端装置106定向至客户端装置106所请求并且托管在各个服务器——诸如电子doc服务器105上的资源。RRA 111包括用户可以通过其来提供输入的前端接口。例如,前端接口可以包括用户界面,该用户界面包括用户界面元素,诸如,按钮和文本录入栏。前端接口包括实现通过一个或者多个通信网络——诸如网络102——的通信的通信接口。RRA 111可以通过通信接口与中间服务器108通信。例如,当客户端装置106请求数字分量时,RRA 111可以通过使用通信接口来提供数据——诸如客户端装置106的交互跟踪数据——的代理服务器而与中间服务器108通信。
可以将适格的数字分量的标识划分为多个任务,然后将该多个任务在多个计算装置的集合内的计算装置当中分配。例如,在多个计算装置的集合中的不同计算装置分别均可以分析数字分量数据库116的不同部分以识别具有与包括在分量请求112中的信息匹配的分发参数的各个数字分量。在多个计算装置的集合中的不同的计算装置可以使用存储在数字分量数据库116中的报告数据118,其包括与特定数字分量的用户交互数据。在一些实施方式中,在多个计算装置的集合中的每个给定计算装置可以分析不同的数据维度(或者维度的集合)并且将分析的结果传递(例如,传送)回DCDS 110。例如,由集合114中的每个计算装置提供的结果118a-118c可以标识适格响应于分量请求而分发的数字分量的子集和/或具有某些分发参数的数字分量的子集。例如,对数字分量的子集的识别可以包括将事件数据与分发参数进行比较,并且识别具有与事件数据的至少一些特征匹配的分发参数的数字分量的子集。
DCDS 110对从多个计算装置的集合接收的结果进行聚合并且使用与所聚合的结果相关联的信息来选择将要响应于请求112而提供的一个或者多个数字分量。如下文所讨论的,例如,DCDS 110可以基于一个或者多个组件分量评估过程的结果来选择获胜数字分量(一个或者多个数字分量)的集合。进而,DCDS 110可以通过网络102来生成和传送回复数据120(例如,表示回复的数字数据),该回复数据使得客户端装置106能够将获胜数字分量的集合整合到给定电子文档中,使得获胜数字分量的集合和电子文档的内容能够一起呈现在客户端装置106的显示器处。
在一些实施方式中,客户端装置106执行包括在回复数据120中的指令,该指令配置客户端装置106并且使客户端装置106能够从一个或者多个数字分量服务器获得获胜的数字分量的集合。例如,在回复数据120中的指令可以包括网络位置(例如,统一资源定位符(URL))和使客户端装置106能够将服务器请求(SR)121传送至中间服务器108以从中间服务器108获得给定获胜数字分量的脚本。响应于该请求,中间服务器108将识别在服务器请求121中指定的给定获胜数字分量(例如,在存储多个数字分量的数据库内)并且将数字分量数据(DC数据)122传送至客户端装置106,该数字分量数据将给定获胜数字分量呈现在客户端装置106处的电子文档中。
在一些实施方式中,当客户端装置106与给定获胜数字分量交互时,客户端装置106将对资源的请求传送至DCDS 110。例如,客户端装置106可以选择给定获胜数字分量,这是下载移动应用的链接。在选择该链接时,客户端装置106将访问下载移动应用所需的文件的请求传送至DCDS 110。DCDS 110基于请求中的数据来确定要将客户端装置106定向至的位置。
在一些示例中,DCDS 110将客户端装置106定向至一个或者多个中间服务器以向中间服务器提供指示与客户端装置106处的给定获胜数字分量的交互的交互数据。这些中间服务器可以包括中间服务器108。在下文中更详细地描述的其它示例中,DCDS 110没有将客户端装置106重定向至中间服务器,并且作为替代直接将客户端装置106定向至托管所请求的资源的所请求的目的地服务器。
为了促进对电子文档的搜索,环境100可以包括通过爬取电子文档并且对电子文档进行索引(例如,基于爬取的电子文档的内容来索引)来识别电子文档的搜索系统150。可以基于数据所关联的电子文档来对与电子文档有关的数据进行索引。将电子文档的经索引且可选地经缓存的副本存储在搜索索引152(例如,硬件存储器装置)中。与电子文档相关联的数据是表示包括在电子文档中的内容的和/或电子文档的元数据中的数据。
客户端装置106可以通过网络102将搜索查询提交至搜索系统150。作为响应,搜索系统150访问搜索索引152以识别与搜索查询相关的电子文档。搜索系统150以搜索结果的形式来识别电子文档,并且在搜索结果页面中将搜索结果返回至客户端装置106。
搜索结果是由识别对特定搜索查询作出响应(例如,与特定搜索查询相关)的电子文档的搜索系统150所生成的数据,并且包括响应于和搜索结果的用户交互而使得客户端装置向指定的网络位置(例如,URL)请求数据的活动链接(例如,超文本链接)。示例搜索结果可以包括网页标题、从网页提取的文本摘录(snippet)或者图像的一部分、和网页的URL。另一示例搜索结果可以包括可下载的应用的标题、描述可下载的应用的文本摘录、描绘可下载的应用的用户界面的图像、和/或指向可以将应用从其下载至客户端装置106的位置的URL。
在一些情形下,搜索系统150可以是应用商店(或者在线门户(online portal))的一部分或者与该应用商店(或者在线门户)交互,应用可以从该应用商店(或者在线门户)下载以供安装在客户端装置106处以便呈现与关于所提交的搜索请求的可下载的应用有关的信息。如同其它电子文档,搜索结果可以包括可以呈现数字分量(例如,可以被格式化为广告的视频剪辑、音频剪辑、图像、或者其它数字分量)的一个或者多个数字分量槽位。
在一些实施方式中,多个服务器——诸如中间服务器108——在将用户定向至电子文档105之前跟踪与特定数字分量的用户交互。DCDS 110通过直接向客户端装置106提供对电子文档105的访问,而不将客户端装置106重定向至诸如中间服务器108的其它服务器,而使得客户端装置能够利用比现有方法更少的重定向来对电子文档105进行访问。与将客户端装置106重定向至中间服务器108相反,DCDS110接收用户的请求112,并且直接传送具有直接指向由电子文档服务器104提供的电子文档105的引用的回复120。如果中间服务器108通过将客户端装置重定向至中间服务器108来跟踪与特定数字分量的用户交互,则DCDS110的重定向减少设备111(或者DCDS 110的另一组件)直接将客户端装置106重定向至托管所请求的资源的中间服务器,并且沿循客户端装置106否则本应沿循的重定向来将报告数据提供给中间服务器108。如上所述,除了与其它信息有关的事件数据之外,报告数据还可以包括与特定电子组件的用户交互数据。
图2A是示出如何通过重定向链来将客户端装置定向至所请求的资源的示例数据流200。由联系多个服务器——包括跟踪服务器210、中间服务器A 220、中间服务器B 230、和目的地服务器240——的客户端装置106执行数据流200的操作。在一些实施方式中,流200的阶段在诸如环境100的网络环境内执行。
在一些示例中,客户端装置106是移动装置——诸如手机、智能电话、或者平板计算机并且通过无线网络通信。服务器210、220、230、和240可以通过与客户端装置106通过其通信的无线网络分开的有线网络通信。例如,客户端装置106可以是通过无线蜂窝网络通信的智能电话,而服务器210、220、230、和240是通过有线网络通信的远程服务器。
跟踪服务器210从客户端装置106接收跟踪数据,并且基于该跟踪数据来为客户端装置106确定重定向目的地。例如,跟踪服务器210可以确定客户端装置106已经与由数字分量提供者通过数字分量服务器提供的数字分量交互。数字分量提供者可以通过客户端装置106与数字分量的交互来请求交互跟踪数据以供其自身的分析使用,并且可以请求将客户端装置106重定向至中间服务器(例如,其服务器或者数字分量提供者使用的第三方服务器)。
服务器A 220跟踪在客户端装置与特定电子文档之间的交互。服务器A 220从客户端装置106接收交互数据并且使用该交互数据来将分析提供给资源提供者,诸如数字分量提供者。在一些实施方式中,服务器A 220是由与维护跟踪服务器210和目的地服务器240中的一方或者多方分开的一方维护的第三方服务器。例如,服务器A 220可以由分析公司维护,跟踪服务区210可以由搜索引擎公司维护,并且目的地服务器240可以由数字分量提供者维护。使用服务器A 220的数字分量提供者可以在将与由数字分量提供者提供的数字分量交互的客户端装置106定向至提供所请求的资源的目的地服务器240之前,请求将该客户端装置106定向至服务器A 220以使得与数字分量的交互由服务器A记录。
服务器B230可以是与服务器A 220相似的第三方服务器。例如,服务器B 230还可以是数字分量提供者所使用的第三方分析服务器。在一些示例中,数字分量提供者可以使用服务器A 220或者服务器B 230中的一个或者多个来进行与由跟踪服务器210提供的那些分析不同的分析。例如,特定数字分量提供者可以使用服务器A 220和服务器B 230两者以用于分析,并且可以请求将客户端装置106重定向至服务器A220和服务器B 230二者以提供与由特定数字分量提供者提供的特定数字分量的交互跟踪数据。服务器B 230可以由与维护服务器A 220的一方不同的一方维护。例如,服务器B 230可以是与服务器A 220不同的第三方服务器,并且服务器B 230可以由数字分量提供者使用。
当客户端装置106(例如,通过重定向)向目的地服务器240请求资源时,目的地服务器240托管资源并且提供客户端装置106所请求的资源。例如,如果客户端装置106请求安装应用所需的文件,则在将客户端装置106定向至目的地服务器240(例如,通过由服务器B230下发的重定向指令来定向)时目的地服务器240可以提供所请求的文件。在另一示例中,如果客户端装置106请求安全令牌以对特定网站进行访问,则在将客户端装置106定向至目的地服务器240时目的地服务器240可以提供该安全令牌。
流200从阶段(1)开始,在阶段(1)中跟踪服务器210从客户端装置106接收URL请求202。当客户端装置与数字分量交互时,URL请求202由客户端装置106传送至跟踪服务器210。例如,如果客户端装置106的用户点击下载新web浏览器的链接,则该链接使得客户端装置106将URL请求202传送至跟踪服务器210。URL请求202包括来自客户端装置106的交互跟踪数据。例如,URL请求202可以包括诸如交互的指示的跟踪数据、客户端装置106与其交互的数字分量、和唯一地标识客户端装置106的标识符。在一些实施方式中,URL请求202包括数字分量的提供者和托管所请求的资源的目的地服务器240的位置的指示。
在客户端装置106被定向至目的地服务器240和所请求的资源之前,URL请求202可以标识跟踪服务器210要将客户端装置106重定向至其的一个或者多个中间服务器。替选地,跟踪服务器210可以存储标识待联系的一个或者多个中间服务器的信息。例如,数字分量提供者可以使用与跟踪服务器210不同的第三方服务器来执行对与由数字分量提供者提供的数字分量的交互数据的独立分析。在该特定示例中,在客户端装置106联系跟踪服务器210之后并且在客户端装置106被定向至目的地服务器240之前,数字分量提供者已经请求将客户端装置106重定向至服务器A 220。
流200继续进行阶段(2),在阶段(2)中跟踪服务器210将重定向数据212传送至客户端装置106。跟踪服务器210检测在URL请求202内的(或者来自数据存储器中的)重定向信息,并且将重定向数据212提供给客户端装置106,从而使得客户端装置106被重定向至在跟踪服务器210与目的地服务器240之间的中间服务器。在一些示例中,重定向数据212是回复120的示例。重定向数据212包括客户端装置106正被定向至的特定服务器的指示并且可以包括重定向301或者重定向302命令。在该特定示例中,重定向数据212将客户端装置106定向至服务器A 220。当装置联系中间服务器时,每个中间服务器存储识别该装置要重定向至的下一个服务器的信息。
流200继续进行阶段(3),在阶段(3)中客户端装置106将报告数据214传送至服务器A220。报告数据214包含由服务器A220用来跟踪与特定数字分量的客户端装置交互的交互跟踪数据。在一些实施方式中,交互跟踪数据包括跟踪交互所利用的代码的一部分。交互跟踪数据可以包括其它数据,诸如唯一地标识客户端装置106的标识符、唯一地标识客户端装置106与其交互的数字分量的标识符、服务器标识符、和/或客户端装置106的位置信息。
流200继续进行阶段(4),在阶段(4)中服务器A220将重定向数据222传送至客户端装置106。在客户端装置被定向至目的地服务器240之前,重定向数据222指示客户端装置106所定向至的下一个中间服务器。例如,跟踪服务器210可以识别客户端装置106所定向至的第一中间服务器是服务器A 220并且将重定向数据212传送至客户端装置106。服务器A220访问指示下一个中间服务器的数据以及下一个中间服务器所请求的数据。例如,服务器A220可以访问指示服务器B230的地址的数据和服务器230B所请求的特定交互跟踪数据。服务器A 220从报告数据214或者URL请求提取服务器230B所请求的特定交互跟踪数据,并且通过使用特定交互跟踪数据和服务器B 230的地址来生成重定向数据222。然后,服务器A220将重定向数据222传送至客户端装置106。在一些示例中,服务器A 220可以修改重定向数据212以指示客户端装置106已经到达第一中间服务器以生成重定向数据222。
流200继续进行阶段(5),在阶段(5)中客户端装置106将报告数据224传送至服务器B 230。通过重定向数据222将客户端装置106定向至服务器B220,并且指示客户端装置106将报告数据224提供给服务器B 230。报告数据224包括服务器B 230所请求的数据,诸如如上文所述的交互跟踪数据。在一些示例中,服务器A 220通过修改报告数据214来生成报告数据224。例如,服务器A 220可以在报告数据224中指示数据已经由服务器A 220接收。
流200继续进行阶段(6),在阶段(6)中,服务器B 230将重定向数据232传送至客户端装置106。服务器B 230确定客户端装置106应当定向至的所有中间服务器都已经被到达过。在一些示例中,服务器B 230访问报告数据224以确定客户端装置已经到达所有的中间服务器。然后,服务器B 230将重定向数据232提供给客户端装置106以将客户端装置106定向至目的地服务器240。
流200继续进行阶段(7),在阶段(7)中将客户端装置106定向至目的地服务器240。重定向数据232包括目的地服务器240的位置数据。客户端装置106接收重定向数据232并且将客户端装置106定向至目的地服务器240以访问所请求的资源。客户端装置106可以从目的地服务器240下载所请求的资源。
在一些实施方式中,可以存在更多或者更少的中间服务器。在客户端装置106请求资源时与将客户端装置106定向至目的地服务器240以访问资源时之间存在至少一个中间服务器。
在沿循数据流200而将客户端装置定向至该客户端装置所请求的资源时,可能会发生非意料的过程、和伴随的时延或者错误。例如,可能打开对于资源的访问多余的单独的web浏览器窗口或者应用。在一些示例中,中间服务器可以将客户端装置重定向至错误的资源或者位置。例如,与打开app商店以开始下载安装app所需的文件相反,第三方中间服务器可以迫使客户端装置将web浏览器打开至客户端装置进行安装所需的特定移动app的着陆页面。
这些附加过程增加在请求资源时与将客户端装置定向至该资源时之间的时延。例如,针对客户端装置所经受的每个重定向可以引致时延增加,并且随着客户端装置所定向至的中间服务器的数目的增加,客户端装置的用户的等待时间也会增加。另外,在每个重定向处存在断开连接的可能性。这种可能性对于无线网络——诸如可能是不可靠的移动/蜂窝网络——尤为明显。
图2B是用于利用比数据流200所要求的重定向更少的重定向将客户端装置定向至所请求的资源的示例数据流250。在将客户端装置定向至该客户端装置所请求的资源之前,流250减少客户端装置所经受的重定向的数目,从而减少时延和中断客户端装置沿循的定向链的可能性。流250涉及跟踪服务器260、服务器A 270、服务器B 280、和目的地服务器290。如上文关于图1所描述的,跟踪服务器260是重定向减少设备111的示例,并且包括使得跟踪服务器260能够减少客户端装置所经受的重定向的数目的硬件和/或代码。在一些示例中,跟踪服务器260是包括重定向减少设备111的跟踪服务器并且能够通过使用重定向减少设备111来减少客户端装置所经受的重定向的数目。
在一些示例中,客户端装置106是移动装置——诸如手机、智能电话、或者平板计算机,并且通过无线网络通信。在一些示例中,服务器260、270、280、和290可以通过与客户端装置106通过其通信的无线网络分开的有线网络通信。例如,客户端装置106可以是通过无线蜂窝网络通信的智能电话,而服务器260、270、280、和290是通过有线网络通信的远程服务器。
流250从阶段(1)开始,在阶段(1)中跟踪服务器260接收URL请求252和交互数据254。URL请求252可以与URL请求202相似。跟踪服务器260接收URL请求252和交互数据254并且生成要传送至客户端装置106的结构化响应。
URL请求252包括指示目的地服务器290的位置的数据,跟踪服务器260使用该数据来生成传送至客户端装置106的响应。例如,URL请求252可以包括报头或者指示URL请求252的特定特性的字符串。在被定向至目的地服务器290之前,报头可以包括指示是否存在客户端装置106应当定向至其以提供诸如交互数据254的交互数据的中间服务器的特定位。跟踪服务器260可以基于该特定位的值来确定存在中间服务器,并且继续识别目的地服务器290的位置。在一些示例中,跟踪服务器260对比资源的源来审查资源的凭证以确定是否存在中间服务器。与将客户端装置106定向至中间服务器相反,跟踪服务器260然后利用目的地服务器290的位置来生成对客户端装置106的响应。
如果URL请求252指示应当使用代理,则跟踪服务器260可以调出代理服务器。例如,如果在URL请求252的报头中设置适当的位,则跟踪服务器260可以调出代理服务器。在一些实施方式中,代理服务器可以是ping位于跟踪服务器260的托管环境外部的网络和服务器的回发(postback)代理服务器。在流250中,一旦跟踪服务器260已经基于URL请求252而确定存在客户端装置106要定向至的中间服务器,跟踪服务器260就能确定要将客户端装置106定向至目的地服务器290而不是中间服务器,并且跟踪服务器260将所请求的交互数据提供给在URL请求252中标识的中间服务器。
流250继续进行阶段(2)。在该特定示例中,在阶段(2)内发生若干步骤,阶段(2)包括:阶段(2A)、阶段(2B)、阶段(2C)、和阶段(2D)。阶段(2A)和阶段(2B)、阶段(2C)、和阶段(2D)可以同时发生。例如,阶段(2A)可以与阶段(2B)、阶段(2C)、和阶段(2D)并行发生。阶段(2B)、阶段(2C)、和阶段(2D)顺序地发生。
在阶段(2A)期间,跟踪服务器260将重定向数据262提供给客户端装置106。一旦跟踪服务器260已经接收URL请求252并且确定存在客户端装置106应当定向至的中间服务器,跟踪服务器260就会生成包含指示目的地服务器290的位置的重定向数据262的结构化响应。重定向数据262可以包括HTTP参照位址,或者URL请求262的标识链接至正被请求的资源的网页的地址的报头的字段。例如,参照位址可以指示链接至正由客户端装置106请求的特定移动应用的博客帖子或者客户端装置106的起源位置。在这样的示例中,由目的地服务器260托管移动应用。
重定向数据262包括将客户端装置106定向至托管客户端装置106所请求的资源的目的地服务器290的数据。例如,重定向数据262可以包括目的地服务器290的位置和指令客户端装置106从目的地服务器290访问所请求的资源的代码。
当正在执行阶段(2A)时,跟踪服务器260识别客户端装置106应当向其提供诸如交互数据254交互数据的中间服务器。
在一些实施方式中,中间服务器是在托管跟踪服务器290和/或目的地服务器290的环境的外部托管的第三方服务器。为了ping第三方中间服务器,跟踪服务器260可以联系代理服务器以请求代理服务器ping中间服务器。Ping服务器可以包括联系该服务器以及将各种信息提供给该服务器。例如,对服务器的ping可以包括:提供从接收到的URL请求提取的信息和/或与URL请求有关的其它信息(例如,存储在数据存储器中的和/或索引至URL请求的信息和/或与URL请求相对应的标识符)。在一些实施方式中,跟踪服务器260可以ping中间服务器以向中间服务器提供包括在最初接收到的URL请求262中的信息。代理服务器允许跟踪服务器260进行低时延远程过程调用(RPC),以便与中间服务器——诸如服务器A270和服务器B 280——通信。在一些示例中,代理服务器具有高超时期限以应对接收到对ping的响应方面的长时段的时延。在一些示例中,如果已经超过超时期限,则代理服务器可以重试ping中间服务器。在一些示例中,ping是立即返回结果而不使执行ping的服务器线程休眠的非阻塞ping,从而通过消除使由服务器执行的其它过程的执行延迟的阻塞来减少延迟。
在阶段(2B)期间,跟踪服务器260利用包括报告数据264的请求ping服务器A 270。报告数据264包括从客户端装置106传送至跟踪服务器260的交互数据254的至少一部分。服务器A270可以使用报告数据264来为客户端装置106与其交互的数字分量的提供者产生分析。例如,服务器A 270可以是第三方分析服务器,其分析报告数据264以向数字分量提供者提供独立于由跟踪服务器260提供的统计的交互统计。
在一些示例中,当跟踪服务器260请求代理服务器ping中间服务器时,跟踪服务器260在发起对特定中间服务器的ping时开始计数器并且跟踪在等待对ping的响应时已经流逝的时间量。如果已经达到特定的超时期限,则跟踪服务器260可以请求代理服务器重试ping特定的中间服务器。
在阶段(2C)期间,跟踪服务器260从服务器A 270接收重定向数据272。在接收到来自跟踪服务器260的报告数据264时,服务器270将重定向数据272传送至跟踪服务器260。重定向数据272将跟踪服务器260定向至服务器B 280。在一些示例中,重定向数据272指令跟踪服务器260将包括交互数据的报告数据提供给服务器B 280。在流200和用于将客户端装置定向至所请求的资源的其它这样的过程中,服务器A 270会将重定向数据272传送至客户端装置106。相比之下,在流250中,跟踪服务器260检测到存在中间服务器并且ping该服务器以截断并且沿循每个重定向以减少客户端装置106所经受的重定向的数目。
在阶段(2D)期间,跟踪服务器260利用包括报告数据264的请求来ping服务器B280。跟踪服务器260按照跟踪服务器260ping服务器A 270的相同方式来ping服务器B 280。跟踪服务器260生成要提供给服务器B280的报告数据264。在一些示例中,基于提供给跟踪服务器260的重定向数据272来生成报告数据264。在一些示例中,跟踪服务器260可以修改报告数据264以生成报告数据274来指示已经将交互跟踪数据提供给前一个中间服务器。例如,跟踪服务器260可以生成报告数据274以指示接收到服务器A270所请求的交互跟踪数据。跟踪服务器260可以将来自从服务器A 270接收的重定向数据272的数据包括在提供给服务器280的报告数据274中。例如,跟踪服务器260可以将一些或者所有的重定向数据272包括在报告数据274中。服务器B280可以使用数据已由服务器A 270接收的指示来生成报告或者将交互统计提供给数字分量提供者。例如,服务器B 280可以将指示已经将客户端装置106的交互跟踪数据提供至的中间服务器的数目的统计提供给数字分量提供者。
跟踪服务器260可以从重定向数据272确定不存在要将交互跟踪数据提供至的另外的中间服务器,并且跟踪服务器260将不ping任何另外的中间服务器。在一些示例中,跟踪服务器260可以从服务器B280接收指示已经到达要将客户端装置106的交互跟踪数据提供至的所有中间服务器的数据。
在一些示例中,顺序地执行阶段(2B)、阶段(2C)、和阶段(2D),并且阶段(2B)与跟踪服务器260将重定向数据262提供给将客户端装置定向至目的地服务器290的客户端装置106的阶段(2A)一起被并行发起。
流250继续进行阶段(3),在阶段(3)中通过重定向数据262将客户端装置106定向至目的地服务器290。阶段(3)顺序地在阶段(2A)之后发生,并且与阶段(2B)、(2C)、和(2D)异步发生。重定向数据262包括目的地服务器290的位置数据和指令客户端装置106向目的地服务器290请求资源的数据。客户端装置106可以从目的地服务器290下载所请求的资源。
通过使得客户端装置106能够在请求资源与访问目的地服务器290处的资源之间绕过对中间服务器的重定向,流250为客户端装置的用户减少时延并且消除每个重定向处的可能的故障点,在这些可能的故障点处在客户端装置106与网络之间的提供对中间服务器的访问的连接可能会断开。
图3是用于将用户定向至所请求的资源的示例过程300的流程图。在一些实施方式中,可以通过一个或者多个服务器来实现过程300。例如,可以通过图2B的跟踪服务器260、服务器A 270、服务器B 280、和目的地服务器290来实现过程300。在一些实施方式中,可以将过程300实现为存储在非暂时性计算机可读介质上的指令,并且当该指令由一个或者多个服务器执行时,该指令可以使得所述一个或者多个服务器执行过程300的操作。
一个或者多个服务器检测与客户端装置处的数字分量的交互(302)。客户端装置可以是通过无线通信网络通信的移动装置。在一些实施方式中,可以使用一个或者多个服务器来实现跟踪服务器260,该跟踪服务器260检查与客户端装置106处的数字分量的交互。所述一个或者多个服务器独立于移动装置而通过有线通信网络通信。例如,如上文参照图1所讨论的,与特定数字分量的交互可以使得客户端装置发起对资源的请求。如上文讨论的,客户端装置可以包括在资源请求中的各个事件数据,并且可以包括指定数字分量和客户端装置与其交互的数字分量的提供者的数据。如下文中更详细地描述的,响应于该交互,跟踪服务器可以将客户端装置重定向至在从客户端装置接收的URL中指定的目的地服务器,并且沿循如果跟踪服务器未将客户端装置重定向至目的地服务器则客户端装置本应沿循的多服务器重定向路径。
所述一个或者多个服务器识别所述一个或者多个服务器要将客户端装置重定向至其的中间服务器和通过与数字分量的交互而请求的目的地服务器(304)。在一些实施方式中,跟踪服务器260识别服务器A 270和服务器B 280,在客户端装置106被定向至目的地服务器290以访问通过与数字分量的交互而请求的资源之前跟踪服务器260要将客户端装置106重定向至该服务器A 270和服务器B 280。例如,如上文关于图2B讨论的,跟踪服务器269可以识别中间服务器270和280以及目的地服务器290。在一些实施方式中,跟踪服务器检查用于联系跟踪服务器的URL,并且提取指定客户端装置要重定向至的中间服务器的路径的信息。替选地,跟踪服务器可以识别与其发生了交互的特定数字分量,并且在将数字分量映射至中间服务器的数据结构中查找中间服务器的路径。
所述一个或者多个服务器将客户端装置重定向至目的地服务器,而不将客户端装置定向至中间服务器(306)。在一些实施方式中,跟踪服务器260可以将客户端装置106重定向至目的地服务器290,而不将客户端装置定向至中间服务器270和280。例如,如上文关于图2B讨论的,跟踪服务器260可以执行阶段(2A),在阶段(2A)中独立于阶段(2B)、阶段(2C)、和阶段(2D)将客户端装置106定向至目的地服务器290。
所述一个或者多个服务器利用包括和与数字分量的交互相对应的交互数据的请求来ping中间服务器(308)。在一些实施方式中,跟踪服务器260利用包括与和数字分量的交互对应的交互数据的请求来ping中间服务器、服务器A 270、和服务器B 280。例如,如上文关于图2B讨论的,跟踪服务器260可以执行阶段(2B)或者(2D)以分别ping服务器A 270或者服务器B 280。在一些示例中,跟踪服务器260将请求传送至代理服务器以执行ping。在一些实施方式中,跟踪服务器260通过发起与将客户端装置重定向至目的地服务器不同的第二重定向路径来ping中间服务器。
在一些实施方式中,跟踪服务器260通过在发起ping时开始计数器并且使用该计数器跟踪利用请求来ping期间已经流逝的时间量,来ping中间服务器,诸如服务器A 270。跟踪服务器260可以重试ping中间服务器或者诸如服务器A 270或者服务器B 280的服务器。
所述一个或者多个服务器从中间服务器接收将所述一个或者多个服务器重定向至第二中间服务器的重定向响应(310)。例如,所述一个或者多个服务器可以从中间服务器接收指示第二中间服务器的位置的重定向响应。在一些实施方式中,跟踪服务器260接收将跟踪服务器260定向至第二中间服务器或者服务器B 280的重定向数据272。
所述一个或者多个服务器利用包括来自重定向响应的数据的第二请求来ping第二中间服务器(312)。例如,所述一个或者多个服务器可以通过执行对于所述一个或者多个服务器的外部通信的代理服务器来ping第二中间服务器。在一些实施方式中,跟踪服务器260利用包括来自重定向数据272的数据的第二请求来ping服务器B 280。
可以存在由所述一个或者多个服务器识别的一个以上的中间服务器。在这样的示例中,所述一个或者多个服务器可以从将所述一个或者多个服务器定向至随后的中间服务器的每个中间服务器接收重定向数据。例如,如上文针对图2B讨论的,在阶段(2C)中,可以将跟踪服务器260重定向至服务器B280。
图4是可以用于执行上述的操作的示例计算机系统400的框图。系统400包括处理器410、存储器420、存储装置430、和输入/输出装置440。例如,可以通过使用系统总线450将各个组件410、420、430、和440互连。处理器410能够对在系统400内执行的指令进行处理。在一个实施方式中,处理器410是单线程处理器。在另一个实施方式中,处理器410是多线程处理器。处理器410能够对存储在存储器420中的或者存储在存储装置430上的指令进行处理。
存储器420在系统400内存储信息。在一个实施方式中,存储器420是计算机可读介质。在一个实施方式中,存储器420是易失性存储器单元。在另一个实施方式中,存储器420是非易失性存储器单元。
存储装置430能够为系统400提供海量存储。在一个实施方式中,存储装置430是计算机可读介质。在各个不同的实施方式中,存储装置430可以包括:例如硬盘装置、光盘装置、由多个计算装置通过网络共享的存储装置(例如,云存储装置)、或者一些其它大容量存储装置。
输入/输出装置440为系统400提供输入/输出操作。在一个实施方式中,输入/输出装置440可以包括一个或者多个网络接口装置,例如,以太网卡、串行通信装置——例如RS-232端口、和/或无线接口装置——例如802.11卡。在另一个实施方式中,输入/输出装置可以包括驱动装置,该驱动装置配置为接收输入数据并且将输出数据发送至其它输入/输出装置,例如键盘、打印机、和显示装置460。然而,也可以使用其它实施方式,诸如移动计算装置、移动通信装置、机顶盒电视客户端装置等。
尽管在图4中已经描述了示例处理系统,但是可以以其它类型的数字电子电路系统、或者以计算机软件、固件、或者硬件——包括在本说明书中所公开的结构及其结构等同物、或者以它们中的一个或者多个的组合来实现本说明书中所描述的主题和功能操作的实施方式。
电子文档(为了简明起见,将其简称为文档)不必需与文件相对应。可以将文档存储在保持其它文档的文件的一部分中、存储在专用于所讨论的文档的单个文件中、或者存储在多个协同文件中。
可以以数字电子电路系统,或者以计算机软件、固件、或者硬件——包括在本说明书中所公开的结构及其结构等同物、或者以它们中的一个或者多个的组合来实现本说明书中所描述的主题和操作的实施例。可以将本说明书中描述的主题的实施例实现为一个或者多个计算机程序,即,编码在计算机存储介质(或者多个计算机存储介质)上以由数据处理设备执行或者控制该数据处理设备的操作的计算机程序指令的一个或者多个模块。替选地或者另外,程序指令可以编码在人工生成的传播信号上,该传播信号例如机器生成的电、光、或者电磁信号,生成该传播信号以对用于传送至合适的接收器设备来供数据处理设备执行的信息进行编码。计算机存储介质可以是以下或者被包括在以下中:计算机可读存储装置、计算机可读存储基底、随机或者串行存取存储器阵列或者装置、或者它们中的一个或者多个的组合。此外,当计算机存储介质不是传播信号时,计算机存储介质可以是编码在人工生成的传播信号中的计算机程序指令的源或者目的地。计算机存储介质也可以是以下或者被包括在以下中:一个或者多个单独的物理组件或者介质(例如,多个CD、盘、或者其它存储装置)。
可以将本说明书中所描述的操作实现为由数据处理设备对存储在一个或者多个计算机可读存储装置上的或者从其它源接收到的数据执行的操作。
术语“数据处理设备”囊括了用于处理数据的所有种类的设备、装置、和机器,包括:例如,可编程处理器、计算机、片上系统、或者前述中的多个或者组合。该设备可以包括专用逻辑电路系统,例如FPGA(现场可编程门阵列)或者ASIC(专用集成电路)。除了硬件之外,该设备还可以包括为所讨论的计算机程序创建执行环境的代码,例如构成处理器固件、协议栈、数据库管理系统、操作系统、跨平台运行时环境、虚拟机、或者它们中的一个或者多个的组合的代码。该设备和执行环境可以实现各种不同的计算模型基础架构,诸如web服务、分布式计算和网格计算基础架构。
可以用任何形式的编程语言——包括编译语言或者解释语言、声明性语言或者过程性语言来编写计算机程序(也称为程序、软件、软件应用、脚本、或者代码),并且可以以任何形式——包括作为独立程序或者作为适合在计算环境中使用的模块、组件、子例程、对象、或者其它单元来部署该计算机程序。计算机程序可以但不必与文件系统中的文件相对应。可以将程序存储在保持其它程序或者数据(例如,存储在标记语言文档中的一个或者多个脚本)的文件的一部分中,或者存储在专用于所讨论的程序的单个文件中,或者存储在多个协同文件(例如,存储一个或者多个模块、子程序、或者代码部分的文件)中。可以将计算机程序部署为在一个计算机上执行或者在位于一个站点处或者跨多个站点分布并且通过通信网络互连的多个计算机上执行。
可以通过一个或者多个可编程处理器来进行本说明书中描述的过程和逻辑流程,该一个或者多个可编程处理器执行一个或者多个计算机程序以通过操作输入数据并且生成输出来执行动作。也可以通过专用逻辑电路系统——例如FPGA(现场可编程门阵列)或者ASIC(专用集成电路)——来执行过程和逻辑流程,并且也可以将设备实现为该专用逻辑电路系统。
适合于执行计算机程序的处理器包括例如通用微处理器和专用微处理器。一般而言,处理器将接收来自只读存储器或者随机存取存储器或者两者的指令和数据。计算机的必要元件是:用于根据指令执行动作的处理器、和用于存储指令和数据的一个或者多个存储器装置。一般而言,计算机还将包括用于存储数据的一个或者多个海量存储装置——例如磁盘、磁光盘、或者光盘),或者计算机可以操作地耦合以接收来自该海量存储装置的数据或者将数据传送至该海量存储装置或者进行两者。然而,计算机无需具有这样的装置。此外,计算机可以嵌入在另一装置中,例如,移动电话、个人数字助理(PDA)、移动音频或者视频播放器、游戏控制台、全球定位系统(GPS)接收器、或者便携式存储装置(例如,通用串行总线(USB)闪速驱动器),仅举数例。适合于存储计算机程序指令和数据的装置包括所有形式的非易失性存储器、介质、和存储器装置,包括:例如,半导体存储器装置,例如EPROM、EEPROM、和闪速存储器装置;磁盘,例如内部硬盘或者可移动盘;磁光盘;以及CD-ROM盘和DVD-ROM盘。处理器和存储器可以由专用逻辑电路系统系统补充或者可以并入该专用逻辑电路系统中。
为了提供与用户的交互,可以在计算机上实现本说明书中所描述的主题的实施例,该计算机具有:用于向用户显示信息的显示装置,例如CRT(阴极射线管)或者LCD(液晶显示器)监视器;以及键盘和指向装置,例如鼠标或者轨迹球,用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈,例如,视觉反馈、听觉反馈、或者触觉反馈;并且可以以任何形式——包括声输入、语音输入、或者触觉输入——来接收来自用户的输入。另外,计算机可以通过将文档发送到用户所使用的装置并且接收来自该装置的文档——例如通过响应于从用户的客户端设备上的web浏览器接收到的请求来将网页发送至该web浏览器——来与用户交互。
可以将本说明书中描述的主题的实施例实现在计算系统中,该计算系统包括:例如作为数据服务器的后端组件、或者包括例如应用服务器的中间件组件、或者包括例如具有图形用户界面或者Web浏览器的客户端计算机的前端组件——用户可以通过该图形用户界面或者该Web浏览器来与本发明中所描述的主题的实施方式交互、或者包括一个或者多个这样的后端组件、中间件组件、或者前端组件的任何组合。可以通过例如通信网络的任何形式或者介质的数字数据通信来将系统的组件互连。通信网络的示例包括:局域网(“LAN”)和广域网(“WAN”)、互连网(例如,互联网)、以及对等网络(例如,点对点对等网络)。
计算系统可以包括客户端和服务器。客户端和服务器一般彼此远离并且通常通过通信网络进行交互。依靠在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。在一些实施例中,服务器将数据(例如,HTML页面)传送至客户端装置(例如,出于向与客户端装置交互的用户显示数据并且接收来自该用户的用户输入的目的)。可以在服务器处从客户端装置接收在客户端装置处生成的数据(例如,用户交互的结果)。
虽然本说明书包含了许多具体实施方式细节,但是不应当将这些细节理解为对任何发明或者可以被要求包含的内容的范围的限制,而是作为特定发明的特定实施例所特有的特征的描述。在本说明书中在单独实施例的场境下描述的某些特征还可以组合地实现在单个实施例中。相反,在单个实施例的场境中描述的各个特征也可以单独地或者以任何合适的子组合实现在多个实施例中。此外,虽然上文可能将特征描述为以某些组合来起作用并且最初甚至对该特征如此要求保护,但是在一些情况下可以从组合中删去来自所要求保护的组合的一个或者多个特征。并且所要求包含的组合可以涉及子组合或者子组合的变型。
类似地,虽然在附图中按照特定顺序描绘了操作,但是不应当将其理解为需要按照所示的特定顺序或者按照相继的顺序来执行这样的操作,或者需要执行所有图示的操作以实现期望的结果。在某些情况下,多任务处理和并行处理可以是有利的。此外,不应当将在上述实施例中的各个系统组件的分离理解为在所有实施例中需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中或者封装到多个软件产品中。
由此,已经描述了本主题的特定实施例。其它实施例在所附权利要求书的范围内。在某些情况下,在权利要求书中记载的动作可以按照不同的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定需要所示的特定顺序或者相继顺序来实现期望的结果。在某些实施方式中,多任务和并行处理可以是有利的。
Claims (33)
1.一种由数据处理设备执行的方法,所述方法包括:
由一个或者多个服务器检测与客户端装置处的数字分量的交互;
由所述一个或者多个服务器识别能够将所述客户端装置重定向至通过与所述数字分量的所述交互来请求的目的地资源的中间服务器;
由所述一个或者多个服务器利用包括和与所述数字分量的所述交互相对应的交互数据的请求来ping所述中间服务器;
由所述一个或者多个服务器获得所述目的地资源的标识符;以及
由所述一个或者多个服务器使用所述标识符将所述客户端装置重定向至所述目的地资源。
2.根据权利要求1所述的方法,其中,识别所述中间服务器包括:检查用于联系所述一个或者多个服务器的URL,并且提取指定所述中间服务器的路径的信息。
3.根据权利要求1至2中的任一项所述的方法,其中,由所述一个或者多个服务器经由所述中间服务器接收所述目的地资源的标识符的步骤进一步包括:
从所述中间服务器接收将所述一个或者多个服务器重定向至第二中间服务器的重定向响应;以及
由所述一个或者多个服务器利用包括来自所述重定向响应的数据的第二请求来ping所述第二中间服务器。
4.根据权利要求1至3中的任一项所述的方法,其中,ping所述中间服务器包括:发起与所述客户端装置至所述目的地资源的所述重定向不同的第二重定向路径。
5.根据权利要求1至4中的任一项所述的方法,其中,ping所述中间服务器包括:
在发起所述ping时开始计数器;
使用所述计数器来跟踪已流逝请求时间;以及
在所述一个或者多个服务器接收到来自所述中间服务器的响应之前,在所述已流逝请求时间超出超时阈值时重试对所述中间服务器的所述ping。
6.根据权利要求1至5中的任一项所述的方法,其中,所述客户端装置是通过无线通信网络通信的移动装置,并且所述一个或者多个服务器独立于所述移动装置来通过有线通信网络通信。
7.一种系统,包括:
数据存储,所述数据存储存储和与各个数字分量的客户端侧交互相对应的交互数据;
前端接口,所述前端接口包括通过一个或者多个通信网络来实现通信的通信接口;
跟踪服务器,所述跟踪服务器连接至所述前端接口,其中,所述跟踪服务器通过执行操作来中断客户端装置所沿循的重定向链,所述操作包括:
检测与客户端装置处的数字分量的交互;
识别能够将所述客户端装置重定向至通过与所述数字分量的所述交互来请求的目的地资源的中间服务器;
利用包括和与所述数字分量的所述交互相对应的交互数据的请求来ping所述中间服务器;
经由所述中间服务器接收所述目的地资源的标识符;
使用所述标识符将所述客户端装置重定向至所述目的地资源。
8.根据权利要求7所述的系统,其中,识别所述中间服务器包括:检查用于联系所述跟踪服务器的URL,并且提取指定所述中间服务器的路径的信息。
9.根据权利要求7至8中的任一项所述的系统,经由所述中间服务器接收所述目的地资源的标识符的操作包括:
从所述中间服务器接收将所述一个或者多个服务器重定向至第二中间服务器的重定向响应;以及
利用包括来自所述重定向响应的数据的第二请求来ping所述第二中间服务器。
10.根据权利要求7至9中的任一项所述的系统,其中,ping所述中间服务器包括:发起与所述客户端装置至所述目的地资源的所述重定向不同的第二重定向路径。
11.根据权利要求7至10中的任一项所述的系统,其中,ping所述中间服务器包括:
在发起所述ping时开始计数器;
使用所述计数器来跟踪已流逝请求时间;以及
在接收到来自所述中间服务器的响应之前,在所述已流逝请求时间超出超时阈值时重试对所述中间服务器的所述ping。
12.根据权利要求7至11中的任一项所述的系统,其中,所述客户端装置是通过无线通信网络通信的移动装置,并且一个或者多个跟踪服务器独立于所述移动装置来通过通信网络通信。
13.一种非暂时性计算机可读介质,所述非暂时性计算机可读介质存储指令,所述指令在由一个或者多个计算装置执行时使得所述一个或者多个计算装置执行权利要求1至6中的任一项所述的操作。
14.一种方法,包括:
由一个或者多个服务器检测与客户端装置处的数字分量的交互;
由所述一个或者多个服务器识别所述一个或者多个服务器要向其重定向所述客户端装置的中间服务器和通过与所述数字分量的所述交互来请求的目的地服务器;
由所述一个或者多个服务器将所述客户端装置重定向至所述目的地服务器,而不将所述客户端装置重定向至所述中间服务器;以及
由所述一个或者多个服务器利用包括和与所述数字分量的所述交互相对应的交互数据的请求来ping所述中间服务器。
15.根据权利要求14所述的方法,其中,识别所述中间服务器包括:检查用于联系所述一个或者多个服务器的URL,并且提取指定所述中间服务器的路径的信息。
16.根据权利要求14所述的方法,包括:
从所述中间服务器接收将所述一个或者多个服务器重定向至第二中间服务器的重定向响应;以及
由所述一个或者多个服务器利用包括来自所述重定向响应的数据的第二请求来ping所述第二中间服务器。
17.根据权利要求14所述的方法,其中,ping所述中间服务器包括:发起与所述客户端装置至所述目的地服务器的所述重定向不同的第二重定向路径。
18.根据权利要求14所述的方法,其中,ping所述中间服务器包括:
在发起所述ping时开始计数器;
使用所述计数器来跟踪已流逝请求时间;以及
在所述一个或者多个服务器接收到来自所述中间服务器的响应之前,在所述已流逝请求时间超出超时阈值时重试对所述中间服务器的所述ping。
19.根据权利要求14所述的方法,其中,所述客户端装置是通过无线通信网络通信的移动装置,并且所述一个或者多个服务器独立于所述移动装置通过有线通信网络通信。
20.根据权利要求14所述的方法,包括:
由所述一个或者多个服务器沿循如果所述一个或者多个服务器未将所述客户端装置重定向至所述目的地服务器则所述客户端装置本应沿循的多服务器重定向路径。
21.一种系统,包括:
数据存储,所述数据存储存储和与各个数字分量的客户端侧交互相对应的交互数据;
前端接口,所述前端接口包括通过一个或者多个通信网络来实现通信的通信接口;
跟踪服务器,所述跟踪服务器连接至所述前端接口,其中,所述跟踪服务器通过执行操作来中断客户端装置所沿循的重定向链,所述操作包括:
由所述一个或者多个服务器检测与客户端装置处的数字分量的交互;
由所述一个或者多个服务器识别所述一个或者多个服务器要向其重定向所述客户端装置的不同服务器和通过与所述数字分量的所述交互来请求的目的地页面;
由所述一个或者多个服务器将所述客户端装置重定向至目的地页面,而不将所述客户端装置重定向至所述不同服务器;以及
由所述一个或者多个服务器利用包括和与所述数字分量的所述交互相对应的交互数据的请求来ping所述不同服务器。
22.根据权利要求21所述的系统,其中,识别所述不同服务器包括:检查用于联系所述一个或者多个服务器的URL,并且提取指定所述不同服务器的信息。
23.根据权利要求21所述的系统,所述操作包括:
从所述不同服务器接收将所述一个或者多个服务器重定向至第二不同服务器的重定向响应;以及
由所述一个或者多个服务器利用包括来自所述重定向响应的数据的第二请求来ping所述第二不同服务器。
24.根据权利要求21所述的系统,其中,ping所述不同服务器包括:发起与所述客户端装置至所述目的地页面的所述重定向不同的第二重定向路径。
25.根据权利要求21所述的系统,其中,ping所述不同服务器包括:在发起所述ping时开始计数器;使用所述计数器来跟踪已流逝请求时间;以及在所述已流逝请求时间超出超时阈值时重试对所述不同服务器的所述ping。
26.根据权利要求21所述的系统,其中,所述客户端装置是通过无线通信网络通信的移动装置,并且所述一个或者多个服务器独立于所述移动装置通过有线通信网络通信。
27.根据权利要求21所述的系统,所述操作包括:
由所述一个或者多个服务器沿循如果所述一个或者多个服务器未将所述客户端装置重定向至所述目的地页面则所述客户端装置本应沿循的多服务器重定向路径。
28.一种存储指令的非暂时性计算机可读介质,所述指令在由一个或者多个计算装置执行时使得所述一个或者多个计算装置执行操作,所述操作包括:
由一个或者多个服务器检测与客户端装置处的数字分量的交互;
由所述一个或者多个服务器识别所述一个或者多个服务器要向其重定向所述客户端装置的不同服务器和通过与所述数字分量的所述交互来请求的目的地页面;
由所述一个或者多个服务器将所述客户端装置重定向至目的地页面,而不将所述客户端装置重定向至所述不同服务器;以及
由所述一个或者多个服务器利用包括和与所述数字分量的所述交互相对应的交互数据的请求来ping所述不同服务器。
29.根据权利要求28所述的非暂时性计算机可读介质,其中,识别所述不同服务器包括:检查用于联系所述一个或者多个服务器的URL,并且提取指定所述不同服务器的信息。
30.根据权利要求28所述的非暂时性计算机可读介质,所述操作进一步包括:
从所述不同服务器接收将所述一个或者多个服务器重定向至第二不同服务器的重定向响应;以及
由所述一个或者多个服务器利用包括来自所述重定向响应的数据的第二请求来ping所述第二不同服务器。
31.根据权利要求28所述的非暂时性计算机可读介质,其中,ping所述不同服务器包括:发起与所述客户端装置至所述目的地页面的所述重定向不同的第二重定向路径。
32.根据权利要求28所述的非暂时性计算机可读介质,其中,ping所述不同服务器包括:在发起所述ping时开始计数器;使用所述计数器来跟踪已流逝请求时间;并且在所述已流逝请求时间超出超时阈值时重试对所述不同服务器的所述ping。
33.根据权利要求28所述的非暂时性计算机可读介质,其中,所述客户端装置是通过无线通信网络通信的移动装置,并且所述一个或者多个服务器独立于所述移动装置通过有线通信网络通信。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2017/025725 WO2018186824A1 (en) | 2017-04-03 | 2017-04-03 | Reducing redirects |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108990423A true CN108990423A (zh) | 2018-12-11 |
CN108990423B CN108990423B (zh) | 2022-01-28 |
Family
ID=58609998
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780000484.1A Active CN108990423B (zh) | 2017-04-03 | 2017-04-03 | 减少重定向 |
Country Status (7)
Country | Link |
---|---|
EP (1) | EP3552115B1 (zh) |
JP (1) | JP6772389B2 (zh) |
KR (1) | KR102196403B1 (zh) |
CN (1) | CN108990423B (zh) |
DE (2) | DE202018100131U1 (zh) |
GB (2) | GB2566341A (zh) |
WO (1) | WO2018186824A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL283674B1 (en) | 2021-06-03 | 2024-05-01 | Google Llc | Distribution and monitoring of cross-disciplinary experimental groups to maintain privacy |
US11652697B1 (en) | 2022-03-29 | 2023-05-16 | Oxylabs, Uab | Transmitting request and response information through different proxies |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000060484A1 (en) * | 1999-04-05 | 2000-10-12 | Neomedia Technologies, Inc. | System and method of using machine-readable or human-readable linkage codes for accessing networked data resources |
CN101047576A (zh) * | 2007-04-13 | 2007-10-03 | 华为技术有限公司 | 一种内容控制方法和系统 |
CN101662464A (zh) * | 2008-08-26 | 2010-03-03 | 阿里巴巴集团控股有限公司 | 一种用于实现http请求服务的系统及其方法 |
CN104428765A (zh) * | 2011-12-07 | 2015-03-18 | 谷歌公司 | 减少重定向 |
US9282158B2 (en) * | 2011-06-06 | 2016-03-08 | Google Inc. | Reducing redirects |
CN105915450A (zh) * | 2016-06-02 | 2016-08-31 | 南京师范大学 | 一种ndn中基于重定向的任播方法和系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8868638B2 (en) | 2010-11-09 | 2014-10-21 | Usablenet Inc. | Methods for reducing latency in network connections using automatic redirects and systems thereof |
US9344512B2 (en) * | 2012-12-13 | 2016-05-17 | Qualcomm Incorporated | Loading a re-directed web resource on a web browser of a client device in a communications system |
-
2017
- 2017-04-03 KR KR1020197019838A patent/KR102196403B1/ko active IP Right Grant
- 2017-04-03 CN CN201780000484.1A patent/CN108990423B/zh active Active
- 2017-04-03 WO PCT/US2017/025725 patent/WO2018186824A1/en active Search and Examination
- 2017-04-03 JP JP2019538208A patent/JP6772389B2/ja active Active
- 2017-04-03 GB GB1800967.0A patent/GB2566341A/en not_active Withdrawn
- 2017-04-03 EP EP17719078.2A patent/EP3552115B1/en active Active
- 2017-12-14 GB GBGB1720890.1A patent/GB201720890D0/en active Pending
-
2018
- 2018-01-11 DE DE202018100131.0U patent/DE202018100131U1/de active Active
- 2018-01-11 DE DE102018100526.1A patent/DE102018100526A1/de active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000060484A1 (en) * | 1999-04-05 | 2000-10-12 | Neomedia Technologies, Inc. | System and method of using machine-readable or human-readable linkage codes for accessing networked data resources |
CN101047576A (zh) * | 2007-04-13 | 2007-10-03 | 华为技术有限公司 | 一种内容控制方法和系统 |
CN101662464A (zh) * | 2008-08-26 | 2010-03-03 | 阿里巴巴集团控股有限公司 | 一种用于实现http请求服务的系统及其方法 |
US9282158B2 (en) * | 2011-06-06 | 2016-03-08 | Google Inc. | Reducing redirects |
CN104428765A (zh) * | 2011-12-07 | 2015-03-18 | 谷歌公司 | 减少重定向 |
CN105915450A (zh) * | 2016-06-02 | 2016-08-31 | 南京师范大学 | 一种ndn中基于重定向的任播方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
KR102196403B1 (ko) | 2020-12-29 |
JP2020510251A (ja) | 2020-04-02 |
JP6772389B2 (ja) | 2020-10-21 |
GB201800967D0 (en) | 2018-03-07 |
EP3552115B1 (en) | 2021-09-29 |
WO2018186824A1 (en) | 2018-10-11 |
GB201720890D0 (en) | 2018-01-31 |
DE102018100526A1 (de) | 2018-10-04 |
DE202018100131U1 (de) | 2018-07-05 |
EP3552115A1 (en) | 2019-10-16 |
KR20190090862A (ko) | 2019-08-02 |
CN108990423B (zh) | 2022-01-28 |
GB2566341A (en) | 2019-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9760909B2 (en) | Systems and methods for generating lead intelligence | |
US9742661B2 (en) | Uniform resource locator mapping and routing system and method | |
CN106133774B (zh) | 广告中的广告主标识符的自动验证 | |
US8725794B2 (en) | Enhanced website tracking system and method | |
US9037500B2 (en) | Method, medium, and system of generating a referral website URL using website listings in a cookie | |
US9224159B2 (en) | Distributed content exchange and presentation system | |
US11138277B2 (en) | Delivery of personalized platform-specific content using a single URL | |
CN104428765B (zh) | 减少重定向 | |
US9842133B2 (en) | Auditing of web-based video | |
US20120221386A1 (en) | Real-time online advertisement verification system and method | |
US20180329799A1 (en) | Analyzing analytic element network traffic | |
CN109063064A (zh) | 一种页面跳转方法、装置及计算机可读存储介质 | |
CN107480277A (zh) | 用于网站日志采集的方法及装置 | |
KR20200011443A (ko) | 사용자 디바이스 이벤트의 매칭 및 속성 | |
US9160800B1 (en) | Integrating web services with a content item | |
CN106471497A (zh) | 使用上下文的辅助浏览 | |
US20190139077A1 (en) | Providing reporting and analysis for campaign-driven messages and websites | |
CN109075987B (zh) | 优化数字组件分析系统 | |
CN106464723B (zh) | 用于本机应用内容验证的方法和系统 | |
CN106796695A (zh) | 应用安装的转化和识别 | |
US11436027B2 (en) | Identifying analytic element execution paths | |
CN108990423A (zh) | 减少重定向 | |
US10027598B2 (en) | Providing network resources based on available user information | |
US20200118193A1 (en) | Digital content publisher negotiated transactional advertiser | |
CN103609074B (zh) | 应用特定web请求路由 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |