CN103873377A - 网络状态映射 - Google Patents

网络状态映射 Download PDF

Info

Publication number
CN103873377A
CN103873377A CN201310688132.3A CN201310688132A CN103873377A CN 103873377 A CN103873377 A CN 103873377A CN 201310688132 A CN201310688132 A CN 201310688132A CN 103873377 A CN103873377 A CN 103873377A
Authority
CN
China
Prior art keywords
network
field
output port
packet
queue
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201310688132.3A
Other languages
English (en)
Other versions
CN103873377B (zh
Inventor
莫汉·卡尔昆特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Avago Technologies International Sales Pte Ltd
Original Assignee
Zyray Wireless Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zyray Wireless Inc filed Critical Zyray Wireless Inc
Publication of CN103873377A publication Critical patent/CN103873377A/zh
Application granted granted Critical
Publication of CN103873377B publication Critical patent/CN103873377B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/062Generation of reports related to network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0882Utilisation of link capacity

Abstract

本公开涉及一种网络状态映射。本公开的实施方式提供了用于网络状态映射的系统及方法。这种示例性系统及方法包括将网络映射标签插入计算机网络的数据包的流集中,并且从网络元件接收对网络映射标签的响应,该网络元件包括网络映射标签的填充字段,该网络映射标签包括用于识别网络元件的字段、用于识别网络元件的输出端口的字段、用于识别输出端口的队列的字段以及用于输出端口的队列的状态字段。

Description

网络状态映射
技术领域
本发明涉及网络状态映射,更具体地涉及用于网络状态映射的系统和方法。
背景技术
在计算机网络中,数据包可以经由不同的路径被发送至各自的目的地。如果多个站沿相同的节点或中继段(hop)发送数据包,则在这些节点或中继段上会发生拥塞。此外,在网络输入与输出端口或链路之间的速度失配可导致拥塞。这种拥塞会减缓数据包的传输和/或导致一些数据包丢失。
发明内容
根据本发明的一个方面,提供了一种方法,包括:将网络映射标签插入计算机网络的数据包的流集中,其中,所述网络映射标签包括用于识别网络元件的字段、用于识别所述网络元件的输出端口的字段、用于识别所述输出端口的队列的字段;以及用于所述输出端口的所述队列的拥塞字段;通过网络控制器从沿着分配至所述流集的路径转发承载所述网络映射标签的数据包的所述网络元件接收对所述网络映射标签的响应,其中,所述响应包括所述网络映射标签的填充字段,所述网络映射标签包括用于识别所述网络元件的所述字段、用于识别所述网络元件的所述输出端口的所述字段、用于识别所述输出端口的所述队列的所述字段以及用于所述输出端口的所述队列的所述拥塞字段;以及至少基于从所述网络元件接收的所述响应,编译指示所述计算机网络的多个网络元件上的拥塞等级的网络映射。
其中,承载所述网络映射标签的所述数据包包括探测数据包。
其中,所述网络控制器、网络交换机或者发送站产生所述探测数据包。
其中,网络交换机将所述网络映射标签插入所述流集中,其中,承载所述网络映射标签的所述数据包包括来自远程发送器的具有有效载荷的数据包。
其中,所述网络映射标签被引入数据包的所述流集中的速率能够通过所述网络控制器编程。
其中,所述拥塞字段指示所述网络元件的所述输出端口的所述队列的当前的拥塞等级。
其中,所述网络映射包括所述计算机网络中的网络元件的识别、每个所述网络元件的输出端口的识别、每个所述输出端口的队列的识别以及每个所述队列的网络拥塞状态的识别。
所述方法还包括基于网络映射标签的内容修改转发规则并且将所修改的转发规则提供给在计算机网络内执行路由的网络站,其中,所述网络站用所述修改的转发规则更新所述网络站的转发规则。
根据本发明的另一个方面,提供了一种方法,包括:将网络映射标签插入计算机网络的数据包的流集中,其中,所述网络映射标签包括用于识别网络元件的字段、用于识别所述网络元件的输出端口的字段、用于识别所述输出端口的队列的字段以及用于所述输出端口的所述队列的状态字段;通过网络控制器从沿着分配至所述流集的路径转发承载所述网络映射标签的数据包的所述网络元件接收对所述网络映射标签的响应,其中,所述响应包括所述网络映射标签的填充字段,所述网络映射标签包括用于识别网络元件的所述字段、用于识别所述网络元件的所述输出端口的所述字段、用于识别所述输出端口的所述队列的所述字段以及用于所述输出端口的所述队列的所述状态字段;以及至少基于从所述网络元件接收的所述响应,确定网络转发规则。
其中,承载所述网络映射标签的所述数据包包括探测数据包。
其中,所述网络控制器、网络交换机或者发送站产生所述探测数据包。
其中,网络交换机将所述网络映射标签插入所述流集中,其中,承载所述网络映射标签的所述数据包包括来自远程发送器的具有有效载荷的数据包。
其中,所述网络映射标签被引入所述数据包的所述流集中的速率能够通过所述网络控制器编程。
其中,所述状态字段指示所述网络元件的所述输出端口的所述队列的当前拥塞等级。
根据本发明的又一个方面,提供了一种网络控制器系统,包括:处理器;被配置为将网络映射标签插入计算机网络的数据包的流集中的逻辑,其中,所述网络映射标签包括用于识别网络元件的字段、用于识别所述网络元件的输出端口的字段、用于识别所述输出端口的队列的字段以及用于所述输出端口的所述队列的状态字段;以及接收端口,被配置为从沿着被分配至所述流集的路径转发承载所述网络映射标签的数据包的所述网络元件接收对所述网络映射标签的响应,其中,所述响应包括所述网络映射标签的填充字段,所述网络映射标签包括用于识别网络元件的所述字段、用于识别所述网络元件的所述输出端口的所述字段、用于识别所述输出端口的所述队列的所述字段以及用于所述输出端口的所述队列的所述状态字段。
其中,所述网络映射标签被引入数据包的所述流集中的速率能够通过所述网络控制系统编程。
其中,所述状态字段指示所述网络元件的所述输出端口的所述队列的当前的拥塞等级。
其中,还包括被配置为构造指示所述计算机网络的多个网络元件上的拥塞等级的网络映射的逻辑。
其中,所述网络映射包括所述计算机网络中的网络元件的识别、每个所述网络元件的输出端口的识别、每个输出端口的队列的识别以及每个队列的网络拥塞状态的识别。
所述方法还包括至少基于从所述网络元件接收的所述响应来确定网络转发规则的逻辑。
附图说明
参照附图能够更好地理解本公开的许多方面。附图中的组件无需按比例绘制,而是将重点放在清楚地示出本公开的原理。此外,附图中,在全文中的几个示图中相同的参考标号指代相应的部分。
图1是根据本公开的示例性实施方式的计算机网络的示图。
图2是根据本公开的示例性实施方式的网络映射标签的框图。
图3是描述了用于监控在根据本公开的实施方式的计算机网络内的网络状态等级的示例性过程的流程图。
图4是描述了根据本公开的实施方式的用于响应于网络映射标签的示例性处理的流程图。
图5是描述了根据本公开的实施方式的用于为与计算机网络相关联的流建立网络映射的示例性处理的流程图。
图6是描述了根据本公开的示例性实施方式的网络控制器和网络站的框图。
具体实施方式
本公开的实施方式提供了用于网络状态映射的系统及方法。这种示例性系统及方法包括在计算机网络中的数据包的流集中插入网络映射标签并且接收对网络映射标签的响应。在一些实施方式中,来自网络元件的响应包括网络映射标签的填充字段,该网络映射标签包括用于识别网络元件的字段、用于识别网络元件的输出端口的字段、用于识别输出端口的队列的字段以及用于输出端口的队列的状态字段。因此,在其中的一个实施方式中,在计算机网络中的网络控制器能够监控网络中的网络元件的拥塞状态并且基于从编译的拥塞信息所形成的网络拥塞映射来选择用于转发数据包的路径。
图1是根据示例性实施方式的计算机网络100的示图。例如,网络100可包括具有用于将消息从源传送至目的地的多个路径的网状网络拓扑或部分网状网络拓扑。根据示例性实施方式,网络100可包括使用双绞线、同轴电缆或光纤的有线(引导的)网络或无线(非引导的)网络或这些的任意组合。网络100可以包括数据包交换网络(packet-switched network),其中,站将消息分解成数据包并且将这些数据包一次一个地发送至网络100。该网络100可利用虚电路的方法来路由数据包,其中,发送站在将数据包发送到网络之前,遵循每个数据包的转发规则。在一些实施方案中,网络100可以是层2和/或层3网络,诸如数据中心网络(例如,私有云或公共云)。
在示例性实施方式中,可以基于各数据包中的字段和/或各数据包的属性将源于网络元件或给定站的数据包散列化(hash)并结合至流集中。在网络100中的诸如路由器,交换机或交换机结构的组件可通过散列给定数据包的某些数据包字段来识别每个数据包的流集。流集可被视为结合至宏流的一组状态属性(诸如下面所讨论的活跃的、进入端口、路径ID、移动计数器和/或时间戳)。被散列至相同的流集的流可以被视为属于相同的宏流,其中,宏流为更小的微流的集合。
在各种实施方式中,散列至相同的流集和/或属于流集的宏流的数据包可以由网络控制器103或诸如路由器,交换机或者交换机结构的其它网络设备通过网络100分配至相同的路径,除非改变了通过流集维持的路径分配和/或流集被重新路由。根据示例性实施方式,例如,路径分配可包括诸如以同等开销的多路径途径的一系列的下一跳、链路聚合组(LAG)成员或中继线成员(诸如HiGig中继线)。
包括网络站102的网络100可包括不同的网络元件。根据示例性实施方式,站102可包括任何类型的计算设备,诸如服务器、网关、路由器、交换机或中继节点。站102可以使数据包通过网络100发送至接收器104。根据示例性实施方式,接收器104也可包括任何类型的计算设备,诸如服务器、网关、路由器、交换机、中继节点、个人计算机、膝上型或笔记本电脑、智能电话、个人数字助理(PDA)或蜂窝电话。
网络站102可以从网络控制器103接收转发的规则并且可以应用这些规则来分配将数据包发送至接收器104的路径。该路径可以包括通过网络100中的指定节点的一系列的中继段。至接收器104的路径可包括存储并沿着路径将数据包转发至接收器104的任意数量的节点106,108,110。根据示例性实施方式,节点106,108,110也可包括任何类型的计算设备,诸如服务器、网关、路由器、交换机或网络站。尽管在图1中示出的三个节点106,108和110仅具有单跳路径,但在网络100中可以包括任意数量的节点106,108,110,并且网络100可以包括基站102与接收器104之间的任意数量的跳。在各种实施方式中,网络在站端点之间是多路径的,以提高网络的对分带宽(bi-section bandwidth)。
网络站102可以从源112接收数据包。站102可以包括多个端口,并且可以经由一个或多个端口从源112接收数据包。根据示例性实施方式,源112也可包括任何类型的计算设备,例如服务器、网关、路由器、交换机、中继节点、个人计算机、膝上型或笔记本电脑、智能电话、个人数字助理(PDA)或蜂窝电话。
网络控制器103可以基于多个标准为包括从源112接收的去往接收器104的数据包的每个流确定最佳路径并将该信息传送至网络战102。因此,源112可以将数据包作为流集的一部分发送至站102。
网络站102可与其他发送器114,116争用网络100中的资源。根据示例性实施方式,发送器114,116也可以包括任何类型的计算设备,例如服务器、网关、路由器、交换机、中继节点、个人计算机、膝上型或笔记本电脑、智能电话、个人数字助理(PDA)或蜂窝电话。发送器114,116可以将数据包发送至节点106、108、110。站102、接收器104、节点106,108,110、源112和发送器114,116可经由链路118,120,122,124,126,128,130,132,134进行通信。链路118,120,122,124,126,128,130,132,134可包括有线(引导的)或无线(非引导的)介质。作为非限制性示例,站102、接收器104、节点106,108,110、源112和发送器114,116可以根据各种协议(诸如以太网(IEEE802.3)、无线局域网(802.11)、蓝牙(802.15)或微波存取全球互通(802.16))经由链路118,120,122,124,126,128,130,132,134进行通信。其中的网络控制器103和基站102,可以经由除了上述的链路之外的链路136,138,140,142进行通信。
例如,当节点106,108,110从两个发送器114,116和站102接收数据包时可能会发生拥塞。例如,如果站102和发送器114两者均将数据包发送至节点106,则节点106可能无法以与站102和发送器114之和相同的速度处理和转发数据包。站102和/或发送器114将数据包发送至接收器104所经由的路径的等待时间或延迟会增加,导致减慢了数据包的传递,并且因为数据包超过了该节点106的缓冲容量,一些数据包可能被丢弃。
网络控制器103可以获知所述拥塞并重新编程由网络站102所使用的流集表,所述流集表将流集与被用于到达各自目的地的具体路径相关联。从而,网络控制器103可以将流集从第一转发路径或链路(其是拥塞的)再分配至可替换的转发路径或链路。通过在网络100内具有可见性,网络控制器103被配置为识别网络元件是否正在经历拥塞,并重新平衡对网络路径的流的分配。因此,网络控制器102可以是软件定义的网络(SDN)架构的一部分。
因此,网络站102可以散列数据包的字段以确定流集(数据包是至其的成员),并且然后利用该表来识别被用于路由数据包的路径。根据示例性实施方式,站102可以执行以获取散列值的散列函数的示例可以包括,例如,CRC16、CRC32、XOR操作和/或Pearson散列。散列至给定的流集的数据包可以具有相同的源地址和目的地址。根据示例性实施方式,流集中的数据包也可具有连续的序列号;接收器104可使用该序列号以将该被分解成数据包的消息放回至其原始次序。
在一个实施方式中,网络控制器103使网络映射标签作为流的一部分被发送,从而使得网络控制器103可以获得在网络上的有用的状态信息并且做出明智的路由或转发决定。通过了解在端口等级、队列等级和/或用于网络元件的间隔尺寸的其他所期望的等级上的网络100的状态,网络控制器103可以获取到网络100的全局视图,该网络100的状态包括拥塞状态或其它衡量标准。因此,本公开的实施方式旨在获得网络100内的这样的状态信息。具体地,根据本公开的实施方式,示例性网络控制器103可以基于从网络状态标签返回的状态信息中产生的网络映射重新路由数据包。
图2是根据示例性的非限制性实施方式的网络映射标签200的框图。在此示例中,网络映射标签200包括网络元件识别(ID)字段(诸如当适用时的交换机识别号)、端口ID字段、队列ID字段,拥塞(CNG)状态字段和保留(RESVD)字段。此外,在此实施方式中,网络元件ID字段、端口ID字段、队列ID字段、CNG字段和RESVD字段的大小分别为12位、8位、4位、2位和8位。12位大小的网络元件ID字段允许在网络100中识别4096个网络元件。然而,在网络映射标签200内可以增加或减少网络元件ID字段(或任何其他字段)的大小以满足网络的特殊需求。因此,网络映射标签200的整体大小在不同实施方式中可以变化。相应地,在此示例中,端口字段的8位的大小允许识别256个端口,4位的队列ID字段允许识别16个队列(每端口)以及2位的CNG字段允许识别4个等级的拥塞。此外,在不同的实施方式中,可以识别不同等级的拥塞和/或可以获得不同类型的状态信息。
考虑到网络映射标签200可以被插入到数据包的流中,该数据包的流或串流可以通过具有网络元件ID的网络元件来接收。在一个实施方式中,网络100中的每一个网络元件均能够提供与网络元件ID相关联的网络状态信息。在接收网络映射标签200之后,诸如网络站102的网络元件在网络100内转发流。因此,该流将被引导至网络站102的多个物理端口中的一个并且与多个队列的端口相关联。在转发流之后,通过网络站102使用与输出端口和队列相关联的信息填充网络映射标签200。
根据本公开的实施方式,网络控制器103被配置为获得网络站102和网络100中的其他网络元件的队列的网络状态。因此,网络站102限定了用于转发承载网络映射标签200的队列的拥塞状态,并且使用适当的状态填充网络映射标签200的CNG字段。
在一个示例中,网络站102可以通过网络控制器103来编程,以分配用于指示当前拥塞状态:高、中或低的三个拥塞等级中的一个。因此,如果拥塞状态为全部的75%时,那么等级可以被分配为2(高)并且10位的表示被填充在CNG字段中。如果在端口内的队列处的拥塞状态是在全部容量的10%,那么该等级可被分配为0(低)并且00位的表示被填充在CNG字段中。相应地,低和高的等级之间的中间等级可能被分配为指示中间等级的01位表示。
然后,网络映射标签200被填充有用于网络站的标识符、用于网络站的端口的标识符,用于端口的队列的标识符和针用于所述队列的拥塞状态的标识符。包括网络映射标签200的数据包副本从网络站102被发送至网络控制器103,其中,网络控制器103(或者网络控制器的代理)负责构造网络拥塞映射或表格(例如,流-路径-拥塞表),在其他用途中,其能够被网络控制器103使用以在流负载平衡上做出决定。
因此,如果网络元件的队列的拥塞状态是全部的3/4,网络控制器103则可以做出选择以选择或重新路由至与采用拥塞队列的路径不同的路径(以低或中间CGN等级)。因此,返回至网络控制器103的状态信息作为来自网络元件的填充网络映射标签允许网络控制器103了解网络状况和网络元件的状态。
将网络映射标签200引入数据包的流中的一种可能的方法是在层2数据包或帧中插入标签。在一个示例性实施方式中,网络映射标签200可以被插入在使用私有以太网类型(private Ethertype)的层2数据包的VLAN标签之后。另一种可能的方法是在层3数据包的IP可选字段中插入网络映射标签200。
在一个实施方式中,包括网络映射标签200的数据包可以是专门产生用于承载网络映射标签200的探测数据包,或者可以是包括用于负载网络映射标签200的有效载荷的数据包。对于探测数据包,该数据包的报头可以被标记以指示该数据包是探测器(probe),这将允许网络元件识别该探测器。尽管本文中使用了术语“数据包”,该“数据包”也可以包括帧或包括被用来确定流集的数据和其他字段的其他格式。
根据本公开的实施方式,网络映射标签200被插入在网络数据包内的速率能够通过网络控制器103编程。例如,根据不同的示例性实施方式,该速率可以以周期或者随机间隔发生。此外,诸如网络交换机的网络元件可以有权来决定何时网络映射标签200应当被插入到流中以遵循转发规则(例如,以满足期望的采样速率),因为期望足够的数据包采样速率,从而使得网络条件的采样是有效的,这可以包括在流的每一个层2数据包中插入网络映射标签200。
在一些实施方式,对于具有统计学上的散列流的网络,网络映射标签200可通过用于流的探测数据包来承载。因此,网络控制器103可以基于每个流来请求探测数据包,因为不同的流可采用不同的路径。另一方面,具有动态散列流的网络,网络映射标签200可被插入到流的采样数据包中。
在一个实施方式中,是网络控制器103将网络映射标签200插入数据包中。在这种设置中,服务器管理员然后可以在端点处实施智能算法以管理通信量。可选地,诸如交换机的网络元件可以被编程以将网络映射标签200引入流的数据包中。因此,在分配至流集的路径中的第一网络元件可以被指示引入并发送网络映射标签200。在这种设置中,网络管理员能够在诸如交换机的网络元件处实施智能算法以管理通信量。
例如,可以通过网络控制器103将流集分配至将被用来达到其目的地(诸如,接收器104)的特定的路径。该路径可以与索引号相关联,其可以与流集表相比较,对于所述路径(具有索引号)来说,所述流集表指示数据包(承载网络映射标签)将通过节点106,108,110或中继段中的哪一个到达其目的地。可选地,根据示例性实施方式,流集表可以包括用于数据包将通过的每个节点106,108,110或中继段的地址以及目的地的地址,该目的地可以是接收器104。例如,可以通过网络控制器103对诸如源地址字段和目的地地址字段的数据包中的字段执行散列函数来确定路径ID。因此,网络控制器103可散列在数据包中的字段以识别用于该数据包的流集。
相应地,网络控制器103可以向诸如站102的网络元件提供或更新可应用的流集表,以用于转发流集中的数据包。此外,当网络控制器103确定用于流集的有效路径拥塞时,网络控制器103可以重新将流集分配至不同的路径。
现在参考图3,提供的流程图示出了根据示例性实施方式的用于监控在计算机网络内的网络状态等级的处理(例如,算法)。图3的流程图提供了根据各种实施方式的操作网络控制器103的一部分的一个示例。应当理解,图3的流程图仅提供了可以被采用以实施如本文中所描述的网络控制器103的一部分的操作的许多不同类型的功能设置的示例,该网络控制器103包括网络映射服务606(图6)。
在此示例中,网络控制器103可将网络映射标签200插入(310)在被分配到网络路径的数据包的流集中。在一个实施方式中,网络映射标签200包括用于识别网络元件(例如,网络站102)的字段、用于识别网络元件的输出端口、输出端口的队列的字段;以及用于输出端口的队列的拥塞字段。因此,网络映射标签200旨在沿着该流被承载并且将在路径中将被诸如网络站102的网络元件接收。
在一个实施方式中,网络站102被编程为识别数据包的网络映射标签并在根据由网络站102执行的转发规则转发作为流集的一部分的数据包之后准备对网络控制器103的响应。如果特定的网络元件偶然接收到数据包并且未被配置为识别该网络映射标签,则该网络元件然后可以转发所述数据包而没有尝试准备响应并填充网络映射标签字段。
这种通过网络站102所准备的这样的响应包括网络站102被识别的网络映射标签200的填充字段。此外,用于转发数据包的端口、用于转发数据包的端口的队列以及用于输出端口的队列的拥塞等级中的每一个均被识别。因此,沿着路径接收网络映射标记200的每个网络元件也可以向网络控制器提供更新的状态信息。随后,当任一个网络元件接收新的网络映射标签时,网络控制器103就被提供有用于网络100的另一个更新的状态。
因此,在图3中,网络控制器103接收(320)具有网络映射标签的填充字段的响应,并且然后编译或者构造(330)网络映射(a/k/a网络状态映射或网络拥塞映射),该网络映射指示计算机网络100的多个网络元件上的拥塞等级。在一个实施方式中,如所论述的,网络映射可以是表格的形式,该表格具有用于识别计算机网络中的网络元件的单元、识别每一个网络元件的输出端口的单元、识别用于每一个输出端口的队列的单元以及识别用于每一个队列的网络拥塞状态的单元。在一些实施方式中,从网络映射标签200中所获取的状态信息也可被用于绘图描述具有所表示的当前网络状态等级的网络结构的示图或映射。
根据各种实施方式,所生成的网络映射因此可以包括每个网络元件、每个端口、每个队列及它们相应的条件等级。该信息可以是网络控制器103(或访问网络映射的其他网络元件)执行重新路由和转发决定的基础。例如,通过考虑网络100的当前映射,可以对用在特定路径中的网络元件检测网络状态,并且作为结果,可以做出决定以使用不同的路径重新路由流集。
接下来,图4是示出了根据示例性实施方式的用于响应网络映射标签的处理(例如,算法)的流程图。图4的流程图提供了根据各种实施方式的网络控制器103的一部分的操作的示例。应当理解的是,图4的流程图仅提供了可以被采用以实施如本文中所描述的网络站102的一部分的操作的许多不同类型的功能设置的示例,该网络站102包括网络映射代理614(图6)。
在此示例中,网络控制器103发送探测数据包或网络映射标记200被插入在流的采样数据包中。因此,诸如网络站102的网络元件接收(410)承载网络映射标签的数据包并且提取网络映射标签200。在为数据包做出转发决定之后,网络站102填充(420)网络映射标签200的识别字段,其可以包括用于网络站102(或其它网络元件)的ID、输出端口ID以及队列ID。网络站102还填充用于队列的拥塞等级(例如,低、中、高)。拥塞等级可取决于网络元件的缓冲区的大小和相关联的队列等级。然后,网络站102将填充的网络映射标签字段的副本发送(430)至网络控制器103,从而使得网络控制器103能够为网络100中的多个流中的每一个构建网络映射。这样的网络映射(例如,流-网络映射表)对于许多软件定义的网络应用来说是有用的。
图5是示出了根据示例性实施方式的处理的流程图。在此示例中,网络控制器103(或者网络控制器103的代理)从执行数据包转发的计算机网络100中的网络元件接收(510)网络映射标记的数据包。从所接收的网络映射标记的数据包,网络控制器103为每一个网络元件在网络映射内填充(520)拥塞信息并且为与计算机网络相关联的流创建(530)网络映射。应当理解的是,图5的流程图仅提供了可以被采用用于实施如本文中所描述的网络控制器103的一部分的操作的许多不同类型的功能设置的示例,该网络控制器103包括网络映射服务606(图6)。
现在参考图6,所描述的框图示出了根据示例性实施方式的网络控制器103和网络元件(网络站102)。连同网络控制器设备103和网络站102一起,示出了用于网络控制器103的网络连接602、网络接口604、网络映射服务606、存储器608和处理器610;以及用于网络站102的网络接口612(与端口/队列613相关联)、远程网络映射代理614、存储器616和处理器618。
网络控制器103可包括能够经由网络连接602监控计算机网络100的网络元件内的网络状态等级的合适的逻辑、电路、代码和/或接口,诸如网络映射服务606。作为这样的网络元件,网络站102也可包括能够经由网络连接602将网络状态等级提供给网络控制器103的合适的逻辑、电路、代码和/或接口,诸如远程网络映射代理614。
具体地,网络映射服务606可包括可以被集成在运行于网络控制器103中的操作系统(OS)内的逻辑和/或软件实体以在存储器中产生网络映射609。相应地,网络映射代理614可以包括可以被集成在运行在网络站102中的OS内的逻辑和/或软件实体;和/或可以被集成在可以运行在网络站102中的网络接口控制器(NIC)内的逻辑和/或软件实体。
此外,(网络控制器103的)处理器610可以包括能够在网络控制器103中执行控制和/或处理操作的合适的逻辑、电路、代码和/或接口。本公开可以不限于特定的处理器,但可以包括例如,通用处理器、专用处理器或者能够支持和/或控制网络控制器103的操作的合适的硬件、固件、软件和/或代码的任意组合。例如,存储器608可包括能够在例如网络映射相关的处理操作期间永久和/或非永久存储并提取由处理器610所使用的数据和/或代码的合适的逻辑、电路、代码和/或接口。在这方面,存储器608可以包括存储器技术的各种组合,所述存储技术例如包括只读存储器(ROM)、随机存取存储器(RAM)和/或闪存。
网络映射代理614可以包括可操作为能够执行和/或支持网络站102中的网络映射操作(包括提供网络状态衡量标准)的专用的实体。网络映射代理614可包括可以集成在运行于网络站102中的OS内的逻辑和/或软件的实体;和/或可以集成在可以运行于网络站104中的网络接口控制器(NIC)内的逻辑和/或软件实体。
(网络站102的)处理器618可包括能够在网络站102中执行控制和/或处理操作的合适的逻辑、电路、代码和/或接口。根据本公开的各种实施方式,本公开可以不限于特定的处理器,而可以包括例如,通用处理器、专用处理器或可以能够支持网络映射操作的合适的硬件、固件、软件和/或代码的任意组合。例如,存储器616可包括能够在网络映射相关的处理操作期间永久和/或非永久存储并提取被处理器618所使用的数据和/或代码的合适的逻辑、电路、代码和/或接口。在这方面,存储器616可以包括存储技术的各种组合,所述存储器技术例如包括只读存储器(ROM)、随机存取存储器(RAM)和/或闪存。
该网络连接602可以包括能够在网络装置(例如网络控制器103和诸如网络站102的网络元件)之间传送基于网络映射的通信量的网络接口和/或链路。作为非限制性示例,网络连接602可以包括基于以太网(IEEE802.3)的网络连接,其可以操作用于从和/或向网络装置102,103传送网络映射和/或非网络映射通信量的数据包,以促进网络站102与网络控制器103之间数据的交换。
可以在数字电子电路、或在计算机硬件、固件、软件或它们的组合中实施本文中所描述的各种技术的实施方式。各种实施可以被实施为由数据处理装置(例如,可编程处理器、计算机或多个计算机)执行或控制数据处理装置的操作的计算机程序产品,即,被明确地实施在的信息载体中(例如,在机器可读存储装置中)的计算机程序。计算机程序(诸如上述的计算机程序)能够以任意形式的编程语言书写,包括汇编语言或解释语言,并且能够以任意形式展开,包括作为单独的程序或者作为模块、组件、子程序或者适合于使用在计算环境中的其他单元。计算机程序可以被展开以在一个计算机上或者在一个站点上或者分布在多个站点并且通过通信网络互联的多个计算机上执行。
在本文的上下文中,计算机程序产品或“计算机可读介质”可以是能够包含、存储、通信、传播或传输被指令执行系统、设备或装置使用或与其相连接的计算机程序的任意工具。计算机可读介质可以是,例如但不限于电的、磁的、光学的、电磁的、红外的或半导体系统、设备、装置或传播介质。计算机可读介质的更具体的示例(非穷举的列举)将包括以下各项:具有一个或多个导线的电连接(电的)、便携式计算机磁盘(磁的)、随机存取存储器(RAM)(电的),只读存储器(ROM)(电的)、可擦除可编程只读存储器(EPROM或闪存)(电的)、光纤(光学的)和便携式光盘只读存储器(CDROM)(光学的),此外,某些实施方式的范围包括在实施在硬件或软件配置的介质中的逻辑中实施本公开的某些实施方式的功能。
可以通过一个或多个可编程处理器来执行方法或处理步骤,该可编程处理器执行计算机程序以通过对输入数据进行操作并且产生输出来执行功能。方法或处理步骤也可以通过专用逻辑电路来执行,并且装置可以被实施为专用逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
通过实例的方式,适合于计算机程序的执行的处理器包括通用和专用微处理器两者以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将接收来自只读存储器或随机存取存储器或两者的指令和数据。计算机的元件可以包括用于执行指令的至少一个处理器,以及用于存储指令和数据的一个或多个存储器装置。通常,计算机也可以包括或者可操作地耦接至用于存储数据的一个或多个大容量存储装置(例如,磁,磁性光盘或光盘),以接收数据或传送数据或者两者。
为了提供与用户的交互,实施方式可以被实施在计算机上,该计算机具有用于将信息显示给用户的显示装置,例如,阴极射线管(CRT)、液晶显示器(LCD)、监控器等,以及键盘和指向装置(pointing device),例如,鼠标或轨迹球,用户通过它能够向计算机提供输入,该显示装置包括触摸屏。其他种类的装置也能够被用来提供与用户的交互,例如,提供给用户的反馈可以是任何形式的感官反馈,例如,视觉反馈、听觉反馈或触觉反馈;并且,来自用户的输入可以以包括声音、语音或触觉输入的任何形式接收。
实施方式可以被实施在计算系统中,该计算系统包括:后端组件,例如,如数据服务器;或者其包括中间件组件,例如,应用服务器;或者其包括前端组件,例如客户端计算机,该客户端计算机具有通过其用户能够与实施交互的图形用户界面或Web浏览器;或者这样的后端、中间件或前端组件的任意组合。组件可以通过数字通信的任何形式或媒介进行互联,例如,通信网络。通信网络的示例包括但不限于局域网(LAN)和广域网(WAN),例如,因特网。
如本领域的普通技术人员应当理解,在流程图中的任何处理描述或模块应当被理解为表示包括一个或多个用来执行处理中的特定的逻辑功能或步骤的可执行指令的模块、片段或代码的一部分,并且可选的实施被包括在本公开的实施方式的范围内,其中,功能可不以所示出或讨论的顺序执行,可包括基本同步或者以相反的顺序。
尽管如本文中所描述的已示出了所描述的实施方式的某些特征,现在对本领域普通技术人员来说,可以进行多种变形、替代、修改和等同。因此,应当理解,所附权利要求旨在覆盖所有这样的变形和修改,只要落入本公开的实施方式的真实精神范围内。

Claims (10)

1.一种方法,包括:
将网络映射标签插入计算机网络的数据包的流集中,其中,所述网络映射标签包括用于识别网络元件的字段、用于识别所述网络元件的输出端口的字段、用于识别所述输出端口的队列的字段;以及用于所述输出端口的所述队列的拥塞字段;
通过网络控制器从沿着分配至所述流集的路径转发承载所述网络映射标签的数据包的所述网络元件接收对所述网络映射标签的响应,其中,所述响应包括所述网络映射标签的填充字段,所述网络映射标签包括用于识别所述网络元件的所述字段、用于识别所述网络元件的所述输出端口的所述字段、用于识别所述输出端口的所述队列的所述字段以及用于所述输出端口的所述队列的所述拥塞字段;以及
至少基于从所述网络元件接收的所述响应,编译指示所述计算机网络的多个网络元件上的拥塞等级的网络映射。
2.根据权利要求1所述的方法,其中,承载所述网络映射标签的所述数据包包括探测数据包。
3.根据权利要求2所述的方法,其中,所述网络控制器、网络交换机或者发送站生成所述探测数据包。
4.根据权利要求1所述的方法,其中,网络交换机将所述网络映射标签插入所述流集中,其中,承载所述网络映射标签的所述数据包包括来自远程发送器的具有有效载荷的数据包。
5.根据权利要求1所述的方法,其中,所述网络映射标签被引入数据包的所述流集中的速率能够通过所述网络控制器编程。
6.根据权利要求1所述的方法,其中,所述拥塞字段指示所述网络元件的所述输出端口的所述队列的当前的拥塞等级。
7.根据权利要求1所述的方法,其中,所述网络映射包括所述计算机网络中的网络元件的识别、每个所述网络元件的输出端口的识别、每个所述输出端口的队列的识别以及每个所述队列的网络拥塞状态的识别。
8.根据权利要求1所述的方法,还包括基于网络映射标签的内容修改转发规则并且将所修改的转发规则提供给在计算机网络内执行路由的网络站,其中,所述网络站用所述修改的转发规则更新所述网络站的转发规则。
9.一种方法,包括:
将网络映射标签插入计算机网络的数据包的流集中,其中,所述网络映射标签包括用于识别网络元件的字段、用于识别所述网络元件的输出端口的字段、用于识别所述输出端口的队列的字段以及用于所述输出端口的所述队列的状态字段;
通过网络控制器从沿着分配至所述流集的路径转发承载所述网络映射标签的数据包的所述网络元件接收对所述网络映射标签的响应,其中,所述响应包括所述网络映射标签的填充字段,所述网络映射标签包括用于识别网络元件的所述字段、用于识别所述网络元件的所述输出端口的所述字段、用于识别所述输出端口的所述队列的所述字段以及用于所述输出端口的所述队列的所述状态字段;以及
至少基于从所述网络元件接收的所述响应,确定网络转发规则。
10.一种网络控制器系统,包括:
处理器;
被配置为将网络映射标签插入计算机网络的数据包的流集中的逻辑,其中,所述网络映射标签包括用于识别网络元件的字段、用于识别所述网络元件的输出端口的字段、用于识别所述输出端口的队列的字段以及用于所述输出端口的所述队列的状态字段;以及
接收端口,被配置为从沿着被分配至所述流集的路径转发承载所述网络映射标签的数据包的所述网络元件接收对所述网络映射标签的响应,
其中,所述响应包括所述网络映射标签的填充字段,所述网络映射标签包括用于识别网络元件的所述字段、用于识别所述网络元件的所述输出端口的所述字段、用于识别所述输出端口的所述队列的所述字段以及用于所述输出端口的所述队列的所述状态字段。
CN201310688132.3A 2012-12-17 2013-12-16 网络状态映射 Active CN103873377B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/716,871 US8976697B2 (en) 2012-12-17 2012-12-17 Network status mapping
US13/716,871 2012-12-17

Publications (2)

Publication Number Publication Date
CN103873377A true CN103873377A (zh) 2014-06-18
CN103873377B CN103873377B (zh) 2017-04-12

Family

ID=50821660

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310688132.3A Active CN103873377B (zh) 2012-12-17 2013-12-16 网络状态映射

Country Status (3)

Country Link
US (2) US8976697B2 (zh)
CN (1) CN103873377B (zh)
DE (1) DE102013225692B4 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109379784A (zh) * 2017-01-25 2019-02-22 宏碁股份有限公司 对数据包进行映射的方法及使用所述方法的相关装置
CN111050353A (zh) * 2018-10-11 2020-04-21 华为技术有限公司 用于无线回传网络的数据传输方法和装置

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8976697B2 (en) * 2012-12-17 2015-03-10 Broadcom Corporation Network status mapping
FI124397B (en) * 2013-01-04 2014-08-15 Tellabs Oy A method and apparatus for defining a paging system for a network element of a software configurable network
US9609086B2 (en) 2013-03-15 2017-03-28 International Business Machines Corporation Virtual machine mobility using OpenFlow
US9444748B2 (en) 2013-03-15 2016-09-13 International Business Machines Corporation Scalable flow and congestion control with OpenFlow
US9769074B2 (en) 2013-03-15 2017-09-19 International Business Machines Corporation Network per-flow rate limiting
US9596192B2 (en) 2013-03-15 2017-03-14 International Business Machines Corporation Reliable link layer for control links between network controllers and switches
US9407560B2 (en) 2013-03-15 2016-08-02 International Business Machines Corporation Software defined network-based load balancing for physical and virtual networks
US9928104B2 (en) * 2013-06-19 2018-03-27 Nvidia Corporation System, method, and computer program product for a two-phase queue
US9473408B1 (en) * 2014-01-14 2016-10-18 Google Inc. Shortest first longer next routing with congestion reduction
US9674046B2 (en) 2014-10-21 2017-06-06 At&T Intellectual Property I, L.P. Automatic detection and prevention of network overload conditions using SDN
US10205938B2 (en) * 2014-11-10 2019-02-12 Keysight Technologies Singapore (Holdings) Pte. Ltd. Methods, systems, and computer readable media for monitoring and/or testing network communications
CN105721329A (zh) * 2014-12-05 2016-06-29 中兴通讯股份有限公司 分流方法、OpenFlow交换机、控制器和分流系统
US9525608B2 (en) 2015-02-25 2016-12-20 Quanta Computer, Inc. Out-of band network port status detection
US10268416B2 (en) * 2015-10-28 2019-04-23 Advanced Micro Devices, Inc. Method and systems of controlling memory-to-memory copy operations
RO132010A2 (ro) 2015-12-22 2017-06-30 Ixia, A California Corporation Metode, sisteme şi suport citibil de calculator pentru diagnosticarea reţelei
US10439867B2 (en) 2015-12-31 2019-10-08 At&T Intellectual Property I, L.P. Method and apparatus for optimizing a software defined network configuration
US10389643B1 (en) 2016-01-30 2019-08-20 Innovium, Inc. Reflected packets
US10355981B1 (en) 2016-03-02 2019-07-16 Innovium, Inc. Sliding windows
US10511516B2 (en) 2016-08-29 2019-12-17 Keysight Technologies Singapore (Sales) Pte. Ltd. Methods, systems and computer readable media for quiescence-informed network testing
US10735339B1 (en) * 2017-01-16 2020-08-04 Innovium, Inc. Intelligent packet queues with efficient delay tracking
US11075847B1 (en) 2017-01-16 2021-07-27 Innovium, Inc. Visibility sampling
US10616280B2 (en) 2017-10-25 2020-04-07 Bank Of America Corporation Network security system with cognitive engine for dynamic automation
US10437984B2 (en) 2017-10-26 2019-10-08 Bank Of America Corporation Authentication protocol elevation triggering system
US10686684B2 (en) 2017-11-02 2020-06-16 Bank Of America Corporation Individual application flow isotope tagging within a network infrastructure
US11552874B1 (en) 2019-01-18 2023-01-10 Keysight Technologies, Inc. Methods, systems and computer readable media for proactive network testing
US10841182B2 (en) 2019-03-29 2020-11-17 Juniper Networks, Inc. Supporting near real time service level agreements
US10897396B2 (en) 2019-03-29 2021-01-19 Juniper Networks, Inc. Supporting concurrency for graph-based high level configuration models
CN112312425B (zh) * 2019-07-31 2022-11-08 杭州九阳小家电有限公司 一种家电设备的上网方法和装置
US11115334B1 (en) * 2020-03-31 2021-09-07 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Optimized network latency using in-band telemetry
US11621904B1 (en) 2020-11-06 2023-04-04 Innovium, Inc. Path telemetry data collection
US11784932B2 (en) 2020-11-06 2023-10-10 Innovium, Inc. Delay-based automatic queue management and tail drop

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070047446A1 (en) * 2005-08-30 2007-03-01 Mitesh Dalal Method and apparatus for updating best path based on real-time congestion feedback
CN102594713A (zh) * 2012-03-29 2012-07-18 杭州华三通信技术有限公司 一种实现显式拥塞通告的方法及设备
US20120250505A1 (en) * 2011-03-30 2012-10-04 Fujitsu Network Communications, Inc. Method and System for Writing to a VLAN Tag

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7239636B2 (en) * 2001-07-23 2007-07-03 Broadcom Corporation Multiple virtual channels for use in network devices
US7555562B2 (en) * 2002-06-27 2009-06-30 Alcatel Lucent Method and apparatus for mirroring traffic over a network
US7613184B2 (en) * 2003-11-07 2009-11-03 Alcatel Lucent Method and apparatus for performing scalable selective backpressure in packet-switched networks using internal tags
US7447222B2 (en) * 2003-11-12 2008-11-04 Hewlett-Packard Development Company, L.P. Automated path tracing through switching mesh
US7623455B2 (en) * 2005-04-02 2009-11-24 Cisco Technology, Inc. Method and apparatus for dynamic load balancing over a network link bundle
US20070153683A1 (en) * 2005-12-30 2007-07-05 Mcalpine Gary L Traffic rate control in a network
US20070268903A1 (en) * 2006-05-22 2007-11-22 Fujitsu Limited System and Method for Assigning Packets to Output Queues
US20110261696A1 (en) * 2010-04-22 2011-10-27 International Business Machines Corporation Network data congestion management probe system
US8976697B2 (en) * 2012-12-17 2015-03-10 Broadcom Corporation Network status mapping
US9596182B2 (en) * 2013-02-12 2017-03-14 Adara Networks, Inc. Controlling non-congestion controlled flows

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070047446A1 (en) * 2005-08-30 2007-03-01 Mitesh Dalal Method and apparatus for updating best path based on real-time congestion feedback
US20120250505A1 (en) * 2011-03-30 2012-10-04 Fujitsu Network Communications, Inc. Method and System for Writing to a VLAN Tag
CN102594713A (zh) * 2012-03-29 2012-07-18 杭州华三通信技术有限公司 一种实现显式拥塞通告的方法及设备

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109379784A (zh) * 2017-01-25 2019-02-22 宏碁股份有限公司 对数据包进行映射的方法及使用所述方法的相关装置
CN109379784B (zh) * 2017-01-25 2021-10-08 宏碁股份有限公司 对数据包进行映射的方法及使用所述方法的相关装置
CN111050353A (zh) * 2018-10-11 2020-04-21 华为技术有限公司 用于无线回传网络的数据传输方法和装置
CN111050353B (zh) * 2018-10-11 2021-12-03 华为技术有限公司 用于无线回传网络的数据传输方法和装置
US11496923B2 (en) 2018-10-11 2022-11-08 Huawei Technologies Co., Ltd. Data transmission method and apparatus used in wireless backhaul network

Also Published As

Publication number Publication date
US8976697B2 (en) 2015-03-10
US20140169189A1 (en) 2014-06-19
DE102013225692A1 (de) 2014-06-18
CN103873377B (zh) 2017-04-12
DE102013225692B4 (de) 2020-02-13
US20160197812A1 (en) 2016-07-07

Similar Documents

Publication Publication Date Title
CN103873377A (zh) 网络状态映射
US11336580B2 (en) Methods, apparatuses and computer program products for transmitting data
US8897130B2 (en) Network traffic management
US7902973B2 (en) Alarm reordering to handle alarm storms in large networks
US9300558B2 (en) Delay measurement system and delay measurement method, as well as delay measurement device and delay measurement program
CN107547393A (zh) 一种计算转发路径的方法及网络设备
Wang et al. Implementation of multipath network virtualization with SDN and NFV
CN105765928B (zh) 用于处理网络分组的方法和网络设备
US9401868B2 (en) Method of traffic engineering for provisioning routing and storage in content-oriented networks
US9479323B2 (en) Communication system, forwarding node, control device, communication control method, and program
CN106453625B (zh) 信息同步方法及高可用性集群系统
CN109639557A (zh) 用于网络通信的方法、装置和系统
US10616106B2 (en) Establishing virtual network routes in a computer network
CN105284150B (zh) 业务分流方法、控制网元、网关路由器及用户面实体
CN103312607A (zh) 一种传输路径选择方法及装置
CN113965508B (zh) 双路径数据传输方法、电子设备和计算机可读存储介质
US10250477B2 (en) Method and controller for announcing bandwidth of cluster system
Ko et al. Timer-based bloom filter aggregation for reducing signaling overhead in distributed mobility management
Kamali et al. AODVv2: performance vs. loop freedom
Wang Rural financial service promotion mechanism based on data center network
Araújo et al. Lagrangian relaxation for maximum service in multicast routing with QoS constraints
Gangqiang et al. A Communication Method of Distributed Tactical Training Simulation System Suitable for Remote Interconnection
KR20190077700A (ko) 분산 클라우드 시스템에서 에지 클라우드에 의한 패킷 라우팅 방법
CN107070792A (zh) 一种基于sdn的路由选择方法
Yang et al. GPCR-D: a topology and position based routing protocol in VANET

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1194548

Country of ref document: HK

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20170315

Address after: Singapore Singapore

Applicant after: Avago Technologies Fiber IP Singapore Pte. Ltd.

Address before: American California

Applicant before: Zyray Wireless Inc.

GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20181022

Address after: Singapore Singapore

Patentee after: Annwa high tech Limited by Share Ltd

Address before: Singapore Singapore

Patentee before: Avago Technologies Fiber IP Singapore Pte. Ltd.

REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1194548

Country of ref document: HK