网络信息传输系统的制作方法

文档序号:26839425发布日期:2021-10-08 20:48阅读:177来源:国知局
网络信息传输系统的制作方法

1.本发明总体上涉及联网系统,并且特别但非排他地涉及将信息发送到远程系统的联网系统,进一步特别涉及对联网系统中的问题进行远程诊断。


背景技术:

2.已知将信息发送到远程系统的某些系统,在某些情况下用于远程诊断发送信息的系统中的问题。


技术实现要素:

3.将网络信息发送到远离网络或远离网络组件的位置的系统在本文中也被称为“网络遥测系统”(以各种语法形式)。术语“网络遥测系统”并不旨在限于“遥测”本身,而是应根据前述定义来理解。在不限制前述普遍性的情况下,这样的信息可以包括对于诊断网络系统中的难题,状态或问题有用的信息。经由网络遥测系统发送的网络信息在本文中也被称为“网络遥测信息”(以各种语法形式)。
4.在某些示例性实施方式中,本发明试图提供用于网络系统诊断的改进的系统和方法,包括改进的网络遥测系统。
5.因此,根据本发明的示例性实施方式,提供了一种网络信息传输系统,包括:分组处理设备,其包括控制平面,其被配置为打开与所述网络信息传输系统外部的目标的远程直接存储器访问(rdma)连接;封装器,其被配置为封装遍历所述分组处理设备的一个或多个分组,以产生一个或多个封装的分组;以及发射器,其被配置为经由所述rdma连接将所述一个或多个封装的分组发射到所述网络信息传输系统外部的目标。
6.进一步根据本发明的示例性实施方式,所述分组处理设备包括以下之一:交换机和路由器。
7.更进一步根据本发明的示例性实施方式,所述一个或多个封装的分组包括遥测信息。
8.另外,根据本发明的示例性实施方式,所述分组处理设备还包括镜像决定单元,所述镜像决定单元被配置为将所述一个或多个分组在其封装之前进行复制,并且所述封装器封装所述一个或多个复制的分组。
9.此外,根据本发明的示例性实施方式,所述rdma连接经过互联网协议(ip)网络。
10.进一步根据本发明的示例性实施方式,所述rdma连接包括聚合以太网上的rdma(roce)连接。
11.仍进一步根据本发明的示例性实施方式,所述roce连接包括以下之一:不可靠连接(uc);以及可靠连接。
12.另外,根据本发明的示例性实施方式,所述roce连接包括rocev2连接。
13.此外,根据本发明的示例性实施方式,所述网络信息传输系统外部的所述目标包括收集器系统。
14.进一步根据本发明的示例性实施方式,所述收集器系统包括网络元件和收集器存储器。
15.仍然根据本发明的示例性实施方式,所述网络元件包括网络接口控制器(nic)。
16.根据本发明的另一示例性实施方式,还提供了一种网络信息传输方法,该方法包括在网络信息传输系统的分组处理设备中,打开与所述网络信息传输系统外部的目标的远程直接存储器访问(rdma)连接,封装遍历所述分组处理设备的一个或多个分组,产生一个或多个封装的分组,并且经由所述rdma连接将所述一个或多个封装的分组发射到所述网络信息传输系统外部的目标。
17.进一步根据本发明的示例性实施方式,所述一个或多个封装的分组包括遥测信息。
18.仍然进一步根据本发明的示例性实施方式,方法还包括将所述一个或多个分组在其封装之前进行复制,并且其中封装所述一个或多个复制的分组。
19.另外,根据本发明的示例性实施方式,所述rdma连接经过互联网协议(ip)网络。
20.此外,根据本发明的示例性实施方式,所述rdma连接包括聚合以太网上的rdma(roce)连接。
21.进一步根据本发明的示例性实施方式,所述roce连接包括以下之一:不可靠连接(uc);以及可靠连接。
22.更进一步根据本发明的示例性实施方式,所述网络信息传输系统外部的所述目标包括收集器系统。
23.另外,根据本发明的示例性实施方式,所述收集器系统包括网络元件和收集器存储器。
24.此外,根据本发明的示例性实施方式,所述网络元件包括网络接口控制器(nic)。
附图说明
25.本发明从以下结合附图的详细描述中将更充分地理解和领会本发明,其中:
26.图1a是根据本发明的示例性实施方式构造和操作的网络信息传输系统的简化框图;
27.图1b是分路汇聚系统的部分图示、部分框图,用于理解图1a的示例性实施方式的某些操作模式;
28.图2是图1的系统的示例性操作方法的简化流程图;以及
29.图3是图2的方法的一部分的示例性操作方法的简化流程图。
具体实施方式
30.通过普遍介绍,相信以下讨论代表了网络信息传输系统的普遍概述(遥测系统被用作特定的非限制性示例);然而,此处所做的任何陈述均不代表该领域中的已知技术的特征:
31.在某些网络中,网络信息被频繁或持续收集,并可以作为网络遥测信息进行发送,以便诊断和处理网络中可能出现的问题。网络遥测信息的这种收集和发送可以在许多不同的时间尺度上完成,这些时间尺度被选择以便解决各种问题。例如,在没有限制上述内容的
普遍性的情况下,小时数据可以被存储和分析以监视系统健康,而第二分辨率数据可以用于警告链路故障等。此类网络中的一个可能的配置是用于本地交换机cpu,其使用循环直接存储器访问(dma)来“消化”遥测事件并将这些事件发送到一些收集器(通常在收集器处进行分析)。虽然为了简化描述的目的,在此使用交换机的示例,但是应当理解,经适当修改后路由器可以在某些示例性实施方式中替代地使用。这个配置提出了较高的交换机cpu负载要求的问题并受到交换cpu中分组处理的可用带宽的约束。
32.在另一可能的配置中,所有遥测事件通过隧道作为流量传输到某个收集器,该收集器需要消化接收到的流量并将该流量存储在某个位置。在这种配置下,存在收集器中高cpu负载的问题,并且需要不断地由收集器拉取数据以免丢失任何必需的数据(通常存储在非循环存储器中)。
33.两种配置都会导致遥测数据的处理速度慢,并且无法处理高分辨率数据。
34.此外,在收集器侧,非循环存储器需要不断地被“拉取”(读取),以便不丢失相关数据。
35.为了改进上面刚刚讨论的系统的类型(例如,作为非限制性示例,以使得能够执行微突发分析和实时拥塞控制),可能需要以微秒的分辨率来收集网络信息。据信与网络信息传输系统有关的当前解决方案不能应付所需的时间分辨率(微秒)和需要发射的每秒分组(pps)的所需数目。
36.在本发明的一些示例性实施方式中,如本文进一步所述,可以使用适当的交换机(例如,作为非限制性示例,可以从mellanox科技公司购得的以太网交换机asic)以使用远程直接存储器访问(rdma)(例如,通过非限制性示例,聚合以太网上的rdma(roce))流式传输相关事件(例如,作为非限制性示例,遥测事件);这样可以实现必要的pps并管理延迟要求,同时将cpu资源从处理网络中释放出来。在不限制前述内容的普遍性的情况下,在某些示例性实施方式中,可以替代地使用非以太网交换机,例如无限宽带交换机(例如,也可以从mellanox科技公司购得)。
37.在本发明的一些示例性实施方式中,使用硬件处理的roce来启用事件(作为非限制性示例,例如遥测事件)的处理,该硬件可以包括roce不可靠连接(uc)。如本文所使用的,术语“硬件处理的”涉及通信,其中(在打开连接之后,这可能涉及软件的使用)经由硬件发送分组而无需软件干预。在kagan等人的美国专利7,013,419中描述了这种系统的一个非限制性示例,该专利的公开内容通过引用合并于此。
38.如上面在遥测系统的总体概述中所述,某些此类基于交换机的系统被认为使用了交换机的一个或多个cpu以轮询循环直接存储器访问(dma)缓冲区,分析(“消化”)结果,以及将分析的结果发送到收集器。这种方法被认为会占用大量的cpu(在交换机和收集器上),并且会导致相对较慢的分组处理;在本上下文中,“慢”是指以每秒数十万个分组的速率,也许每秒高达几百万个分组的速率处理分组。在使用(如上所述)硬件处理的roce连接的本发明的一些示例性实施方式中,可以使交换机能够每秒处理比上述方法多两个甚至三个数量级的分组,而无需在收集器或交换机侧上使用cpu来发送分组(通常,只需要在收集器上使用少量的cpu以将分组“拉”出本地存储器)。
39.由于rdma的性质,其中远程(收集器)存储器被直接访问,在存储时无需分析(“消化”)信息;当处理先前存储的信息时,分析可能完全在收集器侧进行。因此,该解决方案对
于提供微秒分辨率遥测或其他事件的报告是可行的,其可以用于(通过非限制性示例)处理拥塞控制,处理缓冲区问题以及处理微突发。一个具体的非限制性例子是分路聚合,其中一个交换机可以从多个地方(主机,cpu等)收集信息。如本领域中已知的,在分路聚合中,每个交换机产生数据,该数据被发送到分路聚合器。分路聚合器通常是交换机,其执行聚合(在某些情况下,仅执行聚合),然后向前发送聚合的分组。在本发明的某些示例性实施方式中,如上文和下文所述,在启用分路聚合的情况下,可以使用rdma实现改进的性能。
40.现在参考图1a,其是根据本发明的示例性实施方式构造和操作的网络信息传输系统的简化的方框示意图。图1的系统包括交换机105,该交换机105包括用于交换分组的逻辑流水线109。(如上所述,交换机的示例是非限制的;本领域技术人员将理解,路由器也可以在本发明的某些示例性实施方式中使用。这里可以使用术语“分组处理设备”来指定交换机或路由器。)逻辑流水线109被示为包括多个流水线块120;为了简化描述和描述,仅示出了四个这样的流水线块120,应当理解,在交换机105中可以包括更多(或更小)数目的流水线块120。
41.图1的交换机105还包括以下元件,其操作在下面描述:
42.镜像决定单元130;
43.封装器140;
44.发射器142。
45.图1的交换机105被示为经由网络连接145与收集器150通信。应当理解,在本发明的某些示例性实施方式中,网络连接145和收集器150在该示例性实施方式外部,使得包括交换机105的子组合包括本发明的示例性实施方式。
46.图1的收集器150包括网络元件,例如(作为非限制性示例)在收集器侧上的网络接口控制器(nic)160。用于这种连接的适当nic的一个非限制性示例是可从mellanox科技公司购买的connectx nic。
47.图1的收集器150还包括直接存储器访问(dma)通道170和收集器存储器180。
48.现在简要描述图1的系统的示例性操作模式。交换机105(特别是通常与收集器的控制平面152通信的交换机的控制平面102)经由roce(通常但不一定使用rocev2,已知其使用不可靠连接)通过网络连接145打开到收集器150的不可靠连接(uc)。虽然在这里使用uc的示例,但是应当理解,可以替代地使用可靠的连接。
49.通常,经由网络接口控制器160从交换机到收集器150打开uc。在一些示例性实施方式中,可以在使用的软件和适当的软件堆栈(例如,作为非限制性示例,softroce(可经由万维网在github.com/softroce获得其版本)中完成打开这种uc;应特别理解,在这种上下文下的软件示例(尤其是softroce)并不意味着限制。
50.一旦打开了如上刚刚所述的uc,就可以将分组从交换机105发送到收集器150。通常,要发送的分组由封装器140适当地封装(例如,对于rocev2来说是已知的)以便发送。发射器142经由uc将封装的分组发送到收集器150。
51.现在另外参考图1b,其是分路汇聚系统的部分图示、部分框图,用于理解图1a的示例性实施方式的某些操作模式。
52.除了这里所描述的,总体上以182表示的图1b的分路汇聚系统通常可以类似于本领域中公知的分路汇聚系统,其中多个叶子交换机184(为了描述的简化,示为叶子交换机
1,叶子交换机2和叶子交换机n,应当理解,可以使用更少或更多数目的叶子交换机)产生在网络分路186处汇聚的数据,以向前传输到一个或多个收集器系统188(再次,为了描述的简化,示出了三个收集器系统188,应当理解,可以使用更少或更多数目的收集器系统)。
53.在示例性实施方式中,网络分路186包括诸如参考图1a示出和描述的网络信息传输系统,因此将理解以上参考图1a描述的功能和优点可以在分路聚合系统的情况中实现。
54.现在另外参考图2,其是图1的系统的示例性操作方法的简化流程图。
55.如上所述,从交换机100到收集器150打开roce连接(步骤210)。
56.参数被配置用于分组封装(步骤220)。在不限制前述普遍性的情况下,参数由控制平面(例如,图1a的交换机控制平面102)配置。适当的封装参数的以下特定的非限制性示例涉及rocev2:
57.为初始封装配置了以下参数,这些参数在roce领域中是众所周知的:
58.·
bth报头:
59.(基本)虚拟地址,源/目标队列对,分区键
60.·
reth报头:
61.远程密钥
62.·
ip/udp报头:
63.源/目标ip,源/目标端口
64.·
dma长度(每个会话可配置)
65.众所周知,交换机通常具有流水线架构。通常,进入交换机流水线的任何分组都可以被“镜像”;在本发明的示例性实施方式的情况下,可以进行镜像以将镜像的分组发送到远程收集器。
66.尽管本文描述了分组的镜像,并且本文描述了封装和发送镜像的分组,但这仅是本发明的某些示例性实施方式的一个非限制性示例。例如,可以选择分组(如在镜像的情况下将在下面立即描述的),并且改变其目标,以便例如在没有镜像的情况下封装和发送分组。
67.分组可能被镜像以发送到远程收集器的示例性情况的非限制性列表包括:
68.基于流的原因(作为非限制性示例,基于匹配动作表中的匹配;作为非限制性示例,此类原因可能包括:输入端口;关联的vlan;通常用户定义的规则;目标ip地址5元组[流标识符]等);
[0069]
在丢弃分组的情况下;
[0070]
在达到缓冲区阈值的情况下(例如,达到低剩余缓冲区空间水平);
[0071]
在达到延迟阈值的情况下(例如,延迟过高);
[0072]
在分组经由特定的入口端口进入交换机或经由特定的出口端口离开交换机的情况下(在示例性情况下,该特定端口是预先确定的或动态确定的);以及
[0073]
在分组是控制分组的情况下。
[0074]
进入交换机的分组基于定义的标准被镜像(例如,根据以上刚刚描述的示例性情况),并且镜像的分组通过封装经由roce被发送到收集器150(步骤230)。分组继续被发送;交换机150跟踪附加分组被发送的事实;并且交换机相应地更新放置在后续分组的报头中的信息,更新报头信息以及在收集器150处的dma的虚拟地址信息(步骤240)。
[0075]
在本发明的示例性实施方式中,当第一(初始)分组在交换机处被镜像以用于封装并传输到收集器时,通常根据上述用于初始封装的参数来封装第一分组。
[0076]
在后续分组被镜像以进行封装并传输到收集器时,在封装之前roce报头字段由交换机根据以下内容进行更新(根据上述示例):
[0077]
通过发送的每个分组递增psn(分组序列号);
[0078]
虚拟地址(在收集器处)被更新如下:
[0079]
[基地址+(psn*dma长度)]%dma_count
[0080]
在紧接以上的虚拟地址更新方程式中,dma_count指示可放入可用存储器空间中的最大分组数目,由此当可用空间已满时,必须“包装”。
[0081]
然后,每个后续分组都经由ip网络发送到收集器。应当理解,在本发明的示例性实施方式中,ip网络和收集器不包括在示例性实施方式中。
[0082]
现在另外参考图3,其是图2的方法的一部分的示例性操作方法的简化流程图,具体包括经由roce通过(ip)网络连接145封装和发送分组。
[0083]
使用诸如以上参考rocev2描述的那些的初始连接报头字段来封装初始分组(步骤310)。初始分组经由网络连接145被发送到收集器150(步骤320)。
[0084]
如上所述,利用更新的psn和更新的虚拟地址(步骤330)对随后的分组进行封装,并且经由ip网络145发送到收集器150(步骤330)。然后,该方法在步骤330处继续用于下一分组。没有示出图3的方法的显式端部,其指示可以从交换机105向收集器150发送基本上无限数目的分组,实际上应当理解,某种情况下可以停止分组的发送。
[0085]
应当理解,如果需要,本发明的软件组件可以以rom(只读存储器)形式实现。如果需要,通常可以使用常规技术以硬件实现软件组件。还应当理解,软件组件可以例如作为计算机程序产品或在有形介质上被实例化。尽管在本发明的某些实施方式中可以不包括这样的实例化,但是在某些情况下,可以将软件组件实例化为可由适当的计算机解释的信号。
[0086]
应当理解,为清楚起见,在分开的实施方式的上下文中描述的本发明的各种特征也可以在单个实施方式中组合提供。相反,为简洁起见,在单个实施方式的上下文中描述的本发明的各种特征也可以单独地或以任何合适的子组合来提供。
[0087]
本领域技术人员将理解,本发明不限于上文已经具体示出和描述的内容。而是,本发明的范围由所附权利要求书及其等同物限定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1