写点什么

Facebook 开发新的开源计时设备,仅需一个 PCIe 插槽即可工作

  • 2021-08-17
  • 本文字数:1090 字

    阅读完需:约 4 分钟

2021 年 8 月 11 日,Facebook 分享了其 Time cards 硬件和软件设计。

 

2021 年 8 月 11 日,Facebook 工程师分享他们已经构建了一个用于网络同步的时间设备 Time cards 并开源了整个规范,该设备基于超精确原子钟和导航卫星的计时技术,将有助于在大规模互联网上加速服务。


每一台数字设备都需要知道现在是什么时间,有了时间这个维度,设备才能正确提供各种服务并记录各种类型的日志。尤其对于 Facebook 这种拥有几十亿用户规模的社交网络而言,没有精确的时间就无法协调数据中心的工作,因此 Facebook 决定打造自己的计时设备。

NTP 和 Stratum One 各有不足

 

在 Time cards 被分享之前,基本上有两种方法来检查时间。开发者会使用 NTP(Network TimeProtocol,网络时间协议)作为时间检查机制,但是这种公共 NTP 池增加了对互联网连接的依赖,并可能影响系统的整体安全性和可靠性。


运行封闭式数据中心的公司会由一个叫 Stratum One 的硬件设备来充当时间保持者。但它们是由少数几家公司多年来建造的,所以很难获得新的功能,并且因为它们具有专利性质,所以像 Facebook 这样的公司无法控制这些盒子。

新的 Time cards 更准确、更便宜

 

Time Cards 本质上是使用与插入图形卡和其他设备相同的 PCI Express 扩展卡技术安装到服务器中的电子板。Facebook 把插有 Time Card 并运行其计时软件的服务器称为时间设备。


Time Card 通过监听嵌入在 GNSS 导航卫星无线电信号中的计时信息而保持同步。时间卡潜伏在数据中心的深处,但它们连接到屋顶安装的天线,以接收卫星信号。之后,包括微型原子钟在内的一套电子元件会处理获得的数据,以供数据中心服务器使用。

 

目前,Time Card 的规格、原理图、材料清单(BoM)和源代码等都已托管至 GitHub 仓库。如果普通开发者不需要 Facebook 那么高的时间精度水平,可以通过换上更传统的晶体振荡器使成本降至约 300 美元。

Facebook 工程师表示:希望通过开源工作来帮助更多人

 

Facebook 表示,打造一款非常精确、价格低廉且不受供应商限制的设备本身就是一项成就。

 

他们在早期就决定将设计过程开源,以便其他公司和工程师能够为设计做出贡献。此举显示了互联网大部分公司的合作精神。即使像 Facebook、微软和谷歌这样的公司之间会有激烈竞争,他们也会为可以使竞争对手受益的开源项目做出贡献。这方面,最好的例子是全球范围内规模最大的开源软件项目 Linux,它是 Android 手机、SpaceX 航天器、超级计算机和无数数据中心服务器操作系统的基础。可以说开源使全球信息技术领域发生了全局性、持续性的重大变化,在社会基础设施建设方面也发挥着越来越重要的作用。

 

参考链接:https://engineering.fb.com/2021/08/11/open-source/time-appliance/

2021-08-17 11:012258

评论

发布
暂无评论
发现更多内容

观测云正式加入openGauss社区

面试官:说说你对事件循环的理解

CoderBin

JavaScript 前端 Promise Vue 3 10月月更

Rust vs C++ 深度比较

俞凡

c++ rust

软件测试 | 测试开发 | 测试右移之logstash完整配置实例

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 接口抓包分析与Mock实战

测吧(北京)科技有限公司

测试

空间数据库开源路,超图+openGauss风起禹贡

仅靠一文便火爆全网!开源阿里绝密Java面试笔记:霸榜GitHub

Geek_0c76c3

Java 数据库 开源 程序员 开发

成长计划校园极客秀|基于OpenHarmony的智能阳台

OpenHarmony开发者

OpenHarmony

软件测试 | 测试开发 | 通用 api 封装实战,带你深入理解 PO

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 测试开发基础 | Python 算法与数据结构面试题系列一(附答案)

测吧(北京)科技有限公司

测试

墨天轮沙龙 | 宝兰德詹年科 :基础软件中间件,让业务人员更好专注业务逻辑的实现

墨天轮

数据库 基础软件 中间件 消息中间件 数据库中间件

OneFlow的大模型分片保存和加载策略

OneFlow

机器学习 深度学习 分布式

软件测试 | 测试开发 | Python 算法与数据结构面试题系列二(附答案)

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 基于 JMeter 完成 Dubbo 接口的测试

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 毕业 2 年,涨薪 100%,从创业小团队到某中厂测试开发(附面试真题)

测吧(北京)科技有限公司

测试

凭借一份“面试真经pdf”,我四面字节跳动,拿下1-2级offer

Geek_0c76c3

Java 数据库 开源 架构 开发

软件测试 | 测试开发 | 电商业务的性能测试(一): 必备基础知识

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 如何安装Jenkins 插件?

测吧(北京)科技有限公司

测试

预约直播 | 流批一体机器学习算法平台Alink介绍及应用

阿里云大数据AI技术

深度学习

9个 方法预防租赁LED显示屏舞台隐患

Dylan

LED显示屏 户外LED显示屏 led显示屏厂家

测试管理和领导力秘诀,12+ BAT 大厂测试经理的干货经验汇总

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Dubbo 接口测试原理及多种方法实践总结

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 实战演示 H5 性能分析

测吧(北京)科技有限公司

软件测试 | 测试开发 | 实战演练基于加密接口测试测试用例设计

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | Jenkins中,如何管理用户及其相对应权限?

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 测试面试 | 一道大厂算法面试真题,你能答上来吗?(附答案)

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 测试左移之Sonarqube maven项目分析

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 测试平台开发-前端开发之Vue router路由设计

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 学做测试平台开发-Vuetify 框架

测吧(北京)科技有限公司

测试

持续测试成熟度模型

陈磊@Criss

软件测试 | 测试开发 | Pytest 结合 Allure 生成测试报告

测吧(北京)科技有限公司

测试

Facebook开发新的开源计时设备,仅需一个PCIe插槽即可工作_产品_闫园园_InfoQ精选文章