掌桥专利:专业的专利平台
掌桥专利
首页

数据包传输优先级的设置方法及其装置

文献发布时间:2024-04-18 19:58:26


数据包传输优先级的设置方法及其装置

技术领域

本发明总体上有关于无线通信。特别地,有关于数据包(packet,也可称为“封包”或“分组”)传输优先级的设置方法及其装置。

背景技术

除非另有说明,否则本部分中描述的方法不作为后面列出的权利要求书的现有技术,以及不因包含在本部分中而被认为是现有技术。

近年来,随着移动通信技术的发展,手机共享网络、客户终端设备(CPE)等提供移动路由器功能的中间节点设备开始流行。这些设备几乎不向网络提供服务质量(Qualityof Service,QoS)配置。通常,为了提供这种服务,中间节点设备可能会根据IPv4报头的服务类型(Type of Service,TOS)字段(或IPv6的讯务分类字段)做不同的优先级处理,但这种方法可能会遇到两个问题:

1、很多上层应用在设计时并没有设置TOS字段。因此,中间节点设备不能使用TOS字段,进行网络传输的优先级配置。

2、相反地,为了在网络传输中获得优势,许多应用将TOS字段的优先级设置得非常高,并且TOS字段中所填的值不能完全反映实际需求。

也就是说,中间节点设备不能根据实际需要具体指定某些应用的网络优先级使用规则。

因此,需要一种设置数据包传输优先级的方法和装置,来解决上述问题。

发明内容

下文的发明内容仅是说明性的,而不旨在以任何方式进行限制。也就是说,提供下文发明内容来介绍本文所述的新颖且非显而易见技术的概念、要点、益处和有益效果。所选实施方式在下文详细描述中进一步描述。因此,下文发明内容并不旨在标识所要求保护主题的基本特征,也不旨在用于确定所要求保护主题的范围。

因此,本发明的主要目的在于提供一种设置数据包传输优先级的方法及装置,使得中间节点设备能够灵活配置某些应用的网络传输优先级,从而为下游客户提供更好的网络传输体验。

在示例性实施例中,提供了一种数据包传输优先级的设置方法。该方法用于客户端设备(CPE)中。该方法包括经由局域网(LAN)端口从客户装置接收上行链路数据包。该方法包括确定该上行链路数据包是否是域名系统(DNS)查询数据包。该方法包括当确定上行链路数据包是DNS查询数据包时,将上行链路数据包中的查询字符串与包括多个字符串的列表进行比较。该方法包括当该查询字符串与列表中多个字符串之一相匹配时,将上行链路数据包中的第一事务标识符和列表中对应查询字符串的优先级记录到第一记录表中。该方法包括经由广域网(WAN)端口根据第一优先级将上行链路数据包发送到网络服务器。其中,第一事务ID可以是第一DNS事务ID。第一优先级可以是默认优先级(或正常优先级)。

在一些实施例中,该方法进一步包括在确定上行链路数据包不是DNS查询数据包时,将上行链路数据包中的网络服务器的IP地址(或目的地址)与包括多个IP地址的第二记录表进行比较。该方法进一步包括当IP地址与第二记录表中的多个IP地址之一匹配时,根据与第二记录表中的IP地址对应的第二优先级将上行链路数据包发送至该网络服务器。其中,第二优先级可以是从第二记录表中获取的优先级。

在一些实施例中,该方法进一步包括当IP地址与第二记录表中的多个IP地址中的任何一个不匹配时,根据该第一优先级(或正常优先级/默认优先级)将上行链路数据包发送至该网络服务器。

在一些实施例中,该第二优先级高于该第一优先级。

在一些实施例中,该方法进一步包括当查询字符串不匹配列表中的多个字符串中任何一个时,根据第一优先级将上行链路数据包发送到网络服务器。

在一些实施例中,提供了另一种数据包传输优先级的设置方法。该方法包括从网络服务器接收下行链路数据包。该方法进一步包括确定下行链路数据包是否是域名系统(DNS)响应数据包。该方法进一步包括在确定下行链路数据包为DNS响应数据包时,将下行链路数据包中的第二事务标识符与包括多个事务标识符的第一记录表进行比较。该方法还包括:当第二事务标识符与第一记录表中的多个事务标识符之一相匹配时,将下行链路数据包中的网络服务器的IP地址和第一记录表中对应第二事务标识符的优先级记录到第二记录表中。其中,下行链路数据包中网络服务器的IP地址可以在DNS响应数据包的DNS查询结果中。该方法还包括根据第一优先级向客户装置发送下行链路数据包。其中,第一优先级可以是默认优先级(或正常优先级)。第二事务ID可以是第二DNS事务ID,并且可以对应于第一事务ID。

在一些实施例中,该方法还包括当第二事务标识符与第一记录表中多个事务标识符中任何一个不匹配时,根据第一优先级向客户装置发送下行链路数据包。

在一些实施例中,该方法还包括在确定下行链路数据包不是DNS响应数据包时,将下行链路数据包中网络服务器的IP地址与包括多个IP地址的第二记录表进行比较。该方法还包括当网络服务器的IP地址与第二记录表中的多个IP地址之一匹配时,根据与第二记录表中的IP地址对应的第二优先级向客户装置发送下行链路数据包。

在一些实施例中,该方法还包括当网络服务器的IP地址不匹配第二记录表中多个IP地址中任何一个时,根据第一优先级向客户装置发送下行链路数据包。

在一些实施例中,第二优先级高于第一优先级。

在一个示例性实施例中,提供了一种用于设置数据包传输优先级的装置。该装置包括一个或多个处理器和用于存储一个或多个计算机可读指令的一个或多个计算机存储介质,其中,处理器被配置为驱动计算机存储介质执行以下任务:通过局域网(LAN)端口接收来自客户装置的上行链路数据包;判断上行链路数据包是否为域名系统查询数据包;在确定上行链路数据包为DNS查询数据包时,将上行链路数据包中的查询字符串与包括多个字符串的列表进行比较;当查询字符串与列表中的多个字符串中的一个相匹配时,将上行链路数据包中的第一事务标识符和列表中查询字符串对应的优先级记录到第一记录表中;并且通过广域网端口根据第一优先级发送上行链路数据包至网络服务器。

附图说明

所包含的附图用以提供对发明的进一步理解,以及,被并入且构成本发明的一部分。附图示出了发明的实施方式,并与说明书一起用于解释本发明的原理。可以理解的是,为了清楚地说明本发明的概念,附图不一定按比例绘制,所示出的一些组件可以以超出实际实施方式中尺寸的比例示出。

图1是根据本发明实施例描述的操作便于由客户终端设备设置数据包传输优先级的示例网络环境的区块图。

图2是根据本发明实施例描述的设置数据包传输的优先级的示例CPE 120的方块图。

图3A~3B是根据本发明实施例描述的设置上行方向的数据包传输优先级的方法的流程图。

图4A~4B是根据本发明实施例描述的设置下行方向的数据包传输优先级的方法的流程图。

图5是根据本发明实施例描述的数据包传输优先级设置方法的具体示例。

图6描述了实施本发明实施例的示例操作环境。

具体实施方式

下面参考附图更全面地描述本发明的各个方面。然而,本发明可以以许多不同形式实现并且不应被解释为限于贯穿本发明呈现的任何特定结构或功能。相反地,提供这些方面,使得本发明将是彻底和完整的,并且将本发明的范围充分地传达给本领域的技术人员。基于本文的教导,本领域技术人员应当理解,本发明的范围旨在涵盖本文公开的任何方面,无论是独立于本发明的任何其他方面实施还是与本发明的任何其他方面组合实施。例如,可以使用本文阐述的多个方面来实现装置或可以实践方法。此外,本发明的范围旨在覆盖这样的装置或方法,其使用除了或不同于本文阐述的本发明的各个方面的另一种结构、功能、或结构和功能来实施。应当理解,本文所公开的公开内容的任何方面都可以由权利要求的一项或多项来体现。

此处使用的词“示例性”是指“用作示例、实例或说明”。本文描述为“示例性”的任何方面不一定被解释为优于或优于其他方面。此外,贯穿数个附图,相似的数字指代相似的元素。

应当理解的是,当一个元件“连接”或“耦接”到另一个元件时,它可以直接连接或耦接到另一个元件,或者可以存在中间元件。相反地,当一个元件“直接连接”或“直接耦接”到另一个元件时,不存在中间元件。用于描述元素之间关系的其他词应该以类似的方式解释。(例如,“之间”与“直接之间”、“相邻”与“直接相邻”等)。

图1是根据本发明实施例描述的操作便于由客户终端设备设置数据包传输优先级的示例网络环境100的区块图。在该实施例中,将视频、语音和/或数据服务发送到一个或多个客户装置110中的应用程序。客户装置110可以包括移动设备、平板电脑、计算机、电话(例如,互联网协议语音(VoIP)电话)、游戏设备和任何其他可操作以接收视频、语音和/或数据服务的设备。应当理解的是,可以向客户装置110传递各种数据、多媒体和/或语音服务,包括但不限于,直播或广播电视、视频点播(VoD)内容、按次付费内容、录制的内容(例如,数字视频录像机内容)、纯音频内容、流媒体内容等。

在一些实施例中,交付给用户的一项或多项服务可以由客户终端设备(CPE)120接收并转发给一个或多个客户装置110,其中,该CPE 120可诸如网关设备、接入设备、移动设备或配置为将通信从上游网络路由到一个或多个连接或关联设备的任何其他设备。例如,CPE 120可以包括网关设备(例如,住宅网关、多媒体网关等)、路由器、移动设备或配置为路由通信到一个或多个客户装置110和从一个或多个客户装置110路由通信的任何其他设备。

在一些实施例中,可通过广域网(WAN)130将多种服务(例如,视频、语音和/或数据服务)从网络服务器140发送到CPE 120。此外,网络服务器140可以包括一个或多个网络设备,其中,该网络设备经由CPE 120从客户装置110接收域名系统(DNS)查询/请求数据包,并且响应于DNS查询/请求,经由CPE 120将DNS响应数据包发送到客户装置110。

在一些实施例中,可以通过本地网络将多个服务从CPE 120传递到一个或多个客户装置110。本地网络可以包括局域网(LAN)、无线局域网(WLAN)、个域网(PAN)、移动热点网络等。本地网络可以由CPE 120提供。本领域的技术人员将理解,可以使用多种标准和格式来实现通过本地网络的多种服务的发送。

可以将在客户装置110处运行的应用程序(例如,网页浏览器、游戏或被配置为访问互联网或其他上游网络的其他应用程序)配置为经由CPE 120从网络服务器140接收数据包并且向网络服务器140发送数据包。

图2是根据本发明实施例描述的设置数据包传输的优先级的示例CPE 120的方块图。CPE 120可以包括LAN端口205、DNS监视器210、白名单滤波器215、网络调度器220、WAN端口225和Qos管理器230。

CPE 120可以通过WAN端口225从一个或多个其他路由或接入设备或上游网络元件(例如,图1的网络服务器140等)接收一个或多个服务和/或通信,并且CPE 120可以通过LAN端口205将一个或多个服务和/或通信转发到图1的一个或多个客户装置110。

当初始化CPE 120时,在白名单滤波器215中预加载白名单,其中,该白名单记录了客户装置关注的DNS查询字符串,以及与DNS查询字符串对应的优先级。CPE 120的管理员或用户也可以根据远程网络需要更新或修改白名单。白名单如表1所示。

表1

网络调度器220管理多个优先级,例如,普通优先级235、240和高优先级245、250。需要说明的是,在本发明实施例中,可将优先级的数量扩展到两个以上,本发明不应限于图2所示的内容。当从客户装置向CPE 120发送上行链路数据包时,上行链路数据包可以首先到达DNS监视器210。DNS监视器210确定上行链路数据包是否是域名系统(DNS)查询数据包。当上行链路数据包是有效的DNS查询数据包时,DNS监视器210可以将上行链路数据包发送到白名单滤波器215,其中,作为有效的DNS查询数据包的上行链路数据包可以包括查询字符串、事务标识符(Transcaction ID)、接收时间和有效期。当上行链路数据包不是DNS查询数据包时,DNS监视器210可以通过Qos管理器将上行链路数据包发送到网络调度器220。网络调度器220根据正常优先级235经由WAN端口225将上行链路数据包发送到网络服务器240。

当白名单滤波器215接收到上行链路数据包时,白名单滤波器215首先解析上行链路数据包,以获取查询字符串,并且将查询字符串与白名单进行比较,其中,该白名单包括多个字符串。当查询字符串与白名单中多个字符串之一匹配时,白名单滤波器215可以将上行链路数据包中的事务ID与对应白名单中查询字符串的优先级通知DNS监视器210。接着,白名单滤波器215将上行链路数据包发送至网络调度器220。网络调度器220根据正常优先级235经由WAN端口225,将上行链路数据包发送至网络服务器140。

DNS监视器210将事务ID与对应查询字符串的优先级记录到第一记录表中。第一记录表如表2所示。

表2

在将作为DNS查询数据包的上行链路数据包发送到网络服务器140后,Qos管理器230经由WAN端口225和网络调度器220从网络服务器140接收下行链路包。Qos管理器230确定下行链路数据包是否为DNS响应数据包。当下行链路数据包是有效的DNS响应数据包时,Qos管理器230可以将下行链路数据包发送到DNS监视器210,其中,作为有效的DNS响应数据包的下行链路数据包可以至少包括:事务ID和网络服务器140发送下行链路数据包的IP地址。当下行链路数据包不是DNS响应数据包时,Qos管理器230可以将下行链路数据包发送到网络调度器220。网络调度器220根据正常优先级240经由LAN端口205向客户装置110中的一个发送下行链路数据包。

当DNS监视器210接收到下行链路数据包时,DNS监视器210可以将下行链路数据包中的事务ID与包括多个事务ID的第一记录表进行比较,判断下行链路数据包中的事务ID是否匹配第一记录表中的多个事务ID的任何一个。当事务ID与第一记录表中的多个事务ID中的一个匹配时,DNS监视器210可以将下行链路数据包中网络服务器140的IP地址以及与第一记录表中事务ID对应的优先级,通知给Qos管理器230,并且经由LAN端口205根据正常优先级发送下行链路数据包。

Qos管理器230将网络服务器140的IP地址和对应于事务ID的优先级记录到第二记录表中。第二记录表如表3所示。

表3

在转发数据包的过程中,对于发送到WAN端口225的上行链路数据包,Qos管理器230首先检查上行链路数据包中的网络服务器的IP地址是否与第二记录表中的IP地址匹配。当上行链路数据包中的网络服务器的IP地址与第二记录表中的其中一个IP地址匹配时,网络调度器220可以根据IP地址对应的优先级将上行链路数据包发送到WAN端口225。对于发送到LAN端口205的下行链路数据包,Qos管理器230首先检查下行链路数据包中的网络服务器的IP地址是否与第二记录表中的任何IP地址相匹配。当下行链路数据包中的网络服务器的IP地址与第二记录表中的其中一个IP地址匹配时,网络调度器220可以根据IP地址对应的优先级将下行链路数据包发送到LAN端口205。

在一些实施例中,除了DNS监视器210可以向第二记录表中添加新条目之外,Qos管理器230还可以根据历史学习数据主动添加新条目并维护第二记录表。

图3A~3B是根据本发明实施例描述的设置上行方向的数据包传输优先级的方法的流程图300。在本实施例中,将该方法应用于图2中的CPE。

在步骤S305中,CPE的DNS监视器经由局域网(LAN)端口从客户装置接收上行链路数据包。然后,在步骤S310中,DNS监视器确定上行链路数据包是否为域名系统(DNS)查询数据包。

当DNS监视器确定上行链路数据包是DNS查询数据包时(步骤S310中的“是”),在步骤S315中,DNS监视器将上行链路数据包转发给CPE的白名单滤波器,并且白名单滤波器将上行链路数据包中的查询字符串与包括多个字符串的列表进行比较,并判断上行链路数据包中的查询字符串是否匹配列表中多个字符串中的任何一个。

当查询字符串匹配列表中多个字符串之一时(步骤S315中的“是”),在步骤S320中,白名单滤波器可以将上行链路数据包中的事务ID和对应列表中的查询字符串的优先级通知给DNS监视器,并且将上行链路数据包发送给CPE的网络调度器,DNS监视器将上行链路数据包中的事务ID和列表中查询字符串对应的优先级记录到第一记录表。具体地,查询字符串为客户装置关注的字符串。

在步骤S325中,CPE的网络调度器经由广域网(WAN)端口根据第一优先级,将上行链路数据包发送到网络服务器。

返回到步骤S315,当查询字符串与列表中的多个字符串中的任何一个都不匹配时(步骤S315中的“否”),在步骤S325中,白名单滤波器将上行链路数据包发送到CPE的网络调度器,并且网络调度器经由WAN端口根据第一优先级将上行链路数据包发送给网络服务器。

返回步骤S310,当DNS监视器确定上行链路数据包不是DNS查询数据包时(步骤S310中的“否”),在步骤S330中,DNS监视器将上行链路数据包转发给Qos管理器,并且Qos管理器将上行链路数据包中网络服务器的IP地址与包含多个IP地址的第二记录表进行比较,判断上行链路数据包中的IP地址是否与第二记录表中多个IP地址中的任一个相匹配。

当上行链路数据包中的IP地址与第二记录表中多个IP地址之一匹配时(步骤S330中的“是”),在步骤S335中,Qos管理器将上行链路数据包发送至网络调度器,并且网络调度器依据第二优先级,将上行链路数据包发送至网络服务器,其中,第二优先级对应于第二记录表中的IP地址,其中,第二优先级高于第一优先级。

返回步骤S330,当上行链路数据包中的IP地址与第二记录表中多个IP地址中的任何一个不匹配时(步骤S330中的“否”),在步骤S325中,Qos管理器将上行链路数据包发送给网络调度器,并且网络调度器经由WAN端口根据第一优先级将上行链路数据包发送给网络服务器。

图4A~4B是根据本发明实施例描述的设置下行方向的数据包传输优先级的方法的流程图400。在本实施例中,将该方法应用于图2中的CPE。

在步骤S405中,CPE的Qos管理器经由广域网(WAN)端口和CPE的网络调度器从网络服务器接收下行链路数据包。然后,在步骤S410中,Qos管理器确定下行链路数据包是否为域名系统(DNS)响应数据包。

当Qos管理器确定下行链路数据包是DNS响应数据包时(步骤S410中的“是”),在步骤S415中,Qos管理器将下行链路数据包发送到CPE的DNS监视器,并且DNS监视器将下行链路数据包中事务ID与包含多个事务ID的第一记录表进行比较,判断下行链路数据包中的事务ID是否与第一记录表中多个事务ID中的任一个匹配。

当事务ID与第一记录表中的多个事务ID中的一个相匹配时(步骤S415中的“是”),在步骤S420中,DNS监视器将下行链路数据包中网络服务器的IP地址以及第一个记录表中事务ID对应的优先级记录到第二记录表中。具体地,网络服务器的IP地址有特定优先级需求。

在步骤S425中,DNS监视器经由LAN端口根据第一优先级将下行链路数据包发送到客户装置。

返回到步骤S415,当事务ID与第一记录表中多个事务ID中的任何一个不匹配时(步骤S415中的“否”),在步骤S425中,DNS监视器经由LAN端口根据第一优先级将下行链路数据包发送至客户装置。

返回步骤S410,当Qos管理器确定下行链路数据包不是DNS响应数据包时(步骤S410中的“否”),在步骤S430中,Qos管理器比较下行链路数据包中网络服务器的IP地址与包含多个IP地址的第二记录表,并且判断下行链路数据包中的IP地址是否与第二记录表中多个IP地址中的任一个相匹配。

当下行链路数据包中的IP地址与第二记录表中多个IP地址之一匹配时(步骤S430中的“是”),在步骤S435中,Qos管理器将下行链路数据包发送至CPE的网络调度器,并且网络调度器根据第二优先级将下行链路数据包发送给客户装置,其中,该第二优先级对应于第二记录表中的IP地址,其中,该第二优先级高于该第一优先级。

返回到步骤S430,当下行链路数据包中的IP地址与第二记录表中的多个IP地址中的任何一个不匹配时(步骤S430中的“否”),在步骤S440中,网络调度器经由LAN端口根据第一优先级将下行链路数据包发送到客户装置。

图5是根据本发明实施例描述的数据包传输优先级设置方法的具体示例。该示例的典型应用场景是,当例如手机等移动装置共享网络或CPE工作时,针对特定类型的应用,执行不同的网络优先级处理,以提升用户体验。在图5中,存在连接CPE 500的三个客户装置560A、560B和560C,并且客户装置560A、560B和560C的用户使用不同的应用程序565A、565B和565C,因此对数据包传输需求不同。使用在线视频应用程序565B的客户装置560B和使用下载应用程序565C的客户装置560C需要大量带宽,但对延迟需求不敏感。然而,客户装置560A使用的游戏应用程序565A对网络延迟敏感,但对带宽需求非常低。

为了更好地服务于上述场景,CPE 500内置的白名单5152记录了游戏应用的常用字符串。假设客户装置560B和客户装置560C已经执行了它们各自的应用程序。当客户装置560A执行游戏应用程序565A时,游戏应用程序565A可先输出DNS查询数据包以查询游戏的IP地址,其中,DNS查询数据包的事务ID为0xd239。DNS查询数据包通过LAN端口505到达DNS监视器510,并且DNS监视器510判断DNS查询数据包是有效的DNS查询数据包,并且将DNS查询数据包转发给白名单滤波器515进行处理。白名单滤波器515将DNS查询数据包中的查询字符串与白名单5152进行比较。当白名单滤波器515确定DNS查询数据包中的查询字符串与白名单5152中的多个字符串之一相匹配时,白名单滤波器515通知DNS监视器510将交易ID、白名单5152中查询字符串对应的优先级、接收时间和有效期记录到第一记录表5102中。例如,对应序列号1的信息是DNS监视器新记录的信息。然后,白名单滤波器515将DNS查询数据包转发给网络调度器520,并且网络调度器520根据正常优先级将DNS查询数据包发送给游戏服务器。

网络服务器570发送的DNS响应数据包包含游戏服务器的IP地址。当接收到DNS响应数据包时,Qos管理器530将DNS响应数据包发送给DNS监视器510进行处理。DNS监视器510发现DNS响应数据包的事务ID为0xd239,其表明DNS响应数据包携带的IP地址是对应游戏应用565A的游戏服务器的IP地址。然后,DNS监视器510可以通知Qos管理器530将游戏服务器的IP地址和对应序号1的信息记录到第二记录表5302中。DNS监视器510按照正常的优先级将DNS响应数据包转发到LAN端口505。

此后,当下载应用程序565C或在线视频应用程序565B传输的数据包从LAN端口505传输到网络服务器570时,由于第二记录表5302中没有记录数据包中的IP地址,所以根据正常优先级535将数据包传输到WAN端口525。当从WAN端口525向下载应用程序565C或在线视频应用程序565B发送数据包时,由于数据包中的IP地址没有记录在第二记录表5302中,所以根据正常优先级540将数据包发送至LAN端口505。

当游戏应用程序565A发送的数据包从LAN端口505发送到网络服务器570时,由于在第二记录表5302中记录了数据包中的IP地址,因此根据高优先级545将数据包发送到WAN端口525。当数据包从WAN端口525传输到游戏应用程序565A时,由于在第二记录表5302中记录了数据包中的IP地址,根据高优先级550将数据包传输到LAN端口505。这样,有效降低了游戏应用程序565A的网络延迟,提高了游戏应用程序565A的用户体验。

如上所述,本发明的设置数据包传输优先级的方法和装置可以实现在CPE上灵活设置应用程序的网络优先级的目的,为下游客户端提供更好的网络体验。

应当注意的是,图2中的DNS监视器210、白名单滤波器215、网络调度器220和Qos管理器230,以及图5中的DNS监视器510、白名单滤波器515、网络调度器520和Qos管理器530可以以硬件、软件、固件或其任何组合来实现。例如,可以将DNS监视器210、白名单滤波器215、网络调度器220和Qos管理器230实施为在一个或多个处理器中配置执行的计算机程序代码。或者,可以将DNS监视器210、白名单滤波器215、网络调度器220和Qos管理器230实施为硬件逻辑/电路。又例如,可以将DNS监视器510、白名单滤波器515、网络调度器520和Qos管理器530实施为在一个或多个处理器中配置执行的计算机程序代码。或者,可以将DNS监视器510、白名单滤波器515、网络调度器520和Qos管理器530实施为硬件逻辑/电路。

可以使用众所周知的服务器/计算机来实施,例如图6所示的计算设备600,本文描述的实施例,包括系统、方法/进程、和/或装置。例如,可以使用一个或多个计算设备600来实施CPE 120和CPE 500。为了说明的目的,计算设备600描述如下。

参考图6,示出了实施本发明实施例的示例性操作环境,并且通常称为计算设备600。计算设备600仅仅是合适计算环境的示例,并且不旨在限制本发明使用范围或功能。计算设备600也不应被解释为具有与所示组件的任何一个或组合相关的任何依赖性或要求。

本发明可以通过计算机代码或机器可用指令实现,包括计算机可执行指令,例如程序模块,由计算机或其他机器执行,例如个人数字助理(PDA)或其他手持设备。通常,程序模块可以包括例程、程序、对象、组件、数据结构等,是指执行特定任务或实现特定抽象数据类型的代码。本发明可以在各种系统配置中实现,包括手持设备、消费电子产品、通用计算机、更专业的计算设备等。本发明还可以在分布式计算环境中实现,其中,在分布式计算环境中,任务由通过通信网络链接的处理设备远程执行。

参考图6,计算设备600可以包括直接或间接耦接到以下设备的总线610:一个或多个存储器612、一个或多个处理器614、一个或多个显示组件616、一个或多个输入/输出(I/O)端口618、一个或多个输入/输出组件620和电源622。总线610可表示一种或多种总线(例如,地址总线、数据总线或其任意组合)。尽管为了清楚起见,图6的各个块用线条表示,实际上各个部件的界限并不明确。例如,诸如显示设备的显示组件可以被认为是I/O组件,并且处理器可以包括存储器。

计算设备600通常包括各种计算机可读介质。计算机可读介质可以是计算设备600可以访问的任何可用介质,并且包括易失性和非易失性介质、可移动和不可移动介质。作为示例而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质可以包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质可能包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存或其他存储技术、光盘仅读取存储器(CD-ROM)、数字多功能磁盘(DVD)或其他光盘存储、磁带、磁盘存储或其他磁性存储设备,或任何其他可用于存储所需信息的并且可以由计算设备600访问的介质。计算机存储介质本身可以不包括信号。

通信介质通常包含计算机可读指令、数据结构、程序模块或调制数据信号(例如载波或其他传输机制)中的其他数据,并且包括任何信息传递介质。术语“调制数据信号”是指具有以编码信号中的信息的方式设置或改变的一个或多个特性的信号。例如但不限于,通信媒体包括有线媒体,例如有线网络或直接有线连接,以及无线媒体,例如声学、RF、红外线和其他无线媒体或其任何组合。

存储器612可以包括易失性和/或非易失性存储器形式的计算机存储介质。存储器可以是可移除的、不可移除的或其组合。示例性硬件设备包括固态存储器、硬盘驱动器、光盘驱动器等。计算设备600包括一个或多个处理器,其从诸如存储器612或I/O组件620的各种实体读取数据。显示组件616向用户或另一设备呈现数据指示。示例性的呈现组件包括显示设备、扬声器、打印组件、振动组件等。

I/O端口618允许计算设备600逻辑耦接到包括I/O组件620的其他设备,其中一些可以是嵌入式的。示例性组件包括麦克风、操纵杆、游戏手柄、卫星天线、扫描仪、打印机、无线设备等。I/O组件620可以提供自然用户界面(NUI),用于处理手势、语音或由用户生成的其他生理输入。例如,可以将输入传输到适当的网络元件以供进一步处理。NUI可以实现语音识别、触摸和触控笔识别、面部识别、生物统计识别、屏幕上和屏幕附近的手势识别、空中手势、头部和眼睛跟踪、与计算设备600上的显示器相关联的触摸识别,或其任何组合。计算设备600可以配备深度相机,例如立体相机系统、红外相机系统、RGB相机系统或其任意组合,以实现手势检测和识别。此外,计算设备600可以配备能够检测运动的加速度计或陀螺仪。加速度计或陀螺仪的输出可以提供给计算设备600的显示器,以执行沉浸式增强现实或虚拟现实。

此外,计算设备600中的处理器614可以执行存储器612中的程序代码,以执行上述动作和步骤或本文的其他描述。

应当理解,任何揭示进程中的任何特定顺序或步骤层次结构都是示例方法的示例。基于设计偏好,应当理解,进程中步骤的特定顺序或层级可以重新排列,同时保持在本发明的范围内。随附的方法权利要求以示例顺序呈现各个步骤的元素,并不意味着限于呈现的特定顺序或层次结构。

在权利要求中使用诸如“第一”、“第二”、“第三”等顺序术语来修改权利要求要素本身并不意味着一个权利要求要素相对于另一个权利要求要素的任何优先权、优先权或次序或执行方法动作的时间顺序,但仅用作标签以区分具有特定名称的一个权利要求元素与具有相同名称(但使用序数术语)的另一个元素,从而区分权利要求元素。

尽管出于说明目的结合某些具体实施例描述了本发明,但本发明不限于此。因此,在不脱离如权利要求中所阐述的本发明范围的情况下,可以实践所描述的实施例的各种特征的各种修改、改编和组合。

相关技术
  • 数据包传输方法及装置
  • 一种视频数据包优先级设置方法和装置
  • 一种视频数据包优先级设置方法和装置
技术分类

06120116490370