CN102203766A - 共享接入电缆网络中的绑定信道上的qos - Google Patents
共享接入电缆网络中的绑定信道上的qos Download PDFInfo
- Publication number
- CN102203766A CN102203766A CN200980144067XA CN200980144067A CN102203766A CN 102203766 A CN102203766 A CN 102203766A CN 200980144067X A CN200980144067X A CN 200980144067XA CN 200980144067 A CN200980144067 A CN 200980144067A CN 102203766 A CN102203766 A CN 102203766A
- Authority
- CN
- China
- Prior art keywords
- channel
- flow
- group
- channel group
- value
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/41—Flow control; Congestion control by acting on aggregated flows or links
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2801—Broadband local area networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/22—Traffic shaping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/60—Queue scheduling implementing hierarchical scheduling
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
公开了用于管理在共享接入电缆网络上的多个通信信道上的传送的流量流的各种技术。根据各个实施例,电缆网络的一个或多个设备(例如电缆调制解调器终端系统(CMTS))可操作用于实现流量流管理技术的至少一部分。在至少一个实施例中,在此公开的流量流管理技术的一个或多个方面可以用于跨越DOCSIS绑定群组的多个不同信道对流量流执行实时整形。在一些实施例中,各种不同的流量整形和/或流量调度技术可以(例如在与DOCSIS 3.0兼容的电缆网络中)被采用来减少和/或减轻例如由于不能将流量调度器表示为基于树的层次结构而引起的问题。还公开了用于实现共享接入网络(例如混合光纤/同轴(HFC)电缆网络)上的服务质量(QoS)的其它方面。
Description
优先权要求
本申请要求申请日为2009年3月13日、发明人为Pai等、发明名称为“QOS ON BONDED CHANNELS OF A SHARED ACCESS CABLE NETWORK”(共享接入电缆网络的绑定信道上的QOS)的美国专利申请第12/404,219号的优先权,该申请因所有用途被通过引用全部结合于此。
本申请要求申请日为2009年3月13日、发明人为Pai等、发明名称为“TRAFFIC FLOW SCHEDULING TECHNIQUES IMPLEMENTED ON BONDED CHANNELS OF A SHARED ACCESS CABLE NETWORK”(共享接入电缆网络的绑定信道上所实现的流量流调度技术)的美国专利申请第12/404,224号的优先权,该申请因所有用途被通过引用全部结合于此。
本申请要求申请日为2008年9月5日、发明人为Pai等、发明名称为“QOS AND SCHEDULING TECHNIQUES FOR BONDED CHANNELS IN CABLE NETWORKS”(用于电缆网络中的绑定信道的QOS和调度技术)的美国专利申请第12/404,224号的优先权,该申请因所有用途被通过引用全部结合于此。
技术领域
本公开一般地涉及共享接入网络中的通信,更具体而言,涉及电缆网络(cable network)中的通信。
背景技术
在共享接入网络中,一个或多个共享接入通信信道被用来在网络集线器和多个网络节点之间传输信息。一种共享接入网络是电缆网络。在电缆网络中,多个电缆调制解调器(“CM”)可以经由一个或多个共享接入信道来与和电缆网络的头端(head end)相关联的一个或多个网络组件进行通信。电缆网络的不同实施例可以根据一个或多个电缆上数据服务接口规范(“DOCSIS”)标准来配置,所述规范诸如是例如可从CableLabs.com(哥伦比亚路易斯维尔的有线电视实验室)获得的电缆上数据服务接口规范CM-SP-MULPIv3.0-I02-061222(在此称为“DOCSIS 3.0”),该规范因所有用途被通过引用全部结合于此。
在由Pawel等在2008年7月2日提交的名称为“MAP MESSAGE EXPEDIENCY MONITORING AND AUTOMATIC DELAY ADJUSTMENTS IN M-CMTS”(M-CMTS中的映射消息权宜监视和自动显示管理)的美国专利申请第12/167,168号中记载了与电缆网络技术的各个方面有关的另外的细节,该申请因所有用途被通过引用全部结合于此。
RF技术中的最新进步已经使得电缆调制解调器能够在多个RF信道上接收和发送数据。因此,新一代电缆调制解调器可以以高达200Mbps的速率接收数据。DOCSIS 3.0以“绑定群组”(Bonding Group)的概念制定了多信道数据传输的标准。用于电缆调制解调器(在此称为CM)的单个数据流可以在单个绑定群组(在此称为BG)上发送,单个BG跨越多个RF信道。同时,单个RF信道可被多个绑定群组共享。绑定群组和/或RF信道这样的关联使得带有服务质量保证的分组调度非常复杂。
附图说明
参考构成说明书的一部分并且通过图解示出具体实施例的附图,附图中:
图1图示出网络的具体示例实施例。
图2图示出电缆调制解调器终端系统的具体示例实施例。
图3图示出电缆调制解调器终端系统的具体示例实施例。
图4图示出电缆网络的一部分的框图的具体示例实施例。
图5图示出电缆网络的一部分的配置图的具体示例实施例。
图6图示出电缆调制解调器终端系统的一部分的具体示例实施例。
图7图示出线路卡的具体示例实施例。
图8A图示出电缆网络800的一部分的具体示例实施例。
图8B图示出电缆网络850的一部分的具体示例实施例。
图9图示出流量整形(Traffic Shaping)分析过程的具体示例实施例。
图10图示出流量整形调节过程的另一具体示例实施例。
图11图示出流量整形分析过程的具体示例实施例。
图12图示出流量整形调节过程的另一具体示例实施例。
图13A图示出电缆网络的一部分的配置的具体示例实施例。
图13B至图13H分别介绍可用于实现在此所描述的(一种或多种)流量整形技术的一个或多个方面的各种类型的数据和/或数据结构。
图14图示出电缆网络的一部分的配置的具体示例实施例。
图15图示出电缆调制解调器终端系统的一部分的具体示例实施例。
图16A图示出流量整形过程的具体示例实施例。
图16B图示出队列流(Queue Flow)控制过程的具体示例实施例。
具体实施方式
概览
在此描述或参考的各个方面针对用于管理流量流(traffic flow)以用于在共享接入电缆网络上的多个通信信道上的传送的不同方法、系统和计算机程序产品。根据各个实施例,电缆网络的一个或多个设备(诸如,例如电缆调制解调器终端系统(CMTS))可以可操作用于实现至少一部分在此所描述的流量流管理技术中,诸如例如以下步骤的一个或多个:接收第一分组,该第一分组与第一组特征相关联,该第一组特征包括第一服务流标识符,该第一服务流标识符表示与该第一分组相关联的第一服务流,该第一分组与第一分组大小值相关联,该第一分组大小值表示该第一分组的大小或该第一分组的第一部分的大小;使用该第一组特征中的至少一部分特征来识别与该第一服务流相关联的第一信道群组,该第一信道群组包括多个通信信道,所述多个通信信道已被分配用于在传送与该第一服务流相关联的数据流量中使用;和/或管理与该第一信道群组相关联的流量流。在至少一个实施例中,管理与该第一信道群组相关联的流量流例如可以包括:确定第一分组大小值数据;使用第一组选择标准来选择该第一信道群组中的第一选定信道;和/或使用该第一分组大小值数据中的至少一部分数据来更新第一选定信道流量利用值,该第一选定信道流量利用值表示被分配用于在第一时间间隔期间在该第一选定信道上的传送的总流量的量。
在至少一个实施例中,该第一选定信道与第一信道带宽容量值相关联,该第一信道带宽容量值表示该第一选定信道可操作用于在给定时间段T中传送的流量的最大数量,该第一信道群组中的通信信道中的每个通信信道与相应的信道流量利用值相关联,其中特定通信信道的信道流量利用值表示被分配用于在该特定信道上的传送的第一信道群组流量的量,在此所描述的各种流量流管理技术可以包括例如以下步骤的一个或多个:识别第一组信道群组,其中该第一组信道群组中的每个信道群组包括该第一选定信道;针对该第一选定信道来确定第一信道流量Δ值,该第一信道流量Δ值表示该第一信道带宽容量值与该第一选定信道流量利用值之间的差;使用该第一信道群组Δ值来更新第一信道群组流量利用值,该第一信道群组流量利用值表示被分配用于该第一选定信道上的传送的第一信道群组流量的量,其中该第一信道群组流量包括与该第一信道群组的通信信道相关联的流量;和/或使用该第一信道群组流量利用值来确定第一信道群组流量整形率数据,该第一信道群组流量整形率数据表示被分配用于和与该第一信道群组相关联的服务流相关联的分组的传送的带宽的量;和/或其中确定该第一信道群组流量整形率数据包括计算与该第一信道群组相关联的信道群组流量利用值的加和。
其它方面针对用于管理用于共享接入电缆网络上的多个通信信道上的传送的流量流的不同方法、系统和计算机程序产品。在至少一个实施例中,在此所描述的各种流量流管理技术可以包括例如以下步骤的一个或多个:执行至少一个流量整形操作,所述至少一个流量整形操作用于对将在该共享接入电缆网络中的多个不同通信信道上传送的多个不同流量流进行整形,其中所述多个通信信道包括第一通信信道、第二通信信道和第三通信信道,其中该第一通信信道和该第二通信信道与第一信道群组相关联,其中该第二通信信道和该第三通信信道与第二信道群组相关联;和/或其中该第一信道群组与第一多个队列相关联,该第一多个队列包括第一队列和第二队列;并且其中该第二信道群组与第二多个队列相关联,该第二多个队列包括第三队列和第四队列。在至少一个实施例中,对所述多个不同流量流进行整形可以包括例如以下步骤的一个或多个:判断与该第一队列相关联的第一流量条件是否已经超过第一阈值标准,其中该第一队列与该第一信道群组相关联并且与该第一通信信道相关联;判断与该第二队列相关联的第二流量条件是否已经超过第二阈值标准,其中该第二队列与该第一信道群组相关联并且与该第二通信信道相关联;响应于检测到与该第一信道群组相关联的队列中的至少一个队列已经超过其相关联的阈值标准,发起用于在第一时间间隔期间暂停或禁用与该第一信道群组相关联的流量流的至少一个操作;判断与该第三队列相关联的第三流量条件是否已经超过第三阈值标准,其中该第三队列与该第二信道群组相关联并且与该第二通信信道相关联;判断与该第四队列相关联的第四流量条件是否已经超过第四阈值标准,其中该第四队列与该第二信道群组相关联并且与该第三通信信道相关联;和/或响应于检测到与该第二信道群组相关联的队列中的至少一个队列已经超过其相关联的阈值标准,发起用于在第二时间间隔期间暂停或禁用与该第二信道群组相关联的流量流的至少一个操作。
在至少一个实施例中,在此所描述的各种流量流管理技术可以包括例如以下步骤的一个或多个:判断与该第一信道群组相关联的流量流是否被暂停或禁用;响应于判定与该第一多个队列中的每个队列相关联的相应的阈值标准被满足,发起用于使能或恢复与该第一信道群组相关联的流量流的至少一个操作;判断与该第二信道群组相关联的流量流是否被暂停或禁用;和/或响应于判定与该第二多个队列中的每个队列相关联的相应的阈值标准被满足,发起用于使能或恢复与该第二信道群组相关联的流量流的至少一个操作。
其它方面针对用于管理用于共享接入电缆网络上的多个通信信道上的传送的流量流的不同方法、系统和计算机程序产品。在至少一个实施例中,在此所描述的各种流量流管理技术可以包括例如以下步骤的一个或多个:接收第一分组,该第一分组与第一组特征相关联,该第一组特征包括第一服务流标识符,该第一服务流标识符表示与该第一分组相关联的第一服务流;使用该第一组特征中的至少一部分特征来识别与该第一服务流相关联的第一信道群组,该第一信道群组包括多个通信信道,所述多个通信信道已被分配用于在传送与该第一服务流相关联的数据流量中使用,其中该第一信道群组与第一多个队列相关联,其中所述多个通信信道中的每个通信信道与该第一多个队列中的至少一个相应的队列相关联,其中该第一多个队列中的每个队列与相应的可用队列容量值相关联,该可用队列容量值表示可用于由该第一多个队列中的给定队列使用的总存储的数量;和/或管理与该第一信道群组相关联的流量流。在至少一个实施例中,管理与该第一信道群组相关联的流量流可以包括例如以下步骤的一个或多个:判断与该第一信道群组相关联并且与该第一通信信道相关联的队列中的每个队列在第一时间间隔期间是否已经超过与其相应的队列相关联的阈值标准;和/或响应于检测到与该第一信道群组相关联的队列中的每个队列已经超过其相关联的阈值标准,发起用于在第二时间间隔期间暂停或禁用与该第一信道群组相关联的流量流的至少一个操作。在至少一个实施例中,用于暂停或禁用与该第一信道群组相关联的流量流的至少一个操作可以包括禁止至少一个分组在该第二时间间隔期间被入队到该第一多个队列中的任何队列中。
其它方面针对用于管理用于共享接入电缆网络上的多个通信信道上的传送的流量流的不同方法、系统和计算机程序产品。在至少一个实施例中,在此所描述的各种流量流管理技术可以包括例如以下步骤的一个或多个:检测与第一分组从与第一信道群组相关联的第一队列中出队(dequeue)有关的第一分组出队事件,该第一信道群组包括多个通信信道,所述多个通信信道已被分配用于在传送与第一服务流相关联的数据流量中使用,其中该第一信道群组与第一多个队列相关联,该第一多个队列包括该第一队列,其中所述多个通信信道中的每个通信信道与该第一多个队列中的至少一个相应的队列相关联;使用与该第一队列相关联的信息来识别与该第一队列相关联的该第一信道群组;判断是否针对该第一信道群组断言流量流控制,其中针对该第一信道群组断言流量流控制的用该第一信道群组的第一多个通信信道上的流量流的暂停来表征;和/或响应于判定针对该第一信道群组断言该流量流控制并且响应于检测到该第一分组从该第一队列中出队,执行用于对在该第一信道群组处的流量流控制解除断言的至少一个操作,其中对针对该第一信道群组的流量流控制解除断言用该第一信道群组的第一多个通信信道上的流量流的恢复来表征。在至少一个实施例中,用于对在该第一信道群组处的流量流控制解除断言的至少一个操作可以包括例如使得至少一个分组能够被入队到该第一多个队列中的至少一个队列中。
在至少一个实施例中,该共享接入电缆网络可以被配置为混合光纤同轴HFC电缆网络,该混合光纤同轴HFC电缆网络与电缆上数据服务接口规范DOCSIS通信协议兼容。在至少一个实施例中,至少部分在此所描述的流量流管理技术可以在该共享接入电缆网络的电缆调制解调器终端系统CMTS处被实现。在至少一个实施例中,该第一信道群组可以对应于依照该DOCSIS通信协议的DOCSIS信道绑定群组。
从以下描述以及其优选实施例,在此描述或提及的各个方面的另外的目的、特征和优势将变得显而易见,该描述应当结合附图来考虑。
具体示例实施例
本申请中描述一个或多个不同的发明。此外,对于在此所描述的(一个或多个)发明中的一个或多个,在本专利申请中描述了大量实施例,并且为说明目的而介绍。并不意谓所描述的实施例在任何意义上是限制性的。这(一个或多个)发明中的一个或多个可被广泛应用于大量实施例,这从本公开是显而易见的。这些实施例被充分详细地描述来使得本领域技术人员能够实行这(一个或多个)发明中的一个或多个,并且应当理解,可以利用其它实施例并且在不偏离这(一个或多个)发明中的一个或多个的情况下可以进行结构的、逻辑的、软件的、电子的和其它的改变。因此,本领域技术人员将认识到可以利用不同的修改和变更来实行这(一个或多个)发明中的一个或多个。可以参考一个或多个具体实施例或附图来描述这(一个或多个)发明中的一个或多个的具体特征,其中附图构成本公开的一部分并且通过图解示出这(一个或多个)发明中的一个或多个发明的具体实施例。然而,应当理解,这样的特征不限于在一个或多个具体实施例中或在描述它们所参考的附图中使用。本公开既不是这(一个或多个)发明中的一个或多个发明的全部实施例的文字描述,也不是全部实施例中必须存在的这(一个或多个)发明中的一个或多个发明的特征的清单。
本专利申请中提供的节段的标题和本专利申请的标题仅仅是为了方便,并且不应被理解为是以任何方式限制本公开的。
相互通信的设备不必是相互持续通信的,除非另外特别指明。另外,相互通信的设备可以直接地或通过一个或多个中间体间接地通信。
对具有相互通信的若干组件的实施例的描述并非暗示所有这样的组件都需要。相反,多种可选组件被描述以图示出这(一个或多个)发明中的一个或多个发明的多种多样的可能实施例。
此外,尽管处理步骤、方法步骤、算法等可能按照顺序次序被描述,但是这样的处理、方法和算法可被配置为以轮流次序工作。换而言之,在本专利申请中描述的步骤的任何序列或次序它们自己本身并非指示要求这些步骤被以该次序执行。所描述的处理的步骤可以以任何实用的次序被执行。此外,一些步骤可以被同时执行,尽管被描述或暗示为并非同时发生(例如,由于一个步骤在另一步骤之后被描述)。并且,通过附图中的描绘对处理进行的图解并非暗示所图示的处理是排除其其它变形和修改的,并非暗示所图示的处理或其步骤中的任何步骤对于这(一个或多个)发明中的一个或多个发明是必要的,并且并非暗示所图示的处理是优选的。
当单个设备或构件被描述时,显而易见,可以使用多于一个设备/构件(不论它们是否协作)来替换单个设备/构件。类似地,在多于一个的设备或构件(不论它们是否协作)被描述的情况中,显而易见,可以使用单个设备/构件来替换这多于一个的设备或构件。
设备的功能性和/或特征可以可替换地由没有被明确描述为具有这样的功能性/特征的一个或多个其它设备体现。因此,这(一个或多个)发明中的一个或多个发明的其它实施例不需要包括该设备本身。
在此公开了用于在(一个或多个)共享网络(例如混合光纤/同轴(HFC)电缆网络)上实现服务质量(QoS)过程的各种技术。为了图解和说明的目的,关于示例电缆网络实施例通过示例方式描述和图解与在此公开的各种技术和方面中的许多有关的细节。然而,将明白,在此公开的公开的各种技术和方面中的许多也可以应用于和/或被实现于其它类型的接入网络(诸如,例如卫星网络、蜂窝网络、无线网络等等),其中这些其它类型的接入网络可以将一个或多个共享接入通信信道用于使能接入网络的网络节点(例如电缆调制解调器)和头端之间的通信。另外,将明白,在此所述的一种或多种技术可被实现来对与用于在共享接入网络上传送数据的各种类型的数据包(例如分组、数据包、帧等)相关联的流量进行整形。然而,为了说明的目的以及/或者为了避免混淆,在此所描述的一种或多种技术可以关于分组的流量整形通过示例来描述。
通常,电缆网络可以包括:头端,其包括一个或多个电缆调制解调器终端系统(CMTS);多个电缆调制解调器(CM);以及多个共享接入上游和/或下游信道,用于在辅助电缆调制解调器和头端之间的通信中使用。在一些实施例中,电缆网络还可以包括以下的一个或多个(或者其组合):集线器(有时称为“集线器-头端”)、光纤节点等。
图1图示出可用于实现在此所描述的各个方面的电缆网络部分133的具体示例实施例。如在图1的具体示例实施例中所示,电缆网络部分133包括头端134,可被布置到一个或多个不同的订户群组中的多个电缆调制解调器(例如104),以及一个或多个光纤节点106。另外,在一些实施例中(例如如图1中所示),电缆网络部分133还可以包括一个或多个集线器(例如130),其可以被可通信地耦接在头端134和电缆调制解调器104之间。
在至少一个实施例中,头端134的一个或多个CMTS 156可被配置或设计为从一个或多个外部源(诸如,例如因特网160)存取(access)和/或获取数据,并且还可以被配置或设计为从(一个或多个)外部源获取内容(例如,文本数据、图像数据、视频数据、音频数据等),并且修改内容的选定部分以用于经由一个或多个下游信道分发给电缆调制解调器。另外,一个或多个CMTS 156也可以被配置或设计为从电缆网络的一个或多个电缆调制解调器接收上游通信。
根据至少一个实施例,不同CMTS(例如156)可以各自被配置或设计为包括上游信道和/或下游信道功能性。例如,在一个实施例中,头端处的第一CMTS可以被配置作为下游CMTS并且可操作用于应对与去往CM的下游信道通信有关的各个方面,并且头端处的第二CMTS可以被配置作为上游CMTS并且可操作用于应对与来自CM的上游信道通信有关的各个方面。在一些实施例中,(一个或多个)CMTS可操作用于应对与下游信道和上游信道通信有关的各个方面。
如图1的具体示例实施例中所示,头端可以包括一个或多个调制器/解调器168。在一个或多个实施例中,调制器/解调器168可以可操作用于调制一个或多个RF信号以用于在一个或多个RF信道上传输和/或可以可操作用于解调在一个或多个RF信道上传输的一个或多个RF信号。根据不同实施例,各种类型的调制技术可被用于信号的调制/解调,诸如,例如以下信号(或其组合)的一个或多个:
·正交幅度调制(QAM)
·正交相移键控(QPSK)
·等等
例如,在一个实施例中,头端168可以经由一个或多个光纤信道连接到一个或多个光纤节点(例如106)。在至少一个实施例中,一个或多个光纤节点可以经由同轴电缆连接到一个或多个双向放大器和/或双工(duplex)滤波器,双向放大器和/或双工滤波器允许某些频率在一个方向上通过,并且允许其它频率在相反方向上通过。在一些实施例中,一个或多个光纤节点可以可操作用于服务不同的电缆调制解调器订户群组。如图1的具体示例实施例所示,头端134可以包括一个或多个光纤发射机/接收机140。在一个或多个实施例中,光纤发射机/接收机140可以可操作用于经由一个或多个光纤信道来发送和/或接收信息。在一些实施例中,光纤发射机/接收机140可以经由一个或多个光纤信道来发送和/或接收经RF调制的信号。在至少一个实施例中,如图1中所示,头端134与电缆调制解调器140之间的通信的至少一部分可以经由RF信道166实现,RF信道166例如可以包括至少一个上游信达和至少一个下游信道。在至少一个实施例中,RF信道166的至少一部分可以被配置或设计为共享接入信道,共享接入信道例如可被配置或设计为利用一种或多种不同类型的共享接入协议,诸如,例如,
·时分多址(TDMA)
·码分多址(CDMA)
·等等
在至少一个实施例中,电缆网络部分133也可以包括一个或多个集线器(例如130),其可以被可通信地耦接在头端134和电缆调制解调器104之间。在一个或多个实施例中(例如如图1中所示),一个或多个集线器130可以经由IP网络132被与头端134可通信地耦接。在一个或多个实施例中,IP网络132可以支持例如吉比特以太网流量。在一些实施例中,IP网络132可以支持不同类型的分组交换的基于IP的流量协议。在不同的实施例(未示出)中,一个或多个集线器130可以经由一种或多种不同类型的网络(例如,不同类型的IP网络、光纤网络、卫星网络、蜂窝网络、无线网络等等)被与头端134可通信地耦接。
在电缆网络部分133的具体示例实施例中,集线器130包括一个或多个CMTS 144。在至少一个实施例中,集线器130的一个或多个CMTS144可以被配置或设计为调度一个或多个电缆调制解调器(例如104)和头端134之间的上游通信的传输。集线器130的一个或多个CMTS 144还可以被配置或设计为从一个或多个电缆调制解调器接收上游通信,并且修改通信的选定部分以用于发送至头端134中所包括的一个或多个设备。
根据至少一个实施例,不同的CMTS(例如144)可以各自被配置或设计为包括上游信道和/或下游信道功能性。例如,在一个实施例中,头端处的第一CMTS可以被配置作为下游CMTS并且可操作用于应对与去往CM的下游信道通信有关的各个方面,并且头端处的第二CMTS可以被配置作为上游CMTS并且可操作用于应对与来自CM的上游信道通信有关的各个方面。在一些实施例中,一个或多个CMTS可以可操作用于应对与下游信道和上游信道通信有关的各个方面。
图图1的具体示例实施例中所示,集线器130可以包括一个或多个调制设备152。在一个或多个实施例中,调制设备152可以可操作用于接收用于分发给一个或多个CM的下游通信。另外,调制设备152可以可操作用于调制一个或多个RF信号以用于在一个或多个RF信道上传输。根据不同的实施例,各种类型的调制技术可被用于信号的调制,诸如,例如以下调制技术(或其组合)的一个或多个:
·正交幅度调制(QAM)
·正交相移键控(QPSK)
·等等。
在不同的实施例(未示出)中,集线器130可以包括一个或多个解调设备,其可操作用于解调在一个或多个RF信道上传输的一个或多个RF信号。
如图1的具体示例实施例中所示,头端可以包括一个或多个天线共用(diplexer)设备142。一个或多个双工器设备142可以被配置或设计为执行与上游和/或下游频域多路复用(multiplex)和/或多路解复用有关的一个或多个操作。在一些实施例中,一个或多个双工器设备可以被配置或设计为对多个上游和/或下游信号进行多路复用以用于在一个或多个上游和/或下游信道上传输。另外,一个或多个双工器设备可以被配置或设计为将经由一个或多个上游和/或下游信道传输的一个或多个信号多路解复用为多个上游和/或下游信号。例如,在图1的具体示例实施例中,双工器设备142可以被配置或设计为对两个QAM信号进行天线共用以用于下游发送至一个或多个光纤节点106和/或CM 104。另外,双工器设备142可以被配置或设计为对从一个或多个光纤节点106和/或CM 104经由一个或多个上游信道发送的一个或多个信号进行解天线共用(undiplex)。
在至少一个实施例中,电缆网络中的一个或多个设备,和/或与电缆网络中的一个或多个设备相关联的时钟电路,可以经由一个或多个外部定时设备(诸如,例如层1(Stratum 1)时钟源)的使用被同步。在2003年6月10日提交的发明名称为“Synchronizing Separated Upstream And Downstream Channels Of Cable Modem Termination Systems”(对电缆调制解调器终端系统的分离的上游和下游信道进行同步)的美国专利申请第10/459,136号(代理卷号CISCP328/236442)中记载了用于同步电缆网络的组件的一种或多种技术,该申请因所有用途被通过引用全部结合于此。在电缆网络部分133的具体示例实施例中,网络流量可以参考来自一个或多个全球定位系统(“GPS”)设备(例如148和160)的时间和/或频率被同步。GPS设备160可以向头端134中的一个或多个设备(例如CMTS156)提供时间信息和/或时钟信号。GPS设备148可以向集线器130中的一个或多个设备(例如CMTS 144和/或调制设备152)提供时间信息和/或时钟信号。提供给一个或多个设备的时间信息和/或时钟信号例如可以包括如一个或多个DOCSIS规范中所描述的那样使用的频率数据。
如图1的具体示例实施例中所示,电缆网络部分133可以包括一个或多个光纤节点106。在一些实施例中(例如如图1中所示),一个或多个光纤节点可以被配置或设计为接收从头端134和/或一个或多个集线器130中的一个或多个CMTS经由光纤发送的通信,并且修改通信的选定部分以用于经由一个或多个同轴电缆分发给CM(例如104)。另外,一个或多个光纤节点可以被配置或设计为经由一个或多个通信信道(例如同轴电缆)接收来自一个或多个CM(例如CM 104)的通信,并且修改通信的选定部分以用于发送至头端134中的一个或多个设备和/或一个或多个集线器130。
如图1的具体示例实施例中所示,电缆网络部分133可以包括一个或多个网络节点(例如CM 104)。在某时实施例中,一个或多个不同设备可以可操作用于经由第一网络节点与头端通信。例如,第一电缆调制解调器可以向一个或多个设备提供一个或多个数据通信功能,这些设备可以包括但不限于:(一个或多个)个人计算机,(一个或多个)电视机、(一个或多个)数码摄像机(DVR)设备、(一个或多个)电话、(一个或多个)家电、(一个或多个)连网设备等等(或它们的一些组合)。因此,在一些实施例中,由共享接入网络中的第一网络节点(例如CM)接收的通信可以与和第一网络节点相关联的一个或多个不同设备相关联。
在一些实施例中,第一网络节点(例如CM)可以与一个或多个服务流相关联,这一个或多个服务流用于调度第一网络节点和不同网络组件(例如CMTS)之间的上游或下游通信。根据各种实施例,服务流可以是用于一个或多个网络节点与不同网络组件之间的通信的任何上游和/或下游数据流。在至少一个实施例中,服务流可以被定义为介质访问控制(在此称为“MAC”)层传输服务,其可以提供从上层服务实体向RF的单向分组传送并且可以根据针对服务流定义的一个或多个QoS流量参数来对流量进行整形、监管(police)和/或排列优先顺序。
在各种实施例中,各种类型的数据流量可以在共享接入网络的一个或多个网络节点和头端之间传输。例如,不同类型的数据流量可以包括但不限于因特网流量、视频点播(“VOD”)流量、IP语音(“VOIP”)流量等等。在一些实施例中,第一服务流可以与具体类型的网络流量相关联。例如,在具体示例实施例中,电缆网络中的电缆调制解调器可以与用于下游因特网流量的通信的第一服务流、用于下游VOD流量的通信的第二服务流、用于下游VOIP流量的通信的第三服务流等相关联。在不同实施例中,一个或多个不同类型的数据流量可以与一个或多个不同的服务流相关联。
在各个实施例中,一个或多个服务流可以与各种类型的QoS流量参数的一个或多个实例相关联。在一些实施例中,一个或多个QoS流量参数可以被一个或多个服务流共享。各种类型的QoS流量参数可以包括但不限于以下参数(或其组合)的一个或多个:
·流量速率参数(例如,最小维持流量速率参数、最大维持流量速率参数等)
·流量优先参数
·流量突发参数(例如,最大流量突发参数,最大级联突发参数等)
·保留流量速率参数(例如最小保留流量速率参数、假定的最小保留速率分组大小参数等)
·超时参数(例如用于活动QoS参数的超时,用于准许的QoS参数的超时等)
·流量调度参数(例如服务流调度类型参数等)
·等等
在此描述的技术可以应用于共享接入网络中的网络节点、服务流和/或QoS参数的任何关联。例如,在电缆网络的具体示例实施例中,第一电缆调制解调器可以与和下游流量的通信有关的第一服务流相关联,并且第一服务流可以与例如用于提供超过最小保留流量速率的因特网流量的QoS参数相关联。在该具体示例实施例中,第一电缆调制解调器还可以与和下游VOD流量的通信有关的第二服务流相关联,并且第二服务流可以与用于提供小于最大流量突发速率的VOD流量的QoS参数相关联。在至少一个实施例中,第一电缆调制解调器还可以与和VOIP流量的通信有关的第三服务流相关联,并且第三服务流可以与用于提供被指定为具有最高流量优先级的VOIP流量的QoS参数相关联。在不同的实施例中,一个或多个不同的QoS参数可以与一个或多个不同的服务流相关联。
在一个或多个实施例中,一个或多个QoS参数可以在网络头端和/或集线器中所包括的一个或多个组件(例如CMTS)处被定义和/或确定。在各个实施例中,一个或多个QoS参数可以手动地、自动地、动态地、静态地或者通过以上方式的组合被定义和/或确定。根据一些实施例,一个或多个QoS参数可以根据服务提供商和客户之间的协议来定义和/或确定。例如,与电缆网络中的第一客户的服务级别协议(在此称为“SLA”)可以定义一个或多个QoS参数,这些QoS参数可以与一个或多个类型的数据流量流相关联。在一些实施例中,一个或多个不同的客户可以支付不同数量的货币来交换不同类型的和/或级别的服务。例如第一客户可以比第二客户支付更多货币来交换针对因特网流量的更高最小带宽速率和/或针对VOIP流量的更高CBR。
在一些实施例中,每个(或选定的)服务流可以与各自的服务流标识符(在此称为“SFI”)相关联。在至少一个实施例中,服务流标识符可以用来唯一地识别接入网络的具体服务流。每个(或选定的)绑定群组可以与各自的绑定群组标识符(在此称为“BGI”)相关联。每个(或选定的)RF信道可以与各自的信道编号相关联。根据各个实施例,与一个或多个SFI、BGI和/或信道编号有关的不同类型信息可被用来识别不同参数和/或组件,这些参数和组件可以包括但不限于以下参数和组件(或其组合)的一个或多个:
·(一个或多个)服务流
·(一个或多个)服务流类别
·(一个或多个)电缆调制解调器
·(一个或多个)QoS参数
·(一个或多个)绑定群组
·等等
根据各个实施例,共享接入网络可以被配置为使得多个网络节点可以共享用于发送和/或接收数据的一个或多个共享接入信道。例如,电缆网络中的多个电缆调制解调器可以共享用于发送和/或接收数据的一个或多个信道。共享接入信道上的信息传输可能需要不同类型的调度技术来确保有效的流量流。(例如,电缆网络上CMTS和一个或多个电缆调制解调器之间的分组传输可以是根据不同调度技术(例如,加权公平排队(“WFQ”)等)来调度的。)
如以上提及的,RF技术中的最新进步已经使得电缆调制解调器能够在多个RF信道上接收和发送数据。因此,新一代电缆调制解调器可以以高达200Mbps的速率接收数据。最新的DOCSIS标准,电缆上数据服务接口规范CM-SP-MULPIv3.0-102-061222(在此称为“DOCSIS 3.0”)已经以“绑定群组”的概念制定了多信道数据传输的标准。在至少一个实施例中,“绑定群组”可以是指所识别的会被分发分组流(例如来自服务流)的上游或下游信道的集合。例如,在一个实施例中,绑定群组可以是指所识别的会被分发与一个或多个服务流相关联的分组的上游或下游信道的集合。在一些实施例中,绑定群组可以仅指活动的和/或可用信道(例如,所识别的信道集合)的子集。在一些实施例中,“绑定群组”可以是指一系列的提供用来识别绑定到一起的具体信道的手段的信道。将明白,在此描述的一种或多种技术可以应用于与各种类型的共享接入网络相关联的各种信道群组。然而,为了说明的目的,和/或为了避免混淆,在此可以关于对与一个或多个绑定群组相关联的流量进行整形来描述一种或多种技术。
在至少一个实施例中,在此描述的各种电缆网络和QOS相关概念/术语可以以与DOCSIS 3.0兼容的方式被定义和/或解释。这样的概念/术语中的至少一些示例可以包括但不限于以下概念/术语(或其组合)中的一个或多个:
·服务流:在至少一个实施例中,服务流可以被表征为提供电缆调制解调器和CMTS之间的单向分组传送的MAC层传送服务。服务流可以由分类符和/或若干QOS属性的集合来表征,分类符和/或若干QOS属性诸如是,例如以下的一个或多个(和/或其组合):延迟时间(latency)、抖动、吞吐量保证等。
·QAM(正交幅度调制):在至少一个实施例中,正交幅度调制可被用作调制格式,该调制格式可以用于对电缆网络技术中使用的RF信道上的数字数据进行编码。单个RF信道例如可以是6至8MHz宽度(例如,取决于国家),和/或例如可以实现从40至50Mbps的数据速率。在至少一个实施例中,QAM可以指示携带数据的RF信道。
·绑定群组:在至少一个实施例中,绑定群组可以被表征为可以用于传送与给定服务流相关联的数据流量(例如分组)的一个或多个信道(例如QAM)的集合。在一个实施例中,绑定群组可以被视为转发接口。例如,在一个实施例中,当CMTS接收到以具体服务流分类(或与之关联)的分组时,CMTS可以识别与接收的分组的服务流相关联的绑定群组,可以识别与所识别的绑定群组相关联的QAM,和/或可以利用所识别的用于将与所识别的服务流相关联的分组传送到给定电缆调制解调器(和/或多个电缆调制解调器)的QAM中的一个或多个。
·最小速率(最小保留速率):在至少一个实施例中,最小速率可以被表征为与服务流相关联的QOS属性中的一个QOS属性。最小速率(或最小保留速率)也可以称为承诺信息速率或CIR。在一个实施例中,最小速率可以代表CMTS应当为给定服务流保留的流量速率。在至少一个实施例中,不同的服务流可以与不同的最小速率相关联。
·最大速率:在至少一个实施例中,最大速率可以被表征为与服务流相关联的QOS属性中的另一个QOS属性。在一个实施例中,最大速率可以代表对于给定服务流不能超过的流量速率。在至少一个实施例中,不同的服务流可以与不同的最大速率相关联。
·绑定群组最小速率:在至少一个实施例中,绑定群组最小速率可以代表在给定绑定群组上传送(和/或被调度用于传送)的数据流量服务流中的全部(或选定的)服务流的最小速率的合计或加和。
根据各个实施例,在此描述的不同流量整形技术和/或方面可以应用于共享接入网络(诸如,例如电缆网络)中的不同类型的上游和/或下游信道通信。为了说明的目的,和/或为了避免混淆,在此描述的不同流量整形技术是关于电缆网络描述的,其中假定下游流量被整形。此外,还假定信道(在此称为QAM)根据一个或多个正交幅度调制方案被调制。如上所述,CMTS和具体CM之间的通信可以被组织到一个或多个服务流中。在在此所描述的实施例中,假定绑定群组是指选定的一组QAM,其中CMTS可以操作用于调度与一个或多个服务流相关联的数据在这组QAM上的传输。在一些实施例中,一个或多个共享接入网络可以被利用绑定群组和信道的重复关联配置。例如,在至少一个实施例中,与第一电缆调制解调器的通信可以在跨越多个信道的第一绑定群组上被发送。同时,第一信道可以被多个绑定群组共享。
绑定群组和/或信道的这样的关联使得带有QoS保证的分组调度非常复杂。如将明白的,绑定群组和信道的此重复关联使得流量整形非常困难。本公开的一个方面涉及与针对绑定群组的QoS调度有关的各种问题,以及/或用于处理和/或解决这样的问题的各种技术。在一个或多个实施例中,针对具有复杂的网络配置的共享接入网络的带有QoS保证的分组调度例如可以涉及一种或多种线性规划技术。然而,这样的实施例的一个缺点可能在于线性规划技术会需要相对大量的计算资源,并且因此要用于实时对网络流量进行动态整形是不切实际的。
另外,将明白,用于实现电缆网络中的流量整形的现有技术可能不可与在兼容DOCSIS 3.0的电缆网络中所实现的QoS调度技术相兼容地一起使用(和/或不容易被适配为与之一起使用),因为例如传统的电缆调制解调器通常已经被配置或设计为在任何给定时间在单个信道上发送和接收数据。在DOCSIS 3.0之前,不需要实现针对跨越多个上游和/或下游信道的负载平衡。
另外,用于流量调度的现有技术不可兼容用于在为与重复绑定群组相关联的信道调度流量时提供QoS保证,这是因为例如现有流量调度技术可能基于这样的假定:给定CM在任何给定时间可能正在利用至多单个上游信道和单个下游信道。例如,根据之前的DOCSIS版本配置的网络中的流量调度技术可以使用预先配置的和/或静态的处理器来实现,其中假定存在可行的从输入流量到输出信道的分配。然而,根据DOCSIS 3.0,在一些实施例中,多个信道可以可操作用于传送与多个数据流量流相关联的通信,其中数据流量流和信道之间的关联是重复的并且通信资源比过去可被更自由地配置。因此,现有调度技术(例如,加权公平排队、轮询等)不能调度经由与重复的绑定群组相关联的信道传输的流量。
例如,可能难以确定是否存在输入流量向与给定网络处理器或其它设备相关联的输出信道的可行分配。因此,例如,根据一种或多种现有流量调度技术,当在利用重复的绑定群组配置的电缆网络上调度与数据流量流相关联的流量时,分组可能被丢弃或QoS规定可能被违反。在一些实施例中,在此描述的一种或多种技术以在一种或多种现有流量调度技术之前被实现(例如,WQF)。在不同实施例中,在此描述的一种或多种技术可以提供可使用一种或多种传统调度技术来可行地调度的网络流量流。
除了在此所描述的流量整形技术的各个实施例以外,还可以实现用于负载平衡的各种技术。然而,单独使用的用于负载平衡的各种技术不足以解决与针对和重复的绑定群组相关联的信道的QoS调度有关的问题,这是因为例如负载平衡技术可能涉及这样的选定信道,一个或多个CM被配置为在选定信道上发送和/或接收信息而不是给定具体的网络配置基于每个分组地分配与选定信道相关联的带宽。
在至少一个实施例中,至少一些CMTS平台(诸如可从加利福尼亚圣何塞的思科系统公司获得的那些)可以利用已被配置和设计为执行DOCSIS MAC控制器功能性的ASIC(例如“JIB”)。在一个实施例中,MAC层处理器可以被配置或设计为接收被预定为经由指定绑定群组传送的分组,和/或可以被配置为或设计为调度和/或转发这些分组中的一个或多个以用于在与指定绑定群组相关联的QAM中的一个或多个上传输。在至少一个实施例中,为了将分组转发至恰当的QAM,MAC层处理器可以被配置或设计为利用简化的调度算法,诸如例如“最短队列最先”(SQF)调度算法(其例如可以以分层排队架构(“HQF”)实现)。
然而,尽管多个不同的绑定群组都可能在单个QAM上贡献流量,但是在至少一个实施例中,调度算法应当优选地被配置或设计为确保与给定绑定群组相关联的QAM在可能的程度上被均等地(或基本上均等地)装载。因此,在至少一个实施例中,调度算法可被认为是只要绑定群组被指派(或被调度)“可行带宽分配”就是有效的,使得在每个绑定群组的QAM上发送的数据流量的总带宽不会超过QAM容量。因此,例如,在一个实施例中,绑定群组的每一个(或选定的)群组会被以各自的带宽整形,各自的带宽可以与和每个各自的绑定群组相关联的QAM一致。
在至少一个实施例中,分组可以被分类到服务流中,和/或被转发到具体的绑定群组(与那个服务流相关联)以用于在与具体的绑定群组相关联的一组QAM上传送。在至少一个实施例中,诸如例如最小速率和/或最大速率的QOS策略可以被每服务流地应用。这样,从CMTS的角度,绑定群组可以被视为转发接口。因此,根据一个实施例,在HIST调度体系架构(例如,基于分类树的HQF实现)的语境中,可以方便地将绑定群组建模为单个调度(例如带宽受限隧道或BLT),该单个调度聚合在其下的服务流中的所有(或选定)服务流。在一些实施例中,单个QAM可以接收来自多个绑定群组的分组。
在一些实施例中,绑定群组的输入流量可能随时间变化。因此,在至少一个实施例中,竞争的绑定群组之间的QAM带宽的动态共享是希望的。例如,对于绑定群组和/或QAM的简单关联,多个绑定群组可以被聚合到大的群组中,例如使得最大整形带宽基本上等于对应于与这多个绑定群组相关联的QAM中的所有(或选定的)QAM的QAM带宽的加和。然而,可以构想到,至少在一些实施例中,该方法可能不适于被扩展用于任意配置。因此,如以下更详细描述的,希望实现更高级的流量整形和/或流量调度技术。根据一个实施例,一种这样的技术可以涉及从QAM向与之关联的每个绑定群组静态地分配带宽。例如,在一个实施例中,QAM可以向其关联的绑定群组中的每个群组贡献其带宽的一部分。绑定群组整形带宽可以通过将其是成员的那些QAM中的所有(或选定的一些)QAM的贡献相加来计算出。
这样的静态带宽分配技术的一个缺点在于,其不允许带库被有效共享。例如,如果一个绑定群组上的流量中存在大的变动,并且如果同时与该绑定群组共享QAM的其它绑定群组是轻负载的,则即便QAM可被重流量的绑定群组使用,大部分QAm带宽也不被利用。
考虑绑定群组体系架构,和/或各个服务流的QOS要求,希望提供至少一个用于对下游电缆信道上的分组的传输进行整形和/或调度的机制。在一个实施例中,这样的机制优选满足各个服务流的指定QOS要求,同时,此时,使得总体QAM带宽能够被有效利用。在一个实施例中,这样的流量整形/调度机制的至少一部分可以使用被CMTS采用的HQF基础架构来实现,CMTS处理器诸如是例如可从加利福尼亚圣何塞的思科系统公司获得的思科分组处理器(CPP)。
根据各个实施例,对于给定服务流,优选可以满足以下QOS要求中的全部(或选定的)QOS要求:
1)最小保留流量速率:在一个实施例中,该参数指定为给定服务流保留的最小速率(例如,以比特/秒表示)。在一个实施例中,CMTS可以优选地能够满足针对给定服务流的带宽请求直到其最小保留流量速率。如果针对给定服务流的请求带宽是比其最小保留流量速率小的带宽,则CMTS可以将超额的保留带宽重新分配用于其它目的。
2)最大维持速率:在一个实施例中,该参数指定为给定服务流保留的最大维持速率(例如,以比特/秒表示)。在一个实施例中,被转发的流量的量(例如,以字节表示)在任意给定时间间隔(T)期间可以用Max(T)限制,Max(T)如以下表达式所示:
Max(T)=T*(R/8)+B (1)
其中参数B表示最大流量突发配置设置(例如,以字节表示)。
在至少一个实施例中,对于下游服务流,该参数可以是仅可在CMTS处应用的。在一个实施例中,CMTS可以在所有(或选定的)下游数据传输上增强以上表达式(1)。在一些实施例中,CMTS可被配置或设计为在给定时间间隔T期间不转发(和/或丢弃和/或忽略)违反表达式(1)的下游分组。在一些实施例中,CMTS可以可操作用于通过以下方式来对下游流量进行“速率整形”:例如对超过表达式(1)而到达的分组排队,和/或当表达式(1)所表示的条件未被满足时在至少一部分时间期间延迟这样的分组的转发。
3)流量优先:在一个实施例中,该参数是指服务流的优先。例如,在一个实施例中,可以存在8个优先级。根据一个实施例,优选地,较高优先流可以比较低优先流被给与更优先的对待(例如更好的服务)。在至少一个实施例中,CMTS可以被配置或设计为将流量优先参数用作超额比例超额速率分数的计算中的权重。
考虑由DOCSIS 3.0规范引入的各种新的和修改后的特征和/或协议,在此可以构想到(和/或预见到),DOCSIS 3.0环境中的流量调度器实现可能不再能够被表示为基于单个树的层次结构。因此,如这里所描述的,(例如,在可与DOCSIS 3.0兼容的电缆网络中)可以采用各种不同的流量整形和/或流量调度技术,这些技术可以帮助避免和/或减轻由于流量调度器实现不能被表示为基于树的层次结构所引起的问题。这样的流量整形和/或流量调度技术的示例(例如,这里所描述的示例)可以包括但不限于以下体系架构(或其组合)的一个或多个:推(push)体系架构、拉(pull)体系架构和/或混合体系架构。
在至少一个实施例中,与推体系架构相关联的基础概念的至少一部分涉及对绑定群组之间的QAM带宽的(静态的和/或动态的)分配的计算,和/或涉及将每个绑定群组流量整形为一速率,该速率基本上等于每个QAM针对给定绑定群组的带宽分配的加和。该解决方案在概念上很有吸引力在于:QAM级别的调度(这例如可以在硬件中完成)变得相对直接,因为整形(平均地)确保装载到QAM上的可行性,因此允许QAM级别的简单调度(例如,最短队列优先,SQF)和/或FIFO排队。
然而,该解决方案的一个缺点可能是,除非带宽分配能够被有效地和/或以充分小的时间尺度计算和确定,否则对绑定群组的整形会导致可能不能充分利用可用带宽。因此,可以优选使用用于计算整形率的有效算法来设计推体系架构。这样的算法可以是有效的,和/或可以维护绑定群组的可用带宽的分配的合理公平性。并且维护相对于最小和/或最大共享速率的QoS保证。用于求解线性等式的算术算法可以用来计算对绑定群组的最佳QAM带宽分配。然而,在分配被频繁更新来对所提供的负载条件的变化作出响应的环境中,它们可以是更计算密集的和/或不那么实用的。
与推体系架构类似,拉体系架构也可能由于某种原因需要计算每个QAM分配给每个绑定群组的份额。在份额已被计算或确定时,调度层次结构(树)可以被建立,其中根(root)在每个QAM处,QAM节点的子节点(child)可以是可以向该QAM发送分组的BG中的全部(或选定的)BG。注意,由于一个BG可以能够向多个QAM发送分组,所以,BG可以被同时实现在多个QAM树中。由于这些QAM中的所有(或选定的)QAM独立于其它QAM而从其自己的调度树“拉”分组,所以存在两个或更多QAM可能同时尝试从单个BG获取分组的可能性。这可能导致未充分利用,因为在没有实现某种加速的情况下,就在一个调度时点(scheduling epoch)中从相同BG拉多个分组可能是不可能的。此外,在该情况中,当BG其队列中只有一个分组时,即使是加速也无助于这样的事实:如果从该BG要求分组的QAM中的所有QAM停止尝试获取该单个分组,则这些QAM中除了一个以外的所有QAM都会失去调度机会。因此,拉体系结构模型也可能容易导致未充分利用,尽管其原因可能与推模型的原因不同。
在至少一个实施例中,混合体系架构可以被配置或设计为处理推和/或拉体系架构模型的上述问题中的一些问题。
在至少一个实施例中,对于这些体系架构中的每个(或选定的)体系架构,可以假定:可以在绑定群组中被组合的实际流(例如服务流)可以表示为根在该绑定群组处的调度层次结构。例如,在一个实施例中,当绑定群组需要选择分组时,其可以使用传统的基于WFQ的调度器(例如HQF)来选择个别流。
在使用HQF的另一方法中,QAM可以被表示为父节点,并以绑定群组为其子节点。然后,各个服务流可以被表示为绑定群组的子节点。
另一实现方式可以是以基于HQF的模型为基础的,其中,例如,HQF实现方式可以被配置或设计为利用“拉模型”,其中每个QAM可以是正从多个绑定群组拉分组。QAM信道可以被配置为使得每个绑定群组与其相关联的(静态)权重。例如,在QAM信道共享两个不同绑定群组的简单情况中,则这两个绑定群组都有可能具有相同的权重和/或因此它们可以在拥塞期间共享用于该QAM的带宽。
在一个实施例中,基于HQF的模型可以被修改为使得由于子节点与父节点之间的多对多关联,来自子节点的分组可能被多个父节点拉。该修改对于绑定群组调度是希望的,因为例如,HQF的现有实现方式并不提供用于在可能不是严格意义上的层次树的结构中拉分组的任何机制。在一些实施例中,(例如HQF中支持的)类似父节点-子节点关系的树例如相对于调度去往绑定群组的DOCSIS流的级别是充分的或足够的。
然而,特别构想到,对于HQF实现方式可能存在不同的问题,这可以提供考虑其它选项的动机。这样的问题中的至少一些问题的示例可以包括但不限于以下问题(或其组合)的一个或多个:
·QAM带宽的之间的静态共享可能是限制性的。
·可能需要处理当子节点仅具有一个分组时(如前所述)多个父节点拉相同分组的问题。
·如下平台之一,在所述平台中,重复绑定群组调度实现方式可以使用基于硬件的调度器被实现,其中该硬件调度器,在没有昂贵的HW修改的情况下,例如可能不容易被配置或设计为支持非树调度层次结构和/或可能不容易被修改为支持非树调度层次结构。
在此所描述的其它技术也可以用于解决在此所描述的不同问题,至少考虑以增加的负载度为代价来处理利用/最小速率保证折中的问题,这对于在此介绍的解决方案可能是固有的问题。
图2示出CMTS 200的框图。CMTS 200在同一CMTS中组合上游和下游功能。在不同实施例中,一个或多个CMTS可以仅包括下游或上游功能性。
在一些实施例中,路由选择引擎A可以被配置或设计为包括多个功能不同的模块或组件,例如包括被适配为提供分组转发功能性的转发处理器(FP)模块211a;被适配为实现路由选择或转发操作的路由处理器(RP)模块203a;以及被适配为提供系统时钟和时间戳功能性的应用组件202a。路由选择引擎组件可以被配置为提供层1、层2、层3和层4功能性以及服务质量(QoS)功能性。
应当注意,为了清楚,组件被以单数形式描述。多个处理器、多种存储格式、或多个系统控制器例如可以在该语境中以及根据不同实施例的其它语境中被使用。存储器207a可以包括可被处理器205a存取的同步动态随机存取存储器(SDRAM)存储位置,以用于存储由组件存取的软件程序和数据结构。网络路由选择操作系统,其一部分可以驻留在存储器中并被路由处理器执行,其通过调用网络操作来在功能上组织路由器,以便支持路由器上执行的软件处理。
多个线路卡可以包括已被特别配置为执行特定功能的不同类型的线路卡。例如,线路卡231可以对应于射频(RF)线路卡,其已被配置或设计用于在电缆网络中使用。另外,线路卡235可以对应于网络接口卡,其已被配置或设计为与不同类型的外部网络(例如WAN和/或LAN)相接口,其中这些外部网络利用不同类型的通信协议(例如,以太网、帧中继、ATM、TCP/IP等)。
例如,数据网络接口235a可以用作外部数据源和电缆系统之间的接口组件。外部数据源可以经由例如光纤、微波链路、卫星链路或通过各种介质来向数据网络接口235a发送数据。数据网络接口可以包括用于与不同网络相接口的硬件和/或硬件与软件。根据各个实施例,数据网络接口可以被实现在作为用于分组交换网络的传统路由器的一部分的线路卡上。使用这种类型的配置,CMTS可以能够使用例如网络层软件219a来向数据网络接口发送IP数据和/或从其接收IP数据。
如图2的具体示例实施例中所示,至少一部分线路卡包括用于提供主机线路卡、其它线路卡和/或(一个或多个)路由选择引擎之间的合适接口的接口电路。例如,接口电路233a可以包括耦接到点对点链路241、243中的一个或多个的互连端口。根据具体实现方式,该接口电路用作转换器,其将在线路卡处接收的数据的传统格式转换为用于从线路卡传输到合适的路由选择引擎的适当协议格式。
点对点链路241、243可以被配置为时钟转发链路使得每个点对点链路包括至少一个用于传送数据信号的数据线路和至少一个用于携带时钟信号的时钟线路。在一些实施例中,一种或多种时钟转发技术可以被调节来适应其它时钟转发布置,诸如例如包括多个数据信号和/或时钟信号的连接。另外,每个线路卡可以被配置为在路由选择引擎(201a和201b)和电缆网络的至少一部分之间提供至少一个通信接口。数据网络接口235a可以将路由选择引擎201a耦接到外部数据网络255(诸如,例如因特网)。
图3示出CMTS 300的具体示例实施例的框图。图3中示出的CMTS的框图仅图示出CMTS的具体实施例的某些特征,该图示为了图解的目的并且并不意谓在任何方面是限制性的。如图3的具体示例实施例中所述,CMTS 300包括一个或多个WAN接口310、一个或多个路由处理模块320和/或一个或多个线路卡330。在一些实施例中,CMTS 300可以被配置或设计为执行与电缆网络中的上游和/或下游通信有关的一个或多个功能。
在至少一个实施例中,一个或多个CMTS 300可以被包括在电缆网络的头端中。在各种实施例中,一个或多个CMTS可以被配置或设计为从一个或多个外部源(诸如,例如因特网160)存取和/或获取数据,并还可以被配置和设计为从(一个或多个)外部源获取内容(例如文本数据、图像数据、视频数据、音频数据等等),并且修改内容的选定部分以用于经由一个或多个下游信道分发给电缆调制解调器。另外,一个或多个CMTS300还可以被配置或设计为从电缆网络的一个或多个电缆调制解调器接收上游通信。
根据至少一个实施例,不同的(一个或多个)CMTS可以各自被配置或设计为包括上游信道和/或下游信道功能性。例如,在一个实施例中,头端处的第一CMTS可以被配置作为下游CMTS并且可操作用于应对被配置作为下游CMTS并且可操作用于应对与去往CM的下游信道通信有关的各个方面,并且头端处的第二CMTS可以被配置作为上游CMTS并且可操作用于应对与来自CM的上游信道通信有关的各个方面。在一些实施例中,(一个或多个)CMTS可操作用于应对与下游信道和上游信道通信有关的各个方面。
在310处,WAN接口310被图示。根据不同的实施例,WAN接口310可被配置有必要的软件和/或硬件来执行和与一个或多个WAN通信有关的一个或多个功能。例如,在至少一个实施例中,WAN接口310可以被配置为接收经由一个或多个WAN发送的分组以及向路由处理模块320发送接收的分组以用于分发给一个或多个CM。根据不同的实施例,WAN接口310可以被配置为经由一个或多个WAN来发送在CMTS处从连接到该电缆网络的一个或多个CM接收的分组。
在320处,路由处理模块320被图示。根据不同的实施例,路由处理模块320可以被配置有用于实现与路由处理有关的一个或多个操作的合适的硬件和/或硬件与软件,路由处理可以包括但不限于以下操作(或其组合)的一个或多个:
·服务质量(QoS)操作(例如,分层排队架构(HQF)操作、分组分类操作等等)
·分组处理和/或路由选择操作
·流量整形操作(例如如图9-16中所示)
·路由选择和/或转发操作
·分组分类操作
·等等
在330处,一个或多个线路卡被图示。在一些实施例中,线路卡330可以包括已被具体配置为执行具体功能的不同类型的线路卡。例如(一个或多个)线路卡330可以包括已被配置或设计用于在电缆网络中使用的一个或多个射频(RF)线路卡。根据不同实施例,(一个或多个)线路卡330可以包括已被配置或设计为与不同类型的外部网络(例如WAN和/或LAN)相接口的一个或多个网络接口卡,所述外部网络利用不同类型的通信协议(例如以太网、帧中继、ATM、TCP/IP等)。
图4图示出根据具体示例实施例的电缆网络部分400的框图。图4中示出的电缆网络部分的具体示例实施例是分裂/组合HFC网络。电缆网络部分400包括一个或多个发射机设备402、一个或多个接收机设备404、一个或多个光纤节点420和/或一个或多个具有一个或多个CM(例如432a)的群组(例如432)。在不同实施例中,在此所描述的技术可以应用于一种或多种不同类型的共享接入网络(例如卫星网络、无线网络、不通过类型的电缆网络等等)上的通信。
在402处,根据具体示例实施例的具有一个或多个发射机设备的群组被图示出。在一些实施例中,一个或多个发射机设备可以可操作用于执行与在一个或多个共享接入信道上传输通信有关的一个或多个功能。例如,在一些实施例中,一个或多个发射机设备402可以可操作用于执行与频率调制、解调、复用和/或解复用有关的功能。在电缆网络部分400的具体示例实施例中,群组402中的一个或多个发射机可以被配置为在一个或多个下游信道上从CMTS经由一个或多个光纤节点(例如420a)向一个或多个CM发送下游数据。
在404处,根据具体示例实施例的具有一个或多个接收机设备的群组被图示出。在一些实施例中,一个或多个接收机设备可以可操作用于执行与在一个或多个共享接入信道上接收通信有关的一个或多个功能。例如,在一些实施例中,一个或多个接收机设备404可以可操作用于执行与频率调制、解调、复用和/或解复用有关的功能。在电缆网络部分400的具体示例实施例中,群组404中的一个或多个接收机可以被配置为在一个或多个上游信道上从一个或多个CM经由一个或多个光纤节点(例如420a)接收上游数据。
在一个或多个实施例中,一个或多个发射机设备402和/或接收机设备404可以可操作用于调制一个或多个RF信号以用于在一个或多个RF信道上传输和/或解调在一个或多个RF信道上传输的一个或多个RF信号。根据不同的实施例,各种类型的调制技术可被用于信号的调制/解调,诸如,例如以下调制技术(或其组合)的一个或多个:
·正交幅度调制(QAM)
·正交相移键控(QPSK)
·等等
在一个或多个实施例中,一个或多个发射机设备402和/或接收机设备404可以可操作用于执行与上游和/或下游频域多路复用和/或多路解复用有关的一个或多个功能。在一些实施例中,一个或多个发射机和/或接收机设备可以被配置或设计为对多个上游和/或下游信号进行多路复用以用于在一个或多个上游和/或下游信道上传输。另外,一个或多个发射机和/或接收机设备可以被配置或设计为将经由一个或多个上游和/或下游信道传输的一个或多个信号多路解复用为多个上游和/或下游信号。例如,在图4的具体示例实施例中,(一个或多个)发射机和/或接收机设备可以被配置或设计为将两个RF QAM信号进行天线共用以用于下游传输至一个或多个光纤节点和/或CM。另外,(一个或多个)发射机和/或接收机设备可以被配置或设计为对从一个或多个光纤节点和/或CM经由一个或多个上游信道发送的一个或多个信号进行解天线共用。
在一个或多个实施例中,一个或多个发射机设备402可以位于CMTS中的线路卡上。在一些实施例中,多个不同发射机设备可以位于CMTS中的一个或多个不同线路卡上。在一些实施例中,一个或多个不同发射机设备可以位于多个不同CMTS中的一个或多个不同线路卡上。
在一个或多个实施例中,一个或多个接收机设备404可以位于CMTS中的线路卡上。在一些实施例中,多个不同的接收机设备可以位于CMTS中的一个或多个不同线路卡上。在一些实施例中,一个或多个不同接收机设备可以位于多个不同CMTS中的一个或多个不同线路卡上。
在一些实施例中,一个或多个CMTS可以包括诸如例如在相同CMTS中的不同线路卡上的一个或多个发射机设备和一个或多个接收机设备。在一些实施例中,一个或多个CMTS可以包括(一个或多个)发射机设备或(一个或多个)接收机设备。在各种实施例中,上游和/或下游发射机和/或接收机的不同配置可被使用,并且图4中示出的电缆网络部分的具体示例实施例中的发射机和/或接收机的配置并不意味在任何方面是限制性的。
在432处,根据具体实施例的服务群组被图示出。服务群组可以表示电缆调制解调器可操作来检测的上游和/或下游信道的集合。在电缆网络部分400的具体示例实施例中,电缆调制解调器的群组432共享公共服务群组。
根据各个实施例,服务群组434中的一个或多个电缆调制解调器可以可操作用于在一个或多个共享接入信道上经由一个或多个光纤节点(例如光纤节点420a)来与一个或多个CMTS中的一个或多个发射机(例如402)和/或接收机(例如404)通信。
在电缆网络部分400的具体示例实施例中,服务群组432中的一个或多个电缆调制解调器(例如,电缆调制解调器CM1 432a)可以可操作用于在下游信道D1、D2、D3和D4中的一个或多个上接收通信。在至少一个实施例中,服务群组432中的一个或多个CM(例如电缆调制解调器432a)可以能够在除了D1、D2、D3和D4中以外的下游信道上接收通信,但是可以基于特定电缆网络和/或电缆调制解调器配置被限制于信道D1、D2、D3和D4中的一个或多个。
在电缆网络部分400的具体示例实施例中,服务群组432中的一个或多个CM(例如电缆调制解调器432a)可以可操作用于在上游信道U1和U2中的一个或多个上发送通信。在至少一个实施例中,服务群组432中的一个或多个CM(例如电缆调制解调器432a)可以能够在除了U1和U2以外的上游信道上发送通信,但是可以基于特定电缆网络和/或电缆调制解调器配置被限制于信道U1和U2中的一个或多个。
在至少一个实施例中,与服务群组432中的一个或多个CM相关联的一个或多个下游服务流可以与一个或多个绑定群组相关联。与服务群组432中的CM相关联的一个或多个绑定群组可以包括信道D1、D2、D3和D4中的一个或多个。根据不同的实施例,与服务群组432中的CM相关联的一个或多个上游服务流可以与一个或多个绑定群组相关联。与服务群组432中的CM相关联的一个或多个绑定群组可以与信道U1和U2中的一个或多个相关联。
在434处,根据具体实施例的电缆调制解调器的群组被图示出。在电缆网络部分400的具体示例实施例中,电缆调制解调器的群组434表示服务群组。
根据各个实施例,服务群组434中的一个或多个电缆调制解调器可以可操作用于在一个或多个共享接入信道上经由一个或多个光纤节点(例如光纤节点420b)来与一个或多个CMTS中的一个或多个发射机(例如402)和/或接收机(例如404)通信。
在电缆网络部分400的具体示例实施例中,服务群组434中的一个或多个电缆调制解调器(例如电缆调制解调器CM1 434a)可以可操作用于在下游信道D1、D2、D5和D6中的一个或多个上接收通信。在至少一个实施例中,服务群组434中的一个或多个电缆调制解调器(例如电缆调制解调器CM1 434a)可以能够在除了D1、D2、D5和D6以外的下游信道上接收通信,但是可以基于特定电缆网络和/或电缆调制解调器配置被限制于信道D1、D2、D5和D6中的一个或多个。
在电缆网络部分400的具体示例实施例中,服务群组434中的一个或多个电缆调制解调器(例如电缆调制解调器CM1 434a)可以可操作用于在上游信道U3、U4、U5和U6中的一个或多个上发送通信。在至少一个实施例中,服务群组434中的一个或多个电缆调制解调器(例如电缆调制解调器CM1 434a)可以能够在除了U3、U4、U5和U6以外的上游信道上发送通信,但是可以基于特定电缆网络和/或电缆调制解调器配置被限制于信道U3、U4、U5和U6中的一个或多个。
在至少一个实施例中,与服务群组434中的一个或多个CM相关联的一个或多个下游服务流可以与一个或多个绑定群组相关联。与服务群组434中的CM相关联的一个或多个绑定群组可以包括信道D1、D2、D5和D6中的一个或多个。根据不同的实施例,与服务群组434中的CM相关联的一个或多个上游服务流可以与一个或多个绑定群组相关联。与服务群组432中的CM相关联的一个或多个绑定群组可以与信道U3、U4、U5和U6中的一个或多个相关联。
在436处,根据具体实施例的电缆调制解调器的群组被图示出。在电缆网络部分400的具体示例实施例中,电缆调制解调器的群组436表示服务群组。
根据各个实施例,服务群组436中的一个或多个电缆调制解调器可以可操作用于在一个或多个共享接入信道上经由一个或多个光纤节点(例如光纤节点420b)来与一个或多个CMTS中的一个或多个发射机(例如402)和/或接收机(例如404)通信。
在电缆网络部分400的具体示例实施例中,服务群组436中的一个或多个电缆调制解调器(例如电缆调制解调器CM1 436a)可以可操作用于在下游信道D1和D2中的一个或多个上接收通信。在至少一个实施例中,服务群组436中的一个或多个电缆调制解调器(例如电缆调制解调器CM1436a)可以能够在除了D1和D2以外的下游信道上接收通信,但是可以基于特定电缆网络和/或电缆调制解调器配置被限制于信道D1和D2中的一个或多个。
在电缆网络部分400的具体示例实施例中,服务群组436中的一个或多个电缆调制解调器(例如电缆调制解调器CM1 436a)可以可操作用于在上游信道U3、U4、U5和U6中的一个或多个上发送通信。在至少一个实施例中,服务群组436中的一个或多个CM(例如电缆调制解调器CM1436a)可以能够在除了U3、U4、U5和U6以外的上游信道上发送通信,但是可以基于特定电缆网络和/或电缆调制解调器配置被限制于信道U3、U4、U5和U6中的一个或多个。
在至少一个实施例中,与服务群组436中的一个或多个CM相关联的一个或多个下游服务流可以与一个或多个绑定群组相关联。与服务群组436中的CM相关联的一个或多个绑定群组可以包括信道D1和D2中的一个或多个。根据不同的实施例,与服务群组436中的CM相关联的一个或多个上游服务流可以与一个或多个绑定群组相关联。与服务群组436中的CM相关联的一个或多个绑定群组可以与信道U3、U4、U5和U6中的一个或多个相关联。
图5图示出根据具体示例实施例配置的电缆网络部分的配置图450。在电缆网络部分450的具体示例实施例中,每个绑定群组BG表示可操作用于递送与和该绑定群组BG相关联的一个或多个服务流的一个或多个QAM的群组。例如,具体示例电缆网络部分450中第一绑定群组与第一QAM之间的连接指示在由配置图450表示的电缆网络部分的具体示例实施例中,第一QAM可操作用于递送与和第一绑定群组BG相关联的一个或多个服务流相关联的信息。
在由电缆网络配置图450表示的电缆网络部分的具体示例实施例中,绑定群组BG(1)462与QAM(1)472和QAM(2)474相关联。在由电缆网络配置图450表示的电缆网络部分的具体示例实施例中,绑定群组BG(2)464与QAM(2)472、QAM(2)474和QAM(4)478相关联。在由电缆网络配置图450表示的电缆网络部分的具体示例实施例中,绑定群组BG(3)466与QAM(3)476和QAM(4)478相关联。在不同实施例(未示出)中,不同的绑定群组可以与不同QAM相关联。
图6示出根据具体实施例的电缆调制解调器终端系统(CMTS)60的具体实施例的框图。在至少一个实施例中,CMTS 60可以包括至少一个分组路由选择引擎(“PRE”),其在此也被称为“路由选择引擎”。在可替换实施例中,CMTS可以包括多个分组路由选择引擎(“PRE”)。
一般,至少在此所描述的部分不同技术可以被实现在软件和/或硬件上。例如,它们可以被实现在操作系统内核中、单独的用户处理中、绑定到网络应用程序中的软件库包(library package)中,专门构建的机器上,或网络接口卡上。在具体实施例中,至少在此所描述的一些技术可以经由诸如操作系统的软件或在操作系统上运行的应用程序中实现。
在此所描述的不同技术的软件或软件/硬件混合实现可以被实现在通过存储在存储器中的计算机程序有选择地激活或重配置的通用可编程机器上。这样的可编程机器可以是被设计为应对网络流量的网络设备,例如路由器或交换机。这样的网络设备可以具有多个网络接口,例如包括帧中继和ISDN接口。这样的网络设备的具体示例包括路由器和交换机,例如,在一个实施例中,CMTS 60被使用专门配置的路由器或服务器来实现,例如可从加利福尼亚圣何塞的思科系统公司获得的被专门配置的路由器模型1600、2500、2600、3600、4500、4700、7200、7500和12000。用于这些机器中的某些机器的一般体系架构将从以下给出的描述中显现。在其它实施例中,不同的技术可被实现在诸如个人计算机或工作站之类的通用网络主机机器上。此外,至少在此所描述的一些特征可以被至少部分地实现在用于玩了过设备或通用计算设备的卡(例如接口卡)上。
参考图6的示例,CMTS 60可以包括主中央处理单元(CPU)62、接口68和至少一个总线67(例如PCI总线)。当在合适的软件或固件的控制下时,CPU 62可以负责实现与希望的网络设备的功能相关联的具体功能。例如,CPU 62可以负责分析分组、封装分组、向合适的网络设备转发分组、计算插入速率估计和/或希望的插入间隔值、辅助电缆调制解调器网络开始(sign-on)活动等。在一个实施例中,CPU 62可以在包括操作系统的软件和任意合适的应用程序软件的控制下,完成至少一部分这样的功能。
CPU 62可以包括一个或多个处理器63,诸如来自摩托罗拉、因特尔系列微处理器和/或MIPS系列微处理器的处理器。在可替换实施例中,处理器63可以被实现为专门设计的用于控制CMTS的操作的硬件。在具体实施例中,存储器61(诸如非易失性RAM和/或ROM)也形成CPU 62一部分。然而,存在存储器可以耦接到系统的许多不同方式。存储器块61可以用于多种目的,诸如例如缓存和/或尺寸数据、指令编程等。
接口68一般作为接口卡(有时称为“线路卡”)提供。一般它们控制数据分组在网络上的发送和接收并且有时支持与CMTS 60一起使用的其它外围设备。可以提供的接口是以太网接口、基带接口、背板接口、帧中继接口、电缆接口、DSL接口、令牌环接口等。另外,还可以提供各种甚高速接口,诸如快速以太网接口、吉比特以太网接口、ATM接口、HSSI接口、POS接口、FDDI接口等。一般,这些接口可以包括适合于与合适的介质通信的端口。在一些情况中,它们也可以包括独立的处理器,并且在一些实例中,可以包括易失性RAM。独立的处理器可以控制通信密集任务,诸如分组交换、介质控制和管理等。通过提供单独的用于通信密集任务的处理器,这些接口允许主微处理器62有效地执行其他功能,诸如,例如路由选择计算、网络诊断、安全性功能等等。
CMTS 60也可以包括用于实现与流量整形分析和/或流量整形调节有关的操作的合适的硬件和/或硬件与软件。例如,CMTS 60可以包括用于实现与流量整形分析和/或流量整形调节有关的不同数据结构的合适的硬件和/或硬件与软件。在至少一个实施例中,至少一个数据结构可以可操作用于跟踪与为一个或多个绑定群组和/或信道上的传输而调度的数据的数量有关的信息。根据不同的实施例,CMTS 60可以包括合适的硬件和/或硬件与软件,其用于增大或减小可用于递送与一个或多个服务流(例如与绑定群组相关联的一个或多个服务流)相关联的数据的带宽(与一个或多个QAM相关联的带宽)。
尽管图6中示出的系统图示出CMTS设备的一个示例,而绝不是可以用于实现在此所描述的技术和/或特征中的一个或多个的唯一设备体系架构。例如,可以使用具有应对通信以及路由选择计算等的体系架构。此外,其它类型的接口和介质也可以与网络设备一起使用。
如图6的示例中所述,CMTS可以采用一个或多个存储器和/或存储模块(诸如,例如存储器块65),它们可以可操作用于存储数据、用于通用网络操作的程序指令和/或与电缆调制解调器分类的功能性和/或在此所描述的其它CM开始活动有关的其它信息。程序指令例如可以指定操作系统和一个或多个应用程序。这样的一个或多个存储器也可以被配置为存储在此所描述的数据结构和/或其它具体的非程序信息。在至少一个实施例中,(一个或多个)存储模块可以包括非易失性和易失性存储器,诸如,例如随机存取存储器(例如同步动态随机存取存储器(SDRAM))等等。
由于这样的信息和程序指令可以被用来实现在此所描述的系统和方法,所以各个方面针对包括用于执行在此所描述的各个操作的程序指令、状态信息等的机器可读存储介质。机器可读存储介质的示例包括但不限于:磁介质,诸如例如硬盘、柔性盘、和磁带;光介质,诸如例如CD-ROM盘;磁光介质,诸如例如软光盘;以及被专门配置为存储和执行程序指令的硬件设备,诸如,例如只读存储设备(ROM)和随机存取存储器(RAM)。程序指令的示例包括以下两者:诸如例如由编译器产生的机器代码,和包含可以由计算机使用解释器执行的较高级代码的文件。
本领域技术人员将明白,在该语境中以及在此所描述的其它语境中可以使用例如多个处理器、多种存储格式和/或多个系统控制器。程序指令可以例如控制操作系统和/或一个或多个应用程序的操作。一个或多个存储器也可以被配置为存储在此所描述的数据结构、插入间隔表和/或其它具体的非程序信息。
由于这样的信息和程序指令可被用来实现在此所描述的系统和/或方法,所以机器可读存储介质(例如其包括程序指令、状态信息等)可以用于执行在此所描述的各种操作。机器可读存储介质的示例包括但不限于:磁介质,诸如例如硬盘、柔性盘、和磁带;光介质,诸如例如CD-ROM盘;磁光介质,诸如例如软光盘;以及被专门配置为存储和执行程序指令的硬件设备,诸如,例如只读存储设备(ROM)和随机存取存储器(RAM)。程序指令的示例包括以下两者:诸如例如由编译器产生的机器代码,和包含可以由计算机使用解释器执行的较高级代码的文件。
根据不同的实施例,路由选择引擎中的一个或多个可以被配置为与多个不同线路卡通信(诸如在例如图7中图示的线路卡)。根据具体实施例,线路卡可以可以包括已被特别配置为执行特定功能的不同类型的线路卡。例如,在至少一个实施例中,一些线路卡可以被实现为已被配置或设计用于在电缆网络中使用的射频(RF)线路卡。另外,一些线路卡可以被实现为网络接口卡,其已被配置或设计为与不同类型的外部网络(例如WAN、LAN等)相接口,其中这些外部网络利用不同类型的通信协议(例如,以太网、帧中继、ATM、TCP/IP等)。例如,在至少一个实施例中,一个或多个线路卡可以可操作用于经由例如光纤、微波链路、卫星链路和/或通过各种介质来与外部数据源通信。数据网络接口可以包括用于与各种网络接口的硬件和软件。根据各个实施例,数据网络接口可以被实现在作为分组交换网络的传统路由器的一部分的线路卡上。使用这种类型的配置,CMTS可以能够使用例如网络层软件来向数据网络接口发送IP分组和/或从其接收IP分组。
根据具体实施例,与获取用于电缆调制解调器的IP地址相关联的操作可以通过在CMTS处的合适的网络层软件来实现。这例如可以涉及CMTS经由数据网络接口来与DHCP服务器(为示出)通信。
在至少一个实施例中,至少一部分线路卡可以包括用于提供主机线路卡、其它线路卡和/或(一个或多个)路由选择引擎之间的合适接口的相应接口电路。根据具体实施例,接口电路可以可操作来用作转换器,其将在线路卡处接收的数据的传统格式转换为用于从线路卡传输到合适的(一个或多个)路由选择引擎、(一个或多个)线路卡和/或其它网络设备的适当协议格式。
至少一些CMTS(或头端系统)实施例可以被实现在各种通用CMTS上。在具体实施例中,系统可以是专门配置的CMTS,诸如例如可从加利福尼亚圣何塞的思科系统公司获得的uBR-7200和uBR-10012系列的CMTS中的被专门配置的模型。
尽管图6中示出的系统表示一个具体CMTS体系架构,但是其绝对不是可以在其上实现实施例的唯一CMTS体系架构。例如,其它类型的接口和介质也可以与CMTS一起使用。
图7示出根据具体实施例的CMTS线路卡700的具体实施例。根据具体实施例,线路卡700可以被配置或设计为实现DOCSIS功能性的选定方面,诸如例如DOCSIS MAC功能性和/或传统上在CMTS处实现的其它功能性。
在如图7中所示的具体实施例中,线路卡700可以可操作用于提供若干网络层上的功能,包括物理层732和介质访问控制(MAC)层730。一般,物理层负责在电缆上接收和发送信号。物理层的硬件部分可以包括一个或多个下游调制器和发射机706和/或一个或多个上游解调器和接收机714。物理层也包括用于驱动物理层的硬件组件的软件786。类似地,在某些实施例中,电缆网络上的一个或多个电缆调制解调器可以包括一个或多个下游解调器和接收机和/或一个或多个上游调制器和发射机。
经由光纤节点到达的上游光学数据信号(例如,表示一个或多个分组)可以被转换为电信号,并且随后被解调器/接收机714解调。解调后的信息随后被传递给MAC层块730。
MAC层730的一个目的是利用MAC报头封装下游分组并且从上游分组解除MAC报头的封装。在至少一个实施例中,封装和解封装如上述用于数据和/或其它信息的传输的DOCSIS标准所指示的那样进行。MAC报头包括到具体调制解调器的地址(如果是下游发送的话)和/或到CMTS的地址(如果是上游发送的话)。注意,电缆调制解调器也可以包括MAC寻址组件。例如,在电缆调制解调器的一个实施例中,这些组件利用包含CMTS的MAC地址的报头来封装上游数据。
MAC层730包括MAC硬件部分734和MAC软件部分784。MAC层软件部分可以包括与DOCSIS MAC功能性有关的软件等。MAC层硬件和软件部分一起操作来提供MAC功能性,诸如,例如DOCSIS MAC功能性。在一个实施例中,MAC控制器734可以专用于执行一些MAC功能,并且可以与处理器755不同。
在一个实施例中,由MAC层块730处理的上游信息可以被转发给接口电路702。如前所述,接口电路702包括合适的硬件和/或硬件与软件,其用于将在线路卡处接收的数据格式转换成用于从线路卡发送到其它合适设备、组件和/或系统的适当协议格式。
在一个实施例中,当在接口电路702处从路由引擎接收分组时,该分组可以被传递给MAC层730。MAC层730可以经由单向通信介质向下游调制器和发射机706发送信息。下游调制器和发射机706可以可操作用于取得数据结构中的数据(或其它信息)并使用例如QAM64调制来将其转化成下游载波上的调制后的下游帧,诸如例如MPEG和/或ATM帧。也可以使用其它调制方法,诸如例如QAM256调制、CDMA(码分多址)、OFDM(正交频分复用)、FSK(频移键控)等。返回的数据同样使用例QAM 16和/或QSPK被调制。根据具体实施例,调制后的数据从IF电信号被使用一个或多个电信号变换器(未示出)变换成RF电信号(或反之)。
如图7中所示,线路卡700包括中央硬件块750,其包括一个或多个处理器755和存储器757。这些硬件组件与软件以及线路卡内各层的其它硬件部分交互。它们为大部分软件提供通用计算能力。存储器757例如可以包括I/O存储器(例如缓冲器)、程序存储器、共享存储器等。也能够与实现一个或多个实施例的一个或多个数据结构可以驻留在这样的存储器中。在至少一个实施例中,软件实体784、786可以被实现为在硬件750上运行的网络操作系统的一部分。至少一部分在此所描述的接口功能性可被以软件实现,作为操作系统的一部分。在图7的示例中,这样的软件可以是MAC层软件784的一部分,和/或可以与其紧密关联。当然,至少一部分在此所描述的接口逻辑可以驻留在硬件、软件或两者的组合中。
根据具体实施例,至少通常被CMTS在登记和预登记期间采用的一部分可以在线路卡700的MAC层处和/或在CMTS 200的其它部分处被执行。
根据具体实施例,可以由CMTS(例如图6)、线路卡(例如图7)和/或其选定组件执行的至少部分在此所述的功能可以被实现在集中式CMTS系统(例如驻留在电缆网络的头端联合体处)中和/或可以被实现在一个或多个分布式CMTS(DCMTS)(例如驻留在一个或多个光纤节点处)处。
一个或多个实施例可被实现在任意计算机网络中,其中计算机网络具有用于利用中央终端系统(例如头端)来调度用于一个或多个返回(或上游)信道上的远程台站和/或节点的时隙的标准化协议。在无线网络中,该中央终端系统可以称为头端和/或无线基站。在卫星网络中,该中央终端系统可以称为主控制台站。
图8A示出电缆网络800的一部分的具体示例实施例的框图。如图8A中所示,网络部分800包括一个或多个QAM 840a-g,其被配置为传送与一个或多个流量部分801a-f相关联的流量。网络部分800还包括一个或多个绑定群组(例如绑定群组BG(1)812、BG(2)814、BG(3)816)),每一个绑定群组包括一个或多个信道(例如,QAM)。如图8A中所示,网络部分800被配置为使得与各个流量部分相关联的流量可以经由与各个绑定群组相关联的一个或多个QAM被传送。
如图8A的示例中所示,网络部分800包括一个或多个流量部分801a-f。每个(或选定的)流量部分可以与用于传送选定流量的相应类型的服务流相关联。例如,第一流量部分801a可以与第一类型的服务流相关联,第一类型的服务流与第一类型的流量(例如VOIP流量)相关联。第二流量部分可以与第二类型的服务流相关联,第二类型的服务流与第二类型的流量(例如因特网流量)相关联。第三流量部分801c可以与第三类型的服务流相关联,第三类型的服务流可以与第三类型的流量(例如VoD流量)相关联。在各个实施例中,各种流量部分可以与各种类型的服务流相关联。
在至少一个实施例中,电缆调制解调器可以与一个或多个服务流相关联。根据一些实施例,不同的服务流可以用来表征在一个或多个网络实体(例如,CMTS、CM、设备、组件、网络节点等)之间传送的(一个或多个)选定上游和/或下游数据流。每个(或选定的)服务流可以与和QoS有关的一个或多个属性或参数(例如最小带宽速率、最大带宽速率等)相关联。
根据具体实施例的通信信道(在此称为“QAM”)被图示在840a处。在图8A中示出的网络部分800的具体实施例中,群组840中的QAM是可操作用于从一个或多个CMTS向一个或多个电缆调制解调器传送数据的下游QAM。在不同实施例(未示出)中,可以使用从一个或多个电缆调制解调器向一个或多个CMTS传送数据的上游信道。
如图8A的示例中所示,网络部分800包括一个或多个绑定群组(例如812、814、816)。根据不同的实施例,绑定群组表示与一个或多个服务流相关联的数据可以在其上被传输的QAM的群组。例如,在具体示例实施例网络部分800中,绑定群组BG(1)812包括QAM(1)和QAM(2),它们可被用来传送和与流量部分801a和801b相关联的服务流相关联的流量。绑定群组BG(2)814包括QAM(2)、QAM(3)、QAM(4)和QAM(5),它们可以被用来传送和与流量部分801c和801d相关联的服务流相关联的流量。绑定群组BG(3)816包括QAM(4)、QAM(5)、QAM(6)和QAM(7),它们可被用来传送和与流量部分801e and 801f相关联的服务流相关联的流量。
在至少一个实施例中,如图8A中所示,与具体流量流相关联的流量可以被调度以用于在跨越多个QAM的绑定群组上传输。例如,在网络部分800的具体示例实施例中,被调度以用于绑定群组BG(1)上的传输的流量可以被调度以用于在QAM(1)和QAM(2)中任一者上传输。被调度以用于绑定群组BG(2)上传输的流量可以被调度以用于在QAM(2)、QAM(3)、QAM(4)和QAM(5)中任一者上传输。被调度以用于在绑定群组BG(3)上传输的流量可以被调度以用于在QAM(4)、QAM(5)、QAM(6)和QAM(7)中任一者上传输。在至少一个实施例中,一个或多个QAM可以被多个绑定群组共享。例如,在网络部分800的具体示例实施例中,QAM(2)与绑定群组BG(1)和BG(2)相关联,并且QAM(4)和QAM(5)各自与绑定群组BG(2)和BG(3)相关联。如上所述,这样的绑定群组和/或信道的重复关联使得带有QoS保证的流量调度非常复杂并且现有流量调度技术不能与在根据DOCSIS 3.0配置的电缆网络上根据QoS保证来调度流量兼容。
如图8A的示例实施例中,网络部分800可以包括分组调度器/发射机820,其例如可被配置有必要的硬件和/或硬件与软件来对分组进行调度以用于经由一个或多个QAM向一个或多个电缆调制解调器发送。在至少一个实施例中,可以在分组调度器/发射机820处例如使用一种或多种流量调度技术(诸如例如最短队列优先(SQF)、加权公平排队(WFQ)等)对分组进行调度以用于发送。
在一个或多个实施例中,分组调度器/发射机820可以使用以硬件(诸如例如与网络处理器相关联的硬件)和/或硬件与软件的组合(诸如例如由一个或多个处理器实现的可执行代码)实现的一种或多种技术来对分组进行调度以用于传送。
在至少一个实施例中,分组调度器/发射机820也可以可操作用于执行与负载平衡和/或流量整形有关的一个或多个操作。根据不同实施例,分组调度器/发射机820可以不能够执行与负载平衡和/或流量整形有关的一个或多个操作。在至少一个实施例中,可以希望以使得分组调度器/发射机820能够不进行与负载平衡和/或流量整形有关的一个或多个操作的情况下调度用于发送的流量的方式,来向分组调度器/发射机820传送流量。
图8B示出电缆网络部分850的具体示例实施例的框图。
如图8B中所示,网络部分850包括至少一个流量调度器880和至少一个流量整形管理器890。网络部分850还包括一个或多个绑定群组(例如绑定群组BG(1)860和BG(2)870)。如上所述,各个绑定群组可以包括与一个或多个服务流(例如852a、852b、852c、854a、854b等)可以被调度以在其上传送的一个或多个信道。例如,来自服务流流1 852a、服务流流2 852b和服务流流3 852c的流量可以被调度以用于在绑定群组BG(1)860上传输。此外,来自服务流流4 854a a和服务流流5 854b的流量可以被调度以用于在绑定群组BG(1)870上传输。
在图8B的具体示例实施例中,网络部分850包括调度器880。在一些实施例中,调度器880可以执行与相对于图8A中的分组调度器/发射机820所描述的功能基本类似的功能。
在图8B的具体示例实施例中,网络部分850包括流量整形管理器890。根据各个实施例,流量整形管理器890可以包括各种类型的硬件和/或软件组件,诸如例如以下组件(或其组合)的一个或多个:
·网络处理器或分组处理器(例如CPP)
·CMTS和/或线路卡中执行的软件
·等等
在至少一个实施例中,流量整形管理器890可被配置有合适的硬件和/或硬件与软件,其用于实现与流量整形分析和/或流量整形调节有关的一个或多个操作(诸如在此所描述的那些)。例如,流量整形管理器890可以包括合适的硬件和/或硬件与软件,其用于实现和/或填充与流量整形分析和/或流量整形调节有关的不同数据结构。在至少一个实施例中,至少一个数据结构可以可操作用于跟踪与被调度以用于经由一个或多个绑定群组和/或信道(例如在一个或多个事件间隔上)传输的数据的数量有关的信息。
在至少一个实施例中,流量整形管理器890可以被配置有适合于向与给定绑定群组(例如BG(1)860)分配或指派(例如为了流量整形目的)与给定服务流(例如流1 852a)有关的选定分组的硬件和/或硬件与软件。在一些实施例中,流量整形管理器890可以可操作用于实现与在此所描述的流量整形技术的一种或多种技术有关的各种功能。
在一些实施例中,流量整形管理器890的输入可以包括将被调度以用于电缆网络的CMTS和一个或多个CM之间的通信的下游或上游流量。在一些实施例中,流量整形管理器890可以被配置或设计为生成各种类型的输出信息和/或控制信号,这些信息和/或信号例如可以被提供给CMTS(和/或电缆调制解调器)的(一个或多个)选定组件,这些选定组件例如可以被用于对与一个或多个绑定群组和/或服务流相关联的流量进行整形。
在至少一个实施例中,绑定群组可以被表示为带宽受限隧道(“BLT”)(例如CPP中的调度器等等)。例如,在一个实施例中,属于绑定群组的服务流中的所有(或选定的)服务流可以作为队列条目被映射到该BLT。由于绑定群组的有效带宽可能不是确定的,因此其可以用相对流量需求来确定。在一个实施例中,绑定群组的输出可以被馈送至流量调度器(诸如例如实现SQF调度算法的Jib)。
在至少一个实施例中,绑定群组调度器的整形率(或有效带宽)可以基于该绑定群组上的合计流量需求被动态调节。绑定群组中的所有(或选定的)绑定群组上的进入流量可以被持续监视。
基于绑定群组中的所有(或选定的)绑定群组上的进入流量的测得速率,后台任务(例如与流量整形管理器890相关联)周期性地为每个绑定群组计算新的整形率。根据一个实施例,假定绑定群组的带宽以带宽调节的时间尺度缓慢改变,动态调节后的绑定群组带宽可结合SQF(例如在MAC层处理器中)被利用来确保QAM带宽被有效利用。如果绑定群组可以被高度聚合和/或速率调节可以被相对经常地完成,则该假定是合理的。以下将讨论这两个方面。
在与DOCSIS 3.0兼容的电缆网络中,可以预见电缆运营商可以能够在单个绑定群组上部署几百用户。这样单个绑定群组上的平均流量大小可以是非常稳定的。对于接近1秒的带宽更新速率,该方案可以给出对带宽的合理利用。
根据不同实施例,这样的方案的实现可以涉及若干组件,诸如例如:(1)策略进入流量大小,和/或(2)周期性地调节所分配的带宽等。例如,在至少一个实施例中,可以提供基于流量需求的带宽调节算法,其被配置或设计为计算总QAM带宽和/或保持跟踪绑定群组到QAM关联。根据各个实施例,这样的提议的方案/算法可以被配置或设计为实现以下考虑(或其组合)的一个或多个:
·每个QAM可以优选地向每个绑定群组(该QAM是这每个绑定群组的成员)分配器总带宽中的某一分数。这些分数中的所有(或选定的)分数的加和优选相加达到总QAM带宽(例如,带宽分配可以是“可行的”)。在一个实施例中,该分配可以是从其可能未被明确配置的方面来看是合乎逻辑的。在一个实施例中,调度算法(例如SQF)可被提供来在不同QAM之间分发进入的“可行”流量。
·绑定群组的有效整形带宽可以与被和其相关联的QAM中的所有(或选定的)QAM贡献的带宽分数的加和有关。
·绑定群组中的一些绑定群组可以具有具备非零最小保留速率的服务流。在一些实施例中,用于绑定群组的分配带宽可以优选地大于这些流中的所有(或选定的)流的最小速率的总和(在此称为绑定群组最小速率)。
·在绝大多数或所有绑定群组没有被拥塞的情形下,超额带宽可以优选在这些绑定群组中的所有(或选定的)绑定群组之间被公平地分发、根据不同实施例,各种类型的策略、参数、标准和/或算法可以被用于实现和/或监管超额带宽的分发的公平性,诸如例如以下策略、参数、标准和/或算法(或其组合)的一个或多个:在绑定群组之间均等地分发超额带宽,基于绑定群组的需求权重来分发带宽,等等。
·当绑定群组被拥塞时,最小速率保证可以被预留。在一个实施例中,这例如通过在将带宽分配给超额速率流量之前将其给与最小速率流量来实现。
·在至少一个实施例中,与流量整形和/或流量调度调节有关的各种操作可以针对每个绑定群组被频繁地和/或周期性地启动(例如,以大约每0.5-2秒一次的数量级)。因此,在至少一个实施例中,希望流量整形和/或流量调度算法不是非常复杂或计算密集的。
在尝试满足以上考虑的每个(或选定的)考虑时,将认识到,带宽分配的计算可能不是微不足道的运算。在一个实施例中,至少部分运算可以由控制平面CPU(例如在CPP外面)执行。然而,送出用于每个绑定群组的统计数据和/或接收和/或处理新速率值可能涉及大量IPC消息。因此,在至少一个实施例中,优选在CPP本身内执行该算法。
此外,在至少一个实施例中,在此所描述或构想的一个或多个流量整形和/或流量调度算法可以优选地计算每个QAM对其每个绑定群组的贡献,并且基于该分配,计算每个绑定群组的整形率作为在与该绑定群组相关联的QAM中的所有(或选定的)QAM上的对应分配的加和。
在至少一个实施例中,在此所描述的一个或多个流量整形过程可以基于在此所描述的体系架构的各个实施例。在至少一个实施例中,一个或多个流量整形过程可以被配置或被设计为计算对可以优选被分配给不同绑定群组(BG)的QAM份额的动态估计。这些动态地计算出或确定的份额随后可以被用来计算绑定群组的共享速率。例如,在一个实施例中,BG的整形率可以简单地是该BG可以使用的QAM中的所有(或选定的)QAM中、被分配给该BG的带宽的加和。
根据一个实施例,一旦整形率被计算出或被确定,则受基于HQF的速率控制的调度器/整形器可以被用来按照需要对绑定群组进行整形(动态地改变速率)。整形器的输出可以被发送给QAM,其中这些分组可以被最短队列优先(SQF)调度器截取。当SQF接收到特定绑定群组的分组时,其将该分组放置在可以服务该分组的绑定群组的QAM中的所有(或选定的)QAM中被最少占据的队列中。在一个实施例中,可以假定每个QAM具有FIFO队列,FIFO队列可被以与QAM的容量相对应的速率排出。
在此所描述的一个方面涉及用于计算QAM对不同BG的动态带宽分配的各种技术。在一个实施例中,一种方法可以基于“SQF竞争”机制,该机制周期性地计算在测量周期上每个BG(假设)会在每个QAM中获得的分配,如果所有(或选定的)QAM的(虚拟)最短FIFO队列的话。该机制随后计算在这样的虚拟SQF策略下可以发送给每个QAM的总字节数,和/或使用这样的“虚拟SQF分配”来引导每个QAM的带宽共享比率的选择,如下所述。
注意(在数据平面中)可以用来调度离开整形器的分组实际的SQF和/或(在控制平面中)可以用来计算整形器的速率的虚拟SQF之间的区别。还要注意在数据平面中仅使用SQF(不进行整形)在超载的情况下并不适合,因为QAM可能潜在地建立大的队列,使得有可能违反共享该QAM的流中的所有(或选定的)流的QOS保证。因此,在此所描述的一个方面涉及用于仿真由假设调度器实现的共享来引导整形率的各种技术。
一种提议的流量整形技术可以被配置或被设计为估计可以优选分配给不同BG的QAM份额(和/或最终地,估计每个BG的整形率)。该流量整形技术可以基于对每个BG会在每个QAM中获得的分配的仿真,优选所有(或选定的)分组在到达时使用用于选择QAM的流量整形策略而被立即发送给一些QAM。
例如,在一个实施例中,可以提供仿真的流量调度器,其已被配置或设计为将到达的分组理解发送至该分组可以使用的QAM中被最少利用的QAM。在这样的假设策略下,对在每个QAM上在这样的假设策略下从每个BG接收的字节数进行计数,和/或使用该计数来计算如下所示的整形率。注意,这样简单的策略在超载的情况下是不适合的,因为QAM可能潜在地建立大的队列,引起不可接受地高的重排序(或次序复原延迟时间)然而,我们使用该假设策略来引导用于BG的希望整形率。
重要的是不要混淆仿真流量调度器(例如用于计算如下所示的整形率的目的)和用于在分组离开BG整形器之后调度对分组进行调度的实际的流量调度器。前者可以用在控制平面中以用于计算“可行”整形率的目的,而后者可以用于数据平面中的实际分组调度。
仿真流量调度器的使用提供用于有效共享比率的计算的有效的和/或相对轻量级的技术。在此所描述的一种或多种流量整形技术可以在宽范围的平台上以相对较小的修改来使用,因为其实质上允许使用带有引导共享速率的分配的控制平面修改的现有调度体系架构。
在此所描述的一种或多种流量整形技术还可以与其它技术一起使用,所述其它技术诸如是新的或出现的流量调度技术,其例如可被配置或设计为使用静态共享速率分配来允许动态改变调度权重。
在一个实施例中,仿真流量调度器下的QAM使用可被用来计算共享速率,其随后可以在调度器中被周期性地重配置。应当注意,在至少一个实施例中,如果进入流量已经是可行的,则整形可以是不需要的。
与流量整形率的计算有关的一个问题或考虑关于确保最小速率保证的问题。例如,如果BG内的服务流(或一组服务流)没有在测量间隔中利用它们的速率,并且/或下一间隔中的整形率可以是基于BG流量的实际的而不是保证的速率,则存在这样的危险:如果下一间隔中流量增大,则整形器可能阻碍BG的组合最小速率保证的实现,并且/或者结果会导致违反承诺服务保证。
因此,在此特别构想到,可能发生一种或多种情形,其中BG被分配测得的速率,即使该速率低于BG的最小带宽保证(和/或因此如果BG的速率增大则有可能违反最小速率承诺);和/或其中,BG被分配至少最小速率,即使最小速率未被利用(和/或因此如果BG的输入速率不增大则有可能遭受不希望的未充分利用)。也可以存在其它情形,其中BG被分配测得速率和/或最小速率之间的某一数量的带宽以允许下一测量间隔中的局部渐增(partial ramp-up)。
此外,可以构想到,在至少一个实施例中,在此所描述的一种或多种流量整形率技术容易使得未充分利用,如果BG的带宽以测量间隔的时间尺度波动大时,甚至如果最小速率保证不可以被配置的话。然而,可以预见,在至少一个实施例中,BG可以被预期执行充分聚合的流量,并且因此BG的需求中的波动会相对较小。此外,特别地构想到,在此所描述的至少一些流量整形技术可以被配置或设计为在大的聚合和/或慢的带宽波动的假设不成立的情况中处理该问题。
参考图9至16来描述与流量整形分析和流量整形调节有关的操作的具体示例实施例。
为了说明的目的,和/或为了避免混淆,以下具体示例实施例将被描述为应用于从一个或多个CMTS在一个或多个下游QAM上发送至一个或多个电缆调制解调器的下游浏量。然而,并不意谓这些具体示例实施例是限制性的,并且将明白,在不同实施例(未示出)中,在此所描述的技术可以被适配以用于与不同类型的流量、不同类型的网络设备/组件和/或不同类型的网络环境结合使用,诸如例如以下(或其组合)的一个或多个:
·上游或下游流量
·不同类型的信道(例如RF信道等)
·不同类型的编码技术(例如正交幅度调制,正交相移键控等)
·等等
图9示出根据具体实施例的流量整形分析过程A 900的示例实施例。在一些实施例中,流量整形分析过程可以为了流量整形的目的而分析网络流量信息。例如,在一些实施例中,流量整形分析过程的输出可以被用来确定用于一个或多个绑定群组的一个或多个整形率。在一些实施例中,例如,流量整形分析过程的输出可别用作与流量整形有关的一个或多个不同过程的输入,所述不同过程诸如是例如将参考图10,描述的流量整形调节过程的示例实施例。
在一个或多个实施例中,流量整形分析过程可以与流量正确管理器设备(诸如例如在图8B的流量整形管理器890)结合使用。在一些实施例中,流量整形分析过程的至少一部分可以由共享接入网络中一个或多个系统、设备和/或控制器(例如电缆网络中的CMTS)发起和/或实现。在一些实施例中,流量整形分析过程的至少一部分可以被网络处理器发起和/或实现,其中该网络处理器已被配置或设计为包括用于实现或发起流量整形分析过程的方面的合适硬件和/或硬件与软件。一个这样的网络处理器可以是例如可从加利福尼亚圣何塞的思科系统公司获得的思科分组处理器(在此称为CPP)。
在一些实施例中,流量整形分析过程中的一个或多个不同线程或实例可以在一个或多个处理器上被并行执行。在至少一个实施例中,流量整形分析过程中的一个或多个不同的线程或实例可被以周期性间隔(例如以规则的周期间隔、以不规则的周期性间隔、在流量整形分析过程的一个或多个不同线程或实例结束时、等等)发起。
在某些实施例中,流量整形分析过程中的一个或多个不同线程或实例可以响应于满足用于触发流量整形分析过程的最小阈值标准的一个或多个条件和/或事件而被发起。例如,流量整形分析过程的一个或多个分离的线程或实例可以响应于接收到分组而被发起。在一个或多个实施例中,流量整形分析过程的一个或多个分离的线程或实例可以针对每个(或选定的)服务流和/或绑定群组而被发起。
在一些实施例中,流量整形分析过程的一个或多个不同线程或实例可以(例如,由网络运营商、由CMTS、由电缆调制解调器、由绑定群组等)按照需求发起。根据各个实施例,流量整形分析过程的一个或多个不同线程或实例可以被手动地、自动地、静态地、动态地、并行地和/或以以上的组合的方式被触发和/或实现。
为了图解的目的,将参考图9通过示例的方式来描述流量整形分析过程的具体示例实施例。
如图9的示例实施例中所示,假定流量整形分析过程在网络处理器处被实现,该网络处理器包括用于流量整形分析的合适硬件和/或硬件与软件。流量整形分析过程的不同实施例(未示出)除了可以包括图9的具体示例实施例中所图示的那些特征或操作以外,还可以包括一个或多个特征或操作。在流量整形分析过程的各个实施例中,图9的具体示例实施例中所图示的一个或多个特征或操作可以不同。在流量整形分析过程的各个实施例中,图9的具体示例实施例中所图示的特征或操作可以被省略。另外,在流量整形分析过程的各个实施例中,图9的具体示例实施例中所图示的特征或操作可以以与所示出的次序不同的次序被执行。
将关于图13A中示出的电缆网络配置1350通过示例的方式来描述流量整形分析过程的具体示例实施例。
图13A示出根据具体实施例配置的电缆网络的一部分的表示。该示例电缆网络配置1300图示出其中每个绑定群组(例如1312、1314、1316)与相应一组QAM相关联的电缆网络的具体示例配置。示例电缆网络配置1300中的“X”指示,在该具体示例实施例中,具体的绑定群组(在此称为BG)被配置为经由一个或多个相关联的QAM的使用来进行通信。
例如,在1300处图示的电缆网络配置的具体示例实施例中,假定绑定群组BG(1)1312包括QAM(1)1302和QAM(2)1304,假定绑定群组BG(2)1314包括QAM(2)1304和QAM(3)1306,,假定绑定群组BG(3)1316包括QAM(3)1306和QAM(4)1308,不同组合的绑定群组可以与不同组合QAM相关联。此外,在至少一个实施例中,基于在1300处图示的电缆网络配置的具体示例实施例,可以假定绑定群组BG(1)1312仅包括由QAM(1)和QAM(2)组成的QAM集合,并且绑定群组BG(2)1314仅包括由QAM(2)和QAM(3)组成的QAM集合,并且绑定群组BG(3)仅包括由QAM(3)和QAM(4)组成的QAM集合。
在在此所描述的示例实施例中,术语“BG(i)”可为参考目的用于指代具体绑定群组,其中“i”是用来指示多个BG中的选定BG的变量。例如,如果i=1,则可以表示与BG(1)相对应的具体绑定群组。在在此所讨论的示例实施例中,术语“QAM(j)”可为参考目的用于指代具体QAM,其中“j”是用来指示多个QAM中的选定QAM的变量。例如,如果j=1,则可以表示与QAM(1)相对应的具体QAM。
返回图9,分组可被接收到902。在至少一个实施例中,分组在共享接入网络的头端中的网络组件(例如CMTS、流量整形管理器设备、网络处理器等)处被接收到。
当分组被接收到时902,接收的分组可以被分析904来判断其是否已被标记为是与已经超过与服务流相关联的最大带宽速率的服务流相关联。在一些实施例中,例如接收的分组可被与和电缆调制解调器相关联的第一服务流相关联。
如上所示,根据各个实施例,第一电缆调制解调器可以与一个多个服务流相关联。在至少一个实施例中,每个(或选定的)服务流可以与和服务质量有关的一个或多个不同属性(例如最小带宽速率、最大带宽速率等)相关联。在一个或多个实施例中,一个或多个QoS参数可在网络头端和/或集线器中所包括的一个或多个组件(例如CMTS)处被定义和/或确定。在各个实施例中,一个或多个QoS参数可被手动地、自动地、动态地、静态地或以以上的组合的方式被定义和/或确定。根据一些实施例,一个或多个QoS参数可以根据服务提供商与客户之间的协定来定义和/或确定。例如,与电缆网络中的第一客户的服务级别协定(在此称为SLA)可以限定与一种或多种类型的数据流量流相关联的一个或多个QoS参数。在一些实施例中,一个或多个不同客户可以支付不同的货币量来交换不同类型和/或级别的服务。例如,第一客户可以比第二客户支付更多货币来交换针对因特网流量的更高最小带宽速率和/或针对VOIP流量的更高的CBR。
在某些实施例中,SLA例如可以定义与第一服务流相关联的最大带宽。根据各个实施例,一个或多个服务流可以以不同方式与最大带宽相关联,这些方式包括但不限于以下方式(或其组合)的一个或多个:
·由设备(例如,CMTS、流量整形管理器等等)向服务流指派最大带宽
·由网络运营商(例如电缆网络的网络运营商等)指派最大带宽
·当服务流被创建时向服务流指派最大带宽(例如,基于CM配置文件,当电缆调制解调器首先登记时,使用CM和CMTS之间的DOCSIS信令(例如在语音呼叫等中),当电缆调制解调器已被登记时,基于带宽容量,等等)。
·等等
根据各个实施例,可以在一个或多个不同网络组件处(诸如例如在CMTS中)判断服务流是否已经超出与该服务流相关联的最大带宽。在一个实施例中,服务流是否已经超出与该服务流相关联的最大带宽例如可以在与分组相关联的服务流已经被识别之后和/或在实现一个或多个流量整形操作之前被判定。
在至少一个实施例中,与服务流相关联的最大带宽值可以由一个或多个设备/系统(例如CMTS、流量整形设备等等)使用各种类型的信息来判定。在一些实施例中,与服务流相关联的实际带宽可以例如通过跟踪在一个或多个指定时间间隔上与给定服务流相关联的分组的数目和大小被确定。有关服务流是否已经超过与该服务流相关联的最大带宽的判断例如通过随后判断实际带宽是否超过最大带宽值来做出。
在一个或多个实施例中,如果做出与服务流相关联的最大带宽已被超过的判定,则状态标记被设置。在一些实施例中,例如该状态标记可以由在其中做出判定的设备来设置。在一些实施例中,状态标记可以包括与接收的分组相关联的一个或多个比特或字节。根据各个实施例,状态标记在接收的分组中的可能位置可以包括但不限于以下位置(或其组合)中的一个或多个:
·一个或多个数据结构
·接收的分组的有效载荷
·与接收的分组相关联的元数据
·等等
在至少一个实施例中,如果判定接收的分组与已经超过与服务流相关联的最大带宽的服务流相关联,则接收的分组可以被忽略(905)。在一些实施例中,如果接收的分组被忽略,则其可以因为通过流量整形分析过程被进一步处理而被忽略和/或被转发到不同的设备或过程以用于进一步处理。在不同实施例中,如果接收的分组被忽略,则其可以被整个丢弃并且不被进一步处理。
在906处,假定接收的分组不与已经超过与服务流相关联的最大带宽的服务流相关联。因此,例如如906处所示,与接收的分组相关联的具体绑定群组(BG(i))可以被识别。根据各个实施例,多种不同技术可被用于识别与接收的分组相关联的具体绑定群组,诸如例如以下技术(或其组合)的一个或多个:
·使用与接收的分组相关联的IP地址(例如目的地IP地址等)
·使用与接收的分组相关联的信息(例如分组报头中的数据、分组有效载荷中的数据、与分组相关联的元数据等)
·使用一个或多个数据结构中存储的信息
·使用来自网络设备(例如CMTS、流量整形管理设备、存储器等)的一个或多个值
·等等
例如参考图13A的具体示例实施例,如果假定接收的分组与绑定群组2相关联,则BG(2)可以在906处被识别。
如908处所示,与所识别的绑定群组(例如BG(2))相关联的一个或多个QAM的集合可以被识别。例如,再次参考图13A的具体示例实施例,如果假定接收的分组与绑定群组BG(2)相关联,则图9的908处识别的QAM的集合可以对应于QAM(2)1304和QAM(3)1306。类似地,如果判定接收的分组与绑定群组BG(1)相关联,则在图9的908处识别的QAM的集合可以对应于QAM(1)1302和QAM(2)1304。
根据各个实施例,各种技术可以用于识别与给定绑定群组相关联的特定QAM集合。例如,QAM集合可以通过分析配置信息(例如,来自数据结构、来自网络配置等)来识别。
如910处所示,与接收的分组的大小有关的分组大小数据可以被确定。在至少一个实施例中,分组大小可以以比特、字节、千比特、千字节等中的一个或多个来测量。根据不同实施例,分组大小可以包括分组报头数据、有效载荷数据和/或与分组相关联的任何其它数据(或其组合)中的一个或多个的大小。在在此所讨论的具体示例实施例中,假定(例如为了简化和易于说明的目的)接收的分组的大小为“1”(例如,1KB)。然而将明白,在不同实施例中,不同大小的分组可被接收。在一个实施例中,分组大小可以通过通知与例如分组在存储器中的起始和结束为止相关联的一个或多个存储器位置来确定。在一些实施例中,分组大小可以由例如转发实体确定。
将参考图13B至图13H中图示出的流量整形数据结构1350的具体示例实施例通过示例方式来描述流量整形分析过程的具体示例实施例。
图13B至图13H介绍可用于实现在此所描述的(一种或多种)流量整形技术的一个或多个方面的各种类型的数据和/或数据结构。在图13B至图13H的具体示例实施例中,假定电缆网络是根据图13A中示出的电缆网络配置的示例实施例来配置的。经明白,参考图13B至图13H图示和/或描述的数据结构和/或流量整形数据的具体示例实施例已经为了图解和易于说明的目的而被简化了,并且不意谓在任何方面是限制性的。
图13B示出图示出根据具体示例实施例的具体示例流量整形相关数据的流量整形数据结构1350。图13B中示出的具体示例流量整形相关数据可以通过流量整形分析过程的一个或多个线程或实例被填充。流量整形分析过程的一个或多个线程或实例可以使用流量整形相关数据来执行与流量整形分析有关的一个或多个功能。流量整形分析过程的可替换实施例可以使用不同类型的流量整形数据结构和/或不同类型的数据来实现,和/或可以在不要求使用一个或多个流量整形相关数据结构的情况下实现。
在图13B的具体示例实施例中,在行1382处呈现的每个Q(j)值可以对应于与相应QAM(j)相关联的特定Q(j)值。在至少一个实施例中,Q(j)可以表示信道流量数据。例如,在一些实施例中,信道流量数据Q(j)可以表示例如可被调度以用于(例如在一个或多个时间间隔期间)在特定QAM(j)上传输的流量的合计值。例如,在图13B至图13H的具体示例实施例中,假定信道流量数据Q(j)用数字值表示,其中给定的Q(j)值是代表可以被调度以用于在给定时间间隔期间在给定信道(例如QAM(j))上传输的所有(或选定的)分组的大小的总和。在不同实施例中,Q(j)可以表示不同数量,诸如例如与被调度来在QAM(j)上发送的分组的大小的合计有关的值。
在其它实施例中,Q(j)相关数据可以代表可用于跨越与一个或多个绑定群组相关联的一个或多个信道执行流量整形的其它信道流量数据。在各个实施例中,信息或分组大小可以根据各种单位来测量或表达,这些单位例如是比特、字节、千比特、千字节、兆比特、兆字节等等。在图13B至图13H的具体示例实施例中,为了图解的目的,将假定信息或分组大小以兆比特测量。然而,在各个实施例中,分组可以具有不同大小(例如40千比特,563千比特等等),可以被接收,并且为了图解的目的而使用1Mbps的分组不应被理解为在任何方面是限制性的。
在至少一个实施例中,图13B至图13H中介绍的不同类型的数据中的一种或多种可以经由一个或多个计数器(例如,仅由硬件和软件的使用实现的虚拟计数器)的使用被实现和/或被存储。例如,根据在此所描述的不同实施例,可以利用以下类型的计数器中的一个或多个:
·每绑定群组的计数器:BG(i),其例如可以表示在绑定群组i)上接收的字节数。
·每QAM的计数器:Q(j),其例如可以表示QAM(j)上潜在地排队的字节数(例如,用于流量整形目的)。
·每绑定群组每QAM的计数器R(i,j),其例如可以表示来自绑定群组BG(i)的在QAM(j)上潜在地排队的字节数(例如用于流量整形目的)。
在至少一个实施例中,当分组到达该系统(和/或在实际队列中排队)时,这些计数器可以被如下更新:
·针对分组在其上被接收的绑定群组BG(i),以分组中的字节数递增计数器BG(i),
·针对该绑定群组是其成员的QAM中的所有(或选定的)QAM来核对每QAM的计数器,和/或选择具有相对最低的Q(j)值的QAM(j)
·针对选定的QAM(j)和绑定群组BG(i)递增R(i,j)
·针对选定的QAM(j)递增Q(j)
在一个实施例中,这些计数器的一个或多个可以在带宽调节之间的测量间隔上被收集,和/或可以用于在此所述的带宽使用估计。
在至少一个实施例中,流量整形分析过程可以优选地计算从每个QAM向每个绑定群组的分配。例如,参考图13B的示例,流量整形分析过程可以被配置或设计为确保QAM带宽约束和/或参数中的所有(或选定的)约束和/或参数可以被满足,同时,与此同时允许不同带宽需求被满足。
用于解决该问题的一种可能的方法是经由线性规划(LP)算法的使用的。用于解决该问题的其它可能的方法可以包括例如广大的LP解算器中可用的方法中的一个或多个(例如,单纯形法等)。尽管不同的解算器在复杂度方面不同,但是一般它们对于在网络处理器(诸如例如CPP)中实现并不是微不足道的。此外,在控制平面CPU中实现这样的求解会涉及重要的CPU能力和/或过多的IPC消息的使用。因此,在至少一个实施例中,希望更简单的解决方案。
返回图9,如在912处所示,一个或多个QAM使用第一组选择标准而从所识别的QAM集合中被选择或识别。例如,在一些实施例中,QAM的选择(例如,在912处)可以是基于关联于与(例如在908处)已被识别为与特定绑定群组相关联的每个QAM的Q(j)数据和/或其它信道流量数据的相对值的。例如,在一些实施例中,(所识别的QAM集合中的)当前具有相对最小数量的调度后的流量的QAM可以被选择。例如,在一个实施例中,(所识别的QAM集合中的)当前具有相对最低或最小的Q(j)值的QAM可以被选择。
然而,将明白,在不同实施例中,可以使用其它类型的选择标准,诸如例如:选择具有相对最高或最大的(一个或多个)Q(j)值的(一个或多个)QAM,等等。在一些实施例中,如果选择标准导致多于一个的QAM被从所识别的QAM集合中被选择(例如,如果两个Q(j)值相等地小),则这些QAM中的具体一个可以使用其它选择机制和/或选择标准被选择,例如,诸如例如随机选择、基于可用信道容量的选择、基于与信道性能历史有关的数据的选择等等。
参考图13B的具体示例实施例通过示例方式,假定QAM(2)和QAM(3)(例如在908处)被识别为与绑定群组BG(2)相关联。因此,在该具体实施例中,假定(在912处)具有与QAM(2)和QAM(3)相对应的相应Q(j)值中的相对最小Q(j)值的QAM被选择。因此,例如,如图13B的示例实施例中所示,与QAM(2)相关联的Q(j)值是Q(2)=24(1382b)并且与QAM(3)相关联的值是Q(3)=23(1382c)。因此,在该具体示例实施例中,QAM(3)可以在912处被选择或识别。在不同示例实施例(未示出)中,如果改为假定QAM(1)和QAM(2)被识别,则因为例如,如图13B的示例实施例中所示,Q(1)=23和Q(2)=24,所以QAM(1)可以被选择或识别成所识别的QAM集合中具有相对最小Q(j)值的QAM。
如914处所示,与在912处被选择的特定QAM(例如QAM(3))相对应的Q(j)值可以使用分组大小数据(例如,在910处被确定)而被自动和/或动态地更新。根据各个实施例,选定的Q(j)值可以根据各种方法(例如,相加、递增等)使用分组大小数据被修改或更新。
例如,在一个实施例中,选定Q(j)值可以通过向其添加分组大小数据而被更新。其一个示例在图13C的1351处被图示出,其中与QAM(3)相对应的Q(3)值(例如“23”)被示出正使用表示接收的分组的大小的分组大小数据(例如“1”兆比特)(例如,在910处确定)被更新。因此,在该具体示例中,Q(3)值可以例如通过向值“23”添加值“1”来实现更新后的Q(3)值“24”而被自动和动态地更新。
如916处所示,一个或多个R(i,j)值可以使用分组大小数据(例如在910处确定)而被自动和/或动态地更新。根据各个实施例,选定R(i,j)值可以根据各种方法(例如,相加、递增等)使用分组大小数据而被修改或更新。
在在此所描述的一个或多个实施例中,表达式R(i,j)可以被用来表示与具体绑定群组(BG(i))和具体QAM(j)有关或相关联的流量数据。在一些实施例中,R(i,j)可以对应于表示与从BG(i)到QAM(j)的流量相关联的速率的流量数据。例如,在图13B的具体示例实施例中,表达式R(1,2)可以被解释为是指与绑定群组BG(1)和QAM(2)相关联的具体流量整形数据,其例如被表示在1362b(图13B)处。类似地,表达式R(2,3)可以被解释为是指与绑定群组BG(2)和QAM(3)相关联的具体流量整形数据,其例如被表示在1364c(图13B)处。
在至少一个实施例中,与给定R(i,j)相关联的流量整形数据可以代表与如下分组有关的流量的合计或累计数量,所述分组是与可以被调度用于(例如在一个或多个时间间隔期间)在选定信道QAM(j)上传输的(例如与选定BG(i)相关联的)一个或多个服务流相关联的分组。例如,在图13B的具体示例实施例中,对应于R(1,2)的流量整形数据值是17(例如如数据部分1362b处所示)。在一个实施例汇总,该值可以被解释为意味着可以被调度用于在QAM(2)上传输的(例如和与关联于绑定群组BG(1)的一个或多个服务流相关联的分组有关的)流量的合计或累计数量是17。类似地,如图13B的示例实施例中所示,对应于R(3,4)的流量整形数据值是20(例如如数据部分1366d处所示),这可以被解释为意味着可以被调度用于在QAM(4)上传输的(例如和与关联于绑定群组BG(3)的一个或多个服务流相关联的分组有关的)流量的合计或累计数量是20。
在其它实施例中,与给定R(i,j)相关联的值和/或其它数据可以表示其它类型的流量整形数据,这些流量整形数据可被与一个或多个流量整形过程和/或操作(诸如在此所描述的那些)结合使用。
返回图9,如之前在916处所述,一个或多个R(i,j)值可以使用分组大小数据(例如在910处被确定)被自动和/或动态地更新。在一个实施例中,具体的R(i,j)值可以通过向其添加分组大小数据被更新。其一个示例在图13D的1364c处被图示出,其中对应于QAM(3)和绑定群组BG(2)的R(2,3)值(例如“22”)被示出正使用表示接收的分组的大小的分组大小数据(例如“1”)(例如在910处确定)被更新。因此,在该特定示例中,R(2,3)值可以例如通过向值“22”添加值“1”来实现更新后的Q(3)值“23”而被自动和动态地更新。
在一个实施例中,具有相对最低计数值的QAM指示最少负载的QAM。这样计算出或确定的R(i,j)值给出,当多个绑定群组可以同时携带流量时,每绑定群组的负载可以大约如何被分发到QAM上。周期性的后台任务(例如流量整形调节过程的一个或多个线程或实例)使用这些值来计算针对绑定群组的带宽分配。注意,在至少一个实施例中,∑j R(i,j)=BG(i)可以对应于所识别的绑定群组BG(i)的进入流量速率。
将明白,在至少一个实施例中,如914处所示的Q(j)值的更新例如可以从流量整形分析过程900中省略和/或可以由不同的处理或过程实现,所述不同的处理或过程例如可以被配置或设计为使用当前的或更新后的与每个相应QAM(j)相关联的R(i,j)值的集合来周期性地和持续地更新(例如,按照需要)被表示在行1382处的Q(j)值。
在一个或多个实施例中,一个或多个Q(j)和/或R(i,j)值可以被重置为默认值。在至少一个实施例中,默认值为0。在不同实施例中,不要求一个或多个Q(j)和/或R(i,j)值被重置为默认值。根据不同实施例,一个或多个Q(j)和/或R(i,j)指可以以周期性的间隔(例如,以规则的周期性间隔,以不规则的周期性间隔、在流量整形分析过程的一个或多个不同线程或实例结束和/或实现时、等等)被重置。根据各个实施例,当满足用于重置Q(j)和/或R(i,j)值的最小阈值标准的事件或条件(例如,预定时间、网络负载条件、信号、分组的接收、操作系统或其它软件的启动和/关闭、网络硬件的初始化等)被检测到时,一个或多个Q(j)和/或R(i,j)值可以被重置。根据各个实施例,一个或多个Q(j)和/或R(i,j)值可以按照需求(例如,通过网络运营商、通过CMTS、通过网络处理器、通过流量整形管理器、通过网络节点、通过电缆调制解调器、通过绑定群组等等)被重置。
图10示出根据具体实施例的流量整形调节过程A 1000的示例实施例。在一些实施例中,流量整形调节过程可以为了流量整形的目的调节一个或多个流量整形参数和/或值。例如,在一些实施例中,流量整形分析过程的输出可以包括与例如每个(或选定的)绑定群组相关联的一个或多个流量整形率和/或其它类型的流量整形数据。根据各个实施例,流量整形调节过程的输入可以包括各种类型的流量整形数据(例如与图9的流量整形分析过程相关联的流量整形数据)和/或其它类型的网络流量信息。例如,在一个实施例中,流量整形调节过程1000可以利用通过流量整形分析过程生成的各种类型的信息或数据和/或利用各种类型的流量整形数据(或其部分),诸如参考图13B至13H所图解和描述的那些。
在至少一个实施例中,流量整形调节过程可以由诸如例如图8B的流量整形管理器890之类的流量整形设备实现和/或结合流量整形设备被利用。在至少一个实施例中,流量整形调节过程1000的至少一部分可以由一个或多个系统、设备和/或控制器(诸如CMTS(例如CMTS 200)(或其组件)、流量整形管理器890等)发起和/或实现。在至少一个实施例中,流量整形调节过程1000的至少一部分可以由网络处理器发起和/或实现,所述网络处理器包括被适当配置的硬件和/或硬件与软件。根据不同实施例,一个这样的网络处理器例如可以是用于实现各种类型的CMTS相关功能性的被特别配置的处理器,诸如例如可从加利福尼亚圣何塞获得的思科分组处理器(CPP)。
将明白,流量整形调节过程1000的一个或多个不同线程或实例可以在一个或多个处理器中被并发实现。另外,在至少一个实施例中,流量整形调节过程1000的一个或多个分离的线程或实例可以与在此所描述的(一个或多个)流量整形分析过程的一个或多个线程或实例被并发地发起和/或执行。
在至少一个实施例中,流量整形调节过程的一个或多个不同线程或实例可以以周期性的间隔(例如,以规则周期性间隔、以不规则的周期性间隔、在流量整形调节过程的一个或多个不同线程或实例结束时、等等)被发起。例如,在一些实施例中,流量整形调节过程的一个或多个不同线程或实例可以以0.5秒和5秒之间的规则周期性间隔(例如每1秒)被发起。根据各个实施例,流量整形调节过程中的一个或多个不同线程或实例可以响应于满足用于触发流量整形调节过程的最小阈值标准的一个或多个条件和/或事件而被发起,这些条件或事件可以包括但不限于以下条件或事件(或其组合)的一个或多个:
·一个或多个时间相关的事件/条件
·与一个或多个流量整形分析过程和/或流量整形调节过程的一个或多个线程或实例的结束和/或发起有关的一个或多个事件/条件
·一个或多个网络负载相关的事件/条件
·与信号(例如由CMTS发送的信号,由流量整形设备发送的信号等等)的接收或检测有关的一个或多个事件/条件
·与(例如,操作系统的、接口的、其它软件等的)软件的启动和/或关闭有关的一个或多个事件/条件
·与硬件(例如CMTS、流量整形设备、网络节点等等)的启动和/或关闭有关的一个或多个事件/条件
·等等
根据不同实施例,流量整形调节过程的一个或多个不同线程或实例可以按照需求(例如由CMTS等)发起。根据不同实施例,流量整形调节过程的一个或多个不同线程或实例可以被手动地、自动地、静态地、动态地、并发地或以以上的组合的方式触发或实现。
在图10的该具体示例实施例中,假定流量整形调节过程1000在网络处理器处被实现,所述网络处理器包括用于实现各种类型的流量整形管理操作的合适硬件和/或硬件与软件,流量整形管理操作诸如是例如路由查找、分组分类、服务流流量速率监视、流量整形分析、流量整形调节、各种类型的流量整形率的计算,等等。流量整形调节过程的不同实施例(未示出)包括除了图10的具体示例实施例中所图示出的特征和操作以外的特征和操作。在流量整形调节过程的不同实施例(未示出)中,除图10的具体示例实施例中所图示出的特征和操作以外的特征和操作可以不同。在流量整形调节过程的不同实施例(未示出)中,图10的具体实施例中所图示出的特征或操作可以被省略。另外,与流量整形调节过程的一个或多个实施例有关的各种动作和/或操作可以以和图10的示例中示出的次序不同的次序被执行。
将参考图13A中介绍的电缆网络配置1300并参考图13E中示出的示例流量整形数据结构1350通过示例方式来描述图10的流量整形调节过程的具体示例实施例。
图13E示出图示出根据具体示例实施例的具体示例流量整形相关数据的流量整形数据结构1350的示图。在至少一个实施例中,图13E中图示出的具体示例流量整形相关数据可以通过流量整形分析过程的一个或多个线程或示例和/或流量整形调节过程的一个或多个线程或实例被填充。流量整形调节过程的一个或多个线程或实例可以使用如图13E中所示的流量整形相关数据来执行与流量整形调节有关的一个或多个功能,诸如例如更新一个或多个流量整形参数。流量整形调节过程的其他实施例可以利用不同类型的流量整形数据,和/或可以在不要求使用流量整形数据结构的情况下被实现。
在图13E的具体示例实施例中,假定电缆网络是根据图13A中介绍的电缆网络配置1300的具体示例实施例来配置的。
如图13E中所示,假定在该具体示例中,各个QAM(例如1352、1354、1356、1358)与相应的Q(j)值相关联,例如如行1382所示的流量整形数据(数字值“23”、“24”、“24”、“20”(例如兆比特))所表示的。例如,在图13E的具体示例实施例中,假定对应于流量整形数据部分1382a的数字值“23”代表可以被调度用于在QAM(1)1352上传输的流量的量。在至少一个实施例中,此流量的量的代表还可以代表可以被调度用于在一个或多个具体时间间隔上在QAM(1)1352上传输的分组中的所有(或选定的)分组的分组大小(例如以比特、字节、千比特、千字节等测得)的加和或合计。类似地,假定对应于流量整形数据部分1382b的数字值“24”代表可以被调度用于在QAM(2)1354上传输的流量的量;对应于流量整形数据部分1382c的数字值“24”代表可以被调度用于在QAM(3)1356上传输的流量的量;并且对应于流量整形数据部分1382d的数字值“20”代表可以被调度用于在QAM(4)1358上传输的流量的量。
如图13E的具体示例实施例中所示,各个QAM(例如1352、1354、1356、1358)可以与相应BWQ(j)值(例如,被表示在行1380处)相关联,BWQ(j)值代表表示每个相应QAM(j)的带宽容量的信道带宽容量数据。根据不同实施例,信道带宽容量数据可以对应于物理的或原始的信道带宽容量(例如信道可以在每调节间隔传输的比特数)。例如,如果调节间隔是1秒并且数据速率是40Mbps,则BWQ(j)可以是40。如果改为调节间隔是2秒并且数据速率是40Mbps,则BWQ(j)可以是80。在至少一个实施例中,每个QAM(或特别指定的QAM)可以具有相同或基本相似的BWQ(j)值。在不同实施例(未示出)中,一个或多个QAM可以具有不同BWQ(j)值。
在在此假定的具体示例实施例中,假定数据速率是40Mbps并且调节间隔是1秒。在这些具体示例实施例中,R(i,j)和Q(j)表示在1秒的相同调节间隔上测得的比特数。对流量数据值和对BWQ(j)应用相同的间隔可以允许计算一个或多个信道带宽容量。
如图13E的1380处所示,每个QAM被假定具有40(例如Mbps)的最大信道带宽容量。根据不同实施例,给定信道的带宽容量可以以兆比特每秒(Mbps)、兆字节每秒、吉比特每秒(Gbps)、吉字节每秒、太比特每秒、太字节每秒等来表述。
回到图10,在1001处,第一QAM(j)可被选择用于流量整形调节处理。根据不同实施例,各种不同类型或标准和/或选择算法可以被用于确定将被选择用于流量整形调节处理的第一和/或下一QAM(j)。例如,在一个实施例中,QAM可以被顺次分析。
在1002处,与选定QAM相关联的Q(j)值可以被识别或确定。在图13E的具体示例实施例中,假定QAM(2)已被选择(例如在1001处)用于流量整形调节处理。因此,使用图13E的数据结构1351中示出的示例数据,假定与当前选定的QAM(2)相关联的Q(j)值被识别/被确定为是Q(2)=24。
在1004处,流量整形差分数据E(j)可以针对选定的QAM被计算或被确定。在至少一个实施例中,流量整形差分数据E(j)可以代表和选定QAM相关联的调节时段上的带宽容量BWQ(j)与和选定QAM相关联的当前Q(j)值之间的差。例如,在一个实施例中,流量整形差分数据E(j)可以表示在考虑了(例如在任意给定间隔期间)已被分配到QAM(j)的流量整形带宽(例如Q(j)值)之后,该特定QAM上可用的剩余可用带宽量。在一些实施例中,流量整形差分数据E(j)可以代表例如这样的值,该值表示带宽容量值(例如BWQ(j))和Q(j)值之间的差和/或与之有关。
首先考虑当没有最小速率可以被定义时的情况(以下可以去除该约束)。在该具体示例中,如果测得的R(i,j)没有使QAM超载(例如,对于QAM(j)中的所有(或选定的)QAM(j),∑i R(i,j)<BWQ(j),其中BWQ(j)是QAM带宽(例如40Mbps)),则R(i,j)可被直接用来定义QAM(j)向BG(i)保证的部分。
该带宽可以基于各个绑定群组的需求、同时考虑其它绑定群组上的负载而被分发。
对于这些未超载条件,超额带宽可以被每QAM地计算或确定为:
E(j)=Q-∑i R(ij)
在图10的具体示例实施例中,假定E(j)值可以根据如下表达式来计算:
E(j)=BWQ(j)-Q(j) (2)
其中变量(j)表示与选定QAM(j)相关联的标识符。
在图13E的具体示例实施例中,假定BWQ(2)=40并且Q(2)=24。因此,在该具体示例中,如在1384b处所示,E(Q(2))可以根据如下表达式来计算:BWQ(2)-Q(2)=40-24=16。
在1006处,与选定QAM相关联的一个或多个绑定群组BG(i)的集合可以被识别。根据不同实施例,诸如例如通过接收和/或读取配置信息(例如一个或多个数据结构中所存储的系统配置信息,等等),各种不同类型或数据和/或其它信息可被用于识别与选定QAM相关联的绑定群组BG(i)的集合。
例如,在本说明性示例中,如图13A中所示,假定电缆网络已经被配置为使得绑定群组BG(1)包括QAM(1)和QAM(2),并且绑定群组BG(2)包括QAM(2)和QAM(3)。因此,基于该具体配置,与选定QAM(2)相关联的绑定群组的集合可以被识别(1006)或被确定为是具有BG(1)和BG(2)的绑定群组集合。
图在1008处所示,针对被识别为与选定QAM相关联的每个BG(i),一个或多个E(i,j)值可以被确定或被计算出。在至少一个实施例中,E(i,j)代表与被识别为与选定QAM相关联的每个BG(i)有关的QAM-绑定群组流量整形差分数据。
在至少一个实施例中,QAM-绑定群组流量整形差分数据E(i,j)可以通过将E(j)大约或精确地除以与QAM(j)相关联的BG(i)的数目而被计算或确定。例如,在一个实施例中,针对给定BG(i)-QAM(j)关联的E(i,j)值可以根据以下表达式来计算:
E(i,j)=E(j)/(与QAM(j)相关联的BG(i)的#) (3)
其中,变量(j)表示与选定QAM(j)相关联的标识符。
在一些实施例中,针对给定BG(i)-QAM(j)关联的E(i,j)值可以根据以下表达式来计算:
E(i,j)=ROUND(E(J)/(与QAM(j)相关联的BG(i)的#) (4)
其中变量(j)表示与选定QAM(j)相关联的标识符,并且其中表达式ROUND(x)表达与x最接近的整数值(例如,向上/向下取整)。
该超额带宽可每QAM地获得,和/或可以在与该QAM相关联的绑定群组中的所有(或选定的)绑定群组之间分发。各种策略可用于在QAM带宽的分别BG分配之间分发超额带宽。例如,一个策略可以是在QAM可以是其成员的绑定群组中的所有(或选定的)绑定群组之间均等地分发超额带宽。可替换地,其它策略可以提供先进的方案,诸如是例如最小-最大公平性。
在图13E的具体示例实施例中,假定选定QAM是QAM(2),E(Q(2))E(2)=16,并且与QAM(2)相关联的BG(i)的数目是2(例如,对应于BG(1)和BG(2))。因此,在该具体示例中,E(1,2)可以根据以下表达式来计算:E(Q(2))/2=16/2=8。类似地,E(2,2)可以根据以下表达式来计算:E(Q(2))/2=16/2=8。
在至少一个实施例中,如果E(j)为负,则其有时可以是这样的情况:∑iR(i,j)>BWQ(j)。并且,如果E(j)为负,则可能没有超额带宽供分发。在此情况下,没有必要计算E(i,j),和/或可能需要分开的计算用于调节R(i,j)值。
例如,在至少一个实施例中,E(i,j)可以表示为了一个或多个流量整形调节操作的目的而调节一个或多个R(i,j)值所使用的值。在至少一个实施例中,如果QAM(j)具有比Q(j)值更多的带宽容量(例如,对于给定时间间隔),则E(i,j)例如可以是正数。在至少一个实施例中,如果QAM(j)具有比Q(j)值少的带宽容量(例如,对于给定时间间隔),则E(i,j)例如可以是负数。在至少一个实施例中,如果Q(j)匹配或基本匹配BWQ(j)值(例如对于给定时间间隔),则E(i,j)可以是0。然而,在不同实施例(未示出)中,E(i,j)可以是R(i,j)值的调节的任意表示。
在其它实施例中,E(i,j)可以用一种或多种不同技术来计算或确定,这些技术可以包括但不限于以下技术(或其组合)的一种或多种:
·最小-最大公平性
·在一组绑定群组之间均等地分发带宽
·等等
如在1010处所示,一个或多个R(i,j)值可以被更新。例如,如在1010处所示,在一些实施例中,针对被识别为与选定QAM相关联的每个BG的至少一个R(i,j)值可以被更新。如上所述,R(i,j)可以表示这样的值,该值表示与具体绑定群组和具体QAM有关的流量整形数据。例如,R(i,j)表示与绑定群组BG(i)和QAM(j)相关联的流量整形数据。在一个实施例中,R(i,j)数据可以使用E(i,j)数据来更新(例如将E(i,j)值添加到R(i,j)值)。在各个实施例中,R(i,j)可以根据各种方法(例如,相加、递增等等)被更新。
例如,在图13F的具体示例实施例中,假定Q(2)被选择1002,E(j)在16处被计算或确定,BG(1)和BG(2)被识别1006,并且E(1,2)和E(2,1)分别被计算或确定为8。在该具体示例实施例中,根据这些示例假设,R(1,2)1372b通过将8和17相加来得到新的R(1,2)值25被更新,并且R(2,2)1374b通过将8和7相加来得到新的R(2,2)值15而被更新。
如在1012处所示,关于是否实现操作1001-1012进行判断。在至少一个实施例中,如果被识别用于流量整形的至少一个QAM还未在流量整形调节过程A 1000的一个或多个线程或实例中被选择,则操作1001-1012的一个或多个可以被实现。将明白,在一些实施例中,与流量整形有关的一个或多个操作可以不针对一个或多个选定的和/或识别的QAM被实现。在各个实施例中,各种标准可被用来判断是否实现操作1001-1012
如在1014处所示,用于每个BG(i)的整形率可以被计算。在至少一个实施例中,用于每个BG(i)的整形率可以通过确定与特定的BG(i)相关联的所有R(i,j)值的加和来计算。在图13F的具体示例实施例中,与特定BG(i)相关联的R(i,j)值包括特定行中的所有R(i,j)值。在不同实施例(未示出)中,一个或多个R(i,j)值可以以不同方式表示。
图13G的具体示例实施例图示出具体示例流量整形数据,其例如通过针对被识别用于流量整形的每个QAM执行的操作1001-1012被填充。在图13G的示例实施例中,R(i,j)值已经在使用根据E(j)值确定的E(i,j)值时被更新。
在图13G中所示的示例流量整形数据中,假定绑定群组BG(3)具有仅20的流量负载值,如在数据部分1360处所示。绑定群组BG(3)被配置为在QAM(3)和/或QAM(4)上传送信息。然而,QAM(3)已被配置为传送与绑定群组BG(2)相关联的流量的实质部分。因此,绑定群组BG(3)流量的全部(或选定部分)可以被集中到QAM(4)上。在该示例实施例中,总QAM使用在大多数情况下是均匀的;除了QAM(4),其中仅与绑定群组B(3)相关联的流量可以起作用。
由于在一些实施例中,超额带宽可以是在一组识别的QAM中的一个或多个上是均匀的,所以超额带宽在一些实施例中可以跨越绑定群组而被均匀地分发。在各个实施例中,这将给出额外的“净空”(headroom),这有助于满足绑定群组上的带宽需求,如果例如流量猛增的话。以下示例图示出超额带宽在绑定群组之间的基本均匀的共享的分配。
在图13G的具体示例实施例中,用于每个BG(i)的整形率可以用“分配给BG的带宽”列1362表示。在图13G中所示的具体示例实施例中,用于绑定群组BG(1)1372的整形率1362a通过将行1372中的R(i,j),R(1,2)=40和R(1,2)=25,相加而被确定为是65。用于绑定群组BG(2)1374的整形率1362b通过将行1374中的R(i,j),R(2,2)=15和R(2,3)=40,相加而被确定为是55。用于绑定群组BG(3)1376的整形率1362c通过将行1376中的R(i,j),R(3,3)=0和R(3,4)=40,相加而被确定为是40。如果不同的值被假定,则一个或多个不同的整形率可以被计算出。将明白,在该示例实施例中,超额带宽在绑定群组BG(1)和绑定群组BG(2)上可以是均匀的。例如,在图13G的具体示例实施例中,绑定群组BG(1)已被分配65(例如Mbps),这比其所识别的流量负载40(例如Mbps)多25(例如Mbps)。类似地,绑定群组BG(2)已被分配55(例如Mbps),这比其所识别的流量负载30(例如Mbps)多25(例如Mbps)。
在至少一个实施例中,用于每个BG(i)的整形率可以在例如分组处理(例如分组调度、分组路由选择等等)中,被用作对可用于与每个BG(i)相关联的所有服务流的最大带宽的约束。
在没有最小速率可以为任何BG定义,和/或当测得的BG速率在给定测量间隔中的仿真流量整形过程可行分配以下的情况中,绑定群组中的所有(或选定的)绑定群组的带宽分配可以通过分配测得的速率R(i,j)加上QAM的超额速率的“公平”份额被计算出或确定,其中公平份额可以通过许多测量来定义。一旦这些分配被计算出或确定(例如,作为所有(或选定的)j上的R(i,j)的加和),则对于所有(或选定的)i,这些分配可被用作BG(i)的整形率。
在一些实施例中,如果绑定群组携带具有非零最小速率的流,则最小速率承诺可以被满足。然而,可以预见,如果一些服务流可以正以它们的最小速率以下的速率进行发送,则基于测得进入速率的BG的整形率的分配只会导致违反下一间隔中的最小速率保证(例如如果在前一间隔中以小于最小速率的速率进行发送的一个或多个流在下一策略间隔中开始以最小速率或最小速率以上的速率进行发送)。因此,可以预见,在一些实例中,基于测得的R(i,j)值为绑定群组计算整形率只会是不充分的,和/或该计算没有计算承诺带宽。
在一些实施例中,这可以通过向每个绑定群组分配最小速率保证和/或B(j)中较大者(或这两个值之间的某些值)来处理。然而,如果作为结果的参数不再导致可行的分配,则在一些实施例中,希望有另外的处理,如下所述。
如前一部分中讨论的基于虚拟流量调度的带宽分配可以是基于测量所供应的负载的。当进入流量超过QAM容量时,网络处理器可以例如丢弃超额的分组。然而,由虚拟流量调度器确定的数据可以反映可以超过可用容量的总的供应负载。
因此,在一些实施例中,测得的分配可以被缩减来为所有(或选定的)绑定群组产生可行的整形率。各种方案可以被用来缩减带宽需求。例如,其可以被均匀地缩减,使得每个流得到与其需求成比例的带宽。一个或多个R′(i,j)值可以根据以下表达式来确定:
R′(ij)=R(i,j)X Q/(∑iR(i,j))
在一些实施例中,该策略可以趋向于有利于需求较高的流和/或不利于需求较低的流。另外,内置组件(例如监管器)可用来标记超过最大速率的流。在一些实施例中,流量整形数据可以仅针对还未超过最大速率的流被测量和/或确定。
在一些实施例中,为了有利于具有较低需求的流,可以使用最小-最大公平策略。这可以例如确保在满足需求较高的流之前首先满足更小的需求。根据各个实施例,这些需求可以每绑定群组和/或不是每服务流地被测量。例如,需求较高的绑定群组可以具有做出合理需求的若干流,而低需求的绑定群组可以仅具有每一个都做出较大需求的几个流。
可以预见,在一个或多个超载条件下均匀地缩减流可能导致违反一些绑定群组的最小带宽保证。例如,首先假定单个QAM被两个绑定群组BG(1)和BG(2)共享,并且每个BG具有为QAM带宽的1/2的承诺最小速率保证。还假定BG(1)的输入速率正好是其最小速率保证,而BG(2)具有为QAM带宽的1.5倍的输入速率。在这些示例假设下,会导致超载情况,和/或该简单情况中的测得速率R(i,j)可以简单地分别是QAM带宽的1/2或1.5倍。在这些示例假设中,成比例地缩减这些速率可以导致BG(1)的最小带宽保证被违反。如以下将要描述的,在此描述的一个或多个实施例可以解决这些问题。
图11示出根据具体实施例的流量整形分析过程B 1100的示例实施例。在一些实施例中,流量整形分析过程可以为了流量整形的目的来分析网络流量信息。例如,在一些实施例中,流量整形分析过程的输出可被用来为一个或多个服务流、绑定群组、信道等确定一个或多个整形率。在一些实施例中,例如,流量整形分析过程的输出可被用作与流量整形有关的一个或多个不同过程的输入,诸如例如将参考图12描述的流量整形调节过程的示例实施例。
在一个或多个实施例中,流量整形分析过程可以与流量整形管理设备(诸如例如图8B的流量整形管理器890)结合被利用。在一些实施例中,流量整形分析过程的至少一部分可以由共享接入网络中一个或多个系统、设备和/或控制器(例如电缆网络中的CMTS)发起和/或实现。在一些实施例中,流量整形分析过程的至少一部分可以被网络处理器发起和/或实现,其中该网络处理器已被配置或设计为包括用于实现或发起流量整形分析过程的方面的合适硬件和/或硬件与软件。一个这样的网络处理器可以是例如可从加利福尼亚圣何塞的思科系统公司获得的思科分组处理器(在此称为CPP)。
在一些实施例中,流量整形分析过程中的一个或多个不同线程或实例可以在一个或多个处理器上被并行执行。在至少一个实施例中,流量整形分析过程中的一个或多个不同的线程或实例可被以周期性间隔(例如以规则的周期间隔、以不规则的周期性间隔、在流量整形分析过程的一个或多个不同线程或实例结束时、等等)发起。
例如,在一些实施例中,流量整形调节过程的一个或多个不同线程或实例可以以0.5秒和5秒之间的规则周期性间隔(例如每1秒)被发起。在某些实施例中,流量整形分析过程中的一个或多个不同线程或实例可以响应于满足用于触发流量整形分析过程的最小阈值标准的一个或多个条件和/或事件而被发起。例如,流量整形分析过程的一个或多个分离的线程或实例可以响应于接收到分组而被发起。在一个或多个实施例中,流量整形分析过程的一个或多个分离的线程或实例可以针对每个(或选定的)服务流和/或绑定群组而被发起。
在一些实施例中,流量整形分析过程的一个或多个不同线程或实例可以(例如,由网络运营商、由CMTS、由电缆调制解调器、由绑定群组等)按照需求发起。根据各个实施例,流量整形分析过程的一个或多个不同线程或实例可以被手动地、自动地、静态地、动态地、并行地和/或以以上的组合的方式被触发和/或实现。
为了图解的目的,将参考图11通过示例的方式来描述流量整形分析过程的具体示例实施例。
如图11的示例实施例中所示,假定流量整形分析过程在网络处理器处被实现,该网络处理器包括用于流量整形分析的合适硬件和/或硬件与软件。流量整形分析过程的不同实施例(未示出)除了可以包括图11的具体示例实施例中所图示的那些特征或操作以外,还可以包括一个或多个特征或操作。在流量整形分析过程的各个实施例中,图11的具体示例实施例中所图示的一个或多个特征或操作可以不同。在流量整形分析过程的各个实施例中,图11的具体示例实施例中所图示的特征或操作可以被省略。另外,在流量整形分析过程的各个实施例中,图11的具体示例实施例中所图示的特征或操作可以以与所示出的次序不同的次序被执行。
为了处理违反最小带宽速率保证的问题(例如,在超载的情况下),在至少一个实施例中,可以维护第二实例的虚拟SQF调度器。第一实例可以对可以在其服务流的“最小速率内”的分组进行操作。第二SQF调度器可以看见所有(或选定的)其它分组。为了区分“在最小速率以上”和/或“在最小速率以上”的分组,可以使用各种硬件和/或硬件与软件,诸如例如使用作为硬件加速器设置在CPP内的监管器来根据分组是在一个或多个配置的监管器简档(profile)中还是不在其中来不同地标记分组。
在至少一个实施例中,虚拟SQF技术可被如下增强。
1另一组计数器Rc(ij)(例如每一个与选定的绑定群组和选定的QAM相关联)可以被维护来跟踪可能在最小速率以下的流量。另外的数据和/或计数器Qc(j)(例如,每一个与选定QAM相关联)可被维护来保持跟踪可能在选定QAM的那些流的最小速率以下的流中的所有(或选定的)流的累计流量。
2如果分组被标记为“最小速率”分组,则(虚拟的)SQF选择例如具有最小Qc(j)值的QAM并且可以更新Rc(i,j)和/或R(i,j),以及Q(j)和/或Qc(j)。如果分组被标记为“超额速率”分组,则虚拟的)SQF选择例如具有最小Q(j)值的QAM(j)并且可以只可以更新R(i,j)和/或Q(j)。
在至少一个实施例中,Qc(j)值可以表示与提供和给定信道相关联的保证带宽速率相关联的承诺信道流量数据。例如,在一些实施例中,承诺信道流量数据Qc(j)可以表示例如可被调度用于(例如在一个或多个时间间隔期间)在特定QAM(j)上传输的带宽的合计值,该特定QAM(j)已被分类为黄色(YELLOW)类型流量。
因此,在至少一个实施例中,R(i,j)可以表示在该仿真SQF下在QAM(j)上的与绑定群组BG(i)相关联的总的测得流量负载,而Rc(i,j)可以表示仅由“最小速率”流量引起的负载。还应注意,有时至少有时会是这样的情况
Rc(i,j)<=R(i,j)
在一些实施例中,如果进入流量没有正在引起拥塞,则可以是这样的情况Q(j)<Q(例如,QAM带宽)。在该情况下,带宽可以仅基于R(i,j)被分配并且仍然满足最小速率承诺,如果例如假定R(i,j)大于等于BG(i)的承诺速率的话。
然而,在一些实施例中,如果进入流量可以是正在引起拥塞,则每QAM的测得负载可以超过QAM带宽。在该情况下,带宽可以需要首先基于Rc(i,j)被分配。每QAM的剩余带宽可以例如被与需求R(i,j)-Rc(i,j)成比例地分发,R(i,j)-Rc(i,j)可以指示非承诺流量。
另外,当总QAM带宽可以被超载时,而绑定群组的一个或多个可以未被完全利用它们的最小速率保证时,(同时其它BG利用了它们的最小速率保证)。如这里所讨论的。没有利用它们的最小速率的那些BG可以被分配比它们的当前需求更大的带宽直到其最小速率保证。
例如,如果带宽分配(例如测得最小带宽加上超额带宽)可以使得向BG中的所有(或选定的)BG的带宽的总分配可以至少与每个最小带宽保证一样高,则不需要更多的步骤。然而,如果对于一些绑定群组,该分配可能低于最小速率保证,则可以考虑向这些群组增加另外的分配直到最小带宽保证。优选可以注意到,以下是可能的:在没有使得分配不可行的情况下,这样增加的带宽分配可以不被增加。在这样的情况中,在一些实施例中,BG可以仅被给与不会违反解决方案的可行性那么多的分配。在一些这样的情况中,一个或多个BG可以仅获得它们的实际最小带宽+超额分配带宽。在其它实施例中,不同的技术可以是可能的和/或希望的。
返回图11,分组可以被接收到1102。在至少一个实施例中,分组在共享接入网络的头端中的网络组件(例如CMTS、流量整形管理器设备、网络处理器等等)处被接收到。
当分组被接收到时1102,接收的分组可以被分析1104来确定与流量整形有关的信息。在一些实施例中,与接收的分组相关联的服务流可以被确定或被识别(例如经由与接收的分组相关联的服务流标识符)。另外,与所识别的服务流相关联的服务流带宽(BW)使用率可以被确定。例如,服务流带宽(BW)使用率可以通过接收一个或多个配置值(例如被存储在数据结构和/或存储器位置中)被确定。服务流带宽(BW)使用率可以代表与给定服务流相关联的被分配的和/或当前的BW使用率(例如在一个或多个时间段上被测得)。
如在此所讨论的,给定服务流可以与一个或多个QoS参数相关联。例如,在一些实施例中,给定服务流可以与最大速率服务流参数相关联,最大速率服务流参数可以定义例如准予该服务流的最大带宽速率。类似地,给定服务流可以与最小保证速率相关联,最小保证速率可以定义例如总是(或几乎总是)可用于该服务流的最小带宽速率。
在至少一个实施例中,可被分类为是与最大速率以上的类别/种类相关联(和/或是其成员)的流量(例如,与给定服务流相关联)可以被称为“红色类型”(RED-type)流量。类似地,可被分类为是与最大和最小速率之间的类别/种类相关联(或是其成员)的流量可以称为“绿色类型”流量。然而,可以被分类为是与最小速率以下的类别/种类相关联(或是其成员)的流量可以称为“黄色类型”流量。
根据各个实施例,与服务流BW使用率有关的分类可以在一个或多个不同网络组件处被执行,这些网络组件可以包括但不限于以下组件(或其组合)的一个或多个:
·CMTS(例如CMTS 200)
·流量整形管理器设备(例如流量整形管理器890)
·网络处理器(例如CPP)
·等等
根据各个实施例,与服务流BW使用率有关的分类可以由一个或多个设备/系统(例如CMTS、流量整形设备等等)使用各种类型的信息来确定。在一些实施例中,与服务流相关联的实际带宽可以例如通过跟踪在一个或多个指定时间间隔上与给定服务流相关联的分组的数目和大小被确定。例如通过随后判断实际带宽是否超过最大带宽值,可以关于服务流是否已经超过与该服务流相关联的最大带宽做出判断。类似地,可以关于服务流是否已经超过与该服务流相关联的最小带宽做出判断。例如,服务流上的流量的速率可以在软件或硬件中(例如由监管器)被确定。
在一个或多个实施例中,与服务流BW使用率有关的类别和/或种类信息可以经由一个或多个状态标记被传递。在一些实施例中,例如,状态标记可以被在其中做出判定的设备来设置。在一些实施例中,状态标记可以包括与接收的分组相关联的一个或多个比特或字节。根据各个实施例,状态标记在接收分组中的可能位置可以包括但不限于以下位置(或其组合)的一个或多个:
·一个或多个数据结构
·接收的分组的报头
·与接收的分组相关联的元数据
·等等
在1106处,假定接收的分组与红色类型类别/种类相关联。在该情况下,接收的分组可以被忽略(1106)。在一些实施例中,如果接收的分组被忽略,则其可以为了被流量整形分析过程进一步处理而被忽略,和/或被转发至不同的设备或程序以用于进一步处理。在不同实施例中,如果接收的分组被忽略,则其可以整个被丢弃并且不被进一步处理。
在1106处,假定接收的分组与绿色类型类别/种类相关联。在该情况中,使用与绿色类型流量和黄色类型流量有关的流量整形数据的一个或多个流量整形过程可以被发起。例如,与流量整形分析过程有关的一个或多个操作(例如906-916)可以被发起。在各个实施例中,与流量整形有关的各种操作可以被发起。
在1108处,假定接收的分组与黄色类型类别/种类相关联。在该情况中,使用与绿色类型流量和黄色类型流量有关的流量整形数据的一个或多个流量整形过程可以被发起。例如,与流量整形分析过程有关的一个或多个操作(例如906-916)可以被发起。在各个实施例中,与流量整形有关的各种操作可以被发起。在一些实施例中,在1108处使用的流量整形数据可以仅涉及绿色类型流量和黄色类型流量。
在1110处,假定接收的分组与黄色类型类别/种类相关联。在该情况中,使用与黄色类型流量有关的流量整形数据的一个或多个流量整形过程可以被发起。例如,与流量整形分析过程有关的一个或多个操作(例如906-916)可被发起。在各个实施例中,与流量整形有关的各个操作可被发起。在一些实施例中,在1110处使用的流量整形数据可以仅涉及黄色类型流量。
图12示出根据具体实施例的流量整形调节过程B 1200的示例实施例。在一些实施例中,流量整形调节过程可以为了流量整形的目的调节一个或多个流量整形参数和/或值。例如,在一些实施例中,流量整形分析过程的输出可以包括与一个或多个不同服务流、绑定群组、通信信道等相关联的一个或多个流量整形率和/或其它类型的流量整形数据。根据各个实施例,流量整形调节过程的输入可以包括各种类型的流量整形数据(例如与图9的流量整形分析过程相关联的流量整形数据)和/或其它类型的网络流量信息。例如,在一个实施例中,流量整形调节过程1200可以利用通过流量整形分析过程1100生成的各种类型的信息或数据和/或利用各种类型的流量整形数据(或其部分),诸如参考图13B至13H所图解和描述的那些。
在至少一个实施例中,流量整形调节过程可以由诸如例如图8B的流量整形管理器890之类的流量整形设备实现和/或结合流量整形设备被利用。在至少一个实施例中,流量整形调节过程1200的至少一部分可以由一个或多个系统、设备和/或控制器(诸如CMTS(例如CMTS 200)(或其组件)、流量整形管理器890等)发起和/或实现。在至少一个实施例中,流量整形调节过程1200的至少一部分可以由网络处理器发起和/或实现,所述网络处理器包括被适当配置的硬件和/或硬件与软件。根据不同实施例,一个这样的网络处理器例如可以是用于实现各种类型的CMTS相关功能性的被特别配置的处理器,诸如例如可从加利福尼亚圣何塞获得的思科分组处理器(CPP)
将明白,流量整形调节过程1200的一个或多个不同线程或实例可以在一个或多个处理器中被并发实现。另外,在至少一个实施例中,流量整形调节过程1200的一个或多个分离的线程或实例可以与在此所描述的(一个或多个)流量整形分析过程的一个或多个线程或实例被并发地发起和/或执行。
在至少一个实施例中,流量整形调节过程的一个或多个不同线程或实例可以以周期性的间隔(例如,以规则周期性间隔、以不规则的周期性间隔、在流量整形调节过程的一个或多个不同线程或实例结束时、等等)被发起。例如,在一些实施例中,流量整形调节过程的一个或多个不同线程或实例可以以0.5秒和5秒之间的规则周期性间隔(例如每1秒)被发起。根据各个实施例,流量整形调节过程中的一个或多个不同线程或实例可以响应于满足用于触发流量整形调节过程的最小阈值标准的一个或多个条件和/或事件而被发起,这些条件或事件可以包括但不限于以下条件或事件(或其组合)的一个或多个:
·一个或多个时间相关的事件/条件
·与一个或多个流量整形分析过程和/或流量整形调节过程的一个或多个线程或实例的结束和/或发起有关的一个或多个事件/条件
·一个或多个网络负载相关的事件/条件
·与信号(例如由CMTS发送的信号,由流量整形设备发送的信号等等)的接收或检测有关的一个或多个事件/条件
·分组或其它类型的数据包的接收
·与(例如,操作系统的、接口的、其它软件等的)软件的启动和/或关闭有关的一个或多个事件/条件
·与硬件(例如CMTS、流量整形设备、网络节点等等)的启动和/或关闭有关的一个或多个事件/条件
·等等
根据不同实施例,流量整形调节过程的一个或多个不同线程或实例可以按照需求(例如由网络管理员、由CMTS、由网络运营商、由流量整形管理器、由网络节点、由电缆调制解调器等)发起。根据不同实施例,流量整形调节过程的一个或多个不同线程或实例可以被手动地、自动地、静态地、动态地、并发地或以以上的组合的方式触发或实现。
在图12的该具体示例实施例中,假定流量整形调节过程1200在网络处理器处被实现,所述网络处理器包括合适硬件和/或硬件与软件,用于实现各种类型的流量整形管理操作,诸如例如执行流量整形调节、加算各种类型的流量整形率等等。流量整形调节过程的不同实施例(未示出)包括除了图12的具体示例实施例中所图示出的特征和操作以外的特征和操作。在流量整形调节过程的不同实施例(未示出)中,除图12的具体示例实施例中所图示出的特征和操作以外的特征和操作可以不同。在流量整形调节过程的不同实施例(未示出)中,图12的具体实施例中所图示出的特征或操作可以被省略。另外,与流量整形调节过程的一个或多个实施例有关的各种动作和/或操作可以以和图12的示例中示出的次序不同的次序被执行。
图12图示出流量整形调节过程的具体示例实施例,其中流量整形数据结构的多于一个的实例或实施例(例如图13B中所示的流量整形数据结构的具体示例实施例)被利用。在图12的具体示例实施例中,流量整形数据结构的至少一个实施例被利用,其中所述至少一个实施例被限制于与已被分类为没有超过与服务流相关联的最小承诺带宽的那些服务流相关联的分组。在图12的具体示例实施例中,流量整形数据结构的至少一个实施例被利用,其中所述至少一个实施例被限制于与已被分类为没有超过与服务流相关联的最小承诺带宽的那些服务流相关联的分组。利用流量整形数据结构的多于一个的实例或实施例可以例如辅助以如下方式确定一个或多个调节后的流量整形值,该方式使得一个或多个服务流被提供至少足够的带宽以便满足与这一个或多个服务流相关联的最小承诺带宽。
在1201处,第一QAM(j)被选择用于流量整形调节处理。根据不同实施例,各种不同类型的标准和/或选择算法可以被用于确定将被选择用于流量整形调节处理的第一和/或下一QAM(j)。例如,在一个实施例中,QAM(s)可以被顺次选择。在一些实施例中,对特定QAM的选择可以至少部分地基于与各个QAM相关联的唯一信道编号。
在1202处,与选定QAM相关联的Qc(j)值可以被识别或被确定。
在1204处,承诺流量整形差分数据Ec(j)可以针对选定QAM被计算出或被确定。在一些实施例中,承诺流量整形差分数据Ec(j)可以基于与黄色类型流量相关联的数据被计算出或被确定,如上所述。在各个实施例中,流量整形差分数据Ec(j)可以基于仅与黄色类型流量相关联的数据被计算出或被确定。在至少一个实施例中,承诺流量整形差分数据Ec(j)可以代表和选定QAM相关联的带宽容量BWQ(j)与和选定QAM相关联的当前Qc(j)值之间的差。例如,在一个实施例中,承诺流量整形差分数据Ec(j)可以表示在考虑了(例如在任意给定时间间隔期间)已被分配到QAM(j)上的承诺流量整形带宽(例如Qc(j)值)之后,在该特定QAM上可用的剩余可用带宽量。在一些实施例中,承诺流量整形差分数据Ec(j)可以是这样的值,其表示带宽容量值(例如BWQ(j))和Qc(j)值之间的差和/或与之有关。
在图12的具体示例实施例中,假定Ec(j)值可以根据以下等式被计算出:
Ec(j)=BWQ(j)-Qc(j) (1)
其中,变量(j)表示与选定QAM(j)相关联的标识符。
如在1206处所示,信道带宽容量值BWQ(j)数据可以被更新。在一些实施例中,BWQ(j)可以使用与选定QAM相关联的Ec(j)数据被更新。在一个或多个实施例中,BWQ(j)可以与绿色类型流量和黄色类型流量相关联。在各个实施例中,BWQ(j)数据可以以各种方式被存储在诸如例如一个或多个临时数据结构、硬件和/或硬件与软件计数器、数据字段、处理器、存储器位置等中。在至少一个实施例中,BWQ(j)可以通过例如将数据写入其被存储于的具体位置而被更新。
如在1208处所示,关于是否实现操作1201-1208做出判断。在至少一个实施例中,如果被识别用于流量整形的至少一个QAM还未在流量整形调节过程B 1200的一个或多个线程或实例中被选择(例如在1201处),则操作1201-1208中的一个或多个可以被实现。将明白,在一些实施例中,可以针对一个或多个选定的和/或识别的QAM不执行与流量整形有关的一个或多个操作。在各个实施例中,各种标准可以被用于判断是否实现操作1201-1212。
在至少一个实施例中,如在1210处所示,与流量整形调节过程(例如流量整形调节过程A 1000)相关联的一个或多个操作可以被发起。在至少一个实施例中,与流量整形调节过程A相关联的一个或多个操作可以针对与绿色类型和黄色类型流量相关联的流量整形数据被发起。例如,与流量整形调节过程A相关联的一个或多个操作可以在选定数据的BWQ(j)部分已被更新之后,针对选定数据被发起。
图14示出根据具体实施例配置的电缆网络的一部分的示图。该示例电缆网络配置1400图示出其中每个绑定群组(例如1412、1414)与相应QAM群组相关联的电缆网络的具体示例配置。示例电缆网络配置1400中的“X”指示在该具体示例实施例中,特定绑定群组(在此称为BG)被配置为经由一个或多个相关联的QAM的使用来进行通信。
例如,在1400处示出的电缆网络配置的具体示例实施例中,假定绑定群组BG(1)1412包括QAM(1)1402和QAM(2)1404,绑定群组BG(2)1414包括QAM(2)1404和QAM(3)1406。在其它实施例(未示出)中,绑定群组的不同组合可以与QAM的不同组合相关联。
图15示出根据具体实施例配置的CMTS的一部分。在至少一个实施例中,图15中所示的一个或多个组件可以实现在例如一个或多个网络处理器(例如思科分组处理器CPP)中。在至少一个实施例中,图15中示出的一个或多个不同组件可以表示在相同物理组件的一个或多个处执行的不同操作,诸如在一个或多个网络处理器中执行的操作。在一些实施例中,图15中示出的一个或多个不同组件可以表示在一个或多个不同物理组件处执行的操作。
网络部分1500可以被配置或设计为执行与网络处理和/或流量整形有关的一个或多个操作和/或过程。例如,在一些实施例中,网络部分1500可以可操作用于执行“轻量级”技术,其用于动态和/或实时地计算流量整形“拉”模型中的流量整形率。
一些实施例可以涉及在提供一个或多个最小保证带宽速率的同时对流量进行整形。可以预见,需要或希望在这样的技术可以提供的利用水平和/或严格保证最小速率的能力之间的折中。然而,在至少一个实施例中,在此所描述的各种混合推拉技术提供处理该问题的某种程度上更复杂的技术。这样的技术可以是特别有用的,例如当各个绑定群组中的流量不可以被假定为被非常高度地保证时,并且因此例如可能在相对短的时间尺度上明显不同。
在此所描述的各个示例实施例可以是考虑分层调度来撰写的。一个或多个CMTS、线路卡和/或网络处理器可以允许两个调度阶段,和/或具有每调度节点的内置流控制。然而,其它实施例可以一般被实现为具有一个或多个节点之间的流控制的各种调度层次结构。
在至少一个实施例中,由网络部分1500执行的一个或多个操作在不影响最小速率保证(例如与一个或多个服务流相关联的最小带宽保证)的情况下处理未充分利用带宽的问题。在一些实施例中,由网络部分1500执行的网络处理可以以两个阶段实现。例如,网络部分1500的示例实施例被设计或配置为具有第一处理阶段1530和第二处理阶段1550。在一些实施例中,与第一处理阶段1530相关联的一个或多个操作以及与第二处理阶段1550相关联的一个或多个操作在CMTS的不同物理组件(例如不同处理器)处和/或(一个或多个)不同网络处理器处被执行。可替换地,第一处理阶段1530中和第二处理阶段1550中的一个或多个操作可以在CMTS的相同物理组件和/或相同网络处理器中被执行。此外,网络部分1500中的阶段划分是一个示例实施例,并且在不同的各种实施例中,各种组件可以被图示在与图15中所示的阶段不同的阶段中。
第一阶段可以是“推”调度器。与给定绑定群组相关联的服务流中的所有(或选定的)服务流可以被放置在单个绑定群组BLT(例如单个调度表)之下。该BLT可以以与绑定群组相关联的最大可能带宽被整形。在一些实施例中,BLT的最大带宽速率可以等于与之关联的QAM中的所有(或选定的)QAM的比特速率的总和。
在图15的具体示例实施例中,假定与网络部分1500相关联的电缆网络被如图14中所示的电缆网络配置的具体示例实施例中所示那样配置。如电缆网络配置1400的具体示例实施例中所示,绑定群组BG(1)与QAM(1)和QAM(2)相关联,并且绑定群组BG(2)与QAM(2)和QAM(3)相关联。
在1502a处,根据具体实施例的服务流被图示出。如在其它地方所讨论的,绑定群组可以是指所识别的与一个或多个服务流相关联的分组可以在其间分发的上游或下游信道的集合。在网络部分1500的示例实施例中,与服务流1502a和1502b相关联的分组可以在与绑定群组BG(1)相关联的QAM之间被分发。类似地,与服务流1502c和1502d相关联的分组可以在与绑定群组BG(2)相关联的QAM之间被分发。将明白,该示例实施例为了图解的目的而被简化,并且在一些实施例中,一个或多个绑定群组可以与许多不同服务流相关联。
在1512处,根据具体实施例的流量整形调度器被图示出。在图15的具体示例实施例中,与绑定群组BG(1)有关的一个或多个分组调度操作可以在BG(1)流量整形调度器1512处被执行。例如,BG(1)流量整形调度器可以选择和/或确定针对和与绑定群组BG(1)相关联的服务流的相关联的传输分组进行调度的次序。
根据各个实施例,BG(1)流量整形调度器可以根据一个或多个QoS参数来选择和/或确定用于调度的分组,诸如例如根据以下参数(和/或其组合)的一个或多个:流量优先、超额权重、最小速率、最大速率等等。例如,在一个实施例中,BG(1)流量整形调度器可以确定和/或选择用于调度的分组以便确保与绑定群组BG(1)相关联的服务流中的每个(或顺次的所有)服务流都可以以与那些服务流相关联的最小速率进行操作。另外,BG(1)流量整形调度器可以使得一个或多个分组被传送到下一处理阶段(例如,阶段1根级别调度器1520)。
在至少一个实施例中,BG(1)流量整形调度器1512可以与最大带宽速率值相关联。根据不同实施例,与BG(1)流量整形调度器1512相关联的最大带宽速率值可以是基于与BG(1)相关联的一个或多个QAM的集合最大带宽的。在至少一个实施例中,与BG(1)相关联的最大带宽速率可以通过例如与第二处理阶段1550相关联的一个或多个流控制1534操作被确定和/或被调节。在图15的具体示例实施例中,用于发送与和BG(1)相关联的一个或多个服务流相关联的分组的BLT(例如调度表)可以根据最大带宽速率值在BG(1)调度器1512处被确定。
在1520处,根据具体实施例的阶段1根级别调度器设备被图示出。在图15的具体示例实施例中,阶段1根级别调度器被配置为聚合来自多个调度器(例如BG(1)流量整形调度器1512和BG(2)流量整形调度器1514)的流量。因此,在至少一个实施例中,阶段1根级别调度器1520可以可操作用于调度来自一个或多个绑定群组的分组。
根据各个实施例,阶段1根级别调度器根据一个或多个QoS参数来选择和/或确定用于调度的分组,诸如例如根据以下参数(或其组合)的一个或多个:流量优先、超额权重、最小速率、最大速率等等。例如,在一个实施例中,阶段1根级别调度器可以确定和/或选择用于调度的分组以便确保与被阶段1根级别调度器调度的分组相关联的服务流中的每个(或顺次的所有)服务流都可以以至少与那些服务流相关联的最小速率操作。另外,阶段1根级别调度器可以使得一个或多个分组被传送到下一处理阶段(例如流量整形管理器1560)。
在1550处,根据具体实施例的第二处理阶段被图示出。在一个或多个实施例中,第二阶段可以使用“拉调度器”来实现。在一些实施例中,每个QAM可以被表示为BLT(例如调度表)。与给定QAM相关联的每个绑定群组可以具有QAM BLT中的条目。根据各个实施例,推调度器整形出的分组可以被馈送回CPP和/或可以被最终入队(enqueue)到“拉调度器”中。由于绑定群组可以由多个QAM组成,所以绑定群组可以具有第二阶段中的多个潜在条目(例如针对与之关联的每个QAM一个条目)。
在1560处,根据具体实施例的流量整形管理器被图示出。在一个或多个实施例中,流量整形管理器1560可以位于框1550外面和/或框1530里面。在至少一个实施例中,流量整形管理器1560可以可操作用于执行与流量整形有关的一个或多个功能,诸如例如将分组入队到一个或多个BG队列(例如1562、1564、1566、1568)中。例如,流量整形管理器从不同的组件和/或处理阶段(例如阶段1根级别调度器)接收给定分组并且对分组进行调度以用于在QAM上传送。另外,流量整形管理器可以选择和/或确定给定分组被调度到其上的队列。例如,流量整形管理器可以选择和/或确定与这样的绑定群组相关联的最短(接近最短)路径,其中关联于和分组相关联的服务流的分组可操作用于在该绑定群组上发送。例如,如果给定分组将经由绑定群组BG(1)被发送,则流量整形管理器1560可以去定和/或选择BG(1)队列1562和BG(1)队列1564的集合中的最短集合。在一些实施例中,选择合格的队列中的最短队列可以导致仿真例如拉调度器级别的SQF,其可以保持QAM使用平衡或基本平衡。
在1562处,根据具体实施例的用于BG(1)的队列被图示出。在网络部分1500的具体示例实施例中,BG(1)队列1562表示与被调度用于在QAM(1)上传送的并且与和绑定群组BG(1)相关联的各个服务流相关联的(一个或多个)分组相关联的字节数。在一些实施例中,一个或多个第二阶段BG队列(例如1562、1564、1566、1568等)可以通过使用流控制来减少重排序和/或次序恢复延迟时间而被保持较短,如下所述。
在一个或多个实施例中,当分组进入第二处理阶段(例如在网络处理器中被接收回)时,处理元件(例如网络处理器)将分组入队到具有最短(或接近最短)的队列长度的QAM调度器的对应空绑定群组条目之一中。根据各个实施例,具有最短队列长度的队列可以是其中入队了最少的字节、入队了最少的分组、或具有其它大小测量值的队列。因此,在至少一个实施例中,推调度器可以仅当拉调度器的队列之一中存在空间时使分组入队,和/或其选择给定群组中具有最浅队列的QAM来输入分组。
在1534处,根据具体实施例的流控制断言(assersion)被图示出。在至少一个实施例中,如果用于绑定群组的可能条目中的所有(或选定的)条目都是满的,则一个或多个流控制断言可以被发送至推阶段中的绑定群组调度器。在一个或多个实施例中,一个或多个流控制断言可以包括与以下流(和/或其组合)的一个或多个有关的一个或多个指令:禁用流量流、使能流量流等等。在至少一个实施例中,一个或多个流控制断言可以与和以下群组(和/或其组合)的一个或多个相关联的一个或多个流量整形调度器:具体绑定群组、选定一组绑定群组、所有绑定群组等等。
由于服务流可以每绑定群组地被聚合,所以推调度器的给定分组送出可以通过考虑QoS属性中的所有(或选定的)属性被选择,QoS属性诸如是例如以下属性(和/或其组合)的一个或多个:最小速率、最大速率、超额权重和/或相对优先。如上所示,在一些实施例中,推调度器的最大速率可以被设置为绑定群组可以实现的最大可能速率。例如当第二阶段调度器可以没有因感测到重复绑定群组中的超额流量而应用背压(back-pressure)时,这允许绑定群组达到其最大带宽。因此,在一些实施例中,当最大速率不是限制绑定群组的速率的时,该组合充当“工作保存”(Work Conserving)调度器。
在一个或多个实施例中,第二阶段调度器将绑定群组分发到各个QAM中。因此,网络处理器(例如CPP)的一个或多个分组送出可以已经被调度以用于经由相应QAM传送。在一些实施例中,发送至例如介质访问控制“MAC”层处理器(例如JIB)的分组可以绕过一个或多个调度组件(例如SQF)而被直接转发至所指定的QAM。
在一个或多个实施例中,拉阶段中的QAM调度器可以以QAM比特速率(例如40Mbps)被整形。第二阶段中的每QAM调度可以允许来自绑定群组的流量跨越与之关联的QAM中的所有(或选定的)QAM被分发。对于有效带宽利用,第二极端可以在一些实施例中保证这些流中的所有(或选定的)流的最小速率和/或可以同时公平地分发超额带宽。为了满足最小速率标准,与给定绑定群组上的流中的所有(或选定的)流相关联的最小速率的总和可以例如跨越针对给定绑定群组的可能调度条目中的所有(或选定的)条目被分发。在此所描述的各种技术可以用来计算或确定利用用于分发最小速率的C(i,j)。在一些实施例中,C(i,j)可以表示来自QAM(i)的为BG(j)保留的带宽。在一些实施例中,跨越一个或多个QAM队列分发最小速率确保第二阶段调度器可以保证各个服务流的最小速率承诺。
根据各个实施例,拉调度器可以是这样的分层调度器(例如CPPHIST调度器),其中各个服务流被聚合到绑定群组中。在至少一个实施例中,推调度器可以是WFQ调度器,其中每绑定群组的条目被聚合到QAM条目中。流控制可以用来限制超载下的分组重排序。
在1574处,根据具体实施例的QAM(2)调度器被图示出。在至少一个实施例中,QAM调度器可以可操作用于对被入队到与给定QAM相关联的相应BG队列上的分组进行调度以用于在该QAM上传送。根据各个实施例,QAM(2)调度器可以根据各种流量整形技术(例如WFQ、SQF等)选择和/或确定用于调度的分组。如图15的具体示例实施例中所示,每个QAM可以与一个或多个绑定群组相关联。例如,在图15的具体示例实施例中,QAM(2)与绑定群组BG(1)和BG(2)两者都相关联。在该具体示例实施例中,QAM(2)调度器可以可操作用于对与BG(1)队列1562和BG(2)队列1566相关联的分组进行调度。一个或多个QAM(2)调度器可以使用各种技术来对来自不同QAM的分组进行调度,诸如例如WFQ技术、轮询技术等等。
在1580处,根据具体实施例的阶段2根级别调度器设备被图示出。在至少一个实施例中,阶段2根级别调度器设备可以将来自一个或多个QAM调度器的分组传送给一个或多个设备(例如分组调度器/发射机820)以用于在一个或多个QAM上发送。在至少一个实施例中,被传送给分组调度器/发射机的分组可以已经被调度以用于以特定次序在特定QAM上发送。因此,一个或多个分组可以绕过一个或多个分组调度器/发射机可以可操作用于执行的进一步的处理(例如SQF)。可替换地,一个或多个分组调度器/发射机可以对分组执行进一步的处理。
在一些实施例中,在第二阶段中具有每QAM条目每绑定群组的有限最小速率确保入队的分组可以在有限的时间中被排出。例如如果以上最小速率条目(B(i,j))可以是1Mbps,则1500字节分组可以在12毫秒内(例如如果相应队列被仅以其最小速率保存)或更快地被排出。在一些实施例中,每QAM条目每绑定群组的有限最小速率可以在不影响分组延迟时间和/或排序的情况下被实现。在一个或多个实施例中,为相同服务流接收的分组可以跨越QAM队列被分布。
DOCSIS 3.0可以限制与分组重排序相关联的一个或多个时间间隔(例如为3毫秒)。因此,在一些实施例中,为了保证重排序延迟时间被限制于最坏情况下的给定时间间隔(例如3毫秒),C(i,j)的最小值可以被限定为特定值和/或值的范围(例如4Mbps)。在一些实施例中,BLT(例如调度表)条目的队列深度可以被限制于给定大小(例如单个MTU大小(例如1500字节))。在一些实施例中,对于C(i,j)中较大的值,缓冲大小可以被增大(例如与C(i,j)成比例或基本成比例)。
在一些实施例中,一个或多个绑定群组可以不与最小速率流控制相关联。在一个或多个实施例中,用于QAM条目中的所有(或选定的)条目的B(i,j)的值可以是0。在一些实施例中,B(i,j)可以表示来自QAM(i)的为BG(j)保留的带宽。因此块,如果给定QAM可以被最小速率流量完全装载,则入队到给定队列中的一个或多个分组可以无限期地待在那儿,导致例如相对高的延迟时间和/或次序紊乱的窗口。因此,即使没有明确的最小速率可以与相应的绑定群组相关联,B(i,j)的最小值也可以被指派。指派B(i,j)的最小值可能影响每绑定群组的可保留带宽的量。在一个或多个实施例中,隐式的最小速率分量可以针对绑定群组可以与之关联的每个(或选定的)QAM被应用。根据各个实施例,如果多个绑定群组没有最小速率流,则那些绑定群组中的每一个可以要求每QAM的隐式的最小速率分量。一般,如果存在“m”个没有最小速率流的绑定群组,每一个跨越“n”个QAM,则失去的可保留带宽的量可以根据以下表达式被计算和/或被确定:
nXmXC(i,j)(例如4Mbps)
在一个或多个实施例中,如果与流控制有关的一个或多个操作未在推和/或拉调度器之间被执行,则与不同QAM中与相同BG对应的队列可在超载情况中被建立。可以预见,如果这些队列被允许增大则实质的重排序可能发生,或者如果这些队列被使得较浅,则分组丢失可能发生。在一些实施例中,推调度器中的队列可以被保持充分地浅,和/或流控制可以在推调度器中的BG条目上被断言,当该BG的队列中的所有(或选定的)队列变满时,这有助于避免这些问题中的任一者。
如在此所述,一种或多种流量整形技术可以使用基于HQF的调度器(例如CPP)被实现。在一个或多个实施例中,背压机制可以适于在例如拥塞情况期间确保阶段之间的流控制。还可以使用结合了一般流量整形技术(例如HQF)和整形调度节点的其它商业上可获得的调度器来实现该方案。
在一个或多个实施例中,进入分组可以由一个或多个处理器处理和/或不可以无限期地逗留。在一些实施例中,在允许推阶段中的绑定群组调度器发送分组之前,一个或多个流控制机制可以确保在推阶段中的合格队列中的至少一个中存在空间。如果拉阶段中的合格队列中的所有(或选定的)队列可以是满的,则流控制可以被插回推阶段中的绑定群组调度器类似地,如果在合格队列的至少一个中存在空间,则流控制可以被解除断言(de-assert)。在一些实施例中,PPE可以被用于例如感测队列大小和/或标定(toggle)流控制。在一个或多个实施例中,仅当拉阶段中的合格队列中的所有(或选定的)队列是满的时流控制被断言,和/或当因为该BG具有空间,因此在拉调度器中的队列中的至少一个队列中存在空间时,流控制被解除断言。在感测到队列之一中存在空间和/或对流控制解除断言之间可以存在有限的延迟时间。该延迟时间可以影响分组的总体延迟时间,以及具有次序紊乱的分组的窗口的持续时间。然而,在此所描述的一种或多种流量整形技术可以将延迟时间保持在可接受的水平。
图16A示出根据具体实施例的流量整形过程C 1600的示例实施例。在一些实施例中,流量整形过程C的一个或多个线程或实例可以被实现来执行与流量整形有关的一个或多个功能。例如,流量整形过程C的一个或多个线程或实例可以执行这些功能,这些功能可以包括但不限于监视流量、调度流量以用于在一个或多个信道上发送、更新与一个或多个QAM和/或绑定群组相关联的流量整形值等(和/或其组合)。
在至少一个实施例中,流量整形过程C可以被CMTS实现,该CMTS被配置用于两阶段流量整形(例如混合推拉)。例如,流量整形过程C的一个或多个实例或实施例可以通过图15中示出的网络部分的示例实施例被实现。在一些实施例中,一种或多种两阶段(例如推拉)调度器技术供应有效的带宽利用。由于给定的绑定群组不是以预定速率被整形的,所以例如在一个或多个实施例中,带宽需求中的零散的猛增可以被有效地应对。第二阶段的最小速率分配可以确保针对最小速率流的带宽承诺。根据各个实施例,另外的每QAM每绑定群组的队列条目可被用来确保跨越绑定群组的流之间的公平性。另外,在此所描述的一种或多种技术可以提供在存在绑定群组的动态改变的速率时,维持高利用和/或最小速率保证的能力。
在至少一个实施例中,流量整形过程C的至少一部分可以由一个或多个系统、设备和/或控制器(诸如例如流量整形管理器(例如流量整形管理器1560))发起和/或实现。在一些实施例中,流量整形过程的至少一部分可以由共享接入网络中的一个或多个系统、设备和/或控制器(例如电缆网络中的CMTS)发起和/或实现。在一些实施例中,流量整形过程中的至少一部分可以由网络处理器发起和/或实现,该网络处理器已被配置或设计为包括用于发起或实现流量整形过程的方面的合适的硬件和/或硬件与软件。一个这样的网络处理器可以例如是可从加利福尼亚圣何塞的思科系统公司获得的思科分组处理器(在此称为CPP)。
在一些实施例中,流量整形过程中的一个或多个不同线程或实例可以在一个或多个处理器上被并发实现。在至少一个实施例中,流量整形过程中的一个或多个不同线程或实例可以以周期性的间隔(例如,以规则周期性间隔、以不规则的周期性间隔、在流量整形过程的一个或多个不同线程或实例结束时、等等)被发起。在一些实施例中,流量整形过程中的一个或多个不同线程或实例可以响应于满足用于触发流量整形过程的最小阈值标准的一个或多个条件和/或事件而被发起。例如,流量整形过程的一个或多个分离的线程或实例可以响应于接收到分组而被发起。在一个或多个实施例中,流量整形过程的一个或多个分离的线程或实例可以针对每个(或选定的)服务流和/或绑定群组而被发起。
在一些实施例中,流量整形过程的一个或多个不同线程或实例可以(例如,由网络运营商、由CMTS、由电缆调制解调器、由绑定群组等)按照需求发起。根据各个实施例,流量整形过程的一个或多个不同线程或实例可以被手动地、自动地、静态地、动态地、并行地和/或以以上的组合的方式被触发和/或实现。
根据各个实施例,流量整形过程C中的多个并发的线程或实例可以针对不同BG(i)被并发地实现。另外,流量整形过程C的单个线程或实例可以对用于多个绑定群组的流量进行整形(例如通过循环经过绑定群组)。
为了图解的目的,将参考图16A通过示例的方式来描述流量整形过程的具体示例实施例。
如图16A的示例实施例中所示,假定流量整形分析过程C在网络处理器处被实现,该网络处理器包括用于流量整形分析的合适硬件和/或硬件与软件。流量整形过程的不同实施例(未示出)除了可以包括图16A的具体示例实施例中所图示的那些特征或操作以外,还可以包括一个或多个特征或操作。在流量整形过程的各个实施例中,图16A的具体示例实施例中所图示的一个或多个特征或操作可以不同。在流量整形过程的各个实施例中,图16A的具体示例实施例中所图示的特征或操作可以被省略。另外,在流量整形分析过程的各个实施例中,图16A的具体示例实施例中所图示的特征或操作可以以与所示出的次序不同的次序被执行。
在1602处,分组可被接收到。在至少一个实施例中,分组在共享接入网络的头端中的网络组件(例如CMTS、流量整形管理器设备、网络处理器等)处被接收到。
在1604处,与接收的分组相关联的具体绑定群组(BG(i))可被识别。根据各个实施例,多种不同技术可被用于识别与接收的分组相关联的具体绑定群组,诸如例如以下技术(或其组合)的一个或多个:
·使用与接收的分组相关联的IP地址(例如目的地IP地址等)
·使用与接收的分组相关联的信息(例如分组报头中的数据、分组有效载荷中的数据、与分组相关联的元数据等)
·使用一个或多个数据结构中存储的信息
·使用来自网络设备(例如CMTS、流量整形管理设备、存储器等)的一个或多个值
·等等
如在1606处所示,与所识别的绑定群组相关联的一个或多个QAM的集合可以被识别。例如,再次参考图15的具体示例实施例,如果假定绑定群组BG(1)被选择用于分析,则在1606处识别的QAM的集合可以对应于QAM(1)和QAM(2)。类似地,如果假定绑定群组BG(2)被选择用于分析,则在1606处识别的QAM的集合可以对应于QAM(2)和QAM(3)。
根据各个实施例,各种技术可被用于识别与给定绑定群组相关联的特定一组QAM。这样的技术的示例可以包括但不限于以下技术(或其组合)的一个或多个:
·从一个或多个网络组件(例如流量整形管理器、CMTS等等)接收一个或多个值
·存取可以被存储在一个或多个存储器或数据结构处的网络拓扑信息和/或其它类型的信息
·分析配置信息(例如来自数据结构,来自网络配置等)
·分析硬件和/或硬件与软件配置信息(例如识别分组在其上被发送的一个或多个总线,识别分组可以被路由通过其的一个或多个路径等等)
·等等
如1608处所示,与所识别的QAM集合相关联并且选定的绑定群组相关联的一个或多个流量整形队列和/或其它类型的数据结构的集合可以被识别。例如,再次参考图15的具体示例实施例,如果假定绑定群组BG(1)被选择用于分组,则在1608处识别的队列的集合可以对应于绑定群组BG(1)队列1562和绑定群组BG(1)队列1564。类似地,如果假定绑定群组BG(2)被选择用于分析,则在1608处识别的队列的集合可以对应于绑定群组BG(2)队列1566和绑定群组BG(2)队列1568。
根据各个实施例,各种技术可被用于识别与给定绑定群组相关联的特定一组队列和/或其它类型的数据结构。这样的技术的示例可以包括但不限于以下技术(或其组合)的一个或多个:
·从一个或多个网络组件(例如流量整形管理器、CMTS等等)接收一个或多个值
·存取可以被存储在一个或多个存储器或数据结构处的网络拓扑信息和/或其它类型的信息
·分析配置信息(例如来自数据结构,来自网络配置等)
·分析硬件和/或硬件与软件配置信息(例如识别分组在其上被发送的一个或多个总线,识别分组可以被路由通过其的一个或多个路径等等)
·等等
如根据具体实施例在1610处所示,关于是否所有识别的队列都是满的做出判断。在至少一个实施例中,队列(例如BG(1)队列1562)和/或其它类型的数据结构中的一个或多个可以与一个或多个大小参数相关联。例如给定队列可以与大小参数相关联,该大小参数指定可以与和该队列关联的最大分组数目和/或最大分组大小有关的一个或多个值。例如,在图15的示例实施例中,如果假定BG(1)被识别,则在1610处,将关于是否BG(1)队列1562和BG(1)队列1564二者都是满的进行判断。根据各个实施例,一个或多个队列和/或其它类型的数据结构可以共享一个或多个公共大小参数。另外,每个或选定的队列(和/或其它类型的数据结构)可以与一个或多个不同大小参数相关联。
在1612处,假定所有识别的流量整形队列和/或其它类型的数据结构都是满的。在一个或多个实施例中,如1612处所示,用于针对所识别的BG(i)断言流控制的一个或多个操作可以被发起。例如,一个或多个操作可以被发起以用于临时禁止在与所识别的BG(i)相关联的第一处理阶段中从一个或多个调度器输出。根据各个实施例,用于临时禁止输出的一个或多个操作可以通过如下方式被发起:例如从与第二处理阶段相关联的一个或多个组件(例如流量整形管理器1560)向与第一处理阶段相关联的一个或多个组件(例如BG(1)调度器1512)发送流控制断言。
在1614处,接收的分组被保持在用于所识别的BG(1)的阶段1队列中。例如,在图15中所示的具体示例实施例中,如果假定接收的分组与BG(1)相关联,则接收的分组可以被保持在与BG(1)流量整形调度器1512相关联的队列中。在一些实施例中,与分组有关的信息可以被保持在硬件和/或硬件与软件中的各种数据结构和/或队列中。根据各种实施例,接收的分组可被以各种方式保持,诸如例如保持在专用于当流控制被断言时的分组的单独队列中。
在1616处,假定所识别的流量整形队列和/或其它类型的数据结构中的一个或多个不是满的。如图16A的具体示例实施例中所示,在1616处,队列(例如用于BG(1)的队列1562)被从所识别的队列中选出。例如,在至少一个实施例中,最短队列被选择。最短队列可以是入队了最少数目的分组的队列、入队了最少数目的字节的队列、具有最大超额容量的队列等等。根据不同的实施例,各种技术可以用于从所识别的队列的集合中选择队列,诸如例如将队列大小的测量值与阈值相比较,选择具有超额容量的队列,等等。
在1618处,接收的分组被入队到所识别的队列中。各种技术可被用于将接收的分组入队到所识别的队列中。例如与分组有关的信息可被存储在一个或多个硬件和/或硬件与软件位置(例如(一个或多个)存储器位置、(一个或多个)缓冲器、(一个或多个)数据结构等等)。在图15中所示的具体示例实施例中,如果假定接收的分组与BG(1)相关联,则接收的分组例如可以被入队到用于BG(1)的队列1562、用于BG(1)的队列1564等中。
图16B示出根据具体实施例的队列流控制过程1650的示例实施例。在一些实施例中,队列流控制过程中的一个或多个线程或实例可以被实现来执行与流量整形有关的一个或多个功能。例如,队列流控制过程中的一个或多个线程或实例可以执行这些功能,这些功能可以包括但不限于监视流量、调度流量以用于在一个或多个信道上发送、更新与一个或多个QAM和/或绑定群组相关联的流量整形值等等(和/或其组合)。
在至少一个实施例中,队列流控制过程可以由被配置用于两阶段流量整形(例如混合推拉)的CMTS实现。队列流控制过程的一个或多个实例或实施例可以通过图15中示出的网络部分的示例实施例被实现。在一些实施例中,一种或多种两阶段(例如推拉)调度器技术供应有效的带宽利用。由于给定的绑定群组不是以预定速率被整形的,所以例如在一个或多个实施例中,带宽需求中的零散的猛增可以被有效地应对。第二阶段的最小速率分配可以确保针对最小速率流的带宽承诺。根据各个实施例,另外的每QAM每绑定群组的队列条目可被用来确保跨越绑定群组的流之间的公平性。另外,在此所描述的一种或多种技术可以提供在存在绑定群组的动态改变的速率时,维持高利用和/或最小速率保证的能力。
在至少一个实施例中,队列流控制过程的至少一部分可以由一个或多个系统、设备和/或控制器(诸如例如流量整形管理器(例如流量整形管理器1560))发起和/或实现。在一些实施例中,队列流控制过程的至少一部分可以由共享接入网络中的一个或多个系统、设备和/或控制器(例如电缆网络中的CMTS)发起和/或实现。在一些实施例中,队列流控制过程中的至少一部分可以由网络处理器发起和/或实现,该网络处理器已被配置或设计为包括用于发起或实现队列流控制过程的方面的合适的硬件和/或硬件与软件。一个这样的网络处理器可以例如是可从加利福尼亚圣何塞的思科系统公司获得的思科分组处理器(在此称为CPP)。
在一些实施例中,队列流控制过程中的一个或多个不同线程或实例可以在一个或多个处理器上被并发实现。在至少一个实施例中,队列流控制过程中的一个或多个不同线程或实例可以以周期性的间隔(例如,以规则周期性间隔、以不规则的周期性间隔、在队列流控制过程的一个或多个不同线程或实例结束时、等等)被发起。在一些实施例中,队列流控制过程中的一个或多个不同线程或实例可以响应于满足用于触发队列流控制过程的最小阈值标准的一个或多个条件和/或事件而被发起。例如,队列流控制过程的一个或多个分离的线程或实例可以响应于与出队、排出、和/或从队列中移除一个或多个分组有关的一个或多个事件和/或操作。在一个或多个实施例中,队列流控制过程的一个或多个分离的线程或实例可以针对每个(或选定的)服务流和/或绑定群组而被发起。
在一些实施例中,队列流控制过程的一个或多个不同线程或实例可以(例如,由网络运营商、由CMTS、由电缆调制解调器、由绑定群组等)按照需求发起。根据各个实施例,队列流控制过程的一个或多个不同线程或实例可以被手动地、自动地、静态地、动态地、并行地和/或以以上的组合的方式被触发和/或实现。
为了图解的目的,将参考图16B通过示例的方式来描述队列流控制过程的具体示例实施例。
如图16B的示例实施例中所示,假定队列流控制过程在网络处理器处被实现,该网络处理器包括用于流量整形分析的合适硬件和/或硬件与软件。队列流控制过程的不同实施例(未示出)除了可以包括图16B的具体示例实施例中所图示的那些特征或操作以外,还可以包括一个或多个特征或操作。在队列流控制过程的各个实施例中,图16B的具体示例实施例中所图示的一个或多个特征或操作可以不同。在队列流控制过程的各个实施例中,图16B的具体示例实施例中所图示的特征或操作可以被省略。另外,在队列流控制过程的各个实施例中,图16B的具体示例实施例中所图示的特征或操作可以以与所示出的次序不同的次序被执行。
在1652处,QAM队列中的分组出队事件被检测。在至少一个实施例中,分组出队事件可以包括分组从一个队列(例如用于BG(1)的队列1562、用于BG(2)的队列1568等等)中出队。例如,分组出队事件可以包括为了调度和/或发送的目的而从队列中移除分组。在一个或多个实施例中,分组出队事件可以由一个或多个网络设备(例如CMTS、网络处理器等等)检测和/或确定。在至少一个实施例中,分组出队事件可以指示队列现在具有额外容量。例如,已被识别为“满”(例如在操作1610处)的队列在出队事件之后可以被识别为“不是满的”。
在1654处,与出队事件相关联的具体QAM队列可以被识别。根据各个实施例,多种不同的技术可用于识别与出队事件相关联的具体QAM队列,这些事件诸如是例如以下事件(或其组合)的一个或多个:
·使用与出队事件的检测相关联的信息
·使用一个或多个数据结构中所存储的信息
·使用来自网络设备(例如CMTS、流量整形管理器设备、存储器等)的一个或多个值
·使用与接收的分组相关联的信息(例如,分组报头中的数据、分组有效载荷中的数据、与分组相关联的元数据等等)
·等等
在1656处,与所识别的QAM队列相关联的具体绑定群组BG(i)被识别。根据各个实施例,多种不同技术可被用于识别与QAM队列相关联的具体BG,诸如例如以下技术(或其组合)的一个或多个:
·使用一个或多个数据结构中存储的信息(例如配置信息)
·使用来自网络设备(例如CMTS、流量整形管理器设备、存储器等)的一个或多个值
·使用与接收的分组相关联的IP地址(例如目的地IP地址)
·使用与接收的分组相关联的信息(例如分组报头中的数据、分组有效载荷中的数据、与分组相关联的元数据等等)。
·等等
在1658处,关于当前是否针对所识别的绑定群组断言流控制做出判断。在至少一个实施例中,判断当前是否断言路控制可以涉及利用使用来自一个或多个数据结构he/huo存储器位置的信息和/或配置数据。
在1660处,假定当前针对所识别的BG(i)断言流控制。在一个实施例中,如1660处所示,用于断言针对所识别的BG(i)的流控制的一个或多个操作可以被发起。例如,一个或多个操作可以被发起以用于使能从与所识别的BG(i)相关联的第一处理阶段中的一个或多个调度器的输出。根据各个实施例,用于使能输出的一个或多个操作可以通过如下方式被发起:例如从与第二处理阶段相关联的一个或多个组件(例如流量整形管理器1560)向与第一处理阶段相关联的一个或多个组件(例如BG(1)调度器1512)发送流控制解除断言有关的信息。
在1662处,关于与所识别的BG(i)相关联的一个或多个分组是否被保持做出判断。在至少一个实施例中,一个或多个分组可以被保持在第一处理阶段中。例如,分组可以由于第一处理阶段中所断言的流控制(例如在操作1612处)而被保持。在至少一个实施例中,判断一个或多个分组是否被保持涉及使用来自一个或多个数据结构和/或存储器位置的信息和/或流量数据。例如,可以关于与第一处理阶段相关联的一个或多个队列、缓冲器等是否包含任何分组(与所识别的BG(i)相关联的一个或多个分组)做出判断。
在1664处,假定一个或多个分组被保持在第一处理阶段中。如图16A的具体示例实施例中所示,被识别为保持的一个或多个分组可以被入队到第二阶段中的队列中,在图15中所示的具体示例实施例中,如果既定接收的分组与BG(1)相关联,则一个或多个分组可以被入队到例如用于BG(1)的队列1562、用于BG(1)的队列1564等中。
在至少一个实施例中,一个或多个分组被入队到与出队事件相关联的队列中,如果假定出队事件与例如用于BG(1)的队列1562相关联,则一个或多个分组可以被入队到队列1562中。各种技术可以被用于将接收的分组入队到所识别的队列中。例如,与分子有关的信息可以存储在一个或多个硬件和/或硬件与软件位置(例如(一个或多个)存储器位置、(一个或多个)缓冲器、(一个或多个)数据结构等)中。
根据各个实施例,在此所公开的各种流量整形术语、表述、变量和/或概念可以经由不同类型的短语和/或文本描述的使用被描述。例如,在至少一个实施例中,各种流量整形术语、表述、变量和/或概念可以使用下表1中所示的不同示例表达式和/或示例文本描述中的一个或多个被描述和/或提及。
表1
将明白,在至少一些实施例中,其它类型的短语和/或文本描述(例如与表1中明确记载的以外的)也可以用来描述在此公开的各种流量整形术语、表述、变量和/或概念中的一个或多个。
与电缆网络技术的各个方面有关的附加细节被记载在由Daruwalla在2002年6月28日提交的名称为“IP SUBNET SHARING TECHNIQUE IMPLEMENTED WITHOUT USING BRIDGING OR ROUTING PROTOCOLS”(不使用桥接或路由选择协议实现的IP子网共享技术)的美国专利申请第7,174,376号中,该申请因所有用途被通过引用全部结合于此。
本申请有关于由Pai等同时申请的标题为“TRAFFIC FLOW SCHEDULING TECHNIQUES IMPLEMENTED ON BONDED CHANNELS OF A SHARED ACCESS CABLE NETWORK”(共享接入电缆网络的绑定信道上实现的流量流调度技术)的美国专利申请第12/404,219号,该申请因所有用途被通过引用全部结合于此。
本文中所讨论的各种技术可以提供用于调度绑定群组流量的可行解决方案。如在此所描述的,一些实施例可以基于对绑定群组带宽的整形。然而,可以预见,一些用于流量调度的技术可以需要未充分利用和一个或多个最小速率保证之间的折中。在一些实施例中,通过采用混合方法可以最小化此风险,其中较少部分的不活动最小速率带宽可以被重新分配。此外,在一些实施例中,绑定群组的整形可以是基于这样的假设:绑定群组上的供应负载可以是稳定的。这对于电缆网络部署可以是公平的假设。典型的绑定群组可以被部署为具有几百订户。平均流量负载可以被假定为对于大多数是相当稳定的。此外,随着诸如例如视频和/或大文件下载(和/或其组合)中的一个或多个之类的应用程序的使用的增多,单个调制解调器很有可能面临从几分钟到几小时的大的稳定流。在至少一个实施例中,这可以致使绑定群组上的总负载是相当稳定和/或恒定的。
尽管在此示出和描述了在此描述的各个实施例的说明性实施例和应用,但是可以有在所公开实施例的概念、范围和精神以内的许多变形例和修改例,本领域技术人员在精读本申请之后,这些变形例将变得清楚。并且,在至少一些实施例中,诸如在此描述的那些过程操作之类的各种过程操作可以以可替换的次序被实现和/或可以被省略。因此,应认为在此所描述的实施例是说明性而非限制性的,并且各个实施例不限于在此给出的细节,而是可以在所附权利要求书的范围和等同物内被修改。
Claims (38)
1.一种用于管理在共享接入电缆网络上的多个通信信道上传送的流量流的系统,该系统包括:
至少一个处理器;
至少一个接口,所述至少一个接口可操作用于向至少一个网络设备提供通信链路;以及
存储器;
所述系统可操作用于:
接收第一分组,所述第一分组具有相关联的第一组特征,所述第一组特征包括第一服务流标识符,所述第一服务流标识符表示与所述第一分组相关联的第一服务流,所述第一分组具有相关联的第一分组大小值,所述第一分组大小值表示所述第一分组的大小或所述第一分组的第一部分的大小;
使用所述第一组特征中的至少一部分特征来识别与所述第一服务流相关联的第一信道群组,所述第一信道群组包括已被分配用于传送与所述第一服务流相关联的数据流量的多个通信信道;
管理与所述第一信道群组相关联的流量流,其中管理与所述第一信道群组相关联的流量流包括:
确定第一分组大小值数据;
使用第一组选择标准来选择所述第一信道群组中的第一选定信道;和
使用所述第一分组大小值数据中的至少一部分数据来更新第一选定信道流量利用值,所述第一选定信道流量利用值表示被分配用于在第一时间间隔期间在所述第一选定信道上传送的总流量的量。
2.根据权利要求1所述的系统:
其中,更新所述第一选定信道流量利用值包括通过将所述分组大小值与所述第一选定信道流量利用值相加来生成所述第一选定信道流量利用值的更新值。
3.根据权利要求1所述的系统:
其中,更新所述第一选定信道流量利用值包括将所述第一选定信道流量利用值增大基本等于所述分组大小值的量。
4.根据权利要求1所述的系统:
其中,所述第一信道群组中的通信信道中的每个通信信道具有相关联的相应的信道流量利用值,其中具体通信信道的信道流量利用值表示被分配用于在所述第一时间间隔期间在该具体信道上传送的总流量的量;并且
其中,所述第一组选择标准包括用于从所述第一信道群组中识别和选择特定通信信道的标准,所述特定通信信道自给定时间T起具有相关联的相对最低或相对最小的信道流量利用值。
5.根据权利要求1所述的系统,还可操作用于:
使用所述分组大小值数据来更新第一信道群组流量利用值,所述第一信道群组流量利用值表示被分配用于在第二时间间隔期间在所述第一选定信道上传送的第一信道群组流量的量,其中所述第一信道群组流量包括与所述第一信道群组中的通信信道相关联的流量。
6.根据权利要求1所述的系统,还可操作用于:
使用所述分组大小值数据来更新第一信道群组流量利用值,所述第一信道群组流量利用值表示被分配用于在第二时间间隔期间在所述第一选定信道上传送的第一信道群组流量的量,其中所述第一信道群组流量包括与所述第一信道群组中的通信信道相关联的流量;并且
其中,所述更新包括确定与所述第一信道群组中的所述多个通信信道相关联的信道流量利用值的合计。
7.根据权利要求1所述的系统,其中,所述第一选定信道具有相关联的第一信道带宽容量值,所述第一信道带宽容量值表示所述第一选定信道可操作用于在给定时间段T中传送的流量的最大数量,所述系统还可操作用于:
识别第一组信道群组,其中所识别的第一组信道群组中的每个信道群组包括所述第一选定信道;以及
使用与所述第一选定信道流量利用值有关的信息并使用与所述第一信道带宽容量值有关的信息来确定第一信道流量Δ值,所述第一信道流量Δ值表示所述第一信道带宽容量值与所述第一信道流量利用值之间的差。
8.根据权利要求1所述的系统,其中,所述第一选定信道具有相关联的第一信道带宽容量值,所述第一信道带宽容量值表示所述第一选定信道可操作用于在给定时间段T中传送的流量的最大量,所述系统还可操作用于:
识别第一组信道群组,其中所述第一组信道群组中的每个信道群组包括所述第一选定信道;
针对所述第一选定信道来确定第一信道流量Δ值,所述第一信道流量Δ值表示所述第一信道带宽容量值与所述第一选定信道流量利用值之间的差;以及
使用所述第一信道流量Δ值来确定第一信道群组Δ值,所述第一信道群组Δ值表示将被分配用于传送与所述第一组信道群组相关联的流量流的所述第一选定信道的超额或可用带宽的量。
9.根据权利要求1所述的系统,其中,所述第一选定信道具有相关联的第一信道带宽容量值,所述第一信道带宽容量值表示所述第一选定信道可操作用于在给定时间段T中传送的流量的最大量,所述系统还可操作用于:
识别第一组信道群组,其中所述第一组信道群组中的每个信道群组包括所述第一选定信道;
针对所述第一选定信道来确定第一信道流量Δ值,所述第一信道流量Δ值表示所述第一信道带宽容量值与所述第一选定信道流量利用值之间的差;
使用所述第一信道流量Δ值来确定第一信道群组Δ值,所述第一信道群组Δ值表示将被分配用于传送与所述第一组信道群组相关联的流量流的所述第一选定信道的超额或可用带宽的量;并且
其中,确定所述第一信道群组Δ值包括确定将被分配用于传送与所述第一组信道群组中的第一信道群组相关联的流量流的所述第一选定信道的超额或可用带宽的第一部分。
10.根据权利要求1所述的系统,其中,所述第一选定信道具有相关联的第一信道带宽容量值,所述第一信道带宽容量值表示所述第一选定信道可操作用于在给定时间段T中传送的流量的最大量,所述系统还可操作用于:
识别第一组信道群组,其中所述第一组信道群组中的每个信道群组包括所述第一选定信道;
针对所述第一选定信道来确定第一信道流量Δ值,所述第一信道流量Δ值表示所述第一信道带宽容量值与所述第一选定信道流量利用值之间的差;以及
使用所述第一信道流量Δ值来确定第一信道群组Δ值,所述第一信道群组Δ值表示将被分配用于传送与所述第一组信道群组相关联的流量流的所述第一选定信道的超额或可用带宽的量;
使用所述第一信道群组Δ值来更新第一信道群组流量利用值,所述第一信道群组流量利用值表示被分配用于所述第一选定信道上传送的第一信道群组流量的量,其中,所述第一信道群组流量包括与所述第一信道群组中的通信信道相关联的流量;以及
使用所述第一信道群组流量利用值来确定第一信道群组流量整形率数据,所述第一信道群组流量整形率数据表示被分配用于传送与所述第一信道群组相关联的服务流相关联的分组的带宽的量。
11.根据权利要求1所述的系统,其中,所述第一选定信道具有相关联的第一信道带宽容量值,所述第一信道带宽容量值表示所述第一选定信道可操作用于在给定时间段T中传送的流量的最大量,其中,所述第一信道群组中的通信信道中的每个通信信道具有相关联的相应的信道群组流量利用值,其中,具体通信信道的信道群组流量利用值表示被分配用于在该具体特定通信信道上传送的第一信道群组流量的量,所述系统还可操作用于:
识别第一组信道群组,其中所述第一组信道群组中的每个信道群组包括所述第一选定信道;
针对所述第一选定信道来确定第一信道流量Δ值,所述第一信道流量Δ值表示所述第一信道带宽容量值与所述第一选定信道流量利用值之间的差;以及
使用所述第一信道流量Δ值来确定第一信道群组Δ值,所述第一信道群组Δ值表示将被分配用于传送与所述第一组信道群组相关联的流量流的所述第一选定信道的超额或可用带宽的量;
使用所述第一信道群组Δ值来更新第一信道群组流量利用值,所述第一信道群组流量利用值表示被分配用于所述第一选定信道上传送的第一信道群组流量的量,其中,所述第一信道群组流量包括与所述第一信道群组中的通信信道相关联的流量;
使用所述第一信道群组流量利用值来确定第一信道群组流量整形率数据,所述第一信道群组流量整形率数据表示被分配用于传送与所述第一信道群组相关联的服务流相关联的分组的带宽的量;并且
其中,确定所述第一信道群组流量整形率数据包括计算与所述第一信道群组相关联的信道群组流量利用值的和。
12.根据权利要求1所述的系统:
其中,所述共享接入电缆网络被配置为与电缆上数据服务接口规范DOCSIS通信协议兼容的混合光纤同轴HFC电缆网络;
其中,所述系统实现在所述共享接入电缆网络的电缆调制解调器终端系统CMTS处;并且
其中,所述第一信道群组对应于依照所述DOCSIS通信协议的DOCSIS信道绑定群组。
13.一种用于管理在共享接入电缆网络上的多个通信信道上传送的流量流的方法,所述方法包括:
接收第一分组,所述第一分组具有相关联的第一组特征,所述第一组特征包括第一服务流标识符,所述第一服务流标识符表示与所述第一分组相关联的第一服务流,所述第一分组具有相关联的第一分组大小值,所述第一分组大小值表示所述第一分组的大小或所述第一分组的第一部分的大小;
使用所述第一组特征中的至少一部分特征来识别与所述第一服务流相关联的第一信道群组,所述第一信道群组包括已被分配用于传送与所述第一服务流相关联的数据流量的多个通信信道;
管理与所述第一信道群组相关联的流量流,其中管理与所述第一信道群组相关联的流量流包括:
确定第一分组大小值数据;
使用第一组选择标准来选择所述第一信道群组中的第一选定信道;和
使用所述第一分组大小值数据中的至少一部分数据来更新第一选定信道流量利用值,所述第一选定信道流量利用值表示被分配用于在第一时间间隔期间在所述第一选定信道上传送的总流量的量。
14.根据权利要求13所述的方法:
其中,所述第一信道群组中的通信信道中的每个通信信道具有相关联的相应的信道流量利用值,其中具体通信信道的信道流量利用值表示被分配用于在所述第一时间间隔期间在该具体信道上传送的总流量的量;并且
其中,所述第一组选择标准包括用于从所述第一信道群组中识别和选择特定通信信道的标准,所述特定通信信道自给定时间T起具有相关联的相对最低或相对最小的信道流量利用值。
15.根据权利要求13所述的方法,还包括:
使用所述分组大小值数据来更新第一信道群组流量利用值,所述第一信道群组流量利用值表示被分配用于在第二时间间隔期间在所述第一选定信道上传送的第一信道群组流量的量,其中所述第一信道群组流量包括与所述第一信道群组中的通信信道相关联的流量。
16.根据权利要求13所述的方法,还包括:
使用所述分组大小值数据来更新第一信道群组流量利用值,所述第一信道群组流量利用值表示被分配用于在第二时间间隔期间在所述第一选定信道上传送的第一信道群组流量的量,其中所述第一信道群组流量包括与所述第一信道群组中的通信信道相关联的流量;并且
其中,所述更新包括确定与所述第一信道群组中的所述多个通信信道相关联的信道流量利用值的合计。
17.根据权利要求13所述的方法,其中,所述第一选定信道具有相关联的第一信道带宽容量值,所述第一信道带宽容量值表示所述第一选定信道可操作用于在给定时间段T中传送的流量的最大量,所述方法还包括:
识别第一组信道群组,其中所述第一组信道群组中的每个信道群组包括所述第一选定信道;
针对所述第一选定信道来确定第一信道流量Δ值,所述第一信道流量Δ值表示所述第一信道带宽容量值与所述第一选定信道流量利用值之间的差;
使用所述第一信道流量Δ值来确定第一信道群组Δ值,所述第一信道群组Δ值表示将被分配用于传送与所述第一组信道群组相关联的流量流的所述第一选定信道的超额或可用带宽的量;并且
其中,确定所述第一信道群组Δ值包括确定将被分配用于传送与所述第一组信道群组中的第一信道群组相关联的流量流的所述第一选定信道的超额或可用带宽的第一部分。
18.根据权利要求13所述的方法,其中,所述第一选定信道具有相关联的第一信道带宽容量值,所述第一信道带宽容量值表示所述第一选定信道可操作用于在给定时间段T中传送的流量的最大量,所述方法还包括:
识别第一组信道群组,其中所述第一组信道群组中的每个信道群组包括所述第一选定信道;
针对所述第一选定信道来确定第一信道流量Δ值,所述第一信道流量Δ值表示所述第一信道带宽容量值与所述第一选定信道流量利用值之间的差;以及
使用所述第一信道流量Δ值来确定第一信道群组Δ值,所述第一信道群组Δ值表示将被分配用于传送与所述第一组信道群组相关联的流量流的所述第一选定信道的超额或可用带宽的量;
使用所述第一信道群组Δ值来更新第一信道群组流量利用值,所述第一信道群组流量利用值表示被分配用于所述第一选定信道上传送的第一信道群组流量的量,其中所述第一信道群组流量包括与所述第一信道群组中的通信信道相关联的流量;以及
使用所述第一信道群组流量利用值来确定第一信道群组流量整形率数据,所述第一信道群组流量整形率数据表示被分配用于传送与所述第一信道群组相关联的服务流相关联的分组的带宽的量。
19.根据权利要求13所述的方法,其中,所述第一选定信道具有相关联的第一信道带宽容量值,所述第一信道带宽容量值表示所述第一选定信道可操作用于在给定时间段T中传送的流量的最大量,其中,所述第一信道群组中的通信信道中的每个通信信道具有相关联的相应的信道群组流量利用值,其中,具体通信信道的信道群组流量利用值表示被分配用于在该具体通信信道上传送的第一信道群组流量的量,所述方法还包括:
识别第一组信道群组,其中所述第一组信道群组中的每个信道群组包括所述第一选定信道;
针对所述第一选定信道来确定第一信道流量Δ值,所述第一信道流量Δ值表示所述第一信道带宽容量值与所述第一选定信道流量利用值之间的差;以及
使用所述第一信道流量Δ值来确定第一信道群组Δ值,所述第一信道群组Δ值表示将被分配用于传送与所述第一组信道群组相关联的流量流的所述第一选定信道的超额或可用带宽的量;
使用所述第一信道群组Δ值来更新第一信道群组流量利用值,所述第一信道群组流量利用值表示被分配用于所述第一选定信道上传送的第一信道群组流量的量,其中,所述第一信道群组流量包括与所述第一信道群组中的通信信道相关联的流量;
使用所述第一信道群组流量利用值来确定第一信道群组流量整形率数据,所述第一信道群组流量整形率数据表示被分配用于传送与所述第一信道群组相关联的服务流相关联的分组的带宽的量;并且
其中,确定所述第一信道群组流量整形率数据包括计算与所述第一信道群组相关联的信道群组流量利用值的和。
20.根据权利要求13所述的方法:
其中,所述共享接入电缆网络被配置为与电缆上数据服务接口规范DOCSIS通信协议兼容的混合光纤同轴HFC电缆网络;
其中,所述方法实现在所述共享接入电缆网络的电缆调制解调器终端系统CMTS处;
其中,所述第一信道群组对应于依照所述DOCSIS通信协议的DOCSIS信道绑定群组;并且
其中,所述多个通信信道是可操作用于从电缆网络的头端向一个或多个电缆调制解调器传送流量的下游通信信道。
21.一种在共享接入电缆网络中实现的电缆调制解调器终端系统CMTS,包括:
至少一个处理器;
至少一个接口,所述至少一个接口可操作用于向至少一个网络设备提供通信链路;以及
存储器;
用于管理在共享接入电缆网络的多个通信信道上传送的流量流的装置;
用于接收第一分组的装置,所述第一分组具有相关联的第一组特征,所述第一组特征包括第一服务流标识符,所述第一服务流标识符表示与所述第一分组相关联的第一服务流,所述第一分组具有相关联的第一分组大小值,所述第一分组大小值表示所述第一分组的大小或所述第一分组的第一部分的大小;
用于使用所述第一组特征中的至少一部分特征来识别与所述第一服务流相关联的第一信道群组的装置,所述第一信道群组包括已被分配用于传送与所述第一服务流相关联的数据流量的多个通信信道;
用于管理与所述第一信道群组相关联的流量流的装置,其中管理与所述第一信道群组相关联的流量流包括:
用于确定第一分组大小值数据的装置;
用于使用第一组选择标准来选择所述第一信道群组中的第一选定信道的装置;和
用于使用所述第一分组大小值数据中的至少一部分数据来更新第一选定信道流量利用值的装置,所述第一选定信道流量利用值表示被分配用于在第一时间间隔期间在所述第一选定信道上传送的总流量的量;
其中,所述共享接入电缆网络被配置为与电缆上数据服务接口规范DOCSIS通信协议兼容的混合光纤同轴HFC电缆网络;
其中,所述方法实现在所述共享接入电缆网络的电缆调制解调器终端系统CMTS处;并且
其中,所述第一信道群组对应于依照所述DOCSIS通信协议的DOCSIS信道绑定群组。
22.一种用于管理在共享接入电缆网络上的多个通信信道上传送的流量流的系统,所述系统包括:
至少一个处理器;
至少一个接口,所述至少一个接口可操作用于向至少一个网络设备提供通信链路;以及
存储器;
所述系统可操作用于:
执行至少一个流量整形操作,用于对将在所述共享接入电缆网络的多个不同通信信道上传送的多个不同流量流进行整形,其中,所述多个通信信道包括第一通信信道、第二通信信道和第三通信信道,其中所述第一通信信道和所述第二通信信道与第一信道群组相关联,其中所述第二通信信道和所述第三通信信道与第二信道群组相关联;其中,所述第一信道群组具有相关联的第一多个队列,所述第一多个队列包括第一队列和第二队列;并且其中,所述第二信道群组具有相关联的第二多个队列,所述第二多个队列包括第三队列和第四队列;
其中,对所述多个不同流量流进行整形包括:
判断与所述第一队列相关联的第一流量条件是否已经超过第一阈值标准,其中所述第一队列与所述第一信道群组相关联并且与所述第一通信信道相关联;
判断与所述第二队列相关联的第二流量条件是否已经超过第二阈值标准,其中所述第二队列与所述第一信道群组相关联并且与所述第二通信信道相关联;
响应于检测到与所述第一信道群组相关联的队列中的至少一个队列已经超过相关联的阈值标准,发起用于在第一时间间隔期间暂停或禁用与所述第一信道群组相关联的流量流的至少一个操作;
判断与所述第三队列相关联的第三流量条件是否已经超过第三阈值标准,其中所述第三队列与所述第二信道群组相关联并且与所述第二通信信道相关联;
判断与所述第四队列相关联的第四流量条件是否已经超过第四阈值标准,其中所述第四队列与所述第二信道群组相关联并且与所述第三通信信道相关联;以及
响应于检测到与所述第二信道群组相关联的队列中的至少一个队列已经超过相关联的阈值标准,发起用于在第二时间间隔期间暂停或禁用与所述第二信道群组相关联的流量流的至少一个操作。
23.根据权利要求22所述的系统,还可操作用于
判断与所述第一信道群组相关联的流量流是否被暂停或禁用;
响应于判断出与所述第一多个队列中的每个队列相关联的相应的阈值标准被满足,发起用于使能或恢复与所述第一信道群组相关联的流量流的至少一个操作;
判断与所述第二信道群组相关联的流量流是否被暂停或禁用;以及
响应于判断出与所述第二多个队列中的每个队列相关联的相应的阈值标准被满足,发起用于使能或恢复与所述第二信道群组相关联的流量流的至少一个操作。
24.根据权利要求22所述的系统:
其中,所述共享接入电缆网络被配置为与电缆上数据服务接口规范DOCSIS通信协议兼容的混合光纤同轴HFC电缆网络;
其中,所述系统实现为所述共享接入电缆网络的电缆调制解调器终端系统CMTS;并且
其中,所述第一信道群组对应于依照所述DOCSIS通信协议的DOCSIS信道绑定群组。
25.一种用于管理在共享接入电缆网络上的多个通信信道上传送的流量流的系统,所述系统包括:
至少一个处理器;
至少一个接口,所述至少一个接口可操作用于向至少一个网络设备提供通信链路;以及
存储器;
所述系统可操作用于:
接收第一分组,所述第一分组具有相关联的第一组特征,所述第一组特征包括第一服务流标识符,所述第一服务流标识符表示与所述第一分组相关联的第一服务流;
使用所述第一组特征中的至少一部分特征来识别与所述第一服务流相关联的第一信道群组,所述第一信道群组包括已被分配用于传送与所述第一服务流相关联的数据流量的多个通信信道,其中所述第一信道群组具有相关联的第一多个队列,其中所述多个通信信道中的每个通信信道与所述第一多个队列中的至少一个相应的队列相关联,其中所述第一多个队列中的每个队列具有相关联的相应的可用队列容量值,所述可用队列容量值表示可用于由所述第一多个队列中的给定队列使用的总存储器的数量;
管理与所述第一信道群组相关联的流量流,其中,管理与所述第一信道群组相关联的流量流包括:
判断与所述第一信道群组相关联并且与所述第一通信信道相关联的队列中的每个队列在第一时间间隔期间是否已经超过与其相应的队列相关联的阈值标准;以及
响应于检测到与所述第一信道群组相关联的队列中的每个队列已经超过其相关联的阈值标准,发起用于在第二时间间隔期间暂停或禁用与所述第一信道群组相关联的流量流的至少一个操作。
26.根据权利要求25所述的系统:
其中,用于暂停或禁用与所述第一信道群组相关联的流量流的至少一个操作包括禁止至少一个分组在所述第二时间间隔期间被入队到所述第一多个队列中的任何队列中。
27.根据权利要求25所述的系统,还可操作用于:
使用第一组标准来从所述第一多个队列中识别第一队列,其中所述第一组标准包括用于从所述第一多个队列中识别和选择特定队列的标准,所述特定队列自给定时间T开始具有相关联的相对最大的可用队列容量值;以及
发起用于使接收的分组入队到所述第一队列中的至少一个操作。
28.根据权利要求25所述的系统:
其中,所述共享接入电缆网络被配置为与电缆上数据服务接口规范DOCSIS通信协议兼容的混合光纤同轴HFC电缆网络;
其中,所述系统实现为所述共享接入电缆网络的电缆调制解调器终端系统CMTS;并且
其中,所述第一信道群组对应于依照所述DOCSIS通信协议的DOCSIS信道绑定群组。
29.一种用于管理在共享接入电缆网络上的多个通信信道上传送的流量流的系统,所述系统包括:
至少一个处理器;
至少一个接口,所述至少一个接口可操作用于向至少一个网络设备提供通信链路;以及
存储器;
所述系统可操作用于:
检测与第一分组从与第一信道群组相关联的第一队列中出队有关的第一分组出队事件,所述第一信道群组包括已被分配用于传送与第一服务流相关联的数据流量的多个通信信道,其中所述第一信道群组具有相关联的第一多个队列,所述第一多个队列包括所述第一队列,其中所述多个通信信道中的每个通信信道与所述第一多个队列中的至少一个相应的队列相关联;
使用与所述第一队列相关联的信息来识别与所述第一队列相关联的所述第一信道群组;
判断是否针对所述第一信道群组断言流量流控制,其中针对所述第一信道群组的流量流控制的断言通过所述第一信道群组的第一多个通信信道上的流量流的暂停来表征;以及
响应于判断出针对所述第一信道群组断言了所述流量流控制并且响应于检测到所述第一分组从所述第一队列中出队,执行用于解除对在所述第一信道群组处的流量流控制的断言的至少一个操作,其中解除对所述第一信道群组的流量流控制的断言通过所述第一信道群组的第一多个通信信道上的流量流的恢复来表征。
30.根据权利要求29所述的系统,其中:
用于解除对在所述第一信道群组处的流量流控制的断言的至少一个操作包括使得至少一个分组能够被入队到所述第一多个队列中的至少一个队列中。
31.根据权利要求29所述的系统:
其中,所述共享接入电缆网络被配置为与电缆上数据服务接口规范DOCSIS通信协议兼容的混合光纤同轴HFC电缆网络;
其中,所述系统实现为所述共享接入电缆网络的电缆调制解调器终端系统CMTS;并且
其中,所述第一信道群组对应于依照所述DOCSIS通信协议的DOCSIS信道绑定群组。
32.一种用于管理在共享接入电缆网络上的多个通信信道上传送的流量流的方法,所述方法包括:
接收第一分组,所述第一分组具有相关联的第一组特征,所述第一组特征包括第一服务流标识符,所述第一服务流标识符表示与所述第一分组相关联的第一服务流;
使用所述第一组特征中的至少一部分特征来识别与所述第一服务流相关联的第一信道群组,所述第一信道群组包括已被分配用于传送与所述第一服务流相关联的数据流量的多个通信信道,其中所述第一信道群组具有相关联的第一多个队列,其中所述多个通信信道中的每个通信信道与所述第一多个队列中的至少一个相应的队列相关联,其中所述第一多个队列中的每个队列具有相关联的相应的可用队列容量值,所述可用队列容量值表示可用于由所述第一多个队列中的给定队列使用的总存储器的数量;
管理与所述第一信道群组相关联的流量流,其中,管理与所述第一信道群组相关联的流量流包括:
判断与所述第一信道群组相关联并且与所述第一通信信道相关联的队列中的每个队列在第一时间间隔期间是否已经超过与其相应的队列相关联的阈值标准;以及
响应于检测到与所述第一信道群组相关联的队列中的每个队列已经超过其相关联的阈值标准,发起用于在第二时间间隔期间暂停或禁用与所述第一信道群组相关联的流量流的至少一个操作。
33.根据权利要求32所述的方法:
其中,用于暂停或禁用与所述第一信道群组相关联的流量流的至少一个操作包括禁止至少一个分组在所述第二时间间隔期间被入队到所述第一多个队列中的任何队列中。
34.根据权利要求32所述的方法,还包括:
使用第一组标准来从所述第一多个队列中识别第一队列,其中所述第一组标准包括用于从所述第一多个队列中识别和选择特定队列的标准,所述特定队列自给定时间T开始具有相关联的相对最大的可用队列容量值;以及
发起用于使接收的分组入队到所述第一队列中的至少一个操作。
35.根据权利要求32所述的方法:
其中,所述共享接入电缆网络被配置为与电缆上数据服务接口规范DOCSIS通信协议兼容的混合光纤同轴HFC电缆网络;
其中,所述方法实现在所述共享接入电缆网络的电缆调制解调器终端系统CMTS处;并且
其中,所述第一信道群组对应于依照所述DOCSIS通信协议的DOCSIS信道绑定群组。
36.一种用于管理在共享接入电缆网络上的多个通信信道上传送的流量流的方法,所述方法包括:
检测与第一分组从和第一信道群组相关联的第一队列中出队有关的第一分组出队事件,所述第一信道群组包括已被分配用于传送与第一服务流相关联的数据流量的多个通信信道,其中所述第一信道群组具有相关联的第一多个队列,所述第一多个队列包括所述第一队列,其中所述多个通信信道中的每个通信信道与所述第一多个队列中的至少一个相应的队列相关联;
使用与所述第一队列相关联的信息来识别与所述第一队列相关联的所述第一信道群组;
判断是否针对所述第一信道群组断言了流量流控制,其中针对所述第一信道群组的流量流控制的断言通过所述第一信道群组的第一多个通信信道上的流量流的暂停来表征;以及
响应于判断出针对所述第一信道群组断言了所述流量流控制并且响应于检测到所述第一分组从所述第一队列中出队,执行用于解除对在所述第一信道群组处的流量流控制的断言的至少一个操作,其中解除对针对所述第一信道群组的流量流控制的断言通过所述第一信道群组的第一多个通信信道上的流量流的恢复来表征。
37.根据权利要求36所述的方法,其中:
用于解除对在所述第一信道群组处的流量流控制的断言的至少一个操作包括使得至少一个分组能够被入队到所述第一多个队列中的至少一个队列中。
38.根据权利要求36所述的方法:
其中,所述共享接入电缆网络被配置为与电缆上数据服务接口规范DOCSIS通信协议兼容的混合光纤同轴HFC电缆网络;
其中,所述方法实现在所述共享接入电缆网络的电缆调制解调器终端系统CMTS处;并且
其中,所述第一信道群组对应于依照所述DOCSIS通信协议的DOCSIS信道绑定群组。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310232637.9A CN103384224B (zh) | 2008-09-05 | 2009-04-30 | 用于共享接入电缆网络中的绑定信道上的qos的方法和装置 |
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US19102608P | 2008-09-05 | 2008-09-05 | |
US61/191,026 | 2008-09-05 | ||
US12/404,219 | 2009-03-13 | ||
US12/404,224 US8059546B2 (en) | 2008-09-05 | 2009-03-13 | Traffic flow scheduling techniques implemented on bonded channels of a shared access cable network |
US12/404,219 US8040807B2 (en) | 2008-09-05 | 2009-03-13 | QoS on bonded channels of a shared access cable network |
US12/404,224 | 2009-03-13 | ||
PCT/US2009/042411 WO2010027534A1 (en) | 2008-09-05 | 2009-04-30 | Qos on bonded channels of a shared access cable network |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310232885.3A Division CN103384159B (zh) | 2008-09-05 | 2009-04-30 | 共享接入电缆网络中的绑定信道上的qos |
CN201310232637.9A Division CN103384224B (zh) | 2008-09-05 | 2009-04-30 | 用于共享接入电缆网络中的绑定信道上的qos的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102203766A true CN102203766A (zh) | 2011-09-28 |
CN102203766B CN102203766B (zh) | 2015-02-04 |
Family
ID=41799187
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310232885.3A Expired - Fee Related CN103384159B (zh) | 2008-09-05 | 2009-04-30 | 共享接入电缆网络中的绑定信道上的qos |
CN201310232637.9A Active CN103384224B (zh) | 2008-09-05 | 2009-04-30 | 用于共享接入电缆网络中的绑定信道上的qos的方法和装置 |
CN200980144067.XA Expired - Fee Related CN102203766B (zh) | 2008-09-05 | 2009-04-30 | 共享接入电缆网络中的绑定信道上的qos |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310232885.3A Expired - Fee Related CN103384159B (zh) | 2008-09-05 | 2009-04-30 | 共享接入电缆网络中的绑定信道上的qos |
CN201310232637.9A Active CN103384224B (zh) | 2008-09-05 | 2009-04-30 | 用于共享接入电缆网络中的绑定信道上的qos的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (2) | US8040807B2 (zh) |
EP (1) | EP2342654B1 (zh) |
CN (3) | CN103384159B (zh) |
WO (1) | WO2010027534A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103959812A (zh) * | 2012-11-26 | 2014-07-30 | 华为技术有限公司 | 跨介质的报文传输方法、装置及系统 |
WO2017024571A1 (zh) * | 2015-08-12 | 2017-02-16 | 华为技术有限公司 | 一种报文处理方法、装置及系统 |
CN111615151A (zh) * | 2020-04-26 | 2020-09-01 | 北京瀚诺半导体科技有限公司 | 一种上线信道筛选方法及装置 |
CN111630782A (zh) * | 2017-12-18 | 2020-09-04 | 艾锐势有限责任公司 | 全双工网络中的全双工扩展器 |
CN113630335A (zh) * | 2021-07-13 | 2021-11-09 | 北京电子工程总体研究所 | 一种交换以太网数据流控制策略优化选择方法 |
Families Citing this family (108)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7801040B1 (en) | 2007-10-01 | 2010-09-21 | Cisco Technology, Inc. | Node registration technique implemented in access networks |
US20030002043A1 (en) * | 2001-04-10 | 2003-01-02 | Kla-Tencor Corporation | Periodic patterns and technique to control misalignment |
US9088355B2 (en) | 2006-03-24 | 2015-07-21 | Arris Technology, Inc. | Method and apparatus for determining the dynamic range of an optical link in an HFC network |
CA2646281C (en) | 2006-03-24 | 2015-02-17 | General Instrument Corporation | Method and apparatus for configuring logical channels in a network |
US8537972B2 (en) | 2006-12-07 | 2013-09-17 | General Instrument Corporation | Method and apparatus for determining micro-reflections in a network |
US8948046B2 (en) | 2007-04-27 | 2015-02-03 | Aerohive Networks, Inc. | Routing method and system for a wireless network |
US8218502B1 (en) | 2008-05-14 | 2012-07-10 | Aerohive Networks | Predictive and nomadic roaming of wireless clients across different network subnets |
US8040807B2 (en) * | 2008-09-05 | 2011-10-18 | Cisco Technology, Inc. | QoS on bonded channels of a shared access cable network |
US9674892B1 (en) | 2008-11-04 | 2017-06-06 | Aerohive Networks, Inc. | Exclusive preshared key authentication |
US8483194B1 (en) | 2009-01-21 | 2013-07-09 | Aerohive Networks, Inc. | Airtime-based scheduling |
US8553727B2 (en) * | 2009-07-09 | 2013-10-08 | Entropic Communications, Inc. | Method and apparatus for LDPC transmission over a channel bonded link |
US8638808B2 (en) * | 2009-07-09 | 2014-01-28 | Entropic Communications Inc. | Method and apparatus for LDPC transmission over a channel bonded link |
US11115857B2 (en) | 2009-07-10 | 2021-09-07 | Extreme Networks, Inc. | Bandwidth sentinel |
US9900251B1 (en) | 2009-07-10 | 2018-02-20 | Aerohive Networks, Inc. | Bandwidth sentinel |
US8516532B2 (en) | 2009-07-28 | 2013-08-20 | Motorola Mobility Llc | IP video delivery using flexible channel bonding |
US8355328B2 (en) * | 2009-08-27 | 2013-01-15 | Broadcom Corporation | Dynamic load balancing |
US8289870B2 (en) * | 2009-09-23 | 2012-10-16 | Avaya Inc. | Priority-based, dynamic optimization of utilized bandwidth |
US8526485B2 (en) | 2009-09-23 | 2013-09-03 | General Instrument Corporation | Using equalization coefficients of end devices in a cable television network to determine and diagnose impairments in upstream channels |
US8935739B1 (en) | 2010-01-22 | 2015-01-13 | Gainespeed, Inc. | Distributed CCAP cable modem termination system |
US8910230B2 (en) | 2010-01-22 | 2014-12-09 | Gainspeed, Inc. | Method of transforming HFC CATV analog fiber transmission to digital fiber transmission |
US9584869B2 (en) | 2010-01-22 | 2017-02-28 | Gainspeed, Inc. | Virtual CCAP cable modem termination system with software reconfigurable MAC |
US9887855B2 (en) | 2010-01-22 | 2018-02-06 | Alcatel-Lucent Usa, Inc. | Virtual converged cable access platforms for HFC cable networks |
US8923131B2 (en) * | 2010-02-16 | 2014-12-30 | Broadcom Corporation | Traffic management in a multi-channel system |
US8527677B1 (en) * | 2010-06-25 | 2013-09-03 | Altera Corporation | Serial communications links with bonded first-in-first-out buffer circuitry |
US9002277B2 (en) | 2010-09-07 | 2015-04-07 | Aerohive Networks, Inc. | Distributed channel selection for wireless networks |
US20120099432A1 (en) * | 2010-10-20 | 2012-04-26 | Ceragon Networks Ltd. | Decreasing jitter in packetized communication systems |
US8654640B2 (en) * | 2010-12-08 | 2014-02-18 | General Instrument Corporation | System and method for IP video delivery using distributed flexible channel bonding |
EP2659618A4 (en) * | 2010-12-30 | 2016-11-16 | Ericsson Telefon Ab L M | DISPARATIVE DISCOVERY METHOD IN LINK LINES AND N UDS PROVISIONS |
JP5625997B2 (ja) * | 2011-02-23 | 2014-11-19 | 富士通株式会社 | 通信システムおよび伝送装置 |
US20130265984A1 (en) * | 2011-03-07 | 2013-10-10 | Honggang Li | Grouped machine-to-machine communications |
US8937992B2 (en) | 2011-08-30 | 2015-01-20 | General Instrument Corporation | Method and apparatus for updating equalization coefficients of adaptive pre-equalizers |
US10091065B1 (en) | 2011-10-31 | 2018-10-02 | Aerohive Networks, Inc. | Zero configuration networking on a subnetted network |
CN103095664B (zh) * | 2011-10-31 | 2015-12-16 | 国际商业机器公司 | Ip多媒体会话建立方法和系统 |
US9614688B2 (en) | 2011-11-15 | 2017-04-04 | Canon Kabushiki Kaisha | Providing image data to a client display device |
US8576705B2 (en) | 2011-11-18 | 2013-11-05 | General Instrument Corporation | Upstream channel bonding partial service using spectrum management |
US9113181B2 (en) | 2011-12-13 | 2015-08-18 | Arris Technology, Inc. | Dynamic channel bonding partial service triggering |
EP2817898B1 (en) * | 2012-02-20 | 2020-05-13 | Nokia of America Corporation | Hybrid all digital fiber to catv cable system and method |
US20130235884A1 (en) * | 2012-03-11 | 2013-09-12 | Broadcom Corporation | Mixed serial and parallel stream channel bonding architecture |
US9240956B2 (en) | 2012-03-11 | 2016-01-19 | Broadcom Corporation | Communication system using orbital angular momentum |
US9094161B2 (en) * | 2012-03-11 | 2015-07-28 | Broadcom Corporation | Channel bonding with multiple network types |
US8917745B2 (en) * | 2012-03-11 | 2014-12-23 | Broadcom Corporation | Channel bonding with orbital angular momentum |
US9015339B2 (en) * | 2012-04-25 | 2015-04-21 | International Business Machines Corporation | Monitoring streams buffering to optimize operator procressing |
US8868736B2 (en) | 2012-04-27 | 2014-10-21 | Motorola Mobility Llc | Estimating a severity level of a network fault |
US9003460B2 (en) | 2012-04-27 | 2015-04-07 | Google Technology Holdings LLC | Network monitoring with estimation of network path to network element location |
US8867371B2 (en) | 2012-04-27 | 2014-10-21 | Motorola Mobility Llc | Estimating physical locations of network faults |
US8837302B2 (en) | 2012-04-27 | 2014-09-16 | Motorola Mobility Llc | Mapping a network fault |
US9065731B2 (en) | 2012-05-01 | 2015-06-23 | Arris Technology, Inc. | Ensure upstream channel quality measurement stability in an upstream channel bonding system using T4 timeout multiplier |
KR101907465B1 (ko) * | 2012-05-02 | 2018-10-12 | 삼성전자주식회사 | 무선통신시스템에서 데이터를 재전송하기 위한 장치 및 방법 |
US8953450B2 (en) * | 2012-06-13 | 2015-02-10 | Alcatel Lucent | Method and system for ingress multicast load balancing |
KR101720319B1 (ko) * | 2012-06-13 | 2017-04-04 | 한국전자통신연구원 | 무선랜 시스템에서의 프레임 스케쥴링 방법 및 장치 |
CN104769864B (zh) * | 2012-06-14 | 2018-05-04 | 艾诺威网络有限公司 | 多播到单播转换技术 |
US8751645B2 (en) * | 2012-07-20 | 2014-06-10 | Telefonaktiebolaget L M Ericsson (Publ) | Lattice based traffic measurement at a switch in a communication network |
US9136943B2 (en) | 2012-07-30 | 2015-09-15 | Arris Technology, Inc. | Method of characterizing impairments detected by equalization on a channel of a network |
US9705804B2 (en) * | 2012-08-30 | 2017-07-11 | Sonus Networks, Inc. | Opportunistic wireless resource utilization using dynamic traffic shaping |
CN102882827A (zh) * | 2012-10-16 | 2013-01-16 | 北京大学 | 基于线性规划的时频双扩ofdm系统资源分配及接收方法 |
CN102946387B (zh) * | 2012-11-01 | 2016-12-21 | 惠州Tcl移动通信有限公司 | 一种防御拒接服务攻击的方法 |
US9137164B2 (en) | 2012-11-15 | 2015-09-15 | Arris Technology, Inc. | Upstream receiver integrity assessment for modem registration |
US9203639B2 (en) | 2012-12-27 | 2015-12-01 | Arris Technology, Inc. | Dynamic load balancing under partial service conditions |
US20140185630A1 (en) * | 2013-01-03 | 2014-07-03 | Casa Systems, Inc. | Systems And Methods For Performing Fiber Node Splits Using Remote QAM Modulation And Demodulation |
US9385955B2 (en) | 2013-02-27 | 2016-07-05 | Rogers Communications Inc. | Channel bonding for multiple communication systems |
US9197886B2 (en) | 2013-03-13 | 2015-11-24 | Arris Enterprises, Inc. | Detecting plant degradation using peer-comparison |
US10389650B2 (en) | 2013-03-15 | 2019-08-20 | Aerohive Networks, Inc. | Building and maintaining a network |
US9025469B2 (en) | 2013-03-15 | 2015-05-05 | Arris Technology, Inc. | Method for estimating cable plant topology |
US9413772B2 (en) | 2013-03-15 | 2016-08-09 | Aerohive Networks, Inc. | Managing rogue devices through a network backhaul |
US9042236B2 (en) | 2013-03-15 | 2015-05-26 | Arris Technology, Inc. | Method using equalization data to determine defects in a cable plant |
US10477199B2 (en) | 2013-03-15 | 2019-11-12 | Arris Enterprises Llc | Method for identifying and prioritizing fault location in a cable plant |
WO2014160652A1 (en) * | 2013-03-25 | 2014-10-02 | Marvell Word Trade Ltd. | Hardware acceleration for routing programs |
CN103733581B (zh) * | 2013-06-19 | 2017-01-25 | 华为技术有限公司 | 一种消息处理的方法及基站 |
US9276867B2 (en) * | 2013-06-28 | 2016-03-01 | Cisco Technology, Inc. | Hierarchical scheduling system with layer bypass including updating scheduling information of a scheduling layer for each item whether or not it bypasses the scheduling layer |
JP6188490B2 (ja) * | 2013-08-28 | 2017-08-30 | キヤノン株式会社 | 画像表示装置、制御方法およびコンピュータプログラム |
US10009287B2 (en) | 2013-12-26 | 2018-06-26 | Huawei Technologies Co., Ltd. | Hierarchical software-defined network traffic engineering controller |
US9825884B2 (en) | 2013-12-30 | 2017-11-21 | Cavium, Inc. | Protocol independent programmable switch (PIPS) software defined data center networks |
US9942196B2 (en) * | 2014-05-01 | 2018-04-10 | The Johns Hopkins University | Canonical network isolator component |
US9762502B1 (en) | 2014-05-12 | 2017-09-12 | Google Inc. | Method and system for validating rate-limiter determination made by untrusted software |
US9755978B1 (en) | 2014-05-12 | 2017-09-05 | Google Inc. | Method and system for enforcing multiple rate limits with limited on-chip buffering |
US10469404B1 (en) * | 2014-05-12 | 2019-11-05 | Google Llc | Network multi-level rate limiter |
US9473601B2 (en) * | 2014-06-19 | 2016-10-18 | Cavium, Inc. | Method of representing a generic format header using continuous bytes and an apparatus thereof |
US10616380B2 (en) | 2014-06-19 | 2020-04-07 | Cavium, Llc | Method of handling large protocol layers for configurable extraction of layer information and an apparatus thereof |
US9635146B2 (en) | 2014-06-19 | 2017-04-25 | Cavium, Inc. | Method of using bit vectors to allow expansion and collapse of header layers within packets for enabling flexible modifications and an apparatus thereof |
US9853882B2 (en) * | 2014-07-23 | 2017-12-26 | Cisco Technology, Inc. | Dynamic path switchover decision override based on flow characteristics |
US9680898B2 (en) * | 2014-09-15 | 2017-06-13 | Sony Corporation | Comment link to streaming media |
US9712450B1 (en) | 2014-09-24 | 2017-07-18 | Cisco Technology, Inc. | Methods and systems for scheduling data transmission with a feedback mechanism |
BR112017007998A2 (pt) * | 2014-11-19 | 2017-12-19 | Lantiq Beteiligungs Gmbh & Co Kg | interligação de camadas dependentes do meio físico |
IL238001B (en) | 2015-03-29 | 2020-05-31 | Verint Systems Ltd | System and method for identifying communication conversation participants based on communication traffic patterns |
US10516905B2 (en) * | 2015-04-01 | 2019-12-24 | Nokia Of America Corporation | Dynamic service flow creation for packet cable quality of service guarantee in a distributed cable management system |
US10057174B2 (en) | 2015-08-14 | 2018-08-21 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Dynamic group multipathing |
US10425956B2 (en) * | 2015-08-18 | 2019-09-24 | Huawei Technologies Co., Ltd. | Link scheduling system and method |
US10581992B2 (en) * | 2016-03-30 | 2020-03-03 | Cisco Technology, Inc. | Allocating bandwidth between network computing devices for pushing data to a client computing device |
CN105847176A (zh) * | 2016-05-20 | 2016-08-10 | 锐捷网络股份有限公司 | 一种传输业务流的方法和网络设备 |
DE112017003501T5 (de) * | 2016-07-11 | 2019-03-28 | Harmonic, Inc. | Scheduling von downstream-datenverkehr einer virtuellen ccap |
US11778663B1 (en) * | 2016-09-20 | 2023-10-03 | Marvell Asia Pte, Ltd. | Methods and systems for enabling communications from a station to an access point using a backoff counter and carrier sensing |
IL248306B (en) | 2016-10-10 | 2019-12-31 | Verint Systems Ltd | System and method for creating data sets for learning to recognize user actions |
IL252037B (en) | 2017-04-30 | 2021-12-01 | Verint Systems Ltd | System and method for identifying relationships between computer application users |
CN110710163B (zh) | 2017-06-15 | 2021-06-01 | 华为技术有限公司 | 用于在电缆网络中传输上行数据的方法和设备 |
IL256690B (en) | 2018-01-01 | 2022-02-01 | Cognyte Tech Israel Ltd | System and method for identifying pairs of related application users |
US10880920B2 (en) * | 2018-06-15 | 2020-12-29 | Cox Communications, Inc. | Systems, methods, and apparatuses for wireless scheduling based on docsis |
IL260986B (en) | 2018-08-05 | 2021-09-30 | Verint Systems Ltd | A system and method for using a user action log to study encrypted traffic classification |
US10999295B2 (en) | 2019-03-20 | 2021-05-04 | Verint Systems Ltd. | System and method for de-anonymizing actions and messages on networks |
US11038799B2 (en) | 2019-07-19 | 2021-06-15 | Cisco Technology, Inc. | Per-flow queue management in a deterministic network switch based on deterministically transmitting newest-received packet instead of queued packet |
US11689426B2 (en) * | 2019-08-27 | 2023-06-27 | OpenVault, LLC | System and method for applying CMTS management policies based on individual devices |
EP4046337A1 (en) | 2019-11-03 | 2022-08-24 | Cognyte Technologies Israel Ltd | System and method for identifying exchanges of encrypted communication traffic |
US11283722B2 (en) | 2020-04-14 | 2022-03-22 | Charter Communications Operating, Llc | Packet prioritization for frame generation |
US11394650B2 (en) * | 2020-04-14 | 2022-07-19 | Charter Communications Operating, Llc | Modificationless packet prioritization for frame generation |
US11329747B2 (en) * | 2020-07-10 | 2022-05-10 | Nokia Solutions And Networks Oy | Scheduling deterministic flows in time synchronized networks |
US11979339B1 (en) * | 2020-08-19 | 2024-05-07 | Cable Television Laboratories, Inc. | Modular schedulers and associated methods |
US11844057B2 (en) | 2020-09-09 | 2023-12-12 | Charter Communications Operating, Llc | Methods and apparatus for wireless data traffic management in wireline backhaul systems |
WO2022221032A1 (en) * | 2021-04-14 | 2022-10-20 | Arris Enterprises Llc | System for queuing flows to channels |
US11693799B2 (en) * | 2021-09-20 | 2023-07-04 | Red Hat, Inc. | Bandwidth control for input/output channels |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6614799B1 (en) | 1999-01-20 | 2003-09-02 | Cisco Technology, Inc. | Method and apparatus for dynamic adjustment of cable modem back-off parameters in a cable modem network |
US6693878B1 (en) | 1999-10-15 | 2004-02-17 | Cisco Technology, Inc. | Technique and apparatus for using node ID as virtual private network (VPN) identifiers |
US7801040B1 (en) | 2007-10-01 | 2010-09-21 | Cisco Technology, Inc. | Node registration technique implemented in access networks |
US6950399B1 (en) | 2000-07-06 | 2005-09-27 | Matsushita Electric Industrial Co., Ltd. | System and associated method for scheduling transport of variable bit-rate data over a network |
US7110419B1 (en) | 2001-04-11 | 2006-09-19 | Cisco Technology, Inc. | Technique for using address filter parameters to facilitate sign-on procedures in access networks |
US7088678B1 (en) * | 2001-08-27 | 2006-08-08 | 3Com Corporation | System and method for traffic shaping based on generalized congestion and flow control |
US7242694B2 (en) | 2001-10-31 | 2007-07-10 | Juniper Networks, Inc. | Use of group poll scheduling for broadband communication systems |
EP1416681A1 (en) * | 2002-10-29 | 2004-05-06 | Alcatel | Method for traffic engineering and ingress router adapted to perform such a method |
US7535900B2 (en) | 2003-01-21 | 2009-05-19 | Symmetricom, Inc. | Multiple transmission bandwidth streams with defferentiated quality of service |
US7627675B2 (en) | 2003-05-01 | 2009-12-01 | Cisco Technology, Inc. | Methods and devices for regulating traffic on a network |
US7583704B1 (en) | 2003-06-10 | 2009-09-01 | Carl Walker | Synchronizing separated upstream and downstream channels of cable modem termination systems |
US7532627B2 (en) * | 2004-05-25 | 2009-05-12 | Cisco Technology, Inc. | Wideband upstream protocol |
US9723267B2 (en) | 2004-12-15 | 2017-08-01 | Time Warner Cable Enterprises Llc | Method and apparatus for wideband distribution of content |
US7602820B2 (en) | 2005-02-01 | 2009-10-13 | Time Warner Cable Inc. | Apparatus and methods for multi-stage multiplexing in a network |
US7969878B2 (en) * | 2006-04-28 | 2011-06-28 | Siemens Enterprise Communications Gmbh & Co. Kg | Quality guarantee for real-time applications over shared networks |
US8040807B2 (en) | 2008-09-05 | 2011-10-18 | Cisco Technology, Inc. | QoS on bonded channels of a shared access cable network |
-
2009
- 2009-03-13 US US12/404,219 patent/US8040807B2/en not_active Expired - Fee Related
- 2009-03-13 US US12/404,224 patent/US8059546B2/en not_active Expired - Fee Related
- 2009-04-30 WO PCT/US2009/042411 patent/WO2010027534A1/en active Application Filing
- 2009-04-30 CN CN201310232885.3A patent/CN103384159B/zh not_active Expired - Fee Related
- 2009-04-30 CN CN201310232637.9A patent/CN103384224B/zh active Active
- 2009-04-30 CN CN200980144067.XA patent/CN102203766B/zh not_active Expired - Fee Related
- 2009-04-30 EP EP09811875.5A patent/EP2342654B1/en not_active Not-in-force
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103959812A (zh) * | 2012-11-26 | 2014-07-30 | 华为技术有限公司 | 跨介质的报文传输方法、装置及系统 |
CN103959812B (zh) * | 2012-11-26 | 2017-12-29 | 华为技术有限公司 | 跨介质的报文传输方法、装置及系统 |
WO2017024571A1 (zh) * | 2015-08-12 | 2017-02-16 | 华为技术有限公司 | 一种报文处理方法、装置及系统 |
CN111630782A (zh) * | 2017-12-18 | 2020-09-04 | 艾锐势有限责任公司 | 全双工网络中的全双工扩展器 |
CN111615151A (zh) * | 2020-04-26 | 2020-09-01 | 北京瀚诺半导体科技有限公司 | 一种上线信道筛选方法及装置 |
CN111615151B (zh) * | 2020-04-26 | 2023-10-10 | 北京瀚诺半导体科技有限公司 | 一种上线信道筛选方法及装置 |
CN113630335A (zh) * | 2021-07-13 | 2021-11-09 | 北京电子工程总体研究所 | 一种交换以太网数据流控制策略优化选择方法 |
CN113630335B (zh) * | 2021-07-13 | 2023-12-26 | 北京电子工程总体研究所 | 一种交换以太网数据流控制策略优化选择方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2010027534A1 (en) | 2010-03-11 |
US20100061234A1 (en) | 2010-03-11 |
CN102203766B (zh) | 2015-02-04 |
US8059546B2 (en) | 2011-11-15 |
EP2342654A4 (en) | 2015-03-11 |
CN103384224A (zh) | 2013-11-06 |
US8040807B2 (en) | 2011-10-18 |
EP2342654B1 (en) | 2018-06-13 |
CN103384159B (zh) | 2015-05-27 |
CN103384159A (zh) | 2013-11-06 |
CN103384224B (zh) | 2016-12-28 |
EP2342654A1 (en) | 2011-07-13 |
US20100061235A1 (en) | 2010-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102203766B (zh) | 共享接入电缆网络中的绑定信道上的qos | |
CN100452016C (zh) | 用于调节网络上流量的方法和设备 | |
Hong et al. | Achieving high utilization with software-driven WAN | |
US7697436B2 (en) | Bandwidth allocation | |
Sariowan et al. | SCED: A generalized scheduling policy for guaranteeing quality-of-service | |
US7532627B2 (en) | Wideband upstream protocol | |
CN101009655B (zh) | 流量调度方法及装置 | |
CN101053208B (zh) | 线缆网络中的宽带服务配设方法 | |
CN104170335A (zh) | 分离式体系结构网络中的拥塞控制和资源分配 | |
CN101102275B (zh) | 在以太网交换芯片上实现多级调度的方法 | |
CN101378357A (zh) | 网络系统 | |
CN109714275A (zh) | 一种用于接入业务传输的sdn控制器及其控制方法 | |
US9439102B2 (en) | Transmitting apparatus, transmission method, and transmission system | |
CN112600684B (zh) | 云业务的带宽管理及配置方法及相关装置 | |
CN102404226A (zh) | Linux系统下基于802.1p的数据帧绝对优先级调度方法 | |
CN108809856A (zh) | 电力通信异构网络的流量调度方法 | |
Bouabdallah et al. | Resolving the fairness issues in bus-based optical access networks | |
CN108702336A (zh) | 数据路由中的动态优化队列 | |
CN109922003A (zh) | 一种数据发送方法、系统及相关组件 | |
EP2773053A1 (en) | Hybrid cable-wireless system | |
CN102769566B (zh) | 一种多级调度系统配置、变更方法和装置 | |
CN104301255B (zh) | 一种光网络多用户带宽公平分配的方法 | |
EP2773069A1 (en) | Channel Bonding for Multiple Communication Systems | |
Kaur et al. | Providing deterministic end-to-end fairness guarantees in core-stateless networks | |
Sun et al. | Frame-based worst-case weighted fair queueing with jitter control |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150204 Termination date: 20210430 |
|
CF01 | Termination of patent right due to non-payment of annual fee |