网络

电子商务和开放式以太网: Criteo 与 SONiC

当你看到一个新餐厅的浏览器广告,或是一个送给难以取悦的家庭成员的完美礼物时,你可能不会想到用来发布广告的基础设施。然而,这种基础设施正是让 Criteo 这样的广告公司提供这些见解的原因。 NVIDIA 网络组合对 Criteo 技术堆栈至关重要。

Criteo 是一个在线广告平台,介于数字广告商和出版商之间。这项业务需要 Criteo 解决与“网络规模”数量相关的问题。 Criteo 每天处理几千亿美元的销售额,这是由几万台服务器上的数十亿广告、数千台网络设备和每秒太比特的东西方流量驱动的。 Criteo 的 10 个数据中心(横跨三大洲)内部和之间的通信至关重要,网络占据了中心地位。

远离锁定

从 2014 年开始, Criteo 启动了一项全面改革网络战略、实现基础设施现代化和降低成本的计划。通过从不同供应商处采购硬件, Criteo 将能够降低成本,在采购过程中获得更大的灵活性,并减少对单个供应商供应链的依赖。

Criteo's networking journey including monolithic era, multi-vendor, and network agility.
图 1 . Criteo 改变网络方式的历程始于 2014 年,一直持续到今天

 

有了新的硬件方法,接下来就是软件。 Criteo 需要他们的操作系统与他们的网络自动化堆栈兼容,后者由内部的、与硬件无关的工具组成,这些工具主要是用 Python 构建的。但是,每一个添加到混合中的新操作系统都需要对堆栈的其余部分进行独特的更新来支持它。此外,虽然供应商的硬件通常是负担得起的,但附带的专有软件使预算膨胀。

为所有平台选择一个操作系统解决了这两个问题。进入 SONiC :在参加了开放计算项目( OCP )全球峰会之后, Criteo 于 2018 年初开始评估 NOS 。作为微软和 OCP 为满足 hyperscalers 的需求而构想的开源操作系统, SONiC 的设计和功能满足了 Criteo 的需求。此外, SONiC 的开放性与 Criteo 灵活的硬件采购策略完美结合,将充分释放他们的网络堆栈。

用 NVIDIA 翻开新的一页

Criteo 和 NVIDIA 在 SONiC 上的合作伙伴不仅仅是将 NVIDIA 视为一个供应商, NVIDIA 维护和开发 SONiC 的功能集, Criteo 还帮助提供输入。这来自 NVIDIA 向客户提供 SONiC 的方式。 ZVK3 并没有从社区版本中构建一个专有的分支,而是将操作系统的社区版本支持为“纯 SONiC ”,没有任何附加组件。作为 SONiC 代码库的主要贡献者之一, NVIDIA 在影响 SONiC 的路线图和实现 Criteo 的愿景方面具有独特的地位。

此外,由于 NVIDIA 提供了 ASIC 到协议( A2P )的支持,网络团队可以完全依赖 NVIDIA 在任何级别以最小的中断卸载和分类网络问题。 Criteo 还受益于 NVIDIA 在太空中的应用。 NVIDIA 开发了这些功能并将其上传到社区的主要分支,保持了纯粹的声波承诺,并允许 Criteo 自由选择。

Timeline of Criteo evaluation and achievements with SONiC.
图 2 . Criteo 是 SONiC 在 2018 年的早期采用者,在全面推出数据中心的道路上,他克服了早期的挑战

概括

在评估任务时, Criteo 2014 年项目的目标已达到预期目标,成本得到控制,部署灵活性不断提高,网络团队掌握了一些 DevOps + CI / CD 的实用技能。但目标仍在进行中; Criteo 看到了一天,所有的基础设施,包括他们的管理网络,都在运行 SONiC ,真正的一个 NOS 来统治他们。所以下一次,当你看到那个杀手级的广告时,也许你也会想到让它成为可能的网络结构。

有关更多信息,请参阅以下参考资料:

 

Tags