项目github地址:bitcarmanlee easy-algorithm-interview-and-practice
欢迎大家star,留言,一起学习进步

首先通过一些关键词解释普及或者回顾一下背景,

ADX:Ad exchange的简称。一般特指Ad exchange平台模块
DMP:Data Management Platform的简称。DMP存储了流量、受众的各种特征信息。
DSP:Demand Side Platform的简称。可以看做流量的购买方,为广告主服务。广告主可以通过DSP购买流量,达到营销的目的。DSP可以接入ad exchange中,参与cpm竞价,购买所需要的受众流量。
SSP:Supply Side Platform的简称。可以看做流量的供应方,为网站主服务。网站主可以通过SSP实现其流量变现,达到流量变现的目的。
Cookie mapping:DSP提供的一个平台cookie到DSP cookie的映射服务。

1.RTB中cookie mapping究竟是什么?

首先要明确一下cookie的重要性,RTB允许DSP在的Ad Exchange平台上做交易,在接入Ad Exchange的流量曝光上,针对每一个PV,每一个用户的属性进行分析以及竞价,从而购买到ROI最高的流量,所以RTB的核心在于“人”,在于人群的分析技术。

互联网上关于网民作为一个实体必须存在唯一标识,这个标识就必须依赖cookie,标识的产生通俗来讲就是“种cookie”技术。例如,访问neoremind.net,则可以在neoremind.net下种一个USERID=ABC123的cookie,该网民的身份证就是ABC123,而网站子域名,例如test.neoremind.net也可以共享使用此cookie。下文中USERID与用户标识混用,表示同一个概念。

像百度、google、淘宝等大站,本身其Ad Network覆盖庞大,加之其自身的人群分析技术,会积累了大量的关于网民用户的特征数据,这也就是说其自身已经是一个DMP,其分析出的访客特征数据对于DSP决定是否购买流量非常重要,当然DSP也可以利用自己的技术或者第三方DMP平台的数据自行灵活分析该用户。而其定义网民实体也是靠cookie,例如百度域下面的cookie BAIDUID就是百度所利用的标识。这个标识本身属于各个公司的重要数据,因此绝对不会暴露给第三方。

在RTB的一个重要环节——竞价中,bid request中一般会含有一个Ad Exchange平台提供的访客标识,这个标识可以理解为类似于USERID的cookie,但是绝对不会是Ad Exchange系统内部的ID,一般会利用非可逆加密算法做一次hash再给DSP,经过加密后的USERID我们叫做USERID’。而DSP一般需要针对bid request中的各种维度数据,包括PV信息,用户特征信息,广告位信息等决定是否购买此次曝光,还有现今流行的“再营销(retargeting)”技术必须依赖用户标识,所以这个USERID’是DSP需要的,DSP需要自行维护一个USERID’的matching table,就是该USERID’与自己定义的用户标识的一个映射。

2.一般cookie mapping如何实现?

1)Ad Exchange Server生成cookie mapping url,在返回给浏览器的广告JS代码中,将url置入一个img标签中。例如Google Ad Exchange中的代码如下,

<img src="http://cm.g.doubleclick.net/pixel?google_nid=1234&google_cm" />

广告展现时,该url向cookie mapping server,也就是cm.g.doubleclick.net发请求。

2)Cookie mapping server通过google_nid获取DSP在系统内设置的cookie mapping url(假设为ad.network.com)和token,并从HTTP HEADER中获取投放域中的cookie,如GOOLELID,将GOOLEID和token进行hash后得到google_gid,最后返回一个302重定向请求到如下地,

http://ad.network.com/pixel?google_gid=dGhpcyBpcyBhbiBleGFtGxl&google_cver=1&extra1=xx&extra2=yy

3)DSP系统会接收该302请求,并记录该google_gid,维护自己的matching table。
4)最后DSP服务器返回一个空白的 1×1 像素的图片,种自己的cookie,这样就把自己的cookie与google的cookie联系映射在一起了。

3.一个具体的story

小丽清除了缓存中的所有 Cookie。随后,她访问了 ExampleNews.com 的首页。

对整个过程的说明如下:

ExampleNews.com 将会显示并调用 Ad Exchange 的广告。
广告单元符合动态分配资格,因此 Ad Exchange 会进行call out,也就是发送bid request给各个DSP。
A DSP 返回bid response至 Ad Exchange,Ad Exchange判断A DSP赢得竞价。
Ad Exchange 向小丽投放 A DSP 的广告,并设置她的 Cookie。
浏览器调用 Google 的 Cookie mapping服务。
Cookie mapping服务读取小丽的 Cookie,并将设好 USERID’的重定向传送至 A DSP设置的cookie mapping url。
A DSP 生成 Cookie,并将此 Cookie 存储在其matching table中与小丽的 USERID’相对应的位置。
A DSP 将其 Cookie 放到小丽的浏览器中,并在响应中提供一个空白的 1×1 像素。

流程图如下,

第 2 种情况:买方和 Ad Exchange

一个星期后,小丽再次访问了 ExampleNews.com。现在,小丽的电脑上同时存有买方和 Ad Exchange Cookie,我们来看看匹配功能的运作方式。

小丽会看到网页,同时,html 代码会包含向 Google 请求广告的调用。
在广告竞价期间,Ad Exchange 会向实时出价合作伙伴 A DSP 发出调用请求,让其选择是否要对展示进行出价。
买方收到包含展示信息和 USERID’的广告调用。
A DSP 在其匹配表中查找 USERID’,以找出一周前创建的 Cookie。
Ad Exchange根据所掌握的信息向小丽投放与其兴趣进行call out,A DSP 利用与其 Cookie 相关的信息,对展示进行出价并赢得这次展示机会。

原文地址:http://neoremind.com/2013/05/rtb竞价中的cookie-mapping技术/

RTB竞价中的cookie mapping技术相关推荐

  1. RTB中的cookie mapping理解

    使用场景如下 对于常规的网络用户,Cookie 匹配功能会如何在后台运作?我们来看看以下两种情况. 第 1 种情况:清除 Cookie 小丽清除了缓存中的所有 Cookie.随后,她访问了 Examp ...

  2. DotNetCore Web应用程序中的Cookie管理

    原文来自互联网,由长沙DotNET技术社区编译.如译文侵犯您的署名权或版权,请联系小编,小编将在24小时内删除.限于译者的能力有限,个别语句翻译略显生硬,还请见谅. 作者简介:Jon(Jonathan ...

  3. RTB竞价流控-budget pacing

    前言 前一篇写了关系rtb bidding stragegy的相关内容,这一篇主要介绍的是RTB竞价中的流控策略:budget pacing,主要内容是让广告主预算平稳花完,防止出现预算突然花完这种情 ...

  4. WordPress中的cookie 机制

    2019独角兽企业重金招聘Python工程师标准>>> WordPress中的cookie机制 WordPress使用cookies技术(能够让网站服务器把少量数据存储到客户端的硬盘 ...

  5. java中的Cookie是什么_第74节:Java中的Cookie和Session

    第74节:第74节:Java中的Cookie和Session ServletContext: 什么是ServletContext,有什么用哦,怎么用呢? 启动服务器后,会给每个应用程序创建一个Serv ...

  6. Cookie会话技术

    java web动态资源有Servlet和JSP: HTTP协议是无状态的,即每次请求响应和其他的互补相关,所以要共享数据,需要会话技术: 一.概念 二.Cookie会话技术 代码写在服务器端,设置C ...

  7. js中的cookie使用和vue-cookie的使用

    在HTTP协议的定义中,采用了一种机制来记录客户端和服务器端交互的信息,这种机制被称为cookie,cookie规范定义了服务器和客户端交互信息的格式.生存期.使用范围.安全性. 在JavaScrip ...

  8. 登录工程:传统 Web 应用中的身份验证技术

    标题中 "传统 Web 应用" 这一说法也并没有什么官方定义,只是为了与"现代化 Web 应用"形成比较而自拟的一个概念.所谓现代化 Web 应用指的是那些基于 ...

  9. 在 Go 语言中增强 Cookie 的安全性

    本文讲的是在 Go 语言中增强 Cookie 的安全性, 原文地址:Securing Cookies in Go 原文作者:Jon Calhoun 译文出自:掘金翻译计划 本文永久链接:github. ...

  10. Java SE 6 中实现 Cookie 功能

    来源:http://www.study-code.com/java/j2se/66422.htm 头一段时间,为了在 Java 中实现 Cookie 的功能,看了若干规范文档,写了大量的代码,才勉强将 ...

最新文章

  1. 技术解析:如何用pyecharts绘制时间轮播图
  2. 判断list集合不为空
  3. 题目1362:左旋转字符串(Move!Move!!Move!!!)
  4. ASP.NET Core 导入导出Excel xlsx 文件
  5. powershell编程_对Power BI PowerShell Commandlet的编程访问
  6. 如何反编译APK文件
  7. 31. Next Permutation
  8. 深入理解Binder机制
  9. 备考电商双十一智齿客服主动营销功能大升级
  10. 30. 人类将如何变革--走出金字塔模型(下)
  11. Git 工具 - 储藏(Stashing)
  12. 苹果删除照片不释放内存_别再胡乱清理垃圾了,只要删除这6个文件夹,瞬间释放20GB内存...
  13. 杜蕾斯鞋套?又污又高级!
  14. Acer传奇Go电脑开机自动安装软件卡死怎么重装系统?
  15. 人工智能新目标——看懂视频
  16. 20175208 实验一 Java开发环境的熟悉
  17. Font Awesome html源码,如何将 Font Awesome 转成 PNG 图标 详细教程 含源代码_html/css_WEB-ITnose...
  18. 检测TF卡座、SIM卡座质量的要求有哪些?
  19. atmega16应用之DS18B20温度传感器
  20. 你不知道的小技巧 — 把对象交给spring管理的3种方法及经典应用

热门文章

  1. 洛谷 P1854 花店橱窗布置
  2. Python web实时消息服务器后台推送技术方案---GoEasy
  3. 物件捆绑 背包问题 动态规划 求解
  4. JavaScript中的ActiveXObject对象
  5. 关闭迅雷首页播放视频的方法
  6. matlab 中 x 轴的各种设置
  7. java高级-反射的三种实例化模式及与工厂,单例模式的的关系
  8. Python模块--Pexpect
  9. MongoDB(一)——简介
  10. 关于个人博客的相关内容