CN111756635B - 用于网络规划的方法、网络规划设备和计算机可读介质 - Google Patents

用于网络规划的方法、网络规划设备和计算机可读介质 Download PDF

Info

Publication number
CN111756635B
CN111756635B CN201911378902.8A CN201911378902A CN111756635B CN 111756635 B CN111756635 B CN 111756635B CN 201911378902 A CN201911378902 A CN 201911378902A CN 111756635 B CN111756635 B CN 111756635B
Authority
CN
China
Prior art keywords
network
data
potential
plans
plan
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.)
Active
Application number
CN201911378902.8A
Other languages
English (en)
Other versions
CN111756635A (zh
Inventor
C·马加里亚
A·古普塔
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.)
Juniper Networks Inc
Original Assignee
Juniper Networks 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 Juniper Networks Inc filed Critical Juniper Networks Inc
Priority to CN202211294125.0A priority Critical patent/CN115665032A/zh
Publication of CN111756635A publication Critical patent/CN111756635A/zh
Application granted granted Critical
Publication of CN111756635B publication Critical patent/CN111756635B/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/125Shortest path evaluation based on throughput or bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/245Link aggregation, e.g. trunking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/34Source routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/20Hop count for routing purposes, e.g. TTL

Abstract

本发明提供了一种设备,该设备接收与网络相关联的网络数据,网络包括通过链路互连的网络设备,其中网络设备利用分段路由。设备接收与网络相关联的分段路由数据,其中分段路由数据至少包括:与由所述网络设备中的两个或多个网络设备通过网络提供的路径、以及对应的链路相关联的分段列表。该设备合并网络数据和分段路由数据以生成合并数据,并且利用优化模型处理合并数据,以确定特定时段内的潜在网络规划。该设备标识潜在网络规划中将与操作网络相关联的吞吐量最大化的潜在网络规划,并且基于潜在网络规划来执行一个或多个动作。

Description

用于网络规划的方法、网络规划设备和计算机可读介质
背景技术
网络规划和设计是迭代过程,涵盖拓扑设计、网络综合和网络实现。网络规划和设计的目的在于确保新的或现有的网络或服务满足网络订户和/或网络运营方的需求。
发明内容
根据一些实现,方法可以包括:接收与网络相关联的网络数据,其中该网络包括通过链路互连的多个网络设备,并且其中多个网络设备利用分段路由。该方法可以包括:接收与网络相关联的分段路由数据,其中分段路由数据至少包括:与由多个网络设备中的两个或多个的网络设备通过网络提供的路径以及链路中的对应链路相关联的分段列表。该方法可以包括:接收与确定网络的网络规划相关联的约束,其中约束至少包括指示特定时段的约束,特定时段与确定网络的多个潜在网络规划相关联。该方法可以包括:合并网络数据和分段路由数据以生成合并数据,并且利用优化模型处理约束和合并数据,以确定特定时段内的多个潜在网络规划。方法可以包括:标识多个潜在网络规划中的将与操作网络相关联的吞吐量最大化的潜在网络规划,并且基于潜在网络规划执行一个或多个动作。
根据一些实现,设备可以包括一个或多个存储器和一个或多个处理器,该一个或多个处理器被通信地耦合到一个或多个存储器,以接收与网络相关联的网络数据,其中网络包括通过链路互连的多个网络设备,并且其中多个网络设备利用分段路由。一个或多个处理器可以接收与网络相关联的分段路由数据,其中分段路由数据至少包括:与由多个网络设备中的两个或多个的网络设备通过网络提供的路径以及链路中的对应链路相关联的分段列表。一个或多个处理器可以合并网络数据和分段路由数据以生成合并数据,并且可以利用模型处理合并数据,以确定多个潜在网络规划。一个或多个处理器可以标识多个潜在网络规划中将与操作网络相关联的吞吐量最大化的潜在网络规划,并且基于潜在网络规划执行一个或多个动作。
根据一些实现,非瞬态计算机可读介质可以存储指令,该指令可以包括一个或多个指令,该一个或多个指令在由设备的一个或多个处理器执行时可以使一个或多个处理器接收与网络相关联的网络数据,其中网络包括通过链路互连的多个网络设备,并且其中多个网络设备利用分段路由。一个或多个指令可以使一个或多个处理器接收与网络相关联的分段路由数据,其中分段路由数据至少包括以下中的一项或多项:与由多个网络设备中的两个或多个的网络设备通过网络提供的路径、以及链路中的对应链路相关联的分段列表,标识在分段列表中提供的分段,与分段相关联的统计或与分段相关联的转发指令的数据。一个或多个指令可以使一个或多个处理器合并网络数据和分段路由数据以生成合并数据,并且利用优化模型处理合并数据,以确定多个潜在网络规划。一个或多个指令可以使一个或多个处理器标识多个潜在网络规划中将与操作网络相关联最大化的吞吐量的潜在网络规划,并且基于潜在网络规划执行一个或多个动作。
附图说明
图1A至图1F是本文所描述的一种或多种示例实施方式的示意图。
图2是可以本文所描述的系统和/或方法可以被实现在其中的示例环境的示意图。
图3是图2的一个或者多个设备的示例组件的示意图。
图4至图6是用于利用分段路由数据和网络数据来确定优化的网络规划并且实现优化的网络规划的示例过程的流程图。
具体实施方式
示例实施方式的以下具体实施方式参考了附图。相同的附图标记可以在不同的附图中标识相同或相似的元件。
网络规划和设计系统可以设计一种网络,这种网络包括网络设备(例如,路由器、交换机、网关、防火墙等)和被提供在网络设备之间的链路。分段路由,计算机网络的一种形式,是源路由的变型。在分段路由网络中,入口网络设备可以在包含分段列表的分组(例如,流量)前加上报头,这是在网络中的随后的网络设备上执行的指令。这些指令可以包括转发指令,诸如,用以将分组转发给具体目的地或接口的指令。
然而,在分段路由中,当在网络设备之间创建路径时,没有状态或会话信息会被维护。在不具有状态或会话信息的情况下,网络设备不会知道与路径相关联的流量拥挤、流量吞吐量、操作状态等。这导致流量丢失并且导致计算资源(例如,处理资源、内存资源等)、网络资源等在标识丢失的流量、校正不可操作的路径、重新路由丢失的流量等时被浪费。
本文所描述的一些实现提供了一种控制器平台,该控制器平台利用分段路由数据和网络数据来确定优化的网络规划并且实现优化的网络规划。例如,控制器平台可以接收与网络相关联的网络数据,其中网络包括通过链路互连的网络设备,并且其中网络设备利用分段路由。控制器平台可以接收与网络相关联的分段路由数据,其中分段路由数据至少包括:与由网络设备中的两个或多个的网络设备通过网络提供的路径、以及链路中的对应链路相关联的分段列表。控制器平台可以合并网络数据和分段路由数据以生成合并数据,并且可以利用模型处理合并数据,以确定多个潜在网络规划。控制器平台可以标识潜在网络规划中的优化网络的操作(例如,将与操作网络相关联的吞吐量最大化)的潜在网络规划,并且可以基于潜在网络规划执行一个或多个动作。
以这种方式,分段路由信息可以使控制器平台能以减少的时间确定和实现优化的网络规划。这反而节约了在标识次优的网络规划、校正由次优的网络规划引起的低效网络操作、校正由次优的网络规划引起的网络资源的低效利用、标识丢失的流量、校正不可操作的路径、重新路由丢失的流量等时浪费的计算资源(例如,处理资源、内存资源等)、网络资源等。
图1A至图1F是本文所描述的一个或多个示例实现100的示意图。如图1A所示,网络可以与控制器平台相关联。在一些实现中,网络可以包括分组光网络,该分组光网络具有多个网络设备和被提供在多个网络设备之间的多个链路。在一些实现中,网络可以包括分段路由网络,在该分段路由网络中,入口网络设备可以在包含分段列表的分组前加上报头,这是在网络中的随后的网络设备上执行的指令。这些指令可以包括转发指令,诸如,用于将分组转发给具体目的地或接口的指令。
如图1A中进一步所示,并且如附图标记105所示,控制器平台可以接收与网络相关联的网络数据。在一些实现中,网络数据可以包括与网络相关联的拓扑数据、与网络相关联的路径数据等。拓扑数据可以包括标识网络设备的数据(例如,标识网络设备的类型、网络设备的网络标识符、网络设备的位置、与网络设备相关联的硬件和/或软件、与网络设备相邻的其他网络设备、连接至网络设备的链路、与网络设备相关联的端口等的数据)、互连网络设备的链路(例如,标识链路的类型、链路所使用的协议、链路连接至其的网络设备、与网络设备相关联的端口、链路的操作状态等的数据)、网络设备的利用(例如,网络设备的容量、网络设备的吞吐量、网络设备的操作状态等)等。路径数据可以包括标识以下的数据:通过网络设备所提供的网络的路径、通过网络的路径的源(例如,网络设备等中的一个或多个)、通过网络的路径的目的地(例如,网络设备等中的一个或多个)、通过网络的路径的利用(例如,路径的容量、路径的吞吐量等)等。在一些实现中,网络数据可以包括标识网络中的问题(诸如,流量拥挤、不可操作的网络设备、不可操作的链路等)的数据。
控制器平台可以周期性地接收来自网络的网络数据(例如,在以秒、分钟、小时、天等为单位的特定时间间隔),可以连续接收来自网络的网络数据等。例如,控制器平台可以向网络设备提供针对网络数据的请求,并且网络设备可以基于该请求将网络数据提供给控制器平台。
如图1A中进一步所示,并且如附图标记110所示,控制器平台可以接收来自网络设备的分段路由数据。在一些实现中,分段路由数据可以包括标识以下的数据:与由网络设备通过网络提供的路径以及相应的链路相关联的分段列表、在分段列表中提供的分段、与分段相关联的统计、与分段相关联的转发指令等。
控制器平台可以周期性地接收来自网络设备的分段路由数据(例如,在以秒、分钟、小时、天等为单位的特定时间间隔),可以连续接收来自网络设备的分段路由数据等。例如,控制器平台可以将对分段路由数据的请求提供给网络设备,并且网络设备可以基于请求将分段路由数据提供给控制器平台。
如图1A中进一步所示,并且如附图标记115所示,控制器平台可以接收(例如,从客户端设备)针对网络优化的约束。在一些实现中,约束可以包括:指示与确定网络的网络规划相关联的特定时段的约束、指示与由网络设备通过网络提供的路径以及链路相关联的故障阈值的约束、指示网络的流量需求的可能路径的约束、指示流量需求的不可行的路径的约束等。指示故障阈值的约束可以包括与网络规划的流量需求故障相关联的阈值计数(例如,丢弃包括超过阈值计数的流量需求故障的网络规划)。阈值计数可以是基于链路的容量、通过流量需求的网络的可能路径的集合和/或指示是否存在流量需求的某个路径或流量需求的不可行的路径的约束。
虽然图1A示出了具体数量的网络设备、链路等,但是在一些实现中,网络可以包括比图1A中描绘的多(或少)的网络设备、链路等。例如,网络可以包括生成数千、数百万、数十亿等数据点的数百、数千等网络设备和/或链路。以这种方式,控制器平台可以在时段内(例如,当确定网络规划时)处理数千、数百万、数十亿等数据点,并且因此可以提供“大数据”容量。
如图1B所示,并且如附图标记120所示,控制器平台可以将网络数据合并到分段路由数据以生成合并数据。在一些实现中,控制器平台可以将网络数据、分段路由数据和/或合并数据存储在与控制器平台相关联的一个或多个数据结构(例如,数据库、列表、表格等)中。在一些实现中,控制器平台可以利用合并技术来合并网络数据和分段路由数据。控制器平台可以利用合并技术从不同的源收集针对具体变量(例如,由网络设备通过网络提供的路径)的数据(例如,网络数据和分段路由数据)。在一些实现中,合并数据可以包括具体变量的每个类别的唯一记录。因此,控制器平台可以通过利用匹配合并和非匹配数据技术来集成不同的网络数据和分段路由数据。例如,网络数据可以包括以下数据:
网络设备ID 容量 操作状态
1 100% 可操作的
2 10% 可操作的
4 20% 不可操作的
5 50% 可操作的
而且,在该示例中,分段路由数据可以包括以下数据:
网络设备ID 路径 分段数
2 A 2-6-9
4 B 3-4-8
在该示例中,控制器平台可以将网络路由数据和分段路由数据组合以生成合并数据,该合并的分组括以下数据:
Figure GDA0003774766690000061
Figure GDA0003774766690000071
在一些实现中,控制器平台可以从合并数据去除标识与路径和/或分段数没有关联的网络设备的数据。这可以减少与合并数据相关联的数据点的数量。以这种方式,控制器平台可以节约与处理合并数据(例如,如下所述)、存储合并数据等相关联的资源(例如,处理资源、内存资源等)。
如图1C所示,并且如附图标记130所示,控制器平台可以利用优化模型来处理约束和合并数据,以确定特定时段内的潜在网络规划(例如,如由指示与确定网络规划相关联的特定时段的约束所规定的)。控制器平台可以用历史数据(例如,历史网络数据、历史分段路由数据、历史合并数据等)来训练优化模型,以标识提高网络的吞吐量的网络规划。
在一些实现中,控制器平台可以利用历史数据来训练优化模型,以确定改进网络的吞吐量的潜在网络规划。例如,控制器平台可以将历史数据分成训练集、验证集、测试集等。训练集可以被利用来训练优化模型。验证集可以被利用来验证经过训练的优化模型的结果。测试集可以被利用来测试优化模型的操作。
在一些实现,控制器平台可以使用例如无监督训练过程并且基于历史数据来训练优化模型。例如,控制器平台可以执行降维以将历史数据减少至最小特征集,从而减少用以训练优化模型的资源(例如,处理资源、内存资源等),并且可以将分类技术应用于最小特征集。
在一些实现中,控制器平台可以使用逻辑回归分类技术来确定类别结果(例如,历史数据标识提高网络的吞吐量的潜在网络规划)。附加或备选地,控制器平台可以使用朴素贝叶斯分类器技术。在这种情况下,控制器平台可以执行二进制递归划分,以将历史数据分成分区和/或分支,并且使用分区和/或分支来确定结果(例如,历史数据标识提高网络的吞吐量的潜在网络规划)。基于使用递归划分,相对于数据点的手动线性分类和分析,控制器平台可以减少计算资源的利用,从而支持使用数千、数百万或数十亿数据点来训优化模型,与使用较少的数据点相比,这可以产生更准确的模型。
附加或备选地,控制器平台可以使用支持向量机(SVM)分类器技术来生成在训练集的数据点之间的非线性边界。在这种情况下,非线性边界用于将测试数据分类成特定类。
附加或备选地,控制器平台可以使用监督训练过程来训练优化模型,该监督训练过程包括从主题专家接收的到优化模型的输入,相对于无监督训练过程,这可以减少用于训练优化模型的时间量、处理资源量等。在一些实现中,控制器平台可以使用一个或多个其他模型训练技术,诸如,神经网络技术、潜在语义索引技术等。例如,控制器平台可以执行人工神经网络处理技术(例如,使用双层前馈神经网络架构、三层前馈神经网络架构等)以关于历史数据的模式执行模式标识。在这种情况下,使用人工神经网络处理技术可以通过变得对有噪声的、不精确的或不完全的数据更稳健、以及通过使控制器平台能检测对于人类分析家或系统使用不太复杂的技术不可检测到的模式和/或趋势,来改进由控制器平台生成的经过训练的优化模型的准确性。
在一些实现中,如果特定时段很小(例如,以秒或分钟计),则控制器平台可以确定潜在网络规划的第一数量,并且如果特定时段较大(例如,以分钟或小时计),则控制器平台可以确定比潜在网络规划的第一数量大的潜在网络规划的第二数量。因此,可以利用(例如,由控制器平台的用户)特定时段来确定控制器平台的资源使用和/或由控制器平台所生成的潜在网络规划的数量。
在一些实现中,控制器平台可以利用约束来设置合并数据中的变量的值,规定变量的值的最小值,规定变量的值的最大值,改变变量的值,快速确定变量的值是否会产生解决方案(例如,潜在网络规划)等。当确定潜在网络规划时,控制器平台可以利用这些信息。在一些实现中,控制器平台可以基于合并数据标识链路中的不可操作的一个链路和/或与通过网络提供的路径中的一个路径相关联的网络设备,并且可以确定潜在网络规划中将流量重新路由远离链路中的不可操作的链路和/或网络设备的特定网络规划。
在一些实现中,控制器平台可以基于多种因素,诸如,在潜在网络规划中利用的网络设备的数量、在潜在网络规划中利用的链路的数量和长度、所利用的网络设备的利用率、链路的利用率等,将吞吐量分配给潜在网络规划。例如,每个因素都可以与相应的吞吐量相关联(例如,特定类型的网络设备可能比另一种类型的网络设备具有更大的吞吐量),并且控制器平台可以基于潜在网络规划将相应的吞吐量分配给不同的因素。
在一些实现中,控制器平台可以基于多种因素,诸如,在潜在网络规划中利用的网络设备的数量、在潜在网络规划中利用的链路的数量和长度、所利用的网络设备的利用、链路的利用等,将成本指派给潜在网络规划。例如,每个因素可以与相应的成本相关联(例如,链路的成本可能比网络设备多),并且控制器平台可以基于潜在网络规划将相应的成本分配给多个因素。在一些实现中,控制器平台可以确定与潜在网络规划未能满足网络的流量需求相关联的判罚,并且可以将判罚添加到分配给潜在网络规划的成本。
如图1D所示,并且如附图标记130所示,控制器平台可以标识潜在网络规划中将与操作网络相关联的吞吐量最大化(例如,减少网络的资源使用)的潜在网络规划。在一些实现中,控制器平台可以将针对潜在网络规划中的每个潜在网络规划确定的吞吐量和/或成本进行比较,并且可以选择具有最高吞吐量和/或最低成本的潜在网络规划。在一些实现中,控制器平台可以选择具有最低数量的流量需求故障的潜在网络规划,即使潜在网络规划不会提供最高吞吐量和/或最低成本。控制器平台可以选择具有最低数量的流量需求故障、最高吞吐量和最低成本的潜在网络规划。在一些实现中,控制器平台可以将标识潜在网络规划的信息提供给客户端设备,并且可以从客户端设备接收对潜在网络规划的选择。控制器平台可以利用由该选择标识的潜在网络规划。
在一些实现中,控制器平台可以确定潜在网络规划中的一个或多个潜在网络规划不能满足特定约束,并且可以从潜在网络规划中去除潜在网络规划中的该一个或多个潜在网络规划,以生成潜在网络规划的子集。在这些实施方式中,控制器平台可以从潜在网络规划的子集中标识潜在网络规划。
如图1E所示,并且如附图标记135所示,控制器平台可以使标识的潜在网络规划在网络中被实现。在一些实现中,控制器平台可以通过向网络设备中的一个或多个网络设备提供指令而使经标识的网络规划将被实现,该指令指示一个或多个网络设备以及与一个或多个网络设备相关联的链路将用以实现该经标识的潜在网络规划。一个或多个网络设备可以接收指令并且可以基于指令实现经标识的潜在网络规划。例如,控制器设备可以将指示三个网络设备(例如,以及设置在三个网络设备之间的两个链路)将被用于针对流量需求预留带宽(例如,以解决图1A所示的流量拥挤)的指令提供给该三个网络设备。三个网络设备可以接收指令并且可以基于指令而针对流量需求预留带宽。
在一些实现中,控制器平台可以基于使经标识的潜在网络规划将被在网络中被实现,来接收来自网络的附加网络数据和附加分段路由数据,并且可以基于附加网络数据和附加分段路由数据修改经标识的潜在网络规划,以生成经修改的潜在网络规划。例如,如果附加网络数据指示网络的一部分不能管理新的流量需求,则控制器平台可以修改经标识的潜在网络规划,以管理新的流量需求。控制器平台然后可以使经修改的潜在网络规划在网络中被实现,如上面结合图1A至图1E所述的。
如图1F所示,并且如附图标记140所示,控制器平台可以将标识网络的潜在网络规划的信息提供给客户端设备。客户端设备可以接收标识潜在网络规划的信息并且可以提供标识潜在网络规划的信息以经由用户界面进行显示。用户界面可以使客户端设备的用户能查看与潜在网络规划相关联的特征,以查看所选的潜在网络规划的图形表示,选择用于实现的潜在网络规划等。
在一些实现中,控制器平台可以接收网络数据和分段路由数据,并且可以合并网络数据和分段路由数据以生成合并数据。控制器平台可以利用合并数据和优化模型来确定流量问题的解决方案和/或自动解决流量问题,并且可以基于解决方案执行一个或多个动作(例如,自动使优化的网络规划在分段路由网络中实现、将解决流量问题的潜在网络规划提供给客户端设备等)。例如,如果分段路由数据指示分段路由网络中的路径利用特定分段(例如,分段1-6-5)并且网络数据指示路径来自第一网络设备和第十网络设备,则控制器平台可以优化路径(例如,以利用其他特定分段(例如,分段1-6-8)、第二网络设备和第五网络设备),以使路径具有更大的吞吐量。
以这种方式,控制器平台可以利用分段路由数据和网络数据在较短的时间内确定和实现优化的网络规划。这反而节约了在标识次优的网络规划、校正由次优的网络规划引起的低效网络操作、校正由次优的网络规划引起的网络资源的低效利用等时浪费的计算资源(例如,处理资源、内存资源等)、网络资源等。此外,本文所描述的实施方式使用严谨的计算机化过程来执行之前没有执行过的任务。例如,目前还不存在利用分段路由数据和网络数据来确定和实现优化的网络规划的技术。
如上所述,仅仅提供了图1A至图1F作为示例。其他示例可能与关于图1A至图1F描述的不同。
图2是可以实现本文所描述的系统和/或方法的示例环境200的示意图。如图2所示,环境200可以包括客户端设备210、控制器平台220、网络230和网络230的一组网络设备240。环境200的设备可以经由有线连接、无线连接或有线连接和无线连接的组合而互连。
客户端设备210包括能够接收、生成、存储、处理和/或提供诸如本文所描述的信息的信息的一个或者多个设备。例如,客户端设备210可以包括移动电话(例如,智能电话、无线电话等)、膝上型计算机、平板计算机、台式计算机、手持式计算机、游戏设备、可穿戴通信设备(例如,智能手表、智能眼镜、心率监视器、健身追踪器、智能服装、智能珠宝、头戴式显示器等)或类似类型的设备。在一些实现中,客户端设备210可以经由网络230和网络设备240接收来自控制器平台220的信息和/或将信息发送到控制器平台220。在一些实现中,客户端设备210可以经由网络230(例如,通过使用网络设备240作为中介者来路由分组)接收来自其他客户端设备210的网络流量和/或可以将网络流量提供给其他客户端设备210。
控制器平台220包括利用分段路由数据和网络数据来确定优化的网络规划并且实现优化的网络规划的一个或多个设备。在一些实现中,控制器平台220可以被设计成模块化的,使得某些软件组件可以取决于特定需要而被换入(swap in)或者换出(swap out)。因此,控制器平台220可以被容易地和/或快速地被重新配置用于不同的用途。在一些实现中,控制器平台220可以接收来自一个或多个客户端设备210和/或网络设备240的信息并且/或者将信息发送到一个或多个客户端设备210和/或网络设备240。
在一些实现中,如图所示,控制器平台220可以被托管在云计算环境222中。值得注意的是,虽然本文所描述的实现将控制器平台220描述为被托管在云计算环境222中,但是在一些实现中,控制器平台220可以不是基于云的(即,可以实施在云计算环境之外)或可以是部分基于云的。
云计算环境222包括托管控制器平台220的环境。云计算环境222可以提供计算、软件、数据存取、存储等服务,这些服务不需要托管控制器平台220的系统(多个)和/或设备(多个)的物理位置和配置的终端用户知识。如图所示,云计算环境222可以包括一组计算资源224(统称为“计算资源224”和单独称为“计算资源224”)。
计算资源224包括一个或多个个人计算机、工作站计算机、主机设备或其他类型的计算和/或通信设备。在一些实现中,计算资源224可以托管控制器平台220。云资源可以包括在计算资源224中执行的计算实例、被提供在计算资源224中的存储设备、由计算资源224提供的数据传输设备等。在一些实现中,计算资源224可以经由有线连接、无线连接或有线连接和无线连接的组合与其他计算资源224进行通信。
如图2中进一步所示的,计算资源224包括一组云资源,诸如,一个或多个应用(“APP”)224-1、一个或多个虚拟机(“VM”)224-2、虚拟化存储装置(“VS”)224-3、一个或多个管理程序(“HYP”)224-4等。
应用224-1包括一个或多个软件应用,该一个或多个软件应用可以提供给客户端设备210或由客户端设备210访问。应用224-1可以消除在客户端设备210和/或网络设备240上安装和执行软件应用的需求。例如,应用224-1可以包括与控制器平台220相关联的软件和/或能够经由云计算环境222提供的任何其他软件。在一些实现中,一个应用224-1可以经由虚拟机224-2将信息发送到一个或多个其他应用224-1/接收来自一个或多个其他应用224-1的信息。
虚拟机224-2包括执行程序的机器(例如,计算机)的软件实现,如物理机。根据用途和与任何真实的机器的对应等级,虚拟机224-2可以是系统虚拟机或过程虚拟机。系统虚拟机可以提供支持完整的操作系统(“OS”)的执行的完整的系统平台。过程虚拟机可以执行单个程序并且可以支持单个过程。在一些实现中,虚拟机224-2可以代表用户(例如,客户端设备210的用户或控制器平台220的操作者)来执行,并且可以管理云计算环境222的基础设施,诸如,数据管理、同步或长时间的数据传输。
虚拟化存储装置224-3包括一个或者多个存储系统和/或一个或多个设备,该一个或多个设备在计算资源224的存储系统或设备内使用虚拟化技术。在一些实现中,在存储系统的上下文下,虚拟化的类型可以包括块虚拟化和文件虚拟化。块虚拟化可以指逻辑存储来自物理存储的抽象(或者分离),使得存储系统可以在不考虑物理存储或异质结构的情况下被访问。分离可以允许存储系统的管理员在如何管理终端用户的存储方面的灵活性。文件虚拟化可以消除在文件级被访问的数据与物理存储文件的位置之间的依赖关系。这可以支持存储装置使用、服务器整合和/或无干扰文件迁移的执行的优化。
管理程序(hypervisor)224-4可以提供硬件虚拟化技术,该硬件虚拟化技术允许多个操作系统(例如,“客户操作系统”)在诸如计算资源224的主机上同时执行。管理程序224-4可以将虚拟操作平台呈现给客户操作系统,并且可以管理客户操作系统的执行。各种操作系统的多个实例可以共享虚拟化硬件资源。
网络230包括一个或多个有线和/或无线网络。例如,网络230可以包括蜂窝网络(例如,第五代(5G)网络、长期演进(LTE)网络、第三代(3G)网络、码分多址(CDDMA)网络等)、公用陆地移动网络(PLMN)、局域网(LAN)、广域网(WAN)、城域网(MAN)、电话网络(例如,公用交换电话网(PSTN))、专用网络、自组网络、内联网、互联网、基于光纤的网络等、和/或这些或者其他类型的网络的组合。
网络设备240包括能够以本文所描述的方式接收、处理、存储、路由和/或提供流量(例如,分组、其他信息或元数据等)的一个或多个设备。例如,网络设备240可以包括路由器,诸如,标签交换路由器(LSR)、标签边缘路由器(LER)、入口路由器、出口路由器、提供商路由器(例如,提供商边缘路由器、提供商核心路由器等)、虚拟路由器等。附加或备选地,网络设备240可以包括网关、交换机、防火墙、集线器、桥接器、反向代理、服务器(例如,代理服务器、云服务器、数据中心服务器等)、负载平衡器和/或类似的设备。在一些实现中,网络设备240可以是被是实现在外壳(诸如,机架)内的物理设备。在一些实现中,网络设备240可以是由云计算环境的一个或多个计算机设备或数据中心实施的虚拟设备。在一些实现中,一组网络设备240可以是用于路由流量流过网络230的一组数据中心节点。
图2所示的设备和网络的数量和布置作为示例被提供。实际上,除了图2所示的那些之外,可能还会有附加的设备和/或网络、较少的设备和/或网络、不同的设备和/或网络、或者以不同的方式布置的设备和/或网络。此外,图2所示的两个或多个的设备可以被实现在单个设备内,或者图2所示的单个设备可以被实现为多个分布式设备。附加或备选地,环境200的一组设备(例如,一个或多个设备)可以执行被描述为由环境200的另一组设备执行的一个或多个功能。
图3是设备300的示例组件的示意图。设备300可以与客户端设备210、控制器平台220、计算资源224和/或网络设备240相对应。在一些实现中,客户端设备210、控制器平台220、计算资源224和/或网络设备240可以包括一个或多个设备300和/或设备300的一个或多个组件。如图3所示,设备300可以包括总线310、处理器320、存储器330、存储组件340、输入组件350、输出组件360和通信接口370。
总线310包括允许设备300的组件之间进行通信的组件。处理器32被实现在硬件、固件或硬件和软件的组合中。处理器320是中央处理器(CPU)、图形处理单元(GPU)、加速处理单元(APU)、微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、专用集成电路(ASIC)或另一类型的处理组件。在一些实现中,处理器320包括能够被编程以执行功能的一个或多个处理器。存储器330包括随机存取存储器(RAM)、只读存储器(ROM)和/或存储供处理器320使用的信息和/或指令的另一种类型的动态或静态存储设备(例如,闪存、磁存储器和/或光存储器)。
存储组件340存储与设备300的操作和使用相关的信息和/或软件。例如,存储组件340可以包括硬盘(例如,磁盘、光盘、磁光盘和/或固态盘)、压缩光盘(CD)、数字多用盘(DVD)、软盘、墨盒、磁带和/或另一类型的非瞬态计算机可读介质以及相应的驱动。
输入组件350包括允许设备300接收信息的组件,诸如,经由用户输入(例如,触摸屏显示器、键盘、小键盘、鼠标、按钮、开关和/或麦克风)。附加或备选地,输入组件350可以包括用于感测信息的传感器(例如,全球定位系统(GPS)组件、加速计、陀螺仪和/或执行器)。输出组件360包括从设备300提供输出信息的组件(例如,显示器、扬声器和/或一个或多个发光二极管(LED))。
通信接口370包括类似收发器的组件(例如,收发器和/或单独的接收器和发送器),这种类似收发器的组件使设备300能与其他设备进行通信,诸如,经由有线连接、无线连接或有线连接和无线连接的组合。通信接口370可以允许设备300接收来自另一设备的信息和/或将信息提供给另一设备。例如,通信接口370可以包括以太网接口、光接口、同轴接口、红外接口、射频(RF)接口、通用串行总线(USB)接口、Wi-Fi接口、蜂窝网络接口等。
设备300可以执行本文所描述的一个或多个过程。设备300可以基于处理器320执行由诸如存储器330和/或存储组件340等非瞬态计算机可读介质存储的软件指令来执行这些过程。计算机可读介质在本文中被定义为非瞬态存储器设备。存储器设备包括在单个物理存储设备内的存储器空间或扩散到多个物理存储设备的存储器空间。
软件指令可以经由通信接口370从另一计算机可读介质或从另一设备读入存储器330和/或存储组件340中。当被执行时,被存储在存储器330和/或存储组件340中的软件指令可以使处理器320执行本文所描述的一个或多个过程。附加或备选地,硬连线电路系统可以代替软件指令或与软件指令结合以执行本文所描述的一个或多个过程。因此,本文所描述的实施方式并不限于硬件电路系统和软件的任何特定组合。
图3所示的组件的数量和布置作为示例被提供。实际上,除了图3所示的那些组件之外,设备300还可以包括附加组件、较少的组件、不同的组件或以不同的方式布置的组件。附加或备选地,设备300的组件集合(例如,一个或多个组件)可以执行被描述为由设备300的另一组组件执行的一个或多个功能。
图4是用于利用分段路由数据和网络数据来确定优化的网络规划并且实现优化的网络规划的示例过程400的流程图。在一些实现中,图4的一个或多个过程框可以由控制器平台(例如,控制器平台220)执行。在一些实现中,图4的一个或多个过程框可以由另一设备或与控制器平台分开或包括控制器平台的一组设备(诸如,客户端设备(例如,客户端设备210)和/或网络设备(例如,网络设备240))执行。
如图4所示,过程400可以包括:接收与网络相关联的网络数据,其中网络包括通过链路互连的多个网络设备,并且其中多个网络设备利用分段路由(框410)。例如,控制器平台(例如,使用计算资源224、处理器320、存储器330、通信接口370等)可以接收与网络相关联的网络数据,如上面结合图1A至图3所描述的。在一些方面中,网络可以包括通过链路互连的多个网络设备,并且多个网络设备可以利用分段路由。
如图4中进一步所示的,过程400可以包括:接收与网络相关联的分段路由数据,其中分段路由数据至少包括与由多个网络设备中的两个或多个的网络设备通过网络提供的路径、以及链路中的对应链路相关联的分段列表(框420)。例如,控制器平台(例如,使用计算资源224、处理器320、通信接口370等)可以接收与网络相关联的分段路由数据,如上面结合图1A至图3所描述的。在一些方面中,分段路由数据可以至少包括与由多个网络设备中的两个或多个的网络设备通过网络提供的路径和链路中的对应链路相关联的分段列表。
如图4中进一步所示的,过程400可以包括:接收与确定用于网络的网络规划相关联的约束,其中约束至少包括指示特定时段的约束,该特定时段与确定用于网络的多个潜在网络规划相关联的(框430)。例如,控制器平台(例如,使用计算资源224、处理器320、通信接口370等)可以接收与确定用于网络的网络规划相关联的约束,如上面结合图1A至图3所描述的。在一些方面中,约束可以至少包括指示与确定用于网络的多个潜在网络规划相关联的特定时段的约束。
如图4中进一步所示的,过程400可以包括:合并网络数据和分段路由数据以生成合并数据(框440)。例如,控制器平台(例如,使用计算资源224、处理器320、存储器330等)可以合并网络数据和分段路由数据以生成合并数据,如上面结合图1A至图3所描述的。
如图4中进一步所示的,过程400可以包括:利用优化模型处理约束和合并数据,以确定特定时段内的多个潜在网络规划(框450)。例如,控制器平台(例如,使用计算资源224、处理器320、存储组件340等)可以利用优化模型处理约束和合并数据,以确定特定时段内的多个潜在网络规划,如上面结合图1A至图3所描述的。
如图4中进一步所示的,过程400可以包括:标识多个潜在网络规划中将与操作网络相关联的吞吐量最大化的潜在网络规划(框460)。例如,控制器平台(例如,使用计算资源224、处理器320、存储器330等)可以标识多个潜在网络规划中将与操作网络相关联的吞吐量最大化的潜在网络规划,如上面结合图1A至图3所描述的。
如图4中进一步所示的,过程400可以包括:基于潜在网络规划执行一个或多个动作(框470)。例如,控制器平台(例如,使用计算资源224、处理器320、存储器330、存储组件340、通信接口370等)可以基于潜在网络规划执行一个或多个动作,如上面结合图1A至图3所描述的。
过程400可以包括附加实现,诸如,任何单个实施方式或下面描述的和/或结合本文其他部分所描述的一个或多个其他过程描述的实现的任何组合。
在一些实现中,约束可以包括:指示与由多个网络设备通过网络提供的路径和链路相关联的故障阈值的约束、指示链路的容量的约束、指示网络的流量需求的可能路径的约束、指示针对流量需求的没有可能的路径的约束等。在一些实现中,分段路由数据可以包括标识以下项的数据:在分段列表中提供的分段、与分段相关联的统计、与分段相关联的转发指令等。
在一些实现中,当执行一个或多个动作时,控制器平台可以使潜在网络规划通过多个网络设备而在网络中被实现,可以将标识潜在网络规划的信息提供给客户端设备等。在一些实现中,当标识多个潜在网络规划中将与操作网络相关联的吞吐量最大化的潜在网络规划时,控制器平台可以基于网络数据来确定与多个潜在网络规划相关联的多个吞吐量,并且可以基于与多个潜在网络规划相关联的多个吞吐量来标识将与操作网络相关联的吞吐量最大化的潜在网络规划。
在一些实现中,约束可以包括指示与通过网络提供的路径相关联的故障阈值的特定约束。在一些实现中,控制器平台可以使潜在网络规划通过多个网络设备而在网络中被实现,可以基于使潜在网络规划通过多个网络设备而在网络中被实现,接收附加网络数据和附加分段路由数据,可以基于附加网络数据和附加分段路由数据修改潜在网络规划,以生成经修改的潜在网络规划,并且可以使经修改的潜在网络规划通过多个网络设备而在网络中被实现。
虽然图4示出了过程400的示例框,但是在一些实现中,与图4所示的那些相比较,过程400可以包括附加框、较少的框、不同的框或以不同的方式布置的框。附加或备选地,过程400的框中的两个或多个的框可以并行执行。
图5是用于利用分段路由数据和网络数据来确定优化的网络规划并且实现优化的网络规划的示例过程500的流程图。在一些实现中,图5的一个或多个过程框可以由控制器平台(例如,控制器平台220)执行。在一些实现中,图5的一个或多个过程框可以由另一设备或与控制器平台分开或包括控制器平台的一组设备(诸如,客户端设备(例如,客户端设备210)和/或网络设备(例如,网络设备240))执行。
如图5所示,过程500可以包括:接收与网络相关联的网络数据,其中网络包括通过链路互连的多个网络设备,并且其中多个网络设备利用分段路由(框510)。例如,控制器平台(例如,使用计算资源224、处理器320、通信接口370等)可以接收与网络相关联的网络数据,如上面结合图1A至图3所描述的。在一些方面中,网络可以包括通过链路互连的多个网络设备,并且多个网络设备可以利用分段路由。
如图5中进一步所示的,过程500可以包括:接收与网络相关联的分段路由数据,其中分段路由数据至少包括与由多个网络设备中的两个或多个的网络设备通过网络提供的路径以及链路中的对应链路相关联的分段列表(框520)。例如,控制器平台(例如,使用计算资源224、处理器320、通信接口370等)可以接收与网络相关联的分段路由数据,如上面结合图1A至图3所描述的。在一些方面中,分段路由数据可以至少包括与由多个网络设备中的两个或多个的网络设备通过网络提供的路径和链路中的对应链路相关联的分段列表。
如图5中进一步所示的,过程500可以包括:合并网络数据和分段路由数据以生成合并数据(框530)。例如,控制器平台(例如,使用计算资源224、处理器320、存储器330等)可以合并网络数据和分段路由数据以生成合并数据,如上面结合图1A至图3所描述的。
如图5中进一步所示的,过程500可以包括:利用模型处理合并数据,以确定多个潜在网络规划(框540)。例如,控制器平台(例如,使用计算资源224、处理器320、存储组件340等)可以利用模型处理合并数据,以确定多个潜在网络规划,如上面结合图1A至图3所描述的。
如图5中进一步所示的,过程500可以包括:标识多个潜在网络规划中将与操作网络相关联的吞吐量最大化的潜在网络规划(框550)。例如,控制器平台(例如,使用计算资源224、处理器320、存储器330等)可以标识多个潜在网络规划中将与操作网络相关联的吞吐量最大化的潜在网络规划,如上面结合图1A至图3所描述的。
如图5中进一步所示的,过程500可以包括:基于潜在网络规划执行一个或多个动作(框560)。例如,控制器平台(例如,使用计算资源224、处理器320、存储器330、存储组件340、通信接口370等)可以基于潜在网络规划执行一个或多个动作,如上面结合图1A至图3所描述的。
过程500可以包括附加实现,诸如,任何单个实现或下面描述的和/或结合本文其他部分所描述的一个或多个其他过程描述的实现的任何组合。
在一些实现中,网络数据可以包括标识以下项的数据:多个网络设备、与多个网络设备互连的链路、多个网络设备的容量、与多个网络设备互连的链路的容量、通过网络提供的路径、通过网络提供的路径的源、通过网络提供的路径的目的地、通过网络提供的路径的容量等。
在一些实现中,控制器平台可以将标识多个潜在网络规划的信息提供给客户端设备;可以从客户端设备接收指示对潜在网络规划的选择的信息;并且可以基于选择来标识潜在网络规划。在一些实现中,当标识多个潜在网络规划中将与操作网络相关联的吞吐量最大化的潜在网络规划时,控制器平台可以标识多个潜在网络规划中将与操作网络相关联的成本最小化的潜在网络规划。
在一些实现中,当标识多个潜在网络规划中将与操作网络相关联的成本最小化的潜在网络规划时,控制器平台可以基于网络数据确定与多个潜在网络规划相关联的多个成本,并且可以基于与多个潜在网络规划相关联的多个成本来标识将与操作网络相关联的成本最小化的潜在网络规划。
在一些实现中,当利用模型处理合并数据以确定多个潜在网络规划时,控制器平台可以基于合并数据来标识与通过网络提供的路径中的一个路径相关联的流量拥挤,并且可以确定多个潜在网络规划中的减少与路径中的该一个路径相关联的流量拥挤的特定网络规划。
在一些实现中,当利用模型处理合并数据以确定多个潜在网络规划时,控制器平台可以基于合并数据来标识链路中的与通过网络提供的路径中的一个路径相关联的不可操作的链路,并且可以确定多个潜在网络规划中将流量重新路由远离链路中的不可操作的链路的特定网络规划。
虽然图5示出了过程500的示例框,但是在一些实现中,与图5所示的那些相比较,过程500可以包括附加框、较少的框、不同的框或以不同的方式布置的框。附加或备选地,过程500的框中的两个或多个的框可以并行执行。
图6是用于利用分段路由数据和网络数据来确定优化的网络规划并且实现优化的网络规划的示例过程600的流程图。在一些实现中,图6的一个或多个过程框可以由控制器平台(例如,控制器平台220)执行。在一些实现中,图6的一个或多个过程框可以由另一设备或与控制器平台分开或包括控制器平台的一组设备(诸如,客户端设备(例如,客户端设备210)和/或网络设备(例如,网络设备240))执行。
如图6所示,过程600可以包括:接收与网络相关联的网络数据,其中网络包括通过链路互连的多个网络设备,并且其中多个网络设备利用分段路由(框610)。例如,控制器平台(例如,使用计算资源224、处理器320、存储器330、通信接口370等)可以接收与网络相关联的网络数据,如上面结合图1A至图3所描述的。在一些方面中,网络可以包括通过链路互连的多个网络设备,并且多个网络设备可以利用分段路由。
如图6中进一步所示的,过程600可以包括:接收与网络相关联的分段路由数据,其中分段路由数据至少包括以下中的一项或多项:与由多个网络设备中的两个或多个的网络设备通过网络提供的路径、以及链路中的对应链路相关联的分段列表、标识在分段列表中提供的分段、与分段相关联的统计或与分段相关联的转发指令的数据(框620)。例如,控制器平台(例如,使用计算资源224、处理器320、通信接口370等)可以接收与网络相关联的分段路由数据,如上面结合图1A至图3所描述的。在一些方面中,分段路由数据可以至少包括以下中的一项或多项:与由多个网络设备中的两个或多个的网络设备通过网络提供的路径和链路中的对应链路相关联的分段列表、标识在分段列表中提供的分段、与分段相关联的统计或与分段相关联的转发指令的数据。
如图6中进一步所示的,过程600可以包括:合并网络数据和分段路由数据以生成合并数据(框630)。例如,控制器平台(例如,使用计算资源224、处理器320、存储器330等)可以合并网络数据和分段路由数据以生成合并数据,如上面结合图1A至图3所描述的。
如图6中进一步所示的,过程600可以包括:利用优化模型处理合并数据,以确定多个潜在网络规划(框640)。例如,控制器平台(例如,使用计算资源224、处理器320、存储组件340等)可以利用优化模型处理合并数据,以确定多个潜在网络规划,如上面结合图1A至图3所描述的。
如图6中进一步所示的,过程600可以包括:标识多个潜在网络规划中将与操作网络相关联的吞吐量最大化的潜在网络规划(框650)。例如,控制器平台(例如,使用计算资源224、处理器320、存储器330等)可以标识多个潜在网络规划中将与操作网络相关联的吞吐量最大化的潜在网络规划,如上面结合图1A至图3所描述的。
如图6中进一步所示的,过程600可以包括:基于潜在网络规划执行一个或多个动作(框660)。例如,控制器平台(例如,使用计算资源224、处理器320、存储器330、存储组件340、通信接口370等)可以基于潜在网络规划执行一个或多个动作,如上面结合图1A至图3所描述的。
过程600可以包括附加实施方式,诸如,任何单个实现或下面描述的和/或结合本文其他部分所描述的一个或多个其他过程描述的实现的任何组合。
在一些实现中,当利用优化模型处理合并数据以确定多个潜在网络规划时,控制器平台可以基于合并数据来标识多个网络设备中的与通过网络提供的路径中的一个路径相关联的不可操作的网络设备,并且可以确定多个潜在网络规划中将流量重新路由远离多个网络设备中的不可操作的网络设备的特定网络规划。
在一些实现中,当执行一个或多个动作时,控制器平台可以使潜在网络规划通过多个网络设备而在网络中被实现,可以将标识潜在网络规划的信息提供给客户端设备等。
在一些实现中,当标识多个潜在网络规划中将与操作网络相关联的吞吐量最大化的潜在网络规划时,控制器平台可以基于网络数据确定与多个潜在网络规划相关联的多个吞吐量,并且可以基于与多个潜在网络规划相关联的多个吞吐量来标识将与操作网络相关联的吞吐量最大化的潜在网络规划。
在一些实现中,控制器平台可以使潜在网络规划通过多个网络设备而在网络中被实现,可以基于使潜在网络规划通过多个网络设备而在网络中被实现,接收附加网络数据和附加分段路由数据,可以基于附加网络数据和附加分段路由数据修改潜在的网络规划,以生成经修改的潜在网络规划,并且可以使经修改的潜在网络规划通过多个网络设备而在网络中被实现。
在一些实现中,当利用优化模型处理合并数据以确定多个潜在网络规划时,控制器平台可以标识与通过网络提供的路径中的一个路径相关联的流量拥挤,并且可以确定多个潜在网络规划中的减少与路径之一相关联的流量拥挤的特定网络规划。
虽然图6示出了过程600的示例框,但是在一些实现中,与图6所示的那些相比较,过程600可以包括附加框、较少的框、不同的框或以不同的方式布置的框。附加或备选地,过程600的框中的两个或多个的框可以并行执行。
前面的公开内容提供了图示和描述,但是并不旨在穷举或使实现限于所公开的精确形式。修改和变化可以根据上面的公开内容进行,或可以从实现的实践中获得。
如本文所使用的,术语“组件”旨在被广泛解释为硬件、固件或硬件和软件的组合。
如本文所使用的,满足阈值根据上下文可以指值大于阈值、多于阈值、高于阈值、大于或等于阈值、小于阈值、少于阈值、低于阈值、小于或等于阈值、等于阈值等。
在本文中和/或在附图中已经描述和示出了某些用户界面。用户界面可以包括图形用户界面、非图形用户界面、基于文本的用户界面等。用户界面可以提供将要显示的信息。在一些实现中,用户可以与信息交互,诸如,通过经由设备的输入组件提供输入,该设备提供要显示的用户界面。在一些实现中,用户界面可以由设备和/或用户配置(例如,用户可以改变用户界面的大小、经由用户界面提供的信息、经由用户界面提供的信息的位置等)。附加或备选地,基于其上显示用户界面的设备的类型的具体配置和/或基于与其上显示用户界面的设备相关联的能力和/或规范的一组配置,用户界面可以被预先配置为标准配置、规范配置。
明显的是,本文所描述的系统和/或方法可以被实现在不同形式的硬件、固件或硬件和软件的组合中。用于实现这些系统和/或方法的实际专用控制硬件或软件代码并不限于这实现。因此,本文在没有参考具体软件代码的情况下描述了系统和/或方法的操作和行为——应当理解,软件和硬件可以被设计为基于本文中的描述来实现系统和/或方法。
尽管在权利要求书中记载和/或在说明书中公开了特征的特定组合,但是这些组合并不旨在限制各种实施方式的公开内容。实际上,这些特征中的许多特征可以没有在权利要求中具体记载和/或没有在说明书中具体公开的方式组合。虽然下面列出的每个从属权利要求都可以只直接取决于一个权利要求,但是各种实施方式的公开内容包括与权利要求组中的每个其他权利要求结合的每个从属权利要求。
不应当将本文所使用的元素、动作或指令解释为至关重要的或是必需的,除非明确地这样描述。同样,如本文所使用的,冠词“一”和“一个”旨在包括一个或多个项,并且可以与“一个或多个”交替使用。此外,如本文所使用的,术语“组”旨在包括一个或多个项(例如,相关项、无关项、相关项和无关项的组合等),并且可以与“一个或多个”交替使用。在只指一个项目的情况下,使用措辞“只有一个”或类似的语言。同样,如本文所使用的,术语“具有(has)”、“具有(have)”、“具有(having)”等旨在成为开放式术语。此外,措辞“基于”旨在意谓“至少部分地基于”,除非另有明确说明。

Claims (22)

1.一种用于网络规划的方法,包括:
通过设备接收与网络相关联的网络数据,所述网络数据至少包括以下一项:拓扑数据、路径数据,
其中所述网络包括由链路互连的多个网络设备,以及
其中所述多个网络设备利用分段路由;
通过所述设备接收与所述网络相关联的分段路由数据,其中所述分段路由数据至少包括与由所述多个网络设备中的两个或更多个网络设备通过所述网络设备提供的路径以及所述链路中的对应链路相关联的分段列表;
通过所述设备合并所述网络数据和所述分段路由数据以生成合并数据;
通过所述设备处理所述合并数据,以确定一个或多个潜在网络规划;
通过所述设备标识所述一个或多个潜在网络规划中的将与操作所述网络相关联的吞吐量最大化的潜在网络规划;以及
通过所述设备,基于将与操作所述网络相关联的吞吐量最大化的潜在网络规划来执行一个或多个动作。
2.根据权利要求1所述的方法,还包括:
接收与确定用于所述网络的网络规划相关联的一个或多个约束,
其中处理所述合并数据以确定所述一个或多个潜在网络规划包括:处理所述一个或多个约束和所述合并数据以确定所述一个或多个潜在网络规划。
3.根据权利要求2所述的方法,其中所述一个或多个约束包括以下一项或多项:
指示特定时段的约束,所述特定时段与确定用于所述网络的多个潜在网络规划相关联,
指示故障阈值的约束,所述故障阈值与由所述多个网络设备通过所述网络提供的路径以及所述链路相关联,
指示所述链路的容量的约束,
指示针对所述网络的流量需求的可能路径的约束,或者
指示针对所述流量需求没有可能路径的约束。
4.根据权利要求1所述的方法,其中所述分段路由数据还包括标识以下一项或多项的数据:
在所述分段列表中提供的所述分段,
与所述分段相关联的统计,或者
与所述分段相关联的转发指令。
5.根据权利要求1所述的方法,其中处理所述合并数据以确定所述一个或多个潜在网络规划包括:利用优化模型来处理所述合并数据,以在特定时段内确定所述一个或多个潜在网络规划。
6.根据权利要求1所述的方法,其中标识所述一个或多个潜在网络规划中的所述将与操作所述网络相关联的吞吐量最大化的潜在网络规划,还将与操作所述网络相关联的成本最小化。
7.根据权利要求1所述的方法,其中标识所述一个或多个潜在网络规划中的所述将与操作所述网络相关联的吞吐量最大化的潜在网络规划,包括:
基于所述合并数据,标识与通过所述网络提供的路径相关联的流量拥塞;以及
确定所述一个或多个潜在网络规划中的降低与所述路径相关联的所述流量拥塞的特定网络规划。
8.根据权利要求1所述的方法,还包括:
接收与确定用于所述网络的网络规划相关联的一个或多个约束,
其中所述约束至少包括指示特定时段的约束,所述特定时段与确定用于所述网络的多个潜在网络规划相关联;
其中处理所述合并数据以确定所述一个或多个潜在网络规划包括:处理所述一个或多个约束和所述合并数据以确定所述一个或多个潜在网络规划。
9.根据权利要求1所述的方法,还包括:
接收与确定用于所述网络的网络规划相关联的一个或多个约束,
其中所述约束至少包括指示特定时段的约束,所述时段与确定用于所述网络的多个潜在网络规划相关联;
其中处理所述合并数据以确定所述一个或多个潜在网络规划包括:利用优化模型处理所述一个或多个约束和所述合并数据,以在所述特定时段内确定所述一个或多个潜在网络规划。
10.一种网络规划设备,包括:
一个或多个存储器;以及
一个或多个处理器,所述一个或多个处理器被通信地耦合到所述一个或多个存储器,用以:
接收与网络相关联的网络数据,所述网络数据至少包括以下一项:拓扑数据、路径数据,
其中所述网络包括由链路互连的多个网络设备,以及
其中所述多个网络设备利用分段路由;
接收与所述网络相关联的分段路由数据,其中所述分段路由数据至少包括与由所述多个网络设备中的两个或更多个网络设备通过所述网络设备提供的路径以及所述链路中的对应链路相关联的分段列表;
合并所述网络数据和所述分段路由数据以生成合并数据;
处理所述合并数据,以确定一个或多个潜在网络规划;
标识所述一个或多个潜在网络规划中的将与操作所述网络相关联的吞吐量最大化的潜在网络规划;以及
基于将与操作所述网络相关联的吞吐量最大化的潜在网络规划,执行一个或多个动作。
11.根据权利要求10所述的网络规划设备,其中所述一个或多个处理器,在执行所述一个或多个动作时,将:
使所述将与操作所述网络相关联的吞吐量最大化的潜在网络规划由所述多个网络设备在所述网络中实现;或
向客户端设备提供标识所述将与操作所述网络相关联的吞吐量最大化的潜在网络规划的信息。
12.根据权利要求10所述的网络规划设备,当处理所述合并数据以确定所述一个或多个潜在网络规划时,所述一个或多个处理器将:
利用优化模型处理所述合并数据,以确定所述一个或多个潜在网络规划。
13.根据权利要求10所述的网络规划设备,其中所述一个或多个处理器在处理所述合并数据以确定所述一个或多个潜在网络规划时,将:
在特定时段内处理所述合并数据,以确定所述一个或多个潜在网络规划。
14.根据权利要求10所述的网络规划设备,其中所述一个或多个处理器还将:
接收与确定用于所述网络的网络规划相关联的一个或多个约束,以及
其中所述一个或多个处理器,为了处理所述合并数据以确定所述一个或多个潜在网络规划,将:
处理所述一个或多个约束和所述合并数据以确定所述一个或多个潜在网络规划。
15.根据权利要求14所述的网络规划设备,其中所述一个或多个约束包括以下一项或多项:
指示特定时段的约束,所述特定时段与确定用于所述网络的一个或多个潜在网络规划相关联,
指示故障阈值的约束,所述故障阈值与由所述多个网络设备通过所述网络提供的路径以及所述链路相关联,
指示所述链路的容量的约束,
指示针对所述网络的流量需求的可能路径的约束,或者
指示针对所述流量需求没有可能路径的约束。
16.根据权利要求10所述的网络规划设备,其中所述一个或多个处理器,在处理所述合并数据以确定所述一个或多个潜在网络规划时,将:
基于所述合并数据来标识所述多个网络设备中的与通过所述网络提供的路径相关联的不可操作网络设备;以及
确定所述一个或多个潜在网络规划中将流量重新路由远离所述多个网络设备中的所述不可操作网络设备的特定网络规划。
17.一种非瞬态计算机可读介质,所述非瞬态计算机可读介质存储指令,所述指令包括:
一个或多个指令,所述一个或多个指令在由一个或多个处理器执行时使所述一个或多个处理器:
接收与网络相关联的网络数据,所述网络数据至少包括以下一项:拓扑数据、路径数据,
其中所述网络包括由链路互连的多个网络设备,以及
其中所述多个网络设备利用分段路由;
接收与所述网络相关联的分段路由数据,其中所述分段路由数据至少包括与由所述多个网络设备中的两个或更多个网络设备通过所述网络设备提供的路径以及所述链路中的对应链路相关联的分段列表;
合并所述网络数据和所述分段路由数据以生成合并数据;
处理所述合并数据,以确定一个或多个潜在网络规划;
标识所述一个或多个潜在网络规划中将与操作所述网络相关联的吞吐量最大化的潜在网络规划;以及
基于将与操作所述网络相关联的吞吐量最大化的潜在网络规划来执行一个或多个动作。
18.根据权利要求17所述的非瞬态计算机可读介质,其中所述分段路由数据还包括标识以下一项或多项的数据:
在分段列表中提供的所述分段,
与所述分段相关联的统计,或者
与所述分段相关联的转发指令。
19.根据权利要求17所述的非瞬态计算机可读介质,其中使所述一个或多个处理器标识所述一个或多个潜在网络规划中的所述将与操作所述网络相关联的吞吐量最大化的潜在网络规划的所述一个或多个指令,使所述一个或多个处理器:
基于所述网络数据,确定与所述一个或多个潜在网络规划相关联的多个吞吐量;以及
基于与所述一个或多个潜在网络规划相关联的所述多个吞吐量,标识所述将与操作所述网络相关联的吞吐量最大化的潜在网络规划。
20.根据权利要求17所述的非瞬态计算机可读介质,其中使所述一个或多个处理器标识所述一个或多个潜在网络规划中的所述将与操作所述网络相关联的吞吐量最大化的潜在网络规划的所述一个或者多个指令使所述一个或多个处理器:
基于所述合并数据,标识所述链路中的与通过所述网络提供的路径相关联的不可操作链路;以及
确定所述一个或多个潜在网络规划中的将流量重新路由远离所述链路中的所述不可操作链路的特定网络规划。
21.根据权利要求17所述的非瞬态计算机可读介质,其中使所述一个或多个处理器标识所述一个或多个潜在网络规划中的所述将与操作所述网络相关联的吞吐量最大化的潜在网络规划的所述一个或多个指令,使所述一个或多个处理器:
接收与确定用于所述网络的网络规划相关联的一个或多个约束,以及
通过处理所述一个或多个约束和所述合并数据来处理所述合并数据,以确定所述一个或多个潜在网络规划。
22.根据权利要求21所述的非瞬态计算机可读介质,其中所述一个或多个约束包括以下一项或多项:
指示特定时段的约束,所述特定时段与确定用于所述网络的多个潜在网络规划相关联,
指示故障阈值的约束,所述故障阈值与由所述多个网络设备通过所述网络提供的路径以及所述链路相关联,
指示所述链路的容量的约束,
指示针对所述网络的流量需求的可能路径的约束,或者
指示针对所述流量需求没有可能路径的约束。
CN201911378902.8A 2019-03-29 2019-12-27 用于网络规划的方法、网络规划设备和计算机可读介质 Active CN111756635B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211294125.0A CN115665032A (zh) 2019-03-29 2019-12-27 利用分段路由数据和网络数据确定和实现优化网络规划

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/369,961 US10924383B1 (en) 2019-03-29 2019-03-29 Utilizing segment routing data and network data to determine optimized network plans and to implement an optimized network plan
US16/369,961 2019-03-29

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202211294125.0A Division CN115665032A (zh) 2019-03-29 2019-12-27 利用分段路由数据和网络数据确定和实现优化网络规划

Publications (2)

Publication Number Publication Date
CN111756635A CN111756635A (zh) 2020-10-09
CN111756635B true CN111756635B (zh) 2022-12-09

Family

ID=68808058

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202211294125.0A Pending CN115665032A (zh) 2019-03-29 2019-12-27 利用分段路由数据和网络数据确定和实现优化网络规划
CN201911378902.8A Active CN111756635B (zh) 2019-03-29 2019-12-27 用于网络规划的方法、网络规划设备和计算机可读介质

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202211294125.0A Pending CN115665032A (zh) 2019-03-29 2019-12-27 利用分段路由数据和网络数据确定和实现优化网络规划

Country Status (3)

Country Link
US (2) US10924383B1 (zh)
EP (2) EP4149080A1 (zh)
CN (2) CN115665032A (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112804145B (zh) * 2020-12-31 2022-06-21 锐捷网络股份有限公司 基于分段标识列表的流量统计方法及装置
CN116938800A (zh) * 2022-04-08 2023-10-24 华为技术有限公司 一种传输路径确定方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103688491A (zh) * 2013-09-30 2014-03-26 华为技术有限公司 一种网络规划的方法及设备
CN105515805A (zh) * 2014-09-24 2016-04-20 中兴通讯股份有限公司 一种网络规划的方法及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7505413B2 (en) 2004-09-09 2009-03-17 Cariden Technologies, Inc. Methods and systems to perform traffic engineering in a metric-routed network
US9071541B2 (en) 2012-04-25 2015-06-30 Juniper Networks, Inc. Path weighted equal-cost multipath
GB2527273B (en) * 2014-04-11 2016-08-03 Entuity Ltd Executing a loop computer program to identify a path in a network
US9369387B2 (en) * 2013-10-24 2016-06-14 Cisco Technology, Inc. Segment routing based wide area network orchestration in a network environment
US10153940B2 (en) * 2014-09-16 2018-12-11 CloudGenix, Inc. Methods and systems for detection of asymmetric network data traffic and associated network devices
CN107432019B (zh) * 2015-01-12 2020-04-28 华为技术有限公司 第一和第二网络节点以及其中的方法
WO2016157194A2 (en) * 2015-04-02 2016-10-06 Sedonasys Systems Ltd Systems and methods for managing multi-layer communication networks
US9722912B2 (en) 2015-07-09 2017-08-01 Google Inc. Network stochastic cross-layer optimization for meeting traffic flow availability target at minimum cost
US20170171066A1 (en) * 2015-12-09 2017-06-15 Alcatel-Lucent Usa, Inc. Optimizing restoration with segment routing
WO2017174111A1 (en) * 2016-04-04 2017-10-12 Nec Europe Ltd. Method for providing operating information for a network
US10212088B2 (en) * 2016-11-07 2019-02-19 Cisco Technology, Inc. Tactical traffic engineering based on segment routing policies
US10454828B2 (en) * 2016-12-21 2019-10-22 Cisco Technology, Inc. Machine learning-derived entropy path graph from in-situ OAM (iOAM) data
US10462045B1 (en) * 2017-02-13 2019-10-29 Cisco Technology, Inc. Topology independent fast reroute for node and SRLG local protection
US11038775B2 (en) * 2018-08-10 2021-06-15 Cisco Technology, Inc. Machine learning-based client selection and testing in a network assurance system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103688491A (zh) * 2013-09-30 2014-03-26 华为技术有限公司 一种网络规划的方法及设备
CN105515805A (zh) * 2014-09-24 2016-04-20 中兴通讯股份有限公司 一种网络规划的方法及装置

Also Published As

Publication number Publication date
US10924383B1 (en) 2021-02-16
CN111756635A (zh) 2020-10-09
US11411854B2 (en) 2022-08-09
EP3716544A1 (en) 2020-09-30
EP4149080A1 (en) 2023-03-15
EP3716544B1 (en) 2022-11-09
US20210135976A1 (en) 2021-05-06
CN115665032A (zh) 2023-01-31

Similar Documents

Publication Publication Date Title
US10797938B2 (en) Automatic monitoring, correlation, and resolution of network alarm conditions
CN110958169B (zh) 根据需求生成灵活、可编程且可扩展的网络隧道
CN111756635B (zh) 用于网络规划的方法、网络规划设备和计算机可读介质
US20210144067A1 (en) Utilizing constraints to determine optimized network plans and to implement an optimized network plan
US20210194797A1 (en) Controlling paths in a network via a centralized controller or network devices
US20230030165A1 (en) Utilizing egress peer engineering to determine optimized traffic plans and to implement an optimized traffic plan
US11695631B1 (en) Generating candidate links and candidate paths before selecting links for an optimized optical network plan
CN110661642B (zh) 确定和实现用于网络中的目的地的出口对等工程和/或入口对等工程
CN114697256B (zh) 基于集中式控制器的动态网络带宽分配与管理
US11290348B1 (en) Interactive user interfaces for displaying features of an optimized network plan
EP3709579A1 (en) Utilizing constraint optimization for egress peer engineering to determine optimized traffic plans and to implement an optimized traffic plan
US20230094964A1 (en) Dynamic management of locations of modules of a platform hosted by a distributed system
US10474955B1 (en) Network device management
US11963085B2 (en) Systems and methods for determining routing data based on explicit congestion notifications and active queue management enabled network devices
EP4184880A1 (en) Cloud network failure auto-correlator

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant