当前位置: 首页 > 专利查询>英特尔公司专利>正文

可信平台遥测机制制造技术

技术编号:19489127 阅读:104 留言:0更新日期:2018-11-17 12:03
本申请涉及可信平台遥测机制和相关联的方法、装置以及固件组件。提供可信遥测机制以从计算平台上的遥测数据源安全地收集平台遥测数据,该遥测数据源例如是机器专用寄存器(MSR)、设备寄存器、系统管理总线(SMBus)和存储控制器。使用各种机制从遥测数据源收集遥测数据,并以在计算平台上运行的软件不可存取的方式将该遥测数据安全地存储在计算平台上。还可以实现提交队列和完成队列模型以促进收集遥测数据。此外,提供了一种存储器映射输入输出(MMIO)别名使用方案,以促进使用各种存取机制从平台遥测数据源收集遥测数据。

【技术实现步骤摘要】
可信平台遥测机制
技术介绍
在处理器速度、存储器、存储装置和网络带宽技术方面的增长已经导致了具有不断增长容量的网络的扩建和部署。最近,诸如由亚马逊(例如,亚马逊弹性计算云(EC2)和简单存储服务(S3))以及微软(例如,蔚蓝和办公室365)提供的基于云的服务的引入,已经导致了针对公共网络架构的另外的网络扩建,除了部署海量数据中心以支持利用私人网络架构的这些服务之外。基于云的服务典型地通过大量相互连接的高速服务器来促进实现,其中主机设施一般被称为服务器“场”或数据中心。这些服务器场和数据中心典型地包括大量到海量机架阵列和/或置于特殊设计的设施中的刀锋服务器。许多较大的基于云的服务经由跨地理区域或甚至在全球分布的多个数据中心托管。例如,微软蔚蓝在美国、欧洲和亚洲中的每一个都具有多个非常大的数据中心。亚马逊使用共置且分离的数据中心来托管其EC2和AWS服务,包括单独在美国就超过十二个AWS数据中心。为了更有效地管理数据中心资源,收集并分析与各种数据中心资源有关的遥测数据,这被称为数据中心分析学或云分析学。遥测数据的示例是在处理器上消耗的L2/L3高速缓存量,与传统的CPU利用测量相比,其可以揭露多得多的关于处理器(和平台)利用和使用的详细信息。遥测数据还用于当数据中心资源被租用时验证服务级别协议(SLA)的性能度量,例如针对作为服务的基础架构(Iaas)SLA。当前的方案是使用软件来收集遥测数据。例如,现代操作系统提供用于存取各种处理器性能数据、存储器利用、过程、线程等的单元。这通过在主机系统上的存储器中运行的软件代码来促进实现,该软件代码在本质上是不可信任的,因为这样的代码会被容易地操纵和/或攻击。例如,云服务提供商可以改变遥测数据来满足SLA需求,且对于客户而言将有很少的方式来反驳该数据。能够确保遥测数据准确且值得信任将是有利的。附图说明本专利技术的前述方面和许多伴随的优点将变得更容易理解,因为当结合附图时,通过参考随后的具体实施方式相同的内容将变得更好理解,在附图中,除非指定,否则贯穿各个视图相似的附图标记指代相似的部分。图1是说明根据一个实施例用于使用基于固件的组件执行遥测测量的针对安全机制的架构的示意图;图1a是说明图1架构的展开的示意图,其中遥测数据被存储在SRAM中;图2a是说明第一配置的框图,在该第一配置下,遥测驱动器是在固件中实现的类型1管理程序的一部分;图2b是说明第二配置的框图,在该第二配置下,在经由固件和软件的组合实现的分割的类型1管理程序的固件部分中实现遥测驱动器;图2c是说明第三配置的框图,在该第三配置下,遥测驱动器是在固件中实现的操作系统虚拟化层的一部分;图2d是说明第四配置的框图,在该第四配置下,在经由固件和软件的组合实现的分割的操作系统虚拟化层的固件部分中实现遥测驱动器;图3是说明根据一个实施例在配置在固件中实现的安全遥测机制时执行的操作和逻辑的流程图;图4是说明根据一个实施例用于经由基于固件的遥测驱动器获取遥测数据并向POD管理器转发该遥测数据的操作的流程图;图5是说明用于存取遥测数据和该遥测数据的提供商的传统机制的框图;图6是说明根据一个实施例使用提交队列和完成队列的遥测数据获取机制的组合架构和流程图;图7是说明根据图6的实施例用于设置提交队列和完成队列的操作的流程图;图8是根据一个实施例用于使用图6中的提交和完成队列模型实现用于从多个遥测数据提供商收集遥测数据的第一基于推送的机制的平台架构的示意图;图8a是根据一个实施例用于使用图6的提交和完成队列模型实现用于从多个遥测数据提供商收集遥测数据的第二基于推送的机制的平台架构的示意图,其中通过遥测驱动器收集遥测数据,并且然后将该遥测数据推送到完成队列;图9是用于实现存储器映射输入输出(MMIO)别名使用(aliasing)方案的平台架构的示意图,在该方案下,经由基板管理控制器中的MMIO地址来存取遥测数据;以及图10是说明根据一个实施例用于使用图9的MMIO别名使用方案来收集遥测数据的操作的流程图。具体实施方式在本申请中描述了可信平台遥测机制以及相关联的方法、装置和固件组件的实施例。在随后的描述中,给出了许多特定细节以提供对本专利技术实施例的透彻理解。但是,相关领域的熟练技术人员将认识到,可以在没有这些特定细节中的一个或多个的情况下,或利用其它的方法、组件、材料等来实施本专利技术。在其他实例中,未详细示出或描述公知的结构、材料或操作以避免混淆本专利技术的方面。贯穿本说明书提及的“一个实施例”或“实施例”指的是结合在本专利技术至少一实施例中包含的实施例描述的特定特征、结构或特性。从而,贯穿本说明书在各个地方中出现的短语“在一个实施例中”或“在实施例中”不必全部指代同一个实施例。此外,在一个或多个实施例中,可以以任何适当的方式组合特定的特征、结构或特性。为了清楚起见,在本申请中的附图中的个别组件也可以通过其在附图中的标签而不是特定的附图标记来提及。此外,可以利用跟在意思是“典型的”“(typ)”之后的附图标记来示出指代特定类型的组件(与特定组件不同)的附图标记。将理解的是,这些组件的配置将是类似组件的典型,为了简单和清楚,这些类似组件可以在附图中存在但不示出,或者不利用单独的附图标记来标记的其它方式的类似组件。相反,不将“(typ)”解释为指代组件、元件等,并且典型地用于其公开的功能、实现、目的等。根据本申请中公开的实施例的方面,公开了用于在计算平台上安全收集平台遥测数据的机制。通过结合安全通信信道使用可信固件组件来实现上述机制。上述机制对于在计算平台上运行的软件也是透明的,且被配置为使得它们无法被使用软件篡改或不会受到诸如经由网络存取计算平台而入侵的外部威胁。图1示出了根据一个实施例包括用于实现可信遥测机制的设置的架构100。架构100包括计算平台102,计算平台102包括在图中位于软件/硬件分割条下面的部分中显示的各种硬件和固件组件,包括处理器104。处理器104包括包含N个处理器核心108(也被描述为核心1......核心N)的处理器核心106。每一个处理器核心108包括一组机器特定寄存器(MSR)110、级1(L1)高速缓存以及级2(L2)高速缓存。每一个处理器核心108耦合到一致性互连112,其中一对集成存储器控制器(IMC)114和116以及最后一级高速缓存(LLC)118耦合到该一致性互连112。处理器104进一步被描绘为包含输入/输出(I/O)接口120和122以及包括可管理性引擎/创新引擎(ME/IE)124的可管理性组件。架构100进一步描绘了在诸如耦合到IMC114和116的DDR4或DDR5双内联存储器模块(DIMM)、非易失性闪存设备130、网络接口控制器(NIC)132以及基板管理控制器(BMC)134的相应的存储器设备中分配的存储器地址空间126和128。各种平台固件136组件被存储在闪存设备130中,包括包含BIOS(基本输入输出系统)138的统一可扩展固件接口(UEFI)固件、可管理性引擎固件140、创新引擎固件142、NIC固件144以及管理程序固件146。如进一步示出的,管理程序固件146包括用于生成遥测数据149的遥测驱动器147。计算平台102被进一步示出连接到各种系统组件,包括集中系统管理引本文档来自技高网...

【技术保护点】
1.一种方法,包括:实现用于从计算平台上的多个遥测数据源安全地收集平台遥测数据的可信遥测机制;从所述多个遥测数据源收集遥测数据;以及安全地存储收集到的遥测数据,其中,所述可信遥测机制对于在所述计算平台上运行的软件不能够存取,并且所述遥测数据被以对于在所述计算平台上运行的软件不能够存取的方式安全地存储。

【技术特征摘要】
2017.05.03 US 15/585,9361.一种方法,包括:实现用于从计算平台上的多个遥测数据源安全地收集平台遥测数据的可信遥测机制;从所述多个遥测数据源收集遥测数据;以及安全地存储收集到的遥测数据,其中,所述可信遥测机制对于在所述计算平台上运行的软件不能够存取,并且所述遥测数据被以对于在所述计算平台上运行的软件不能够存取的方式安全地存储。2.根据权利要求1所述的方法,其中,所述计算平台包括多个固件组件,并且其中,所述可信遥测机制包括所述多个固件组件中的至少一个。3.根据权利要求2所述的方法,其中,所述固件包括作为统一可扩展固件接口(UEFI)固件组件的一部分的遥测驱动器。4.根据权利要求2所述的方法,其中,所述平台包括系统存储器,并且所述多个固件组件中的至少一个包括遥测驱动器,所述方法进一步包括:在所述系统存储器中实现对于在所述计算平台上运行的软件不能够存取的安全区域;以及将所述遥测驱动器加载到所述系统存储器的所述安全区域中。5.根据权利要求4所述的方法,进一步包括将由所述遥测驱动器收集的遥测数据存储在所述系统存储器中的所述安全区域中。6.根据权利要求4所述的方法,进一步包括将由所述遥测驱动器收集的遥测数据存储在下列中的至少一个中的安全区域中:所述计算平台上的静态随机存取存储器(SRAM)和多个寄存器。7.根据权利要求4所述的方法,其中,所述平台包括处理器,所述处理器具有多个机器专用寄存器(MSR)和被使能以存取所述多个MSR的可管理性组件,所述方法进一步包括:在所述遥测驱动器和可管理性实体之间创建安全通信信道;经由所述可管理性实体从所述多个MSR收集遥测数据;以及通过所述安全通信信道向所述遥测驱动器传输所述遥测数据。8.根据前述权利要求中的任何一项所述的方法,其中,所述平台包括具有多个机器专用寄存器(MSR)的处理器并且包括具有一个或多个组件寄存器的相应集合的多个组件,所述方法进一步包括:从至少一个MSR收集遥测数据;以及从至少一个组件寄存器收集遥测数据。9.根据前述权利要求中的任何一项所述的方法,进一步包括:实现提交队列和完成队列,以促进对所述遥测数据的至少一部分的收集。10.根据权利要求9所述的方法,进一步包括:识别所述计算平台中的多个遥测数据源;向所述提交队列中的时隙提交队列命令,所述队列命令标识将由遥测数据提供商中的一个执行生成和转发动作中的至少一个的遥测数据;从所述提交队列取回所述队列命令;处理所述队列命令,以对由所述队列命令标识的遥测数据执行生成和转发动作中的至少一个;将处理完成条目输入到所述完成队列中的时隙中,所述处理完成条目包括下列中的至少一个:标识被处理的队列命令的数据、所述遥测数据以及所述遥测数据的位置;使用包含在处理完成队列条目中的数据来对所述遥测数据进行存取;以及安全地存储所述遥测数据。11.根据前述权利要求中的任何一项所述的方法,进一步包括:针对所述计算平台中的多个遥测数据源中的每一个实现存储器映射的输入输出(MMIO)别名,每一个MMIO别名将遥测数据源映射到所述计算平台上的存储器中的对于在所述计算平台上运行的软件不能够存取的相对应的地址;接收包括存储器地址的存储器读取请求,以存取所述存储器;采用与所述存储器地址相关联的遥测数据存取机制,以使得由与针对所述存储器地址的所述MMIO别名相对应的所述遥测数据源提供的遥测数据被放置在所述存储器中由所述存储器地址定义的位置处;以及返回所述遥测数据以对所述读取请求进行服务。12.根据权利要求11所述的方法,进一步包括:将所述存储器划分成多个区域;将遥测数据存取机制与所述多个区域中的每一个相关联;响应于接收到所述存储器读取请求,识别所述存储器地址位于其中的区域;以及采用与被识别的区域相关联的存取遥测数据存取机制来对所述遥测数据源进行存取。13.一种计算平台,包括:处理器,其包括至少一个存储器控制器;一个或多个存储器设备,每一个存储器设备耦合到所述处理器中的存储器控制器;平台固件,其包括用于促进对平台遥测数据的收集的一个或多个遥测固件组件;其中,所述平台固件在由所述处理器执行时,被配置为,将存储器设备中的存储器的一部分配置为安全存储器区域;加载一个或多个固件组件以促进将平台遥测数据收集到所述安全存储器区域中;执行所述安全存储器区域中的所述一个或多个遥测固件组件,以收集平台遥测数据。14.根据权利要求13所述的计算平台,进一步包括:存储在所述计算平台上的软件,所述软件被配置为由所述处理器执行,其中,执行所述平台固件使得所述计算平台对被分配用于所述软件的执行的至少一个虚拟存储器空间进行配置,并且其中,所述软件被阻止对存储器的安全区域进行存取。15.根据权利要求13或14所述的计算平台,其中,所述平台固件包括作为统一可扩展固件接口(UEFI)固件的一部分的遥测驱动器。16.根据权利要求13-15中的任何一项所述的计算平台,其中,所述遥测固件被进一步配置为,在执行时,将收集到的遥测数据的至少一部分存储在所述安全存储器区域中。17.根据权利要求13-16中的任何一项所述的计算平台,其中,所述遥测固件被进一步配置为,在执行时,将所述遥测数据的至少一部分存储在下列中的至少一个中:所述计算平台上的静态随机存取存储器(SRAM)和多个寄存器。18.根据权利要求13...

【专利技术属性】
技术研发人员:M·K·纳奇姆苏M·J·库玛尔
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1