1.本公开涉及无线通信
技术领域:
:,尤其涉及一种基于话单数据的流量统计方法、装置及电子设备。
背景技术:
::2.在现有的多跳网络实现方法中,构建好的多跳网络在传输数据时经常采用由多跳网络中的远端节点启动虚拟专用网络服务,由远端节点将待转发的数据通过虚拟专用网络服务转发到虚拟网络设备上,再由虚拟网络设备将待转发数据转发给远端节点的上一级中继节点,并通过逐级转发实现将待转发数据通过多跳网络中的网关节点转发至多跳网络所属的网络平台的目的,采用这种方法转发数据时,因为各级子节点使用的ip地址相同,无法区分各个节点实际的网络流量使用情况。3.但在实际的应用场景中,需要向网络平台的用户提供多跳网络中各个节点的网络流量使用情况,以使用户能够结合实际情况和多跳网络中各个节点的网络流量使用情况对多跳网络进行调整为此,需要一种能够统计多跳网络在转发数据时各个节点的网络流量使用情况的方法。4.需要说明的是,在上述
背景技术:
:部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。技术实现要素:5.本公开提供一种基于话单数据的流量统计方法、装置及电子设备,至少在一定程度上克服现有技术中多跳网络在转发数据时无法统计多跳网络中各个节点的网络流量使用情况的技术问题。6.本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。7.根据本公开的一个方面,提供了一种基于话单数据的流量统计方法,包括:8.获取多跳网络中各个节点逐级上报的话单数据,所述多跳网络包括:位于最底层的远端节点、位于最高层的网关节点以及位于所述远端节点与所述网关节点之间的多级中继节点,每个节点上报的话单数据中包含该节点以及与该节点连接的子节点的流量信息;9.根据所述话单数据,生成所述多跳网络中各个节点的流量统计结果。10.在一些实施例中,所述获取多跳网络中各个节点逐级上报的话单数据,包括:11.获取第一节点上报的话单数据,其中,所述第一节点为多跳网络中的任意一个节点,所述第一节点上报的话单数据中包含:第一节点的流量信息;12.获取第二节点上报的话单数据,其中,所述第二节点为所述第一节点的父节点,所述第二节点上报的话单数据中包含:所述第一节点和所述第二节点的流量信息。13.在一些实施例中,所述第一节点为多跳网络中的任意一个节点,当所述第一节点为所述远端节点时,所述获取第一节点上报的话单数据,包括:14.获取所述远端节点转发的数据的流量信息;15.将所述远端节点转发的数据的流量信息填充进预设的话单数据结构中,获取所述远端节点上报的话单数据。16.在一些实施例中,当所述第一节点为所述中继节点时,所述获取第一节点上报的话单数据,包括:17.获取所述中继节点的子节点上报的话单数据;18.获取所述中继节点转发的数据的流量信息;19.将所述中继节点的子节点上报的话单数据和所述中继节点转发的数据的流量信息填充进所述预设的话单数据结构中,获取所述中继节点上报的话单数据。20.在一些实施例中,所述中继节点的子节点为所述远端节点或所述中继节点在所述多级中继节点中的下级节点。21.在一些实施例中,所述第二节点为所述中继节点或所述网关节点,当所述第二节点为所述网关节点时,所述获取第二节点上报的话单数据,包括:22.获取所述网关节点的子节点上传的话单数据;23.将所述网关节点的子节点上传的话单数据填充进所述预设的话单数据结构中,获取所述网关节点上报的话单数据。24.在一些实施例中,在获取所述网关节点上报的话单数据后,所述方法还包括:25.根据所述网关节点上报的话单数据获取所述多跳网络中各个节点的流量信息;26.将获取到的所述多跳网络中各个节点的流量信息作为所述多跳网络中各个节点的流量统计结果。27.根据本公开的另一个方面,还提供了一种基于话单数据的流量统计装置,包括:28.话单上报模块,被配置为获取多跳网络中各个节点逐级上报的话单数据,所述多跳网络包括:位于最底层的远端节点、位于最高层的网关节点以及位于所述远端节点与所述网关节点之间的多级中继节点,每个节点上报的话单数据中包含该节点以及与该节点连接的子节点的流量信息;29.流量统计模块,被配置为根据所述话单数据,生成所述多跳网络中各个节点的流量统计结果。30.根据本公开的另一个方面,还提供了一种电子设备,该电子设备包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的基于话单数据的流量统计方法。31.根据本公开的另一个方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的基于话单数据的流量统计方法。32.根据本公开的另一个方面,还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述任意一项的基于话单数据的流量统计方法。33.本公开的实施例中提供的基于话单数据的流量统计方法,通过由多跳网络中各个节点在多跳网络转发数据的同时获取被转发的数据的流量信息,并将获取的流量信息填充进预设的话单数据结构,以得到记录了多跳网络内各个节点的网络流量使用情况的话单数据;多跳网络内各个节点逐级上报话单数据,以使网关节点根据接收到的话单数据生成记录了各个节点的网络流量使用情况的话单数据,并将网关节点生成的话单数据上报至多跳网络所属的网络平台,使的用户可以根据网关节点转发的话单数据了解多跳网络中各个节点的网络流量使用情况。网络平台的用户还可以进一步根据实际应用场景和各个节点的网络流量使用情况对多跳网络中的节点进行调整。34.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明35.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。36.图1示出本公开实施例中一种使用基于话单数据的流量统计方法的系统结构的示意图;37.图2示出本公开实施例中一种基于话单数据的流量统计方法的流程图;38.图3示出本公开实施例中一种获取多跳网络中各个节点逐级上报的话单数据的流程图;39.图4示出本公开实施例中一种获取远端节点上报的话单数据的流程图;40.图5示出本公开实施例中一种话单数据结构的分享者话单的示意图;41.图6示出本公开实施例中一种话单数据结构的连接者话单的示意图42.图7示出本公开实施例中一种获取中继节点上报的话单数据的流程图;43.图8示出本公开实施例中一种获取网关节点上报的话单数据的流程图;44.图9示出本公开实施例中一种根据网关节点上报的话单数据获取各个节点的流量统计结果的流程图;45.图10示出本公开实施例中一种多跳网络中在转发数据的同时上报话单数据的流程图;46.图11示出本公开实施例中一种中继节点生成话单数据的流程图;47.图12示出本公开实施例中一种多跳网络中远端节点或中继节点生成连接者话单的流程图;48.图13示出本公开实施例中一种基于话单数据的流量统计装置示意图;和49.图14示出本公开实施例中一种能够实现基于话单数据的流量统计方法的电子设备的结构框图。具体实施方式50.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。51.此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。52.下面结合附图,对本公开实施例的具体实施方式进行详细说明。如图1所示,该系统架构包括网关设备101、中继设备102及终端设备103;其中,网关设备101为多跳网络中网关节点对应的设备、中继设备102为多跳网络中中继节点对应的设备、终端设备103为多跳网络中远端节点对应的设备;网关设备101、中继设备102和终端设备103之间可以通过无线网络连接;终端设备103将数据通过中继设备102转发至网关设备101,由网关设备101将数据转发至该多跳网络所属的网络平台。53.可选地,上述网关设备101和中继设备102为能够进行数据转发的设备;在一些实施例中,使用包括超文本标记语言(hypertextmark-uplanguage,html)、可扩展标记语言(extensiblemarkuplanguage,xml)等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层(securesocketlayer,ssl)、传输层安全(transportlayersecurity,tls)、虚拟专用网络(virtualprivatenetwork,vpn)、网络平台安全协议(internetprotocolsecurity,ipsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。54.可选地,本公开实施例中的终端设备103也可以称作ue(userequipment,用户设备),在具体实现时,终端设备103可以是手机、平板电脑(tabletpersonalcomputer)、膝上型电脑(laptopcomputer)、个人数字助理(personaldigitalassistant,pda)、移动上网装置(mobileinternetdevice,mid)、可穿戴式设备(wearabledevice)或车载设备等,需要说明的是,在本发明实施例中并不限定终端设备的具体类型。55.本领域技术人员可以知晓,图1中的网关设备、中继设备和终端设备的数量仅仅是示意性的,根据实际需要,可以具有任意数目的网关设备、中继设备和终端设备。本公开实施例对此不作限定。56.在上述系统架构下,本公开实施例中提供了一种基于话单数据的流量统计方法,该方法可以由任意具备计算处理能力的电子设备执行。57.在一些实施例中,本公开实施例中提供的基于话单数据的流量统计方法可以由上述系统架构的终端设备执行;在另一些实施例中,本公开实施例中提供的基于话单数据的流量统计方法可以由上述系统架构中的网络侧设备执行;在另一些实施例中,本公开实施例中提供的基于话单数据的流量统计方法可以由上述系统架构中的终端设备和网络侧设备通过交互的方式来实现。58.图2示出本公开实施例中一种基于话单数据的流量统计方法流程图,如图2所示,本公开实施例中提供的基于话单数据的流量统计方法包括如下步骤:59.s202,获取多跳网络中各个节点逐级上报的话单数据。60.其中,多跳网络为包含位于最底层的远端节点、位于最高层的网关节点以及位于远端节点与网关节点之间的多级中继节点的路由网络。话单数据为各个节点分别统计的网络流量使用情况,可以包含各个节点自身的流量信息和各个节点的子节点的流量信息,流量信息可以为多跳网络中的节点转发数据时消耗的网络流量和相关信息,可以包含消耗的网络流量的数量。61.在一些实施例中,在多跳网络中的远端节点通过多级中继节点转发数据到网关节点的同时,远端节点根据自身的流量信息生成自身的话单数据并向作为自身上级节点的中继节点上报;该中继节点接收远端节点上报的话单数据后,根据接收到的话单数据和自身的流量信息生成自身的话单数据,并将其上报给自身在多级中继节点中的上级节点,并由多级中继节点中的每一级中继节点都按照这一步骤进行操作,直到多级中继节点中的最上级中继节点向网关节点上报话单数据;网关节点根据接收到的话单数据生成上报给多跳网络所属网络平台的话单数据,并将其上报给该网络平台,其中,网关节点上报的话单数据包含多跳网络内每个节点的流量信息和每个节点的子节点的流量信息。62.s204,根据所述话单数据,生成多跳网络中各个节点的流量统计结果。63.其中,流量统计结果为多跳网络中每个节点的网络流量消耗情况,可以包含多跳网络中每个节点在转发数据时消耗的网络流量和每个节点分享给自身的子节点的网络流量。64.在一些实施例中,根据网关节点上报的话单数据得到多跳网络内每个节点的流量信息,将其作为多跳网络中各个节点的流量统计结果,还可以进一步根据多跳网络内各个节点和各个节点的子节点之间的连接关系获取多跳网络中节点间的网络拓扑关系。65.图3示出了本公开实施例中获取多跳网络中各个节点逐级上报的话单数据的流程图,如图3所示,本公开实施例中获取多跳网络中各个节点逐级上报的话单数据,包括如下步骤:66.s302,获取第一节点上报的话单数据。67.其中,第一节点为多跳网络中的任意一个节点,当第一节点为远端节点时,第一节点上报的话单数据为远端节点的流量信息;当第一节点为中继节点时,第一节点上报的话单数据可以包含中继节点以及中继节点的子节点的流量信息;当第一节点为网关节点时,第一节点上报的话单数据可以包含多跳网络中各个节点的流量信息。68.s304,获取第二节点上报的话单数据。69.其中,第二节点为中继节点或网关节点,第二节点上报的话单数据为第二节点和第二节点的子节点的网络流量使用情况;当第二节点为中继节点时,第二节点向中继节点在多级中继节点中的上级节点或网关节点上报话单数据;当第二节点为网关节点时,第二节点向网络平台上报话单数据。70.图4示出了本公开实施例中当第一节点为远端节点时,获取远端节点上报的话单数据的流程图,如图4所示,本公开实施例中获取远端节点上报的话单数据,包括如下步骤:71.s402,获取远端节点转发的数据的流量信息。72.其中,远端节点转发的数据的流量信息可以包含远程节点转发的数据的源ip地址、目的ip地址、源端口号、目的端口号、传输层协议和远程节点在话单持续时间内转发的数据的大小。73.s404,将远端节点转发的数据的流量信息填充进预设的话单数据结构中,获取远端节点上报的话单数据。74.其中,预设的话单数据结构为预先设置好的用于记录多跳网络中各个节点的网络流量使用情况的表格,远端节点将将自身的流量信息填充进预设的话单数据结构中,以得到远端节点上报的话单数据。75.在一些实施例中,还提供了一种预设的话单数据结构,用于使多跳网络中各个节点将自身和子节点的流量信息填充进话单数据结构中得到各个节点上报的话单数据,预设的话单数据结构包括连接者话单和分享者话单,其中,连接者话单用于记录多跳网络中各个节点的流量信息,分享者话单用于记录多跳网络中各个节点的子节点的流量信息,预设的话单数据结构如表1所示:76.表1、话单数据结构77.属性字段含义sharebill分享者话单connectbill连接者话单78.其中,分享者话单将各个节点的子节点上报的话单数据中记录的流量信息,分享者话单的数据结构如表2所示:79.表2、分享者话单数据结构[0080][0081][0082]分享者话单中的下一级子话单列表用于将各个节点的子节点上报的话单数据中的连接者话单记载的内容填充进下一级子节点话单列表中,以使当前节点的分享者话单能够记录当前节点的子节点的网络流量使用情况,下一级子话单列表的数据结构如表3所示:[0083]表3、下一级子节点话单数据结构[0084]属性数据类型连接者用户id字符串连接者自身使用的上行连接者流量字符串连接者自身使用的下行连接者流量字符串连接者自身使用的连接者总流量字符串连接者本次话单开始时间字符串连接者本次话单结束时间字符串下一级子节点话单列表链表[0085]其中,下一级子节点话单数据结构中还包括该子节点的下一级子节点话单列表,用于记录该子节点的子节点的网络流量使用情况,表3所示的下一级子节点话单数据结构在表1所示的话单数据结构中的位置如图5所示。[0086]表1中的连接者话单的数据结构如表4所示:[0087]表4、连接者话单数据结构[0088][0089][0090]其中,表4所示的连接者话单数据结构在表1所示的话单数据结构中的额位置如图6所示;对于多跳网络中的网关节点,获取网关节点上报的话单数据时,将预设的话单数据结构中的连接者话单设为空集;对于多跳网络中的远端节点,获取远端节点上报的话单数据时,将预设的话单数据结构中的分享者话单设为空集。[0091]在一些实施例中,对于多跳网络中任意一个节点,获取其上报的话单数据时,该节点根据该节点的各个子节点上报的话单数据的连接者话单记载的连接者自身上行流量、连接者自身下行流量和连接者自身总流量分别累加得到该节点的话单数据中分享者话单中要记载的分享者分享给子节点的上行流量总和、分享者分享给子节点的下行流量总和及分享者分享给子节点的流量,并将各个子节点上报的话单数据填充进分享者话单中的下一级子节点话单列表中,以使多跳网络中任意一个节点上报的话单数据都包含该节点的各级子节点的话单数据。[0092]图7示出了本公开实施例中当第二节点为中继节点时,获取中继节点上报的话单数据的流程图,如图7所示,本公开实施例中获取中继节点上报的话单数据,包括如下步骤:[0093]s702,获取中继节点的子节点上报的话单数据。[0094]其中,中继节点的子节点可以包含多跳网络中远端节点和中继节点。[0095]s704,获取中继节点转发的数据的流量信息。[0096]其中,中继节点转发的数据的流量信息为中继节点转发数据时消耗的网络流量。[0097]s706,将中继节点的子节点上报的话单数据和中继节点转发的数据的流量信息填充进预设的话单数据结构中,获取中继节点上报的话单数据。[0098]其中,将根据子节点上报的话单数据中的连接者话单记载的计算分享者流量,将子节点上报的话单数据填充进分享者话单中,将流量信息填充进连接者话单中。[0099]在一些实施例中,中继节点将子节点上报的话单数据中的连接者话单记录的连接者自身上行流量、连接者自身下行流量和连接者自身总流量分别累加,得到对应的分享者分享给子节点的上行流量总和、分享者分享给子节点的下行流量总和以及分享者分享给子节点的流量。[0100]图8示出了本公开实施例中当第二节点为网关节点时,获取网关节点上报的话单数据的流程图,如图8所示,本公开实施例中获取网关节点上报的话单数据,包括如下步骤:[0101]s802,获取网关节点的子节点上报的话单数据。[0102]其中,网关节点的子节点为多级中继节点中与网关节点连接的中继节点,与网关节点连接的中继节点同时也是多级中继节点中最上级的中继节点。[0103]s804,将网关节点的子节点上传的话单数据填充进预设的话单数据结构中,获取网关节点上报的话单数据。[0104]其中,由网关节点根据接收到的子节点的话单数据中的连接者话单计算网关节点的填充进预设话单结构的分享者话单,得到网关节点上报的话单数据,网关节点上报的话单数据包含网关节点的各级子节点的话单数据,即网关节点上报的话单数据中包含多跳网络中各个节点的话单数据。[0105]图9示出了本公开实施例中根据网关节点上报的话单数据获取各个节点的流量统计结果的流程图,如图7所示,本公开实施例中根据网关节点上报的话单数据获取各个节点的流量统计结果,包括如下步骤:[0106]s902,根据网关节点上报的话单数据获取多跳网络中各个节点的流量信息。[0107]其中,网关节点上报的话单数据中包含逐层上报的多跳网络中各个中继节点和远端节点的流量信息,当网关节点将话单数据上报至多跳网络所属的网络平台后,网络平台可以根据话单数据中的下一级子节点话单列表中的数据获取多跳网络中各个节点的流量信息。[0108]步骤s904,将获取到的多跳网络中各个节点的流量信息作为多跳网络中各个节点的流量统计结果。[0109]其中,流量统计结果为网关节点上报的话单数据中记载的多跳网络中各个节点的网络流量使用情况,可以包含各个节点的流量信息。网络平台还可以进一步根据网关节点上报的话单数据的下一级子节点话单列表获取网关节点与各级子节点的连接关系,并根据连接关系获取多跳网络的网络拓扑,以使网络平台向用户展示多跳网络中各个节点的流量信息和多跳网络中的网络拓扑作为流量统计结果。[0110]作为一个可选的实施例,图10示出了多跳网络中在转发数据的同时上报话单数据的流程图,如图10所示,多跳网络中在转发数据的同时上报话单数据,包括如下步骤:[0111]s1002,初始化多跳网络中的各个节点。[0112]本步骤中,在多跳网络开始转发数据前,初始化多跳网络中的各个节点的配置信息,以避免对数据的转发造成影响。[0113]s1004,为多跳网络中各个节点配置虚拟专用网络服务。[0114]本步骤中,为了在多跳网络的各个节点之间采用虚拟专用网络服务转发数据,需要为各个节点分别配置好对应的虚拟专用网络服务,配置的内容可以包含虚拟专用网络代理地址、域名系统和路由。[0115]s1006,启动多跳网络中各个节点的虚拟专用网络服务。[0116]本步骤中,启动虚拟专用网络服务为数据的转发做准备。[0117]s1008,初始化多跳网络中各个节点的tun2sockets服务。[0118]本步骤中,各个节点的tun2sockets服务为采用虚拟专用网络服务转发数据时使用的代理转发服务,用于将各个节点通过虚拟专用网络服务的发出的数据转发至虚拟网络设备上统计流量信息,并将数据从虚拟网络设备转发至各个节点的上一级节点。[0119]s1010,启动多跳网络中各个节点的tun2sockets服务。[0120]本步骤中,当多跳网络开始转发数据时,启动各个节点的tun2sockets服务以进行数据的转发。[0121]上述步骤s1002-s1010为多跳网络在使用虚拟专用网络服务转发数据前的准备工作。[0122]s1012,统计自身转发数据的流量信息,填充连接者话单。[0123]本步骤中,远端节点将数据通过虚拟专用网络服务转发至虚拟网络设备后,由虚拟网络设备统计话单持续时间内远端节点通过虚拟专用网络服务转发的数据的长度、源ip地址,源端口,目的ip地址,目的端口和传输层协议,将统计到的信息作为流量信息填充进预设的话单数据结构中的连接者话单。[0124]s1014,根据连接者话单生成话单数据,将话单数据上报给远端节点的上一级节点。[0125]本步骤中,将预设的话单数据结构中的分享者话单的字段设为空后,生成远端节点要上报的话单数据,将其上报给远端节点连接的中继节点,其中,远端节点连接的中继节点为远端节点的上一级节点,该中继节点也是多级中继节点中最下级的中继节点。[0126]s1016,上传数据到远端节点的上一级节点。[0127]本步骤中,虚拟网络设备将数据转发给作为远端节点的上一级节点的中继节点。[0128]s1018,统计自身转发数据的流量信息,填充连接者话单。[0129]本步骤中,由中继节点通过中继节点对应的虚拟专用网络服务将数据转发至中继节点对应的虚拟网络设备,该虚拟网络设备统计接收到的数据获取其流量信息,并将流量信息填充进中继节点的预设的话单数据结构中的连接者话单。[0130]s1020,中继节点接收子节点上报的话单,填充共享者话单。[0131]本步骤中,当中继节点为多级中继节点中的最下级中继节点时,接收远端节点上报的话单数据,将接收到的话单数据填充到预设的话单结构中的分享者话单;当中继节点为多级中继节点中最下级中继节点以外的中继节点时,接收作为其子节点的中继节点上报的话单数据,将接收到的话单数据填充到预设的话单结构中的分享者话单。[0132]s1022,根据连接者话单和共享者话单生成话单数据,将话单数据上报给中继节点的上一级节点。[0133]本步骤中,根据连接者话单和分享者话单生成上报给中继节点的上一级节点的话单数据,并将其发送给中继节点的上一级节点,其中,中继节点的上一级节点可以为中继节点或网关节点,当上一级节点为中继节点时,重复步骤s1018-s1022,在多级中继节点中进行话单数据的逐级上报;当中继节点为网关节点时,继续执行步骤s1026,由网关节点根据接收到的话单数据生成自身要上报的话单数据。[0134]s1024,上传数据到中继节点的上一级节点。[0135]本步骤中,中继节点对应的虚拟网络设备将数据转发至中继节点的上一级节点,其中,中继节点的上一级节点可以为中继节点在多级中继节点中的上级节点或网关节点;当中继节点的上一级节点为中继节点在多级中继节点中的上级节点时,由作为上一级节点的中继节点继续通过虚拟专用网络服务向其上一级节点转发数据。[0136]s1026,接收中继节点上传的话单数据,填充共享者话单。[0137]本步骤中,网关节点将接收到的话单数据填充进预设数据结构的分享者话单中。[0138]s1028,根据共享者话单生成话单数据,将话单数据上报至网络平台。[0139]本步骤中,将网关节点的预设数据结构中连接者话单的字段设为空,从而得到网关节点的话单数据;由网关节点将话单数据上报至多跳网络所属的网络平台,以使该网络平台的用户能够根据网关节点上传的话单数据了解网关节点所属的多跳网络中各个节点的网络流量使用情况和各个节点间的网络拓扑,并使用户能够对结合实际情况对多跳网络中的各个节点进行限流或剔除等操作。[0140]s1030,网关节点从网络平台下载数据,转发至远端节点。[0141]本步骤中,网关节点从多跳网络所属的网络平台下载网关节点上传的数据的处理结果,并将处理结果通过多级中继节点转发至远端节点。[0142]作为一个可选的实施例,图11示出了一种中继节点生成话单数据的流程图,如图11所示,中继节点生成话单数据的步骤包括:[0143]s1102,中继节点是否存在直接子节点?[0144]本步骤中,直接子节点指的是直接与中继节点连接的下级中继节点。若存在中继节点的直接子节点,则执行步骤s1104;若不存在中继节点的直接子节点,则执行步骤s1112。[0145]s1104,所有直接子节点是否已上报话单数据?[0146]本步骤中,判断中继节点是否接收到每个直接子节点上报的话单数据,若中继节点接收到每个直接子节点上报的话单数据,则执行步骤s910;若中继节点未接收到每个直接子节点上报的话单数据,则执行步骤s1106。[0147]s1106,等待直接子节点上报话单数据。[0148]本步骤中,在中继节点向其上级节点转发数据完毕之前,中继节点会一直等待未上报话单数据的直接子节点向中继节点上报话单数据。[0149]s1109,直接子节点上报话单数据是否超时?[0150]本步骤中,判断中继节点的直接子节点从与中继节点建立连接到向中继节点上报话单数据所消耗的时间是否超过预设的时间间隔。若超过预设的时间间隔,则停止向中继节点上报话单继续执行步骤s1110;若未超过预设的时间间隔,则执行步骤s1106继续上报话单数据。[0151]s1110,根据直接子节点上报的话单数据生成分享者话单。[0152]本步骤中,中继节点将直接子节点上报的话单数据填充进预设的话单数据结构中的分享者话单。[0153]s1112,获取中继节点的连接者话单。[0154]本步骤中,中继节点将自身转发的数据的流量信息填充进元素和花旦数据结构中的连接者话单。[0155]s1114,根据分享者流量和连接者流量生成话单数据。[0156]本步骤中,将填充后的连接者话单和分享者话单作为中继节点将要上报的话单数据。[0157]作为一个可选的实施例,图12示出了一种多跳网络中远端节点或中继节点生成连接者话单的流程图,如图12所示,远端节点或中继节点生成连接者话单的步骤包括:[0158]s1202,获取通过虚拟专用网络服务转发的数据。[0159]本步骤中,远端节点或中继节点均以数据包的形式通过虚拟专用网络服务转发数据,获取远端节点或中继节点通过虚拟专用网络服务转发的数据即为,获取远端节点或中继节点在话单持续时间内通过虚拟专用网络服务转发的各个数据包。[0160]s1204,获取通过虚拟专用网络服务转发的数据的流量信息。[0161]本步骤中,获取的流量信息可以包含源ip地址,目的ip地址,源端口、目的端口、传输层协议和转发的各个数据包中数据的长度。[0162]s1206,计算出通过虚拟专用网络服务转发的数据消耗的网络流量。[0163]本步骤中,远端节点或中继节点通过累加转发的各个数据包中数据的长度得到远端节点或中继节点为此次转发的数据的大小,将计算出的数据的大小作为此次数据转发中消耗的网络流量。[0164]s1208,将流量信息和计算出的网络流量填充进连接者话单。[0165]本步骤中,将流量信息和计算出的网络流量填充到远端节点或中继节点对应的预设的话单数据结构中的连接者话单,以得到远端节点或中继节点的连接者话单。[0166]综上所述,本公开提供的基于话单数据的流量统计方法,通过由多跳网络中各个节点在多跳网络转发数据的同时获取被转发的数据的流量信息,并将获取的流量信息填充进预设的话单数据结构中,以得到记录了各个节点的网络流量使用情况的话单数据;多跳网络中各个节点在转发数据的同时逐级上报话单数据,以使网关节点根据接收到的话单数据生成记录了多跳网络中各个节点的网络流量使用情况的话单数据,并上报该话单数据到多跳网络所属的网络平台,使得网络平台的用户可以根据网关节点上报的话单数据清楚的了解多跳网络中各个节点的网络流量使用情况,方便用户根据实际情况和网络流量使用情况对多跳网络进行调整。[0167]进一步的,网关节点上报至网络平台的话单数据在使网络平台的用户实时查看多跳网络中网关节点和其各级子节点的网络流量使用情况同时,也能够辅助用户根据各个节点的实际的网络流量使用情况决定是否继续分享流量,对网关节点的各级子节点是否执行限流和剔除节点等操作。而被统计好的多跳网络中各个节点的网络流量使用情况也能够为运营商开展流量相关的后续业务提供帮助。[0168]需要注意的是,本公开技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定,本公开实施例中获取的个人、客户和人群等相关的个人身份数据、操作数据、行为数据等多种类型的数据,均已获得授权。[0169]基于同一发明构思,本公开实施例中还提供了一种基于话单数据的流量统计装置,如下面的实施例所述。由于该装置实施例解决问题的原理与上述方法实施例相似,因此该装置实施例的实施可以参见上述方法实施例的实施,重复之处不再赘述。[0170]图13示出本公开实施例中一种基于话单数据的流量统计装置的示意图,如图13所示,该装置包括:[0171]话单数据上报模块1302,被配置为获取多跳网络中各个节点逐级上报的话单数据,多跳网络包括:位于最底层的远端节点、位于最高层的网关节点以及位于远端节点与网关节点之间的多级中继节点,每个节点上报的话单数据中包含该节点以及与该节点连接的子节点的流量信息。[0172]流量统计模块1304,被配置为根据话单数据,生成多跳网络中各个节点的流量统计结果。[0173]此处需要说明的是,上述话单数据上报模块1302和流量统计模块1304对应于方法实施例中的s202~s204,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述方法实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以在诸如一组计算机可执行指令的计算机系统中执行。[0174]作为一个可选的实施例,话单数据上报模块1302还被配置为,获取第一节点上报的话单数据,其中,第一节点为多跳网络中任意一个节点,第一节点上报的话单数据中包含:第一节点的流量信息;获取第二节点上报的话单数据,其中,第二节点为第一节点的父节点,第二节点上报的话单数据中包含:第一节点和第二节点的流量信息。[0175]作为一个可选的实施例,话单数据上报模块1302还被配置为,第一节点为远端节点,当第一节点为远端节点时,获取第一节点上报的话单数据,包括:获取远端节点转发的数据的流量信息;将远端节点转发的数据的流量信息填充进预设的话单数据结构中,获取远端节点上报的话单数据。[0176]作为一个可选的实施例,话单数据上报模块1302还被配置为,第二节点为中继节点或网关节点,当第二节点为中继节点时,获取第二节点上报的话单数据,包括:获取中继节点的子节点上报的话单数据;获取中继节点转发的数据的流量信息;将中继节点的子节点上报的话单数据和中继节点转发的数据的流量信息填充进预设的话单数据结构中,获取中继节点上报的话单数据。[0177]作为一个可选的实施例,话单数据上报模块1302还被配置为,在获取中继节点的子节点上报的话单数据之前,方法还包括:判断中继节点的子节点是否存在;若中继节点的子节点存在,则获取中继节点的子节点上报的话单数据;若中继节点的子节点不存在,则将中继节点的子节点上报的话单数据设为空。[0178]作为一个可选的实施例,话单数据上报模块1302还被配置为,当第二节点为网关节点时,获取第二节点上报的话单数据,包括:获取网关节点的子节点上传的话单数据;将网关节点的子节点上传的话单数据填充进预设的话单数据结构中,获取网关节点上报的话单数据。[0179]所属
技术领域:
:的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。[0180]下面参照图14来描述根据本公开的这种实施方式的电子设备1400。图14显示的电子设备1400仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。[0181]如图14所示,电子设备1400以通用计算设备的形式表现。电子设备1400的组件可以包括但不限于:上述至少一个处理单元1410、上述至少一个存储单元1420、连接不同系统组件(包括存储单元1420和处理单元1410)的总线1430。[0182]其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元1410执行,使得所述处理单元1410执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元1410可以执行上述方法实施例的如下步骤:[0183]获取多跳网络中各个节点逐级上报的话单数据,多跳网络包括:位于最底层的远端节点、位于最高层的网关节点以及位于远端节点与网关节点之间的多级中继节点,每个节点上报的话单数据中包含该节点以及与该节点连接的子节点的流量信息。[0184]根据话单数据,生成多跳网络中各个节点的流量统计结果。[0185]存储单元1420可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)14201和/或高速缓存存储单元14202,还可以进一步包括只读存储单元(rom)14203。[0186]存储单元1420还可以包括具有一组(至少一个)程序模块14205的程序/实用工具14204,这样的程序模块14205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。[0187]总线1430可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。[0188]电子设备1400也可以与一个或多个外部设备1440(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备1400交互的设备通信,和/或与使得该电子设备1400能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口1450进行。并且,电子设备1400还可以通过网络适配器1460与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器1460通过总线1430与电子设备1400的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备1400使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。[0189]通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。[0190]特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机程序产品,该计算机程序产品包括:计算机程序,所述计算机程序被处理器执行时实现上述基于话单数据的流量统计方法。[0191]在本公开的示例性实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质可以是可读信号介质或者可读存储介质,该计算机可读存储介质上存储有能够实现本公开上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。[0192]本公开中的计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。[0193]在本公开中,计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。[0194]可选地,计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。[0195]在具体实施时,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c 等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。[0196]应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。[0197]此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。[0198]通过以上实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。[0199]本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本
技术领域:
:中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。当前第1页12当前第1页12