本发明克服所述的现有技术问题。本发明的第一个目的是就数据和时间而论,能够重建源和目的节点之间的信息交换。通过计日期单元实现时间重建。通过比较代表着对信息交换的可能解释的预定数据实现数据重建。
本发明的第二个目的是在重建应用序列时提供一种公用通信网络上的所述应用序列的安全可靠的验证工具。
本发明的另一个目的是监视并记录在通信网络上运行的应用中可能出现的错误,在该通信网络中数据被监视并且被解释。
本发明的另一个目的是实现记录,以用于管理目的、计费目的以及被监视的和被解释的数据交换的安全目的。
本发明提供一种用于监视和解释网络数据传输系统中的应用协议的设备,其包括:
-位于和OSI第2层相应的某层中的一个数据分组监视部件,所述数据分组包括控制帧和信息帧,其中控制帧和信息帧包含一个标题部分和一个本体部分,所述标题部分使得能区分信息帧和控制帧;
-一个控制单元,其接收来自该监视部件的作为输入的数据,并且包括用于鉴别控制帧和信息帧的装置;
-一个计日期单元,其和该控制单元连接并且把控制帧和信息帧与监视时间联系起来;
-一个已鉴别数据存储单元,其存储控制帧、信息帧以及它们的监视时间,它和控制单元双向连接;以及
-一个和控制单元双向连接的预定数据存储单元,所述预定数据表示对鉴别数据存储单元中所容纳的信息帧或控制帧的可能解释,并且通过该控制单元可和存储在已鉴别数据存储单元中的信息帧或控制帧的本体部分中所容纳的数据比较,从而允许:
-根据时间和通信类型,对控制帧的及信息帧的本体部分排序;以及
-根据通信类型重建包含着统计信息的树结构(多协议重建),以用于通信验证并且监视可能的异常。
此外,提供一种用于监视和解释网络数据传输系统中的应用协议的方法,其包括下述步骤:
-在和OSI第2层相对应的某层上监视数据分组,所述数据分组包括控制帧和信息帧,其中控制帧和信息帧包含一个标题部分和一个本体部分,所述标题部分使得能区分信息帧和控制帧;
-鉴别控制帧和信息帧;
-把监视时间和控制帧以及信息帧联系起来;
-把鉴别出来的控制帧、信息帧和它们的监视时间一起存储起来;以及
-存储表示对信息帧或控制帧的可能解释的预定数据,所述预定数据可和已存储的鉴别出来的信息帧的和控制帧的本体部分中所容纳的数据比较;
-根据时间和通信类型,对控制帧的及信息帧的本体部分排序;以及
-根据通信类型重建包含着统计信息的树结构(多协议重建),用于通信验证并且监视可能的异常。
在附属权利要求书中提供本发明的其它特性。
从而,根据本发明的设备和方法可以分析ISO/OSI标准的每一层,直至应用层以及其它标准的类似层。以这种方式,有可能重建某时间间隔中在远程处理机中运行的应用程序之间发生的信息交换。
根据本发明的设备和方法是以“透明”方式运行的,因为源和目的之间的数据传输不受对同一数据的监视及相继解释的影响。
根据本发明的设备和方法还可在无线电信网络上运行。
下面参照一种优选实施例以非限制性示例的方式说明本发明。
将引用各附图,附图是:
参照OSI标准,网络中的通信单元是分组。分组进而又分为多个帧。每个帧的开始和结尾通常用定界字符确定。帧又为成信息帧和控制帧。信息帧传输和要通过网络发送的报文有关的数据,而控制帧处理所述传输的调节方式,即流控制以及启动错误恢复动作。信息帧和控制帧都包括一个标题部分和一个本体部分,标题部分确定帧类型,本体部分典型地是帧本身。
现参照图2说明信息帧的结构。在图2的上部,示意描述OSI第2层分组的一般结构,其包括信息帧1和控制帧2。单个信息帧(OSI第3层)是由标题部分3和本体部分4构成的,标题部分3包含该帧为信息帧的标识。本体部分(OSI第4至7层)包括实际报文5和多个字段6,这些字段典型地是所使用的特定应用语法,在该图中用字符C1、C2和C3示例表示。应用语法是和所含有的多个字段的数量、每个所述字段的含义以及其中容纳的数据有关的信息。
现参照图3。图3示出源节点7和目的节点8,并且示出在其处监视并解释数据的网络部分中的终端。通过二个所述节点之间的用箭头F3、F4、F5、F6以及传输介质23示意表示的连接,双向传播和源节点7的第一组源处理机(图4未示出)上行比特流与目的节点8的第二组目的处理机(图中未示出)下行比特流之间的多个通信相关的数据。
本发明借助数据监视部件9监视所述数据。市场上周知几种这样的监视部件,例如加拿大Sangoma公司制造的S508卡。这种卡可运行在不同的OSI第1层(物理层)标准下,例如RS232(或V.24)标准或者RS422(或V.35)标准。所述卡可以一起运行的OSI第2层和第3层标准例如HDLC标准和X.25标准。然而,可以根据需要运行哪一种OSI第1层或第2层标准,改变本发明的目的所选用的数据监视部件9的类型。事实上,有可能采用在不同于OSI第2层的标准下,例如“帧中继”或SDLC或者BSC等,工作的监视部件。熟练的技术人员对所述部件是周知的,从而本文不作详细说明。
通过二个图中示意示出的并行连接器10和11,以在不影响从源节点到目的节点的传输以及与此相反的传输下,分别监视来自源节点7和来自目的节点8的数据,“透明地”进行监视。图中用虚线框表示的监视部件9包括一个源数据接收器12、一个目的数据接收器13和一个连接接口14。如用箭头F7示出的那样,源数据接收机12只能接收来自源节点7的数据;另一方面,如用箭头F8示出的那样,目的数据接收器13只能接收来自目的节点8的数据。在OSI第2层,来自源节点的数据包含标识源的代码,而来自目的节点的数据包含标识目的的代码。从而源数据接收机12和目的数据接收机13可以容易地辨别这二种不同类型的数据。以这样方式接收到的数据被发送到连接接口14,如箭头F9和F10所示。
由监视部件9读出的位于与OSI第2层相对应的某层上的每个数据分组被传送到控制单元15,如箭头F11所示。后面会详细说明控制单元15的操作。借助计日期单元16把每个所述分组和读出时间联系起来,为便于说明计日期单元16出现在控制单元15的外面并如所示用箭头F12连接。这种计日期单元16可以是任意一种常用部件,尤其是无线电部件或卫星部件。在本发明的优选实施例中,采用由同步卫星广播CET(欧洲中部时间)调整的无线电控制数字时钟。
除了由计日期单元16联系读出时间之外,控制部件15还区分信息帧和控制帧。例如,若在HDLC语言下进行信息传输,信息帧的标题部分的最后一位为0,而控制帧的标题部分的最后一个位为1。从而,在控制单元15的内部存在着图中未示出的装置,用来辨别所述最后一位,该装置例如是ROM中所包含的一个固件。在任何情况下,不论采用何种数据传输代码,总有可能设置所述辨别装置,用于辨别控制帧和信息帧。这种辨别使得能够存储去掉其标题部分只包含其本体部分的单个信息帧,从而包含着其特定应用语法所使用的典型信息以及要发送的报文。
在已辨别数据存储单元17内存储带有监视时间并且已划分成信息帧或数据帧的数据,如箭头F13所示,该存储单元17和控制单元15双向连接。还存在一个和控制单元15双向连接的预定数据存储单元18。所述预定数据代表对已辨别数据存储单元17中所含有的信息帧或控制帧的可能解释。后面将参照其它附图说明它们的使用。箭头F14指示预定数据存储单元18和控制单元15之间的连接。
现参照图4,图中示出一个流程图,以表示控制单元15对已辨别数据存储单元17中所存储的信息帧执行的操作。应理解,通过诸如授予合格用户的口令、加密和解密代码、标记阅读器等的权限和特权管理系统可以选择性地限制对些信息帧的访问。
第一步骤S1表示由监视部件9读取各个分组。第二步骤S2表示前面说明过的由控制单元15执行的区别信息帧和控制帧,以及关联上监视时间。
对于非应用性的低层控制帧,还可以在步骤S3执行统计处理。现在不详细说明所述统计处理;在本说明的结尾处所出现的各种模式将会变为清楚。这种处理的最终结果将提供一个控制帧列表,并报告各种所述帧出现的数量。
对于信息帧,流程进入步骤S4,其中根据它们专用的应用语法重建各个信息帧。出于所述重建的目的,必须知道单个信息帧的应用语法结构。事实上,它们包含在参照前面的图3说明的预定数据存储单元18内。所述单元18例如在一个文本文件中包含信息帧或控制帧的各种可能解释的形式抽象说明。所述数据表示根据它们可以构造单个信息帧的本体部分的各种方式,例如,机器传输码(即,与源或目的传送的信息帧有关),通道数量(即,与源节点的专用处理机上行比特流或者与目的节点的专用处理机下行比特流有关),协议号,数据处理号等。所述单元18当然可以包含此刻要重建的信息帧的几种应用协议的语法。
通过依次使各个信息帧的本体部分和单元18中的每一个抽象模型进行比较,一个一个地得到信息帧的重建。
除此之外,可以重建某确定源处理机和某确定目的处理机之间发生的不同应用序列,即,根据通信时间和类型排序。在本发明中,应用序列意味着单次通信期间在某确定源处理机和某确定目的处理机之间交换的所有信息帧。在步骤S5中排序的应用序列将包括仅根据时间准则而不是根据逻辑准则排序的各个信息帧。通过前面步骤S2中进行的时间关联有可能按时间排序。
为了还对某特定应用序列内的数据进行逻辑排序,存在一组指导源和目的之间的数据交换的应用规则是有用的,尽管不必非要如此。所述应用规则,典型地即某确定处理机和某确定目的处理机之间的特定会话类型,必须是预先确定的,而且已收集在预定数据存储单元18中。所述应用规则是一系列对已辨别数据存储单元17中所包含的信息帧序列的可能解释。
下面用表1给出这样的应用规则的一个示例,其中引用一个源和一个目的之间的通信,该源代表一个希望通过终端对大学注册的学生(客户),该目的(服务器)代表学生希望注册的大学。
表1
1:AS?FDB 15AS?FDB 5AS?FDB0按常规得到注册预约 |
1:AS?FDB 13AS?FDB0客户的状态非常规 |
………… |
………… |
………… |
所述表的每一行是一条应用规则,即表示源和目的之间的一种可能的数据交换应用序列。下面说明每条应用序列的含义。例如,第一行表示信息帧的下述序列:
-源(AS)询问(?)目的;
-目的(FDB)用活动号15回答;
-源(AS)再次询问(?)目的;
-目的(FDB)用活动号5回答;
-源(AS)询问(?)目的;以及
-目的(FDB)用活动号0回答。
该会话结束时得到的结果是,常规地获得大学注册预约。表1的结构仅是示例性的,并且也可以用具有一些分支的树结构表示,分支的数量取决于所提供的应用序列的数量。每条向下的至某个树叶的路径表示某特定的应用序列,即,源和目的之间的某特定会话,亦即源和目的之间的特定信息帧序列。
应用规则的数量可以为任意多个。所设置的应用规则的数量越多,把通过与图3的存储单元18中所包含的某特定应用规则进行比较而发现的明确定义的逻辑含义和步骤S5中暂时重建的各应用序列关联起来的机会越大。从而,以这种方式,有可能验证此刻正在进行比较的特定应用序列的正确或异常。
在图4的步骤S6中,控制单元15首先验证能否使用这样的应用规则。假定知道所述应用规则,则根据步骤S7中的选择,流程进入步骤S8或进入步骤S9。步骤S8简单地分类应用序列。事实上,每个应用序列被分类成属于应用规则树中的各种可能的路径中的某条特定路径。后面会参照图5更详细地说明步骤S8。
另一方面,在步骤S9中重建该设备在预定时间间隔内监视的所有应用序列的逻辑路径。后面会参照图6更详细地说明所述步骤S9。
即使未提供一系列的应用序列,根据本发明的设备仍能重建应用序列的逻辑路径。在这种情况下,流程进入步骤S10,这也会在后面说明。
现参照图5,该图对前面参照图4说明的步骤S8提供更详细的说明。
首先在步骤S11选择要受到比较的单个应用序列。在相继的步骤S12中,从被选出的应用序列中选择用于比较目的的表征要素。在前面表1中所说明的大学注册的例子中,所述表征要素可以是:源处理机的标识号,需要注册操作的用户的标识号,源提供的数据以及目的提供的数据。在步骤S13中,所考虑的应用序列的表征要素和上述表1中的某应用规则比较,以搜索可能的对应。若找到这样的对应,则流程进入步骤S14,其中报告所述对应并且在解释结果中要考虑到该对应。接着流程选择另一个序列并且重新执行步骤S11。若在步骤S13未找到对应,则控制单元15进行下一条规则的步骤S15,若(步骤S16)存在其它可比较的规则,则控制单元再次执行步骤S13的比较。若未找到其它规则,则控制单元在步骤S17报告异常。这种异常可能择一地意味着:
-一种不应该出现的序列(真正的异常);或者
-一种因错误而未插入到应用规则树内的序列。
在每一种所述事件中,对于验证被检查的网络部分中再现的各类应用序列,找出这样的异常当然是有用的。
现参照图6,该图对图4中所说明步骤S9给予更详细的说明。
步骤S18和S19类似于前面参照图5所作的说明分别选择单个应用序列和它的表征要素。步骤S20表示该应用序列和预定数据存储单元18内所含有的预置应用规则的比较。若找到对应,则流程进入步骤S21,其中通过更新有关的统计字段对所找到的对应予以考虑。相继地重复步骤S18-S20,直至对序列的尾部进行分类。若未找到对应,则该要分类的应用序列是新的;它可以是一个异常或者简单地是一个未期待的序列,在该事件下,流程进入步骤S22,以初始化和该特殊序列相关的统计字段。此外,还把该新序列放到预置序列表中,在步骤S20中使用该表进行比较。在前面的图3中用箭头F14的双重指示表示这一点。以这种特殊的识别方式可以验证所述特证序列,即可能的异常。除此之外,在该情况下仍重复步骤S18-S20,直至到达要分类的序列的结束。具体地,除了每条树枝的交叉数量外,该方式也可能监视不交叉的分支。
在不存在应用规则的预置序列的情况下,控制单元总是有可能重建被控网络部分中出现的通信应用(图4中的步骤S10)。在这样的事件下,每个被分析的应用序列不是和预置序列比较,而是和以前分析过的序列比较,这些以前分析过的序列充当用于和以后要分析的序列进行比较的预定数据。从而,通过把信息帧的每个本体部分与其它信息帧的本体部分相互比较,重建包含着统计信息的树结构。在这种情况下,还可构造树并且有可能知道各分支的交叉数量。很明显,在这种情况下不可能监视不交叉的分支,因为不具有存在着所述分支的先有知识。
最后,参照图7A和7B,其中分别表示一个信息帧结构的示例以及一个通过根据本发明的设备得到的包含着统计信息的树结构的示例。
在图7A中可注意到四个不同的字段:第一字段19,表示源处理机或目的处理机的名字;第二字段20,表示监视的时间间隔期间的连接次数;第三字段21,表示每次连接的平均时间长度,例如按毫秒计算;以及第四字段22,表示所执行的活动的代码。
图7B表示重建的树。树中的第一要素E1表示AS(源)连接20次,平均连接时间为0毫秒(简单地打开和目的的连接),并执行代码为0的活动。第二要素E2,即E1的唯一的“儿子”,表示在所有这20次连接中FDB(目的)用代码为20的活动回答,平均连接时间为737毫秒。存在二种行动方式。AS18次(要素E3)用活动0回答,2次(要素E4)用活动1回答。该树用其它要素继续,这些要素的含义通过语境阐明。所展示的树是在图4的步骤S9或S10下运行的逻辑排序结果。
请注意,在图4的步骤S4中监视每个要素的字段19和22的内容。对不同要素之间的连接的监视,即要素E2是E1的“儿子”的事实以及E3和E4是E2的“儿子”的事实,是在图4中的步骤S9或者步骤S10中进行的。
现已参照不作为限制性示例的优选实施例的一些形式说明了本发明。例如,可理解有可能根据本发明在线路不同部位上设置若干设备提供一种应用。
此外,还应理解,在本申请的保护范围内存在其它可能的实施例以及服务类型。