CN108234235B - 用于数据监控的方法、网络设备以及计算机可读存储介质 - Google Patents

用于数据监控的方法、网络设备以及计算机可读存储介质 Download PDF

Info

Publication number
CN108234235B
CN108234235B CN201710909741.5A CN201710909741A CN108234235B CN 108234235 B CN108234235 B CN 108234235B CN 201710909741 A CN201710909741 A CN 201710909741A CN 108234235 B CN108234235 B CN 108234235B
Authority
CN
China
Prior art keywords
twamp
session
user
network
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710909741.5A
Other languages
English (en)
Other versions
CN108234235A (zh
Inventor
佩尤施·古普塔
斯里瓦特扎·萨兰加帕尼
桑贾伊·库马尔·古普塔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Juniper Networks Inc
Original Assignee
Juniper Networks Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Juniper Networks Inc filed Critical Juniper Networks Inc
Publication of CN108234235A publication Critical patent/CN108234235A/zh
Application granted granted Critical
Publication of CN108234235B publication Critical patent/CN108234235B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/20Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0864Round trip delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/087Jitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0888Throughput
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • H04L43/106Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • H04L43/55Testing of service level quality, e.g. simulating service usage

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及用于数据监控的方法、网络设备以及计算机可读存储介质。描述了用于在计算机网络中的两个端点之间执行用户感知的双向主动测量协议(TWAMP)数据会话供应的技术。例如,所公开的技术包括扩展TWAMP控制消息,以包括用于协商用户感知的TWAMP数据监控的通信模式。如果两个端点都支持所述通信模式,则在通过控制会话提供(协商)TWAMP数据会话时,指定用户标识符。所公开的技术还包括扩展TWAMP数据消息,以在用于数据会话的每个测试包中包括用户标识符。以这种方式,每个端点可以基于包含在所接收的TWAMP测试包中的用户标识符识别与一个或多个接收的TWAMP测试包对应的用户。

Description

用于数据监控的方法、网络设备以及计算机可读存储介质
技术领域
本公开涉及计算机网络。
背景技术
在过去的几十年里,互联网从包括几个节点的小型网络向为超过10亿用户提供服务的全球普及网络呈指数级增长。如今,单独用户不限于通过网络用语音和/或数据下载来运行几个网络会话。而是,用户使用的服务范围随着多媒体游戏、音频和视频流、网络服务、IP语音(VoIP)等广泛变化。随着新技术的突破,例如,物联网(IoT)和M2M(机器对机器)通信的利用率的提高,给定用户可能需要的网络服务和软件应用程序也从几个会话变成具有并发流的多个会话。随着用户同时越来越多地运行多个应用程序、服务和事务,这一数字正在迅速增长。用户会话和数据包流的增长的数量和种类在诸如等待时间、延迟以及抖动等网络性能上对网络服务提供商造成了挑战。
发明内容
通常,本公开涉及用于使用计算机网络中的双向主动测量协议(TWAMP)来执行网络性能的用户感知的数据监控的技术。例如,所公开的技术包括扩展TWAMP控制消息,以包括用于协商用户感知的TWAMP数据监控的通信模式。如果两个端点都支持所述通信模式,则在通过控制会话提供(协商)TWAMP数据会话时,指定用户标识符。所公开的技术还包括扩展TWAMP数据消息,以在用于数据会话的每个测试包中包括用户标识符。以这种方式,每个端点可以基于包含在所接收的TWAMP测试包中的用户标识符识别与一个或多个接收的TWAMP测试包对应的用户。
本文描述的技术可以提供某些技术优点。例如,该技术可以更有效和准确地允许服务提供商监控关键性能指标(KPI),例如,单独用户的等待时间、延迟、抖动、呼叫建立时间、吞吐量、带宽和用户配置文件。这进而可能允许服务提供商网络为其用户更好地改善和/或优化其网络架构和网络资源的配置。此外,网络服务提供商可以改善诸如业务检测功能(TDF)、深度包检测(DPI)、内容传送服务等用户感知的网络服务的传送。在一个示例中,用户专用业务流可以由实际的用户设备发起,使得本文描述的技术可以用于实时或伪实时地测量实际用户业务的KPI。作为第二示例,用户业务流可以由用于测量模拟用户业务的KPI的一个或多个测试设备发起。
在一个示例中,本公开涉及一种方法,包括:在双向主动测量协议(TWAMP)控制客户端与TWAMP服务器之间建立控制连接;并且由TWAMP控制客户端和TWAMP服务器通过控制连接协商在第一网络设备上执行的TWAMP会话发送器与在第二网络设备上执行的TWAMP会话反射器之间的数据会话,其中,协商数据会话包括指定服务提供商网络的单独用户的用户标识符。该方法还包括在TWAMP会话发送器和TWAMP会话反射器之间交换用于数据会话的一个或多个TWAMP测试包,一个或多个TWAMP测试包中的每一个包括用户的用户标识符。
在另一示例中,本公开涉及一种网络设备,包括:存储器;以及与存储器通信的一个或多个处理器。一个或多个处理器执行TWAMP控制客户端和TWAMP会话发送器,并且被配置为:在TWAMP控制客户端和TWAMP服务器之间建立控制连接,并且协商在TWAMP会话发送器与在第二网络设备上执行的TWAMP会话反射器之间的数据会话,其中,协商数据会话包括指定服务提供商网络的单独用户的用户标识符。该处理器还被配置为:将用于数据会话的一个或多个TWAMP测试包发送到TWAMP会话反射器,一个或多个TWAMP测试包中的每一个包括用户标识符;并且接收从TWAMP会话反射器返回的一个或多个TWAMP测试包,一个或多个TWAMP测试包中的每一个包括用户标识符和用于测量第一网络设备和第二网络设备之间的网络性能的数据会话的至少一个度量。
在另外的示例中,本公开涉及一种网络设备,包括:存储器;以及与存储器通信的一个或多个处理器。一个或多个处理器执行TWAMP服务器和TWAMP会话反射器,并且被配置为:在TWAMP服务器和TWAMP控制客户端之间建立控制连接,并且使用TWAMP服务器从TWAMP控制客户端接收在TWAMP会话反射器和在另一网络设备上执行的TWAMP会话发送器之间的数据会话的TWAMP会话请求,其中,TWAMP会话请求指定服务提供商网络的单独用户的用户标识符。该处理器还被配置为:由TWAMP会话反射器从TWAMP会话发送器接收用于数据会话的一个或多个TWAMP测试包,一个或多个TWAMP测试包中的每一个包括与数据会话相关联的用户标识符,并且由TWAMP会话反射器将一个或多个TWAMP测试包发送回TWAMP会话发送器,一个或多个TWAMP测试包中的每一个包括与数据会话相关联的用户标识符和用于测量第一网络设备和第二网络设备之间的网络性能的数据会话的至少一个度量。
在附图和下面的描述中阐述一个或多个示例的细节。其他特征、目的和优点将从说明书和附图以及权利要求书中变得显而易见。
附图说明
图1是示出根据本文所述的示例的使用双向主动测量协议(TWAMP)执行用户感知的数据监控的示例性网络系统的框图;
图2是示出根据本公开的技术的包括被配置为执行用户感知的TWAMP数据会话供应的网络设备的示例性TWAMP架构的框图;
图3是示出根据本公开的技术的在TWAMP控制客户端和TWAMP服务器之间的示例性消息序列的图;
图4是示出根据本公开的技术的被配置为执行一个或多个TWAMP逻辑角色的示例性路由器的框图;
图5是示出根据本公开的技术的被配置为执行一个或多个TWAMP逻辑角色的示例性网络设备的框图;
图6至图11是示出根据本公开的技术的在TWAMP控制客户端和TWAMP服务器之间的TWAMP控制消息的示例性格式的概念图;
图12至图13是示出根据本公开的技术的在TWAMP会话发送器和TWAMP会话反射器之间的用户感知的TWAMP数据会话的TWAMP测试包的示例性格式的概念图;
图14至图15示出了根据本文所描述的技术的TWAMP应答消息的示例性格式;
图16是示出根据本公开的技术的协商用户感知的TWAMP数据会话的示例性操作的流程图;
图17是示出根据本公开的技术的在第一网络设备上执行的TWAMP会话发送器和在第二网络设备上执行的TWAMP会话反射器之间交换用于用户感知的TWAMP数据会话的TWAMP测试包的示例性操作的流程图。
具体实施方式
图1是示出根据本文所述的示例的使用双向主动测量协议(TWAMP)执行用户感知的数据监控的示例性网络系统的框图。图1的示例性网络系统包括服务提供商网络2,其作为专用网络来操作,以向用户设备16提供基于包的网络服务。即,服务提供商网络2为用户设备16提供网络接入的认证和建立,使得用户设备可以开始与可以是诸如互联网的内部或外部基于包的网络的公共网络12交换数据包。
在图1的示例中,服务提供商网络2包括经由服务提供商核心网络7(以下称为“核心网络7”)和路由器8向公共网络12提供连接的接入网络6。核心网络7和公共网络12提供可供用户设备16请求和使用的基于包的服务。作为示例,核心网络7和/或公共网络12可以提供大量数据传送、互联网协议语音(VoIP)、互联网协议电视(IPTV)、短消息服务(SMS)、无线应用协议(WAP)服务或客户专用的应用服务。公共网络12可以包括例如局域网(LAN)、广域网(WAN)、互联网、虚拟LAN(VLAN)、企业LAN、层3虚拟专用网(VPN)、由操作接入网6的服务提供商操作的互联网协议(IP)内联网、企业IP网络或它们的某种组合。在各种示例中,公共网络12连接到公共WAN、互联网或其他网络。公共网络12执行一个或多个包数据协议(PDP),例如,IP(IPv4和/或IPv6),X.25或点对点协议(PPP),以使公共网络12的基于包的传输能够服务。
通常,用户设备16经由接入网络6连接到网关路由器8,以接收到用于由用户设备16托管的应用程序的用户服务的连接。例如,用户可以表示企业、住宅用户或移动用户。例如,用户设备16可以是个人计算机、膝上型计算机或位于客户设备(CE)11后面的其他类型的计算设备,其可以提供本地路由和交换功能。每个用户设备16可以运行各种软件应用,诸如文字处理和其他办公室支持软件、网页浏览软件、支持语音呼叫、视频游戏、视频会议和电子邮件的软件等。例如,用户设备16可以是各种网络使能设备,通常被称为“物联网”(IoT)设备,例如,照相机、传感器(S)、电视机、电器等。另外,用户设备16可以包括经由无线接入网络(RAN)6访问服务提供商网络2的数据服务的移动设备。示例性移动用户设备包括移动电话、具有例如3G无线网卡的膝上型或台式电脑、支持无线的上网本、视频游戏设备、寻呼机、智能电话、个人数据助理(PDA)等。
网络服务提供商运行或在某些情况下租赁接入网络6的元件,以在用户设备16和路由器8之间提供包传输。接入网络6表示聚合来自一个或多个用户设备16的数据业务以用于向/从服务提供商的核心网络7传送的网络。接入网络6包括网络节点,这些网络节点执行通信协议,以传送控制和用户数据,以促进用户设备16和路由器8之间的通信。接入网络6可以包括宽带接入网络、无线LAN、公共交换电话网络(PSTN)、客户驻地设备(CPE)网络或其他类型的接入网络,并且可以包括或以其他方式提供诸如无线电接入网络(RAN)(未示出)的蜂窝接入网络的连接。示例包括符合通用移动电信系统(UMTS)架构的网络、被称为长期演进(LTE)的UMTS的演进、由互联网工程任务组(IETF)标准化的移动IP、以及由第三代合作伙伴计划(3GPP)、第三代合作伙伴计划2(3GGP/2)和WiMAX论坛提出的其他标准。
路由器18可以是客户边缘(CE)路由器、提供商边缘(PE)路由器或在接入网络6和核心网络7之间的其他网络设备。核心网络7向附接到接入网络6的用户设备16提供基于包的连接,以用于访问公共网络12(例如,互联网)。核心网络7可以表示由服务提供商拥有和操作的互连多个网络(可以包括接入网络6)的公共网络。核心网络7可以实现多协议标签交换(MPLS)转发,并且在这样的情况下可以被称为MPLS网络或MPLS骨干网。在一些情况下,核心网络7表示多个互连的自治系统,例如,提供来自一个或多个服务提供商的服务的互联网。公共网络12可以代表互联网。公共网络12可以表示经由转接网络22和一个或多个网络设备(例如,客户边缘设备,例如,客户边缘交换机或路由器)耦接到核心网络7的边缘网络。公共网络12可以包括数据中心。路由器8可以经由虚拟网络20与服务节点10交换包,并且路由器8可以经由转接网络22将包转发到公共网络12。
在包括有线/宽带接入网络的网络2的示例中,路由器8可以表示宽带网络网关(BNG)、宽带远程访问服务器(BRAS)、MPLS PE路由器、核心路由器或网关、或电缆调制解调器终端系统(CMTS)。在包括作为接入网络6的蜂窝接入网络的网络2的示例中,路由器8可以表示移动网关,例如,网关通用包无线服务(GPRS)服务节点(GGSN)、接入网关(aGW)或包数据网络(PDN)网关(PGW)。在其他示例中,关于路由器8描述的功能可以在交换机、服务卡、或另一个网络元件、或组件中实现。在一些示例中,路由器8本身可以是服务节点。
管理至少部分网络2的网络服务提供商通常向与接入服务提供商网络2的设备(例如,用户设备16)相关联的用户提供服务。例如,所提供的服务可以包括传统的互联网接入、VoIP、视频和多媒体服务、以及安全服务。如上文关于接入网络6所描述的,核心网络7可以支持连接到服务提供商网络接入网关以提供对所提供服务的访问的多种类型的接入网络基础设施。在一些情况下,网络系统可以包括附接到具有变化架构的多个不同接入网络6的用户设备16。
通常,任何一个或多个用户设备16可以通过向诸如路由器18或路由器8的网关设备发送会话请求来请求授权和数据服务。进而,路由器18可以访问中央服务器(未示出),例如,认证、授权和计费(AAA)服务器,以认证请求网络接入的一个用户设备16。一旦认证,任何用户设备16可以向核心网络7发送用户数据业务,以访问和接收由公共网络12提供的服务,并且这样的包可以作为至少一个数据包流的一部分穿过路由器8。在一些示例中,路由器18可以将所有经认证的用户业务转发到公共网络12,并且如果用户业务需要服务节点10上的服务,则路由器8可应用服务15和/或引导特定用户业务到数据中心9。要应用到用户业务的应用程序(例如,服务应用程序)可以被托管在服务节点10上。
例如,当转发用户业务时,路由器8可以通过在安装在路由器9内的一个或多个服务卡上执行的服务15来引导单独的用户数据包流。此外,或者替代地,服务提供商网络2包括数据中心9,数据中心9具有提供大多数虚拟化网络服务的执行环境的一组服务节点10。在一些示例中,每个服务节点10表示服务实例。每个服务节点10可以将一个或多个服务应用于业务流。因此,路由器8可以通过由服务节点10提供的定义的服务集来引导用户数据包流。即,在一些示例中,每个用户数据包流可以通过由服务节点10提供的服务的特定有序组合来转发,每个有序集合在此被称为“服务链”。作为示例,服务15和/或服务节点10可以应用状态防火墙(SFW)和安全服务、深度包检测(DPI)、载波级网络地址转换(CGNAT)、业务目的功能(TDF)服务、媒体(语音/视频)优化、互联网协议安全(IPSec)/虚拟专用网(VPN)服务、超文本传输协议(HTTP)过滤、计数、计费、收费、和/或数据包流的负载平衡、或应用于网络业务的其他类型的服务。
在图1的示例中,用户数据包流可以沿着包括服务节点10应用的服务15和/或服务中的任何一个的服务链被引导。一旦在服务链的终端节点(即,将被应用至沿着特定服务路径流动的包的最后一个服务)处被处理,业务可以被引导到公共网络12。
鉴于“服务链”定义了以特定顺序被应用以向绑定到服务链的包提供应用的复合服务的一个或多个服务,“服务隧道”或“服务路径”是指由服务链处理的数据包流采取的逻辑和/或物理路径以及根据服务链排序转发数据包流的转发状态。每个服务链可以与相应的服务隧道相关联,并且与每个用户设备16相关联的数据包流根据与相应用户相关联的服务配置文件沿服务隧道流动。例如,给定的用户可以与特定服务配置文件相关联,进而特定服务配置文件被映射到与特定服务链相关联的服务隧道。同样,另一个用户可以与不同的服务配置文件相关联,该服务配置文件进而被映射到与不同服务链相关联的服务隧道。在一些示例中,在路由器18对用户进行认证和建立访问会话之后,路由器18或路由器8可以沿着适当的服务隧道为用户引导数据包流,从而使数据中心9为给定的用户应用必要的有序服务(ordered services,定制服务)。在一些示例中,SDN控制器14还可以向路由器18或路由器8提供转发规则集,以用于管理转发路径。在一些示例中,SDN控制器14通过数据中心9中的所有元件从路由器8开始来管理转发路径。
在一些示例中,服务节点10可以使用内部配置的转发状态来实现服务链,所述转发状态引导沿着服务链的包流的包,用于根据所识别的这组服务节点10进行处理。这样的转发状态可以指定用于使用诸如IP或通用路由封装(GRE)隧道的网络隧道、使用GRE(NVGRE)的网络虚拟化,或者通过使用VLAN、虚拟可扩展LAN(VXLAN)、MPLS技术等,在服务节点10之间进行隧道化的隧道接口。在一些情况下,将服务节点10互连的实际或虚拟交换机、路由器或其他网络元件可以被配置为根据服务链将数据包流引导到服务节点10。
在图1的示例中,服务提供商网络2包括软件定义网络(SDN)和网络功能虚拟化(NFV)架构。SDN控制器设备14可以提供用于配置和管理服务提供商网络2的路由和交换基础设施的高级控制器。NFV协调器设备13可以提供高级协调器,用于配置和管理到数据中心9的服务节点10内的网络服务的虚拟化。在某些情况下,SDN控制器14管理数据中心9的操作环境内的虚拟机(VM)的部署。例如,SDN控制器14可以与提供商边缘(PE)路由器8交互,以指定在下面更详细描述的服务链信息。例如,由SDN控制器14提供的服务链信息可以指定由服务节点10提供的服务、用于沿服务路径隧道化或以其他方式传送包流的流量工程信息、速率限制、服务类型(TOS)标记、或指定用于将数据包流匹配到特定服务链的标准的包分类器的任何组合和排序。SDN控制器的进一步示例细节在2013年6月5日提交的PCT国际专利申请PCT/US13/44378中描述,其全部内容通过引用并入本文。
尽管被示为数据中心9的一部分,服务节点10可以是由核心网络7的一个或多个交换机或虚拟交换机耦接的网络设备。在一个示例中,每个服务节点10可以作为VM在虚拟计算环境中运行。此外,计算环境可以包括诸如基于x86处理器的服务器的通用计算设备的可扩展集群。作为另一示例,服务节点10可以包括通用计算设备和专用设备的组合。作为虚拟化网络服务,由服务节点10提供的单个网络服务可以通过虚拟化存储器的配置、处理器利用率、存储和网络策略以及水平地通过添加额外的负载平衡的VM而如在现代数据中心中那样被缩放(scale)。在其他示例中,服务节点10可以是网关设备或其他路由器。在另外的示例中,关于每个服务节点10描述的功能可以在交换机、服务卡或其他网络元件或组件中实现。
如本文所述,网络系统2内的元件使用双向主动测量协议(TWAMP)执行用户感知的数据监控。即,在服务提供商网络2内可以使用TWAMP来在也称为主机或端点的网络设备之间基于每个用户测量网络性能的单向和双向或往返度量,例如,路径连接性、路径延迟、包抖动、包丢失、包重新排序等。通常,TWAMP测量架构包括至少两个网络设备,每个网络设备支持TWAMP并执行特定角色,来启动数据会话并交换用于数据会话的测试包。在图1所示的示例网络架构中,如本文所描述的用户感知的TWAMP可以用于测量用户特定业务流的关键性能指标。在一个示例中,用户特定业务流可以由用户设备16发起,使得本文描述的技术可以用于测量用于实时或伪实时用户业务的KPI。作为第二示例,用户业务流可以由用于测量模拟的用户业务的KPI的一个或多个测试设备21发起。在该示例中,TWAMP控制客户端和TWAMP会话发送器的逻辑角色都由用户设备16或TD 21执行,TWAMP服务器和TWAMP会话反射器的逻辑角色都由路由器8或服务节点10执行。
在替代的TWAMP架构中,每个逻辑角色可以在不同的主机或端点上执行。在其他示例架构中,TWAMP控制客户端可以在作为用于第一和/或第二端点(例如,用户设备16、路由器8或服务节点10A)的分布式控制平面的SDN控制器14上执行。虽然本文中描述了测量网络服务的网络性能,但本文描述的扩展用户感知的TWAMP也可以应用于测量与任何两个端点(例如,路由器18和路由器8)之间的网络服务无关的网络性能。
如本文进一步描述的,在用户设备16或TD 21上执行的TWAMP控制客户端和在路由器8或服务节点10上执行的TWAMP服务器建立控制连接,并使用TWAMP控制消息来启动、开始和停止TWAMP数据会话24'、24”(统称为“TWAMP数据会话24”)。即,本公开中描述的技术扩展了TWAMP,使得可以在任何给定用户设备16或TD 21与第二网络设备(例如,路由器8和/或服务节点10)之间提供一个或多个用户感知的TWAMP数据会话24。另外,根据这些技术,在用户设备16或TD 21上执行的TWAMP控制客户端可选地利用扩展的TWAMP来识别从路由器8和/或服务节点10可用的一组服务,并且基于这组服务,可以建立TWAMP数据会话24,作为被设计成测试和监控应用于特定用户流的特定服务的性能度量的服务特定的TWAMP数据会话。如所描述的,扩展TWAMP,以允许请求用户设备16或TD 21指定用户标识符(SUB-ID)以及可选地指定服务标识符(SERVICE-ID),其中,SUB-ID唯一地识别用户,例如,用于网络启用设备的IP地址或用于移动设备的IMSE/IMEI,并且SERVICE-ID对应于特定服务或由路由器8和/或服务节点10提供的服务的组合。
在接收到修改的请求时,在路由器8或服务节点10上执行的TWAMP服务器配置内部转发信息,以允许请求用户设备16或TD 21上的TWAMP客户端使用TWAMP数据会话24来测试和监控特定用户业务的性能。例如,一旦建立数据会话24,在特定用户设备16或TD 21上执行的TWAMP会话发送器和在路由器8或服务节点10上执行的TWAMP会话反射器使用TWAMP数据消息来交换用于数据会话24的测试包,这些测试包携带用于测量用户业务流的网络性能的一个或多个度量。
例如,路由器8或服务节点10内的TWAMP会话反射器可以剥离封装在测试包内的数据包,并转发数据包,以应用一个或多个网络服务。在应用服务之后,所得到的包被引导回到TWAMP会话反射器,被封装成TWAMP测试包并发送回在特定用户设备16或TD 21上执行的TWAMP客户端。TTAMP客户端提取嵌入在TWAMP包内的时间戳,从而允许为单独用户以及并且可选地特定服务或应用于特定用户的业务流的服务组合计算等待时间测量。在一些示例中,数据会话24可以与不同的网络性能度量和/或不同的用户相关联。在其他示例中,多个数据会话中的每一个可以与不同的网络服务或服务的组合(即由路由器8的服务15或任一个服务节点10提供的服务链)相关联。
在一些示例中,TWAMP测试包携带的度量可以包括用于发送或接收测试包的时间戳、用于发送或接收测试包的错误估计、用于发送测试包的序列号、用于测试包的生存期(TTL)值、保持活动的包数据单元(PDU)、和/或服务包、字节或用户的计数中的一个或多个。单向和双向网络性能测量可以包括保持活动的或路径连通性、往返时间(RTT)、路径延迟、包抖动、包重新排序、包丢失、服务等待时间测量、或基于收到的度量的服务负载测量。
在RFC 5357(Hedayat等人,“双向主动测量协议(TWAMP)”,互联网工程任务组(IETF),网络工作组,RFC 5357,2008年10月(Hedayat,et al.,“A Two-Way ActiveMeasurement Protocol(TWAMP),”Internet Engineering Task Force(IETF),NetworkWorking Group,RFC 5357,October 2008))中更详细地描述了TWAMP,其全部内容通过引用并入本文。TWAMP基于单向主动测量协议(OWAMP),其可以用于测量网络设备之间的网络性能的单向度量。在RFC 4656(Shalunov等人,“单向主动测量协议(OWAMP)”,互联网工程任务组(IETF),网络工作组,RFC 4656,2006年9月(Shalunov,et al.,“A One-Way ActiveMeasurement Protocol(OWAMP),”Internet Engineering Task Force(IETF),NetworkWorking Group,RFC 4656,September 2006))中更详细地描述了OWAMP,其全部内容通过引用并入本文。
在2015年6月30日提交的美国申请号14/755,961中更详细地描述了扩展TWAMP以在SDN和NFV架构内进行操作,其中,TWAMP控制客户端在SDN控制器上执行,其全部内容通过引用并入本文。在2015年6月30日提交的美国申请No.14/755,986中有更详细地描述了扩展TWAMP以支持服务关键性能指标(KPI)的选择和测量,其全部内容通过引用并入本文。在2014年12月17日提交的美国申请No.14/573,167中更详细地描述了使用TWAMP执行服务等待时间测量的技术,其全部内容通过引用并入本文。在题为“SESSION-IDENTIFIER BASEDTWAMP DATA SESSION PROVISIONINGIN COMPUTER NETWORKS”的印度申请号200641033262中描述了在计算机网络中在两个端点之间执行基于会话标识符(“SID”)的双向主动测量协议(TWAMP)数据会话供应的示例性技术的额外细节,其全部内容通过引用并入本文。
所公开的技术包括扩展TWAMP控制消息,以包括用于用户感知的TWAMP数据会话供应的通信模式。以这种方式,支持用户感知的TWAMP数据会话供应,可在建立控制连接期间由在用户设备16的任一个上执行的TWAMP控制客户端和在路由器8或服务节点10上执行的TWAMP服务器协商。所公开的技术还包括扩展TWAMP数据消息,以在用于数据会话的每个测试包中包括用户标识符(SUB-ID)。以这种方式,在给定用户设备16上执行的TWAMP会话发送器和在路由器8或服务节点10上执行的TWAMP会话反射器可以基于包含在接收的测试包中的SUB-ID将用于数据会话24的接收的测试包与特定用户和可选地一组特定的一个或多个服务(例如,服务链)相关联。
所公开的技术可以提供某些技术优点。例如,该用户感知的技术可以更有效和准确地允许服务提供商监控关键性能指标(KPI),例如,特定服务的单独用户的等待时间、延迟、抖动、呼叫建立时间、吞吐量、每个会话的带宽等。这进而可允许服务提供商网络更好地改善和/或优化其网络架构和网络资源的配置。此外,网络服务提供商可以改善诸如业务检测功能(TDF)、深度包检测(DPI)、内容传送服务等用户感知的网络服务的传送
图2是示出根据本公开的技术的包括被配置为执行用户感知的TWAMP数据会话供应的网络设备的示例性TWAMP架构26的框图,以便能够监控用户级别的网络服务。在该示例中,TWAMP架构26包括第一网络设备28和第二网络设备30。
通常,第一网络设备28可以是发起用户业务的任何设备(例如,测试设备21或用户设备16),例如,膝上型计算机、计算机、平板电脑、移动设备、照相机、计算机使能传感器、电视机、电器或IoT设备。第二网络设备30可以包括处理用户业务并且在某些情况下向用户数据包流应用网络服务的任何设备,例如,路由器,例如,来自图1的路由器8、数据中心9内的任一服务节点10、防火墙、IDP设备或其他安全设备、交换机等。
在图2所示的示例中,第一网络设备28被配置为执行TWAMP控制客户端32和TWAMP会话发送器34,并且第二网络设备30被配置为执行TWAMP服务器38、TWAMP会话反射器40和可选地网络服务52。TWAMP控制客户端32和TWAMP会话发送器34可以经由通信链路46连接。在TWAMP控制客户端32和TWAMP会话发送器34在同一主机上被执行的所示的示例中,通信链路46可包括内部通信链路,例如,内存或总线。在其他示例中,在TWAMP控制客户端32和TWAMP会话发送器34在不同主机上被执行的情况下,通信链路46可以包括外部通信链路。同样,TWAMP服务器38和TWAMP会话反射器40可以经由通信链路48连接。在一些示例中,不同的TWAMP逻辑角色或实体可以使用可扩展消息和呈现协议(XMPP)接口或任何其他通信协议通过任一个通信链路46、48进行通信。
根据本公开的技术,第一网络设备28和第二网络设备30可以被配置为执行用户感知的TWAMP数据会话供应。在图2所示的示例中,TWAMP控制客户端32和TWAMP服务器38建立控制连接42。控制连接42可以包括传输控制协议(TCP)连接,使得通过控制连接42发送的后续控制消息包括TCP包。TWAMP控制客户端32和TWAMP服务器38通过控制连接42交换控制消息,以协商在TWAMP会话发送器34和TWAMP会话反射器40之间的数据会话50,用于相对于服务52到用户数据包流的应用,监控用户级别的监控关键性能指标(KPI)。
作为用于数据会话50的协商处理的一部分,TWAMP控制客户端32和TWAMP服务器38执行唯一地识别与第一网络设备28相关联的用户的用户标识符(SUB-ID)的交换44。另外,TWAMP控制客户端32可以指定对应于由第二网络设备30提供的服务52中特定的一个或服务52的组合的SERVICE-ID。
一旦TWAMP控制客户端32开始数据会话50,TWAMP会话发送器34就向TWAMP会话反射器40发送用于数据会话50的包括SUB-ID的TWAMP测试包。TWAMP会话反射器40使用包括在从TWAMP会话发送器34接收的TWAMP测试包中的SUB-ID,以识别与TWAMP测试包对应的特定用户。TWAMP会话反射器40通过数据会话50接收测试包,剥离TWAMP报头,以便从测试包中提取数据包,并将数据包54转发给已经被协商用于应用一个或更多的网络服务的特定测试用户的服务52。在将服务应用于用户数据包流之后,所得到的包56被引导回到TWAMP会话反射器40,被封装成包括SUB-ID和一个或多个度量的TWAMP测试包,并被发送回在第一网络设备28上执行的TWAMP会话发送器34。
一经接收,TWAMP会话发送器34基于TWAMP测试包中包含的SUB-ID将TWAMP测试包与用户相关联。TWAMP控制客户端32或由第一网络设备28执行的一些其他模块可以使用接收到的度量来计算第一网络设备28和第二网络设备30之间的网络性能测量。例如,TWAMP控制客户端32可以提取在往返期间嵌入在TWAMP包内的时间戳,从而允许为单独用户和特定服务或服务组合计算一组等待时间测量。
在图2所示的示例中,第一网络设备28执行TWAMP控制客户端32和TWAMP会话发送器34,并且第二网络设备30执行TWAMP服务器38和TWAMP会话反射器40。在其他示例中,TWAMP控制客户端、TWAMP会话发送器、TWAMP服务器和TWAMP会话反射器可以在单独的主机上被执行。在本示例中,TWAMP控制客户端和TWAMP服务器建立控制连接,TWAMP控制客户端可以指示TWAMP会话发送器与TWAMP会话反射器协商数据会话。一旦TWAMP控制客户端开始数据会话,TWAMP会话发送器通过数据会话将包含SUB-ID的TWAMP测试包发送到TWAMP会话反射器,以应用特定的网络服务,并接收从TWAMP会话反射器返回的包括SUB-ID和用于数据会话的一个或多个度量的TWAMP测试包。TWAMP会话发送器然后可以将接收到的度量发送到TWAMP控制客户端,以计算TWAMP会话发送器的主机与TWAMP会话反射器的主机之间的网络性能测量。
图3是示出根据本公开的技术的TWAMP控制客户端60和TWAMP服务器62之间的示例消息序列的框图。在一些情况下,TWAMP控制客户端60可以基本上类似于图2中在第一网络设备28上执行的TWAMP控制客户端32操作,并且TWAMP服务器62可以基本上类似于图2中在第二网络设备30上执行的TWAMP服务器38操作。本公开中描述的TWAMP扩展包括对TWAMP控制客户端60和TWAMP服务器62之间的现有控制消息的修改以及对与TWAMP控制客户端60相关联的TWAMP会话发送器和与TWAMP服务器62相关联的TWAMP会话反射器之间的现有数据消息传送的修改。下面更详细地描述对TWAMP数据消息的修改。
如图3所示,TWAMP控制客户端60和TWAMP服务器62交换第一组控制消息,以建立控制连接。在所示示例中,第一组控制消息包括传输控制协议(TCP)连接64、服务器问候消息65、设置响应消息(set up response message,建立响应消息)66、服务器开始消息67、对服务支持消息的请求68和服务支持的响应消息69。在其他示例中,第一组控制消息可以包括更多或更少的控制消息,其可以传达相似或不同的控制信息,以建立控制连接。
根据所公开的技术,可以修改第一组控制消息,以包括指示是否支持用户感知和服务特定的监控的通信模式。例如,第一网络设备上的TWAMP控制客户端60启动与在第二网络设备上的TWAMP服务器62的TCP连接64。作为响应,TWAMP服务器62向TWAMP控制客户端60发送服务器问候消息65,TWAMP控制客户端识别由TWAMP服务器62支持的多个通信模式,包括指示TWAMP服务器62支持用户感知的活动服务等待时间测量TWAMP数据会话的模式。同样,服务器问候消息65可以包括用于指示TWAMP服务器62支持哪些通信模式的模式字段。例如,模式字段可以用于识别和选择特定的通信能力。根据所公开的技术,服务器问候消息66的模式字段内的至少一个比特位置可以用于指示TWAMP服务器是否支持用户感知的数据会话。
TWAMP控制客户端60选择在从TWAMP服务器62接收到的服务器问候信息65中识别的并且TWAMP控制客户端60支持的一个或多个通信模式。TTAMP控制客户端60然后将设置响应消息66发送到TWAMP服务器62,TWAMP服务器识别所选择的通信模式,包括指示用户感知的TWAMP数据会话由TWAMP控制客户端60支持的这种模式。设置响应消息66可以包括用于指示由TWAMP控制客户端60和TWAMP服务器62支持的所选择的通信模式的模式字段。例如,模式字段可以用于识别和选择特定的通信能力。使用TWAMP扩展来支持用户感知的数据会话,如果TWAMP控制客户端60希望参与用户感知的数据会话供应,则TWAMP控制客户端可以设置如上述示例中所阐述的模式字段。TWAMP服务器回应服务器开始消息67,指示是否接受TCP连接。
接下来,根据本文描述的技术,TWAMP控制客户端60发出“请求服务支持”控制消息68,该消息询问TWAMP服务器62关于如本文所述的用于测试和监控的支持的网络服务52的类型。作为响应,TWAMP服务器62发出“响应服务支持”控制消息69,该消息如本文所述识别对用户感知的TWAMP监控可用的网络服务52的数量,并且对于每个服务,提供服务标识符和服务描述字符串。
接下来,TWAMP控制客户端60和TWAMP服务器62然后交换第二组控制消息,以协商一个或多个数据会话。在一些示例中,一个或多个数据会话中的每一个可以与对应的用户相关联,并被引导到在TWAMP服务器62处支持的网络服务52或服务52的组合。在所示示例中,第二组控制消息包括多个请求会话消息70并且接受会话消息72,所述一个或多个数据会话中的每一个具有一对。在其他示例中,第二组控制消息可以包括可以传送相似或不同的控制信息以协商数据会话的更多或更少的控制消息。
根据所公开的技术,可以修改请求会话消息70,以包括唯一地识别用户的用户标识符(SUB-ID),该用户可以是真实的终端用户/客户或测试用户。作为示例,SUB-ID可以是国际移动用户识别码(IMSI)、国际移动设备识别码(IMEI)、计费标识符、IP地址或专有标识符。此外,可以修改请求会话消息70,以包括唯一地识别由第二网络设备30提供的一个网络服务52的服务标识符。下面将更详细地描述用于在TWAMP控制客户端60和TWAMP服务器之间的第二组控制消息的TWAMP扩展。
TWAMP控制客户端60和TWAMP服务器62还可以交换第三组控制消息,以管理或控制TWAMP会话发送器和TWAMP会话反射器之间的一个或多个数据会话。在所示示例中,第三组控制消息包括开始会话消息74、开始确认(ACK)消息76和停止会话消息78。在其他示例中,第三组控制消息可以包括可以传送相似或不同的控制信息以管理数据会话的更多或更少的控制消息。
响应于接收到用于一个或多个数据会话的一个或多个接受会话消息72,TWAMP控制客户端60向TWAMP服务器62发送开始会话消息74,以启动对所请求的数据会话的测试。TWAMP服务器62以指示一个或多个数据会话的开始的ACK消息76进行响应。TWAMP会话发送器34和TWAMP会话反射器40然后交换用于每个主动数据会话的测试包。
根据所公开的技术,修改为特定数据会话交换的测试包,以携带SUB-ID,以便识别与测试包相关联的特定用户。TWAMP会话反射器40通过数据会话40接收测试包,剥离TWAMP报头,以便从测试包中提取数据包,并将数据包54转发给已经为该特定测试用户协商的服务52,以应用一个或更多的网络服务。在将服务应用于用户数据包流之后,所得到的包56被引导回到TWAMP会话反射器40,被封装成包括SUB-ID和一个或多个度量的TWAMP测试包,并被发送回在第一网络设备28上执行的TWAMP会话发送器34。下面更详细地描述对在与TWAMP控制客户端60相关联的TWAMP会话发送器和与TWAMP服务器62相关联的TWAMP会话反射器之间交换的测试包的TWAMP扩展。在某个时候,TWAMP控制客户端60可以向TWAMP服务器62发送停止会话消息78,以停止对数据会话的测试。
图4是示出根据本公开的技术的被配置为执行一个或多个TWAMP逻辑角色的示例路由器80的框图。在本文中,路由器80可以在图1的服务提供商网络2的上下文中描述,并且可以表示例如路由器8、18中的任一个。此外,虽然描述了特定网络设备(例如,路由器),但是可以由可以作为服务端点(例如,客户端设备、层3(L3)或L2/L3开关、或服务器)操作的任何网络设备来实现这些技术。
在该示例中,路由器80被划分为三个逻辑或物理“平面”,以包括执行设备的控制操作的控制平面81、用于转发转接网络业务的数据平面85、以及用于应用一个或多个网络服务87来转接由路由器转发的数据包流的服务平面83。即,路由器80在逻辑上(例如,作为在同一组硬件组件上执行的单独的软件实例)或者在物理上(例如,作为静态地实现硬件中的功能或动态执行软件或计算机程序来实现该功能的单独的物理专用硬件组件)实现三个独立的功能(例如,路由/控制、转发数据和网络服务功能)。在该示例中,高速内部交换结构105耦接控制平面81、服务平面83和数据平面85,以在单元之间传送数据单元和控制消息。交换结构105可以表示内部交换结构或横杆、总线或链路。
在图4的示例中,控制平面81包括具有主微处理器102的控制单元82,其执行设备管理服务、路由器80的用户认证和控制平面路由功能。微处理器102可以包括一个或多个通用或专用处理器,例如,数字信号处理器(DSP)、ASIC、现场可编程门阵列(FPGA)或任何其他等效逻辑装置。因此,如本文所使用的术语“处理器”或“控制器”可以指上述结构中的任何一个或多个或可操作以执行本文所述技术的任何其他结构。
通常,控制单元82表示控制的硬件或硬件和软件的组合,其实现控制平面协议89A-89N(“路由协议89”),以学习和维护路由信息库104(“RIB 104”)内的路由信息。RIB104可以包括定义网络拓扑(例如,图1的服务提供商网络)的信息。路由协议89与控制单元82上执行的内核100(例如,通过API调用)交互,以基于由路由器80接收的路由协议消息来更新RIB 104。内核100可以解析由RIB 104中的路由信息定义的拓扑,以选择或确定通过网络的一个或多个路由。例如,内核可以基于RIB104中表示的网络拓扑,以转发信息库103A-103N(“FIB 103”)的形式生成转发信息,即进行路由解析。通常,内核100以根或其他查找树的形式生成FIB 103,以将包信息(例如,具有目的地信息和/或标签栈的报头信息)映射到下一跳,并且最终到与相应转发单元112相关联的IFC 114的接口端口。例如,每个FIB 103可以将网络目的地与特定的下一跳和对应的IFC相关联。对于MPLS相关的业务转发,FIB103为给定的FEC存储包括包的输入标签、输出标签和下一跳的标签信息。控制单元82然后可以用FIB 103对数据平面85的转发单元112进行编程,将FIB安装在查找ASIC 106内。
在该示例中,数据平面85该数据平面功能和包转发功能分布在多个转发单元112A-112N(“转发单元112”)中的分散数据平面。在路由器80的示例中,数据平面85包括转发单元112,所述转发单元提供将经由入站链路116A-116N由接口卡114A-114N(“IFC 44”)接收的网络流量向出站链路118A-118N的高速转发。转发单元112可以包括均耦接到相应接口卡114的一个或多个包转发引擎(“PFE”),并且可以表示例如密集端口集中器(DPC)、模块化端口集中器(MPC)、灵活的物理接口卡(PIC)集中器(FPC)或另一线路卡,例如,其可插入到路由器80的底盘或底盘的组合内。
如图4的示例所示,每个转发单元112包括经由IFC卡114接收控制和数据会话业务的相应一个查找ASIC 106A-106N(“查找ASIC 106”),执行路由查找,并且基于安装到FIB103的路由,将业务转发到控制单元82(用于路由器80的控制业务)或一个转发单元40(转接数据业务),以经由接口输出到一个输出链路48。在一个示例中,查找ASIC 106是微代码控制的芯片组,其由在每个转发单元112上执行的从微处理器(未示出)可编程地配置。具体地,在该示例中,每个ASIC 106可以由从微处理器编程的内部微代码控制。当转发包时,每个查找ASIC 106内的控制逻辑遍历相应的FIB 103,并且在达到包(例如,叶节点)的FIB条目时,微代码实现的控制逻辑自动选择一个或多个转发下一跳(FNH)来转发包。以这种方式,在包遍历路由器80的内部架构时,转发单元112的ASIC 106通过对相应的内部包转发路径上的每个包执行一系列操作来处理包。例如,可以基于任何对应的入口接口、入口PFE114、出口PFE 114、出口接口、或包在输出之前被引向的路由器80的其他组件(例如,一个或多个服务卡),对每个包进行操作。转发单元112均包括转发结构,其在被执行时检查每个包的内容(或另一个包属性,例如,进入接口),并且在此基础上,做出转发决定,应用过滤器和/或执行例如计费、管理、流量分析、以及负载平衡。
在一个示例中,每个转发单元112设置转发结构,作为可以链接在一起作为沿着网络设备的内部包转发路径的一系列“跳”的下一跳数据。在许多情况下,转发结构在ASIC106的内部存储器内执行查找操作,其中,可以针对树(或特里结构)搜索、表(或索引)搜索执行查找。可以使用下一跳指定的其他示例操作包括过滤器确定和应用、或速率限制器确定和应用。查找操作在查找数据结构(例如,查找树)内定位与包内容或包或数据包流的另一属性匹配的项目,例如,包的入站接口。根据由ASIC 106内的下一跳转发结构定义的操作的包处理的结果确定由转发单元112将包从其在一个IFC 114上的输入接口转发或以其他方式处理到其在一个IFC 114上的输出接口的方式。
可以使用转发专用集成电路(ASIC)、现场可编程门阵列(FPGA)或任何其他等同的集成或离散逻辑电路以及这些组件的任何组合来实现查找ASIC 106。每个转发单元106可以包括基本相似的组件,以执行基本相似的功能。
路由器80的服务平面83包括多个服务单元113A-113K(“服务单元13”),其例如可以是可移动服务卡,被配置通过数据平面85向数据包流应用网络服务。即,在转发包时,转发单元112可以将包引向服务平面83,以便由服务单元113应用一个或多个网络服务131。在该示例中,每个服务单元113包括微处理器127,该微处理器被配置为执行管理程序129,以提供多个网络服务131的操作环境。作为示例,服务单元113可以应用数据包流的防火墙和安全服务、载波级网络地址转换(CG-NAT)、媒体优化(语音/视频)、IPSec/VPN服务、深度包检测(DPI)、HTTP过滤、计数、计费、收费和负载分担或应用于网络流量的其他类型的服务。例如,每个服务131可以实现为由管理程序129和微处理器127执行的虚拟机或容器。
在图4的示例中,控制单元82为TWAMP 110提供操作环境。例如,控制单元82可以使用TWAMP 110来执行一个或多个TWAMP逻辑角色,例如,TWAMP控制客户端、TWAMP服务器、TWAMP会话发送器和TWAMP会话反射器。根据本公开中描述的技术,可以将TWAMP 110扩展为使得能够在计算机网络中的两个端点之间进行用户感知的TWAMP数据会话供应。为了说明的目的,路由器80在本文中被描述为第二端点,该第二端点被配置为基于来自可以是与用户网络相关联的客户端设备或测试设备的TWAMP客户端的通信来执行TWAMP服务器和/或相关联的TWAMP会话反射器。
所公开的技术包括扩展TWAMP 110的控制消息,以包括用于用户感知的TWAMP数据会话供应的通信模式。以这种方式,当作为TWAMP控制客户端操作时,路由器80被配置为在与在另一端点(例如,图1的客户端设备16)上执行的TWAMP客户端建立控制连接期间协商对用户感知的数据会话的支持。
在协商期间,作为TWAMP服务器操作的路由器80的TWAMP 110接收特定数据用户的用户标识符(SUB ID)以及可选地接收要应用于该用户的数据包流的一个或多个网络服务131的选择。然后,路由器80可以将特定用户的SUB ID与任何请求的服务131一起存储在SUBID表90中。SUB ID表90可以包括对应于多个不同用户的多个SUB ID,并且可选地,可以将一个或多个SUB ID映射到将被应用于与相应的用户相关联的数据包流的一组一个或多个服务131。此外,每个不同的请求的TWAMP会话可以与要测量的不同的网络性能度量相关联。
此外,路由器80可以在数据平面85的每个转发单元112中执行TWAMP会话反射器111(“TWAMP SR 111”),并且控制平面81的TWAMP 110可以基于协商的TWAMP会话,在转发单元内安装和维护包括指定的SUB ID和任何所选择的服务131的SUB ID表91。如下面进一步描述的,所公开的技术还包括扩展TWAMP的数据消息,以在用于TWAMP数据会话的每个测试包中包括用户标识符(SUB ID)。此外,转发单元112内的TWAMP会话反射器111被配置为基于包含在每个接收的TWAMP测试包中的SUB ID,并且可选地基于相关联的用户,将接收到的TWAMP测试包117与特定用户相关联,通过为该用户指定的任何服务131引导封装在TWAMP测试包内的用户包。
例如,TWAMP会话反射器111可以将包含在入站TWAMP测试包117中的SUB ID与SUBID表91进行比较,以便识别相应的用户和要应用的任何服务131。然后,TWAMP会话反射器111可以从TWAMP测试包117剥离报头,以提取用户数据包,并将用户数据包转发到用于该用户的特定网络服务131。在应用服务之后,所得到的包被引导回TWAMP会话反射器111,封装成TWAMP测试包121,并被发送回在特定用户设备上执行的TWAMP客户端。TWAMP客户端提取嵌入在TWAMP包121内的时间戳,从而允许为单独用户和特定服务或服务组合计算等待时间测量。
仅用于示例的目的,示出在图4中所示的路由器80的架构。本公开不限于此架构。在其他示例中,路由器80可以以各种方式配置。在一个示例中,路由器80可以仅以软件或硬件实现,或者可以被实现为软件、硬件或固件的组合。例如,控制单元82可以包括处理器、可编程处理器、通用处理器、集成电路、ASIC、FPGA或能够实现本文描述的技术的任何类型的硬件单元中的一个或多个。控制单元82还可以包括执行存储在计算机可读存储介质(例如,随机存取存储器(RAM)、只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、非易失性随机存取存储器(NVRAM)、闪存、硬盘、CD-ROM、软盘、盒式磁带、磁性介质、光学介质、或其他计算机可读存储介质)上的软件指令的一个或多个处理器。在一些情况下,计算机可读存储介质可以包括使可编程处理器执行本文所述技术的指令。
图5是示出根据本公开的技术的被配置为执行一个或多个TWAMP逻辑角色的示例网络设备130的框图。网络设备130可以在图1的服务提供商网络2的上下文内描述,并且可以表示例如路由器8、路由器18、服务节点10或数据中心9中的任何一个。在其他示例中,网络设备130可以包括服务提供商网络2内的任何网络设备,例如,路由器、交换机或服务器。
在图5的示例中,网络设备130包括微处理器142,用于执行管理程序140,以提供一个或多个服务节点虚拟机(VM)132A-132N(统称为“服务节点VM 132”)的执行环境。每个服务节点VM 132执行网络服务应用程序133A-133N(统称为“网络服务应用程序133”),例如,状态防火墙134和深度包检查(DPI)136,以将状态网络服务应用于数据包流。
如图5所示,网络设备130还提供用于TWAMP 138的操作环境,其可以作为单独的进程或VM执行或者可以集成在VM132或管理程序140内。例如,TWAMP 138可以执行一个或多个TWAMP逻辑角色,例如,TWAMP控制客户端、TWAMP服务器、TWAMP会话发送器和TWAMP会话反射器。在其他示例中,可以在网络设备130的物理底盘上执行一个或多个TWAMP逻辑角色。根据本公开中描述的技术,TWAMP 138可以被扩展为使得能够在计算机网络中的两个端点之间进行用户感知的TWAMP数据会话供应。为了说明的目的,TWAMP 138在本文中被描述为被配置为执行TWAMP服务器和/或相关联的TWAMP会话反射器的第二端点。
所公开的技术包括扩展TWAMP 138的控制消息,以包括用于用户感知的TWAMP数据会话供应的通信模式。以这种方式,当作为TWAMP服务器操作时,TWAMP 138被配置为在与在另一个端点(例如,图1的路由器8)上执行的TWAMP控制客户端建立控制连接期间协商对基于SUB-ID的数据会话的支持。
在特定数据会话的协商期间,TWAMP 138从TWAMP控制客户端接收请求,其中,该请求指定用于特定数据会话的唯一用户标识符(SUB-ID)。此外,该请求可以指定特定的网络服务,以应用于与用户和/或特定KPI相关联的业务流,以测量用户业务。TWAMP 138然后可以将特定数据会话的SUB-ID存储在SID表150和任何其他可选参数(例如服务和/或KPI)中。同样,SID表150可以包括对应于多个不同用户的多个SUB-ID。在一些示例中,SUB-ID表150内的每个条目可以指定用户标识符,以及可选地,指定在TWAMP服务器处支持的特定用户网络服务和/或要监控的一个或多个特定KPI。
作为TWAMP服务器运行的TWAMP 138还可以通过通信链路将SUB-ID和其他参数(例如,特定服务或KPI)直接传送到相关联的TWAMP会话反射器。在一些示例中,服务节点VM132A可以执行TWAMP服务器和TWAMP会话反射器,使得通信是服务节点VM 132A上的TWAMP逻辑角色之间的内部控制通信。在这种情况下,TWAMP服务器或TWAMP会话反射器可负责维护SUB-ID表150。
所公开的技术还包括扩展TWAMP 138的数据消息,以包括在数据会话的每个测试包中分配的SUB-ID。例如,数据消息可以包括指定SUB-ID的字段,并且还可以封装用户业务。当作为TWAMP会话反射器操作时,TWAMP 138被配置为基于包括在接收的测试包中的SUB-ID来识别用户以及可选地对应于所接收的TWAMP测试包的特定服务和/或KPI。基于该确定,TWAMP 138将封装在其中的用户业务引导至适当的网络服务133。另外,当作为TWAMP会话反射器操作时,服务节点VM 132A被配置为在反射回在另一端点(例如,来自图1的用户设备16或测试设备21)上执行的TWAMP会话发送器的特定数据会话的每个TWAMP测试包中包括特定数据会话的SUB-ID。
在图5所示的示例中,网络设备130包括用于通过多个隧道146A-146N(“隧道146”)接收隧道包148的网络接口144。每个隧道146对应于多个服务链中的一个不同的服务链,其中,每个服务链包括要应用于与用户相关联的数据包流的一个或多个状态网络服务的一个不同的有序组。每个隧道包148封装用户包。在一些情况下,用户包可以是由与TWAMP控制客户端相关联的TWAMP会话发送器注入的TWAMP测试包。仅用于示出目的,示出图5中所示的网络设备130的架构。本公开不限于此结构。在其他示例中,网络设备130可以以各种方式配置。
图6至图11是示出根据本公开的技术的在TWAMP控制客户端和TWAMP服务器之间的TWAMP控制消息的示例格式的概念图。这组控制消息(有时称为服务块)可以在TWAMP控制客户端和TWAMP服务器之间交换,以协商用于特定用户业务的一个或多个TWAMP数据会话以及可选地一个或多个服务,并监控要为每个用户和服务测量的特定KPI。每个消息的格式通过示例的方式示出,并且结构和形式,包括为各种字段指定的八位字节数字仅仅是示例性的。此外,在其他示例中,给予消息的功能可以在多个消息上分裂。同样,示例性消息可以被组合成更少数量的消息。
图6示出了响应于由TWAMP控制客户端发起的控制连接,由TWAMP服务器向TWAMP控制客户端发送的服务器问候消息160的示例性格式。TWAMP控制客户端可以使用例如TCP发起与TWAMP服务器的控制连接。图6所示的服务器问候消息包括几个字段,包括模式字段164、查询字段(challenge field)、Salt字段、计数字段和必须为零(MBZ)字段,并且在一些情况下,每个字段的相关联的八位字节数。
包括在服务器问候消息中的模式字段164可以用于指示TWAMP服务器支持哪些模式。例如,模式字段164可以用于识别和选择特定通信能力。根据所公开的技术,服务器问候消息的模式字段内的至少一个比特位置可以用于指示TWAMP服务器或与TWAMP服务器相关联的会话反射器是否支持用户感知的KPI监控。
在一个示例中,服务问候消息66的模式字段164中的第26位可以用于指示TWAMP服务器62是否支持基于SID的数据会话。通常,模式字段可以具有以下任何值:1:未认证;3:未认证+认证;或7:未认证+认证+加密。使用TWAMP扩展来支持用户感知的数据会话配置,以进行服务等待时间测量,模式字段可能具有以下示例值:
0x09:未认证+支持主动服务等待时间测量
0x0b:未认证+认证+支持主动服务等待时间测量
0x0F:未认证+认证+加密+支持主动服务延迟测量
0x21:未认证+支持主动服务等待时间测量+用户感知
0x23:未认证+认证+支持主动服务延迟测量+用户感知
0x27:未认证+认证+加密+支持主动服务延迟测量+用户感知
在响应于服务器问候消息由TWAMP控制客户端发送到TWAMP服务器的设置响应消息中,TWAMP控制客户端可以选择服务器问候消息中指示的任何模式,并且用所选模式回复TWAMP服务器。
在TWAMP控制客户端与TWAMP服务器之间建立控制连接时,TWAMP控制客户端可以请求使用TWAMP服务器监控特定用户以及可选地一个或多个特定服务的KPI。为此,TWAMP控制客户端可能需要确定TWAMP服务器支持哪些服务以及这些服务支持哪些服务KPI,如本文所述。
图7示出了可由TWAMP控制客户端发送到TWAMP服务器以确定由TWAMP服务器或TWAMP服务器可访问的其他设备支持的网络服务的请求服务支持消息170的示例性格式。在该示例中,消息170包括请求对所支持服务的描述的命令174(例如,值0x7)。
图8示出响应于请求服务支持消息170由TWAMP服务器向TWAMP客户端控制发送的响应服务支持消息180的示例性格式。在该示例中,消息180包括命令182(例如,值为0x8)以及支持的多个服务184。TWAMP服务器然后发送图9的指定几对服务标识符192和服务描述字符串194的一个或多个消息190。在发送一个或多个消息190之后,TWAMP服务器发送图10的指定基于散列的消息认证码(HMAC)的消息200。
图11示出了由TWAMP控制客户端向TWAMP服务器发送的请求用于给定用户或可选地用于在TWAMP服务器处支持的特定服务的数据会话的请求会话消息210的示例格式。如图11所示,根据本文所述的扩展,请求会话消息210包括几个字段,其中,包括用户标识符类型(SUB-ID TYPE)字段212、用户标识符大小(SIZE OF SUB-ID)字段214和用户标识符(SUB-ID)字段216,以携带正在建立数据会话的特定用户的SUB ID。用户标识符的类型和大小分别由SUB-ID TYPE字段212和SIZE OF SUB-ID字段214指定。例如,用户标识符的类型可以是IMSI、IMEI、计费标识符、IP地址、专有标识符等。
在一个示例中,请求会话消息还可以包括服务ID字段218,其用于指定TWAMP服务器要应用或直接应用至随后将通过所请求的TWAMP数据会话传送的用户特定测试包的特定服务或服务组合。该服务ID字段可以包括两个八位字节。如果没有请求监控服务KPI作为请求的数据会话的一部分,则服务ID字段的值为0。如果服务ID字段具有非零值,则填充长度字段将不具有任何意义,因为TWAMP测试包将根据通过数据会话监控哪些类型的服务KPI具有不同的大小。
响应于请求会话消息210,TWAMP服务器可以通过接受会话消息回复,所述接受会话消息接受给定用户的数据会话,并且在发生错误或拒绝请求的会话的情况下,包括非零错误消息。在一些示例中,接受会话消息可以包括具有值0-6的接受字段(其中,0表示成功,而非零值表示控制连接将被关闭)和指示接受的数据会话的TWAMP服务器处的端口号的端口字段。例如,在指定的用户标识符与授权的认证用户标识符不匹配的情况下,TWAMP服务器可以包括0x6的值,作为错误代码。然后,TWAMP控制客户端可以向TWAMP服务器发送开始会话消息,并且TWAMP服务器可以用包括值为0-5的接受字段的开始ACK消息回复,其中,0表示成功,而如果接受字段具有非零值,则控制连接被关闭。
在接收到接受会话消息时,TWAMP控制客户端或TWAMP会话发起者可以开始向TWAMP服务器发送TWAMP测试包,以测量与给定用户业务流的数据会话相关联的所选服务KPI。在某个时候,TWAMP控制客户端或TWAMP会话发起者可以向TWAMP服务器发送停止会话消息,其包括表示正常但可能过早完成数据会话的0值或具有指示某个故障的非零值的接受字段。由于停止会话消息,TWAMP控制客户端与TWAMP服务器之间的控制连接将关闭,并且通过控制连接产生的所有数据会话将被视为无效。停止会话消息还可以包括多个会话字段。如果停止会话消息中的会话字段数与进行中的数据会话数不匹配,则停止会话消息可能被视为无效。
图12至图13是示出根据本公开的技术的TWAMP会话发送器和TWAMP会话反射器之间的用户感知的TWAMP数据会话的TWAMP测试包的示例性格式的概念图。可以交换TWAMP测试包,以收集用于测量执行TWAMP会话发送器的第一网络设备和执行TWAMP会话反射器的第二网络设备之间的网络性能的度量。本公开中描述的技术包括扩展TWAMP测试包和响应包,以包括用于识别与注入到TWAMP数据会话内的业务流相关联的特定用户的SUB-ID。
图12示出了用于未认证模式的数据会话的TWAMP测试包220的示例性格式。在本文描述的TWAMP扩展的一个示例中,如图12所示,测试包220包括几个字段,包括序列号字段、时间戳字段、错误估计字段、必须为零(MBZ)字段、用户标识符类型(SUB-ID TYPE)字段222、用户标识符大小(SIZE OF SUB-ID)字段224、用户标识符(SUB-ID)字段226、以及用于携带封装的用户业务的包填充。如图12所示,20字节SUB-ID字段226携带与正在传送的测试包相关联的特定用户的SUB ID。用户标识符的类型和大小由SUB-ID TYPE字段222、SIZE OFSUB-ID字段224指定,从而在接收到测试包220时帮助TWAMP服务器正确处理用户标识符。例如,用户标识符的类型可以是IMSI、IMEI、计费标识符、IP地址、专有标识符等。
图13示出了用于在认证和加密模式的数据会话的TWAMP测试包230的示例性格式。在本文描述的TWAMP扩展的一个示例中,如图13所示,测试包230包括若干字段,包括序列号字段、必须为零(MBZ)字段、时间戳字段、错误估计字段、第二MBZ字段、HMAC字段、第二错误估计字段、第三MBZ字段、用户标识符类型(SUB-ID TYPE)字段234、用户标识符大小(SIZEOF SUB-ID)字段226、用户标识符(SUB-ID)字段238和用于封装用户业务的包填充。20字节SUB-ID字段238携带与正在传输的测试包相关联的特定用户的SUB ID。用户标识符的类型和大小由SUB-ID TYPE字段234、SIZE OF SUB-ID字段236指定,从而在接收到测试包230时帮助TWAMP服务器正确处理用户标识符。例如,用户标识符的类型可以是IMSI、IMEI、计费标识符、IP地址、专有标识符等。
图14示出了如由与TWAMP服务器相关联的会话反射器通过建立的数据会话发送给与TWAMP控制客户端相关联的会话发送器或TWAMP会话发起器的未认证模式的TWAM应答消息240的示例性格式。
如图14所示,示例性会话TWAMP应答消息240包括若干字段,包括序列号字段、时间戳字段242、错误估计字段、MBZ字段、接收时间戳字段244、发送序列号字段、发送器时间戳字段246、发送错误估计字段、MBZ字段、发送器生存期(TTL)字段、MBZ字段、用户标识符类型(SUB-ID TYPE)字段248、用户标识符大小(SIZE OF SUB-ID)字段250、用户标识符(SUB-ID)字段252、服务等待时间发送器时间戳254、服务等待时间接收器时间戳256和包填充,其可以包括一个或多个服务PDU,例如,由TWAMP服务器处理的用户业务。
图15示出了如由与TWAMP服务器相关联的会话反射器通过建立的数据会话发送给与TWAMP控制客户端相关联的会话发送器或TWAMP会话发起器的认证和加密模式的TWAMP应答消息260的示例性格式。
如图15所示,示例性会话TWAMP应答消息260包括若干字段,包括序列号字段、MBZ字段、时间戳字段262、错误估计字段、MBZ字段、接收时间戳字段264、MBZ字段、发送序列号字段、MBZ字段、发送器时间戳字段265、发送错误估计字段、MBZ字段、发送器生存期(TTL)字段、MBZ字段、HMAC字段、用户标识符类型(SUB-ID TYPE)字段266、用户标识符大小(SIZE OFSUB-ID)字段268、用户标识符(SUB-ID)字段270、服务等待时间发送器时间戳272、服务等待时间接收器时间戳274和包填充,其可以包括一个或多个服务PDU,例如,由TWAMP服务器处理的用户业务。
图16是示出根据本公开的技术的协商用户感知的TWAMP数据会话的示例操作的流程图。图16的示例性操作相对于图2的在第一网络设备28(例如,客户端设备或测试设备)上执行的TWAMP控制客户端32和TWAMP会话发送器34以及在第二网络设备30(例如,路由器或服务节点)上执行的TWAMP服务器38和TWAMP会话反射器40进行了描述。在其他示例中,图16所示的操作可以由均在单独的主机上执行的TWAMP控制客户端、TWAMP会话发送器、TWAMP服务器和TWAMP会话反射器执行。
在第一网络设备28上的TWAMP控制客户端32和第二网络设备30上的TAMP服务器38之间建立控制连接42(300)。当建立控制连接42时,TWAMP控制客户端32和TWAMP服务器38可以协商用于由TWAMP控制客户端32和TWAMP服务器38建立的未来数据会话的通信和安全选项。根据本公开的技术,TWAMP服务器38识别多个支持的通信模式,其中一个或多个指示TWAMP服务器38支持用户感知的TWAMP数据会话。TTAMP控制客户端32然后确定多个支持的通信模式中的哪些也被TWAMP控制客户端32支持,并且选择至少一个通信模式,用于未来数据会话。根据所公开的技术,所选择的一个通信模式指示用户感知的TWAMP数据会话被TWAMP控制客户端32和TWAMP服务器38支持。
TWAMP控制客户端32和TWAMP服务器38然后使用控制连接42协商在TWAMP会话发送器34和TWAMP会话反射器40之间的用于特定用户业务的数据会话,例如,数据会话50(302)。作为数据会话50的协商处理的一部分,TWAMP控制客户端32和TWAMP服务器38执行唯一地识别与第一网络设备28相关联的用户的用户标识符(SUB-ID)的交换44。另外,TWAMP控制客户端32可以指定与由第二网络设备30提供的特定的一个服务52或服务52的组合对应的SERVICE-ID。
一旦TWAMP控制客户端32开始数据会话50,TWAMP会话发送器34和TWAMP会话反射器40交换用于数据会话50的一个或多个TWAMP测试包,其中,一个或多个TWAMP测试包中的每一个包括与数据会话50相关联的用户的SUB-ID(304)。根据所公开的技术,TWAMP会话发送器34和TWAMP会话反射器40使用包含在TWAMP测试包中的SUB-ID来识别与TWAMP测试包相关联的特定用户,并且在将TWAMP测试包返回给TWAMP控制客户端之前,TWAMP服务器可以确定将一个或多个服务应用于测试包。
图17是示出了根据本公开的技术的交换用于在第一网络设备上执行的TWAMP会话发送器和在第二网络设备上执行的TWAMP会话反射器之间的用户感知的TWAMP数据会话的TWAMP测试包的示例操作的流程图。相对于图2的在第一网络设备28上执行的TWAMP会话发送器34和在第二网络设备30上执行的TWAMP会话反射器40描述了示例性操作。
如上面详细描述的,TWAMP控制客户端32和TWAMP服务器38可以建立控制连接42,并且协商包括数据会话50的SID的交换44的数据会话50。一旦TWAMP控制客户端32开始数据会话50,TWAMP会话发送器34确定与TWAMP数据会话50相关联的用户的SUB-ID,即与由TWAMP会话监控的用户业务相关联的用户的身份(310)。TWAMP会话发送器34然后构建并输出用于数据会话50的一个或多个TWAMP测试包到TWAMP会话反射器40,其中,每个TWAMP测试包包括用户的SUB-ID,并且有效载荷封装用户业务(312)。
TWAMP会话反射器40从TWAMP会话发送器34接收TWAMP测试包,其中,每个TWAMP测试包包括用于用户的SUB-ID(314)。响应于接收到TWAMP测试包,TWAMP会话反射器40基于TWAMP测试包中包括的SUB ID来识别与所接收的TWAMP测试包相关联的用户,并且确定要应用于封装在其中的用户包的任何服务(316)。在一个示例中,TWAMP会话反射器40可以使用由TWAMP服务器38或TWAMP会话反射器40所保持的SUB ID表(例如,图4的SUB ID表91或图5的SUB ID表150)来识别用户。例如,TWAMP会话反射器40可以将接收到的TWAMP测试包中包括的SUB ID与在SUB ID表中记录的多个SUB ID进行比较,以便识别用户,并且可选地识别要应用于用户业务的任何服务。
路由器8或服务节点10内的TWAMP会话反射器从测试包中移除数据包,并将数据包转发到用于应用一个或多个网络服务的服务元件,例如,路由器80的服务单元132或网络设备130的服务节点132中的任何一个(318)。服务单元接收用户包(320),向用户包应用网络服务(324),并将用户包返回给TWAMP会话反射器(326)。
TWAMP会话反射器40将用户包与原始入站TWAMP包相关联,构建出站TWAMP包,以包括最初记录在入站TWAMP包中的任何度量和/或时间戳,然后,将用于数据会话50的TWAMP测试包发送回TWAMP会话发送器34,其中,每个TWAMP测试包包括用户的SUB ID和给定用户的用于测量第一网络设备28和第二网络设备30之间的网络性能的数据会话50的一个或多个度量(320)。例如,度量可以包括用于发送或接收测试包的时间戳、用于发送或接收测试包的错误估计、用于发送测试包的序列号、测试包的TTL值、保持活动的PDU和/或服务包、字节或用户的计数。在一个示例中,TWAMP会话反射器40可以使用网络跟踪器(cookie)将从服务元件接收的包与原始入站TWAMP包相关联。例如,TWAMP会话反射器可以将网络跟踪器附接到转发到服务元件的每个用户包,服务元件在应用网络服务之后与用户包一起返回。以这种方式,TWAMP会话提供商可以利用网络跟踪器将由服务元件处理的用户业务与从客户端接收的原始TWAMP包相关联。
TWAMP会话发送器34从TWAMP会话反射器40接收TWAMP测试包,其中,每个TWAMP测试包包括SID和度量(322)。在从TWAMP会话反射器40接收到TWAMP测试包时,TWAMP会话发送器32基于TWAMP测试包中包含的SUB ID,将接收到的TWAMP测试包与对应的用户相关联(324)。例如,TWAMP会话发送器34可以将接收的TWAMP测试包中包括的SUB ID与多个SUB ID进行比较,以便识别用户。
TWAMP控制客户端32或由第一网络设备28或由诸如SDN控制器或协调引擎的集中式控制器执行的某个其他模块然后可以基于用于数据会话50的接收度量,为给定用户计算第一网络设备28和第二网络设备30之间的网络性能测量(194)。例如,TWAMP控制客户端32可以基于所接收的度量,计算保持活动的或路径连接的测量、RTT测量、路径延迟测量、包抖动测量、包重新排序测量、包丢失测量、服务等待时间测量或服务负载测量中的一个或多个。
示例:
下面示出了本文描述的技术用于测量用于为给定用户的数据包应用网络服务的等待时间的示例。为了说明的目的,参考图12至图15所示的TWAMP数据包的示例性格式来描述以下示例。
1、首先,TWAMP客户端/会话发送器通过在TWAMP数据包的包填充中嵌入用户包、在包括SUBID TYPE、SIZE OF SUB ID和SUB ID字段的各种字段内设置值、并设置时间戳225、235(T3)以记录TWAMP包发送到TWAMP反射器的时间,来根据模式(图17的步骤312)构建TWAMP数据包220或230。
2、在接收到TWAMP测试包(图17的步骤314)时,TWAMP服务器/反射器根据模式(T2)在TWAMP应答消息240或250的时间戳244中记录接收时间。另外,TWAMP服务器/反射器设置时间戳242(T3),以包含TWAMP客户端发送原始TWAMP包的时间戳225、235的值。
3、接下来,TWAMP服务器更新TWAMP应答消息的服务等待时间测量时间戳254(T5),以记录内部用户包被提取并发送到所选择的服务的时间(图17的步骤318)。在一个示例中,TWAMP服务器通过将网络跟踪器附接到由服务元件返回的用户包来维护数据包的上下文。
4、在从服务元件接收到包括该网络跟踪器的用户包时,TWAMP服务器更新TWAMP应答包中的服务等待时间接收器时间戳256(T6),以记录从服务元件接收回用户包的时间(图17的步骤320)。
5、此时,TWAMP服务器将服务PDU嵌入到TWAMP应答消息中,设置时间戳(T3)242,以记录TWAMP应答消息发送回TWAMP反射器的时间,并输出TWAMP包。
6.TWAMP客户端在接收到特定用户的TWAMP包后,将当前时间戳记为T4。
7、所有时间戳可用,TWAMP客户端或集中控制器可以计算以下示例性度量:
a、往返时间(RTT)=((T4-T1)-(T3-T2))
b、每个用户的服务等待时间=(T6-T5)
本公开中描述的技术可以至少部分地在硬件、软件、固件或其任何组合中实现。例如,所描述的技术的各个方面可以在一个或多个处理器(包括一个或多个微处理器、DSP、ASIC、FPGA或任何其他等效的集成或离散逻辑电路以及这些组件的任何组合)内实现。术语“处理器”或“处理电路”通常可以指单独的或与其他逻辑电路或任何其他等效电路组合的前述逻辑电路中的任何一种。包括硬件的控制单元还可以执行本公开的技术中的一种或多种。
这样的硬件、软件和固件可以在相同设备内或在单独的设备内实现,以支持本公开中描述的各种操作和功能。此外,所描述的单元、模块或组件中的任何一个可以共同或单独实现为离散但可互操作的逻辑设备。将不同特征描述为模块或单元,旨在突出显示不同的功能方面,并不一定意味着这种模块或单元必须由单独的硬件或软件组件来实现。相反,与一个或多个模块或单元相关联的功能可以由单独的硬件或软件组件执行,或者集成在公共或单独的硬件或软件组件内。
本公开中描述的技术也可以在包含指令的计算机可读介质(例如,计算机可读存储介质)中体现或编码。在计算机可读介质中嵌入或编码的指令可以使可编程处理器或其他处理器执行该方法,例如,当执行指令时。计算机可读介质可以包括非暂时性计算机可读存储介质和瞬时通信介质。有形和非暂时性的计算机可读存储介质可以包括RAM、ROM、PROM、EPROM、EEPROM、闪存、硬盘、CD-ROM、软盘、盒式磁带、磁性介质、光学介质、或另一种计算机可读存储介质。应当理解,术语“计算机可读存储介质”是指物理存储介质,而不是信号、载波或其他瞬时介质。
已经描述了本公开的各个方面。这些和其他方面在以下权利要求的范围内。

Claims (18)

1.一种用于数据监控的方法,包括:
在双向主动测量协议TWAMP控制客户端与TWAMP服务器之间建立控制连接;
由所述TWAMP控制客户端和所述TWAMP服务器通过所述控制连接协商在第一网络设备上执行的TWAMP会话发送器与在第二网络设备上执行的TWAMP会话反射器之间的数据会话,其中,协商数据会话包括指定服务提供商网络的单独用户的用户标识符;并且
在所述TWAMP会话发送器和所述TWAMP会话反射器之间交换用于所述数据会话的一个或多个TWAMP测试包,所述一个或多个TWAMP测试包中的每一个包括用户的用户标识符。
2.根据权利要求1所述的方法,其中,协商数据会话包括利用所述TWAMP服务器并且从所述TWAMP控制客户端接收指定所述单独用户的所述用户标识符的TWAMP会话请求。
3.根据权利要求2所述的方法,其中,所述TWAMP会话请求包括指定所述单独用户的所述用户标识符的用户标识符类型字段。
4.根据权利要求3所述的方法,其中,所述用户标识符类型字段指定所述单独用户的国际移动用户识别码(IMSI)、国际移动设备识别码(IMEI)、计费标识符和IP地址中的一个。
5.根据权利要求1所述的方法,其中,建立控制连接包括:
由所述TWAMP服务器向所述TWAMP控制客户端发送识别由所述TWAMP服务器支持的多个通信模式的问候消息,其中,所述多个通信模式中的一个指示用户感知的数据会话由所述TWAMP服务器支持;并且
由所述TWAMP服务器从所述TWAMP控制客户端接收识别所述多个通信模式中的同样由所述TWAMP控制客户端支持的至少一个通信模式的设置消息,其中,所述多个通信模式中的所述至少一个通信模式指示用户感知的数据会话由所述TWAMP控制客户端支持。
6.根据权利要求1所述的方法,其中,建立控制连接包括:
由所述TWAMP控制客户端从所述TWAMP服务器接收识别所述TWAMP服务器支持的多个通信模式的问候消息,其中,所述多个通信模式中的一个指示用户感知的数据会话由所述TWAMP服务器支持;
由所述TWAMP控制客户端选择所述多个通信模式中的同样由所述TWAMP控制客户端支持的至少一个通信模式;并且
由所述TWAMP控制客户端向所述TWAMP服务器发送识别所述多个通信模式中的所述至少一个通信模式的设置消息,其中,所述多个通信模式中的所述至少一个通信模式指示用户感知的数据会话由所述TWAMP控制客户端支持。
7.根据权利要求1所述的方法,其中,交换用于所述数据会话的所述一个或多个TWAMP测试包包括:
由所述TWAMP会话反射器从所述TWAMP会话发送器接收用于所述数据会话的所述一个或多个TWAMP测试包,所述一个或多个TWAMP测试包中的每一个包括与所述数据会话相关联的用户标识符;并且
由所述TWAMP会话反射器将所述一个或多个TWAMP测试包发送回所述TWAMP会话发送器,所述一个或多个TWAMP测试包中的每一个包括与所述数据会话相关联的用户标识符以及用于测量所述第一网络设备和所述第二网络设备之间的网络性能的所述数据会话的至少一个度量。
8.根据权利要求7所述的方法,还包括针对所述一个或多个TWAMP测试包中的每一个并且在将所述一个或多个TWAMP测试包发送回所述TWAMP会话发送器之前,
由TWAMP会话反射器提取嵌入在相应的TWAMP测试包的有效载荷内的用户包;
基于与所述数据会话相关联的所述用户标识符来选择网络服务;
将所述用户包引导为由所选网络服务处理;
在由所述网络服务处理之后从所述网络服务接收经处理的用户包;并且
响应于从所述网络服务接收到所述经处理的用户包,由TWAMP会话反射器将相应的TWAMP测试包发送回所述TWAMP会话发送器。
9.根据权利要求8所述的方法,还包括针对所述一个或多个TWAMP测试包中的每一个并且在将所述一个或多个TWAMP测试包发送回所述TWAMP会话发送器之前,
在TWAMP测试包内设置指示由所述TWAMP会话反射器接收到TWAMP测试包的时间的时间戳;
在TWAMP测试包内设置指示所述TWAMP测试包的所述用户包被所述TWAMP会话反射器引导至所选择的网络服务的时间的时间戳;
在TWAMP测试包内设置指示所述经处理的用户包被所述TWAMP会话反射器从所述网络服务接收回的时间的时间戳;并且
在TWAMP测试包内设置指示TWAMP测试包由所述TWAMP会话反射器发送到所述TWAMP会话发送器的时间的时间戳。
10.根据权利要求1所述的方法,其中,交换用于所述数据会话的所述一个或多个TWAMP测试包包括:
由所述TWAMP会话发送器将用于所述数据会话的所述一个或多个TWAMP测试包发送到所述TWAMP会话反射器,所述一个或多个TWAMP测试包中的每一个包括所述用户标识符;
由所述TWAMP会话发送器接收从所述TWAMP会话反射器返回所述一个或多个TWAMP测试包,所述一个或多个TWAMP测试包中的每一个包括所述用户标识符和用于测量所述第一网络设备和所述第二网络设备之间的网络性能的所述数据会话的至少一个度量;并且
由所述TWAMP会话发送器基于包含在所述一个或多个TWAMP测试包中的用户标识符将所述一个或多个TWAMP测试包与所述服务提供商网络的用户相关联。
11.根据权利要求10所述的方法,
其中,由所述TWAMP会话发送器发送到所述TWAMP会话反射器的所述一个或多个TWAMP测试包中的每一个包括嵌入在相应的TWAMP测试包的有效载荷内的用户包,
其中,由所述TWAMP会话发送器从所述TWAMP会话反射器接收的每个TWAMP测试包包括:
在TWAMP测试包内指示所述TWAMP会话反射器接收到TWAMP测试包的时间的时间戳;
在TWAMP测试包内指示TWAMP测试包的嵌入的所述用户包被所述TWAMP会话反射器提取并引导向网络服务以进行处理的时间的时间戳;
在TWAMP测试包内指示经处理的用户包被所述TWAMP会话反射器从所述网络服务接收回的时间的时间戳;以及
在TWAMP测试包内指示TWAMP测试包由所述TWAMP会话反射器发送回所述TWAMP会话发送器的时间的时间戳。
12.一种网络设备,包括:
存储器;以及
一个或多个处理器,与所述存储器通信并且执行双向主动测量协议TWAMP控制客户端和TWAMP会话发送器,所述一个或多个处理器被配置为:
在所述TWAMP控制客户端和在第二网络设备上执行的TWAMP服务器之间建立控制连接,
协商在所述TWAMP会话发送器与在第二网络设备上执行的TWAMP会话反射器之间的数据会话,其中,协商数据会话包括指定服务提供商网络的单独用户的用户标识符;
将用于所述数据会话的一个或多个TWAMP测试包发送到所述TWAMP会话反射器,所述一个或多个TWAMP测试包中的每一个包括所述用户标识符;并且
接收从所述TWAMP会话反射器返回所述一个或多个TWAMP测试包,所述一个或多个TWAMP测试包中的每一个包括所述用户标识符和用于测量所述网络设备和所述第二网络设备之间的网络性能的所述数据会话的至少一个度量。
13.根据权利要求12所述的网络设备,
其中,由所述TWAMP会话发送器发送到所述TWAMP会话反射器的所述一个或多个TWAMP测试包中的每一个包括嵌入在相应的TWAMP测试包的有效载荷内的用户包,
其中,由所述TWAMP会话发送器从TWAMP会话反射器接收的每个TWAMP测试包包括:
在TWAMP测试包内指示所述TWAMP会话反射器接收到TWAMP测试包的时间的时间戳;
在TWAMP测试包内指示TWAMP测试包的所述用户包被所述TWAMP会话反射器引导向网络服务以进行处理的时间的时间戳;
在TWAMP测试包内指示经处理的用户包被所述TWAMP会话反射器从所述网络服务接收回的时间的时间戳;以及
在TWAMP测试包内指示TWAMP测试包由所述TWAMP会话反射器发送回所述TWAMP会话发送器的时间的时间戳。
14.一种网络设备,包括:
存储器;以及
一个或多个处理器,与所述存储器通信并且执行双向主动测量协议TWAMP服务器和TWAMP会话反射器,所述一个或多个处理器被配置为:
在所述TWAMP服务器和TWAMP控制客户端之间建立控制连接,
使用所述TWAMP服务器从所述TWAMP控制客户端接收所述TWAMP会话反射器和在第二网络设备上执行的TWAMP会话发送器之间的数据会话的TWAMP会话请求,其中,所述TWAMP会话请求指定服务提供商网络的单独用户的用户标识符,
由所述TWAMP会话反射器从所述TWAMP会话发送器接收用于所述数据会话的一个或多个TWAMP测试包,所述一个或多个TWAMP测试包中的每一个包括与所述数据会话相关联的用户标识符,并且
由所述TWAMP会话反射器将所述一个或多个TWAMP测试包发送回所述TWAMP会话发送器,所述一个或多个TWAMP测试包中的每一个包括与所述数据会话相关联的用户标识符和用于测量所述网络设备和所述第二网络设备之间的网络性能的所述数据会话的至少一个度量。
15.根据权利要求14所述的网络设备,其中,所述处理器还被配置为针对所述一个或多个TWAMP测试包中的每一个并且在将所述一个或多个TWAMP测试包发送回所述TWAMP会话发送器之前,
提取嵌入在相应的TWAMP测试包的有效载荷内的用户包;
基于与所述数据会话相关联的所述用户标识符来选择网络服务;
将所述用户包引导至由所选网络服务处理;
在由所述网络服务处理之后从所述网络服务接收经处理的用户包;并且
响应于从所述网络服务接收到所述经处理的用户包,将相应的TWAMP测试包发送回所述TWAMP会话发送器。
16.根据权利要求15所述的网络设备,其中,所述处理器还被配置为针对所述一个或多个TWAMP测试包中的每一个并且在将所述一个或多个TWAMP测试包发送回所述TWAMP会话发送器之前,
在TWAMP测试包内设置指示所述TWAMP会话反射器接收到TWAMP测试包的时间的时间戳;
在TWAMP测试包内设置指示TWAMP测试包的用户包被所述TWAMP会话反射器引导至所选择的网络服务的时间的时间戳;
在TWAMP测试包内设置指示经处理的用户包被所述TWAMP会话反射器从所述网络服务接收回的时间的时间戳;并且
在TWAMP测试包内设置指示TWAMP测试包由所述TWAMP会话反射器发送到所述TWAMP会话发送器的时间的时间戳。
17.根据权利要求15所述的网络设备,其中,所述TWAMP会话请求包括指定所述网络服务,以应用嵌入在通过所述数据会话发送的TWAMP测试包内的用户包的服务标识符。
18.一种存储指令的计算机可读存储介质,所述指令在由处理器执行时使所述处理器:
在双向主动测量协议TWAMP控制客户端与TWAMP服务器之间建立控制连接;
由所述TWAMP控制客户端和所述TWAMP服务器通过所述控制连接协商在第一网络设备上执行的TWAMP会话发送器与在第二网络设备上执行的TWAMP会话反射器之间的数据会话,其中,协商数据会话包括指定服务提供商网络的单独用户的用户标识符;并且
在TWAMP会话发送器和TWAMP会话反射器之间交换用于所述数据会话的一个或多个TWAMP测试包,所述一个或多个TWAMP测试包中的每一个包括用户的用户标识符。
CN201710909741.5A 2016-12-12 2017-09-29 用于数据监控的方法、网络设备以及计算机可读存储介质 Active CN108234235B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/376,617 2016-12-12
US15/376,617 US10218590B2 (en) 2016-12-12 2016-12-12 Subscriber-aware TWAMP data monitoring in computer networks

Publications (2)

Publication Number Publication Date
CN108234235A CN108234235A (zh) 2018-06-29
CN108234235B true CN108234235B (zh) 2021-08-20

Family

ID=60190720

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710909741.5A Active CN108234235B (zh) 2016-12-12 2017-09-29 用于数据监控的方法、网络设备以及计算机可读存储介质

Country Status (3)

Country Link
US (2) US10218590B2 (zh)
EP (1) EP3334093B1 (zh)
CN (1) CN108234235B (zh)

Families Citing this family (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9319916B2 (en) 2013-03-15 2016-04-19 Isco International, Llc Method and appartus for signal interference processing
US9781004B2 (en) 2014-10-16 2017-10-03 Cisco Technology, Inc. Discovering and grouping application endpoints in a network environment
US9998565B2 (en) 2015-05-25 2018-06-12 Juniper Networks, Inc. Selecting and monitoring a plurality of services key performance indicators using TWAMP
CN109075996B (zh) 2016-05-12 2022-11-29 瑞典爱立信有限公司 用于监视网络性能的监视控制器及因此执行的方法
MX2018014697A (es) 2016-06-01 2019-09-13 Isco Int Llc Metodo y aparato para realizar acondicionamiento de señales para mitigar la interferencia detectada en un sistema de comunicacion.
US10574763B2 (en) 2016-09-29 2020-02-25 Juniper Networks, Inc. Session-identifer based TWAMP data session provisioning in computer networks
US10218590B2 (en) * 2016-12-12 2019-02-26 Juniper Networks, Inc. Subscriber-aware TWAMP data monitoring in computer networks
EP3563242A1 (en) 2016-12-28 2019-11-06 Telefonaktiebolaget LM Ericsson (PUBL) Dynamic management of monitoring tasks in a cloud environment
US10320634B2 (en) * 2016-12-30 2019-06-11 Logmein, Inc. Data communications employing packet report messages
US10298279B2 (en) 2017-04-05 2019-05-21 Isco International, Llc Method and apparatus for increasing performance of communication paths for communication nodes
US10826788B2 (en) 2017-04-20 2020-11-03 Cisco Technology, Inc. Assurance of quality-of-service configurations in a network
US10812318B2 (en) 2017-05-31 2020-10-20 Cisco Technology, Inc. Associating network policy objects with specific faults corresponding to fault localizations in large-scale network deployment
US10505816B2 (en) 2017-05-31 2019-12-10 Cisco Technology, Inc. Semantic analysis to detect shadowing of rules in a model of network intents
US10693738B2 (en) 2017-05-31 2020-06-23 Cisco Technology, Inc. Generating device-level logical models for a network
US10439875B2 (en) 2017-05-31 2019-10-08 Cisco Technology, Inc. Identification of conflict rules in a network intent formal equivalence failure
US10623271B2 (en) 2017-05-31 2020-04-14 Cisco Technology, Inc. Intra-priority class ordering of rules corresponding to a model of network intents
US10554483B2 (en) 2017-05-31 2020-02-04 Cisco Technology, Inc. Network policy analysis for networks
US20180351788A1 (en) 2017-05-31 2018-12-06 Cisco Technology, Inc. Fault localization in large-scale network policy deployment
US11150973B2 (en) 2017-06-16 2021-10-19 Cisco Technology, Inc. Self diagnosing distributed appliance
US11469986B2 (en) 2017-06-16 2022-10-11 Cisco Technology, Inc. Controlled micro fault injection on a distributed appliance
US10904101B2 (en) 2017-06-16 2021-01-26 Cisco Technology, Inc. Shim layer for extracting and prioritizing underlying rules for modeling network intents
US10574513B2 (en) 2017-06-16 2020-02-25 Cisco Technology, Inc. Handling controller and node failure scenarios during data collection
US10587621B2 (en) 2017-06-16 2020-03-10 Cisco Technology, Inc. System and method for migrating to and maintaining a white-list network security model
US11645131B2 (en) 2017-06-16 2023-05-09 Cisco Technology, Inc. Distributed fault code aggregation across application centric dimensions
US10644946B2 (en) 2017-06-19 2020-05-05 Cisco Technology, Inc. Detection of overlapping subnets in a network
US10437641B2 (en) 2017-06-19 2019-10-08 Cisco Technology, Inc. On-demand processing pipeline interleaved with temporal processing pipeline
US10805160B2 (en) 2017-06-19 2020-10-13 Cisco Technology, Inc. Endpoint bridge domain subnet validation
US10567229B2 (en) 2017-06-19 2020-02-18 Cisco Technology, Inc. Validating endpoint configurations between nodes
US10411996B2 (en) 2017-06-19 2019-09-10 Cisco Technology, Inc. Validation of routing information in a network fabric
US10560355B2 (en) 2017-06-19 2020-02-11 Cisco Technology, Inc. Static endpoint validation
US10528444B2 (en) 2017-06-19 2020-01-07 Cisco Technology, Inc. Event generation in response to validation between logical level and hardware level
US10623259B2 (en) 2017-06-19 2020-04-14 Cisco Technology, Inc. Validation of layer 1 interface in a network
US10554493B2 (en) 2017-06-19 2020-02-04 Cisco Technology, Inc. Identifying mismatches between a logical model and node implementation
US11343150B2 (en) 2017-06-19 2022-05-24 Cisco Technology, Inc. Validation of learned routes in a network
US10536337B2 (en) 2017-06-19 2020-01-14 Cisco Technology, Inc. Validation of layer 2 interface and VLAN in a networked environment
US10567228B2 (en) 2017-06-19 2020-02-18 Cisco Technology, Inc. Validation of cross logical groups in a network
US10341184B2 (en) 2017-06-19 2019-07-02 Cisco Technology, Inc. Validation of layer 3 bridge domain subnets in in a network
US10333787B2 (en) 2017-06-19 2019-06-25 Cisco Technology, Inc. Validation of L3OUT configuration for communications outside a network
US10812336B2 (en) 2017-06-19 2020-10-20 Cisco Technology, Inc. Validation of bridge domain-L3out association for communication outside a network
US10218572B2 (en) 2017-06-19 2019-02-26 Cisco Technology, Inc. Multiprotocol border gateway protocol routing validation
US10505817B2 (en) 2017-06-19 2019-12-10 Cisco Technology, Inc. Automatically determining an optimal amount of time for analyzing a distributed network environment
US10348564B2 (en) * 2017-06-19 2019-07-09 Cisco Technology, Inc. Validation of routing information base-forwarding information base equivalence in a network
US11283680B2 (en) 2017-06-19 2022-03-22 Cisco Technology, Inc. Identifying components for removal in a network configuration
US10700933B2 (en) 2017-06-19 2020-06-30 Cisco Technology, Inc. Validating tunnel endpoint addresses in a network fabric
US10812121B2 (en) 2017-08-09 2020-10-20 Isco International, Llc Method and apparatus for detecting and analyzing passive intermodulation interference in a communication system
US10284313B2 (en) 2017-08-09 2019-05-07 Isco International, Llc Method and apparatus for monitoring, detecting, testing, diagnosing and/or mitigating interference in a communication system
US11140055B2 (en) * 2017-08-24 2021-10-05 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for enabling active measurements in internet of things (IoT) systems
US10587456B2 (en) 2017-09-12 2020-03-10 Cisco Technology, Inc. Event clustering for a network assurance platform
US10587484B2 (en) 2017-09-12 2020-03-10 Cisco Technology, Inc. Anomaly detection and reporting in a network assurance appliance
US10554477B2 (en) 2017-09-13 2020-02-04 Cisco Technology, Inc. Network assurance event aggregator
US10333833B2 (en) 2017-09-25 2019-06-25 Cisco Technology, Inc. Endpoint path assurance
US10581717B2 (en) * 2017-09-29 2020-03-03 Verizon Patent And Licensing Inc. Automated virtual network function test controller
US11102053B2 (en) 2017-12-05 2021-08-24 Cisco Technology, Inc. Cross-domain assurance
US10873509B2 (en) 2018-01-17 2020-12-22 Cisco Technology, Inc. Check-pointing ACI network state and re-execution from a check-pointed state
US10572495B2 (en) 2018-02-06 2020-02-25 Cisco Technology Inc. Network assurance database version compatibility
US10613958B2 (en) 2018-03-12 2020-04-07 Spirent Communications, Inc. Secure method for managing a virtual test platform
US10841196B2 (en) 2018-03-26 2020-11-17 Spirent Communications, Inc. Key performance indicators (KPI) for tracking and correcting problems for a network-under-test
US10812315B2 (en) 2018-06-07 2020-10-20 Cisco Technology, Inc. Cross-domain network assurance
US11218508B2 (en) 2018-06-27 2022-01-04 Cisco Technology, Inc. Assurance of security rules in a network
US10659298B1 (en) 2018-06-27 2020-05-19 Cisco Technology, Inc. Epoch comparison for network events
US10812364B1 (en) 2018-06-27 2020-10-20 Amazon Technologies, Inc. Testing forwarding states of a network device using probe detection and reflection
US10805199B1 (en) 2018-06-27 2020-10-13 Amazon Technologies, Inc. Testing forwarding information in a network switch
US11019027B2 (en) 2018-06-27 2021-05-25 Cisco Technology, Inc. Address translation for external network appliance
US11044273B2 (en) 2018-06-27 2021-06-22 Cisco Technology, Inc. Assurance of security rules in a network
US10911495B2 (en) 2018-06-27 2021-02-02 Cisco Technology, Inc. Assurance of security rules in a network
US11563668B1 (en) * 2018-06-27 2023-01-24 Amazon Technologies, Inc. Network devices using probes to test forwarding rules
US10904070B2 (en) 2018-07-11 2021-01-26 Cisco Technology, Inc. Techniques and interfaces for troubleshooting datacenter networks
CN108965090B (zh) * 2018-07-12 2020-12-22 中国联合网络通信集团有限公司 一种vpn网络用户路由数的控制方法及sdn控制器
US10826770B2 (en) 2018-07-26 2020-11-03 Cisco Technology, Inc. Synthesis of models for networks using automated boolean learning
US10616072B1 (en) 2018-07-27 2020-04-07 Cisco Technology, Inc. Epoch data interface
CN109873798B (zh) * 2018-08-03 2021-04-13 中国有色金属长沙勘察设计研究院有限公司 一种数据传输方法
CN114401530A (zh) 2018-08-06 2022-04-26 维沃移动通信有限公司 多模通信方法、终端和网络侧设备
EP3614627B1 (en) * 2018-08-20 2021-09-15 EXFO Inc. Telecommunications network and services qoe assessment
US10868748B1 (en) 2018-09-27 2020-12-15 Amazon Technologies, Inc. Testing forwarding states on multiple pipelines of a network device
US10992548B2 (en) * 2018-10-05 2021-04-27 Sandvine Corporation Method and system for remote quality of experience diagnostics based on a traffic signature determined from analyzing subscriber data and traffic flow performance statistics
CN109257296B (zh) * 2018-10-30 2021-10-19 中国联合网络通信集团有限公司 路由发布数限制方法及装置
US10992591B1 (en) * 2019-03-12 2021-04-27 Juniper Networks, Inc Apparatus, system, and method for discovering path maximum transmission units
US10749785B1 (en) * 2019-05-31 2020-08-18 Juniper Networks, Inc. Enhanced two-way active measurement protocol
US10805458B1 (en) * 2019-09-24 2020-10-13 Joseph D. Grabowski Method and system for automatically blocking recorded robocalls
US11483428B2 (en) 2019-09-24 2022-10-25 Joseph D. Grabowski Method and system for automatically detecting and blocking robocalls
US11153435B2 (en) 2019-09-24 2021-10-19 Joseph D. Grabowski Method and system for automatically blocking robocalls
CN110891285B (zh) * 2019-12-03 2023-03-21 锐捷网络股份有限公司 一种发射设备、反射设备、网络性能测试方法及系统
EP3840325A1 (en) * 2019-12-16 2021-06-23 Sandvine Corporation System and method for authorizing traffic flows
CN113162956A (zh) * 2020-01-22 2021-07-23 华为技术有限公司 一种建立通信连接的方法、装置和网络设备
CN111817913B (zh) * 2020-06-30 2022-05-17 北京红山信息科技研究院有限公司 分布式网络性能测试方法、系统、服务器和存储介质
US11496556B1 (en) * 2021-04-26 2022-11-08 Cisco Technology, Inc. Service provider selection for application-driven routing
CN113572659A (zh) * 2021-07-26 2021-10-29 浪潮思科网络科技有限公司 一种基于sdn的快速组网测试方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104813699A (zh) * 2012-10-02 2015-07-29 瑞典爱立信有限公司 在传输网络内使用主动探测优化无线电服务的方法和系统
CN105359461A (zh) * 2013-05-31 2016-02-24 意大利电信股份公司 分组交换通信网络的链路的性能测量
CN106209413A (zh) * 2015-05-25 2016-12-07 丛林网络公司 通信方法、网络的集中控制器设备及网络中的网络设备

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2337671B (en) * 1998-05-16 2003-12-24 Ibm Security mechanisms in a web server
US20080228912A1 (en) * 2007-03-16 2008-09-18 Ramakrishna Vedantham Enhanced Quality Reporting for Transmission Sessions
US9154532B2 (en) 2009-04-27 2015-10-06 Zaron Remote Llc Methods and apparatus for transmitting multimedia files in a data network
CN101977178A (zh) * 2010-08-09 2011-02-16 中兴通讯股份有限公司 基于中继的媒体通道建立方法及系统
WO2012066371A1 (en) 2010-11-18 2012-05-24 Telefonaktiebolaget L M Ericsson (Publ) Systems and methods for measuring available capacity and tight link capacity of ip paths from a single endpoint
CN102307119B (zh) * 2011-08-18 2013-10-16 工业和信息化部电信传输研究所 一种发现互联网性能测量系统中的探针故障的方法
US9602634B2 (en) 2012-02-15 2017-03-21 Avaya Inc. Global session identifier
WO2013151471A1 (en) * 2012-04-04 2013-10-10 Telefonaktiebolaget L M Ericsson (Publ) Method for scalable measuring of connectivity between two way active measurement protocol (twamp) entities.
US8843738B2 (en) * 2012-05-14 2014-09-23 Sierra Wireless, Inc. TLS abbreviated session identifier protocol
US9710762B2 (en) 2012-06-06 2017-07-18 Juniper Networks, Inc. Dynamic logging
US8711708B2 (en) 2012-07-24 2014-04-29 Accedian Networks Inc. Automatic setup of reflector instances
US9960982B2 (en) * 2012-07-24 2018-05-01 Accedian Networks Inc. Multi-hop reflector sessions
US9628358B2 (en) 2012-10-05 2017-04-18 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for piggybacking radio data in IP measurements
KR101955689B1 (ko) * 2012-10-26 2019-03-07 삼성전자주식회사 서로 다른 이동 통신 네트워크들의 엔티티들을 포함하는 네트워크에서 종단간 서비스 레벨 협약을 측정 및 관리하는 방법 및 장치
US9485165B2 (en) * 2012-12-14 2016-11-01 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for augmenting TWAMP
US9306830B2 (en) 2013-01-30 2016-04-05 Accedian Networks Inc. Layer-3 performance monitoring sectionalization
US9313668B2 (en) 2013-02-11 2016-04-12 Telefonaktiebolaget Lm Ericsson (Publ) Dynamic provisioning of TWAMP
WO2014142723A1 (en) 2013-03-15 2014-09-18 Telefonaktiebolaget Lm Ericsson (Publ) Hypervisor and physical machine and respective methods therein for performance measurement
US9980163B2 (en) * 2013-04-11 2018-05-22 Telefonaktiebolaget L M Ericsson (Publ) Admission control for allowing or rejecting a measurement request between a first and a second device
US8842578B1 (en) 2013-05-09 2014-09-23 Yehuda Zisapel End-to-end (E2E) application packet flow visibility
US9563900B1 (en) 2013-09-27 2017-02-07 Groupon, Inc. Method, apparatus, and computer program product for consumer tracking
JP6193185B2 (ja) 2014-07-09 2017-09-06 株式会社東芝 通信装置、端末装置およびプログラム
US9537741B2 (en) 2014-07-25 2017-01-03 Telefonaktiebolaget L M Ericsson (Publ) Data path performance measurement using test messages in a software defined network
US10348601B2 (en) 2014-09-15 2019-07-09 Telefonaktiebolaget Lm Ericsson (Publ) Methods and arrangements for active measurements
US9705769B1 (en) 2014-12-17 2017-07-11 Juniper Networks, Inc. Service latency monitoring using two way active measurement protocol
US10320646B2 (en) 2014-12-31 2019-06-11 Telefonaktiebolaget Lm Ericsson (Publ) Apparatus and method to use PTP timestamps for two-way delay and delay variation measurement in IP networks
WO2016119822A1 (en) 2015-01-27 2016-08-04 Nokia Solutions And Networks Oy Traffic flow monitoring
KR102286882B1 (ko) 2015-03-06 2021-08-06 삼성전자 주식회사 이동 통신 시스템에서 사용자 체감 품질 관리 방법 및 장치
WO2016173615A1 (en) 2015-04-27 2016-11-03 Telefonaktiebolaget Lm Ericsson (Publ) Compute infrastructure resource monitoring method and entities
EP3099016B1 (en) 2015-05-25 2019-01-23 Juniper Networks, Inc. Monitoring services key performance indicators using twamp for sdn and nfv architectures
US10574763B2 (en) 2016-09-29 2020-02-25 Juniper Networks, Inc. Session-identifer based TWAMP data session provisioning in computer networks
US10218590B2 (en) * 2016-12-12 2019-02-26 Juniper Networks, Inc. Subscriber-aware TWAMP data monitoring in computer networks

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104813699A (zh) * 2012-10-02 2015-07-29 瑞典爱立信有限公司 在传输网络内使用主动探测优化无线电服务的方法和系统
CN105359461A (zh) * 2013-05-31 2016-02-24 意大利电信股份公司 分组交换通信网络的链路的性能测量
CN106209413A (zh) * 2015-05-25 2016-12-07 丛林网络公司 通信方法、网络的集中控制器设备及网络中的网络设备
CN106209490A (zh) * 2015-05-25 2016-12-07 丛林网络公司 选择和监控多个服务关键性能指标的方法和系统

Also Published As

Publication number Publication date
US10218590B2 (en) 2019-02-26
US20180167294A1 (en) 2018-06-14
US10560352B2 (en) 2020-02-11
EP3334093A1 (en) 2018-06-13
US20190182133A1 (en) 2019-06-13
EP3334093B1 (en) 2021-01-06
CN108234235A (zh) 2018-06-29

Similar Documents

Publication Publication Date Title
CN108234235B (zh) 用于数据监控的方法、网络设备以及计算机可读存储介质
CN110120900B (zh) 通信方法、网络的集中控制器设备及网络中的网络设备
EP3654589B1 (en) Predicting application quality of experience metrics using adaptive machine learned probes
US10652086B2 (en) Converging IOT data with mobile core networks
US10574763B2 (en) Session-identifer based TWAMP data session provisioning in computer networks
US11770309B2 (en) On-demand probing for quality of experience metrics
EP2955940B1 (en) Mobile network iot convergence
EP3099016B1 (en) Monitoring services key performance indicators using twamp for sdn and nfv architectures
US11621907B2 (en) Enhanced two-way active measurement protocol
EP3099015B1 (en) Selecting and monitoring a plurality of services key performance indicators using twamp

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: California, USA

Applicant after: Juniper Networks, Inc.

Address before: California, USA

Applicant before: Jungle network

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant