CN1691632A - 基于优先级的消息发送队列重新排序 - Google Patents

基于优先级的消息发送队列重新排序 Download PDF

Info

Publication number
CN1691632A
CN1691632A CNA2005100717316A CN200510071731A CN1691632A CN 1691632 A CN1691632 A CN 1691632A CN A2005100717316 A CNA2005100717316 A CN A2005100717316A CN 200510071731 A CN200510071731 A CN 200510071731A CN 1691632 A CN1691632 A CN 1691632A
Authority
CN
China
Prior art keywords
request
data
priority
response
wireless
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
Application number
CNA2005100717316A
Other languages
English (en)
Other versions
CN1691632B (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.)
BlackBerry Ltd
Original Assignee
Research in Motion Ltd
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 Research in Motion Ltd filed Critical Research in Motion Ltd
Publication of CN1691632A publication Critical patent/CN1691632A/zh
Application granted granted Critical
Publication of CN1691632B publication Critical patent/CN1691632B/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
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2425Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
    • H04L47/2433Allocation of priorities to traffic types
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2458Modification of priorities while in transit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2475Traffic characterised by specific attributes, e.g. priority or QoS for supporting traffic characterised by the type of applications
    • 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
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)
  • Telephonic Communication Services (AREA)

Abstract

用于通信串行化数据的方法和系统提供了一种用于响应优先级、对数据进行排序的机制。在实施例中,发送数据的服务器使用优先级对在消息发送队列中数据进行排序,用于发送数据到请求设备。该服务器可以包括网关和第二设备(与网关通信的无线设备)。该无线设备可以发送与数据请求有关的优先级指示以便于排序。

Description

基于优先级的消息发送队列重新排序
技术领域
本发明涉及一种用于根据要发送消息的优先级来重新排序消息发送队列的方法和系统。
背景技术
在无线通信网络中提供语音通信、数据通信或这两者的诸如无线通信设备等移动设备在现代社会日益普遍。这样的设备也可以提供附加的个人数字助理(PDA)功能,例如日历、警报、联系表、计算器等等。这些设备的一个共同特征是万维网浏览器装置,由此,用户可以浏览那些诸如通过内联网或公众因特网可用的网页。
在浏览过程期间,浏览器获得网页数据以在该设备的显示器上再现该网页。该浏览器为了从网页服务器请求数据,使用诸如超文本传输协议(HTTP)等协议来定制(formulate)对数据的请求。在无线设备中,典型地,通过中间服务器,在该无线设备和该网页服务器之间对这些请求和响应进行通信,该中间服务器提供网关服务,用于桥接在无线网络和网页服务器的网络之间的通信。
网关接收来自无线设备的请求,并把它们转发给针对服务的网络服务器。由网关接收来自网络服务器的响应,并进行排队以便将其通信到无线设备。
为了获得单个网页的数据,浏览器经常需要定制超过一个的请求。有时,需要在对先前请求的响应完全地被该无线设备处理之前,接收并处理对第二请求的响应。当在对先前请求的响应的通信可能未完成或正在进行中的同时,对服务器进行这样的第二HTTP请求时,网关直到对第一请求的整个响应完成为止,才发送在其发送队列中所具有的任何数据。结果,该浏览器在接收对第二请求的响应时受到推迟,直到其接收到对先前请求的整个响应为止。
作为一个例子,无线设备的浏览器在加载网页的同时,作为响应,可能会遇到JavaScriptTM源或级联样式表(css)参考(reference)。这样的参考需要即时的动作。需要该浏览器通过第二请求提取用于参考的数据。还需要其暂停对其可能具有的任意响应数据的页面的任何进一步再现,直到完成了新的参考为止。然而,当网关接收到对第二请求的响应时,该网关的发送队列可以包含对第一请求的响应的剩余部分。发送队列按照先进先出(FIFO)规则操作。这样,网关将对第二请求的响应放置在其队列的末尾,以便在其完成对第一响应的发送之后,对其进行发送。尽管在队列串行化响应数据中的这样一种FIFO操作方式经常是所希望的,但是显然,会存在可能会需要对通信进行不同排序的情况。当需要即时动作的第二响应本身包含需要即时动作的参考时,经历的延迟可能进一步成为复合的。结果,可能影响到令用户满意的经历。当在等待附加数据的同时显示不完整的屏幕时,网页装载时间表现为受到延长。
WO03085934A1公开了一种响应由于HTML编码对象中的附加对象的存在而发起的进一步的客户端设备请求,从服务器将附加超文本链接标示语言(HTML)编码对象传送到客户端设备的方法,所述HTML编码对象由服务器响应第一请求提供给客户端设备。该服务器确定在来自客户的进一步请求中的附加HTML编码对象的优先级。该服务器然后依据其各个优先级,延迟或转发各附加对象。在WO0308934A1中所公开的方法在传送控制协议(TCP)级上进行操作,由此,并未排序,即对已经设置在服务器的消息发送队列中的数据重新排序。
因此,需要对一个或多个这样的缺陷的解决方案。
发明内容
因此,需要一种方法和系统,通过其,第一设备(例如无线手持设备或无线站)可以发送请求到第二设备(例如无线网关服务器或其它设备),以使响应数据比仍然正在从第二设备传送到第一设备的先前请求的响应数据具有更高优先级。此外,需要一种第二设备(例如服务器)来相应地处理已设置优先级化的请求,将更高优先级响应数据插入到第二设备正在传输给第一设备的内容流中,预占(pre-empt)已经排队的任意先前较低优先级的响应数据。
因此,在一个主要方案中,本发明提出了一种在服务器中对消息发送队列排序的方法,该服务器响应多个来自无线通信设备的请求,发送相应的响应数据到无线通信设备,该方法包括以下步骤:将包含对第一请求响应的数据设置在发送队列中,并将所述发送队列中的该数据串行传送到无线设备;接收包含对第二请求响应的数据,所述第二请求被确定为具有比第一请求的优先级高的相应相对优先级;并且将在发送队列中包括对第二请求的响应的一些数据设置在也在此队列中包括对第一请求的响应的至少一些数据之前,并且将所述发送队列中的数据串行地传送到无线设备。
优选地,为适应多个优先级的需要,需要一个多级优先级机制,通过其,在一个响应队列中,较高优先级响应预占任何较低优先级响应。
按照本发明的实施例,一个发送请求的HTTP报头适合于包括一个请求的相对优先级(例如x-rim-priority-request“优先级号”)的优先级指示。该优先级指示指导网关对针对所述请求的响应数据进行排序,从而针对请求的响应数据在可能在网关的发送队列中的较低优先级响应数据之前到达请求设备。
包括一个或多个方法方案和计算机程序产品的这些和其他方案对本领域的技术人员而言是显而易见的。
附图说明
为了更好地理解本发明,通过附图中的示例来说明本发明的具体
实施方式,其中:
图1是按照本发明的实施例的系统结构的示意图;
图2是按照本发明的实施例的图1的优选无线通信设备的详细框图;
图3A和图3B是按照本发明的实施例的移动设备的操作流程图,说明了数据请求优先级的方法;以及
图4是按照本发明的实施例的无线网关服务器的示例图。
具体实施方式
图1是按照本发明实施例的系统100的结构的示意图。系统100包括无线通信设备102,与由基站表示的无线网络104进行无线通信连接。无线网络104可以遵循能够支持包括蜂窝、广域网、GSM、GPRS、CDMA、iDENTM、MobitexTM等在内的数据通信的任意无线网络技术和协议。
无线通信设备102适合于网络浏览,并且能够发送对网页数据的HTTP请求,而且按照由网络104所实现的一种或多种协议,通过无线网络104来接收包括响应数据的针对其的响应。此外,无线网络104与提供数据通信服务给无线设备102的无线网关服务器108进行通信连接。在本实施例中,无线网关服务器108配置在本领域内公知的防火墙106之后。尽管没有示出,但是中间的无线网关服务器108和无线网络104可以是公用中继网或公用网络,例如因特网。无线网关服务器108可以包括但不局限于一个BlackBerryTM企业服务器或无线接入协议(WAP)网关。
通过无线网关服务器108,无线设备102可以通过诸如因特网110或内联网112等网络与诸如网络服务器(web server)114和116等内容服务器进行通信连接。
在本发明的示意性实施例中,无线设备102通过防火墙106,向无线网关服务器108发送网络服务器114或116对服务的HTTP请求(即,GET)。该无线传输网关被配置为提供对内联网116和公众因特网114的访问(即,HTTP连接),优选为安全的。该无线网关服务器108执行必要的地址和协议转换,以便在无线和IP网络之间对数据进行路由。可选地且优选地,对于诸如设备102等手持无线设备,无线网关可以转换并处理在诸如网络服务器114、116等内容服务器和无线设备102上驻留的应用程序之间所传递的数据。网关可以执行客户端过滤和其它数据操作,以高效且适当的格式将内容传递到手机。
无线网关服务器108在适当网络上,将通信从无线设备102(例如GET)路由到适当网络服务器。一旦将包括响应数据(诸如网页的一部分,例如,部分超文本链接标示语言(HTML)文件)的响应返回到网关108,则该网关针对无线网络104的适当无线协议,准备响应数据。典型地,该网关108按照无线网络协议的分组形式,将响应数据设置在发送队列中,以便通过防火墙和网络104,将其通信到无线设备102。
按照本发明的实施例,无线设备102适合于将用于指示由网关进行的优先级处理的优先级指示包括在HTTP请求中,至少针对一些请求。此外,网关适合于按照网关接收到的请求的优先级,对响应数据的返回进行优先级化。
图2是详细示出了包括本申请的设备和方法的优选实施例的移动电子设备200的无线通信设备104的实施例的框图。优选地,移动电子设备200是至少具有语音和数据通信能力的双向无线电子通信设备。优选地,移动电子设备200具有在因特网上与其它计算机系统通信的能力。依靠所提供的特定功能,该无线设备可能涉及数据消息设备、双向寻呼机、无线电子邮件设备、拥有数据消息传送能力的蜂窝电话、无线因特网设备或数据通信设备等。
在移动电子设备200能够进行双向通信的情况下,所述设备200包括通信天线子系统211(包括接收机212和发送机214)、以及相关组件,例如,优选地,一个或多个嵌入式或内部天线元件216和218、本地振荡(LOs)213和诸如数字信号处理器(DSP)220等处理模块。如通信领域的技术人员显而易见的,通信子系统211的具体设计取决于设备200想要在其上运行的无线通信网络的协议。
优选地,移动电子设备200包括微处理器238,用于控制设备的整个操作。通信功能,包括至少数据和优选的话音通信,通过通信子系统211得以进行。微处理器238也与诸如显示器222、闪存224、随机存储器(RAM)226、辅助输入/输出(I/O)子系统228、串行接口230、键盘232、扬声器234、麦克风236、短距离通信子系统240和任何其它通常如242指定的任意其他设备子系统等另外的设备子系统进行交互。
闪存224可以提供一个或多个应用程序的指令和数据的本地存储,用于适配和配置微处理器以提供诸如PDA功能、网络浏览器、游戏等各种特征。可以加载到移动站202上的优选应用程序可以是具有组织和管理与用户有关的数据项目能力的个人信息管理器(PIM)应用程序,例如但不局限于:即时消息(IM)、电子邮件、日历事件、语音邮件、约会和任务项目。因此,本实施例的闪存224存储了程序250(例如网页浏览器,PIM)、设备状态信息252、地址簿254、其它PIM数据256、和其它数据和/或指令258。
图3A和3B是按照本发明的实施例的移动设备(例如设备102)的操作流程图,说明了将优先级和数据请求包括在一起的方法。操作300和310表示用于加载网页的浏览器应用程序的实施例的典型步骤。本领域普通技术人员将会意识到,可以按照类似的方式来适配其他应用程序请求数据。
在加载页面开始时,启动操作300。在步骤302,设置初始优先级。该级别可以与数据请求一起发送,例如作为HTTP报头的一部分,正如本领域技术人员能够理解的。按照本发明的实施例,将优先级包含在对于其响应需要网关进行优先级处理的请求中,但是否则,则从其他请求中忽略该优先级。当优先级被忽略时,由网关对相应的响应给予一般的处理(即,相应的低优先级处理),并且将其设置在FIFO发送队列的尾端而不是首端。
在步骤304,将对网页数据的第一请求发布到网关以请求响应,然后在步骤306,处理对请求的响应的过程与当前的优先级一起开始。然后,操作300在308结束。
操作310表示处理对请求的响应的方法,所述方法可以按照各种已知的技术来实施,例如,面向对象编程和用于对处理器进行编程以处理响应数据的可重新编码技术。在步骤312,处理开始以便对响应数据进行操作,例如,在设备的显示器上再现该响应。本领域的普通技术人员可以理解,典型地,接收该响应数据,作为一个或多个分组的数据流,并且典型地,对该响应部分地进行串行处理。因此,一旦接收到该数据,则对其进行处理,并确定(步骤312)整个响应的处理是否完成。如果没有完成,则通过“否”分支到步骤314,针对需要来自诸如网络服务器等内容源的数据的进一步请求的参考,对该响应进行评估。如果未找到该参考(reference),则可以对部分响应进行处理,例如,在循环到步骤312之前,在设备的显示器上再现部分数据(步骤315)。
在与处理HTML有关的本实施例中,可能会遇到各种类型的参考,这需要或可以借助于对由该参考所识别的事物的即时请求。如前面所述,css和JavaScriptTM都是这种参考的示例。然而,本领域普通技术人员可以理解,可以包括定义了页面内的其他嵌入媒体的参考。当确定是否再现由HTML参考所识别的事物时;以及当该确定改变了处理HTML的其余部分要采用的路径时,这里所公开的实施例是有用的。例如,如果遇到HTML页面内的对象标记,则需要确定该设备是否可以再现该项目。在进行该确定之前,可能需要提取该数据。
对象标记可以参考多种媒体,诸如Shockwave-flash、可缩放矢量图形(SVG)、图像和其它形式的媒体。现在,典型地,再现代理为该对象预先分配显示空间,并再现该页面的附加部分,如果不能够处理所提取的对象,则返回来调整再现的内容。然而,再现代理也可以提取对象并等待其,然后一旦接收到响应,则继续处理。
如果在步骤314找到了参考,则进一步确认是否要立即采取对该参考的行动(步骤316)。如果要立即行动,则中止对突出请求的响应的处理(步骤322)。在步骤324,Get请求以增加了一级的优先级发送。处理该响应的进程开始,并且当前级别加1被传递以启动该进程。然后,当前进程(例如操作310的当前示例)等待针对较高优先级参考的响应数据的处理(步骤326)。一旦由步骤326启动的其它进程响应示例(例如操作310的新示例)完成,则当前进程恢复操作,启动对先前响应的处理(步骤328),如果有的话,循环到步骤312,用于进一步确认当前响应的更多响应数据是否需要处理。
如果在步骤316,确认当前响应的更多参考不需要立即处理,则通过“否”分支到步骤318,发送对新参考所识别的数据的请求,而没有优先级和启动来处理新参考的响应的进程。然后,在步骤312,继续当前响应的处理。
如果在步骤312,没有更多的响应数据需要处理,则操作310在步骤330结束。
参考以下针对MainDocument.htm定义的示例网页的伪代码块来考虑操作300和310:
MainDocument.htm
----------------------
<html>
这是文本
<script                               language=″JavaScript″src-″javascripTest.js″></script>
脚本之后的文本
</html>
操作300开始以加载页面MainDocument.htm。可以设置初始优先级(例如0),并且在步骤304,针对MainDocument.htm,将GET发布到作为该页面的主机的网络服务器。在步骤306,启动用于处理对请求的响应进程(即,操作310)。提供当前优先级以启动这些操作的优先级。
响应包含MainDocument.htm的接收到的数据分组,操作310处理该数据。在步骤314,确定参考JavaScriptTest.js,并且在步骤316,将其评估为对立即动作的参考。中止响应数据的处理,并且发送针对该参考的GET(步骤322到324)。该GET包括在请求的报头部分中以1(诸如1)递增的初始优先级。该优先级可以由诸如“x-rim-request-priority”等参考识别。在步骤326处,当前的处理等待,直到操作310的另一示例完成对JavaScriptTest.js参考的响应的处理为止。提供初始优先级加1以启动其它进程。
下面的工作流程交换表示针对上述网页、在移动设备102和网关108之间的交换:
--->GET MainDocument.htm
<---MainDocument.htm的第一分组
--->Get JavaScriptTest.js(其中,x-rim-request-priority=1)
<---JavaScriptTest.js的第一分组
<---JavaScriptTest.js的最后一个分组
<---MainDocument.htm的最后一个分组
参考下面的针对MainDocument.htm,Script1.js和Script2.js定义的示例网页的的伪代码块来参考操作300和310:
Script1.js
--------------------
document.writeln(″<scriptsrc=\″script2.js\″language=\″JavaScript\″>″);
--------------------
Script2.js
--------------------
document.writeln(″Output of script2″);
 --------------------
MainDocument.htm
<html>
<script                     src=″script1.js″language=″JavaScript″></script>
Scripts之后
</html>
--------------------
在再现MainDocument.htm期间,设备102必须首先提取″Script1.js″(优先级1)并执行其;但是在执行″Script1.js″时。其还必须提取″Script2.js″(优先级1)。因此,针对Script1.js的操作310对拥有优先级2的Script2.js发布GET,并且在该优先级处,启动操作310的另一示例以处理该响应。下面的工作流程交换表示针对上述第二网页的、移动设备102和网关108之间的消息数据流:
--->GET MainDocument.htm
<---MainDocument.htm的第一分组
--->Get Script1.js(其中,x-rim-request-priority=1)
<---Script1.js的第一分组
--->Get Script2.js(其中,x-rim-request-priority=2)
<---Script2.js的第一分组
<---Script2.js的最后一个分组
<---Script1.js的最后一个分组
<---MainDocument.htm的最后一个分组
图4示出了按照本发明的一个实施例的无线传输网关服务器108。网关服务器108包括消息接收队列404和发送队列410,用于与多个诸如设备102等无线设备进行通信。典型地,存在接收机和发送队列示例,用于将每一个连接到与网关108正在通信的无线设备。典型地,各个无线设备通过单个连接与网关进行通信。因此,所有通信都按照现有技术,以FIFO的方式串行化。
网关108还包括队列408和414,用于与其它连接到网关108的其他设备通信,所述其他设备诸如为网络服务器114和116。网关108还包括Get处理器406,用于来自无线设备的GET请求,针对优先级对报头进行评估;以及Get响应处理器412,用于处理响应,响应接收到的各个优先级,对各个队列410中的数据进行重新排序。
尽管没有示出,但是本领域技术人员可以理解,还存在:无线网关服务器108的组件,用于保持无线设备和网关之间的连接;以及转换组件,用于按照各种网络协议进行通信,例如,将以无线协议接收到的数据传递到处于有线协议的服务器中,反之亦然。另外,没有示出的组件还包括:用于路由在针对其网关提供其服务的特定设备之间的通信的组件。
在操作时,网关108接收针对数据的GET请求,并且Get处理器406针对优先级,评估报头部分,通过发送给适当网络服务器,来传递该请求。由Get响应处理器412根据接收到的该请求优先级,对针对该请求接收到的响应进行处理。将对没有优先级的请求的响应的数据分组设置在相应FIFO发送队列的尾端,以便设备发起该请求,从而按照FIFO规则来发送队列中存在的数据。将针对拥有较高优先级的请求的数据分组设置在在相应队列的首端,以便设备发起该请求,较高优先级数据设置在较低优先级数据的前面,从而按照“后进先出”LIFO规则来发送队列中的新数据。
尽管这里参考按照诸如HTTP的请求/响应协议来导航因特网的网络浏览器应用,但是,例如,本发明也可以用于具有网页类接口或除了HTTP之外的其他通信协议的其它应用中。
可以针对各种通信协议来进行对队列进行重新排序的方式。可以添加在报头中包括优先级指示的一个可选方案,或者在流的消息体部分中包括针对优先级的字节,例如在分组中。
当发送队列中存在大量数据并且在队列和接收设备间存在较慢的带宽通信时,按照本发明特征的优点将得到更好地实现。需要克服的典型的搜索FIFO发送队列的缺点在于:该发送队列太大,从而将花费大量时间来清空。因此,在更快的通信网络中,发送队列不可以具有太多延时。
本领域普通技术人员能够意识到,对于每个请求,优先级不一定必须增加1。如果遇到有2个项目并且其接收次序并不重要,则可以发送具有相同优先级的两个相应请求,然后,将网关接收到的第一响应首先设置在队列中。
考虑到要确保来自设备的请求不会超时。尽管没有示出,但是如果在预定的时间内没有收到对请求的响应,则通常是连接已超时。如果请求被搁置太久而没有分组被发送(例如在设备上经过两分钟的等待时间之后),则该连接将超时。因此,需要周期性地预占队列排序,并发送来自己经“过时”的队列(即,以较高优先级响应延迟的)中的响应的信息。
本申请的上述实施例仅是说明性的。本领域内技术人员可以对特定实施例进行改变、修改和更改,而不超出本发明的范围。在所附权利要求中所述的本发明应该覆盖和涵盖技术中的所有适当变化。

Claims (32)

1、一种响应来自无线通信设备的多个请求,在用于将各个响应数据发送到无线通信设备(102)的服务器(108)中,对消息发送队列(410)进行排序的方法,所述方法包括步骤:
将包含对第一请求的响应的数据设置在发送队列(410)中,并将所述发送队列中的所述数据串行地传送到无线设备(102);
接收包含对第二请求的响应的数据,所述第二请求被确定为具有比第一请求的优先级高的相应相对优先级;以及
将在发送队列(410)中包括对第二请求的响应的一些数据设置在也在此队列中包括对第一请求的响应的至少一些数据之前,并且将所述发送队列中的数据串行地传送到无线设备(102)。
2、如权利要求1所述的方法,其特征在于所述方法包括以下步骤:
接收包括对第三请求的响应的数据,所述第三请求被确定为具有比第二请求的优先级高的相应相对优先级;以及
将在发送队列(410)中包括第三响应的一些数据设置在也在此队列中包括对第二请求的响应的至少一些数据之前,并且将所述队列中的数据串行地传送到无线设备(102)。
3、如权利要求1或2所述的方法,其特征在于所述方法包括:为了避免服务器(108)和无线设备(102)之间的连接超时,周期性地将包括第一响应的一些数据设置在所述队列中的任意数据之前,并将所述队列中的数据串行地传送到无线设备(102)。
4、如权利要求1到3中任何一个所述的方法,其特征在于确定相应相对优先级包括:评估请求的优先级指示,所述优先级指示定义了针对所述请求的响应数据的相对优先级。
5、如权利要求1到4中任何一个所述的方法,其特征在于还包括:接收所述多个请求,其中至少一些所述请求包括相应优先级指示,用于相对于其他响应数据对其相应的响应数据的发送进行排序。
6、如权利要求1到5中任何一个所述的方法,其特征在于还包括接收相应的响应数据,以便响应相应的请求,通过所述消息队列(410)进行发送。
7、如权利要求1到6中任何一个所述的方法,其特征在于消息队列包括先进先出(FIFO)队列,并且排序包括:响应于其相应相对优先级,将相应的响应数据设置在消息队列的末尾之一处。
8、如权利要求1到7中任何一个所述的方法,其特征在于服务器(108)从无线设备(102)接收针对至少一个请求的优先级指示。
9、如权利要求8所述的方法,其特征在于服务器(108)针对必定需要即时动作的任意请求,从无线设备(102)接收优先级指示。
10、如权利要求9所述的方法,其特征在于由服务器(108)接收的针对每一个需要即时动作的后续请求的优先级指示具有包括最近一个这样的请求的递增值的值。
11、如权利要求1到10中任何一个所述的方法,其特征在于服务器(108)是无线网关服务器,并且所述方法包括:按照无线通信协议,格式化响应数据以便进行传送。
12、一种处理相应的响应数据的方法,其中响应来自无线设备的针对数据的多个请求,在无线通信设备(102)中从服务器(108)接收所述相应的响应数据,所述方法包括步骤:
处理接收到的、包含对第一请求的响应的数据;
接收包含对第二请求的响应的数据,所述第二请求被确定为具有比第一请求的优先级高的相应相对优先级;
处理对第二请求的响应数据;以及
一旦完成了对第二请求的响应数据的处理,则完成对第一请求的响应数据的处理。
13、如权利要求12所述的方法,其特征在于所述方法包括步骤:
接收包括对第三请求的响应的数据,所述第三请求被确定为具有比第二请求的优先级高的相应相对优先级;
处理对第三请求的响应数据;以及
一旦完成对第三请求的响应数据的处理,则完成对第二请求的响应数据的处理。
14、如权利要求12或13所述的方法,其特征在于所述方法包括:为了避免服务器(108)和无线设备(102)之间的连接超时,周期性地接收在包括第二响应的数据之前的、包括第一响应的一些数据,并且处理所述周期性接收到的数据。
15、如权利要求12或14中任何一个所述的方法,其特征在于无线设备(102)将优先级指示分配给至少一个请求。
16、如权利要求15所述的方法,其特征在于无线设备(102)将优先级指示分配给必定需要即时动作的任意请求。
17、如权利要求16所述的方法,其特征在于无线设备(102)向必定需要即时动作的每一个后续请求分配包括最近一个这样的请求的递增值的优先级指示。
18、如权利要求15到17中任何一个所述的方法,其特征在于无线设备(102)在请求的报头部分中发送优先级指示。
19、如权利要求12到18中任何一个所述的方法,其特征在于确定相应相对优先级包括:评估第一响应数据的第一部分,以确定针对具有比第一相应的响应数据的剩余部分更高优先级的第二相应的响应数据的第二请求,并响应所述更高优先级,定义相应相对优先级。
20、如权利要求12到19中任何一个所述的方法,其特征在于还包括:中止对所述第一相应的响应数据的处理,直到对第二相应的响应数据的处理完成为止。
21、一种用于与通过无线网络(104)与设备相连的无线网关(108)进行通信的无线通信设备(102),所述无线通信设备和无线网关按照请求/响应协议进行串行通信,所述无线通信设备(102)包括:
通信系统(211),用于通过无线网络(104)进行传送和接收;
连接到通信系统(211)的处理器(238),用于发送请求并处理相应的响应数据;以及
连接到处理器的存储器(224),用于存储用于配置处理器的指令,以便发送与特定响应数据的请求相关联的优先级指示,从而表示特定响应数据相对于其他响应数据的优先级;
其中所述处理器(238)配置为处理接收到的包含对第一请求的响应的数据;
所述通信系统(211)配置为接收包含对第二请求的响应的数据,所述第二请求被确定为具有比第一请求的优先级高的相应相对优先级;以及
所述处理器还配置为处理对第二请求的响应数据;并且一旦完成了对第二请求的响应数据处理,则完成对第一请求的响应数据的处理。
22、如权利要求21所述的无线通信设备,其特征在于处理器(238)配置为针对必定需要即时动作的任意请求,发送与针对特定响应数据的请求相关联的优先级指示。
23、如权利要求22所述的无线通信设备,其特征在于处理器(238)配置为递增针对必定需要即时动作的每一个后续请求的优先级指示的值。
24、如权利要求21到23中任何一个所述的无线通信设备,其特征在于所述存储器(224)包括用于配置处理器(238)的指令,以便在请求的报头部分中发送优先级指示。
25、如权利要求21到24中任何一个所述的无线通信设备,其特征在于所述存储器(224)包括用于配置处理器(238)的指令,用于确定特定响应数据相对于其他响应数据的优先级。
26、如权利要求25所述的无线通信设备,其特征在于所述配置处理器(238)以确定优先级的指令包括针对以下功能的指令:
计算第一响应数据的第一部分,以确定针对具有比第一相应的响应数据的剩余部分更高的优先级的第二相应的响应数据的第二请求;以及
响应于所述更高优先级,定义优先级指示。
27、一种与通过无线网络(104)连接到网关(108)的无线通信设备(102)进行通信的无线网关,所述无线通信设备和无线网关按照请求/响应协议进行串行通信,所述无线网关包括:
通信系统,用于通过无线网络(104)进行传送和接收;
连接到通信系统的处理器,用于处理接收到的请求并发送相应的响应数据;以及
连接到处理器的存储器,用于存储配置处理器的指令,所述指令用于:
将包含对第一请求的响应的数据设置在发送队列(410)中,并将所述发送队列中的所述数据串行地传送到无线设备(102);
接收包含对第二请求的响应的数据,所述第二请求被确定为具有比第一请求的优先级高的相应相对优先级;以及
将在发送队列(410)中包括对第二请求的响应的一些数据设置在也在此队列中包括对第一请求的响应的至少一些数据之前,并且将所述发送队列中的数据串行地传送到无线设备(102)。
28、如权利要求27所述的无线网关,其特征在于网关(108)连接到至少一个配置为提供响应数据的另外设备(114,116),并且所述网关适合于响应接收到的请求,从第二设备获取响应数据。
29、一种在通信系统(100)的无线网络(104)部分中、通过无线网关(108)与无线通信设备(102)通信的服务器(114,116),所述无线通信设备和无线网关按照请求/响应协议通过无线网络进行串行通信,其中所述服务器包括:
连接到通信系统(100)的处理器,用于处理来自无线通信设备(102)的多个请求,并通过网关(108)将相应的响应数据发送到所述设备,所述多个请求具有相应相对优先级;以及
连接到处理器的存储器,用于存储配置处理器以便对服务器消息发送队列(410)进行排序的指令,用于:
将包括对第一请求的响应的、来自服务器(114,116)的数据设置在发送队列(410)中,并且将所述发送队列中的数据串行地传送到无线设备(102);
接收包含对第二请求响应的、来自服务器(114,116)的数据,所述第二请求被确定为具有比第一请求的优先级高的相应相对优先级;并且
将在发送队列(410)中包括对第二请求的响应的一些数据设置在也在此队列中包括对第一请求的响应的至少一些数据之前,并且将所述发送队列中的数据串行地传送到无线设备(102)。
30、一种机器可读介质,包括在如权利要求12到20中的任何一个所述的无线设备(102)的处理器(238)中的可执行程序编码装置,用于实现如权利要求21到26中的任何一个所述的方法。
31、一种机器可读介质,包括在权利要求27或28中所述的无线网关的处理器中的可执行程序编码装置,用于实现如权利要求1到11中的任何一个所述的方法。
32、一种机器可读介质,包括在权利要求29中所述的服务器的处理器中的可执行程序编码装置,用于实现如权利要求1到11中的任何一个所述的方法。
CN2005100717316A 2004-04-08 2005-04-08 基于优先级的消息发送队列重新排序 Active CN1691632B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP04252119A EP1585282B1 (en) 2004-04-08 2004-04-08 Message send queue reordering based on priority
EP04252119.5 2004-04-08

Publications (2)

Publication Number Publication Date
CN1691632A true CN1691632A (zh) 2005-11-02
CN1691632B CN1691632B (zh) 2010-06-23

Family

ID=34896137

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005100717316A Active CN1691632B (zh) 2004-04-08 2005-04-08 基于优先级的消息发送队列重新排序

Country Status (11)

Country Link
EP (1) EP1585282B1 (zh)
CN (1) CN1691632B (zh)
AT (1) ATE334548T1 (zh)
CA (1) CA2503867C (zh)
CY (1) CY1105614T1 (zh)
DE (1) DE602004001666T2 (zh)
DK (1) DK1585282T3 (zh)
ES (1) ES2270292T3 (zh)
HK (1) HK1081356A1 (zh)
PT (1) PT1585282E (zh)
SG (1) SG116615A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102395212A (zh) * 2011-11-18 2012-03-28 百度在线网络技术(北京)有限公司 网关接入控制方法、系统及装置
WO2014005535A1 (zh) * 2012-07-04 2014-01-09 中兴通讯股份有限公司 物联网消息处理方法、装置及系统
CN103995674A (zh) * 2014-04-17 2014-08-20 华为技术有限公司 访问请求处理方法、装置和设备
CN104216770A (zh) * 2011-12-28 2014-12-17 北京奇虎科技有限公司 一种浏览器消息处理方法及装置
CN106656861A (zh) * 2016-12-15 2017-05-10 咪咕数字传媒有限公司 一种电子图书推送方法及装置
CN116347511A (zh) * 2023-05-29 2023-06-27 泉州维盾电气有限公司 一种数据通信的方法及相关设备

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8190561B1 (en) * 2006-12-06 2012-05-29 At&T Mobility Ii Llc LDAP replication priority queuing mechanism
US20110093543A1 (en) * 2009-10-20 2011-04-21 Goldman Stuart O Message server device and method for controlling message delivery
EP2487868A1 (en) * 2011-02-10 2012-08-15 Telefonaktiebolaget LM Ericsson (publ) An arrangement and method for handling data to and from a processing engine
CN113677043B (zh) * 2021-06-21 2024-01-05 福建睿思特科技股份有限公司 一种基于arm架构和输变电无线组网协议的物联网关

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2360675A (en) * 2000-03-23 2001-09-26 Yehuda Brand Accessing WWW page elements in desired priority order
WO2003085924A1 (en) * 2002-04-05 2003-10-16 Telefonaktiebolaget Lm Ericsson (Publ) Object transfer control in a communications network

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102395212A (zh) * 2011-11-18 2012-03-28 百度在线网络技术(北京)有限公司 网关接入控制方法、系统及装置
CN104216770A (zh) * 2011-12-28 2014-12-17 北京奇虎科技有限公司 一种浏览器消息处理方法及装置
WO2014005535A1 (zh) * 2012-07-04 2014-01-09 中兴通讯股份有限公司 物联网消息处理方法、装置及系统
CN103532823A (zh) * 2012-07-04 2014-01-22 中兴通讯股份有限公司 物联网消息处理方法、装置及系统
US9832275B2 (en) 2012-07-04 2017-11-28 Xi'an Zhongxing New Software Co.Ltd. Message processing method, device and system for internet of things
CN103532823B (zh) * 2012-07-04 2018-11-23 中兴通讯股份有限公司 物联网消息处理方法、装置及系统
CN103995674A (zh) * 2014-04-17 2014-08-20 华为技术有限公司 访问请求处理方法、装置和设备
CN103995674B (zh) * 2014-04-17 2017-08-25 华为技术有限公司 访问请求处理方法、装置和设备
CN106656861A (zh) * 2016-12-15 2017-05-10 咪咕数字传媒有限公司 一种电子图书推送方法及装置
CN116347511A (zh) * 2023-05-29 2023-06-27 泉州维盾电气有限公司 一种数据通信的方法及相关设备

Also Published As

Publication number Publication date
EP1585282B1 (en) 2006-07-26
CY1105614T1 (el) 2010-07-28
EP1585282A1 (en) 2005-10-12
CA2503867C (en) 2012-06-12
CN1691632B (zh) 2010-06-23
DK1585282T3 (da) 2006-12-04
HK1081356A1 (en) 2006-05-12
DE602004001666D1 (de) 2006-09-07
ATE334548T1 (de) 2006-08-15
ES2270292T3 (es) 2007-04-01
PT1585282E (pt) 2006-12-29
DE602004001666T2 (de) 2006-11-30
CA2503867A1 (en) 2005-10-08
SG116615A1 (en) 2005-11-28

Similar Documents

Publication Publication Date Title
CN1691632A (zh) 基于优先级的消息发送队列重新排序
US8307051B2 (en) Message send queue reordering based on priority
CN1281030C (zh) 中继装置、信息发送装置和信息发送方法
CN1207876C (zh) 短消息网关、向移动电话提供信息服务的系统和方法
US6678518B2 (en) Dynamic content filter in a gateway
CN1625877A (zh) 通信网络中的对象传输控制
CN1572098A (zh) 使用发布/预定系统的无线消息传递业务
CN1145111C (zh) 向网络用户推送定制页面的方法
CN1275292A (zh) 在网关和服务中心之间进行路由确定的方法和装置
CN101079159A (zh) 一种实现远程排队的方法及其专用系统和排队机
CN1275286A (zh) 基于目的位置的控制网络连接的方法和装置
CN1199406C (zh) 电子邮件系统、服务器和电子邮件发送和接收设备
CN1250913A (zh) 在网络不可用期间提供电子邮件服务的方法和装置
CN1575461A (zh) 约定web服务的移动客户机
CN1661597A (zh) 无线搜索引擎及其方法
CN1871824A (zh) 用于在无线环境中转换资源名的方法和装置
CN1792069A (zh) 用于提供包括多种电子设备的虚拟工作区的技术
CN1638376A (zh) 用于共享网络上的服务的设备和方法
CN1684487A (zh) 用于处理多种语言的通信系统、设备、装置和方法
CN101729598A (zh) 提高Web服务响应速率的方法和系统及网络处理器
CN1893359A (zh) 远程信息处理系统以及提供多种内容服务的方法
US20110280247A1 (en) System and method for reducing latency via multiple network connections
CN1274175C (zh) 移动通信终端装置及其控制方法
CN101065908A (zh) 通信系统的发送与接收装置及其方法
US7805490B2 (en) Deleting mechanism in SIP multimedia services

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