网络协议:Ethereal协议分析系统介绍网络知识(精选17篇)由网友“七七七个小雪人”投稿提供,以下是小编为大家准备的网络协议:Ethereal协议分析系统介绍网络知识,仅供参考,欢迎大家阅读。
篇1:网络协议:Ethereal协议分析系统介绍网络知识
Ethereal 是一个开放源码的 网络 分析系统,也是是目前最好的开放源码的网络协议分析器,支持 Linux 和 windows平台, Ethereal 起初由Gerald Combs 开发 ,随后由一个松散的 Etheral 团队组织进行维护开发。它目前所提供的强大的协议分析功能完全可以媲美
Ethereal是一个开放源码的网络分析系统,也是是目前最好的开放源码的网络协议分析器,支持Linux和windows平台。Ethereal起初由Gerald Combs开发,随后由一个松散的Etheral团队组织进行维护开发。它目前所提供的强大的协议分析功能完全可以媲美商业的网络分析系统,自从发布最早的0.2版本至今,大量的志愿者为Ethereal添加新的协议解析器,如今Ethereal已经支持五百多种协议解析。很难想象如此多的人开发的代码可以很好的融入系统中;并且在系统中加入一个新的协议解析器很简单,一个不了解系统的结构的新手也可以根据留出的接口进行自己的协议开发。这都归功于Ehereal良好的设计结构。事实上由于网络上各种协议种类繁多,各种新的协议层出不穷。一个好的协议分析器必需有很好的可扩展性和结构。这样才能适应网络发展的需要不断加入新的协议解析器。
1 Ethereal的捕包平台
网络分析系统首先依赖于一套捕捉网络数据包的函数库。这套函数库工作在在网络分析系统模块的最底层。作用是从网卡取得数据包或者根据过滤规则取出数据包的子集,再转交给上层分析模块。从协议上说,这套函数库将一个数据包从链路层接收,至少将其还原至传输层以上,以供上层分析。
在Linux系统中, 1992年Lawrence Berkeley Lab的Steven McCanne和Van Jacobson提出了包过滤器的一种的实现,BPF(BSD Packet Filter)。Libpcap是一个基于BPF的开放源码的捕包函数库。现有的大部分Linux捕包系统都是基于这套函数库或者是在它基础上做一些针对性的改进
在window系统中,意大利人Fulvio Risso和Loris Degioanni提出并实现了Winpcap函数库,作者称之为NPF。由于NPF的主要思想就是来源于BPF,它的设计目标就是为windows
系统提供一个功能强大的开发式数据包捕获平台,希望在Linux系统中的网络分析工具经过简单编译以后也可以移植到windows中,因此这两种捕包架构是非常现实的。就实现来说提供的函数调用接口也是一致的。
Ethereal网络分析系统也需要一个底层的抓包平台,在Linux中是采用Libpcap函数库抓包,在windows系统中采用winpcap函数库抓包
2层次化的数据包协议分析方法
取得捕包函数捕回的数据包后就需要进行协议分析和协议还原工作了。由于OSI的7层协议模型,协议数据是从上到下封装后发送的。对于协议分析需要从下至上进行。首先对网络层的协议识别后进行组包还原然后脱去网络层协议头。将里面的数据交给传输层分析,这样一直进行下去直到应用层
Ip
| \
Tcp udp
| \
HTTP TFTP
由于网络协议种类很多,就Ethereal所识别的500多种协议来说,为了使协议和协议间层次关系明显。从而对数据流里的各个层次的协议能够逐层处理。Ethereal系统采用了协议树的方式。上图就是一个简单的协议树。如果协议A的所有数据都是封装在协议B里的,那么这个协议A就是协议B是另外一个协议的儿子节点。我们将最低层的无结构数据流作为根接点。那么具有相同父节点的协议成为兄弟节点。那么这些拥有同样父协议兄弟节点协议如何互相区分了?Ethereal系统采用协议的特征字来识别。每个协议会注册自己的特征字。这些特征字给自己的子节点协议提供可以互相区分开来的标识。比如tcp协议的port字段注册后。 Tcp.port=21就可以认为是ftp协议, 特征字可以是协议规范定义的任何一个字段。比如ip协议就可以定义proto字段为一个特征字。
在Ethereal中注册一个协议解析器首先要指出它的父协议是什么。另外还要指出自己区别于父节点下的兄弟接点协议的特征。比如ftp协议。在Ethereal中他的父接点是tcp协议,它的特征就是tcp协议的port字段为21。
这样当一个端口为21的tcp数据流来到时。首先由tcp协议注册的解析模块处理,处理完之后通过查找协议树找到自己协议下面的子协议,判断应该由那个子协议来执行,找到正确的子协议后,就转交给ftp注册的解析模块处理,
这样由根节点开始一层层解析下去。
由于采用了协议树加特征字的设计,这个系统在协议解析上由了很强的扩展性,增加一个协议解析器只需要将解析函数挂到协议树的相应节点上即可。
3 基于插件技术的协议分析器
所谓插件技术,就是在程序的设计开发过程中,把整个应用程序分成宿主程序和插件两个部分,宿主程序与插件能够相互通信,并且,在宿主程序不变的情况下,可以通过增减插件或修改插件来调整应用程序的功能。运用插件技术可以开发出伸缩性良好、便于维护的应用程序。它著名的应用实例有:媒体播放器winamp、微软的网络浏览器ie等。
由于现在网络协议种类繁多,为了可以随时增加新的协议分析器,一般的协议分析器都采用插件技术,这样如果需要对一个新的协议分析只需要开发编写这个协议分析器并调用注册函数在系统注册就可以使用了。通过增加插件使程序有很强的可扩展性,各个功能模块内聚。
在协议分析器中新增加一个协议插件一般需要插件安装或者注册,插件初始化,插件处理3个步骤,下面以Ethereal为例进行分析如何利用插件技术新增加一个协议分析模块。
Ethereal由于采用插件技术,一个新加入开发的程序员开发一种新的协议分析模块的时候不需要了解所有的代码,他只需要写好这个协议模块的函数后,写一个格式为proto_reg_handoff_XXX的函数,在函数内调用注册函数告诉系统在什么时候需要调用这个协议模块。比如
你事先写好了一个名为dissect_myprot的协议解析模块,它是用来解析tcp协议端口为250的数据。可以利用这些语句来将这个解析器注册到系统中
proto_reg_handoff_myprot(void)
{
dissector_handle_t myprot_handle;
myprot_handle = create_dissector_handle(dissect_myprot,
proto_myprot);
dissector_add(“tcp.port”, 250, myprot_handle);
}
这段代码告诉系统当tcp协议数据流端口为250的时候要调用dissect_myprot这个函数模块。
在Ethereal中有一个角本专门来发现开发者定义的类式proto_reg_handoff_xxx这样的注册函数名,然后自动生成调用这些注册函数的代码。这样开发者不需要知道自己的注册函数如何被调用的。这样一个新的协议分析模块就加入到系统中了。
由于采用了插件方式,Ethereal良好的结构设计让开发者只需要关系自己开发的协议模块,不需要关心整个系统结构,需要将模块整合进系统只需要写一个注册函数即可,连初始化时调用这个注册函数都由脚本自动完成了。正是因为有很好的体系结构,这个系统才能够开发出如此多的协议解析器
尽管Ethereal是目前最好的开放源码的网络分析系统,但Ethereal仍然有一些可以改进的地方,一个优秀的网络分析器,尽可能的正确分析出数据协议和高效的处理数据是两个重要的指标。在协议识别方面Ethereal大多采用端口识别,有少量协议采用内容识别。这就让一些非标准端口的协议数据没有正确解析出来。比如ftp协议如果不是21端口的话,Ethereal就无法识别出来,只能作为tcp数据处理。另外对于内容识别式。Ethereal是将所以内容识别的函数组成一张入口表。每次协议数据需要内容识别时,按字母顺序逐个调用表里的每个识别函数。比如对于识别yahoo massanger协议。主要是看数据前几个字节是不是’ymsg’.由于协议名为y开头。所以当识别出协议时已经把所有内容识别函数调用了一遍。这些都是由于Ethereal没有实现tcp协议栈,无法做到流级别的识别。导致在协议识别方面有点缺陷。
各位,想进一步了解Ethereal的请搜索Ethereal Packet Sniffing这本书,网上有下载的
请著名作者和出处
Ethereal协议分析系统介绍
作者:staring
email :staring_cs@yahoo.com.cn
出处:中国协议分析网
原文转自:www.ltesting.net
篇2:Ethereal协议分析系统介绍
Ethereal是一个开放源码的网络分析系统,也是是目前最好的开放源码的网络协议分析器,支持Linux和windows平台,
Ethereal起初由Gerald Combs开发,随后由一个松散的Etheral团队组织进行维护开发。它目前所提供的强大的协议分析功能完全可以媲美商业的网络分析系统,自从19发布最早的0.2版本至今,大量的志愿者为Ethereal添加新的协议解析器,如今Ethereal已经支持五百多种协议解析。很难想象如此多的人开发的代码可以很好的融入系统中;并且在系统中加入一个新的协议解析器很简单,一个不了解系统的结构的新手也可以根据留出的接口进行自己的协议开发。这都归功于Ehereal良好的设计结构。事实上由于网络上各种协议种类繁多,各种新的协议层出不穷。一个好的协议分析器必需有很好的可扩展性和结构。这样才能适应网络发展的需要不断加入新的协议解析器。
1 Ethereal的捕包平台
网络分析系统首先依赖于一套捕捉网络数据包的函数库。这套函数库工作在在网络分析系统模块的最底层。作用是从网卡取得数据包或者根据过滤规则取出数据包的子集,再转交给上层分析模块。从协议上说,这套函数库将一个数据包从链路层接收,至少将其还原至传输层以上,以供上层分析。
在Linux系统中, 1992年Lawrence Berkeley Lab的Steven McCanne和Van Jacobson提出了包过滤器的一种的实现,BPF(BSD Packet Filter)。Libpcap是一个基于BPF的开放源码的捕包函数库。现有的大部分Linux捕包系统都是基于这套函数库或者是在它基础上做一些针对性的改进
在window系统中,意大利人Fulvio Risso和Loris Degioanni提出并实现了Winpcap函数库,作者称之为NPF。由于NPF的主要思想就是来源于BPF,它的设计目标就是为windows
系统提供一个功能强大的开发式数据包捕获平台,希望在Linux系统中的网络分析工具经过简单编译以后也可以移植到windows中,因此这两种捕包架构是非常现实的。就实现来说提供的函数调用接口也是一致的。
Ethereal网络分析系统也需要一个底层的抓包平台,在Linux中是采用Libpcap函数库抓包,在windows系统中采用winpcap函数库抓包
2 层次化的数据包协议分析方法
取得捕包函数捕回的数据包后就需要进行协议分析和协议还原工作了。由于OSI的7层协议模型,协议数据是从上到下封装后发送的。对于协议分析需要从下至上进行。首先对网络层的协议识别后进行组包还原然后脱去网络层协议头。将里面的数据交给传输层分析,这样一直进行下去直到应用层
Ip | \ Tcp udp | \HTTP TFTP
由于网络协议种类很多,就Ethereal所识别的500多种协议来说,为了使协议和协议间层次关系明显。从而对数据流里的各个层次的协议能够逐层处理。Ethereal系统采用了协议树的方式。上图就是一个简单的协议树。如果协议A的所有数据都是封装在协议B里的,那么这个协议A就是协议B是另外一个协议的儿子节点。我们将最低层的无结构数据流作为根接点。那么具有相同父节点的协议成为兄弟节点。那么这些拥有同样父协议兄弟节点协议如何互相区分了?Ethereal系统采用协议的特征字来识别。每个协议会注册自己的特征字。这些特征字给自己的子节点协议提供可以互相区分开来的标识。比如tcp协议的port字段注册后。 Tcp.port=21就可以认为是ftp协议, 特征字可以是协议规范定义的任何一个字段。比如ip协议就可以定义proto字段为一个特征字。
在Ethereal中注册一个协议解析器首先要指出它的父协议是什么。另外还要指出自己区别于父节点下的兄弟接点协议的特征。比如ftp协议。在Ethereal中他的父接点是tcp协议,它的特征就是tcp协议的port字段为21,
这样当一个端口为21的tcp数据流来到时。首先由tcp协议注册的解析模块处理,处理完之后通过查找协议树找到自己协议下面的子协议,判断应该由那个子协议来执行,找到正确的子协议后,就转交给ftp注册的解析模块处理。这样由根节点开始一层层解析下去。
由于采用了协议树加特征字的设计,这个系统在协议解析上由了很强的扩展性,增加一个协议解析器只需要将解析函数挂到协议树的相应节点上即可。
3 基于插件技术的协议分析器
所谓插件技术,就是在程序的设计开发过程中,把整个应用程序分成宿主程序和插件两个部分,宿主程序与插件能够相互通信,并且,在宿主程序不变的情况下,可以通过增减插件或修改插件来调整应用程序的功能。运用插件技术可以开发出伸缩性良好、便于维护的应用程序。它著名的应用实例有:媒体播放器winamp、微软的网络浏览器ie等。
由于现在网络协议种类繁多,为了可以随时增加新的协议分析器,一般的协议分析器都采用插件技术,这样如果需要对一个新的协议分析只需要开发编写这个协议分析器并调用注册函数在系统注册就可以使用了。通过增加插件使程序有很强的可扩展性,各个功能模块内聚。
在协议分析器中新增加一个协议插件一般需要插件安装或者注册,插件初始化,插件处理3个步骤,下面以Ethereal为例进行分析如何利用插件技术新增加一个协议分析模块。
Ethereal由于采用插件技术,一个新加入开发的程序员开发一种新的协议分析模块的时候不需要了解所有的代码,他只需要写好这个协议模块的函数后,写一个格式为proto_reg_handoff_XXX的函数,在函数内调用注册函数告诉系统在什么时候需要调用这个协议模块。比如
你事先写好了一个名为dissect_myprot的协议解析模块,它是用来解析tcp协议端口为250的数据。可以利用这些语句来将这个解析器注册到系统中
proto_reg_handoff_myprot(void){ dissector_handle_t myprot_handle; myprot_handle = create_dissector_handle(dissect_myprot, proto_myprot); dissector_add(“tcp.port”, 250, myprot_handle);}
这段代码告诉系统当tcp协议数据流端口为250的时候要调用dissect_myprot这个函数模块。
在Ethereal中有一个角本专门来发现开发者定义的类式proto_reg_handoff_xxx这样的注册函数名,然后自动生成调用这些注册函数的代码。这样开发者不需要知道自己的注册函数如何被调用的。这样一个新的协议分析模块就加入到系统中了。
由于采用了插件方式,Ethereal良好的结构设计让开发者只需要关系自己开发的协议模块,不需要关心整个系统结构,需要将模块整合进系统只需要写一个注册函数即可,连初始化时调用这个注册函数都由脚本自动完成了。正是因为有很好的体系结构,这个系统才能够开发出如此多的协议解析器
尽管Ethereal是目前最好的开放源码的网络分析系统,但Ethereal仍然有一些可以改进的地方,一个优秀的网络分析器,尽可能的正确分析出数据协议和高效的处理数据是两个重要的指标。在协议识别方面Ethereal大多采用端口识别,有少量协议采用内容识别。这就让一些非标准端口的协议数据没有正确解析出来。比如ftp协议如果不是21端口的话,Ethereal就无法识别出来,只能作为tcp数据处理。另外对于内容识别式。Ethereal是将所以内容识别的函数组成一张入口表。每次协议数据需要内容识别时,按字母顺序逐个调用表里的每个识别函数。比如对于识别yahoo massanger协议。主要是看数据前几个字节是不是’ymsg’.由于协议名为y开头。所以当识别出协议时已经把所有内容识别函数调用了一遍。这些都是由于Ethereal没有实现tcp协议栈,无法做到流级别的识别。导致在协议识别方面有点缺陷。
篇3:剖析Ethereal网络协议
互联网功能日益全面,也导致了网络协议的繁杂化,就Ethereal网络协议所识别的500多种协议来说,为了使协议和协议间层次关系明显。从而对数据流里的各个层次的协议能够逐层处理。Ethereal系统采用了协议树的方式。上图就是一个简单的协议树。如果协议A的所有数据都是封装在协议B里的,那么这个协议A就是协议B是另外一个协议的儿子节点。我们将最低层的无结构数据流作为根接点。那么具有相同父节点的协议成为兄弟节点。那么这些拥有同样父协议兄弟节点协议如何互相区分了?Ethereal系统采用协议的特征字来识别。每个协议会注册自己的特征字。这些特征字给自己的子节点协议提供可以互相区分开来的标识。比如tcp协议的port字段注册后。 Tcp.port=21就可以认为是ftp协议, 特征字可以是协议规范定义的任何一个字段。比如ip协议就可以定义proto字段为一个特征字。
在Ethereal中注册一个协议解析器首先要指出它的父协议是什么。另外还要指出自己区别于父节点下的兄弟接点协议的特征。比如ftp协议。在Ethereal网络协议中他的父接点是tcp协议,它的特征就是tcp协议的port字段为21。
这样当一个端口为21的tcp数据流来到时。首先由tcp协议注册的解析模块处理,处理完之后通过查找协议树找到自己协议下面的子协议,判断应该由那个子协议来执行,找到正确的子协议后,就转交给ftp注册的解析模块处理。这样由根节点开始一层层解析下去。
由于采用了协议树加特征字的设计,这个系统在协议解析上由了很强的扩展性,增加一个协议解析器只需要将解析函数挂到协议树的相应节点上即可。
基于插件技术的协议分析器
所谓插件技术,就是在程序的设计开发过程中,把整个应用程序分成宿主程序和插件两个部分,宿主程序与插件能够相互通信,并且,在宿主程序不变的情况下,可以通过增减插件或修改插件来调整应用程序的功能。运用插件技术可以开发出伸缩性良好、便于维护的应用程序。它着名的应用实例有:媒体播放器winamp、微软的网络浏览器ie等。
由于现在网络协议种类繁多,为了可以随时增加新的协议分析器,一般的协议分析器都采用插件技术,这样如果需要对一个新的协议分析只需要开发编写这个协议分析器并调用注册函数在系统注册就可以使用了。通过增加插件使程序有很强的可扩展性,各个功能模块内聚。
在协议分析器中新增加一个协议插件一般需要插件安装或者注册,插件初始化,插件处理3个步骤,下面以Ethereal网络协议为例进行分析如何利用插件技术新增加一个协议分析模块。
Ethereal由于采用插件技术,一个新加入开发的程序员开发一种新的协议分析模块的时候不需要了解所有的代码,他只需要写好这个协议模块的函数后,写一个格式为proto_reg_handoff_XXX的函数,在函数内调用注册函数告诉系统在什么时候需要调用这个协议模块,
比如
你事先写好了一个名为dissect_myprot的协议解析模块,它是用来解析tcp协议端口为250的数据。可以利用这些语句来将这个解析器注册到系统中
proto_reg_handoff_myprot(void) {dissector_handle_t myprot_handle; myprot_handle = create_dissector_handle(dissect_myprot,proto_myprot); dissector_add(“tcp.port”, 250, myprot_handle);}
这段代码告诉系统当tcp协议数据流端口为250的时候要调用dissect_myprot这个函数模块。
在Ethereal中有一个角本专门来发现开发者定义的类式proto_reg_handoff_xxx这样的注册函数名,然后自动生成调用这些注册函数的代码。这样开发者不需要知道自己的注册函数如何被调用的。这样一个新的协议分析模块就加入到系统中了。
由于采用了插件方式,Ethereal良好的结构设计让开发者只需要关系自己开发的协议模块,不需要关心整个系统结构,需要将模块整合进系统只需要写一个注册函数即可,连初始化时调用这个注册函数都由脚本自动完成了。正是因为有很好的体系结构,这个系统才能够开发出如此多的协议解析器
尽管Ethereal是目前最好的开放源码的网络分析系统,但Ethereal仍然有一些可以改进的地方,一个优秀的网络分析器,尽可能的正确分析出数据协议和高效的处理数据是两个重要的指标。在协议识别方面Ethereal大多采用端口识别,有少量协议采用内容识别。这就让一些非标准端口的协议数据没有正确解析出来。比如ftp协议如果不是21端口的话,Ethereal就无法识别出来,只能作为tcp数据处理。另外对于内容识别式。Ethereal网络协议是将所以内容识别的函数组成一张入口表。每次协议数据需要内容识别时,按字母顺序逐个调用表里的每个识别函数。比如对于识别yahoo massanger协议。主要是看数据前几个字节是不是’ymsg’.由于协议名为y开头。所以当识别出协议时已经把所有内容识别函数调用了一遍。这些都是由于Ethereal没有实现tcp协议栈,无法做到流级别的识别。导致在协议识别方面有点缺陷。
篇4:网络管理协议介绍
随着网络的不断发展,规模增大,复杂性增加,简单的网络管理技术已不能适应网络迅速发展的要求。以往的网络管理系统往往是厂商在自己的网络系统中开发的专用系统,很难对其他厂商的网络系统、通信设备软件等进行管理,这种状况很不适应网络异构互联的发展趋势。20世纪80年代初期Internet的出现和发展使人们进一步意识到了这一点。研究开发者们迅速展开了对网络管理的研究,并提出了多种网络管理方案,包括HEMS、SGMP、CMIS/CMIP等。
IAB最初制订的关于Internet管理的发展策略,其初衷是采用跳MP作为暂时的Internet管理解决方案,并在适当的时候转向CMIS/CMIP。SGMP是在NYSERNET和SURANET上开发应用的网络管理工具,而CMIS/CMIP是20世纪80年代中期国际标准化组织(ISO)和CCITT联合制订的网络管理标准。同时,IAB还分别成立了相应的工作组,对这些方案进行适当的修改,使它们更适于Internet的管理。这些工作组随后相应推出了SNMP(Simple NetWork Management Protoc011988)和CMOT(CMIP/CMIS Over TCP/IPl989)等网络管理协议,下面进行简单介绍。
1.SNMP
简单网络管理协议(SNMP)的前身是1987年发布的简单网关监控协议(SGMP)。 SGMP给出了监控网关(OSI第三层路由器)的直接手段,SNMP则是在其基础上发展而来。最初,SNMP是作为一种可提供最小网络管理功能的临时方法开发的,它具有以下两个优点:
(1)与SNMP相关的管理信息结构(SMI)以及管理信息库(MIB)非常简单,从而能够迅速、简便地实现;
(2)SNMP是建立在SGMP基础上的,而对于SGMP,人们积累了大量的操作经验。
SNMP经历了两次版本升级,现在的最新版本是SNMPv3。在前两个版本中SNMP功能都得到了极大的增强,而在最新的版本中,SNMP在安全性方面有了很大的改善,SNMP缺乏安全性的弱点正逐渐得到克服。
2.CMIS/CMIP
公共管理信息服务/公共管理信息协议(CMIS/CMIP)是哦OSI提供的网络管理协议簇。CMIS定义了每个网络组成部分提供的网络管理服务,这些服务在本质上是很普通的,CMIP则是实现CMIS服务的协议。
OSI网络协议旨在为所有设备在ISO参考模型的每一层提供一个公共网络结构,而CMIS/CMIP正是这样一个用于所有网络设备的完整网络管理协议簇。
出于通用性的考虑,CMlS/CMIP的功能与结构跟别MP很不相同,SNMP是按照简单和易于实现的原则设计的,而CMIS/CMIP则能够提供支持一个完整网络管理方案所需的功能。
CMIS/CMIP的整体结构是建立在使用ISO网络参考模型的基础上的,网络管理应用进程使用ISO参考模型中的应用层。也在这层上,公共管理信息服务单元(CMISE)提供了应用程序使用CMIP协议的接口。同时该层还包括了两个ISO应用协议:联系控制服务元素(ACSE)和远程操作服务元素(RpSE),其中ACSE在应用程序之间建立和关闭联系,而ROSE则处理应用之间的请求/响应交互。另外,值得注意的是OSI没有在应用层之下特别为网络管理定义协议。
3.CMOT
公共管理信息服务与协议(CMOT)是在TCP/IP协议簇上实现CMIS服务,这是一种过渡性的解决方案,直到OSI网络管理协议被广泛采用。
CMIS使用的应用协议并没有根据CMOT而修改,CMOT仍然依赖于CMISE、ACSE和ROSE协议,这和CMIS/CMIP是一样的。但是,CMOT并没有直接使用参考模型中表示层实现,而是要求在表示层中使用另外一个协议--轻量表示协议(LPP),该协提供了目前最普通的两种传输层协议--TCP和UDP的接口。
CMOT的一个致命弱点在于它是一个过渡性的方案,而没有人会把注意力集中在一个短期方案上。相反,许多重要厂商都加入了SNMP潮流并在其中投入了大量资源。事实上,虽然存在CMOT的定义,但该协议已经很长时间没有得到任何发展了。
4.LMMP
局域网个人管理协议(LMMP)试图为LAN环境提供一个网络管理方案。LMMP以前被称为IEEE802逻辑链路控制上的公共管理信息服务与协议(CMOL)。由于该协议直接位于IEEE802逻辑链路层(LLC)上,它可以不依赖于任何特定的网络层协议进行网络传输。
由于不要求任何网络层协议,LMMP比CMIS/CMIP或CMOT都易于实现,然而没有网络层提供路由信息,LMMP信息不能跨越路由器,从而限制了它只能在局域网中发展。但是,跨越局域网传输局限的LMMP信息转换代理可能会克服这一问题。
篇5:常用网络协议的介绍
网络协议的五花八门,让我们初学者总是有些不知所措,那么接下来我们就简单介绍一下常用的几个网络协议。那么就让我们看看这些常用网络协议的一些概念,功能以及作用吧。
ARP(Address Resolution Protocol)地址解析协议
它是用于映射计算
机的物理地址和临时指定的网络地址。启动时它选择一个协议(网络层)地址,并检查这个地址是否已经有别的计算机使用,如果没有被使用,此结点被使用这个地址,如果此地址已经被别的计算机使用,正在使用此地址的计算机会通告这一信息,只有再选另一个地址了。
SNMP(Simple Network Management P)网络管理协议
它是TCP/IP协议中的一部份,它为本地和远端的网络设备管理提供了一个标准化途径,是分布式环境中的集中化管理的重要组成部份。
AppleShare protocol(AppleShare协议)
它是Apple机上的通信协议,它允许计算机从服务器上请求服务或者和服务器交换文件。AppleShare可以在TCP/IP协议或其它网络协议如IPX、AppleTalk上进行工作。使用它时,用户可以访问文件,应用程序,打印机和其它远程服务器上的资源。它可以和配置了AppleShare协议的任何服务器进行通信,Macintosh、Mac OS、Windows NT和Novell Netware都支持AppleShare协议。
AppleTalk协议
它是Macintosh计算机使用的主要网络协议。Windows NT服务器有专门为Macintosh服务,也能支持该协议。其允许Macintosh的用户共享存储在 Windows NT文件夹的Mac-格式的文件,也可以使用和Windows NT连接的打印机。Windows NT共享文件夹以传统的Mac文件夹形式出现在Mac用户面前。Mac文件名按需要被转换为FAT(8.3)格式和NTFS文件标准。支持MAc 文件格式的DOS和Windows客户端能与Mac用户共享这些文件。
BGP4(Border Gateway Protocol Vertion 4)边界网关协议-版本4
它是用于在自治网络中网关主机(每个主机有自己的路由)之间交换路由信息的协议,它使管理员能够在已知的路由策略上配置路由加权,可以更方便地使用无级内部域名路由(CIDR),它是一种在网络中可以容纳更多地址的机制,它比外部网关协议(EGP)更新。BGP4经常用于网关主机之间,主机中的路由表包括了已知路由的列表,可达的地址和路由加权,这样就可以在路由中选择最好的通路了,
BGP在局域网中通信时使用内部BGP(IBGP),因为IBGP不能很好工作。
BOOTP协议
它是一个基于TCP/IP协议的协议,它可以让无盘站从一个中心服务器上获得IP地址,现在我们通常使用DHCP协议进行这一工作。
CMIP(Common Management Information Protocol)通用管理信息协议
它是建立在开放系统互连通信模式上的网络管理协议。相关的通用管理信息服务(CMIS)定义了访问和控制网络对象,设备和从对象设备接收状态信息的方法。
Connection-oriented Protocol/Connectionless Protocol面向连接的协议/无连接协议
在广域网中,两台计算机建立物理连接过程所使用的协议,这种物理连接要持续到成功地交换完数据为止。在Internet中,TCP(传输控制协议)即这一类型的协议,它为两台连接在网络上的计算机提供了可相互通信且确保数据成功传输的一种手段。面向连接的协议一定要保证数据传送到对方。在广域网中,对接收方的计算机不做在线状态,或接收能力的测试,都能使数据由一台计算机传输到另外一台计算机上的协议。这是包交换网络中的主要协议,在Internet中的IP协议即无连接协议,IP只关注将数据分成数据包进行传输,并在这些数据包被接收后重新组包,而不关注接收方计算机的状态。由面向连接的协议(如Internet中的TCP)来确保数据的接收。
DHCP(Dynamic Host Configuration Protocol)动态主机配置协议
它是在TCP/IP网络上使客户机获得配置信息的协议,它是基于BOOTP协议,并在BOOTP协议的基础上添加了自动分配可用网络地址等功能。这两个协议可以通过一些机制互操作。DHCP协议在安装TCP/IP协议和使用TCP/IP协议进行通迅时,必须配置IP地址、子网掩码、缺省网关三个参数,这三个参数可以手动配置,也可以使用DHCP自动配置。
Discard Protocol抛弃协议
它的作用就是接收到什么抛弃什么,它对调试网络状态的一定的用处。基于TCP的抛弃服务,如果服务器实现了抛弃协议,服务器就会在TCP端口9检测抛弃协议请求,在建立连接后并检测到请求后,就直接把接收到的数据直接抛弃,直到用户中断连接。而基于UDP协议的抛弃服务和基于TCP差不多,检测的端口是UDP端口9,功能也一样。
Echo Protocol协议
这个协议主要用于调试和检测中。这个协议的作用也十分简单,接收到什么原封发回就是了。它可以基于TCP协议,服务器就在TCP端口7检测有无消息,如果有发送来的消息直接返回就是了。如果使用UDP协议的基本过程和TCP一样,检测的端口也是7。
篇6:网络协议分析课程设计
课程名称: 网络协议工程
设计题目: 网络构建与协议分析
院 系: 信息技术学院
班 级:
设 计 者:
学 号:
指导教师:
设计时间:
信息技术学院
昆明学院课程设计(大作业)任务书
课程设计(大作业)报告
网络构建及分析
一、题目分析
1. 在S2126与S3750B上划分VLAN,并把PC机与服务器加入到相应的VLAN中。
2. 配置S2126与S3750A之间的两条交换机间链路,以及S3750A与S3750B之间的交换机间链路。
3. 在S2126与S3750A之间的冗余链路中使用STP技术防止桥接环路的产生,并通过手工配置使S3750A成为STP的根。
4. 为S3750A的VLAN接口和R1762的接口配置IP地址。
5. 在S3750A上使用具有三层特性的物理端口实现与R1762的互联。
二、总体设计
三、实验器材
1、网络环境
根据具体协议构建合适的网络环境
2、操作系统
WindowsXP,如果需要,安装相应的服务(如FTP,SSH,TELNET,HTTP等)
3、协议分析工具
Windows环境下常用的工具有:Sniffer Pro、Ethereal、Iris以及Packet Tracer 等。实验中可具体选择一种协议分析工具,本实验选择Ethereal。
四、制作步骤
1、分析实验设计要求,进行初步的规划;
2、按照要求的网络拓扑图在思科模拟器上进行对网络拓扑图的连接,此处要特别注意对设备和连接线的选择;
连线时要特别注意选用的线的种类:同种设备之间互联使用交叉线,不同种设备互联使用直通线。
3、按照实验的要求,对模拟好的拓扑图进行内部的配置和设置
4、进行设置和配置的检测,对实验的结果进行分析
五、分析网络中可能用到的网络协议
可能用到的网络协议有:
应用层DNS, FTP,HTTP, RIP, DHCP
传输层TCP, UDP
网络层IP,ICMP,IGMP
数据链路层 ARP,RARP
物理层 以太网,RS-232
.路由协议(RIP):路由协议主要运行于路由器上,路由协议是用来确定到达路径的,它包括RIP,IGRP,EIGRP,OSPF。起到一个地图导航,负责找路的作用。它工作在网络层。路由选择协议主要是运行在路由器上的协议,主要用来进行路径选择。
FTP :FTP(File Transfer Protocol, FTP)是TCP/IP网络上两台计算机传送文件的协议,FTP是在TCP/IP网络和INTERNET上最早使用的协议之一,它属于网络协议组的应用层。FTP客户机可以给服务器发出命令来下载文件,上载文件,创建或改变服务器上的目录。
HTTP:HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传输协议。HTTP是客户端浏览器或其他程序与Web服务器之间的`应用层通信协议。
IP: IP是英文Internet Protocol(网络之间互连的协议)的缩写,中文简称为“网协”,也就是为计算机网络相互连接进行通信而设计的协议。
ARP:在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行直接通信,必须要知道目标主机的MAC地址。而在TCP/IP协议栈中,网络层和传输层只关心目标主机的IP地址。
这就导致在以太网中使用IP协议时,数据链路层的以太网协议接到上层IP协议提供的数据中,只包含目的主机的IP地址。于是需要一种方法,根据目的主机的IP地址,获得其MAC地址。这就是ARP协
篇7:Ethereal使用入门网络知识
ethereal 可以用来从 网络 上抓包,并能对包进行分析,下面介绍windows 下面ethereal 的使用方法 安装 1)安装winpcap,下载地址netgroup-serv.polito.it/winpcap/install/Default.htm 2)安装ethereal ,下载地址www.ethereal.com/ 使用 wind
ethereal 可以用来从网络上抓包,并能对包进行分析。下面介绍windows 下面ethereal 的使用方法
安装
1)安装winpcap,下载地址netgroup-serv.polito.it/winpcap/install/Default.htm 2)安装ethereal ,下载地址www.ethereal.com/
使用
windows 程序,使用很简单。
启动ethereal 以后,选择菜单Capature->Start ,就OK 了。当你不想抓的时候,按一下stop, 抓的包就会显示在面板中,并且已经分析好了。
下面是一个截图:
ethereal使用-capture选项
点击查看大图 nterface: 指定在哪个接口(网卡)上抓包。一般情况下都是单网卡,所以使用缺省的就可以了Limit each packet: 限制每个包的大小,缺省情况不限制
Capture packets in promiscuous mode: 是否打开混杂模式。如果打开,抓取所有的数据包。一般情况下只需要监听本机收到或者发出的包,因此应该关闭这个选项。Filter:过滤器。只抓取满足过滤规则的包(可暂时略过) File:如果需要将抓到的包写到文件中,在这里输入文件名称。use ring buffer: 是否使用循环缓冲。缺省情况下不使用,即一直抓包。注意,循环缓冲只有在写文件的时候才有效。如果使用了循环缓冲,还需要设置文件的数目,文件多大时回卷
其他的项选择缺省的就可以了
ethereal的抓包过滤器
抓包过滤器用来抓取感兴趣的包,用在抓包过程中。 抓包过滤器使用的是libcap 过滤器语言,在tcpdump 的手册中有详细的解释,基本结构是: [not] primitive [and|or [not] primitive ...]
个人观点,如果你想抓取某些特定的数据包时,可以有以下两种方法,你可以任选一种, 个人比较偏好第二种方式:
1、在抓包的时候,就先定义好抓包过滤器,这样结果就是只抓到你设定好的那些类型的数 据包;
2、先不管三七二十一,把本机收到或者发出的包一股脑的抓下来,然后使用下节介绍的显 示过滤器,只让Ethereal 显示那些你想要的那些类型的数据包;
etheral的显示过滤器(重点内容)
在抓包完成以后,显示过滤器可以用来找到你感兴趣的包,可以根据1)协议2)是否存在某个域3)域值4)域值之间的比较来查找你感兴趣的包,
举个例子,如果你只想查看使用tcp 协议的包,在ethereal 窗口的左下角的Filter 中输入tcp, 然后回车,ethereal 就会只显示tcp 协议的包。如下图所示:
点击查看大图 值比较表达式可以使用下面的操作符来构造显示过滤器自然语言类c 表示举例eq == ip.addr==10.1.10.20 ne != ip.addr!=10.1.10.20 gt >frame.pkt_len>10 lt < frame.pkt_len<10 ge >= frame.pkt_len>=10 le <= frame.pkt_len<=10
表达式组合可以使用下面的逻辑操作符将表达式组合起来自然语言类c 表示举例and && 逻辑与,比如ip.addr=10.1.10.20&&tcp.flag.fin or || 逻辑或,比如ip.addr=10.1.10.20||ip.addr=10.1.10.21 xor ^^ 异或,如tr.dst[0:3] == 0.6.29 xor tr.src[0:3] == not ! 逻辑非,如 !llc
例如:
我想抓取IP 地址是192.168.2.10 的主机,它所接收收或发送的所有的HTTP 报文,那么合适的显示Filter (过滤器)就是:
点击查看大图 在ethereal 使用协议插件
ethereal 能够支持许多协议,但有些协议需要安装插件以后才能解,比如H.323,以H.323 协议为例,首先下载ethereal 的H.323 插件,下载地址www.voice2sniff.org/ 下载完了以后将文件(h323.dll) 解压到ethereal 安装目录的plugin\0.9.x 目录下面,比如我的是0.9.11 ,然后,需要进行一下设置1)启动ethereal 2)菜单Edit->Preference 3)单击Protocols 前面的“+”号,展开Protocols 4)找到Q931 ,并单击5)确保“Desegment.... TCP segments” 是选中的(即方框被按下去)6)单击TCP 7)确保“Allow....TCP streams” 是选中的8)确保没有选中“Check....TCP checksum” 和“Use....sequence numbers” 9)单击TPKT 10)确保“Desegment....TCP segments” 是选中的11)点击Save,然后点击Apply ,然后点击OK 你也完全可以不断地重新安装新版本winpcap 和ethreal, 这样就可以不需在旧的ethreal 的版本中安装新的插件来支持新的协议插件。
原文转自:www.ltesting.net
篇8:简单网络管理协议(SNMP)网络知识
作为一名 网络 顾问或网络管理员,在你安装完网络并且设置了用户帐号与应用程序之后,你的工作并没有完成,你的下一个职责就是网络管理,它就好比是一场永远也不会结束的战斗一样。 目前存在着两种类型的网络管理问题:一种是与软件相关的,例如数据 安全 性
作为一名网络顾问或网络管理员,在你安装完网络并且设置了用户帐号与应用程序之后,你的工作并没有完成。你的下一个职责就是网络管理,它就好比是一场永远也不会结束的战斗一样。
目前存在着两种类型的网络管理问题:一种是与软件相关的,例如数据安全性和存取许可;另一种是与硬件相关的问题。这里注重讨论第二种,即通过使用简单网络管理协议(SNMP)和在处理与软件相关的管理问题时所用到的一些思想,把网络硬件作为一个整体进行管理。
介绍SNMP的英文网站很多,但相关的中文网站寥寥无几,这正是鄙人设立本站的初衷所在。这里将从基本原理着手,介绍到底什么是 SNMP,并引导新手如何亲自动手实践。在不久的将来我将给出LINUX和SOLARIS上基于XWINDOWS的简单发布和源码。
1.什么是网络管理?
网络管理分为两类。第一类是网络应用程序、用户帐号(例如文件的使用)和存取权限(许可)的管理。它们都是与软件有关的网络管理问题。这里不作讨论。
网络管理的第二类是由构成网络的硬件所组成。这一类包括工作站、服务器、网卡、路由器、网桥和集线器等等。通常情况下这些设备都离你所在的地方很远。正是由于这个原因,如果当设备有问题发生时网络管理员可以自动地被通知的话,那么一切事情都好办。但是你的路由器不会象你的用户那样,当有一个应用程序问题发生时就可以打电话通知你,而当路由器拥挤时它并不能够通知你。
为了解决这个问题,厂商们已经在一些设备中设立了网络管理的功能,这样你就可以远程地询问它们的状态,同样能够让它们在有一种特定类型的事件发生时能够向你发出警告。这些设备通常被称为“智能”设备。
网络管理通常被分为四类:
当设计和构造网络管理的基础结构时,你需要记住下列两条网络管理的原则:
1.由于管理信息而带来的通信量不应明显的增加网络的通信量。
2.被管理设备上的协议代理不应明显得增加系统处理的额外开销,以致 于该设备的主要功能都被削弱了。
2.什么是SNMP?
简单网络管理协议(SNMP)首先是由Internet工程任务组织(Internet Engineering Task Force)(IETF)的研究小组为了解决Internet上的路由器管理问题而提出的。许多人认为 SNMP在IP上运行的原因是Internet运行的是TCP/IP协议,然而事实并不是这样。
SNMP被设计成与协议无关,所以它可以在IP,IPX,AppleTalk,OSI以及其他用到的传输协议上被使用。
SNMP是一系列协议组和规范(见下表),它们提供了一种从网络上的设备中收集网络管理信息的方法。SNMP也为设备向网络管理工作站报告问题和错误提供了一种方法。
名字 说明
MIB 管理信息库
SMI 管理信息的结构和标识
SNMP 简单网络管理协议
从被管理设备中收集数据有两种方法:一种是只轮询(polling-only)的方法,另一种是基于中断(interrupt-based)的方法。
如果你只使用只轮询的方法,那么网络管理工作站总是在控制之下。而这种方法的缺陷在于信息的实时性,尤其是错误的实时性。你多久轮询一次,并且在轮询时按照什么样的设备顺序呢?如果轮询间隔太小,那么将产生太多不必要的通信量。如果轮询间隔太大,并且在轮询时顺序不对,那么关于一些大的灾难性的事件的通知又会太馒。这就违背了积极主动的网络管理目的。
当有异常事件发生时,基于中断的方法可以立即通知网络管理工作站(在这里假设该设备还没有崩溃,并且在被管理设备和管理工作站之间仍有一条可用的通信途径)。然而,这种方法也不是没有他的缺陷的,首先,产生错误或自陷需要系统资源。如果自陷必须转发大量的信息,那么被管理设备可能不得不消耗更多的时间和系统资源来产生自陷,从而影响了它执行主要的功能(违背了网络管理的原则2)。
而且,如果几个同类型的自陷事件接连发生,那么大量网络带宽可能将被相同的信息所占用(违背了网络管理的原则1)。尤其是如果自陷是关于网络拥挤问题的时候,事情就会变得特别糟糕。克服这一缺陷的一种方法就是对于被管理设备来说,应当设置关于什么时候报告问题的阈值(threshold)。但不幸的是这种方法可能再一次违背了网络管理的原则2,因为设备必须消耗更多的时间和系统资源,来决定一个自陷是否应该被产生。
结果,以上两种方法的结合:面向自陷的轮询方法(trap-directed polling)可能是执行网络管理最为有效的方法了。一般来说,网络管理工作站轮询在被管理设备中的代理来收集数据,并且在控制台上用数字或图形的表示方式来显示这些数据,
这就允许网络管理员分析和管理设备以及网络通信量了。
被管理设备中的代理可以在任何时候向网络管理工作站报告错误情况,例如预制定阈值越界程度等等。代理并不需要等到管理工作站为获得这些错误情况而轮询他的时候才会报告。这些错误情况就是众所周知的SNMP自陷(trap)。
在这种结合的方法中,当一个设备产生了一个自陷时,你可以使用网络管理工作站来查询该设备(假设它仍然是可到达的),以获得更多的信息。
3.什么是被管理设备?
你可能听说过许多关于“SNMP可管理设备”、“与SNMP兼容的设备”或者“被SNMP管理的设备”的说法。但是它们到底什么?它们与“智能设备”又是怎么区别的呢?
简单地说,以上所有说法的意思都是“一个包含网络管理代理实现的网络设备”。这些话也意味着这种代理支持SNMP协议来进行信息交换。正如前面所提到的,一个智能设备可能并不需要使用或支持SNMP协议。那么什么是一个代理呢?
代理
管理代理(agent)是一种特殊的软件(或固件),它包含了关于一个特殊设备和/或该设备所处环境的信息。当一个代理被安装到一个设备上时,上述的设备就被列为“被管理的”。换句话说,代理就是一个数据库。
数据库中所包含的数据随被安装设备的不同而不同。举例来说,在一个路由器上,代理将包含关于路由选择表、接收和发送包的总数等信息。而对于一个网桥来说,数据库可能包含关于转发包数目和过滤表等信息。
代理是与网络管理控制台通信的软件或固件。在这个控制台的“链路”上可以执行以下任务:
● 网络管理工作站可以从代理中获得关于设备的信息。
● 网络管理工作站可以修改、增加或者删除代理中的表项,例如在由代理所维护的数据库中的路由选择表表项。
● 网络管理工作站可以为一个特定的自陷设置阈值。
● 可以向网络管理工作站发送自陷。
请记住,在被管理设备中的代理并不是自愿提供信息的,除非当有一个阈值被超过的事件发生时。
在一些偶然的情况下,在一个特定的设备上可能因为系统资源的缺乏,或者因为该设备不支持SNMP代理所需要的传输协议,而不能实现一个SNMP代理。这是否就意味着你不能监视这个设备呢?答案并不是这样的,在这种情况下并不是完全没有办法的。你可以使用受托代理(proxy agent),它相当于外部设备(foreign device)。
受托代理并非在被管理的外部设备上运行,而是在另一个设备上运行。网络管理工作站首先与受托代理联系,并且指出(通过某种方法)受托代理与外部设备的一致性。然后受托代理把它接收到的协议命令翻译成任何一种外部设备所支持的管理协议。在这种情况下,受托代理就被称为应用程序网关(application gateway)。
如果外部设备不支持任何管理协议,那么受托代理必须使用一些被动的方法来监视这个设备。举例来说,一个令牌环网桥的受托代理可以监视它的性能,并且如果它检测到任何由网桥所报告的拥挤错误时,它就会产生自陷。幸运的是,目前大多数网际互联设备类型都是支持SNMP可管理设备的,所以你可以很容易地使用一个SNMP可管理设备,例如集线器、网桥和路由器。有一些厂商甚至还在他们的网卡上提供SNMP代理。
MIB
我们通常很少把在一个被管理设备中的数据库称为一个数据库。在SNMP术语中它通常被称为管理信息库(MIB)。
一个MIB描述了包含在数据库中的对象或表项。每一个对象或表项都有以下四个属性:
● 对象类型(Object Type)
● 语法(Syntax)
● 存取(Aclearcase/“ target=”_blank" >ccess)
● 状态(Status)
在SNMP规范之一的管理信息结构与标识(SMI;RFC 1155/1065)规范中定义了这些属性。SMI对于MIB来说就相当于模式对于数据库。SMI定义了每一个对象“看上去象什么”。
对象类型
这个属性定义了一个特定对象的名字,例如sysUpTime。它只不过是一个标记。在表示数据时,SMI使用了ASN.1(Abstract Syntax Notation One)。对象必须被“标识”。对于互联网络管理MIB来说,用ASN.1记法来表示的标识符开头如下:
internet OBJECT IDENTIFIER : : = { iso org(3) dod(6) 1 }
或者用一种简单的格式:
1.3.6.1
这是从ASN.1文档中抽取的。它为标识符定义了一个树形的格式。该树是由一个根及与之相连接的许多被标记的节点组成。每一个节点由一个非负整数值和尽可能简明的文字说明所标识。每一个节点可能也拥有同样被标记的子节点。
当描述一个对象标识符(OBJECT INDENTIFIER)时,你可以使用几种格式,最简单的格式是列出由根开始到所讨论的对象遍历该树所找到的整数值。 从根一级开始,这里有三个节点(如图):
● ccitt(0)
● iso(1)
● joint-iso-cci
原文转自:www.ltesting.net
篇9:网络管理协议介绍(一)
随着网络的不断发展,规模增大,复杂性增加,简单的网络管理技术已不能适应网络迅速发展的要求,以往的网络管理系统往往是厂商在自己的网络系统中开发的专用系统,很难对其他厂商的网络系统、通信设备软件等进行管理,这种状况很不适应网络异构互联的发展趋势。20世纪80年代初期Internet的出现和发展使人们进一步意识到了这一点。研究开发者们迅速展开了对网络管理的研究,并提出了多种网络管理方案,包括HEMS、SGMP、CMIS/CMIP等。
IAB最初制订的关于Internet管理的发展策略,其初衷是采用跳MP作为暂时的Internet管理解决方案,并在适当的时候转向CMIS/CMIP。SGMP是在NYSERNET和SURANET上开发应用的网络管理工具,而CMIS/CMIP是20世纪80年代中期国际标准化组织(ISO)和CCITT联合制订的网络管理标准。同时,IAB还分别成立了相应的工作组,对这些方案进行适当的修改,使它们更适于Internet的管理。这些工作组随后相应推出了SNMP(Simple NetWork Management Protoc011988)和CMOT(CMIP/CMIS Over TCP/IPl989)等网络管理协议,下面进行简单介绍。
1.SNMP
简单网络管理协议(SNMP)的前身是1987年发布的简单网关监控协议(SGMP),
SGMP给出了监控网关(OSI第三层路由器)的直接手段,SNMP则是在其基础上发展而来。最初,SNMP是作为一种可提供最小网络管理功能的临时方法开发的,它具有以下两个优点:
(1)与SNMP相关的管理信息结构(SMI)以及管理信息库(MIB)非常简单,从而能够迅速、简便地实现;
(2)SNMP是建立在SGMP基础上的,而对于SGMP,人们积累了大量的操作经验。
SNMP经历了两次版本升级,现在的最新版本是SNMPv3。在前两个版本中SNMP功能都得到了极大的增强,而在最新的版本中,SNMP在安全性方面有了很大的改善,SNMP缺乏安全性的弱点正逐渐得到克服。
2.CMIS/CMIP
公共管理信息服务/公共管理信息协议(CMIS/CMIP)是哦OSI提供的网络管理协议簇。CMIS定义了每个网络组成部分提供的网络管理服务,这些服务在本质上是很普通的,CMIP则是实现CMIS服务的协议。
OSI网络协议旨在为所有设备在ISO参考模型的每一层提供一个公共网络结构,而CMIS/CMIP正是这样一个用于所有网络设备的完整网络管理协议簇。
出于通用性的考虑,CMlS/CMIP的功能与结构跟别MP很不相同,SNMP是按照简单和易于实现的原则设计的,而CMIS/CMIP则能够提供支持一个完整网络管理方案所需的功能。
篇10:网络管理协议
网络管理系统中最重要的部分就是网络管理协议,它定义了网络管理器与被管代理间的通信方法,接下来让我们回顾一下网络管理协议的发展历史,并简单介绍几种网络管理协议。在网络管理协议产生以前的相当长的时间里,管理者要学习各种从不同网络设备获取数据的方法。因为各个生产厂家使用专用的方法收集数据,相同功能的设备,不同的生产厂商提供的数据采集方法可能大相径庭。在这种情况下,制定一个行业标准的紧迫性越来越明显。
首先开始研究网络管理通信标准问题的是国际上最著名的国际标准化组织ISO,他们对网络管理的标准化工作始于1979年,主要针对OSI(开放系统互连)七层协议的传输环境而设计。
ISO的成果是CMIS(公共管理信息服务)和CMIP(公共管理信息协议)。CMIS支持管理进程和管理代理之间的通信要求,CMIP则是提供管理信息传输服务的应用层协议,二者规定了OSI系统的网络管理标准。基于OSI标准的产品有ATT的Accumaster和DEC公司的EMA等,HP的OpenView最初也是按OSI标准设计的。
后来,Internet工程任务组(IETF)为了管理以几何级数增长的Internet,决定采用基于OSI的CMIP协议作为Internet的管理协议,并对它作了修改,修改后的协议被称作CMOT(Common Management OverTCP/IP)。但由于CMOT迟迟未能出台,IETF决定把已有的SGMP(简单网关监控协议)进一步修改后,作为临时的解决方案。这个在SGMP基础上开发的解决方案就是著名的SNMP(简单网络管理协议),也称SNMPv1。
SNMPv1最大的特点是简单性,容易实现且成本低。此外,它的特点还有:可伸缩性SNMP可管理绝大部分符合Internet标准的设备;扩展性通过定义新的被管理对象,可以非常方便地扩展管理能力;健壮性(Robust)即使在被管理设备发生严重错误时,也不会影响管理者的正常工作。
近年来,SNMP发展很快,已经超越传统的TCP/IP环境,受到更为广泛的支持,成为网络管理方面事实上的标准。支持SNMP的产品中最流行的是IBM公司的NetView、Cabletron公司的Spectrum和HP公司的OpenView。除此之外,许多其他生产网络通信设备的厂家,如Cisco、Crosscomm、Proteon、Hughes等也都提供基于SNMP的实现方法。相对于OSI标准,SNMP简单而实用。
如同TCP/IP协议簇的其它协议一样,开始的SNMP没有考虑安全问题,为此许多用户和厂商提出了修改SNMPv1,增加安全模块的要求,
于是,IETF在1992年雄心勃勃地开始了SNMPv2的开发工作。它当时宣布计划中的第二版将在提高安全性和更有效地传递管理信息方面加以改进,具体包括提供验证、加密和时间同步机制以及GETBULK操作提供一次取回大量数据的能力等。最近几年,IETF为SNMP的第二版做了大量的工作,其中大多数是为了寻找加强SNMP安全性的方法。然而不幸的是,涉及的方面依然无法取得一致,从而只形成了现在的SNMPv2草案标准。4月,IETF成立了SNMPv3工作组。SNMPv3的重点是安全、可管理的体系结构和远程配置。目前SNMPv3已经是IETF提议的标准,并得到了供应商们的强有力支持。
SNMP协议
简单网络管理协议(SNMP)已经成为事实上的标准网络管理协议。由于SNMP首先是IETF的研究小组为了解决在Internet上的路由器管理问题提出的,因此许多人认为SNMP在IP上运行的原因是Internet运行的是TCP/IP协议,但事实上,SNMP是被设计成与协议无关的,所以它可以在IP、IPX、AppleTalk、OSI以及其他用到的传输协议上使用。
SNMP是由一系列协议组和规范组成的,它们提供了一种从网络上的设备中收集网络管理信息的方法。
从被管理设备中收集数据有两种方法:一种是轮询(polling-only)方法,另一种是基于中断(interrupt-based)的方法。
SNMP使用嵌入到网络设施中的代理软件来收集网络的通信信息和有关网络设备的统计数据。代理软件不断地收集统计数据,并把这些数据记录到一个管理信息库(MIB)中。网管员通过向代理的MIB发出查询信号可以得到这些信息,这个过程就叫轮询(polling)。为了能全面地查看一天的通信流量和变化率,管理人员必须不断地轮询SNMP代理,每分钟就轮询一次。这样,网管员可以使用SNMP来评价网络的运行状况,并揭示出通信的趋势,如哪一个网段接近通信负载的最大能力或正使通信出错等。先进的SNMP网管站甚至可以通过编程来自动关闭端口或采取其它矫正措施来处理历史的网络数据。
如果只是用轮询的方法,那么网络管理工作站总是在控制之下。但这种方法的缺陷在于信息的实时性,尤其是错误的实时性。多久轮询一次、轮询时选择什么样的设备顺序都会对轮询的结果产生影响。轮询的间隔太小,会产生太多不必要的通信量;间隔太大,而且轮询时顺序不对,那么关于一些大的灾难性事件的通知又会太慢,就违背了积极主动的网络管理目的。
篇11:网络产品代理协议
网络产品代理协议
甲方名称:_________
代表人:_________
地 址:_________
邮政编码:_________
联系电话:_________
传 真:_________
开户银行:_________
帐 号:_________
乙方名称:_________
代表人:_________
地 址:_________
邮政编码:_________
联系电话:_________
传 真:_________
开户银行:_________
帐 号:_________
第一条 协议项目和目的
1.1 甲、乙双方经过协商,乙方申请成为_________网络的代理商,并完全接受乙方的管理规范,经甲方初步审核符合_________代理商必备条件,双方同意签署本代理协议。
1.2 本协议的目的是在甲乙双方之间建立产品或服务的代理体系,保证乙方销售或提供的甲方产品或服务的品质正宗、渠道合法。本协议不意味甲方授予乙方作为自己全权代理人的权限。本协议的.任何条文不得解释成乙方获得了甲方的全权代理权,以及可以以甲方的名义面对任何层面的客户。乙方可以依据本协议使用甲方商标、企业名称、域名等相关信息解释甲方产品或服务的来源和品质,但不得对外宣称自己是甲方的全权代理商。乙方不得以甲方名义面对第三人、对外签署合同,以及以甲方名义从事任何经济行为。
本协议生效后甲方授予乙方_________网络产品代理商资格,由乙方向其直接客户(以下简称客户)销售甲方的域名注册、网站寄放以及甲方在本协议有效期内推出的其它业务。
第二条 双方的权利和义务
2.1 乙方的权利和义务
2.1.1 积极宣传推广相关业务及其增值服务,维护甲方的企业形象和服务品质,如实向客户告知所提供的服务项目及基本报价等,不得进行以次充好、削减服务项目、对免费项目收费等损害甲方和/或客户利益的行为。
2.1.2 乙方办理业务时由乙方与客户签定合同,全部合同权利义务由乙方独立承担,并向客户提供必要的服务和技术支持,解答客户提出的各种问题,乙方可享受甲方提供的各项服务与支持,但应受甲方的成本控制制约,甲方有权不提供。
2.1.3 依照甲方规定提交预付款_________元,乙方承认第一次支付的预付款为必须完成的业绩,乙方上述预付款未使用完而终止本协议,不得要求退还预付款余额。乙方在本协议有效期内完成第一次支付预付款的业绩且没有其他违反本协议的行为,要求中止协议的,帐上余款可以退还。
2.1.4 依照甲方规定,乙方享受甲方产品的代理价格。乙方自行与客户约定的服务价格、收费标准不得低于甲方公开报价。
2.1.5 向甲方及时提供客户的相关资料和支付相关费用以保证业务的顺利进行。
2.1.6 保证服务质量,不得损害甲方整体市场形象,也不得从事其它损害甲方利益的行为。
2.1.7 乙方可以在其公司宣传材料和名片上以及广告内容中使用_________网络代理商字样和统一标识,未经甲方授权,乙方不得以甲方“办事处”、某级别“代理”、“地区代理”或“总代理”等具有垄断性、排他性和其它未经甲方授权的名义进行广告宣传及商业活动。且不得将“_________网络”与乙方作任何实质性联系,其企业名称不得出现“_________网络”等引人误解其为甲方分公司或分支机构或总代理、地区代理的字样。乙方不得做出任何引人误解或引起混淆的行为,使他人误以为乙方是甲方子公司或分公司、关联公司、全权代理或其他实质性关系单位。(5)
篇12:网络产品代理协议
甲方名称:_________
代表人:_________
地 址:_________
邮政编码:_________
联系电话:_________
传 真:_________
开户银行:_________
帐 号:_________
乙方名称:_________
代表人:_________
地 址:_________
邮政编码:_________
联系电话:_________
传 真:_________
开户银行:_________
帐 号:_________
第一条 协议项目和目的
1.1 甲、乙双方经过协商,乙方申请成为_________网络的代理商,并完全接受乙方的管理规范,经甲方初步审核符合_________代理商必备条件,双方同意签署本代理协议。
1.2 本协议的目的是在甲乙双方之间建立产品或服务的代理体系,保证乙方销售或提供的甲方产品或服务的品质正宗、渠道合法。本协议不意味甲方授予乙方作为自己全权代理人的权限。本协议的任何条文不得解释成乙方获得了甲方的全权代理权,以及可以以甲方的名义面对任何层面的客户。乙方可以依据本协议使用甲方商标、企业名称、域名等相关信息解释甲方产品或服务的来源和品质,但不得对外宣称自己是甲方的全权代理商。乙方不得以甲方名义面对第三人、对外签署合同,以及以甲方名义从事任何经济行为。
本协议生效后甲方授予乙方_________网络产品代理商资格,由乙方向其直接客户(以下简称客户)销售甲方的域名注册、网站寄放以及甲方在本协议有效期内推出的其它业务。
第二条 双方的权利和义务
2.1 乙方的权利和义务
2.1.1 积极宣传推广相关业务及其增值服务,维护甲方的企业形象和服务品质,如实向客户告知所提供的服务项目及基本报价等,不得进行以次充好、削减服务项目、对免费项目收费等损害甲方和/或客户利益的行为。
2.1.2 乙方办理业务时由乙方与客户签定合同,全部合同权利义务由乙方独立承担,并向客户提供必要的服务和技术支持,解答客户提出的各种问题,乙方可享受甲方提供的各项服务与支持,但应受甲方的成本控制制约,甲方有权不提供。
2.1.3 依照甲方规定提交预付款_________元,乙方承认第一次支付的预付款为必须完成的业绩,乙方上述预付款未使用完而终止本协议,不得要求退还预付款余额。乙方在本协议有效期内完成第一次支付预付款的业绩且没有其他违反本协议的行为,要求中止协议的,帐上余款可以退还。
2.1.4 依照甲方规定,乙方享受甲方产品的代理价格。乙方自行与客户约定的服务价格、收费标准不得低于甲方公开报价。
2.1.5 向甲方及时提供客户的相关资料和支付相关费用以保证业务的顺利进行。
2.1.6 保证服务质量,不得损害甲方整体市场形象,也不得从事其它损害甲方利益的行为。
2.1.7 乙方可以在其公司宣传材料和名片上以及广告内容中使用_________网络代理商字样和统一标识,未经甲方授权,乙方不得以甲方“办事处”、某级别“代理”、“地区代理”或“总代理”等具有垄断性、排他性和其它未经甲方授权的名义进行广告宣传及商业活动。且不得将“_________网络”与乙方作任何实质性联系,其企业名称不得出现“_________网络”等引人误解其为甲方分公司或分支机构或总代理、地区代理的字样。乙方不得做出任何引人误解或引起混淆的行为,使他人误以为乙方是甲方子公司或分公司、关联公司、全权代理或其他实质性关系单位。
2.1.8 乙方保证其所有经营活动完全符合中国有关法律、法规、行政规章等的规定。如因乙方违反上述规定的行为给甲方带来任何损害,乙方应承担所有法律责任并赔偿给甲方造成的损失。
2.1.9 本协议有效期内及本协议终止或者解除后,乙方承诺不向与甲方构成商业竞争关系的企业、商业机构或者组织提供有关甲方业务、技术等一切相关信息或者资料,否则承担相应的责任。
2.1.10 乙方与甲方的其他代理商之间不得进行恶性竞争或者其它不正当竞争。
2.1.11 本协议所称“与甲方构成商业竞争关系的企业、商业机构或者组织”是指符合下列情形之一的企业、商业机构或者组织:
(一)与甲方处于相同或者相近似的商业、技术领域;
(二)与甲方经营范围相同或者相近似;
(三)与甲方所提供的产品、服务或者所面向的客户群相同或者相近似;
(四)法律、法规规定的其它情形。
2.1.12 乙方如非cnnic授权代理,则不得以cnnic授权代理名义进行活动,否则责任自负。给_________网络造成损失的,应当全额赔偿。
2.1.13 乙方应遵守并促使其用户遵守甲方的各项服务和产品的在线申请/注册条款,乙方的用户违反前述条款的行为将被视为乙方的行为,甲方将直接向乙方追究责任。
2.2 甲方的权利和义务
2.2.1 虽然作为本合同服务标的的第一条所述之业务可能成为乙方与客户服务合同中规定的服务标的,按照本合同约定,乙方以自己的名义与客户建立合同关系并独立承担合同责任,甲方不与乙方的客户建立服务合同关系。
2.2.2 乙方递交的国际域名注册业务,由于实行即付即注方式,一经乙方递交,甲方便视为乙方及客户同意注册此域名,甲方将在乙方的预付款余额足够的前提下及时实行注册;乙方要求的国内域名注册,甲方接到乙方的在线申请及必需文件后,即开始进行查询、注册;虚拟主机设立和开通等其它业务必须在乙方预付款余额足够或收到甲方汇款凭证传真后按业务合同进行。其它业务甲方应在乙方提交申请后及时处理。
2.2.3 甲方向乙方提供完整的售后服务,详细条款由甲、乙双方之间具体的业务合同确定(包括电子版合同形式),但甲方的售后服务只对乙方,不面向客户。
2.2.4 及时将与乙方业务有关的价格细则和变化,市场动态指导通知乙方(一般用电子邮件方式)。
2.2.5 向乙方提供业务范围内的技术支持和技术培训,帮助乙方提高技术能力,拓宽业务范围。
2.2.6 对因乙方违反本协议造成客户或甲方损失的,甲方有权终止本协议并有权要求乙方赔偿损失。
2.2.7 对因甲方过错造成的损失,甲方只向乙方承担责任。该责任的承担以甲、乙双方之间发生的该笔具体业务金额的总额为上限。
2.2.8 对于乙方与其客户之间的纠纷、争议、损失、侵权、违约责任等,均由乙方与客户自行解决,甲方不介入乙方与客户的纠纷、争议等,也不对客户的任何损失负责。
2.2.9 在本协议有效期内,甲方有权根据市场情况修订定价和管理规范;乙方保证接受甲方在本协议履行期内对相关管理条款的修订。修订一旦作出,甲方会提前_________天发送电子邮件或在甲方网站以公告形式通知乙方,修订从规定的日期起生效。
2.3 客户要约下的代理商的退出
2.3.1 甲方承诺不以任何形式主动提出与乙方客户(以下称“客户”)建立直接的经济关系。
2.3.2 应客户的书面要约,甲方可以与客户签订服务合同,建立服务关系,尤其在下述情况下:
(一)客户提交了自己作为域名、网站、服务器的所有权人的证明;
(二)客户有证据证明乙方提供的服务不能达到乙方与客户所签订的合同要求。没有合同要求时,不能达到本行业一般人士认可的合理要求。
(三)客户提交了已经通知乙方终止合同的通知书。
2.3.3 甲方不对客户和乙方合同的履行和终止承担任何责任,由合同签订一方直接向对方承担责任。
2.3.4 甲方与客户签订服务合同后,甲乙双方签订的合同中有关向该客户提供服务的所有约定自行终止。
2.3.5 甲方与客户签订服务合同后,对乙方就该客户的服务向甲方交纳的费用作如下处理:
(一)按照甲方和乙方合同约定,乙方未缴纳的部分不再缴纳;
(二)乙方已经缴纳给甲方的费用,在甲方扣除按照实际提供服务的时间占合同约定的总服务时间的比例计算的相应费用后,作如下处理:a.客户书面提出请求,要求将该部分费用转为与甲方签订合同中规定的应交服务费的部分或全部的,甲方将此费用自动转为该服务费;b.客户向甲方出具书面同意书,同意将此费用退还乙方的,甲方将此费用退回乙方。
第三条 对代理商的奖惩
3.1 依据美满网络的相关规定给予乙方产品价格优惠。
3.2 乙方成为甲方代理后,有违反代理商信誉和宗旨的,或者违反本协议,以及给客户或者甲方造成严重损害的,甲方有权取消其代理资格,追究其法律责任,同时本协议终止。
第四条 协议有效期
本协议有效期为_________年,自_________年_________月_________日至_________年_________月_________日。
第五条 企业名称、商标、商号、品牌、域名和网站
5.1 在履行本协议期间,乙方只能在本协议约定的范围内适当地使用甲方的'企业名称、商标、商号、品牌、域名和网站的名义,不超越甲方认可工作范围的行为,更不得用于其它的目的和事项。乙方在使用甲方的企业名称、商标、商号、品牌、域名和网站时,应当完全为甲、乙双方在本协议中约定的内容服务,不得夹带其他业务内容或经营目的。乙方在其自身宣传材料、名片、市场宣传、网站建设以及其他任何方面使用甲方认可的名称、域名和网站,都必须事先书面通知甲方,并获得甲方的书面许可,方可进行。否则视为对甲方企业名称、商标、商号、品牌、域名和网站的侵权,应负相应的责任。乙方使用甲方名称、商标、域名的用途仅限于对其销售的产品或服务的描述,不得进行使人联想销货方或服务提供商为甲方的任何行为。
5.2 乙方及其职员承诺在履行本协议期间及在本协议期满后不对甲方所有或将要拥有的商标、企业名称、域名等进行贬低或者其它任何损害,也不对甲方互联网网页或者网站进行任何贬低、抄袭、歪曲、破坏或其它损害。在协议期间乙方应努力工作以维护、提高上述商标、企业名称、域名的价值。
5.3 乙方承诺,若与甲方终止、解除本协议后未经甲方书面同意,不得向他人明示或暗示与上述甲方之商标、企业名称、域名有任何实质性联系,或者以其它方式明示或暗示自己系甲方全权代理商。
5.4 因上述5.1、5.2和5.3情形给第三人或者甲方造成损害的,乙方承担一切责任。
第六条 协议变更、终止及违约责任
6.1 甲、乙双方应本着诚实信用的原则履行本协议。任何一方在履行中采用欺诈、胁迫或者暴力的手段,另一方均可以解除本协议并要求对方赔偿损失。
6.2 任何一方在履行中发现或者有证据表明对方已经、正在或预期将要违约,可以终止履行本协议,但应及时通知对方。若对方对本协议继续不履行、履行不正当或者违约,该方可以解除本协议并要求对方赔偿损失。
6.3 在协议执行期间,如果双方或一方认为需要终止,应提前一个月通知对方,双方在财务结算完毕、各自责任明确履行之后,方可终止协议。因一方违反本协议的约定擅自终止本协议,给对方造成损失的,应赔偿对方损失。在本协议期满时,如双方同意,可续签本协议。
6.4 在6.3之情形下,对方应继续完成当月的财务结算,各自明确责任。
6.5 经双方协商达成一致,可以对本协议有关条款进行变更,但应当以书面形式确认。
6.6 订立本协议所依据的法律、行政法规、规章发生变化,本协议应变更相关内容;订立本协议所依据的客观情况发生重大变化,致使本协议无法履行的,经甲乙双方协商同意,可以变更或者终止协议的履行。
6.7 因本协议一方经营情况发生重大困难、濒临破产进入法定整顿期或者被清算,任意一方可以解除本协议。
第七条 争议解决
在本协议执行期间如果双方发生争议,双方应友好协商解决。如果协商不成,双方同意向_________法院起诉。
第八条 不可抗力及意外事件
8.1 因不可抗力或者其他意外事件使得本协议的履行不可能、不必要或者无意义的,任一方均可以解除本协议。遭受不可抗力、意外事件的一方如全部或部分不能履行本协议、解除或延迟本协议,应自不可抗力、意外事件发生之日起五日内,将事件情况以书面形式通知另一方,并于事件发生之日起二十日内,向另一方提交导致其全部或部分不能履行或延迟履行的证明。
8.2 遭受不可抗力的一方应采取一切必要措施减少损失,否则应就扩大的损失承担责任。
8.3 本协议所称不可抗力、意外事件是指不能预见、不能克服并不能避免且对一方或双方当事人造成重大影响的客观事件,包括但不限于自然灾害如洪水、地震、瘟疫流行和风暴等以及社会事件如战争、**、政府管制、电信原因等。
第九条 附则
9.1 本协议的订立、效力、解释、履行和争议的解决均适用中华人民共和国法律。
9.2 除法律本身有明确规定外,后继立法或法律变更对本协议不具有溯及力。双方可根据后继立法或变更后的法律,经协商一致对本协议进行修改或补充,但应采用书面形式。
9.3 一方变更通知、通讯地址或其它联系方式,应自变更之日起十日内,将变更后的地址、联系方式通知另一方,否则变更方应对此造成的一切后果承担责任。
9.4 本协议的理解与解释应依据协议目的和文本原义进行,本协议的标题仅是为了阅读方便而设,不应影响本协议的解释。
9.5 任何一方对本协议的内容和对方当事人的商业机密均负有保密的义务。
9.6 本协议一式二份,双方各执一份,经签字、盖章后生效,二份协议具有同等效力。
9.7 本协议由上述甲、乙双方授权代表签署于_________。
甲方(盖章):_________ 乙方(盖章):_________
负责人(签字):_________ 负责人(签字):_________
_________年____月____日 _________年____月____日
篇13:网络协议的形式化分析
摘 要:随着形式化方法和技术的日趋完善,网络协议的开发已逐步从非形式化描述、手工方法实现过渡到已形式化描述技术为基础,渗透到网络协议分析、综合、测试等各环节的软件工程方法。
本文从网络协议的基本要素、协议的形式化模型介绍了网络协议,并从协议的性质描述、不变性分析、可达性分析、基于有序二叉判决图的符号模型检验对网络协议进行了形式化设计与验证,最后进行了测试。
篇14:网络协议的形式化分析
协议分析和设计其中一项核心技术就是形式化模型。
网络协议的形式化规格可以在形式化模型的基础上实现,从而为协议的形式化分析与验证、协议综合、协议测试、以及协议实现等提供良好的基础。
形式化模型包括以下几点。
2.1 协议的有限状态机模型
有限状态机包括有限状态集、输入集和状态转移规则集;有限状态集,用于描述系统中的不同状态;输入集用于表征系统所接收的不同输入信息;状态转移规则集用于表述系统在接收不同输入下从一个状态转移到另外一个状态的规则。
2.2 Petri网模型
Petri网是一种适合于并发、异步、分布式系统描述与分析的图形数学工具。
Petri网已成为网络协议分析和设计的典型形式模型之一。
它作为系统描述和分析的工具,除了具有静态结构外,还包括了描述系统动态行为的机制。
这一特征是通过允许位置中包含令牌,令牌可以依据迁移的引发而重新分布来实现的。
2.3 协议的时态逻辑模型
时态逻辑是模态逻辑的扩充,它涉及含有时间信息的事件、状态及其关系的命题、谓词和演算。
要描述一个协议,首先要标识系统中的个体常量,定义变量,表达命题、谓词函数。
以下为命题与谓词的表达。
(1)个体常量m0,m1表示序号为0,1的报文;any表示无序号的任意报文;ack0,ack1表示序号为0,1的认可报文。
(2)个体变量m代表m0,m1,any;ack代表ack0,ack1;seq代表0,1序号;a代表原子行动或事件。
(3)谓词at(a)开始一个协议行动或事件。
2.4 通信进程演算模型
通信进程演算是计算机通信系统的基本理论模型,它也是许多形式化语言的基础。
通信进程演算的基本成分是事件与进程,而进程是通过顺序、选择和并行三个基本算子来定义的。
一般用大写字母来表示进程,用小写字母来表示事件。
3 协议的形式化设计与验证
协议的设计验证是对协议的功能和性能进行校验的过程,是保证协议开发质量的必要环节。
协议形式化验证首先需要对协议性质进行系统的语言描述,然后基于协议的形式模型或者形式语言进行描述,通过适当的技术对协议性质进行分析校验。
3.1 协议的性质描述
设计网络协议的目的就是设计出的协议要满足功能和性能。
一方面,协议本身应用问题的特征性对协议的功能和性能具有特殊的要求;另外一方面,协议的功能和性能所拥有的协议的性质,是独立于问题的一般性要求。
协议的性质包括活性、安全性、一致性、完备性、可恢复性和有界性六方面。
(1)活性就是指无死锁性,如果在协议运行时候发生一些好事,就叫协议的活性,像发生预定的事情,能够到达指定的协议状态,可以进行应该进行的协议活动等都是协议的好事情。
协议的终止性和进展性两反面可以体现协议的活性。
也就是说具有终止性和进展性的协议就拥有活性。
如果协议能够在从任何一状态下开始运行都能正确的到达终止状态,就是协议的终止性。
终止状态在某些情况下也会和初始状态是同一个。
所以协议总能从初始状态开始运行然后正确的回到初始状态,并可反复运行,这就是协议的可重复性,即可重复性=终止性+进展性=活动性。
(2)安全性就是没有坏的事情出现在协议运行的时候。
像不可接收事件、不可进一步向前的状态、错误的行动、错误的条件、变量值越界等都是坏的事情。
坏事情一般会导致死锁和活锁两种情况发生。
(3)一致性就是指协议的服务行为和协议行为保持一致。
像协议需要为用户提供的所要求的业务和不用提供用户没有要求提供的业务都体现了协议的一致性。
(4)完备性,协议拥有完全符合协议环境各种要求的性质,也就是在考虑了用户要求、用户特点、通道性质、工作模式等各种潜在影响因素之后构建的协议构造,同时兼备考虑各种错误事件以及异常情况的处理。
(5)可恢复性是指当协议出现差错后,协议本身能否在有限的步骤内返回到正常状态下执行。
可恢复性是和可重复性相关联的一个性质。
(6)有界性是与协议中的变量和参数有关的一个性质,用来衡量协议中的变量和参数是否超过其限定值。
3.2 不变性分析
系统不变性是某一逻辑公式表达的系统性质的永真性,它不随系统的状态变化或执行序列而改变。
系统不变性分析实际包含两个任务。
第一是分析系统应该具有的不变性质,并用逻辑公式来表示,第二个任务是分析系统的执行,证明该逻辑公式成立。
3.3 可达性分析
可达性分析是试图产生和检查协议所有部分的可达状态,进而检验基于状态或者基于状态序列的协议性质。
所谓可达状态是指协议从初始状态开始经历有限次转换之后可达到的状态,所有可达状态构成了系统状态空间。
可达性分析算法是用来生成并检验一个特定的初始状态可达的所有状态算法。
3.4 基于有序二叉判决图的符号模型检验
篇15:网络协议的形式化分析
协议一词最早出现在通信系统,协议历史拥有像通信一样古老的历史。
从古至今,人们一直都在不断的探索研究,怎样才能建立一个能够在快速在远距离上传输信息的系统。
如果想要实现信息在远距离间传递,不光需要硬件设备,也就是发送和接收信号的设备,还需要建立一整套能够规定信号所代表的意义以及传递接收信号方式的规则、标准或者约定,这个规则就是协议。
1 网络协议的基本要素
一套完整的,能够确保计算机网络可以顺利进行数据通信的网络协议要包括下边的五点基本要素:(1)协议所提供的服务。
(2)对协议运行环境所进行的假设。
(3)用来实现协议的消息词汇。
(4)对该词汇中每个消息的编码。
(5)用来控制消息一致性的过程规则。
实现计算机之间高度自动化数据通信的网络协议,一般都会极其复杂。
借鉴对复杂系统问题分析研究的思想,分层结构对于理解和设计网络协议有着重要的作用。
“七层”协议结构模型是目前网络协议的标准体系结构,也成为了网络协议开发的基础。
篇16:网络协议与标准(上)网络知识
摘要:计算机 网络 的硬件设备,它们是承载计算机通信的实体,然而它们是怎样有序地完成计算机之间的通信任务的呢? 计算机网络的硬件设备,它们是承载计算机通信的实体。然而它们是怎样有序地完成计算机之间的通信任务的呢? 具体地说,共享计算机网络的资源
摘要:计算机网络的硬件设备,它们是承载计算机通信的实体。然而它们是怎样有序地完成计算机之间的通信任务的呢?
计算机网络的硬件设备,它们是承载计算机通信的实体。然而它们是怎样有序地完成计算机之间的通信任务的呢?
具体地说,共享计算机网络的资源,以及在网中交换信息,就需要实现不同系统中的实体的通信。实体包括用户应用程序、文件传送包、数据库管理系统、电子设备以及终端等,系统包括计算机、终端和各种设备等。一般说来,实体是能发送和接收信息的任何东西,而系统是物理上明显的物体,它包含一个或多个实体。两个实体要想成功地通信,它们必须具有相同的语言。交流什么,怎样交流及何时交流,都必须遵从有关实体间某种互相都能接受以一些规则,这些规则的集合称为协议,它可以定义为两实体间控制数据交换的规则的集合。
上面洋洋洒洒地一大通话,可能早已让读者晕头转向了。简单地说,所谓的协议,就象人与人交流的语言一样,它是计算机网络通信实体之间语言。不同的网络结构可能使用不同的网络协议;而同样的,不同的网络协议设计也就造就了不同的网络结构。下面将从计算机网络协议参考模型开始,逐一介绍局域网、广域网、Internet的计算机网络通信协议。
6.1 开放系统互连参考模型OSI
自从计算机网络面世以来,它不断地促进着社会的发展,而且人类对计算机网络的依赖与需求都愈演愈烈,所以许许多多的计算机厂商都建立了自己一套与众不同的网络协议体系,然后配套一系列相对应的计算机网络硬件设备来完成计算机的连网需求,而且它们之间并不能通用。这样造成了如果你选择了一个厂商的网络产品,就被捆绑在这个厂商上,不得不“从一而终”,这显然降低了整个网络系统的可扩展性,甚至妨碍了计算机网络的更一步发展。
为此,国际标准化组织(ISO、International Standard Organization)在1979年建立了一个专门的分委员会来研究和制定一种开放的、公开的、标准化了的网络结构模型,以期用它来实现计算机网络之间相互联接与沟通。
经过一段时间后,ISO组织提出了一套称为“开放系统互联参考模型”(OSI、Open System Interconnection)。它定义了一套用于连接异种计算机的标准框架。由于ISO组织的权威性,加上人们需要一个相互兼容、共同发展的,新的网络体系,所以OSI参考模型成为了各大厂商努力遵循的标准。到了今天,虽然网络协议并不是完全与它一致的,但却都是根据它来制定的,所以确保了它们的开放性和兼容性。从某种意义上说,OSI参考模型已成为了计算机网络协议的“金科玉律”。
OSI参考模型采用了分层的结构化技术,将功能逻辑上划分开来,以使整个结构具有较高的灵活性。OSI参考模型共七层:应用层(Application Layer)、表示层(Presentation Layer)、会话层(Session Layer)、传输层(Transport Layer)、网络层(Network Layer)、数据链路层(Data Link Layer)、物理层(Physical Layer)。
7. 应用层(Application)
6. 表示层(Presentation)
5. 会话层(Session)
4. 传输层(Transport)
3.网络层(Network)
2.数据链路层(Data Link)
1. 物理层(Physical)
表6-1 OSI七层结构
有一句英文短句可以帮助你来记住它们的顺序:All people seem need to data process.每个单词的最前一个字母与每一个层相对应。下面我们就逐层作一相对简单的介绍:
6.1.1 物理层
物理层,它通过一系列协议定义了通信设备的机械的、电气的、功能的、规程的特征。
机械特征:规定线缆与网络接口卡的连接头的形状、几何尺寸、引脚线数、引线排列方式、锁定装置等一系列外形特征;
电气特征:规定了在传输过程中多少伏特的电压代表“1”,多少伏特代表“0”;
功能特征:规定了连接双方每个连接线的作用:用于传输数据的数据线、用于传输控制信息的控制线、用于协调通信的定时线、用于接地的地线;
过程特征:具体规定了通信双方的通信步骤,
一句话,物理层的所有协议就是人为规定了不同种类传输设备、传输媒介如何将数字信号从一端传送到另一端,而不管传送的是什么数据。从这里我们可以判断出中继器和非交换技术的集线器是一种工作在物理层上的设备,因为它们都不关心它们传送的是什么设备,也不负责数据的正确到达目的地。
6.1.2 数据链路层
数据链路层,在物理层已能将信号发送到通信链路中的基础上,完成保证相邻结点之间有效地传送数据的任务。正在通信的两个站在某一特定时刻,一个发送数据,一个接收数据。数据链路层通过一系列协议将实现以下功能:
1) 封装成帧:把数据组成一定大小的数据块,我们称之为帧。然后以帧为单位发送、接收、校验数据;
2) 流量控制:对发送数据的一方,根据接收站的接收情况,实时地进行传输速率控制,以免出现发送数据过快,接收方来不及处理而丢失数据;
3) 差错控制:对接收数据的一方,当接收到数据帧后对其进行检验,如果发现错误,则通知发送方重传;
4) 传输管理:在发送端与接收端通过某种特定形式的对话来建立、维护和终止一批数据的传输过程,以此对数据链路进行管理。
就发送端而言,数据链路层将来自上层的数据按一定规则就成比特流送到物理层处理;就接收端而言,它通过数据链路层将来自物理层的比特流合并成完整的数据帧供上层使用。
根据数据链路层的需要,必须唯一的标识出每个站点。现在最常用的方法是将网络接口卡(网卡)编上一个唯一的编号。习惯上,这个编号称为MAC地址。
实际上很大一部分的数据链路层的功能是由网卡来完成的,网卡工作在数据链路层,网桥需要将物理层的比特流合并成完整的数据帧,以得知其接收站点的地址,所以也是工作在数据链路层的一种网络设备。
6.1.3 网络层
网络层,用于从发送端向接收端传送分组。
也许读者会觉得不可思议,不是数据链路层已经保证了相邻节点之间无差错传送数据帧了吗?那么网络层到底有什么用呢?它存在的主要目的就是解决以下问题:
1) 通信双方并不相邻:在计算机网络中,通信双方可能是相互邻接的,但也可能并不是邻接的,这样当一个数据分组从发送端发送到接收端的过程中,就可能在这个中间要经过多个其它网络结点,这些结点暂时存储“路过”的数据分组,再根据网络的“交通状况”选择下一个结点将数据分组发出去,直到发送到接收方为止。
2) 正如前面所阐述的一样,由于OSI参考模型是出现在许多网络协议之后的,它就必须为使用这些已经存在的网络协议的计算机网络之间的相互通信作出贡献。事实上,网络层的一些协议解决了这样的异构网络的互联问题。
另外,上一章所提到的路由器、第三层交换机都是用于实现根据网络的“交通状况”
选择下一个站点将数据分组发出去的功能,所以它们都是网络层的设备。
6.1.4 传输层
传输层,实现发送端和接收端的端口到端口的数据分组传送。
传输层的出现是为了更加有效地利用网络层所提供的服务。它主要体现在以下两方面:
1) 将一个较长的数据分成几个小数据报发送:由于实际在网络上传递的每个数据帧都是有一定大小限制的。假设如果我们要传送一个字串“123456789”,它太长了,网络服务程序一次只能传送一个数字(当然在实际中不可能这么小,这里仅是为了方便讲解作的假设),因此,网络就需要将其分成9次来传递。就发送端而言当然是从1传到9的,但是由于每个数据分组传输的路径不会完全相同(因为它是要根据当时的网络“交通状况”而选择路径的嘛),先传送出去的包,不一定会先被收到,因此接收端所收到的数据的排列顺序是与发送的顺序不同的。而传输层的协议就给每一个数据组加入排列组合的记号,以便接收端能根据这些记号将它们“重组”成原来的顺序。
2) 解决通信双方不只有一个数据连接的问题:这个问题从字面上可能不容易理解,实际上就是指,比如我用电脑与另一台电脑连接拷贝数据是同时,又通过一些交谈程序进行对话。这个时候,拷贝的数据与对话的内容是同时到达的,传输的协议还负责将它们分开,分别传给相应的程序端口。这也就是端到端的通信。
6.1.5 会话层
相对于其它层来说,会话层比较简单,它主要的服务是管理对话控制。比如说,在传输的数据中加入检查点来使通信双方同步。
6.1.6 表示层
表示层以下的各层只关心从这里到那里可靠地传输数据,而表示层则关心的是所传送的信息的语义与语法。它负责将收到的数据转换为计算机内的表示方法或特定的程序的表示方法。也就说,它负责通信协议的转换、数据的翻译、数据的加密、字符的转换等工作。
6.1.7 应用层
应用层,就是直接提供服务给使用者的应用软件。比如电子邮件、在线交谈程序都属于应用层的范畴。
6.1.8 OSI参考模型工作模式
上面一大段的文字也许让大家都感到晕头转向了,让我们一起来整理一个思路。
图6-1 OSI参考模型工作模式
原文转自:www.ltesting.net
篇17:新知:了解WCCP协议网络知识
从历史上看,代理 服务器 有两种类型:一种是在线代理服务器,拦截通过这些代理服务器的通信;另一种需要经过设置的客户机运行这些代理服务器,如SOCKS代理,当然,每一种代理服务器都有自己的好处。设置客户机是很烦人和昂贵的,如果可能的话应该避免使用这种
从历史上看,代理服务器有两种类型:一种是在线代理服务器,拦截通过这些代理服务器的通信;另一种需要经过设置的客户机运行这些代理服务器,如SOCKS代理。当然,每一种代理服务器都有自己的好处。设置客户机是很烦人和昂贵的,如果可能的话应该避免使用这种代理服务器。设法直接在通信通道上得到代理服务器是很困难的,特别是在有多余的电路或者替代的路径的时候。但是,许多厂商现在开始支持一种相对比较新的协议。这种协议也许能够在这两种代理服务器领域提供最佳的性能。这个协议就是WCCP协议。有人把这个协议称作“Web缓存控制协议”,还有人把这个协议称作“Web缓存协调协议”。不管它代表什么意思,WCCP协议不是传统意义上的路由协议,它将在未来引导你的网络的通信,
因此,你应该迅速熟悉这个协议的工作情况和好处。
简单的说明是,这个协议能让一台路由器与你的缓存服务器对话。它们谈论的是这台路由器应该拦截什么类型的通信并且通过一个GRE隧道重新引导到缓存。WCCP第二版支持身份识别等安全措施,支持多台路由器、缓存路由器和许多协议。因此,除了WWW HTTP之外,你还可以做文件服务器和其它类型的缓存。
因此,如果你在想你需要一个缓存或者代理服务器,WCCP模式肯定是你应该考虑的东西。但是,因为它有些不同,你需要考虑下面这些事情:
・从客户机到PC之间的通信不能直接在缓存和客户机之间传输,但是,可以通过路由器多次传输。这就意味着你需要更多的功能。不要减少具有WCCP功能的路由器的处理和内存功能。关注通信流量,这样你才能不产生瓶颈。
・你需要准备让你的服务台或者网络运行技术支持人员排除更复杂的环境中的故障。
・就像VoIP正在引起语音和数据IT部门产生结构性的变化一样,WCCP等许多新技术将使服务器、应用程序和网络技术支持团队之间的界限变得模糊不清。在你的网络出现第一次故障之前,你要把这些区别搞清楚。
原文转自:www.ltesting.net
★ 网络求职的陷阱
★ 开放防火墙端口实现 Robocopy 文件复制服务器教程
★ 日照市中考作文
【网络协议:Ethereal协议分析系统介绍网络知识(精选17篇)】相关文章:
八年级上册关于诚信的作文2022-04-30
4月预备党员思想汇报:建设学习型党组织2022-05-07
对于房屋建筑工程中施工质量管理的思考论文2023-08-18
美丽英语格言句子2022-11-24
说礼的初一作文2023-09-13
校园青春励志广播稿优秀2022-06-03
无线传感器网络中的关键技术2023-12-19
网络管理协议的发展历史和新趋势2022-10-25
计算机网络实验报告2023-08-05
DSP与单片机的一种高速通信实现方案2022-05-04