CN1708017A - 协议仿真器 - Google Patents

协议仿真器 Download PDF

Info

Publication number
CN1708017A
CN1708017A CNA2005100557923A CN200510055792A CN1708017A CN 1708017 A CN1708017 A CN 1708017A CN A2005100557923 A CNA2005100557923 A CN A2005100557923A CN 200510055792 A CN200510055792 A CN 200510055792A CN 1708017 A CN1708017 A CN 1708017A
Authority
CN
China
Prior art keywords
protocol
field
message
value
name
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.)
Pending
Application number
CNA2005100557923A
Other languages
English (en)
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.)
Agilent Technologies Inc
Original Assignee
Agilent Technologies Inc
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 Agilent Technologies Inc filed Critical Agilent Technologies Inc
Publication of CN1708017A publication Critical patent/CN1708017A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/20Network management software packages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/251Translation of Internet protocol [IP] addresses between different IP versions

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种协议仿真系统,其至少包括一个用通用格式描述协议消息中的字段的描述。应用将所述至少一个描述转变成机器可读的模板,所述模板可由基于所述模板创建协议消息的协议有限状态机使用。

Description

协议仿真器
技术领域
本发明涉及协议仿真器。
背景技术
对诸如路由器的网络设备进行广泛的测试,来确保将错误的传输和致命的错误最小化。市面上可获得多种测试设备,包括来自安捷伦科技(本申请的受让者)的ROUTER TESTER(路由器测试仪)。这种测试设备一般监控对多种模拟输入的路由器响应。
可以将路由过程很快地总结为节点寻找到每个可能的目的地的路径。在从层1(物理层)以上,路由无所不在。但是,大多数人所熟悉的路由发生在层3(网络层)处,同样地,这里将只引用层3(并且更具体地)因特网协议(IP)路由。路由器使用表来确定将分组转发向何处。更新这些表是由路由协议执行的功能。
路由协议有助于在遍布全球的多个路由器之间交换路由信息,通过每个路由器的异构的(虽然通常是一致的)路由表,所述路由信息提供了网络的公共视图。路由表存储路由器到达网络上的每个目的地所必需的所有信息,而不管网络有多大。有很多种路由协议被用来为整个网络中的路由表分发信息,包括BGP、OSPF、RIP和ISIS。常常扩展旧协议,并且不断地创建新协议以图提高协议的性能。一般来说,新协议最初是由装备制造商开发的,并且本质上是私有的。这些协议随后常常被产业上的标准团体所采纳。
已知的路由器测试仪利用专门创建的数据“测试分组”来模拟网络流量,其中所述数据“测试分组”是网络上出现的典型的活数据。将这些测试分组通被测的网络传输到网络设备。由流量模拟器系统(包括ROUTERTESTER)测试的参数包括路由验证、加载情况下达到的服务质量(QoS)水平和与其他设备正确的交互工作。这些所谓的“分组突发(packet balster)”中的许多也通过根据协议定制并传输数据,来测试网络设备与协议一致的能力。这种消息称为协议消息。
图1是流量模拟器测试系统100的方框图。更具体地说,该流量模拟器测试系统100是由安捷伦科技提供的ROUTER TESTER的一般代表。路由器测试仪只是路由器测试系统的一个示例,具体地说,其被宣称为多端口流量生成、协议仿真和分析测试系统,该系统用于对企业、城域/边缘、核心路由和光纤网络的设备的性能进行验证。该系统一般包括连接到被测系统的多个协议仿真卡102n,在这种情形中所述被测系统是路由器104。每个协议仿真卡102n一般包括具有相关的存储器和I/O的处理器。由例如运行视窗环境的PC的计算机106控制协议仿真卡102n。计算机106对例如图形用户界面的接口108作出响应。
根据通信协议的规则和解释(例如那些由工业界的许多标准团体所定义的),构建由协议仿真卡102n产生的测试分组和协议消息。一般来说,在路由器之间的握手过程中使用与任何给定的协议相关联的大多数协议消息。由于握手过程适于已定义的状态,所以大多路由器和协议仿真器使用有限状态机来对各种协议消息作出响应。
当前与流量模拟器测试系统相关联的软件体系结构要求对协议仿真解决方案的所有部分硬编码,其中所述协议仿真解决方案的所有部分包括图形用户界面、脚本API、配置和控制组件,以及协议状态机自身。要求为每种协议硬编码导致使用大量人力来创建大代码体。
由于引入新协议或者对其进行扩展的步伐越来越快,所以及时发布测试套件变得越来越困难。对协议仿真的每种新的变化或添加都要求修改源代码并随后重新编译。协议测试仪的客户已经常常要求能够修改协议仿真来帮助测试尚未发布的协议或者协议的扩展。可行的是,这种修改不应当要求重新编译系统。
某些可获得的协议仿真器通过使用可以被添加到协议消息上的用户定义对象,的确允许某些定制。然而,这种定制是十六进制代码的形式,要求用户熟悉某些时候是神秘的代码。此外,这样定义的对象是静态的,这是因为它们在激励网络的过程中不能改变。对象局限于作为主协议消息的扩展,这意味着消息的主体是不能改变的。
现在正在努力设计可以在软件外配置的通用系统。名为“构建数据分组”(Building packets of data)的同时待审的美国专利申请序列号No.:10/266,507、公开号No.:US20040068681 A1的专利申请中描述了一种示例。在这里合并参考了US20040068681 A1,其使用外部XML协议描述来驱动通用PDU编解码引擎。
因此,本发明的发明者已经认识到需要新的装置和方法,所述装置和方法使得用户能够在不要求重新编译的情况下将新的能力添加到协议仿真,并且在用户看起来象系统的无缝部分。
发明内容
本发明提供了一种协议仿真系统,该系统包括:至少一个用通用格式来描述协议消息中的字段的描述;将所述至少一个描述转变成机器可读模板的应用;以及基于所述模板创建协议消息的协议有限状态机。
本发明还提供了一种用于控制协议仿真器的方法,该方法包括:创建用于控制所述协议仿真器的数据的结构的描述,用对于多种协议通用的语言形成所述描述;使用所述描述创建所述数据结构的参考模型;用至少某些用户提供的数据创建所述参考模型的实例;使用所述实例来创建模板,所述协议仿真器响应于所述模板,以创建协议消息;以及将所述模板传送到所述协议仿真器。
本发明还提供了另一种控制协议仿真器的方法,该方法包括:创建由所述协议仿真器使用的至少一个消息的可扩展标记语言描述;将所述描述的图形显示呈现给用户;准许所述用户调整所述描述的多个字段中的值;以及基于所述描述和由所述用户调整的所述值,创建用于控制协议有限状态机的模板。
附图说明
结合附图,从下面的对本发明的某些实施方式的详细描述可以理解本发明,其中:
图1是协议仿真测试系统的方框图。
图2是根据本发明优选的实施方式用于建立协议消息的体系结构的方框图。
图3是根据本发明实施方式构建的图形用户界面的屏幕快照。
在下文中包含的描述中,紧邻元素标识符使用小写字母“n”标注元素的非特定实例,而不是如在说明书中用紧邻元素号的非斜体字母所讨论的特定元素,或者用没有修饰符的元素号自身所讨论的所有实例的一般集合。
具体实施方式
现在将对本发明的实施方式进行参考,在附图中图示了实施方式的实施例,其中在所有的附图中相同的标号指相同的元件。以下详细描述提出了可以由例程和数据位的操作的符号表示来实现的方法,其中所述例程和数据位在计算机可读介质、关联处理器、数据生成和采集卡等之内。这里,例程通常被认为是导致期望的结果的步骤或者动作的序列,同样地,其包含例如“程序”、“对象”、“函数”、“子例程”和“过程”等专门术语。这些描述和表示是本领域的技术人员用来向本领域的其他技术人员有效地传达其工作的实质的手段。为了方便,在下文中的说明和权利要求中,将词语“网络”用来指下述任何一个或多个:通信网络、网络设备、任何其他通信设备和通信系统的可以用测试数据分组测试的一个或多个方面。
虽然描述了包括有在下述路由器测试仪上实现的方法的实施方式,所述路由器测试仪具有与安捷伦ROUTER TESTER相似的配置。但是,这里叙述的方法可以在多种路由器测试仪中的任何一种上运行。更中肯地说,这里提出的方法并不内在地与任何具体的设备相关;相反,可以与根据这里的教导的例程一起使用各种设备。具体地说,尽管这里描述路由器测试功能,但是这里描述的用于将数据从一个设备传送到另一个设备的方法一般适用于数据通信领域。可以执行这里描述的功能的机器包括由下述公司制造的机器,所述公司例如是安捷伦技术有限公司、惠普和泰克电子有限公司,以及其他通信装备制造商。
至于这里描述的软件,本领域的一般技术人员将识别出存在多种平台和语言,用于创建软件来执行这里概述的过程。可以用包括C++在内的C的多种变种中的任何一种实现本发明的实施方式。然而,本领域的技术人员也认识到,选择确切的平台和语言常常由所构建的实际系统的特性规定,所以可以在一类系统上工作的在另一类系统上可能无效。也应当理解,这里所描述的例程和计算并不限于作为计算机上的软件而被执行,而是也可以在硬件处理器中实现。例如,可以利用多种设计工具,在ASIC或者在FPGA中用HDL(硬件设计语言)实现例程和计算。
申请人已经确定协议仿真的某些部分适于以通用方式定义,而其他组件可能由于可扩展性和性能原因而更适于硬编码。通过允许对那些可以以通用方式定义的部分进行现场定制,给予客户对协议仿真额外的控制和扩展测试的能力。为了便于客户互动,可以用易于阅读的文件格式来呈现通用定义的部分,所述格式例如是XML。这种XML文件可以用来形成图形接口,通过其可以浏览对在XML文件中描述的消息的修改。这种信息将用来建立可由具体协议仿真的有限状态机所理解的定义。
图2是根据本发明的优选实施方式用于建立协议消息的协议仿真系统200的方框图。体系结构200一般包括主机202和协议仿真器204。主机202一般实现为对图形用户界面206和应用208作出响应的计算机。尽管在图2中示出了多个应用208n,但是应当理解,依赖于本发明的确切实现,应用208n可以物理地或逻辑地实现为单个应用,或者任何数目个应用。协议仿真器204一般包括协议有限状态机210,其响应于至少一个模板212,以产生协议消息。计算机202一般充当向协议仿真器204提供指令的客户机,协议仿真器204一般充当对计算机202的指令作出响应的服务器。
协议消息描述215(用主机202本地存储或者在远程位置存储)至少包含一个所有或者某些字段和字段关系的描述215n,所述字段和字段关系用于所选择的协议消息类型和伴随的协议参数选项。协议消息描述215n用通用格式(例如字段描述215的格式不随协议而变)表示整个协议数据单元或者它的一部分。可以应用协议消息描述215的消息的示例包括:BGP4更新消息、OSPF链接状态更新分组、ISIS链接状态分组、RIP更新消息、LDP标签映射消息、LDP标签请求消息、RSVP路径消息、PIM加入或注册消息和IGMP成员关系报告。
用于给定协议的协议消息描述215n可以用具有属于该协议的通用属性的协议描述符开始,随后是许多字段描述符,每个描述字段可以存在于根据协议创建的消息中。字段描述符可以包含多种属性信息。
例如,可以指定全名以和与字段相关联的值一起显示。在值自身方面,可以提供诸如长度、格式和初始值的属性。为了进一步增强协议消息描述215的用途,可以提供关于如何使消息(根据协议消息描述215建立的消息)的字段值在拷贝之间改变的指令。在特定消息中重复出现的字段的情况下,可以提供关于如何使字段值随实例而改变的指令。例如,可以提供递增值来调整在一串网络可达性指示符之一中的IP值前缀。
如果XML用作描述语言,则可以用标签实现描述符,标签可以以已知的方式嵌套来提供层次结构。这种层次结构帮助动态创建图形用户界面,其通过数据结构提供快捷、轻松的导航。
可以根据这里结合作为参考的美国专利申请10/266,507(在US2004/0068681 A1中公开的)的一般教导形成协议消息描述215。表1包含用于BGP4更新消息的协议定义的示例。表1中示出的数据结构将协议消息描述215n的示例提供为用XML实现,并且本领域的普通技术人员可以从其中提取结构和目的,以使得能够创建用于其他消息和其他协议的其他协议定义。
                            表1<?xml version=″1.0″standalone=″yes″?><ProtocolSet xmlns=″x-schema:AgtPduSchema.xml″version=″1″providedBy=″Agilent Technologies″><!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --><!--           通用PDU建立者                                                                            --><!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --><!-- 文件类型:协议定义                                                                                 --><!-- 内容:BGP4更新消息                                                                                 --><!-- 版权,2004安捷伦科技                                                                               --><!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --><!-- 版本历史:                                                                                         --><!-- 0.1:2004年5月-原型                                                                                --><!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --><!-- ===================================================================== --><protocol name=″BGP4 Update″
shortName=″BGP4 Update Message″
fullName=″Border Gateway Protocol Version 4 Update Message″
instance=″primary″
standard=″RFC 1771″
sequence=″header path_attributes network_layer_reachability″><field name=″header″
fullName=″Header″
instance=″primary″
sequence=″marker length update_type no_withdrawn_routes″><field name=″marker″
fullName=″Marker″
length=″128″
value=″0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF″
format=″hex″/><field name=″length″
fullName=″Length″
length=″16″
format=″integer″/><field name=″update_type″
fullName=″Message type″
length=″8″
format=″integer″
value=″2″/><field name=″no_withdrawn_routes″
fullName=″Unfeasible routes length″
length=″16″
value=″0″
format=″integer″/><field name=″ipv4_address_prefix″
fullName=″IP address prefix″
instance=″repeat″
pad=″octet″
sequence=″prefix_length prefix″/><field name=″prefix_length″
fullName=″Prefix length(bits)″
length=″8″
format=″integer″/><field name=″prefix″
fullName=″Prefix″
lengthRef=″prefix length″
     lengthMultiplier=″1″
     defaultLength=″24″
     format=″hex″/>
 <field name=″path_attributes″
     fullName=″PATH attributes″
     select=″no_path_attributes has_path_attributes″default=″no_path_attributes″/>
 <field name=″no_path_attributes″
     fullName=″Total PATH attribute length″
     length=″16″
     value=″0″
     format=″integer″/>
 <field name=″has_path_attributes″
     fullName=″PATH attributes″
     sequence=″total_path_attribute_length path_attribute_data″/>
 <field name=″total_path_attribute_length″
     fullName=″Total PATH attribute length″
     length=″16″
     format=″integer″/>
 <field name=″path_attribute_data″
     fullName=″PATH attributes″
     lengthRef=″total_path_attribute_length″
     lengthMultiplier=″8″
     sequence=″path_attribute″/>
 <field name=″path_attribute″
     fullName=″PATH attribute″
     instance=″repeat″
     sequence=″attr_flags attr_type attr_length attr_value″/>
 <field name=″attr_flags″
     fullName=″Attribute flags″
     format=″binary″
     length=″8″
     flags=″Optional Transitive Partial Extended_Length Null Null NullNull″/>
 <field name=″attr_type″
     fullName=″Attribute type code″
     format=″integer″
     length=″8″>
     <enum value=″1″name=″ORIGIN″/>
     <enum value=″2″name=″AS PATH″/>
     <enum value=″3″name=″NEXT HOP″/>
     <enum value=″4″name=″MULTI EXIT DISC″/>
     <enum value=″5″name=″LOCAL PREF″/>
     <enum value=″6″name=″ATOMIC AGGREGATE″/>
     <enum value=″7″name=″AGGREGATOR″/>
     <enum value=″14″name=″MP_REACH_NLRI″/>
     <enum value=″15″name=″MP_UNREACH_NLRI″/>
 </field>
 <field name=″attr_length″
     fullName=″Attribute length″
     select=″normal_length extended_length″default=″normal_length″/>
 <field name=″normal_length″
     fullName=″Attribute length(1 byte)″
    length=″8″
    format=″integer″/>
<field name=″extended_length″
    fullName=″Attribute length(2 bytes)″
    length=″16″
    format=″integer″/>
<field name=″attr_value″
    fullName=″Attribute data″
    lengthRef=″attr_length″
    lengthMultiplier=″8″
    select=″origin as_path next_hop multi_exit_disc local_prefatomic_aggregate aggregator″
    default=″as_path″/>
<field name=″origin″
    fullName=″ORIGIN value″
    selectRef=″attr_type″
    selectValue=″1″
    length=″8″
    format=″integer″>
    <enum value=″0″name=″IGP″/>
    <enum value=″1″name=″EGP″/>
    <enum value=″2″name=″INCOMPLETE″/>
</field>
<field name=″as_path″
    fullName=″AS PATH″
    selectRef=″attr_type″
    selectValue=″2″
    sequence=″path_segment″/>
<field name=″path_segment″
    fullName=″Path segment″
    instance=″repeat″
    sequence=″ps_type ps_length ps_value″/>
<field name=″ps_type″
    fullName=″Path segment type″
    length=″8″
    format=″integer″>
    <enum value=″1″name=″AS_SET″/>
    <enum value=″2″name=″AS_SEQUENCE″/>
</field>
<field name=″ps_length″
    fullName=″Path segment AS count″
    length=″8″
    format=″integer″/>
<field name=″ps_value″
    fullName=″Path segment AS list″
    lengthRef=″ps_length″
    lengthMultiplier=″16″
    sequence=″ps_es″/>
<field name=″ps_as″
    fullName=″Path segment AS″
    length=″16″
    instance=″repeat″
    format=″integer″/>
<field name=″next_hop″
    fullName=″NEXT HOP″
    selectRef=″attr_type″
    selectValue=″3″
    length=″32″
    format=″ipv4_address″/>
<field name=″multi_exit_disc″
    fullName=″MULTI EXIT DISC″
    selectRef=″attr_type″
    selectValue=″4″
    length=″32″
    format=″integer″/>
<field name=″local_pref″
    fullName=″LOCAL PREF″
    selectRef=″attr_type″
    selectValue=″5″
    length=″32″
    format=″integer″/>
<field name=″atomic_aggregate″
    fullName=″ATOMIC AGGREGATE″
    selectRef=″attr_type″
    selectValue=″6″
    length=″0″
    format=″integer″/>
<field name=″aggregator″
    fullName=″AGGREGATOR″
    selectRef=″attr_type″
    selectValue=″7″
    sequence=″aggregator_as aggregator_address″/>
<field name=″aggregator_as″
    fullName=″Aggregator AS″
    length=″16″
    format=″integer″/>
<field name=″aggregator_address″
    fullName=″Aggregator address″
    length=″32″
    format=″ipv4_address″/>
<field name=″network_layer_reachability″
    fullName=″Network layer reachability″
    select=″ipv4_address_prefix ipv6_mp_nlri″default=″ipv4_address_prefix″/>
<field name=″ipv6_mp_nlri″
    fullName=″IPv6 Multi Protocol Network Layer Reachability Information″
    instance=″primary″
    sequence=″mpr_attr_type mp_attr_len ipv6_afi unicast_safinext_hop_len next_hop num_snpas nlri_per_update ipv6_nlri″/>
<field name=″mpr_attr_type″
    fullName=″Attribute Type″
    length=″8″
    value=″14″
    format=″integer″/>
<field name=″mp_attr_len″
    fullName=″Attribute Length″
    length=″8″
    value=″0″
    format=″integer″/>
<field name=″ipv6_afi″
    fullName=″Address Family Indicator″
    shortName=″AFI″
    length=″8″
    value=″2″
    format=″integer″/>
<field name=″.unicast_safi″
    shortName=″SAFI″
    length=″8″
    value=″1″
    format=″integer″/>
<field name=″next_hop_len″
    fullName=″Next Hop Length″
    length=″8″
    value=″128″
    format=″integer″/>
<field name=″next_hop″
    fullName=″Next Hop Address″
    length=″128″
    value=″0″
    format=″ipv6_address″/>
<field name=″num_snpas″
    fullName=″Number of SNPA′s″
    length=″8″
    value=″0″
    format=″integer″/>.
<field name=″nlri_per_update″
    fullName=″Max Number of NLRI′s for each Update Message″
    length=″16″
    value=″500″
    instance=″FSM_variable″
    format=″integer″/>
<field name=″ipv6_nlri″
    fullName=″IPv6 Network layer Reachability Information″
    instance=″FSM_repeat″
    sequence=″ipv6_prefix_len ipv6_prefix″/>
<field name=″ipv6_prefix_len″
    fullName=″IPv6 Prefix Length″
    length=″8″
    value=″96″
    format=″integer″/>
<field name=″ipv6_prefix″
    fullName=″IPv6 Prefix Length″
    length=″128″
    value=″0″
    format=″ipv6_address″/></protocol><!-- ===================================================================== --></ProtocolSet>
为了创建新的协议仿真,应用208n检索所请求的(多个)消息描述205n,并且将它们加载到协议参考模型214中。参考模型214一般包括例如对象的数据结构,其描述包含在所有选择的协议消息描述215n中的字段。可以通过使用例如expat的不受版权限制的XML解析器解析每个协议消息描述215n来构建模型。一旦建立了协议参考模型214,就可以实例化其实例216n,并用用户指定的值和指令来填充它。
为了编辑由实例216n所存储的值,将实例216n传递到GUI 206。或者,GUI 206可以请求实例216n的例示。无论如何,GUI 206基于所选择的协议参考模型214、协议消息描述215n或实例216n中的字段形成图形显示。在或许是优选的实施方式中,GUI 206构建并生成模仿由协议消息描述215所表示的嵌套数据结构的树。
图3是根据本发明实施方式构建的图形用户界面206的屏幕快照。为了生成例如图3所示的显示,分析例如协议参考模型214的内容来识别用于显示的字段及其格式。在图3的示例中,创建并用条目或显示字段来填充层次数据结构,其中每个字段是树中的节点。作为结果的树结构然后以方便的层次显示呈现,其中基于数据节点的描述符将数据节点格式化。
在图3所示的示例中,准许用户基于协议消息描述215n(或者更合适的是实例216n)的内容,调整所显示的字段的某些属性,包括开始值、结束值、计数以及使得可以进行逐字段控制的步长。例如,可以添加属性来指出字段的值是固定的(或者依赖于另一个字段)。一旦用户检查节点并调整对其可用的节点,图形用户界面206就将调整后的实例216n传递回应用208n。应用208n然后基于调整后的实例216n,构建模板212n。
模板212是与创建协议消息有关的对协议有限状态机210的一组指令。模板212使用二进制(或者十六进制)格式可能是有益的,以便符合当前由协议有限状态机210使用的硬编码指令。这样,当前的协议有限状态机几乎不需要修改来与模板212互动。参考图2,图形用户界面206或应用208n可以构建来充当协议消息描述215的编译器。模板212一般具有如表2所示的三段:
   表2
  PDU模板X
  公用部分PDU构建数据
  重复部分PDU构建数据
模板212一般包括非重复数据的第一部分(称作公用部分),以及重复部分的第二部分(称作重复部分),该第二部分具有不同值的数据,所述数据类似地被格式化。每个模板212n代表基本消息描述,从其可以创建许多消息。每个模板212n具有公用部分,并且可以具有重复部分。公用部分可以具有在整个所生成的消息序列上变化的字段。公用部分一般代表消息头部和用于拓扑数据的公用属性。在BGP中,更新消息的公用部分可以包括消息头部和路径属性。重复部分描述一组字段,在单个消息内其将被重复数次。重复字段的一个或多个可以以所定义的方式随每次重复而变化。重复部分一般代表网络拓扑数据。在BGP中,重复部分可以包括将要被通告的数以千计的网络前缀。
转回来参考图2,将每个实例216存储为协议元素的向量。通过对向量的字节字符串进行编码可以形成模板212。通过将下述二进制值连接可以对字节字符串编码,即协议元素向量中的每个使能字段的二进制值。可以证明将向量表示和编码后的表示都存储是有益的。在这种情形中,当GUI 206通过操作向量内的元素(例如,改变的值、使能的字段或者禁用的字段)更新实例216时,对应的字节字符串就被更新。可以将字段变址数应用到向量内的任何元素;字段变址数可以相对于字节字符串编码为偏移、字段宽度、开始值、递增和计数。模板212一般包括伴随编码字节字符串的一组字段变址数。
使用标记(或其他数据结构)来指示模板是否将在任何会话期间使用是可以实现的可选特性。因此,如果为任何给定的模板212n设置所述标记,则协议有限状态机210使用模板212n来生成消息。所述标记可以是模板的一部分或者保存在其他地方,例如作为寄存器或表的一部分。
在运行期间,协议有限状态机210会执行初始握手操作。在适当的时刻,协议有限状态机210将访问可用的模板(如果想要标记选项,则限于那些具有ON标记的模板),并基于该模板开始构建消息。
协议消息描述215也适于用作过滤器。例如系统200的协议仿真系统的用户一般需要检查传输到该系统的流量。然而,这种流量的数量趋向非常大,使得在流量中挑选感兴趣的消息或者消息中感兴趣的部分可能是棘手的。使用协议消息描述215的一种好处是它们形成极好的过滤器定义的基础,所述过滤器定义可以被应用到进入消息流来识别感兴趣的消息或者消息中感兴趣的部分。
根据本发明的实施方式,协议消息描述215用来形成过滤器217。为了构建过滤器,可以使用各种方法。在或许是优选的实施方式中,将所选择的协议消息描述215n加载到协议参考模型214中,并且经由GUI 206呈现给用户以修改。用户根据将要被过滤的消息为每个可用的字段提供值。可以将这种值指定为或者将消息(例如将要存储的消息)滤入、或者将消息(例如将要丢弃的消息)滤出。如果消息被滤入,则可以创建过滤器217来识别要存储的消息的多个部分(或者“片断”)。和模板212的情形一样,GUI 206和/或应用208n基于所提供的数据(与协议消息描述215一起)创建过滤器217n,并将过滤器217n传输到协议仿真器204以存储。可以使用任何可用的过滤算法,以使得过滤器216的实际结构可以依赖于协议仿真器的实现和所选择的过滤算法而变化。
在运行期间,将过滤器216应用到协议有限状态机210的进入数据。将滤入的消息或者消息片断存储在片断捕捉数据库218中。片断捕捉数据库218对于协议仿真器204可以是远程的或者本地的。
片段捕捉数据库218将捕捉到的数据以机器可读格式存储为一串捕捉的记录。数据库218可以只包含具有关联的片断类型描述符的单个片断类型或者多种片断类型。为了以人可读的形式呈现片断,应用208n使用协议参考模型214来将片断的二进制数据解码成一组字段描述、值和格式化规则。GUI 206以图形的形式将片断的内容呈现给用户。或者可以构建应用编程接口(“api”)来允许从任何应用访问数据库218。
例如,使用协议消息描述215帮助扩展所定义的协议仿真。表3表示在表2中定义的字段定义,其具有用于多播Ipv6的扩展。
                             表3<?xml version=″1.0″standalone=″yes″?><ProtocolSet xmlns=″x-schema:AgtPduSchema.xml″version=″1″providedBy=″Agilent Technologies″><!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --><!-- 通用PDU建立者                                                                                    --><!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --><!-- 文件类型:协议定义                                                                               --><!-- 内容:BGP4更新消息                                                                               --><!-- 版权,2004安捷伦科技                                                                             --><!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --><!-- 版本历史:                                                                                       --><!-- 0.1:2004年5月-原型                                                                              --><!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --><!-- ===================================================================== --><protocol name=″BGP4 Update″
shortName=″BGP4 Update Message″
fullName=″Border Gateway Protocol Version 4 Update Message″
instance=″primary″
standard=″RFC 1771″
sequence=″header path_attributes network_layer_reachability″>
<field name=″header″
    fullName=″Header″
    instence=″primary″
    sequence=″marker length update_type no_withdrawn_routes″>.
<field name=″marker″
    fullName=″Marker″
    length=″128″
    value=″0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF″
    format=″hex″/>
<field name=″length″
    fullName=″Length″
    length=″16″
    format=″integer″/>
<field name=″update_type″
    fullName=″Message type″
    length=″8″
    format=″integer″
    value=″2″/>
<field name=″no_withdrawn_routes″
    fullName=″Unfeasible routes length″
    length=″16″
    value=″0″
    format=″integer″/>
<field name=″ipv4_address_prefix″
    fullName=″IP address prefix″
    instance=″repeat″
    pad=″octet″
    sequence=″prefix_length prefix″/>
<field name=″prefix_length″
    fullName=″Prefix length(bits)″
    length=″8″
    format=″integer″/>
<field name=″prefix″
    fullName=″Prefix″
    lengthRef=″prefix_length″
    lengthMultiplier=″1″
    defaultLength=″24″
    format=″hex″/>
<field name=″path_attributes″.
    fullName=″PATH attributes″
    select=″no_path_attributes has_path_attributes″default=″no_path_attributes″/>
<field name=″no_path_attributes″
    fullName=″Total PATH attribute length″
    length=″16″
    value=″0″
    format=″integer″/>
<field name=″has_path_attributes″
    fullName=″PATH attributes″
    sequence=″total_path_attribute_length path_attribute_data″/>
<field name=″total_path_attribute_length″
    fullName=″Total PATH attribute length″
    length=″16″
    format=″integer″/>
<field name=″path_attribute_data″
    fullName=″PATH attributes″
    lengthRef=″total_path_attribute_length″
    lengthMultiplier=″8″
    sequence=″path_attribute″/>
<field name=″path_attribute″
    fullName=″PATH attribute″
    instance=″repeat″
    sequence=″attr_flags attr_type attr_length attr_value″/>
<field name=″attr_flags″
    fullName=″Attribute flags″
    format=″binary″
    length=″8″
    flags=″Optional Transitive Partial Extended_Length Null Null NullNull″/>
<field name=″attr_type″
    fullName=″Attribute type code″
    format=″integer″
    length=″8″>
    <enum value=″1″name=″ORIGIN″/>
    <enum value=″2″name=″AS PATH″/>
     <enum value=″3″name=″NEXT HOP″/>
     <enum value=″4″name=″MULTI EXIT DISC″/>
     <enum value=″5″name=″LOCAL PREF″/>
     <enum value=″6″name=″ATOMIC AGGREGATE″/>
     <enum value=″7″name=″AGGREGATOR″/>
     <enum value=″14″name=″MP_REACH_NLRI″/>
     <enum value=″15″name=″MP_UNREACH_NLRI″/>
</field>
<field name=″attr_length″
    fullName=″Attribute length″
    select=″normal_length extended_length″default=″normal_length″/>
<field name=″normal_length″
    fullName=″Attribute length(1 byte)″
    length=″8″
    format=″integer″/>
<field name=″extended_length″
    fullName=″Attribute length(2 bytes)″
    length=″16″
    format=″integer″/>
<field name=″attr_value″
    fullName=″Attribute data″
    lengthRef=″attr_length″
    lengthMultiplier=″8″
    select=″origin as_path next_hop multi_exit_disc local_prefatomic_aggregate aggregator″
    default=″as_path″/>
<field name=″origin″
    fullName=″ORIGIN value″
    selectRef=″attr_type″
    selectValue=″1″
    length=″8″
    format=″integer″>
    <enum value=″0″name=″IGP″/>
    <enum value=″1″name=″EGP″/>
    <enum value=″2″name=″INCOMPLETE″/>
</field>
<field name=″as_path″
    fullName=″AS PATH″
    selectRef=″attr_type″
    selectValue=″2″
    sequence=″path_segment″/>
<field name=″path_segment″
    fullName=″Path segment″
    instance=″repeat″
    sequence=″ps_type ps_length ps_value″/>
<field name=″ps_type″
    fullName=″Path segment type″
    length=″8″
    format=″integer″>
    <enum value=″1″name=″AS_SET″/>
    <enum value=″2″name=″AS_SEQUENCE″/>
</field>
<field name=″ps_length″
    fullName=″Path segment AS count″
    length=″8″
    format=″integer″/>
<field name=″ps_value″
    fullName=″Path segment AS list″
    lengthRef=″ps_length″
    lengthMultiplier=″16″
    sequence=″ps_as″/>
<field name=″ps_as″
    fullName=″Path segment AS″
    length=″16″
    instance=″repeat″
    format=″integer″/>
<field name=″next_hop″
    fullName=″NEXT HOP″
    selectRef=″attr_type″
    selectValue=″3″
    length=″32″
    format=″ipv4_address″/>
<field name=″multi_exit_disc″
    fullName=″MULTI EXIT DISC″
    selectRef=″attr_type″
    selectValue=″4″
    length=″32″
    format=″integer″/>
<field name=″local_pref″
    fullName=″LOCAL PREF″
    selectRef=″attr_type″
    selectValue=″5″
    length=″32″
    format=″integer″/>
<field name=″atomic_aggregate″
    fullName=″ATOMIC AGGREGATE″
    selectRef=″attr_type″
    selectValue=″6″
    length=″0″
    format=″integer″/>
<field name=″aggregator″
    fullName=″AGGREGATOR″
    selectRef=″attr_type″
    selectValue=″7″
    sequence=″aggregator_as aggregator_address″/>
<field name=″aggregator_as″
    fullName=″Aggregator AS″
    length=″16″
    format=″integer″/>
<field name=″aggregator_address″
    fullName=″Aggregator address″
    length=″32″
    format=″ipv4_address″/>
<field name=″network_layer_reachability″
    fullName=″Network layer reachability″
    select=″ipv4_address_prefix ipv6_mp_nlri″default=″ipv4 address prefix″/>
<field name=″ipv6_mp_nlri″
    fullName=″IPv6 Multi Protocol Network Layer Reachability Information″
    instance=″primary″
    sequence=″mpr_attr_type mp_attr_len ipv6_afi unicast_safinext_hop_len next_hop num_snpas nlri_per_update ipv6_nlri″/>
<field name=″mpr_attr_type″
    fullName=″Attribute Type″
    length=″8″
    value=″14″
    format=″integer″/>
<field name=″mp_attr_len″
    fullName=″Attribute Length″
    length=″8″
    value=″0″
    format=″integer″/>
<field name=″ipv6_afi″
    fullName=″Address Family Indicator″
    shortName=″AFI″
    length=″8″
    value=″2″
    format=″integer″/>
<field name=″unicast_safi″
    shortName=″SAFI″
    length=″8″
    value=″1″
    format=″integer″/>
<field name=″next_hop_len″
    fullName=″Next Hop Length″
    length=″8″
    value=″128″
    format=″integer″/>
<field name=″next_hop″
    fullName=″Next Hop Address″
    length=″128″
    value=″0″
    format=″ipv6_address″/>
<field name=″num_snpas″
    fullName=″Number of SNPA′s″
    length=″8″
    value=″0″
    format=″integer″/>
<field name=″nlri_per_update″
    fullName=″Max Number of NLRI′s for each Update Message″
    length=″16″
    value=″500″
    instance=″FSM_variable″
    format=″integer″/>
<field name=″ipv6_nlri″
    fullName=″IPv6 Network layer Reachability Information″
    instance=″FSM_repeat″
    sequence=″ipv6_prefix_len ipv6_prefix″/>
<field name=″ipv6 prefix len″
    fullName=″IPv6 Prefix Length″
    length=″8″
    value=″96″
    format=″integer″/>
<field name=″ipv6_prefix″
    fullName=″IPv6 Prefix Length″
    length=″128″
    value=″0″
    format=″ipv6_address″/>
<field name=″ipv6_mulitcast_mp_nlri″
    fullName=″IPv6 Multicast Multi Protocol Network Layer ReachabilityInformation″
    instance=″primary″
    sequence=″mpr_attr_type mp_attr_len ipv6_afi multicast_safinext_hop_len next_hop num_snpas nlri_per_update ipv6_nlri″/></protocol><!-- ===================================================================== --></ProtocolSet>
尽管已经图示并描述了本发明的某些实施方式,但是本领域的技术人员将会理解,在不背离本发明的原则和精神的情况下,可以对这些实施方式作出改变,所述发明的范围在权利要求和它们的等同物中定义。
由于可以将GUI 206编程来基于协议消息定义215动态地创建图形显示,所以不需要额外的编程来创建到新定义的协议消息描述215n的用户接口。此外,假设在新协议消息描述215n定义的任何复制操作已在将协议消息描述215转换到模板212的软件中定义,则在协议有限状态机210内不需要采用新的编码。

Claims (20)

1.一种协议仿真系统,包括:
至少一个描述,其用通用格式描述协议消息中的字段;
应用,其将所述至少一个描述转变成机器可读模板;和
协议有限状态机,其基于所述模板创建协议消息。
2.如权利要求1所述的协议仿真系统,其中,所述通用格式包括可扩展标记语言。
3.如权利要求1所述的协议仿真系统,其中,在与路由器的握手过程中使用所述协议消息。
4.如权利要求1所述的协议仿真系统,其中,所述至少一个描述包括多个描述。
5.如权利要求1所述的协议仿真系统,其中,所述应用将所述至少一个描述转变成参考模型。
6.如权利要求5所述的协议仿真系统,还包括:
图形用户界面,其将所述描述的图形表示呈现给用户,并接收对包含在所述描述中的值的修改,并且其中所述应用将所述参考模型实例化,并用从所述图形用户界面接收到的值填充所述实例。
7.如权利要求6所述的协议仿真系统,其中,所述应用将所述实例转变成机器可读模板。
8.如权利要求1所述的协议仿真系统,其中,所述模板是十六进制编码的。
9.如权利要求1所述的协议仿真系统,还包括将所述描述转变成过滤器的应用,并且其中所述过滤器用来对由所述协议仿真系统接收到的多个消息进行过滤。
10.一种用于控制协议仿真器的方法,所述方法包括:
创建用于控制所述协议仿真器的数据的结构的描述,用对于多种协议通用的语言形成所述描述;
使用所述描述创建所述数据结构的参考模型;
用至少某些用户提供的数据创建所述参考模型的实例;
使用所述实例来创建模板,所述协议仿真器响应于所述模板,以创建协议消息;以及
将所述模板传送到所述协议仿真器。
11.如权利要求10所述的方法,其中,所述创建描述的步骤包括创建描述所述数据的结构的可扩展标记语言文件。
12.如权利要求10所述的方法,其中,所述描述包括关于如何在协议消息的多个拷贝之间改变至少一个值的指令。
13.如权利要求10所述的方法,其中,所述描述包括基于所述描述内的其他值的值。
14.如权利要求10所述的方法,其中,所述准备描述的步骤包括以层次方式描述所述数据。
15.如权利要求10所述的方法,其中,所述准备所述数据的结构的描述的步骤包括定义用于保持值的字段、其他字段、或字段的属性。
16.如权利要求15所述的方法,其中,所述属性包括字段的全名、字段的长度、字段的呈现格式、排序指令和元素的可能值的范围。
17.如权利要求10所述的方法,还包括:
基于所述描述创建过滤器;和
使用所述过滤器来对由所述协议仿真系统接收到的多个消息进行过滤。
18.一种控制协议仿真器的方法,所述方法包括:
创建由所述协议仿真器使用的至少一个消息的可扩展标记语言描述;
将所述描述的图形显示呈现给用户;
准许所述用户调整所述描述的多个字段中的值;和
基于所述描述和由所述用户调整的所述值,创建用于控制协议有限状态机的模板。
19.如权利要求18所述的方法,还包括:
准许所述用户指定至少一个字段如何在消息序列中的消息之间变化;和
将关于所述至少一个字段如何在消息之间变化的指令包括在所述模板中。
20.如权利要求18所述的方法,还包括:
准许所述用户在所述描述的多个字段中设置过滤器值;
基于所述描述和由所述用户设置的过滤器值创建过滤器;和
使用所述过滤器对由所述协议仿真系统接收到的多个消息进行过滤。
CNA2005100557923A 2004-06-04 2005-03-21 协议仿真器 Pending CN1708017A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/861,618 2004-06-04
US10/861,618 US20060077895A1 (en) 2004-06-04 2004-06-04 Protocol emulator

Publications (1)

Publication Number Publication Date
CN1708017A true CN1708017A (zh) 2005-12-14

Family

ID=34701533

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2005100557923A Pending CN1708017A (zh) 2004-06-04 2005-03-21 协议仿真器

Country Status (5)

Country Link
US (1) US20060077895A1 (zh)
JP (2) JP2005348405A (zh)
CN (1) CN1708017A (zh)
DE (1) DE102005011845A1 (zh)
GB (1) GB2414827A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101577704A (zh) * 2008-05-08 2009-11-11 北京东华合创数码科技股份有限公司 一种网络应用层协议识别方法和系统
CN101510870B (zh) * 2008-04-23 2012-03-21 北京德瑞海普科技有限公司 基于脚本和模块驱动的代码级网络协议仿真验证组织方法
CN102541563A (zh) * 2011-12-31 2012-07-04 山东中创软件商用中间件股份有限公司 一种监控界面生成方法及系统
CN103324573A (zh) * 2013-07-02 2013-09-25 北京邮电大学 一种基于GUI协议状态机建模的Peach平台扩展方法
CN106357475A (zh) * 2016-08-31 2017-01-25 成都科来软件有限公司 一种数据包构造系统及其工作方法

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080059954A1 (en) * 2002-06-18 2008-03-06 Martin Joseph B Universal system component emulator with human readable output
KR100864296B1 (ko) 2004-08-16 2008-10-23 콸콤 인코포레이티드 그룹 통신을 위한 그룹 멤버십을 관리하기 위한 방법 및장치
US7440407B2 (en) * 2005-02-07 2008-10-21 At&T Corp. Method and apparatus for centralized monitoring and analysis of virtual private networks
US7440863B2 (en) * 2005-04-29 2008-10-21 Agilent Technologies, Inc. Integrated tool for compliance testing within an enterprise content management system
US7890285B2 (en) * 2005-04-29 2011-02-15 Agilent Technologies, Inc. Scalable integrated tool for compliance testing
US7675912B1 (en) * 2005-07-05 2010-03-09 Cisco Technology, Inc. Method and apparatus for border gateway protocol (BGP) auto discovery
US8654654B2 (en) * 2009-09-22 2014-02-18 Ixia Traffic distribution control
US9652264B2 (en) * 2012-09-21 2017-05-16 Ixia Methods, systems, and computer readable media for providing a unified framework to support diverse data generation engines
US9619792B1 (en) 2014-03-25 2017-04-11 Square, Inc. Associating an account with a card based on a photo
US11281643B2 (en) 2014-04-15 2022-03-22 Splunk Inc. Generating event streams including aggregated values from monitored network data
US9762443B2 (en) 2014-04-15 2017-09-12 Splunk Inc. Transformation of network data at remote capture agents
US9838512B2 (en) 2014-10-30 2017-12-05 Splunk Inc. Protocol-based capture of network data using remote capture agents
US10700950B2 (en) 2014-04-15 2020-06-30 Splunk Inc. Adjusting network data storage based on event stream statistics
US11086897B2 (en) 2014-04-15 2021-08-10 Splunk Inc. Linking event streams across applications of a data intake and query system
US10462004B2 (en) 2014-04-15 2019-10-29 Splunk Inc. Visualizations of statistics associated with captured network data
US10360196B2 (en) 2014-04-15 2019-07-23 Splunk Inc. Grouping and managing event streams generated from captured network data
US10127273B2 (en) 2014-04-15 2018-11-13 Splunk Inc. Distributed processing of network data using remote capture agents
US10366101B2 (en) 2014-04-15 2019-07-30 Splunk Inc. Bidirectional linking of ephemeral event streams to creators of the ephemeral event streams
US9923767B2 (en) 2014-04-15 2018-03-20 Splunk Inc. Dynamic configuration of remote capture agents for network data capture
US10693742B2 (en) 2014-04-15 2020-06-23 Splunk Inc. Inline visualizations of metrics related to captured network data
US10523521B2 (en) 2014-04-15 2019-12-31 Splunk Inc. Managing ephemeral event streams generated from captured network data
US12028208B1 (en) 2014-05-09 2024-07-02 Splunk Inc. Selective event stream data storage based on network traffic volume
WO2015180130A1 (zh) * 2014-05-30 2015-12-03 华为技术有限公司 报文编辑处理方法和相关设备
US10614450B1 (en) * 2014-08-08 2020-04-07 Squre, Inc. Controlled emulation of payment cards
US10296910B1 (en) 2014-08-08 2019-05-21 Square, Inc. Pay-by-name payment check-in with a payment card
US9596253B2 (en) 2014-10-30 2017-03-14 Splunk Inc. Capture triggers for capturing network data
US20160127180A1 (en) * 2014-10-30 2016-05-05 Splunk Inc. Streamlining configuration of protocol-based network data capture by remote capture agents
US10334085B2 (en) 2015-01-29 2019-06-25 Splunk Inc. Facilitating custom content extraction from network packets
US10333769B2 (en) * 2016-06-09 2019-06-25 LGS Innovations LLC Deployable linear bitwise protocol transformation
US11533387B2 (en) * 2018-11-30 2022-12-20 Cerner Innovation, Inc. Interface engine architecture
JP7419276B2 (ja) 2021-01-12 2024-01-22 株式会社クボタ 作業機

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2202897A (en) * 1996-03-06 1997-09-22 Joseph B. Thompson System for interconnecting standard telephony communications equipment to internet protocol networks
JPH10285252A (ja) * 1997-02-10 1998-10-23 Advantest Corp 通信機器の試験・測定方法及び装置
EP1013033A2 (en) * 1997-09-12 2000-06-28 COMMUNICATION &amp; CONTROL ELECTRONICS LIMITED Development and test tools for communication system
US6148277A (en) * 1997-12-18 2000-11-14 Nortel Networks Corporation Apparatus and method for generating model reference tests
US7117227B2 (en) * 1998-03-27 2006-10-03 Call Charles G Methods and apparatus for using the internet domain name system to disseminate product information
JP3385222B2 (ja) * 1998-11-18 2003-03-10 日本電信電話株式会社 ネットワーク制御システムの設計方法
KR20010057434A (ko) * 1999-12-23 2001-07-04 이계철 임의 가상망 생성에 기반한 라우팅 시험 방법
US6832184B1 (en) * 2000-03-02 2004-12-14 International Business Machines Corporation Intelligent work station simulation—generalized LAN frame generation simulation structure
JP2002230467A (ja) * 2001-02-01 2002-08-16 Hitachi Ltd 電子契約書テンプレート提供装置及び表示装置
US20020156885A1 (en) * 2001-04-23 2002-10-24 Thakkar Bina Kunal Protocol emulator
US20020157041A1 (en) * 2001-04-23 2002-10-24 Bennett David Charles Protocol parser-code generator
JP3985944B2 (ja) * 2001-11-22 2007-10-03 株式会社日立超エル・エス・アイ・システムズ ネットワーク装置およびプログラム
US7278061B2 (en) * 2002-10-08 2007-10-02 Agilent Technologies, Inc. Building packets of data for testing a communication network
DE602005019032D1 (de) * 2004-03-04 2010-03-11 Anritsu Corp Einrichtung und verfahren zum simulieren eines kommunikationssystems mit der fähigkeit zur leichten steuerung einer protokollnachricht

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101510870B (zh) * 2008-04-23 2012-03-21 北京德瑞海普科技有限公司 基于脚本和模块驱动的代码级网络协议仿真验证组织方法
CN101577704A (zh) * 2008-05-08 2009-11-11 北京东华合创数码科技股份有限公司 一种网络应用层协议识别方法和系统
CN102541563A (zh) * 2011-12-31 2012-07-04 山东中创软件商用中间件股份有限公司 一种监控界面生成方法及系统
CN103324573A (zh) * 2013-07-02 2013-09-25 北京邮电大学 一种基于GUI协议状态机建模的Peach平台扩展方法
CN106357475A (zh) * 2016-08-31 2017-01-25 成都科来软件有限公司 一种数据包构造系统及其工作方法

Also Published As

Publication number Publication date
JP2005348405A (ja) 2005-12-15
GB2414827A (en) 2005-12-07
GB0509541D0 (en) 2005-06-15
JP5462905B2 (ja) 2014-04-02
JP2012157056A (ja) 2012-08-16
DE102005011845A1 (de) 2005-12-29
US20060077895A1 (en) 2006-04-13

Similar Documents

Publication Publication Date Title
CN1708017A (zh) 协议仿真器
CN1132098C (zh) 并行分布处理系统及其方法
CN1293500C (zh) 组织计算机网络中电子邮件文档的方法及电子邮件系统
CN101053224A (zh) 通信系统、信息处理设备、中介服务器、标识信息传送服务器及其通信方法和程序
CN1269337C (zh) 内容自适应服务控制方法
CN1870523A (zh) 网络设备配置系统和方法
CN1703016A (zh) 虚拟网络拓扑结构生成
CN1930838A (zh) 信息处理装置、服务器、通信系统、地址决定方法、地址变更方法及程序
CN1609855A (zh) 查询优化系统和方法
CN1832457A (zh) 数据包通信装置及功能扩展方法
CN101030138A (zh) 应用构架
CN1405986A (zh) 第2层虚拟专用网络中继系统
CN1669018A (zh) 手持终端框架系统
CN1756189A (zh) 基于snmp的ip网络拓扑发现方法
CN1802818A (zh) 网络系统、学习桥式节点、学习方法及其程序
CN101040306A (zh) 伪随机数生成装置
CN1126053C (zh) 文件检索方法、文件检索发送方法及装置
CN1834889A (zh) 软件认证系统和软件认证程序及软件认证方法
CN1453687A (zh) 通信装置及系统、插入模块控制方法及记录媒体
CN1517849A (zh) 通过网络设定参数的方法及其主机
CN1527534A (zh) 使用虚拟目标对象准备和服务无服务器数据传输操作请求
CN1633749A (zh) 获得循环冗余码
CN1444356A (zh) 数据通信方法
CN1914594A (zh) 用于创建和提供多层联网服务的方法和系统
CN1507202A (zh) 设备管理系统、设备管理终端、网络设备、终端程序、设备程序以及设备管理方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication