CN1201942A - 报文处理方法和装置及用于存储控制程序的存储介质 - Google Patents

报文处理方法和装置及用于存储控制程序的存储介质 Download PDF

Info

Publication number
CN1201942A
CN1201942A CN98107975A CN98107975A CN1201942A CN 1201942 A CN1201942 A CN 1201942A CN 98107975 A CN98107975 A CN 98107975A CN 98107975 A CN98107975 A CN 98107975A CN 1201942 A CN1201942 A CN 1201942A
Authority
CN
China
Prior art keywords
conversation
threads
message processor
control assembly
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.)
Granted
Application number
CN98107975A
Other languages
English (en)
Other versions
CN1159653C (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1201942A publication Critical patent/CN1201942A/zh
Application granted granted Critical
Publication of CN1159653C publication Critical patent/CN1159653C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明向智能体201提供软件构件200,该软件构件相当于人的耳朵和嘴巴。在产成会话时,准备一种接近人类会话的智能体通信语言,并且以报文分组的方式将其发送到会话部件200。随后会话部件200为每个会话产生一个会话线程,并且以平行、异步的方式与多个节点会话。另一方面,在接收报文分组的另一节点,协议管理程序230从网络上接收数据(报文分组),并将其传送到会话部件200。会话部件200理解报文分组,并执行其内容。

Description

报文处理方法和装置及用于存储控制程序的存储介质
本发明涉及数据处理技术,更确切地说,涉及一种改进的数据处理方法,该方法支持分布式计算机环境中网络上两个以上节点之间的通信。
在现有技术中有一种移动智能体(agent)技术,其中,当将其移动到分布式计算机环境中网络上的服务器提供的区域时,其内部状态随之移动,以便在其移动到的区域构成程序。参见USP 5,603,031(PUPA 7-182174)和Fumihiko Nishida,Susumu Fujiwara等的“最新Internet技术,Nikkei通信特辑”,pp 104-117,Nikkei BP。
在其移动到的区域,该移动智能体与其他智能体(移动智能体或驻留智能体)联系,获得相应服务。区域是智能体移动到的由网络上的服务器提供的位置,该区域支持智能体之间的联系,消除各种硬件之间、各种平台之间的差异。
移动智能体技术使得移动智能体能够作为人类代理处理工作,例如,根据与会人员的日程安排和预订会议室情况,动态调整内部会议日程,获得散布在网络上的所需信息。
然而,在现有技术的移动智能体中,由于智能体之间的通信是通过常规方法调用(子程序调用)或低级报文传送处理实现的,所以很难实现智能体之间灵活的、流畅的信息交换和协调。另外,为了使用智能体进行通信,必须定义一成不变的会话处理方法,从而增加了智能体用户的负担。此外,由于并未采用智能体通信语言来实现各种智能体之间的通信,所以不同类型的智能体很难进行通信。
另一方面,人与人之间的“会话”包括以下步骤:
1.发言者准备讲话内容,以便向听众传达发言者的意图,
2.发言者开始讲话,
3.听众听取讲话,理解滔滔不绝的会话,
4.听众把该讲话和该听众经历过的讲话背景联系起来,
5.听众理解讲话内容,和
6.听众采取行动作为结果。
如果通过按以上方式模拟会话,将计算机报文处理系统定义为模拟自然语言报文处理的系统,并且该系统是为重复使用而设计的,该系统就可以处理比现有技术更接近自然语言的报文,从而可以构造更加用户友好的智能报文系统,并且该系统允许一系列分组中某个上下文与随后的连续不断的上下文互换。
本发明的目的在于提供一种通信系统,该系统能够利用智能体通信语言进行会话,当与智能体(移动智能体或驻留智能体)进行通信时,人类能够直观地、轻而易举地理解该通信语言。
本发明的另一目的在于提供一种通信系统,该系统能够并发地、异步地进行智能体(移动智能体或驻留智能体)之间的会话。
本发明的又一目的在于提供一种通信系统,其中智能体无需知道各种智能体通信语言和通信协议就可以相互通信。
本发明的又一目的在于提供一种通信系统,其中该系统实现了高速并行会话处理。
本发明的又一目的在于:尽量减少开发和维护用于支持智能体之间通信的程序所需要的工作量和时间。
本发明的又一目的在于提供一种报文处理系统,其中该系统能够灵活处理智能体之间的会话。
本发明的又一目的在于提供一种报文处理系统,其中该系统不会给通信网络增加太多负载。
本发明向智能体提供软件构件(智能体通信系统),其中该软件构件相当于人的耳朵和嘴巴。在该智能体通信系统中,以API(应用程序接口)“handleMessage”的方式提供耳朵,而以API“sendMessage”的方式提供嘴巴。在本发明的最佳实施方式中,以智能体通信系统的智能体通信语言管理对象的方法(如面向对象语言中的方法一样)的方式实现以上API。
在产成会话时,智能体准备接近人类会话的一种智能体通信语言(ACL),并且通过将其发送到sendMessage传送它。报文分组包括一个发送者字段和一个目的地字段,智能体通信系统利用该字段就可以辨别会话伙伴的位置。
另一方面,在接收报文分组的节点,协议管理程序从网络上接收数据(报文分组),其中协议管理程序为一个组件,该组件处理来自网络的数据,并将其传送到智能体通信语言管理对象的handleMessage。“handleMessage”理解报文分组,并执行其内容。
根据本发明的一方面,一旦传输了或接收到一个报文分组,智能体通信系统就确定是否启动了一个新的会话,当确定已经启动了一个新的会话时,就产生一个新的会话线程。该会话线程使得多个智能体(移动智能体或驻留智能体)之间能够并发地、异步地进行会话。
根据本发明的另一方面,仅需实例化智能体通信语言管理对象就可以为智能体提供一个耳朵和一张嘴巴。
根据本发明的一个方面,提供一种由报文处理器执行的报文处理方法,其中报文处理器与网络相连,并具有一个会话线程控制部件,该部件能够产生多个会话线程,所述方法包括以下步骤:
(a)检测含有目的地信息和会话线程标识信息的报文分组,
(b)确定所述报文处理器中,是否有与所述报文分组中包含的会话线程标识信息相对应的会话线程,
(c)当确定所述报文处理器中不存在所述相应的会话线程时,就产生一个新的会话线程,和
(d)将所述报文分组发送到与所述目的地信息相对应的目的地。
根据本发明的另一方面,提供一种由报文处理器执行的报文处理方法,其中报文处理器与网络相连,并具有一个会话线程控制部件,该部件能够产生多个会话线程,所述方法包括以下步骤:
(a)检测含有目的地信息、会话线程标识信息和内容信息的报文分组,
(b)确定所述报文处理器中,是否有与所述报文分组中包含的会话线程标识信息相对应的会话线程,
(c)当确定所述报文处理器中不存在所述相应的会话线程时,就产生一个新的会话线程,
(d)将所述报文分组转换为与网络相对应的协议,其中所述报文处理器与该网络相连,和
(e)将所述报文分组发送到与所述目的信息相对应的目的地。
根据本发明的又一方面,提供一种由报文处理器执行的报文处理方法,其中报文处理器与网络相连,并具有一个会话线程控制部件,该部件能够产生多个会话线程,所述方法包括以下步骤:
(a)检测含有会话线程标识信息的报文分组,
(b)确定所述报文处理器中,是否有与所述报文分组中包含的会话线程标识信息相对应的会话线程,和
(c)当确定所述报文处理器中不存在所述相应的会话线程时,就产生一个新的会话线程。
根据本发明的又一方面,提供一种由报文处理器执行的报文处理方法,其中报文处理器与网络相连,并具有一个会话线程控制部件,该部件能够产生多个会话线程,所述方法包括以下步骤:
(a)检测含有会话线程标识信息和内容信息的报文分组,
(b)确定所述报文处理器中,是否有与所述报文分组中包含的会话线程标识信息相对应的会话线程,和
(c)当确定所述报文处理器中存在所述相应的会话线程时,就将控制传送到所述相应的会话线程。
根据本发明的又一方面,提供一种由报文处理器执行的报文处理方法,其中报文处理器与网络相连,并具有一个会话线程控制部件,该部件能够产生多个会话线程,所述方法包括以下步骤:
(a)检测含有目的地信息和会话线程标识信息的报文分组,
(b)确定所述报文处理器中,是否有与所述报文分组中包含的会话线程标识信息相对应的会话线程,和
(c)当确定所述报文处理器中不存在所述相应的会话线程时,就产生一个新的会话线程。
根据本发明的又一方面,提供一种由报文处理器执行的报文处理方法,其中报文处理器与网络相连,并具有一个会话线程控制部件,该部件能够产生多个会话线程,所述方法包括以下步骤:
(a)检测含有会话线程标识信息和内容信息的报文分组,
(b)确定所述报文处理器中,是否有与所述报文分组中包含的会话线程标识信息相对应的会话线程,
(c)当确定所述报文处理器中存在所述相应的会话线程时,就将控制传送到所述相应的会话线程,和
(d)分析所述内容信息的内容。
根据本发明的又一方面,提供一种由报文处理器执行的报文处理方法,其中报文处理器具有多个会话线程和一个会话部件对象,该会话部件对象包括能够控制所述多个会话线程的会话线程控制部件,所述报文处理器可以经过网络向另一报文处理器发送报文,所述方法包括以下步骤:
(a)暂停所述多个会话线程,
(b)经过所述网络,向另一区域发送所述会话部件对象,和
(c)在所述另一报文处理器,重新启动所述多个会话线程。
根据本发明的另一方面,提供一种报文处理器,该处理器与网络相连,所述处理器包括:
(a)多个会话线程,
(b)一个用于检测报文分组的智能体通信语言管理程序,其中报文分组包含有目的地信息、会话线程标识信息和内容信息,
(c)一个会话线程控制部件(c-1)和(c-2),控制部件(c-1)用于确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中不存在所述相应的会话线程时,控制部件(c-2)就产生一个新的会话线程,和
(d)一个协议管理程序,该管理程序将报文分组转换为与网络相对应的协议,其中所述报文处理器与该网络相连。
根据本发明的另一方面,提供一种报文处理器,该处理器与网络相连,所述处理器包括:
(a)一个智能体通信语言管理程序,该管理程序用于检测含有会话线程标识信息的报文分组,和
(b)一个会话线程控制部件(b-1)和(b-2),其中控制部件(b-1)用于确定所述报文处理器中是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中不存在所述相应的会话线程时,控制部件(b-2)就产生一个新的会话线程。
根据本发明的另一方面,提供一种报文处理器,该报文处理器与网络相连并且具有一个会话线程控制部件,会话线程控制部件能够产生多个会话线程,所述处理器包括:
(a)一个智能体通信语言管理程序,该管理程序用于检测含有会话线程标识信息和内容信息的报文分组,和
(b)一个会话线程控制部件(b-1)和(b-2),其中控制部件(b-1)用于确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中存在所述相应的会话线程时,控制部件(b-2)就将控制传送到所述相应的会话。
根据本发明的另一方面,提供一种报文处理器,该报文处理器与网络相连并且具有一个会话线程控制部件,会话线程控制部件能够产生多个会话线程,所述处理器包括:
(a)一个协议管理程序,该管理程序用于接收含有会话线程标识信息的报文分组,和
(b)一个会话线程控制部件(b-1)和(b-2),其中控制部件(b-1)用于确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中不存在所述相应的会话线程时,控制部件(b-2)就产生一个新的会话线程。
根据本发明的另一方面,提供一种报文处理器,该报文处理器与网络相连并且具有一个会话线程控制部件,会话线程控制部件能够产生多个会话线程,所述处理器包括:
(a)一个协议管理程序,该管理程序用于接收含有会话线程标识信息和内容信息的报文分组,和
(b)一个解释器(b-1)和(b-2),其中解释器(b-1)用于确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中存在所述相应的会话线程时,解释器(b-2)就将控制传送到所述相应的会话线程。
根据本发明的一个方面,提供一种记录介质,其中存储了由报文处理器执行的报文处理程序,该处理器与网络相连并且具有一个会话线程控制部件,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序包括:
(a)程序编码,该编码指示所述报文处理器检测包含有目的地信息和会话线程标识信息的报文分组,
(b)程序编码,该编码指示所述报文处理器确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,
(c)程序编码,当确定所述报文处理器中不存在所述相应的会话线程时,该编码就指示所述报文处理器产生一个新的会话线程,和
(d)程序编码,该编码指示所述报文处理器将所述报文分组发送到与所述目的地信息相对应的目的地。
根据本发明的一个方面,提供一种介质,其中存储了由报文处理器执行的报文处理程序,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序包括:
(a)程序编码,该编码指示所述报文处理器检测包含有目的地信息、会话线程标识信息和内容信息的报文分组,
(b)程序编码,该编码指示所述报文处理器确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,
(c)程序编码,当确定所述报文处理器中不存在所述相应的会话线程时,该编码就指示所述报文处理器产生一个新的会话线程,
(d)程序编码,该编码指示所述报文处理器将所述报文分组转换为与网络相对应的协议,其中所述报文处理器与该网络相连,和
(e)程序编码,该编码指示所述报文处理器将所述报文分组发送到与所述目的地信息相对应的目的地。
根据本发明的一个方面,提供一种介质,其中存储了由报文处理器执行的报文处理程序,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序包括:
(a)程序编码,该编码指示所述报文处理器检测包含有会话线程标识信息的报文分组,
(b)程序编码,该编码指示所述报文处理器确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,和
(c)程序编码,当确定所述报文处理器中不存在所述相应的会话线程时,该编码就指示所述报文处理器产生一个新的会话线程。
根据本发明的一个方面,提供一种介质,其中存储了由报文处理器执行的报文处理程序,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序包括:
(a)程序编码,该编码指示所述报文处理器检测包含有会话线程标识信息和内容信息的报文分组,
(b)程序编码,该编码指示所述报文处理器确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,和
(c)程序编码,当确定所述报文处理器中存在所述相应的会话线程时,该编码就指示所述报文处理器将控制传送到所述相应的会话线程。
根据本发明的一个方面,提供一种介质,其中存储了由报文处理器执行的报文处理程序,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序包括:
(a)程序编码,该编码指示所述报文处理器检测包含有会话线程标识信息的报文分组,
(b)程序编码,该编码指示所述报文处理器确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,和
(c)程序编码,当确定所述报文处理器中不存在所述相应的会话线程时,该编码就指示所述报文处理器产生一个新的会话线程。
根据本发明的一个方面,提供一种介质,其中存储了由报文处理器执行的报文处理程序,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序包括:
(a)程序编码,该编码指示所述报文处理器检测包含有会话线程标识信息和内容信息的报文分组,
(b)程序编码,该编码指示所述报文处理器确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,
(c)程序编码,当确定所述报文处理器中存在所述相应的会话线程时,该编码就指示所述报文处理器将控制传送到所述相应的会话线程,和
(d)程序编码,该编码指示所述报文处理器分析所述内容信息的内容。
根据本发明的一个方面,提供一种介质,其中存储了由报文处理器执行的报文处理程序,该处理器具有一个会话线程控制部件并且可以经过网络将报文发送到另一报文处理器,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序包括:
(a)程序编码,该编码指示所述报文处理器暂停所述多个会话线程,
(b)程序编码,该编码指示所述报文处理器经过所述网络将所述会话部件对象发送到另一区域,和
(c)程序编码,该编码指示所述报文处理器重新启动所述多个会话线程。
根据本发明的一个方面,提供一种介质,其中存储了将要装载到报文处理器的多个对象,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序包括:
(a)多个会话线程,
(b)一个智能体通信语言管理程序,该管理程序用于检测包含有目的地信息、会话线程标识信息和内容信息的报文分组,
(c)一个会话线程控制部件(c-1)和(c-2),其中控制部件(c-1)用于确定所述报文处理器中是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中不存在所述相应的会话线程时,控制部件(c-2)就产生一个新的会话线程,和
(d)一个协议管理程序,该管理程序将所述报文分组转换为与网络相对应的协议,其中所述报文处理器与该网络相连。
根据本发明的一个方面,提供一种介质,其中存储了将要装载到报文处理器的多个对象,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序包括:
(a)一个智能体通信语言管理程序,该管理程序用于检测包含有会话线程标识信息的报文分组,和
(b)一个会话线程控制部件(b-1)和(b-2),其中控制部件(b-1)用于确定所述报文处理器中是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中不存在所述相应的会话线程时,控制部件(b-2)就产生一个新的会话线程,
根据本发明的一个方面,提供一种介质,其中存储了将要装载到报文处理器的多个对象,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序包括:
(a)一个智能体通信语言管理程序,该管理程序用于检测包含有会话线程标识信息和内容信息的报文分组,和
(b)一个会话线程控制部件(b-1)和(b-2),其中控制部件(b-1)用于确定所述报文处理器中是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中存在所述相应的会话线程时,控制部件(b-2)就将控制传送到所述相应的会话。
根据本发明的一个方面,提供一种介质,其中存储了将要装载到报文处理器的多个对象,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序包括:
(a)一个协议管理程序,该管理程序用于接收包含有会话线程标识信息的报文分组,和
(b)一个会话线程控制部件(b-1)和(b-2),其中控制部件(b-1)用于确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中不存在所述相应的会话线程时,控制部件(b-2)就产生一个新的会话线程。
图1表示一分布式网络环境,本发明的移动智能体在该环境中运行。
图2是一个框图,表示本发明的客户系统或服务器系统硬件配置的一种实施方式。
图3是一个框图,表示本发明的客户节点或服务器节点处理组件的一种实施方式。
图4用示意图说明本发明的报文分组的示例。
图5是一个框图,说明本发明的客户(或服务器)节点处理组件的一种实施方式。
图6为本发明最佳实施方式中组件之间的对象相互作用图。
图7用示意图说明本发明最佳实施方式中的会话内容监视部件控制表。
图8是一个框图,说明本发明服务器(或客户)节点中处理组件的一种实施方式。
图9为本发明最佳实施方式中组件之间的对象相互作用图。
图10用示意图说明本发明最佳实施方式中的解释器控制表。
图11用示意图说明本发明最佳实施方式中的翻译器控制表。
图12是一个框图,说明本发明客户(或服务器)节点中处理组件的一种实施方式。
图13是一个框图,说明本发明服务器(或客户)节点中处理组件的一种实施方式。
图14是一个流程图,说明本发明的智能体通信系统在网络上移动时,所采取的处理步骤的一种实施方式。
图15为本发明最佳实施方式中组件之间的对象相互作用图。
图中标号意义如下:
100 节点系统
200 智能体通信系统
203 智能体通信语言管理程序
205 会话线程控制部件
207 会话线程
211 报文日志
213 ID发生器
215 会话内容监视部件装载程序
217 会话内容监视部件
219 翻译器装载程序
221 翻译器
223 解释器装载程序
225 解释器
以下将参照附图,说明本发明的实施方式。参照图1,该图表示一个分布式网络环境150,该环境实现本发明的移动目的。各服务器112-115配有区域102-105,区域102-105服务移动智能体(agent)125、135和141等。将该分布式网络环境中的区域集称为群集。
用于构造并移动移动智能体的应用程序113位于客户系统101。移动智能体,如应用程序113发送的智能体125,可以与现有各区域102-105中的其他智能体(移动智能体或驻留智能体)联系(与移动智能体进行联系以便提供服务的智能体被称为作用智能体),发送请求并接收请求结果。区域支持智能体之间的联系。在移动期间,移动智能体(如智能体125)可以保持从作用智能体接收的请求结果、继续移动、将该结果发送到客户101或其他区域。
移动智能体(或驻留智能体)125可以向其他区域发送报文分组,并在该区域执行会话和指令。
图2利用示意图说明图1所示的分布式网络环境中各网点(服务器网点或客户网点)的硬件配置。每个网点100具有一个中央处理机(CPU)1和一个存储器4。利用总线2将CPU1和存储器4连接到硬盘驱动器13,硬盘13作为辅助存储器。利用包括软盘控制器19、IDE控制器25和SCSI控制器27的控制器,将包括软盘驱动器20、硬盘驱动器13和30、CD-ROM驱动器26和29以及MO驱动器28的存储介质驱动器连接到总线2。
将诸如软盘的便携式存储介质插到诸如软盘驱动器20的存储介质驱动器中。可以在以上软盘以及硬盘驱动器13与ROM 14的存储介质中记录计算机程序,通过将该程序装入存储器4,该程序向CPU提供指令以便与操作系统共同实现本发明。为了在多种介质中存储,可以压缩该计算机程序,或者将其划分为多段。
网点系统100可以为具有用户接口硬件(如鼠标和操纵杆等指点设备7、用于输入的键盘6和用于向用户显示可视化数据的显示器12)的系统。可以提供并口16以便连接打印机。为了与其他计算机系统通信,网点系统100可以具有经由串口15与其连接的调制解调器,以便经由串口15和调制解调器与网络连接或者经由令牌环或通信适配器18与其他计算机系统通信。
容易明白,可以在常规个人计算机(PC)、工作站、通用计算机或其组合中实现本发明。应该注意到:以上组件只是作为示范组件,并非全部组件都是本发明的必不可少的组件。
例如,在服务器端就不必安装用户接口,只要具备诸如CPU和存储器的基本数据处理功能和通信功能就足够了。客户端只要具备发送报文分组(将在以后说明)所需的配置就足够了,包括通信功能、用于标识报文分组的输入装置以及发送报文分组的指令。另外,当利用由便携式终端等遥控的机器时,为了从便携式终端等设备发送报文分组,只要具备数据处理功能和通信功能就足以接收指令、检测指令和发送该报文分组。
客户端和服务器端的操作系统可以采用支持标准GUI多窗口环境的操作系统,如WindowsNT(微软商标)、Windows95(微软商标)、Windows3.x(微软商标)、OS/2(IBM商标)、AIX(IBM商标)上的X-Windows系统(MIT商标)和Solaris(Sun微系统公司商标),也可以采用基于字符环境的操作系统,如PC-DOS(IBM商标)和MS-DOS(微软商标),以及实时操作系统,如OS/Open(IBM商标)和VxWorks(Wind River System公司的商标),但并不限于任何特定操作系统环境。B.系统配置
参照图3中的框图,说明本发明最佳实施方式中服务器端的系统配置。
智能体201或者是发送到该服务器的移动智能体,或者是驻留在该服务器中的智能体。通过发送或接收将在下面说明的报文分组,智能体201可以与智能体通信系统200对话。
智能体通信语言管理程序203是一个组件,该组件用于接收智能体201、现有系统和网络发送的报文,并向以上系统传送报文。
会话线程控制部件205是一个组件,该组件用于控制线程207、根据连续不断的会话形成适当线程或者把控制交给已经产生的线程,其中,线程207使得每个会话对应于一个智能体(如智能体201)。(将多个会话划分为多线程,以便异步接收多个会话。该线程被称为会话线程。)根据本发明的一个方面,产生多个会话线程通过它们借助多个智能体通过以并行、异步方式保存会话。
报文日志211是一个组件,该组件用于存储会话。会话监视部件217是一个组件,该组件根据存储在报文日志中的会话日志以及当前报文内容,进行策略检查,以检查会话的有效性。会话内容监视部件装载程序215是一个组件,该组件用于调用会话监视部件217,会话监视部件217对应于报文分组300的报文类型。
翻译器221是一个组件,该组件将会话中采用的智能体通信语言翻译成其他语言。翻译器装载程序219是一个组件,该组件用于控制翻译器组。
解释器225是一个组件,该组件用于理解并执行会话内容。相应于将在以后说明的主体和描述语言提供多个不同的解释器,对每个特定的主体,各解释器具有一个格式检查例程、一个内容解释例程和一个执行例程。以机票预定主体为例,假设接收到内容为:“R,flight(班机),Naritato Tacoma,1997/07/06/15:00-1997/07/06/18:00”。检查以上内容的预定格式,并执行特定的内容解释例程,解释“R”为一条预定命令,访问给定航线的数据库以便执行检查预定状态的执行例程。最后,预定无烟座位,经济舱,飞往西雅图Tacoma的班机XX26,起飞时间为1997年7月5日17:00,Narita机场,并请求发送者进一步确认。
解释器装载程序223是一个组件,该组件用于控制解释器组。协议管理程序230是一个组件,该组件用于转换符合网络连接类型的协议。
已经说明了图3中的所有功能块。这并不意味着要以独立集成硬件或软件的形式实现这些功能块(组件),这些功能块仅为逻辑功能块,可以以硬件和软件综合的方式,或者以通用硬件和软件的方式实现该功能块。另外,图3所示的所有功能块并非都是本发明必不可少的组件。
例如,由于本发明提供了具有特殊功能的智能体,所以只安装诸如会话内容监视部件217、翻译器221和解释器225的解释执行部件,就足以与其他智能体或者现有系统进行会话。而无需会话内容监视部件装载程序215、翻译器装载程序219和解释器装载程序223。就本发明的一个方面而言,由于提供了一个或多个特定会话线程与特定智能体会话,所以智能体通信语言管理程序203、会话线程控制部件205、报文日志211和ID发生器213并不是必不可少的组件。C.操作说明
图4是用示意图说明本发明最佳实施方式中采用的报文分组300。图5说明产生报文时图3中各个组件的操作状态。
对于图4中报文分组300包含的报文类型301,在本发明的最佳实施方式中采用智能体通信语言(ACL)的一种述行语。ACL是一种高级语言,该语言以接近人类语言的方式,提供智能体之间的通信,该语言包括由FIPA(Foundation for Intelligent Physical Agents-智能物理智能体基金)、ACL、KQML(Knowledge Query Manipulation Language-知识查询操作语言)以及KIF(Knowledge Interchange Format-知识交换格式)提供的语言。KQML由“智能体通信语言的语义,Yannis Labrou,用于博士答辩审查的博士论文,已提交答辩委员会,计算机科学和电子工程系(CSEE),马里兰大学研究生院”和“TRCS-97-03,新的KQML规范建议,Yannis Labrou和Tim Finin,1997年2月3日”公开。
作为一种ACL,KQML的述行语包括:
ask-if,ask-all,stream-all,eos,tell,untell,deny,insert,uninsert,delete-one,delete-all,undelete,achieve,unachieve,advertise,unadvertise,subscribe,error,sorry,standby,ready,next,rest,discard,register,unregister,forward,broadcast,transport-address,broker-one,broker-all,recommend-one,recommend-all,recruit-one,recruit-all。
发送者303为报文发送者,而接收者305为报文接收者。
应答ID 307为跟随前一会话的ID。当某个智能体与多个用户会话时,对应于将在以后说明的会话线程分配应答ID。
会话ID 309为一个ID,后者通知会话伙伴利用此ID应答。
描述语言类型311为规定语言的信息,其中语言描述内容。主体313为规定该主体的信息,其中内容规定主体。在本发明的最佳实施方式中,提供一个票务购买主体、一个数字计算主体和一个黄页主体等。
在本发明的最佳实施方式中,内容315为报文的特定内容并且包含有软件,在移动到另一区域之后,该软件形成指令。内容315可以内部包含报文分组,以便经由中继点移动到其他区域。因此在本发明的最佳实施方式中,提供开始表目和到达表目,以便分别指示真实发送者和最终接收者。
以下将参照图5,说明报文生成期间图3中各组件的工作状态。智能体201将图4所示的报文分组发送到智能体通信系统200。在本发明的最佳实施方式中,将图3所示的组件定义为面向对象的类。如图6中组件之间的对象指令图所示,一旦生成了报文,各对象就通过向其他对象发送指令,提示其他对象启动。
当接收到报文分组300时,根据是用“sendMessage”还是用“handleMessage”调用智能体通信语言管理程序203,智能体通信语言管理程序203确定报文分组300为用于产生会话的报文分组,并请求会话线程205进行处理。
参照包含在报文分组300中的应答ID 307,会话线程控制部件205确定是否要求已经生成的会话线程进行处理。如果会话线程(控制部件)205确定该ID为一个新的会话,则会话线程(控制部件)205就生成一个新的会话线程207,利用会话线程207指示ID发生器213分配一个新的会话ID309,并把控制交给会话线程207。
在本发明中,由于会话线程是按以上方式动态生成的,所以其他系统(智能体或现有系统)能够以并行、异步的方式保存会话。在本发明的最佳实施方式中,利用根据网络中唯一确定的ID分配应答ID 307,例如“URL+日期+时间+序列号”。
如果存在与应答ID 307相对应的会话线程207,则会话线程控制部件205确定该会话并非新的会话,并把控制交给相应的会话线程207。如果希望继续进行会话,则会话线程207指示ID发生器213分配会话ID 309。
报文日志211记录发送到会话线程207的报文分组300。
会话内容监视部件装载程序216调用与报文分组300的报文类型301相对应的会话内容监视部件217。通过提供图7所示的会话内容监视部件表,或者利用与报文类型相同的会话内容监视部件的类名,就可以调用与报文类型301相对应的会话内容监视部件217。
根据存储在报文日志211中的会话日志和当前报文内容,会话内容监视部件217进行策略检查,以便检查会话的有效性。例如,如果接收到的报文分组300的报文类型301为“sorry”(一种报文类型,表示能够理解该会话内容,但接收用户不具备处理能力),就引用具有相应应答ID和紧接前一ID的报文的报文类型的报文日志,随后,如果报文类型为有效类型,如“ask-if”(一种报文类型,查询其他用户的处理能力)会话,就确定该报文类型没有问题,期间,如果确定报文类型为无效类型,如“deny”(一种表示拒绝的报文类型)会话,就确定该报文类型有错,同时采取行动,如向报文分组300的发送者303,发送一个“error”(一种表示错误的报文类型)报文分组。
如果确定该会话是有效的,就利用协议管理程序230,由会话线程207向接收者303标识的节点发送报文分组300。协议管理程序230将协议转换为符合网络连接类型的协议,从而智能体通信系统200无需考虑网络协议,就可以发送和接收报文分组300。
现在参照图8和图9,说明接受如上发送的报文分组的节点中各组件的工作状态。
当已经从协议管理程序230接收到报文分组300的智能体通信语言管理程序203收到“handleMessage”时,该管理程序就确定接收到的报文分组300为用于接收报文的报文分组,并要求会话线程控制部件205处理该报文分组。在本发明的最佳实施方式中,由于随后的内部实例化,协议管理程序230知道智能体通信语言管理程序203的存在,协议管理程序230可以将输入数据发送到智能体通信语言管理程序203。
根据报文分组300中包含的应答ID,会话线程控制部件205确定是否要求会话线程处理该报文分组。如果会话线程控制部件205确定该分组为一个新的会话,该部件就产生一个新的会话线程207,并将该分组传送到会话线程207进行处理。
如果已经存在与应答ID 307相对应的会话线程207,则会话线程控制部件205确定该分组并非一个新的会话,并将该分组传送到相应会话线程进行处理。
报文日志211记录发送到会话线程207的报文分组300。
会话内容监视部件装载程序215调用符合报文分组300的报文类型301的会话内容监视部件217。
根据存储在报文日志211中的会话日志和当前报文内容,会话内容监视部件217进行策略检查,以检查会话的有效性。
如果确定该会话是有效的,则会话线程207就将控制交给解释器装载程序223以进行处理。解释器装载程序223理解报文分组300中的智能体通信语言,确定报文分组300中是否包含描述语言类型311,同时,确定图10所示的解释器控制表350中是否存储有与主体313相对应的解释器。
如果解释器控制表350中存储有与智能体通信语言、描述语言类型311以及接收到的报文分组300的主体313相对应的解释器,则该解释器解释内容315。如果解释器控制表350中并未存储与智能体通信语言、描述语言类型311以及接收到的报文分组300的主体313相对应的解释器,就确定解释器库是否存在与以上组合相对应的解释器,其中由系统管理(访问)该解释器库。
如果该解释器存在,就在解释器控制表350中注册该解释器,并利用该解释器解释内容315。如果解释器库中不存在与智能体通信语言、描述语言类型311以及主体313的组合相对应的解释器,就确定解释器库中是否存在与描述语言类型311和主体313的组合相对应的解释器。如果该解释器不存在,就确定不能处理该报文。在本发明的最佳实施方式中,主体具有层次结构,从而可以使用与该主体最匹配的解释器。
如果存在某个解释器和某个翻译器,并且可以将该内容语言翻译为该解释器能够解释的语言,就将控制交给翻译器装载程序219,以便将内容315翻译为以上发现的解释器的智能体通信语言。翻译器装载程序219引用翻译器控制表340,并确定是否存在能够执行请求翻译处理的翻译器。在本发明的最佳实施方式中,如果不存在该翻译器,就以搜索解释器的方式,搜索翻译器库,如果在控制表中发现该翻译器表目,就由选定的解释器处理经过翻译的内容315。如果翻译器库中没有该翻译器,就确定不能处理该报文。
在本发明的最佳实施方式中,将解释器225的解释结果传送到智能体231,智能体231根据内容315描述的指令内容处理该结果。根据内容315中的指令,执行以下操作之一:销毁会话线程、开始一个新的会话或生成一个新的智能体。在本发明的最佳实施方式中,解释器225将控制返回到会话线程207。该会话线程待机,直至接收到另一报文。
与现有程序系统中的大部分API调用不同,由于会话是异步的,所以不可能预测接收用户将何时根据发送用户发送给接收用户的的会话,进行应答。接收方拥有的信息可能在由外力(如其他智能体的动作)改变的时刻返回。此时,以报文分组的方式发送应答。会话线程207采用“wait0”进行等待,直至返回跟随该会话的一个应答。“wait0”是一个方法,该方法使得会话线程207处于等待状态,直至被某个诸如来自别处的“notify0”函数(方法)唤醒。当返回应答后,就将该报文提交给智能体系统200。如果发现该报文为跟随现有会话的报文,就唤醒睡眠会话线程,并将该报文提交给该线程。
在本发明的最佳实施方式中,当智能体231已经利用智能体通信系统200启动了一个会话(通过向智能体通信系统发送“SendMessage”),并正在等待应答时,会返回一个对象“Conversation”作为“SendMessage”的返回值。对象“Conversation”和一个保持着状态称为“Result”的对象相联系。在本发明的最佳实施方式中,智能体231通过利用轮询检查对象“Result”保存的状态,就可以接收通知。
在本发明的最佳实施方式中,为了把本发明的会话部件,即智能体通信系统200,提供给智能体201中,我们采用JDK(Java开发工具:Sun微系统公司之商标)进行编码。
仅需实例化ACLManager,就可以为智能体201提供本发明的智能体通信系统200:
aclManager=new ACLManager(agentName,protocolName,port);
例如,为了启动会话,需要准备一个kqml对象,并且
ConversationThread conv=
    (ConversationThread) aclManager.SendMessage(kqml);
就可以启动该会话。
当等待应答时,
通过
Result res=conversation.getResult 0;
    if(res.isAvailable0){进行相应处理}
进行轮询。由缺省的智能体通信系统200的解释器,正确解释并执行返回的应答或其他智能体发送的报文。
到目前为止,在本发明的最佳实施方式中,尽管在执行时在控制表中注册解释执行部件,但并不要求在执行时进行注册,而代之以检查现有的解释执行部件,以便构造并维护解释执行部件控制表。
在本发明的最佳实施方式中,尽管报文分组300在节点之间移动,也可以在移动智能体的附件内发送报文分组。此时,移动智能体233围绕区域移动,并保持与其上相连报文分组300的会话。另外还可以执行复杂作业,如利用处理结果在其他区域会话。
通过执行图14所示的步骤,实现移动智能体在网络上的移动。
如上所述,本发明提供了一种通信系统,该系统能够利用智能体通信语言进行会话,当在智能体(移动智能体或驻留智能体)之间进行通信时,人类能够直观地理解该通信语言。
作为本发明的一个方面,提供一种报文处理系统,通过减少不必要的判定逻辑电路,该系统能够进行高速处理。
作为本发明的一个方面,提供一种通信系统,其中智能体无需知道各种智能体通信语言和通信协议就可以相互通信。
作为本发明的一个方面,提供一种通信系统,其中该系统实现了高速并行会话处理。
作为本发明的一个方面,尽量减少开发和维护用于支持智能体之间通信的程序所需要的工作量和时间。
作为本发明的一个方面,提供一种报文处理系统,该系统能够灵活处理智能体之间的会话。
作为本发明的一个方面,提供一种报文处理系统,其中该系统不会给通信网络增加太多负载。
作为本发明的另一个方面,提供一种报文处理系统,该系统减少了所需的执行资源。

Claims (23)

1.一种由报文处理器执行的报文处理方法,其中报文处理器与网络相连,并具有一个会话线程控制部件,该部件能够产生多个会话线程,所述方法特征在于包括以下步骤:
(a)检测含有目的地信息和会话线程标识信息的报文分组,
(b)确定所述报文处理器中,是否有与所述报文分组中包含的会话线程标识信息相对应的会话线程,
(c)当确定所述报文处理器中不存在所述相应的会话线程时,就产生一个新的会话线程,和
(d)将所述报文分组发送到与所述目的地信息相对应的目的地。
2.一种由报文处理器执行的报文处理方法,其中报文处理器与网络相连,并具有一个会话线程控制部件,该部件能够产生多个会话线程,所述方法特征在于包括以下步骤:
(a)检测含有目的地信息、会话线程标识信息和内容信息的报文分组,
(b)确定所述报文处理器中,是否有与所述报文分组中包含的会话线程标识信息相对应的会话线程,
(c)当确定所述报文处理器中不存在所述相应的会话线程时,就产生一个新的会话线程,
(d)将所述报文分组转换为与网络相对应的协议,其中所述报文处理器与该网络相连,和
(e)将所述报文分组发送到与所述目的地信息相对应的目的地。
3.一种由报文处理器执行的报文处理方法,其中报文处理器与网络相连,并具有一个会话线程控制部件,该部件能够产生多个会话线程,所述方法特征在于包括以下步骤:
(a)检测含有会话线程标识信息的报文分组,
(b)确定所述报文处理器中,是否有与所述报文分组中包含的会话线程标识信息相对应的会话线程,和
(c)当确定所述报文处理器中不存在所述相应的会话线程时,就产生一个新的会话线程。
4.一种由报文处理器执行的报文处理方法,其中报文处理器与网络相连,并具有一个会话线程控制部件,该部件能够产生多个会话线程,所述方法特征在于包括以下步骤:
(a)检测含有会话线程标识信息和内容信息的报文分组,
(b)确定所述报文处理器中,是否有与所述报文分组中包含的会话线程标识信息相对应的会话线程,和
(c)当确定所述报文处理器中存在所述相应的会话线程时,就将控制传送到所述相应的会话线程。
5.一种由报文处理器执行的报文处理方法,其中报文处理器与网络相连,并具有一个会话线程控制部件,该部件能够产生多个会话线程,所述方法特征在于包括以下步骤:
(a)检测含有目的地信息和会话线程标识信息的报文分组,
(b)确定所述报文处理器中,是否有与所述报文分组中包含的会话线程标识信息相对应的会话线程,和
(c)当确定所述报文处理器中不存在所述相应的会话线程时,就产生一个新的会话线程。
6.一种由报文处理器执行的报文处理方法,其中报文处理器与网络相连,并具有一个会话线程控制部件,该部件能够产生多个会话线程,所述方法特征在于包括以下步骤:
(a)检测含有会话线程标识信息和内容信息的报文分组,
(b)确定所述报文处理器中,是否有与所述报文分组中包含的会话线程标识信息相对应的会话线程,
(c)当确定所述报文处理器中存在所述相应的会话线程时,就将控制传送到所述相应的会话线程,和
(d)分析所述内容信息的内容。
7.一种由报文处理器执行的报文处理方法,其中报文处理器具有多个会话线程和一个会话部件对象,该会话部件对象包括能够控制所述多个会话线程的会话线程控制部件,所述报文处理器可以经过网络向另一报文处理器发送报文,所述方法特征在于包括以下步骤:
(a)暂停所述多个会话线程,
(b)经过所述网络,向另一区域发送所述会话部件对象,和
(c)在所述另一报文处理器,重新启动所述多个会话线程。
8.一种报文处理器,该处理器与网络相连,所述处理器特征在于包括:
(a)多个会话线程,
(b)一个用于检测报文分组的智能体通信语言管理程序,其中报文分组包含有目的地信息、会话线程标识信息和内容信息,
(c)一个会话线程控制部件(c-1)和(c-2),控制部件(c-1)用于确定所述报文处理器中是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中不存在所述相应的会话线程时,控制部件(c-2)就产生一个新的会话线程,和
(d)一个协议管理程序,该管理程序将报文分组转换为与网络相对应的协议,其中所述报文处理器与该网络相连。
9.一种报文处理器,该处理器与网络相连,所述处理器特征在于包括:
(a)一个智能体通信语言管理程序,该管理程序用于检测含有会话线程标识信息的报文分组,和
(b)一个会话线程控制部件(b-1)和(b-2),其中控制部件(b-1)用于确定所述报文处理器中是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中不存在所述相应的会话线程时,控制部件(b-2)就产生一个新的会话线程。
10.一种报文处理器,该报文处理器与网络相连并且具有一个会话线程控制部件,会话线程控制部件能够产生多个会话线程,所述处理器特征在于包括:
(a)一个智能体通信语言管理程序,该管理程序用于检测含有会话线程标识信息和内容信息的报文分组,和
(b)一个会话线程控制部件(b-1)和(b-2),其中控制部件(b-1)用于确定所述报文处理器中是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中存在所述相应的会话线程时,控制部件(b-2)就将控制传送到所述相应的会话。
11.一种报文处理器,该报文处理器与网络相连并且具有一个会话线程控制部件,会话线程控制部件能够产生多个会话线程,所述处理器特征在于包括:
(a)一个协议管理程序,该管理程序用于接收含有会话线程标识信息的报文分组,和
(b)一个会话线程控制部件(b-1)和(b-2),其中控制部件(b-1)用于确定所述报文处理器中是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中不存在所述相应的会话线程时,控制部件(b-2)就产生一个新的会话线程。
12.一种报文处理器,该报文处理器与网络相连并且具有一个会话线程控制部件,会话线程控制部件能够产生多个会话线程,所述处理器特征在于包括:
(a)一个协议管理程序,该管理程序用于接收含有会话线程标识信息和内容信息的报文分组,和
(b)一个解释器(b-1)和(b-2),其中解释器(b-1)用于确定所述报文处理器中是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中存在所述相应的会话线程时,解释器(b-2)就将控制传送到所述相应的会话线程。
13.一种记录介质,其中存储了由报文处理器执行的报文处理程序,该处理器与网络相连并且具有一个会话线程控制部件,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序特征在于包括:
(a)指示所述报文处理器检测包含有目的地信息和会话线程标识信息的报文分组的程序代码,
(b)指示所述报文处理器确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程的程序代码,
(c)当确定所述报文处理器中不存在所述相应的会话线程时,指示所述报文处理器产生一个新的会话线程的程序代码,和
(d)指示所述报文处理器将所述报文分组发送到与所述目的地信息相对应的目的地的程序代码。
14.一种介质,其中存储了由报文处理器执行的报文处理程序,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序特征在于包括:
(a)指示所述报文处理器检测包含有目的地信息、会话线程标识信息和内容信息的报文分组的程序代码,
(b)指示所述报文处理器确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程的程序代码,
(c)当确定所述报文处理器中不存在所述相应的会话线程时,指示所述报文处理器产生一个新的会话线程的程序代码,
(d)指示所述报文处理器将所述报文分组转换为与网络相对应的协议的程序代码,其中所述报文处理器与该网络相连,和
(e)指示所述报文处理器将所述报文分组发送到与所述目的地信息相对应的目的地的程序代码。
15.一种介质,其中存储了由报文处理器执行的报文处理程序,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序特征在于包括:
(a)指示所述报文处理器检测包含有会话线程标识信息的报文分组的程序代码,
(b)指示所述报文处理器确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程的程序代码,和
(c)当确定所述报文处理器中不存在所述相应的会话线程时,指示所述报文处理器产生一个新的会话线程的程序代码。
16.一种介质,其中存储了由报文处理器执行的报文处理程序,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序特征在于包括:
(a)指示所述报文处理器检测包含有会话线程标识信息和内容信息的报文分组的程序代码,
(b)指示所述报文处理器确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程的程序代码,和
(c)当确定所述报文处理器中存在所述相应的会话线程时,指示所述报文处理器将控制传送到所述相应的会话线程的程序代码。
17.一种介质,其中存储了由报文处理器执行的报文处理程序,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序特征在于包括:
(a)指示所述报文处理器检测包含有会话线程标识信息的报文分组的程序代码,
(b)指示所述报文处理器确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程的程序代码,和
(c)当确定所述报文处理器中不存在所述相应的会话线程时,指示所述报文处理器产生一个新的会话线程的程序代码。
18.一种介质,其中存储了由报文处理器执行的报文处理程序,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序特征在于包括:
(a)指示所述报文处理器检测包含有会话线程标识信息和内容信息的报文分组的程序代码,
(b)指示所述报文处理器确定所述报文处理器中,是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程的程序代码,
(c)当确定所述报文处理器中不存在所述相应的会话线程时,指示所述报文处理器将控制传送到所述相应的会话线程的程序代码,和
(d)指示所述报文处理器分析所述内容信息的内容的程序代码。
19.一种介质,其中存储了由报文处理器执行的报文处理程序,该处理器具有一个会话线程控制部件并且可以经过网络将报文发送到另一报文处理器,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序特征在于包括:
(a)指示所述报文处理器暂停所述多个会话线程的程序代码,
(b)指示所述报文处理器经过所述网络将所述会话部件对象发送到另一区域的程序代码,和
(c)指示所述报文处理器重新启动所述多个会话线程的程序代码。
20.一种介质,其中存储了将要装载到报文处理器的多个对象,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序特征在于包括:
(a)多个会话线程,
(b)一个智能体通信语言管理程序,该管理程序用于检测包含有目的地信息、会话线程标识信息和内容信息的报文分组,
(c)一个会话线程控制部件(c-1)和(c-2),其中控制部件(c-1)用于确定所述报文处理器中是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中不存在所述相应的会话线程时,控制部件(c-2)就产生一个新的会话线程,和
(d)一个协议管理程序,该管理程序将所述报文分组转换为与网络相对应的协议,其中所述报文处理器与该网络相连。
21.一种介质,其中存储了将要装载到报文处理器的多个对象,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序特征在于包括:
(a)一个智能体通信语言管理程序,该管理程序用于检测包含有会话线程标识信息的报文分组,和
(b)一个会话线程控制部件(b-1)和(b-2),其中控制部件(b-1)用于确定所述报文处理器中是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中不存在所述相应的会话线程时,控制部件(b-2)就产生一个新的会话线程,
22.一种介质,其中存储了将要装载到报文处理器的多个对象,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序特征在于包括:
(a)一个智能体通信语言管理程序,该管理程序用于检测包含有会话线程标识信息和内容信息的报文分组,和
(b)一个会话线程控制部件(b-1)和(b-2),其中控制部件(b-1)用于确定所述报文处理器中是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中存在所述相应的会话线程时,控制部件(b-2)就将控制传送到所述相应的会话。
23.一种介质,其中存储了将要装载到报文处理器的多个对象,该处理器具有一个会话线程控制部件并且与网络相连,其中会话线程控制部件能够产生多个会话线程,所述报文处理程序特征在于包括:
(a)一个协议管理程序,该管理程序用于接收包含有会话线程标识信息的报文分组,和
(b)一个会话线程控制部件(b-1)和(b-2),其中控制部件(b-1)用于确定所述报文处理器中是否存在与所述报文分组中包含的会话线程标识信息相对应的会话线程,当确定所述报文处理器中不存在所述相应的会话线程时,控制部件(b-2)就产生一个新的会话线程。
CNB98107975XA 1997-06-10 1998-05-08 报文处理方法和报文处理器 Expired - Fee Related CN1159653C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP152426/1997 1997-06-10
JP15242697A JP3883647B2 (ja) 1997-06-10 1997-06-10 メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
JP152426/97 1997-06-10

Publications (2)

Publication Number Publication Date
CN1201942A true CN1201942A (zh) 1998-12-16
CN1159653C CN1159653C (zh) 2004-07-28

Family

ID=15540267

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB98107975XA Expired - Fee Related CN1159653C (zh) 1997-06-10 1998-05-08 报文处理方法和报文处理器

Country Status (6)

Country Link
US (2) US8949309B2 (zh)
JP (1) JP3883647B2 (zh)
KR (1) KR100342726B1 (zh)
CN (1) CN1159653C (zh)
GB (1) GB2327516B (zh)
TW (1) TW455771B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1297895C (zh) * 2003-07-25 2007-01-31 英业达股份有限公司 电脑生产线整体控管系统及方法

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3883647B2 (ja) * 1997-06-10 2007-02-21 インターナショナル・ビジネス・マシーンズ・コーポレーション メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
US6330589B1 (en) * 1998-05-26 2001-12-11 Microsoft Corporation System and method for using a client database to manage conversation threads generated from email or news messages
US6851115B1 (en) * 1999-01-05 2005-02-01 Sri International Software-based architecture for communication and cooperation among distributed electronic agents
US7036128B1 (en) * 1999-01-05 2006-04-25 Sri International Offices Using a community of distributed electronic agents to support a highly mobile, ambient computing environment
US7110510B1 (en) * 1999-02-08 2006-09-19 Siemens Communications, Inc. System and method for handling of threaded messages
JP4256543B2 (ja) * 1999-08-17 2009-04-22 インターナショナル・ビジネス・マシーンズ・コーポレーション 表示情報確定方法及び装置、表示情報確定のためのソフトウエア・プロダクトを格納した記憶媒体
US20030014502A1 (en) * 2001-07-03 2003-01-16 Snider Gregory Stuart E-service communication method and system
US7668306B2 (en) 2002-03-08 2010-02-23 Intel Corporation Method and apparatus for connecting packet telephony calls between secure and non-secure networks
US7644118B2 (en) * 2003-09-11 2010-01-05 International Business Machines Corporation Methods, systems, and media to enhance persistence of a message
JP4507917B2 (ja) * 2005-02-28 2010-07-21 日本電気株式会社 セッション処理システム、セッション処理方法、及びプログラム
US20060253272A1 (en) * 2005-05-06 2006-11-09 International Business Machines Corporation Voice prompts for use in speech-to-speech translation system
US20070124728A1 (en) * 2005-11-28 2007-05-31 Mark Rosenbluth Passing work between threads
US20070274297A1 (en) * 2006-05-10 2007-11-29 Cross Charles W Jr Streaming audio from a full-duplex network through a half-duplex device
US9390396B2 (en) * 2006-12-04 2016-07-12 Excalibur Ip, Llc Bootstrapping social networks using augmented peer to peer distributions of social networking services
US20080154756A1 (en) * 2006-12-22 2008-06-26 Deudney Stan J Method and system for exchanging financial-transaction-related messages over a communications network
US8396493B2 (en) * 2007-02-28 2013-03-12 Yahoo! Inc. Network-based archiving for threaded mobile text messages
US8335682B2 (en) * 2007-10-30 2012-12-18 Sercomm Corporation Multi-language interfaces switch system and method therefor
US8977673B2 (en) 2008-08-29 2015-03-10 Red Hat, Inc. Information on availability of services provided by publish-subscribe service
MY152066A (en) 2008-09-30 2014-08-15 Chevron Usa Inc A 110 neutral base oil with improved properties
US9077750B2 (en) * 2009-02-27 2015-07-07 Red Hat, Inc. Using forums as a message transport in an enterprise service bus
JP5813183B1 (ja) 2014-07-02 2015-11-17 株式会社大武ルート工業 ネジ供給器のネジ切出機構
BR102015004521B1 (pt) * 2015-02-27 2023-09-26 Samsung Eletrônica da Amazônia Ltda. Método para comunicação entre usuários e dispositivos inteligentes
CN105975433B (zh) * 2016-06-30 2019-04-19 瑞斯康达科技发展股份有限公司 一种报文处理方法及装置
CN106528053B (zh) * 2017-01-04 2019-02-15 飞天诚信科技股份有限公司 一种终端设备高效率数据处理方法及其终端设备

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59157760A (ja) 1983-02-28 1984-09-07 Hitachi Ltd 並列推論方法
US5063500A (en) * 1988-09-29 1991-11-05 Ibm Corp. System for executing segments of application program concurrently/serially on different/same virtual machine
JPH03179527A (ja) 1989-12-08 1991-08-05 Mitsubishi Heavy Ind Ltd 協調分散型推論装置
DE69220093T2 (de) * 1992-06-18 1997-12-04 Ibm Verarbeitungsnetzwerk für verteilte anwendungsprogramme.
JPH06342375A (ja) 1993-01-18 1994-12-13 Personal Joho Kankyo Kyokai ヒューマンインタフェースのアーキテクチャモデル
US5608720A (en) * 1993-03-09 1997-03-04 Hubbell Incorporated Control system and operations system interface for a network element in an access system
JPH06332724A (ja) 1993-05-20 1994-12-02 Fuji Facom Corp オブジェクト指向型システムにおける論理的単位の実装方式、及び実行多重度制御方式、並びに実行優先度制御方式
US5603031A (en) 1993-07-08 1997-02-11 General Magic, Inc. System and method for distributed computation based upon the movement, execution, and interaction of processes in a network
CA2119085C (en) * 1994-03-15 2002-01-15 Deborah L. Pinard Adaptive communication system
GB2288477A (en) * 1994-04-05 1995-10-18 Ibm Communications system for exchanging data between computers in a network.
US5613114A (en) * 1994-04-15 1997-03-18 Apple Computer, Inc System and method for custom context switching
JPH07302235A (ja) 1994-04-30 1995-11-14 Nec Corp クライアント・サーバシステム
JP3696901B2 (ja) * 1994-07-19 2005-09-21 キヤノン株式会社 負荷分散方法
JP2849341B2 (ja) 1994-11-14 1999-01-20 株式会社エイ・ティ・アール通信システム研究所 対話処理装置
SE9404294D0 (sv) * 1994-12-09 1994-12-09 Ellemtel Utvecklings Ab sätt och anordning vid telekommunikation
US5640584A (en) * 1994-12-12 1997-06-17 Ncr Corporation Virtual processor method and apparatus for enhancing parallelism and availability in computer systems
US5576945A (en) * 1995-01-23 1996-11-19 Tandem Computers Incorporated Transaction monitor process with pre-arranged modules for a multiprocessor system
US5907675A (en) * 1995-03-22 1999-05-25 Sun Microsystems, Inc. Methods and apparatus for managing deactivation and shutdown of a server
US5758184A (en) * 1995-04-24 1998-05-26 Microsoft Corporation System for performing asynchronous file operations requested by runnable threads by processing completion messages with different queue thread and checking for completion by runnable threads
US5758354A (en) * 1995-04-28 1998-05-26 Intel Corporation Application independent e-mail synchronization
US5774668A (en) * 1995-06-07 1998-06-30 Microsoft Corporation System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing
US5956509A (en) * 1995-08-18 1999-09-21 Microsoft Corporation System and method for performing remote requests with an on-line service network
JPH09114723A (ja) * 1995-10-13 1997-05-02 Oki Electric Ind Co Ltd ワークデータオブジェクト管理システム
US5802265A (en) * 1995-12-01 1998-09-01 Stratus Computer, Inc. Transparent fault tolerant computer system
US5796934A (en) * 1996-05-31 1998-08-18 Oracle Corporation Fault tolerant client server system
US5884022A (en) * 1996-06-03 1999-03-16 Sun Microsystems, Inc. Method and apparatus for controlling server activation in a multi-threaded environment
US5961601A (en) * 1996-06-07 1999-10-05 International Business Machines Corporation Preserving state information in a continuing conversation between a client and server networked via a stateless protocol
US6144962A (en) * 1996-10-15 2000-11-07 Mercury Interactive Corporation Visualization of web sites and hierarchical data structures
US6208952B1 (en) * 1996-10-24 2001-03-27 Microsoft Corporation Method and system for delayed registration of protocols
US6233601B1 (en) * 1996-11-14 2001-05-15 Mitsubishi Electric Research Laboratories, Inc. Itinerary based agent mobility including mobility of executable code
US6130917A (en) * 1997-03-14 2000-10-10 Monroe; David A. Instant protocol selection scheme for electronic data transmission
US5892941A (en) * 1997-04-29 1999-04-06 Microsoft Corporation Multiple user software debugging system
US6535878B1 (en) * 1997-05-02 2003-03-18 Roxio, Inc. Method and system for providing on-line interactivity over a server-client network
JP3229240B2 (ja) * 1997-06-10 2001-11-19 インターナショナル・ビジネス・マシーンズ・コーポレーション メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
JP3883647B2 (ja) * 1997-06-10 2007-02-21 インターナショナル・ビジネス・マシーンズ・コーポレーション メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
JP3954689B2 (ja) * 1997-06-12 2007-08-08 インターナショナル・ビジネス・マシーンズ・コーポレーション メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
US6058426A (en) * 1997-07-14 2000-05-02 International Business Machines Corporation System and method for automatically managing computing resources in a distributed computing environment
US6081665A (en) * 1997-12-19 2000-06-27 Newmonics Inc. Method for efficient soft real-time execution of portable byte code computer programs
US6144989A (en) * 1998-06-15 2000-11-07 Dejima, Inc. Adaptive agent-oriented software architecture
US6745197B2 (en) * 2001-03-19 2004-06-01 Preston Gates Ellis Llp System and method for efficiently processing messages stored in multiple message stores
US7082604B2 (en) * 2001-04-20 2006-07-25 Mobile Agent Technologies, Incorporated Method and apparatus for breaking down computing tasks across a network of heterogeneous computer for parallel execution by utilizing autonomous mobile agents
US20030093419A1 (en) * 2001-08-17 2003-05-15 Srinivas Bangalore System and method for querying information using a flexible multi-modal interface
US7096470B2 (en) * 2002-09-19 2006-08-22 International Business Machines Corporation Method and apparatus for implementing thread replacement for optimal performance in a two-tiered multithreading structure
US8001184B2 (en) * 2006-01-27 2011-08-16 International Business Machines Corporation System and method for managing an instant messaging conversation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1297895C (zh) * 2003-07-25 2007-01-31 英业达股份有限公司 电脑生产线整体控管系统及方法

Also Published As

Publication number Publication date
US20010013051A1 (en) 2001-08-09
TW455771B (en) 2001-09-21
US7512660B2 (en) 2009-03-31
GB9812142D0 (en) 1998-08-05
KR100342726B1 (ko) 2002-08-22
JPH1115667A (ja) 1999-01-22
GB2327516B (en) 2000-06-28
US20050190761A1 (en) 2005-09-01
JP3883647B2 (ja) 2007-02-21
US8949309B2 (en) 2015-02-03
CN1159653C (zh) 2004-07-28
KR19990006438A (ko) 1999-01-25
GB2327516A (en) 1999-01-27

Similar Documents

Publication Publication Date Title
CN1159653C (zh) 报文处理方法和报文处理器
CN1167015C (zh) 报文处理方法和报文处理器
CN1142489C (zh) 信息处理方法和服务器
CN1280716C (zh) 计算机处理方法、分布式计算方法和网络计算方法
CN1096027C (zh) 线程管理系统及免删事件、删除实体和建立分发表的方法
CN1252612C (zh) 信息终端的通信方法、通信系统和接入服务器的方法
CN1221088C (zh) 通信控制系统、通信控制方法、服务控制站和通信控制站
CN1677979A (zh) 通过网络在计算机之间共享对象的系统和方法
CN1043176C (zh) 一种电信交换系统
CN1149492C (zh) 遥控方法和服务器
CN1235389C (zh) 图像信息分布方法及系统、中央和终端设备及扫描仪
CN1661598A (zh) 协作服务器,协作系统,及协作服务器和系统用方法和程序
CN1681250A (zh) 存在信息提供系统及其方法和服务器
CN1967488A (zh) 任务分配方法和任务分配装置
CN101076060A (zh) 一种聊天机器人系统及自动聊天方法
CN1359495A (zh) 在安全分布式处理系统中的集团型企业javatm
CN1219266C (zh) 一种实现多路对话的人-机汉语口语对话系统的方法
CN1460212A (zh) 使用协议无关控制模块引导和管理应用程序及业务服务器的媒体对话构架
CN101047662A (zh) 实现单账号多身份即时消息通信和存在业务的方法及系统
CN1567902A (zh) 网络访问系统
CN1841328A (zh) 脚本语言的自动机方法
CN1229728C (zh) 具有会话管理和分布式管理功能以及相应的操作管理机制的web应用系统
CN1254885A (zh) 信息处理方法、装置及存储信息处理程序的存储介质
CN1144004A (zh) 多个客户机共有的数据库系统、数据更新方法及面向文字处理装置的应用
CN1870028A (zh) 工作流程系统、工作流程处理方法和工作流程处理程序

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20040728

Termination date: 20100508