icmp协议范文

时间:2023-02-21 23:20:34

icmp协议

icmp协议范文第1篇

关键词:网络延迟测量;ICMP;报文;LSRR

中图分类号:TP393文献标识码:A文章编号:1009-3044(2012)06-1271-02

Research of Network Delay Measurement Based on ICMP

HE Hui

(Network Center, Lanzhou Polytechnic College, Lanzhou 730050,China)

Abstract: The expansion of the scale of network and network data of the phenomenon of congestion frequent, asked to delay the measure? ment network theory and method for further research. Based on the most commonly used ICMP TCP/IP protocol, can be an effective measure of network delay, the article introduced the use of the commonly used for measuring delay ICMP messages and introduce the basic method of measurement, and the application example was given.

Key words: network delay measurement; ICMP; datagram; LSRR

网络延迟是报文在传输介质中传输所用的时间,即从报文开始进入网络到离开网络之间的时间,单位为毫秒(ms)。要测量远端网络节点与管理工作站的延迟情况,须追踪(Trace)报文传输所经过的网络路径,逐一测量报文传输路径上各网段的延迟时间。若要测量管理工作站之外两个相邻节点A、B之间的网络延迟,需要向这两个A、B节点发送报文,用报文返回的时间减去报文到达A节点和从B点返回的时间,即可得到报文通过A、B节点之间的延迟时间,最常用延迟测量方式是TCP/IP协议所提供的ICMP(Inter? net Control Message Protocol,Internet控制报文协议)[1]。

1 ICMP协议与常用报文

1.1 ICMP协议

ICMP协议是一种面向连接的协议,用于传输出错报告控制信息。ICMP是TCP/IP协议族的一个子协议,属于网络层协议,主要用于在主机与路由器之间传递控制信息,包括报告错误、交换受限控制和状态信息等。当遇到IP数据无法访问目标、IP路由器无法按当前的传输速率转发数据包等情况时,会自动向发送端发送ICMP消息。

可以将ICMP协议定义的9种报文格式(Message Type)分为两类[2],第一类是错误报文(Error Message),共5种,如表4.1所示;第二类是消息报文(Information Message),共4种,如表4.2所示。当数据在IP网络传输有异常情况产生时,被测主机或接收端主动向发送端(网管工作站)发送消息,提醒发送端停止或调整信息发送方式,这些由接收端向发送端送出的消息就是第一类格式的报文,即错误报文。第二类(消息报文)由数据的发送者主动提出,希望目的主机(接收端)回应的报文。

1.2常用报文

网络延迟测量中最常使用的ICMP报文是Echo Request、Echo Reply和Time Exceeded。

1) Echo Request/Echo Reply

Echo Request/Echo Reply是ICMP协议中最常用的报文格式,Echo Request要求目的主机在收到消息后做一个简单的回答,以检查网络是否通畅以及目的主机是否在线(alive);Echo Reply是专门响应Echo Request的报文,若目的主机正常,则会向ICMP发送端主机发送Echo Reply报文――“我在线”。Echo Request/Echo Reply属于消息报文(Information Message),只有在发送端下达指令时才会产生。

发送Echo Request消息报文最常见的程序是“ping”。利用ping操作,使用者可以立即得到两个信息,第一是目的主机是否仍然正常运行,第二是数据包来回的时间,即网络延迟。ping程式具有简单的工作原理:向目标主机发出ICMP报文后,就进行侦听(lis? ten),等待目的主机的响应,若目的主机超过指定的时间仍没有响应,则认为目的主机“Time out”。

2) Time Exceeded

为防止无法到达目的地的数据包在网络中无限制地传递,IP协议的设计者在IP协议的包头设计了一个8位的TTL(Time To Live)字段,TTL字段设置的值是数据包在网络中可以跳跃的次数上限。TTL是由数据包的发送者设置的,在前往目的地的过程中,每经过一台主机或设备,TTL的值就减一,如果在数据包到达目的地前, TTL的值被减到了0,那么这个数据包将作为一个ICMP错误的数据包被丢弃。

通常,数据包从发送端被送出时,TTL值一般会设置为该字段所允许的最大值255,若被送出的数据包的TTL值被减到0,则表示该数据包已经“迷路”。在IP协议中,传送数据包的最后一个节点(hop)会自动放弃该数据,而此时,发送端还不知道数据已经丢失,因此,丢弃数据的节点会向发送端ICMP报文,这个报文就是Time Exceeded[3]。

2利用ICMP测量网络延迟

根据上述ICMP协议的功能,就可以对网络上任意节点的网络延迟进行测量。首先送出特定TTL的Echo Request报文,然后等待网络中继节点反馈回来的Time Exeeded消息,并记录数据包的往返时间,计算出数据包的每个网段之间的网络延时状况。

如图1所示,路由器Router1到路由器Router5之间网络正常。主机172.16.254.10向主机210.26.22.80发送ping包,设置该数据包的TTL值为1,当数据包经过路由器Router1时,TTL值将减为0,Router1会向主机172.16.254.10回传Time Exceeded报文,该报文中会包含Router1的IP地址,这样就可以知道由主机172.16.254.10向主机210.26.22.80发送数据的第一站就是Router1。主机172.16.254.10发送ping包一直到收到Time Exceeded报文的时间及时往返路由器Router1的时间。

图1 ICMP延迟测量1

图1中,主机172.16.254.10向主机210.26.22.80再次发送ping包,这次就TTL值设为2,这样数据包经过路由器Router2时TTL值会减为0,主机172.16.254.10会收到来自Router2的Time Exceeded报文,同理可以计算出主机172.16.254.10到Router2之间的延迟。接着用主机172.16.254.10到Router2的延迟减去到Router1的延迟,这个差值就是路由器Router1与Router2之间的网络延迟时间。以此类推,即可完整的计算出源主机172.16.254.10到目的主机210.26.22.8的路径和其中每一网段的网络延迟。

利用LSRR(Loose Source Record Route,宽松的源站及记录路由)[4]可以指定数据包所经过的路由,LSRR将所要经过节点的IP地址依次放在数据包IP头的选项(option)字段,传递数据包的路由器会读取该选项(option)并依序传送数据包。这样就可以测出网络上任意两个节点的网络延迟。

图2中,要测量节点A与节点B之间的网络延迟,首先可以测量出节点S到节点A之间的网络延迟X和节点S到节点B间的延迟是Y,然后从节点S发送一个ICMP包,利用LSRR指定该ICMP包的路径为从节点A到节点B,所以该ICMP包会按照图2中的箭头方向传递,并最终返回到节点S,设该ICMP包的网络延迟为Z,则节点A到节点B之间的网络延迟应该是:Z-Y-X。

3结束语

本文从网络延迟和延迟测量的基本方法入手,介绍了ICMP协议的基本概念和常用报文,详细介绍了在网络延迟测量中最常使用的ICMP报文Echo Request、Echo Reply和Time Exceeded,最后,通过LSRR(Loose Source Record Route,宽松的源站及记录路由)指定数据包所经过的路由,测量出网络上任意两个节点的网络延迟。

参考文献:

[1]陈银桂.基于电力线通信的智能家居网络系统研究[D].哈尔滨:哈尔滨理工大学,2009.

[2] William Stallings.SNNP网络管理[M].胡成松,汪凯,译.北京:中国电力出版社,2001.

[3]武孟军.精通SNMP[M].北京:人民邮电出版社,2010.

icmp协议范文第2篇

关键词:DELPHI;ICMP协议;监控

中图分类号:TP311.11 文献标识码:A 文章编号:1007-9599 (2012) 17-0000-02

1 DELPHI简介

Delphi,是Windows平台下著名的快速应用程序开发工具(Rapid Application Development,简称RAD)。它的前身,即是DOS时代盛行一时的“BorlandTurbo Pascal”,最早的版本由美国Borland(宝兰)公司于1995年开发。主创者为Anders Hejlsberg。经过数年的发展,此产品也转移至Embarcadero公司旗下。Delphi是一个集成开发环境(IDE),使用的核心是由传统Pascal语言发展而来的Object Pascal,以图形用户界面为开发环境,透过IDE、VCL工具与编译器,配合连结数据库的功能,构成一个以面向对象程序设计为中心的应用程序开发工具。

2 ICMP协议

2.1 ICMP简介

ICMP是(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。ICMP在网络中的主要作用是:主机探测、路由维护、路由选择、流量控制。Ping的过程实际上就是ICMP协议工作的过程。还有其他的网络命令如跟踪路由的Tracert命令也是基于ICMP协议的。Windows 2000提供的icmp.dll模块,用于网络ICMP请求。

2.2 ICMP报文

ICMP报文分为两种,一是错误报告报文,二是查询报文。每个ICMP报头均包含类型、编码和校验和这三项内容,长度为8位,8位和16位,其余选项则随ICMP的功能不同而不同。在网络设备监测时主要用到是ICMP_ECHO和ICMP_ECHOREPLY,它们分别代表:请求回送和请求回应。

2.3 工作原理

简单来ICMP的工作原理是使用一个ICMPECHO数据包来探测主机地址是否存活,通过简单的发送一个ICMPECHO(Type 8)数据包到目标主机,如果ICMPECHOReply(ICMPtype0)数据包接受到,说明主机是存活状态。如果没有就可以初步判断主机没有在线或者使用了某些过滤设备过滤了ICMP的REPLY。这种机制就是我们通常所用的ping命令来检测目标主机是否可以ping到。回送消息的源地址是回送响应消息的目的地址。若要形成一个回送响应消息,应该将源和目的地址交换,将类型代码更改为0,重新计算机校验码。

下面结合一个编程语言对实现过程做一个详解。

3 实现方式

3.1 创建PING操作的一个类

为了调用方便,首先创建一个类,供程序中使用。源代码如下:

constructor Tping.create;

begin

inherited create;

hICMPdll := LoadLibrary('icmp.dll');

@ICMPCreateFile := GetProcAddress(hICMPdll, 'IcmpCreateFile');

@IcmpCloseHandle := GetProcAddress(hICMPdll,'IcmpCloseHandle');

@IcmpSendEcho := GetProcAddress(hICMPdll, 'IcmpSendEcho');

hICMP := IcmpCreateFile;

end;

3.2 主机活动判断

用IcmpSendEcho函数包含ICMP.DLL中,它是用于Internet控制报文协议测试的,可以直观地测试本地计算机的网络速度。利用这个函数,可以判断主机是否活动。它包含主机IP,数据包大小、延迟时间等8个参数。如果有返回值,返回值表示收到的回复的个数。如果为0表示没有回复,主机无法到达。通过IcmpSendEcho函数进行主机活动的判断。

3.3 主程序的实现

在主程序中放置一个Timer控件,设置扫描时间为10分钟。定义一个ttPing : TPing 变量,并进行初始化。在OnTimer事件中,加入ping操作的代码,根据返回值,显示该主机是否在线,当出现异常时,通过文字和声音进行提示。实现对网络及关键主机的监控。程序代码如下:

ttPing := tPing.create;

try

tStr := '';

ttPing.pinghost(tPingTask.Strings[1],tStr);

if pos('Can not find host',tStr) = 0 then

begin

AddMsg(self.CurentTaskLog,'正常');

end

else

begin

addmsg(self.TaskLog,tPingTask.Strings[0]+ tPingTask.Strings[1]+'出现异常,请查找原因');

Windows.Beep(480, 20000);

end

finally

tPingTask.Free;

ttPing.Free;

end;

3.4 广域网监控实现

以上程序可以实现对局域网内设备进行监控。但要监控外网地址入口就需要增加路由来实现。Windows下添加路由命令为“Route add 目的IP段 mask 子网掩码 路由器IP”,将外网入口地址加到Windows路由表中,通过以上程序就可直接针对外网地址进行PING测试,实现广域网的监控。

4 结束语

本文结合DELPHI编程工具,对icmp.dll实现PING功能做了说明。这只是简单的应用,通过深入开发,可以方便的实现局域网设备、关键主机、广域网入口等设备的监控,以最大程度地减少人工劳动强度,提高工作效率,提高自动化程度,为设备正常、高效的运转奠定良好的基础。

参考文献:

[1]杜新华,杜力耘,张蓓蓓.基于ICMP的Ping软件实现[J].上海交通大学学报,1997,05.

[2]黄跃青,崔智慧,崔炳俭等.MAS系统的二次开发[J].气象与环境科学,2010,33(B09),201-202.

[3]王新刚,柴乔林,李琳.基于Windows的综合网络性能监测系统[J].计算机应用研究,2002,10.

[作者简介]

icmp协议范文第3篇

关键词:配置 瑞星个人防火墙 安全策略

瑞星个人防火墙能保护网络安全,免受黑客攻击。采用增强型指纹技术,能有效的监控网络连接。采用内置细化的规则设置,使网络保护更加智能。合理配置瑞星个人防火墙的安全策略,通过过滤不安全的网络访问服务,彻底阻挡黑客攻击、木马程序等网络危险,保护上网帐号、密码等信息不被窃取,从而保证了用户电脑的上网安全。以下部分从首页状态、网络安全设置策略、网络防护设置、IP规则设置等方面,对如何配置好瑞星个人防火墙的安全策略,作了研究和探讨。

1 首页状态

首页状态显示防火墙实施防护状态,可以实时监控查看当日拦截的钓鱼、挂马网站以及拦截的网络攻击情况,包括攻击次数,拦截次数等数据。还可以选择安全级别和工作模式,安全级别越高,网络防火墙对用户计算机的防护性能越好,防护级别也就越高,更能有效的保护用户计算机的私人信息和数据。同时,在流量图中还可以显示出接收和发送的数据速度、活动程序以及攻击信息,用户通过流通数据的大小可以发现是否存在异常数据上传下载,从活动程序中也可以很轻松的发现是否存在异常的程序在运行,从而及时的保护用户计算机的数据安全,提高用户警惕性。如图1所示。

2 网络安全设置策略

该策略用于用于开启实时监控功能。网络安全设置中包括应用程序网络访问监控、IP规则设置、网络攻击拦截、恶意网址拦截、ARP欺骗防御以及对外攻击拦截和网络数据保护。在网络监控列表中可以对以上功能进行设置,开启后可以有效地防护用户计算机。如图2所示。

3 网络防护设置

网络防护中有一项程序网络控制,在程序联网规则中可以对应用程序进行网络访问权限设置,有允许,拒绝和自定义三种选择,如用户不需要某种程序对网络有访问权限,可设置成拒绝即可,也可以自己添加一些应用程序,想要对某些应用程序放开网络访问权限的话,在状态栏里设置成允许就可以了。当然,用户自己也可以自定义一些自己想要的设置。如图3所示。

网络攻击拦截中有很多网络攻击类型的选项,一般默认情况下都是选择的,用户可以不用进行设置。

恶意网址拦截一项是对一些带有恶意木马,病毒的网站进行拦截,用户如需要对一些网站进行拦截的话,只需要把该网址添加到黑名单里即可。当然也可以设置一些白名单,就是不用拦截的网址可以添加进去。同时还可以添加保护程序,如“c:\program files\internet explorer\iexplore.exe”。

ARP欺骗防御系统,一般建议在局域网里需要开启保护,可以有效的防止其他用户客户端进行恶意的ARP攻击。

4 IP规则设置

该设置用于设置各项例外规则。在IP规则设置中,包含了很多设置项,包括域名解析,各种协议等,进行正确的设置可以保障用户终端计算机的网络安全和数据安全。如图4所示。

例如,ICMP协议是一种面向无连接的协议,用于传输出错报告控制消息,它是一个非常重要的协议,对于网络安全具有极其重要的意义。它是Internet控制报文协议,它是TCP/IP协议族里的一个子协议,用于在IP主机和路由器之间传递控制信息。所谓控制消息是指,网络通不通、主机是否可达、路由是否可用等本身的消息。

ICMP协议本身的特点决定了它非常容易被用于网络上的路由器和主机。例如,在1999年8月海信集团悬赏50万人民币测试防火墙的过程中,其防火墙遭受到的ICMP攻击达334050次之多,占整个攻击总数90%以上!可见ICMP协议的重要性不容忽视。所以正确的配置防火墙的策略是非常重要的。那么,我们应该如何设置ICMP协议呢?怎样才能让自己的计算机遭受到最少的攻击和伤害呢?下面讲述几种常见的方法以供参考。

第一种,在路由器上对ICMP数据包进行带宽限制,将ICMP占用的带宽限制在一定的范围内,这样就保证的即使有ICMP攻击,它所占用的带宽也是非常有限的,不会对整个网络造成重大的影响。

第二种方法是在主机上设置ICMP数据包的处理规则,最好是设定拒绝所有的ICMP数据包。

当然,如果你想选择放行ICMP数据包的话也是可以的,但要进行一些其他的设置才能有效的防止ICMP的攻击。如你可以在防火墙里设置“防御ICMP攻击”和“防止别人用ping探测”就可以了。建议广大计算机用户设置成默认强制拒绝所有ICMP数据包,除了出站的ICMP Echo Repuest、出站的ICMP Source Quench、进站的TTL Exceeded和进站的ICMP Destination Unreachble之外,所有的ICMP类型都应该被阻止。

5 端口设置

计算机用户可以在端口设置项中设置自己的端口需求,需要哪些端口就可以放开哪些端口,不需要的可以进行禁止操作。这样即可以方便自己需要的端口访问,有可以关闭不必要的端口,可以很好的防止网络攻击者利用多余的端口号对用户计算机进行攻击。用户可以从本地和远程两个方面进行设置。如图5所示。

根据提供服务类型的不同,端口分为两种。一种是TCP端口,一种是UDP端口。计算机之间相互通信的时候,分为两种方式,一种是发送信息后,可以确认信息是否到达,也就是有应答的方式,这种方式大多采用TCP协议。一种是发送以后就不管了,不去确认信息是否送达,这种方式大多采用UDP协议。所以对应这两种协议的服务提供的端口,也就分为TCP端口和UDP端口。

如果攻击者使用软件扫描目标计算机,得到目标计算机打开的端口,也就了解了目标计算机提供了哪些服务,而提供服务就可能有服务软件的漏洞。如果计算机的端口打开太多,而管理者不知道的话,那么有两种情况:一种是提供了服务而管理者没有注意,比如安装IIS的时候,软件就会自动增加很多服务,而管理员可能没有注意到。一种是服务器被攻击者安装木马,通过特殊的端口进行通信。这两种情况都很危险,说到底,就是管理员不了解服务器提供的服务,减少了安全系数。

因此,一定要正确的设置端口的开放,避免攻击者对计算机信息进行非法窃取。建议一般在局域网内部时,可以在防火墙上把所有的端口都默认关闭,然后在IP白名单里把需要访问的目标计算机的IP地址添加进去,这样就能有效的保证了需要的端口打开,而不需要的多余端口都关闭,很好的阻止了非法份子的入侵。

6 结束语

icmp协议范文第4篇

关键词:嵌入式系统;网络层协议;ICMP协议

中图分类号:TP393文献标识码:A文章编号:1009-3044(2008)24-1168-02

Research on TCP/IP Network Layer Protocol Based on Embedded System

XIA Zhong-hua, ZHANG Dong-liang

(Qinghuangdao Institute of Technology,Qinhuangdao 066100,China)

Abstract: In recent years, research on connecting embedded system with Internet has become one of the focuses in applications of embedded system. This paper design a light TCP/IP protocol stack suitable for embedded system with ARM7 series MCU ,Embedded system is close to production and life of human being. Analyzed the Network Layer protocol and presented embedded encapsulation, demultiplexing, recomposement and the Echo Relply function of affiliated ICMP.

Key words: embedded system;Network Layer protocol;ICMP protocol

1 引言

嵌入式系统与TCP/IP网络的互联,这一技术在许多领域得到广泛的应用。但由于网络协议的复杂性与嵌入式系统的处理器相对简单之间的矛盾,这就要求简化TCP/IP协议[1]。

嵌入式TCP/IP协议[2]即是以满足嵌入式系统的实际需要为目的的这一指导思想出发,建立在嵌入式Internet理论的基础上,通过对庞大、功能齐全的TCP/IP协议栈的研究,对标准的TCP/IP协议进行了一定的取舍和优化,从而制定出一套简单的、适合于嵌入式系统的并且能完成相应网络功能的协议栈。

本文针对应用广泛的ARM7系列的处理器为核心的嵌入式系统[3],对TCP/IP网络层协议进行了研究分析,提出了基于嵌入式封装、分用、重组方案、附属协议ICMP的回显应答功能等方案,使之适应嵌入式系统。

2 网络层协议简介

IP协议[4]是TCP/IP协议族中最为核心的协议。所有的TCP、UDP、ICMP及IGMP数据都以IP数据报格式传输。IP协议提供的是一种不可靠、无连接的服务。不可靠(unreliable)的意思是它不能保证IP数据报能成功地到达目的地。IP仅提供最好的传输服务。无连接(connectionless)这个术语的意思是IP并不维护任何关于后续数据报的状态信息。每个数据报的处理是相互独立的。这也说明,IP数据报可以不按发送顺序接收.如果一信源向相同的信宿发送两个连续的数据报(先是A,然后是B),每个数据报都是独立地进行路由选择,可能选择不同的路线,因此B可能在A到达之前先到达。IP协议最基本的功能是路由选择、分片和重组。

3 网络层的嵌入式研究

3.1 路由功能

常规的实现要考虑较多的问题:协议必须具有通用性,无论是在网络中的一台主机,还是在连接不同网络的网关上都要运行。

由于本设计的目的是实现一个嵌入式WEB服务器应用,而不是做嵌入式网关、路由器,所以在这里,裁减掉路由功能。有关路由的问题均不欲考虑。一切都交给默认网关去处理。这样做,简化了IP协议,节约嵌入式系统资源。

3.2 分片和重组

对于大小超过网络硬件所允许的最大值(MTU)的数据报的发送,IP有个简单的解决办法,即将这些数据报在传输时进行分片,然后进行重组。但是分片重组会付出明显的性能代价,因为在把它们重新组装起来的时候会占用大量的空间,这在嵌入式系统中是一个不小的负担[5]。

所以本设计中,我们设计发送的数据报文小于网络硬件的最大值,这样就可以避免分片。这样可以简化代码,提高效率。但是不支持重组,远程客户端发送的数据报如果在中间路由时候进行了分片,我们将无法处理,所以本设计中实现了重组的功能。

3.3 IP服务类型

本设计发送IP数据报时,将该字段设置为0,表示该数据报为正常的优先级。在接收IP数据报时,将忽略该信息,实际上大部分路由器都是这样做的[6]。

3.4 选项字段的处理

当接收到的IP数据报含选项字段时,处理该数据报时,将直接跳过该字段。这些选项的作用是允许更严格地控制路由过程和增加安全性,所有这些信息可以被忽略,并不会引起错误[7]。

3.5 嵌入式IP数据结构

协议栈定义为512个字节的缓冲区。发送和接收的数据包公用一个缓冲区,这样的好处是不但可以节约存储资源,还可以实现数据包在协议栈中的“零拷贝”[8]。

3.6 附属协议的处理

网络层除了IP协议外,一般我们把ICMP和IGMP归到这一层[9]。本设计没有实现广播和多播的功能,ICMP报文也只是实现了对ping报文的回显应答功能――既对ping报文回显请求分析,给出ping报文的回显应答。

所有报文的前4个字节都是一样的,但剩下的其它字节则互不相同。ICMP报文是在IP数据报内部传输的,如图1所示。报文格式,如图2所示。

图1 ICMP封装在IP数据报内部

图2 ICMP报文

Ping 程序可以测试一台主机是否可以到达[10]。程序发送一份ICMP回显请求报文给主机,并等待返回ICMP回显应答。一般说来,如果不能Ping到某主机,那么就不能Telnet或者FTP到那台主机。反过来,如果不能Telnet到某台主机,那么通常可以用Ping程序来确定问题出在哪里。Ping程序还能测到这台主机的往返时间,以表示该主机离我们有“多远”。ICMP回显请求和回显应答格式报文如图3所示。

图3 ICMP回显请求和回显应答报文格式

4 结论

本文在分析了嵌入式系统和TCP/IP网络层协议的基础上,提出了实现嵌入式TCP/IP网络层协议的方法。对网络层协议的路由功能、分片和重组、附属协议的处理等方面进行了针对性的改进,使之成为适应嵌入式系统的网络层协议。

参考文献:

[1] 王田苗.嵌入式系统设计与实例开发[M].北京:清华大学出版社,2003:1-30.

[2] 付宏,袁兵.嵌入式Internet应用研究[J].计算机工程与应用,2003,30:180-185.

[3] 陈瑾,罗敏,张焕国.入侵检测技术概述[J].计算机工程与应用,2004(2):133-136.

[4] 李阳明,齐志强,师丽彩.嵌入式Internet的应用[J].电子技术,2005,5:62-64.

[5] 张懿慧,陈泉林.源码公开的TCP/IP协议栈在远程监测中的应用[J].单片机与嵌入式系统应用,2004(11):61-64.

[6] Bhatia Sapan, Consel Charles, Le Meur, et al. Automatic Specialization of Protocol Stacks in operating System Kernels[C].Proceedings -29th Annual IEEE International Conference on Local Computer Networks LCN 2004.Tampa Fl United States,2004:152-15.

[7] Dave R N,Bhaswan K.Adaptive fuzzy c-shells clustering and detection of ellipses[J].IEEE Trans,on Neural Networks,1992,3(5):643-662.

[8] Timm C R,Kruse R.A modification to improve possibilistic fuzzy cluster analysis[C].Proceedings of the IEEE Int Conf on Fuzzy Systems,Honululu,2002.

[9] 李善平,刘文峰,王焕龙,等.Linux与嵌入式系统[M].北京:清华大学出版社,2003:266-267.

icmp协议范文第5篇

关键词:51单片机;RTL8019AS;ICMP回显应答

中图分类号:TP368文献标识码:A文章编号:1009-3044(2012)12-2917-03

The 51 Series MCU Network Communication and ICMP Echo Reply Implementation

YU Lei

(College of Continuing Education, Guizhou University, Guiyang 550001, China)

Abstract: Based on 8-bit MCU control system development, the 51 series single-chip still has the widespread application prospect.The 51 single-chip microcomputer and RTL8019AS network control chips combine to discussion on the control method for network control chip, and the 51 single chip microcomputer using ICMP Echo Reply methodology for study, which has practical application value.

Key words: the 51 Series MCU; RTL8019AS; ICMP Echo Reply

物联网技术的发展和应用,使越来越多的非PC设备开始接入到基于TCP/IP协议的网络中。作为8位控制器中的典型产品,51系列单片机仍是8位嵌入式应用开发的主流。以51单片机实际应用系统为平台,对其TCP/IP网络接入及相关通信协议的实现方法进行研究具有一定的应用意义。

1网络控制器的选择与硬件连接

在网络控制器的选择上,与51单片机配合使用较典型的产品是台湾瑞昱半导体的RTL8019AS。

1.1 RTL8019AS与51单片机的硬件连接

在与51单片机连接时,RTL8019AS通常设置为8位跳线模式,这时应将IOCS16B下拉为低电平。I/O地址选择线IOS3~0悬空。地址线A5~A7、A10~A19接地,A8~A9置高电平,A0~A4与51单片机连接,I/O地址设定为300H。将数据线D0~D7连接到51单片机,数据线D8~D15悬空。控制线IORB、IOWB、RSTDRV与51单片机连接。在使用硬件中断的模式下将IRQ选择线IRQS2~0悬空,选择INT0作为中断脚,INT1~INT7脚悬空。由于RTL8019AS的中断方式为高电平触发,因此应将INT0反向后接入单片机。

1.2 RTL8019AS的发送和接收缓冲区

RTL8019AS内置16K字节的RAM(地址4000H~7FFFH),用来作为数据帧的发送和接收缓存。该缓存空间采用按页存储的使用方式,整个空间被划分为64页,每页大小为256字节,RAM地址的高8位(40H~7FH)即为页地址。通过RTL8019AS内部被称为“远程DMA”的数据链路,51单片机可以完成对该缓存空间的读写操作。

在数据帧收发时,RTL8019AS内的缓存空间通常从逻辑上划分为发送缓存和接收缓存两个区域。其中发送缓存位于整个RAM的前部,起始地址由位于Page0中TPSR(发送缓冲区首页地址)寄存器配置。接收缓存紧邻在发送缓存之后,其起始地址由位于Page0中的PSTART(接收缓冲区首页地址)寄存器配置,末地址由PSTOP(接收缓冲区末页地址)寄存器配置。

1.3 RTL8019AS初始设置

RTL8019AS内的寄存器按地址和功能被分布在Page0~Page3四个页面上,通过对CR(Command Register)寄存器中的PS1、PS0位设置,可以完成相应的换页操作。

在与51单片机连接时,仅使用Page0~Page2三页中的“NE2000寄存器”。初始时,由于Page2的寄存器为只读,只需对Page0、Page1两页的寄存器进行正确配置即可。其中注意:8位模式下,接收缓冲区末页地址寄存器(PSTOP)的最大值不超过60H。在采用中断的数据接收方式下,中断掩码寄存器(IMR)应配置为允许PRX中断(01H)。

1.4接收缓冲区的循环使用

在RTL8019AS接收数据帧时,借助Page1中的CURR和位于Page0中的BNRY两个寄存器的配合,可以完成接收缓存的循环使用。其中:

当前页寄存器CURR指出接收缓存中当前用于接收的页地址。从网络读取的帧写入一页后,CURR寄存器的值由RTL8019AS控制自动加一,并且在达到接收缓冲区末页地址值时,自动被重置为接收缓冲区首页地址值。

边界寄存器BNRY指出最后收入接收缓存且已被主机读取的页地址,其值由51单片机控制改变。当51单片机通过远程DMA链路读取一页数据并做相应处理后,应将BNRY的值加1并测试是否到达接收缓冲区末页地址值,若是,则应将BNRY重置为接收缓冲区首页地址值。

2网络数据的收、发

RTL8019AS在物理信道上进行帧的发送、接收时,均遵守IEEE802.3物理传输帧格式规定。

2.1数据帧的接收

51单片机的网络连接应用通常是基于短数据包通信的。在采用中断的数据接收方式下,应允许RTL8019AS接收到无差错的数据包后产生中断,由中断处理程序通过远程DMA链路将接收缓存中的数据读取到51单片机的内存进行上层处理。一种典型的收包中断处理流程如图1所示。

在数据格式上,RTL8019AS的网络接口层向上层表达数据帧时:前导序列、帧起始位以及最后的CRC校验等字段由RTL8019AS自动删除;然后在头部自动添加“接收状态(1字节)、下一页指针(1字节)、以太网帧长度(两字节)”三个字段。

在51单片机从远程DMA链路读取数据时,先将RTL8019AS的寄存器RSAR0置0,将边界寄存器BNRY的当前值写入RSAR1;将读取帧的长度计数值分别写入RBCR0和RBCR1寄存器。然后置CR为远程DMA读取值(0AH);启动循环,将远程DMA端口的值顺序读取到51单片机内存。

2.2数据帧的发送

发送操作时,先依据对应协议规定的格式将需要发送的数据在51单片机的内存中装配成帧。其中:前导序列、帧起始位以及CRC校验等字段由RTL8019AS自动添加,装配程序无须干预。之后通过远程DMA链路将装配好的数据传送到RTL8019AS的发送缓存,然后启动发送。实际应用中,发送缓存也可以循环使用。

2.3 ICMP回显应答原理及实现

因特网控制报文协议ICMP(Internet Control Message Protocol)是工作于IP层的因特网标准协议,用于传递差错情况和提供有关异常情况的报告。ICMP覆盖的范围很广,其中最常用的一种是ICMP回显请求及应答。

ICMP回显请求及应答用来测试目的站是否可达以及是否响应。通常请求主机会向目的主机发出ICMP回显请求,收到该报文的机器必须给源主机发送ICMP回显应答报文,从而检测出链路或主机的工作状态。

2.3.1 ICMP回显请求帧

图2为实际应用中由RTL8019AS接收并读入51单片机内存的ICMP回显请求帧。

图2 ICMP回显请求帧数据

帧的1~18字节为帧头部。由于ICMP报文是在IP数据报内部被传输的,因此从19到38字节为长度20字节的IP首部。39到78字节为ICMP回显请求报文,其中从第47字节到78字节为选项数据字段。2.3.2 51单片机下ICMP回显应答实现

对ICMP回显请求帧的应答可以通过直接修改接收到的请求帧来完成。修改后的应答帧交付RTL8019AS的发送缓存时,装入数据的起点应偏移4字节。其一般过程为:

将ICMP回显请求帧接收并装入51单片机内存;

将ICMP报文部分的类型、代码两字段(39、40字节)的值置为零,表明该报文是对ICMP回显请求的应答;

将ICMP报文检验和字段(41~42字节)值清零,并重新计算。该检验和的计算覆盖整个ICMP报文;

将IP首部源IP地址字段(31~34字节)和目的IP地址字段(35~38字节)的IP地址值交换;

清除IP首部检验和字段(29~30字节)值,并重新计算。对于普通IP数据报,IP首部检验和的计算范围为IP首部20字节;将帧头部源地址字段(5~10字节)和目的地址字段(11~16字节)的MAC地址交换。

3结束语

通过汇编语言的实现,ICMP回显应答协议在51单片机应用系统下获得了可靠稳定的效果,对进一步实现高层协议、实现远程数据采集和控制具有实际意义。

参考文献:

[1]胡汉才.单片机原理及其接口技术[M].北京:清华大学出版社,1998.

[2]谢希仁.计算机网络[M]. 4版.北京:电子工业出版社,2005.

[3]符意德,陆阳.嵌入式系统原理及接口技术[M].北京:清华大学出版社,2007.

icmp协议范文第6篇

关键词:网络攻击;ARP;MAC地址;ICMP

中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)18-31583-02

The Phenomenon of Network Attack

WANG Yu-ting

(Fujian Polytechnic of Information Technology, Fujian 350003, China)

Abstract: Network protocols aimed at making communication more convenient on internet. However the defects of protocols give those spiteful cyber citizens some chances to develop ways to attack websites. I would introduce some possible ways to destroy websites in my thesis and analyze briefly the working principles which realize the attacks on internet.

Key words: the network attacks; ARP; MAC address; ICMP

1 引言

现代的网络通信系统可以说已经遍布全世界的每个角落,尽管很多不同的用户使用着各种不同型号的计算机并且运行的是完全不同的操作系统,但他们仍然可以通过TCP/IP协议族做到互相通信。这就是网络协议所发挥的巨大作用,但同时它也可以说是网络中的一把双刃剑。人们可以通过它实现任意形式的互通,也可以利用它破坏网络中的通信。这就是指人们通过研究各种网络协议中的缺陷和它们的工作原理来找到其中的漏洞,然后对相应的主机或网络进行攻击,最终导致被攻击主机或网络被监听、破坏甚至瘫痪以达到攻击者的目的。下文当中介绍的几种攻击现象主要是利用ARP、ICMP等协议的工作原理来进行攻击的。

2 链路层攻击

链路层也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。该层中的协议主要有ARP(地址解析协议)和RARP(逆地址解析协议)两个用于某些网络接口(如以太网和令牌环网)的特殊协议,主要功能为用来转换IP层和网络接口层使用的地址。

ARP的工作原理简单概括为:在传输以太网数据包时必须知道目标主机的MAC地址。源主机在发送数据时首先检查自己的ARP列表中有没有该IP地址对应的MAC地址,有的话就直接传输。如果没有就向本地网段发起一个ARP请求的广播包,该请求数据包中包括源主机的IP地址、MAC地址以及目的主机的IP地址,网段中的所有主机收到该请求后都将目的IP与自己的IP进行比较,如果不相同就忽略此包;如果相同就将源主机的IP地址和MAC地址更新到自己的ARP表中,并发送应答数据包给源主机告诉对方自己的MAC地址,源主机接到应答包之后同样将对方的IP地址和MAC地址更新到自己的ARP表中,然后开始传输数据。

该层上的网络攻击就是利用ARP协议的工作原理来实现的,主要有以下两种类型:

2.1 ARP广播攻击

又称作ARP扫描攻击或ARP请求风暴。这种攻击表面上看起来是网络当中出现了大量ARP请求广播包,几乎是对网段内的所有主机进行扫描,最终大量的ARP请求广播可能占用掉许多网络带宽资源。实际上是由于黑客程序发送大量带假目标IP地址、假源MAC地址的ARP请求报文,产生大量广播包。这些新源MAC地址被各主机学习,造成ARP表溢出,挤掉原来合法的ARP表项,致使合法目标MAC成为新目标MAC,又使各主机产生大量ARP广播请求报文。

2.2 ARP欺骗攻击

ARP协议并不是只有发送了ARP请求才接收ARP应答,也可以直接接收ARP应答数据包。当计算机接收到ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中IP和MAC地址存储在ARP缓存中。因此在网络中,如果有人发送一个出错的或者是自己伪造的ARP应答,网络可能就会出问题。具体的实现过程可以描述为:黑客程序发送错误或者误导的ARP应答报文,使网络数据流重定向于黑客主机,使黑客主机成为网络数据流传输的中转站,导致窃取甚至篡改正常数据包。ARP欺骗攻击的核心就是向目标主机发送伪造的ARP应答,并使目标主机接收应答中伪造的IP和MAC间的映射对,并以此更新目标主机缓存。

具体的实现过程如下例所示:假设一个网络环境中,有三台主机共网段,分别为主机A、B、C。三台主机的详细信息描述如下:

A的IP地址:192.168.18.1MAC地址:AA-AA-AA-11-11-11

B的IP地址:192.168.18.2MAC地址:BB-BB-BB-22-22-22

C的IP地址:192.168.18.3MAC地址:CC-CC-CC-33-33-33

假设现在A和C之间在进行通讯,此时B向A发送一个自己伪造的ARP应答,而这个应答中的数据为发送方IP地址是192.168.18.3(C的IP地址),MAC地址是BB-BB-BB-22-22-22(C的MAC地址本来应该是CC-CC-CC-33-33-33,这里被伪造了)。由于大多数的操作系统在接收到ARP应答后不考虑是否发出真实的ARP请求,当A接收到B伪造的ARP应答,就会及时更新本地的ARP缓存(A被欺骗了),这时B就伪装成C了。同时,B同样向C发送一个ARP应答,应答包中发送方IP地址为192.168.18.1(A的IP地址),MAC地址是BB-BB-BB-22-22-22(A的MAC地址本来应该是AA-AA-AA-11-11-11),当C收到B伪造的ARP应答,也会更新本地ARP缓存(C也被欺骗了),这时B就伪装成了A。这样主机A和C都被主机B欺骗,A和C之间通讯的数据都经过了B。这样主机B就实现了对A和C的监听。这就是典型的ARP欺骗过程。一般情况下,ARP欺骗的某一方应该是网关,就如上面的A主机。

3 网络层攻击

一个MAC地址层范围(第二层)的攻击是最普通而且也是最不容易发现的安全威胁,它的目标是让网络失效或者通过获取诸如密码这样的敏感信息而危及网络用户的安全。这些攻击利用正常的协议过程来获取信息,比如通过交换机的功能来获取MAC(媒体接入控制)地址,通过ARP协议(地址解析协议)来获取终端工作站的MAC地址或者通过DHCP(动态主机配置协议)服务器来获取IP地址分配结果。

3.1 MAC地址溢出攻击(MAC/CAM攻击)

也称为DoS(拒绝服务攻击,Denial-of-service)攻击,它的意图是阻止一个网络接受合法使用者的数据,这种类型的攻击往往导致一个网络组件停止转发数据包或者不能正确的转发。正常情况下,在一个安全的或没有受到威胁的网络中,一个第二层的转发表的建立都是基于MAC地址的,而MAC地址就是一个设备的物理地址。

标准的交换机行为就是将去往未知的目标MAC地址的数据帧广播转发,并且将每个到达包的源地址和端口信息填入到CAM表(内容寻址内存表)中,交换机拥有一个大小固定的内存空间用于存放学习到的MAC地址信息,交换机或者桥连接就是依靠这张表来实施转发、过滤以及第二层的学习机制的。但转发表只有一个有限的地址空间,企图注满该表或者使该表溢出的攻击将剥夺交换机固有的MAC地址学习能力和转发行为。这种攻击会向交换机广播大量未知MAC地址的包,这些地址都将被交换机学习到,这样就可以利用该硬件的空间限制来实施其DoS攻击了。

具体实现的时候黑客通过发送大量带假源MAC地址的帧,这些新源MAC地址被交换机学习,很快充满CAM表,挤掉原有合法的CAM表项,致使合法目标MAC地址成为新目标MAC帧而广播到所有交换机,产生大量广播帧,这时黑客还可以利用嗅探工具获取各主机广播的帧信息。

另外,还有广播MAC地址攻击,基本的攻击原理与上述类似,只是目标地址设置为全1使之全网广播。

3.2 DHCP服务欺骗和中间人攻击

一个“不可靠”的DHCP服务器(动态主机配置服务器)通常被用来与攻击者协作,对网络实施“中间人”攻击。中间人攻击是一种攻击者利用正常的协议来更改两个终端之间的正常通信数据流而形成的一种攻击技术。首先,一个黑客会广播许多含有欺骗性MAC地址的DHCP请求(动态主机配置请求),从而耗尽合法DHCP服务器上的地址空间,当其空间地址被耗尽时,这个“不可靠”的DHCP服务器就开始向“用户”的DHCP请求进行应答了,这些应答信息中将包括DNA服务器和一个默认网关的信息,这些信息就被用来实施一个中间人攻击。 然后,通信数据开始通过攻击者的终端工作站进行流动,这就允许黑客开始捕获或者观察两个互相信任的目标终端之间的通信数据。

3.3 IP主机欺骗

IP地址欺骗一般通过发送来自第三方的数据包来对第二方实施拒绝服务(DoS)攻击,这样就可以掩盖攻击系统的真实身份。这种攻击的一个简单例子就是攻击者获得处于被攻击状态的第二方主机的IP地址后,将本地地址伪装成该地址,并将其做源地址Ping第三方的系统,这样来自第三方Ping应答信息就会直接从第三方系统发送往第二方系统。

TCP SYN洪泛(TCP,传输控制协议;SYN,同步序列号码)攻击来源于一个欺骗性的IP地址,它是利用TCP三次握手会话协议对服务器进行颠覆的又一种攻击方式。一个IP地址欺骗攻击者可以通过手动修改地址或者运行一个实施地址欺骗的程序来假冒一个合法地址。另外,互联网上的蠕虫病毒也往往利用欺骗技术来掩盖它们真实的源头主机。

4 ICMP攻击

ICMP攻击包含的类别较多,在这另做一个介绍。ICMP 被IP层用于向一台主机发送单向的告知性消息。由于在ICMP中没有验证机制,这就导致了使用ICMP可以造成服务拒绝的攻击,或者可以支持攻击者截取数据包。下面介绍几种与 ICMP 协议相关的攻击行为:

4.1 ICMP DOS攻击

攻击者使用ICMP“时间超出”或“目标地址无法连接”的消息,导致一台主机迅速放弃连接。攻击者只需伪造这两个ICMP消息中的一条,并发送给通信中的两台主机或其中的一台,就可以利用这种攻击了,接着通信连接就会被切断。当一台主机错误地认为信息的目标地址不在本地网络中的时候,网关通常会使用 ICMP“转向”消息。如果攻击者伪造出一条“转向”消息,它就可以导致另外一台主机经过攻击者主机向特定连接发送数据包。

4.2 ICMP 数据包放大(ICMP Smurf)

攻击者向安全薄弱网络所广播的地址发送伪造的ICMP响应数据包。那些安全薄弱网络上的所有系统都会向受害计算机系统发送ICMP响应的答复信息,这些信息占用了目标系统的可用带宽并导致合法通信的服务被拒绝(DoS)。

4.3 死Ping攻击

攻击者向受害计算机发送一条比容量最大的IP数据包容量还要大许多的ICMP响应请求数据包。由于所接收到的ICMP响应请求数据包的容量远远高于正常的IP数据包,受害计算机不能够将这些数据包重新组合起来,导致的结果是,操作系统要么瘫痪,要么重启。

4.4 ICMP PING淹没攻击

大量的PING信息广播淹没了目标系统,使得它不能够对合法的通信做出响应。

4.5 ICMP nuke攻击

Nuke发送出目标操作系统无法处理的信息数据包,从而导致该系统瘫痪。

在网络的关键部位使用防火墙技术对来源不明的有还数据进行拦截和过滤可以有效地减轻大多数的ICMP攻击。

5 结束语

最近的一个调查显示,信息失窃已经成为信息社会发展的趋势,在造成经济损失的所有攻击中,有75%来自于公司或单位内部攻击,剩下的25%来自于外部的攻击。为了防范这些内、外部攻击,网络管理员必须采用更多先进的方式来进行攻击防备。另外更需要网络管理员时刻保持高度警惕,熟悉网络中的各种攻击现象及其实现原理,以便在网络被攻击的情况下能进行一些紧急的处理将损失将到最低。

参考文献:

[1](美)W.Richard Stevens 著;范建华,胥光辉,张涛,等译. TCP/IP详解卷一:协议. 北京:机械工业出版社,2000.4.

[2](美)特南鲍姆(Tanenbaum,A.S.)著;潘爱民 译. 计算机网络(第4版). 北京:清华大学出版社,2004.8.

[3]ARP攻击(现象:网络不停中断)与防范 blog.省略/user16/89775/archives/2006/2329.shtml.

icmp协议范文第7篇

Windows操作系统谁都知道比较危险,原因就是漏洞实在很多。单靠打补丁就已经足够烦恼了,要是万一被黑客盯上或者病毒破坏那后果就更严重了。往往利用系统自身的缺陷来进行各种入侵向来就是黑客常得手的重要途径。随着宽带互联网的普及,家家户户使用网络已经渐渐增多。由此带来的安全问题也威胁着计算机的安全。懂得网络的人都知道我们常用Ping命令来检查网络是否畅通,可是这个Ping也能给Windows系统带来严重的后果,那就是Ping入侵即是ICMP(Internet Control and Message Protocal是因特网控制消息错误报文协议)入侵,原理是通过Ping大量的数据包使得计算机的CPU使用率居高不下而崩溃,通常在一个时段内连续向计算机发出大量请求而导致CPU处理不及而死机。

二、防范措施

步骤1:在电脑桌面,右键点击“网上邻居属性本地连接属性Internet协议(TCP/IP)属性高级选项-TCP/IP筛选-属性”。

步骤2:你看到一个窗口是关于“TCP/IP筛选”的,先点击选中“启用TCP/IP筛选(所有适配器)”。然后分别在“TCP端口、UDP端口和IP协议”的添加框上,点击“只允许”,再按添加按钮,然后在跳出的对话框输入端口,通常我们用来上网的端口是80、8080,而邮件服务器的端口是25、110,FTP的端口是20、21,同样地进行UDP端口和IP协议的添加。

步骤3:打开“控制面板管理工具本地安全策略”,然后右击“IP安全策略,在本地机器”选“管理IP筛选器和IP筛选器操作”,在管理IP筛选器和IP筛选器操作列表中添加一个新的过滤规则,名称输入“防止ICMP攻击”,然后按添加,在源地址选任何IP地址,目标地址选我的IP地址,协议类型为ICMP,设置完毕。

步骤4:在“管理筛选器操作”中,取消使用“添加向导”,添加,在常规中输入名字“Deny的操作”,安全措施为“阻止”。这样我们就有了一个关注所有进入ICMP报文的过滤策略和丢弃所有报文的过滤操作了。

步骤5:点击“IP安全策略,在本地机器”,选择“创建IP安全策略下一步输入名称为ICMP过滤器”,通过增加过滤规则向导,把刚刚定义的“防止ICMP攻击”过滤策略指定给ICMP过滤器,然后选择刚刚定义的“Deny的操作”,右击“防止ICMP攻击”并启用。

三、总结

icmp协议范文第8篇

关键词: 嗅探器;IP 漏洞;TCP 劫持;拒绝服务攻击

中图分类号:TP393文献标识码:A文章编号:1009-3044(2008)16-21230-04

TCP/IP Protocol Loophole Analysis and Prevention

WANG Xian-feng

(The Department of the Information Engineering of Lu'an Vocational and Technical College,Lu'an 237158,China)

Abstract:his paper is TCP/ IP's application to secure area.It analyzes several problems about a few of critical parts within,TCP/IP in details,discloses its security leakage and gives some constructive solutions in order to pave a basis on the further research.

Key words: Sniffer;IP Leakage;TCP Hijacking;Denial of Service attacks

Internet/ Intranet 是基于TCP/IP 协议簇的计算机网络。尽管TCP/IP 技术获得了巨大的成功,但也越来越暴露出它在安全上的不足之处,这是由于TCP/ IP 协议簇在设计初期基本没有考虑到安全性问题而只是用于科学研究。但随着应用的普及,它不仅用于一些要求安全性很高的军事领域,也应用于商业领域,因而对其安全性的要求也越来越高。下面从TCP/IP协议簇本身逐层来看它的安全漏洞。

1 TCP/IP 协议组的基本原理

TCP/IP分为4个层次,分别是应用层、传输层、网际层和物理网络接口层,如下图所示。

其中物理网络接口层相当于OSI的物理层和数据链路层;网际层与OSI 的网络层相对,但由于它考虑到了网际网环境,因而具有更强的网际环境通信能力,在网际层包含有四个重要的协议,它们是IP、ICMP、ARP、RARP;传输层与OSI 的传输层相对应,包含TCP 和UDP 两个协议;应用层相对于OSI的会话层、表示层和应用层功能,主要定义了FTP、TELNET、及E-MAIL 等应用服务。下面我们简要分析中间两层的有关协议。

2 链路层存在的安全漏洞

在以太网中,信道是共享的,数据在网络上是以很小的称为“帧”的单位传输的。如果局域网是由一条粗网或细网连接成的,那么数字信号在电缆上传输信号就能够到达线路上的每一台主机。当使用集线器的时候,发送出去的信号到达集线器,由集线器再发向连接在集线器上的每一条线路,这样在物理线路上传输的数字信号也就能到达连接在集线器上的每个主机了。也就是说任何主机发送的每一个以太帧都会到达别的与该主机处于同一网段的所有主机的以太网接口。当数字信号到达一台主机的网络接口时,根据CSMA/ CD 协议,正常状态下网络接口对读入数据进行检查,如果数据帧中携带的物理地址是自己的或者物理地址是广播地址,那么就会将数据帧交给IP 层软件。当数据帧不属于自己时,就把它忽略掉。如果稍做设置或修改,使主机工作在监听模式下的话就可以使以太网卡接受不属于它的数据帧。或者采用虚拟设备开发技术,动态加载虚拟网络设备(VxD 或WDM) 驱动模块,驻留内存,实施侦听使网卡捕获任何经过它的数据。从而达到非法窃取他人信息(如密码、口令等) 的目的。这类软件被称为嗅探器(Sniffer),如NeXRay,Sniffit,IPMan 等。解决该漏洞的对策是:改用交换式网络拓扑结构,在交换式以太网中,数据只会被发往目的地址的网卡,其它网卡接收不到数据包。但交换机的成本比较高。或者采用加密传输数据,使对方无法正确还原窃取的数据。同时可以安装检测软件,查看是否有Sniffer 在网络中运行,做到防范于未然。

3 ICMP漏洞

ICMP是“Internet Control Message Protocol”(Internet控制消息协议)的缩写。它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。我们在网络中经常会使用到ICMP协议,只不过我们觉察不到而已。比如我们经常使用的用于检查网络通不通的Ping命令,这个“Ping”的过程实际上就是ICMP协议工作的过程。还有其他的网络命令如跟踪路由的Tracert命令也是基于ICMP协议的。

ICMP协议对于网络安全具有极其重要的意义。ICMP协议本身的特点决定了它非常容易被用于攻击网络上的路由器和主机. 例如,在1999年8月海信集团“悬赏”50万元人民币测试防火墙的过程中,其防火墙遭受到的ICMP攻击达334050次之多,占整个攻击总数的90%以上!可见,ICMP的重要性绝不可以忽视!

比如,可以利用操作系统规定的ICMP数据包最大尺寸不超过64KB这一规定,向主机发起“Ping of Death”(死亡之Ping)攻击。“Ping of Death” 攻击的原理是:如果ICMP数据包的尺寸超过64KB上限时,主机就会出现内存分配错误,导致TCP/IP堆栈崩溃,致使主机死机。此外,向目标主机长时间、连续、大量地发送ICMP数据包,也会最终使系统瘫痪。大量的ICMP数据包会形成“ICMP风暴”,使得目标主机耗费大量的CPU资源处理,疲于奔命。

虽然ICMP协议给黑客以可乘之机,但是ICMP攻击也并非无药可医。只要在日常网络管理中未雨绸缪,提前做好准备,就可以有效地避免ICMP攻击造成的损失。

对于“Ping of Death”攻击,可以采取两种方法进行防范:第一种方法是在路由器上对ICMP数据包进行带宽限制,将ICMP占用的带宽控制在一定的范围内,这样即使有ICMP攻击,它所占用的带宽也是非常有限的,对整个网络的影响非常少;第二种方法就是在主机上设置ICMP数据包的处理规则,最好是设定拒绝所有的ICMP数据包。

设置ICMP数据包处理规则的方法也有两种,一种是在操作系统上设置包过滤,另一种是在主机上安装防火墙。

4 IP漏洞

IP 协议运行于网络层。在TCP/ IP 协议中, IP 地址是用来作为网络节点的惟一标志,但是节点的IP 地址又不是固定的,是一个公共数据,因此攻击者可以直接修改节点的IP 地址,冒充某个可信节点的IP 地址攻击,或者编程(如Raw Socket) ,实现对IP 地址的伪装。

4.1 TCP 劫持

也许对连接于Internet的服务器的最大威胁是TCP劫持入侵(即我们所知的主功嗅探),尽管顺序号预测法入侵和TCP劫持法有许多相似之处,但TCP劫持之不同在于黑客将强迫网络接受其IP地址为一个可信网址来获得访问,而不是不停地猜IP地址直至正确。TCP劫持法的基本思想是,黑客控制了一台连接于入侵目标网的计算机,然后从网上断开以让网络服务器误以为黑客是实际的客户端。下图显示了一个黑客怎样操作一个TCP劫持入侵。

成功地劫持了可信任计算机之后,黑客将用自己的IP地址更换入侵目标机的每一个包的IP地址,并模仿其顺序号。安全专家称顺序号伪装为“IP模仿”,黑客用IP模仿在自己机器上模拟一个可信系统的IP地址,黑客模仿了目标计算机之后,便用灵巧的顺序号模仿法成为一个服务器的目标。

黑客实施一个TCP劫持入侵后更易于实施一个IP模仿入侵,而且TCP劫持让黑客通过一个一次性口令请求响应系统(如共享口令系统),再让一个拥有更高安全性的主机妥协。通过口令系统也让黑客穿过一个操作系统而不是黑客自己的系统。

最后,TCP劫持入侵比IP模仿更具危害性,因为黑客一般在成功的TCP劫持入侵后比成功的IP模仿入侵后有更大的访问能力。黑客因为截取的是正在进行中的事务而有更大访问权限,而不是模拟成一台计算机再发起一个事务。

4.2 源路由选择欺骗

TCP/ IP 协议中,为测试目的,IP数据包设置了一个选项―――IP Source Routing,该选项可以直接指明到达节点的路由。攻击者可以冒充某个可信节点的IP 地址,构造一条通往某个服务器的直接路径和返回的路径,利用可信用户作为同往服务器的路由中的最后一站,对其进行攻击。在TCP/IP协议的两个传输层协议TCP 和UDP中,由于UDP 是面向非连接的,不需初始化的连接过程,所以UDP 更容易被欺骗。

4.3 非同步入侵

TCP 连接需要同步数据包交换,实际上,如果由于某种原因包的顺序号不是接收机所期望的,接收机将遗弃它,而去等待正确顺序号的数据包。黑客可以探明TCP协议对顺序号的要求以截取连接。在这种情况下,黑客或骗取或迫使双方终止TCP 连接并进入一个非同步状态,以使双方再也不能直接交换数据。黑客再用第三方主机(另一个连接于物理媒介并运行TCP 包的计算机)来截获实际中的数据包,经过窜改或伪造,第三方产生的数据包就可以模仿连接中的系统本应交换的数据包,从而以假乱真了。其过程如下图所示。

过程图在非同步状态下,客户端A 向服务器发送的数据包其序列号不是服务器所期望的,服务器便将其抛弃。而黑客主机C拷贝(截获) 服务器丢弃的包,修改其中的数据,并配以正确的序列号,以A 的名义发送出去,服务器便会接收。当然从服务器B到客户端A也存在同样的情况。从而黑客便相当于在客户和服务器之间充当的角色,来往于客户和服务器之间的数据都要经过它。

4.4 Land 攻击

land 攻击是一种使用相同的源和目的主机和端口发送数据包到某台机器的攻击。结果通常使存在漏洞的机器崩溃。在Land攻击中,一个特别打造的SYN包中的原地址和目标地址都被设置成某一个服务器地址,这时将导致接受服务器向它自己的地址发送SYN一ACK消息,结果这个地址又发回ACK消息并创建一个空连接,每一个这样的连接都将保留直到超时掉。对Land攻击反应不同,许多UNIX实现将崩溃,而 Windows NT 会变的极其缓慢(大约持续五分钟)。

4.5 SYN 洪水攻击

拒绝服务攻击的一种,使用TCP SYN 报文段淹没服务器。利用TCP建立连接的三个步骤的缺点和服务器

端口允许的连接数量的限制,窃取不可达IP 地址作为源IP地址,使得服务器得不到ACK而使连接处于半开状态,从而阻止服务器响应别的连接请求。尽管半开的连接会因为过期而关闭,但只要攻击系统发送的SpoofedSYN 请求的速度比过期的快就可达到攻击的目的。此方法是一种重要的攻击ISP ( Internet Service Provider) 方法,这种攻击并不会损坏服务,而是削弱服务器的功能。

4.6 防范措施

(1)对于来自网络外部的欺骗来说,可以在局部网络的对外路由器上加一个限制,做到只要在路由器里面设置不允许声称来自于内部网络中的机器的数据包通过就行了。当然也应该禁止(过滤) 带有不同于内部资源地址的内部数据包通过路由器到别的网上去,以防止内部员工对别的站点进行IP 欺骗。

(2)当实施欺骗的主机在同一网络内时,不容易防范。可以运用某些入侵检测软件或是审计工具来查看和分析自己的系统是否受到了攻击。

(3)对IP 包进行加密,加密后的部分作为包体,然后再附上一个IP 头构成一个新的IP 包。

(4)提高序列号的更新速率,或是增强初始序列号的随机性,使攻击者无法猜测出正确的序列号。

(5)对于源路由选项欺骗,因该禁止带有源路由的IP包进入内部网。

(6)对于Land 攻击,可以通过配置路由器或防火墙将外部接口上到达的含有内部源地址的数据包过滤掉。

(7)对于SYN 的洪水攻击,可以给内核加一个补丁程序或使用一些工具对内核进行配置。一般的做法是,使允许的半开连接的数量增加,允许连接处于半开状态的时间缩短。但这些并不能从根本上解决问题。实际上在系统内存中有一个专门的队列包含所有的半开连接,这个队列的大小是有限的,因此只要有意使服务器建立过多的半开连接就可以使服务器的这个队列溢出,从而无法响应其它客户的连接请求。

5 ARP欺骗

Arp是一种将IP转化成以IP对应的网卡的物理地址的一种协议,或者说ARP协议是一种将IP地址转化成MAC地址的一种协议,它靠维持在内存中保存的一张表来使IP得以在网络上被目标机器应答。ARP就是IP地址与物理之间的转换,当你在传送数据时,IP包里就有源IP地址、源MAC地址、目标IP地址,如果在ARP表中有相对应的MAC地址,那么它就直接访问,反之,它就要广播出去,对方的IP地址和你发出的目标IP地址相同,那么对方就会发一个MAC地址给源主机。而ARP欺骗就在此处开始,侵略者若接听到你发送的IP地址,那么,它就可以仿冒目标主机的IP地址,然后返回自己主机的MAC地址给源主机。因为源主机发送的IP包没有包括目标主机的MAC地址,而ARP表里面又没有目标IP地址和目标MAC地址的对应表。所以,容易产生ARP欺骗。例如:我们假设有三台主机A,B,C位于同一个交换式局域网中,监听者处于主机A,而主机B,C正在通信。现在A希望能嗅探到B->C的数据, 于是A就可以伪装成C对B做ARP欺骗――向B发送伪造的ARP应答包,应答包中IP地址为C的IP地址而MAC地址为A的MAC地址。 这个应答包会刷新B的ARP缓存,让B认为A就是C,说详细点,就是让B认为C的IP地址映射到的MAC地址为主机A的MAC地址。 这样,B想要发送给C的数据实际上却发送给了A,就达到了嗅探的目的。我们在嗅探到数据后,还必须将此数据转发给C, 这样就可以保证B,C的通信不被中断。克服此问题的方法是:让硬件地址常驻内存,并可以用ARP 命令手工加入(特权用户才可以那样做);也可以通过RARP服务器来检查客户的ARP 欺骗。因为RARP 服务器保留着网络中硬件地址和IP 的相关信息。

6 路由欺骗

路由协议(RIP) 用来在局域网中动态路由信息,但是各节点对接收到的信息是不检查它的真实性的(TCP/ IP 协议没有提供这个功能),因此攻击者可以在网上假的路由信息,利用ICMP 的重定向信息欺骗路由器或主机,伪造路由表,错误引导非本地的数据报。另外,各个路由器都会定期向其相邻的路由器广播路由信息,如果使用RIP 特权的主机的520 端口广播非法路由信息,也可以达到路由欺骗的目的。解决这些问题的办法是:通过设置主机忽略重定向信息可以防止路由欺骗;禁止路由器被动使用RIP和限制被动使用RIP的范围。

7 结束语

通过对TCP/IP 协议的分析,我们不难发现其在设计和实现上存在的种种缺陷,这是由于TCP/IP协议在设计初期只是用于科学研究,而未考虑到当今会如此广泛地被应用。黑客或黑客工具往往利用这些漏洞,对网络进行破坏。了解这些漏洞并熟悉相应的对策,做到知己知彼,我们才能构建一个安全稳固的网络。

参考文献:

[1] 张小斌,严望佳.黑客分析与防范技术[M].北京:清华大学出版社,2005.

[2] 闫宏生.计算机网络安全与防护[M].北京: 电子工业出版社,2007.

[3] (美)科默,林瑶,等.译.用TCP/IP进行网际互连.第1卷.原理、协议与结构(第五版) [M].北京:电子工业出版社,2007.

icmp协议范文第9篇

【关键词】蜜罐;指纹匹配;相关函数

1 Honeyd软件介绍

Honeyd是由Niels Provos创建的一种具有开放源代码的轻型低交互级别的蜜罐,除了具有蜜罐的共性――引诱攻击者的攻击外,它自身的设计特点不但可以使Honeyd更有效的完成任务,还能开发出许多新的应用出来。它可以同时模仿400多种不同的操作系统和上千种不同的计算机。

Honeyd有如下特点:

第一,Honeyd可以同时模仿上百甚至上千个不同的计算机,大部分蜜罐在同一时间仅可以模仿一台计算机,而Honeyd可以同时呈现上千个不同的IP地址。

第二,可以通过简单的配置文件对服务进行任意配置,可以对虚拟的主机进行ping操作或者进行traceroute,Honeyd可以根据简单的配置文件对虚拟主机的任何服务进行任意的配置,它甚至可以作为其他主机的。

第三,可以在TCP/IP层模仿操作系统,这就意味着如果有人闯入用户的蜜罐时,服务和TCP/IP都会模拟操作系统做出各种响应。当前,还没有任何其他的蜜罐具有这种功能,可以完成的工作包括虚拟nmap和xprobe,调节分配重组策略以及调节FIN扫描策略。

第四,可以模拟任何路由拓扑结构,可以配置等待时间和丢包率。

第五,作为一种开放源代码的工具,Honeyd可以免费使用,同时也迅速成为了很多安全组织的开发源代码的一部分。

2 Honeyd逻辑结构

Honeyd结构由以下几个部件组成:配置数据库,中心数据包分配器,协议管理器,服务处理单元,特征引擎,可选的路由器部分。Honeyd的逻辑结构如图1所示:

图1 Honeyd的逻辑结构

各部分的功能分别为:

路由器:路由数据包到达某个虚拟蜜罐所在的地址,会产生三种情况:没有找到目的地址而丢弃数据包;没有找到目的地址,但是可以把数据包交付给下一个路由器;可以直接把数据包交付给目的地址。路由是一个可选择的逻辑部件。

数据包分配器:该逻辑部件核查IP数据包的长度,对IP数据包进行正确性检查,核实确认序列号。分配器只对协议管理器分配三种数据包:ICMP、UDP、TCP。其他协议的数据包会被丢弃并且不做任何记录。

协议管理器:它包括ICMP/UDP/TCP协议管理和服务处理单元。ICMP协议管理支持ICMP请求。默认的,所有的蜜罐配置都响应回射请求和处理目标主机不可达信息;TCP和UDP协议管理器和服务处理单元能够对外建立特定服务的连接。服务的行为完全依赖于外部应用。TCP协议管理器能够很好的支持三次握手的建立和FIN或RST的拆卸,但是还不能很好地支持窗口管理和拥塞控制。

特征引擎:将对发送的所有数据包进行指纹匹配,以便在指纹识别工具前能很好地隐蔽。

配置数据库:它当中包含了一切配置参数,例如虚拟蜜罐的IP地址、默认的ICMP响应,虚拟链路的网络属性,指纹数据等。

3 关键技术

Honeyd能够虚拟蜜罐,并且能够利用这些虚拟的蜜罐构建松散的虚拟蜜罐网络或有层次结构的虚拟蜜罐网络,这些虚拟的蜜罐网络中甚至可以包含真实的主机。然而Honeyd要构建虚拟的蜜罐网络需要面对这样一些问题:首先是攻击者利用指纹工具对连接的蜜罐进行识别时该怎么办;其次,虚拟出的蜜罐网络如果面对网络拓扑发现工具时怎么办。

Honeyd采用了两种关键的技术来欺骗攻击者,一种是指纹匹配技术,另一种是虚拟蜜罐网络技术。

4 指纹匹配

为了在被探测的时候表现得跟真实的系统一样,虚拟蜜罐要模拟给定操作系统的网络栈行为,这是虚拟蜜罐的一部分特征。不同的特征能被设计成不同的虚拟蜜罐。特征引擎通过改变协议数据包头部来匹配特定的操作系统,从而表现出相应的网络协议栈行为,这一过程成为指纹匹配。

Honeyd运用NMAP的指纹数据库作为TCP和UDP行为特征的的参考;用XPROBE指纹数据库作为ICMP行为的参考。

下面用NMAP提供的指纹信息来改变蜜罐网络栈的特征为例来进行说明:

Fingerprint IRIX 6.5.15m on SGI 02

Tseq(Class=TD%gcd=

T1(DF=N%W=EF2A%ACK=S++%Flags=AS%Ops=MNWNNTNNM)

T2(Resp=Y%DF=N%W=O%ACK=S%Flags=AR%Ops=)

T3(Resp=Y%DF=N%W=EF2A%ACK=O%Flags=A%Ops=NNT)

T4(DF=N%W=O%ACK=O%FlagsR%Ops=)

T5(DF=N%W=O%ACK=S++%Flags=AR%Ops=)

T6(DF=N%W=O%ACK=O%Flags=R%Ops=)

T7(DFN%W=O%ACK=S%Flags=R%Ops=)

PU(Resp=n)

T1测试设置了SYN和ECE TCP flags;T5测试仅设置了SYN TCP flags。后面7个测试决定了数据包到达开放的或关闭的端口的网络栈行为。最后一个分析ICMP对关闭的UDP端口的响应。

Honeyd保持每一个蜜罐的可靠性。包括产生ISN信息可靠性,蜜罐的初始化时间,当前IP数据包的确认号的可靠性。保持状态有利于我们在指纹修改后发送的数据包产生后续的ISN。

滑动窗口在不同的环境下表现出来的大小同样也会成为攻击者进行识别的一部分。当Honeyd为一个新建的连接发送一个数据包时,它会用NMAP指纹去检测内部窗口的大小,在一个连接建立好以后,Honeyd框架将根据缓冲区中数据的多少调整窗口的大小。

5 指纹匹配相关函数

Honeyd逻辑上的特征引擎是由相关的函数参考配置数据库中的参数,然后分别对各自的数据包进行指纹处理得到的。这些被处理的数据包主要由TCP数据包、UDP数据包和ICMP数据包。其中tcp _send(),tcp_personality()负责处理TCP数据包的指纹;udp_send()负责处理UDP数据包的指纹;icmp_send()数据包负责处理ICMP数据包的指纹。下面我们重点介绍处理TCP数据包的函数。

tcp_send()负责发送基于tcp协议的数据包,重要的是,它对即将发送的数据包进行改动,修改报头,使得看上去和对应的操作系统的特征准确地吻合,以达到欺骗的效果。因而此函数只是在通过查询特征库后,得到返回的id(ip报头的标识字段的值),调整其他参数,封装成ip包发送。

udp_send()函数负责发送基于udp协议的数据包,如同上面的一样,发送前,必须参考特征库,修改得当的报头。

icmp协议范文第10篇

关键词:Wireshark;Omnipeek;TCP/IP协议

中图分类号:G642 文献标识码:A 文章编号:1009-3044(2016)35-0050-02

The Application of Network Packet Capture Software in Computer Network Technology in Teaching

WAMG Hai-yan

(Jiangxi Province Industry of Electronic and Information Engineering Career Technical College, Nanchang 330095, China)

Abstract:To analyze the network protocol with the wireshark software in CNT course, the students could be have a visual understanding fordata network transmission process. The students can through the rote memorization learning method to learn the abstract and complicated network protocol knowledge. In practical pplication of teaching, students'study interests was obvious increased by learning with the wireshark software, it lays a good foundation for students' further study such

as network programming, network equipment debugging and other professional knowledges.

Key words: wireshark;omnipeek;TCP/IP protocol

随着“互联网+”时代的到来,网络技术成为我们生活、工作、学习中不可缺少的重要部分,这对我国职业院校“计算机网络技术”课程教学提出了更高的要求。在以往课程中,协议理论部分的教学一直是教学中的一个难点,因为传统的计算机网络教材中对各协议层都是纯理论的描述,对于此类看不见又摸不着的内容,学生理解非常的抽象,实在不行只能通过死记硬背的方式将各层的功能强行记下来,但到实践应用的时候又不能把理论联系上。所以在教材的组织上,把协议部分压缩了,另外加入如网络软件的使用等其他不重要的内容来充实教材内容。笔者认为,如果在“计算机网络技术”课程中,没有对基础网络协议有一个清晰的认识,对计算机后续的课程学习是非常不利的,也丧失了“计算机网络技术”这门课的教学意义。以下简单列举两个例子:1计算机软件开发课程中,没有网络协议的知识基础,影响学生在SOCKET编程的部分学习,SOCKET涉及W络层与传输层的协议。2计算机网络互联课程中,对协议掌握的深浅,更是直接影响学生对交换机与路由器运行原理的学习进度。

为了解决以上提出的问题,需要对教学内容进行有效的改革。在制定教学内容时,应该以TCP/IP网络协议模型簇为中心,对常见的协议内容与专业名词(如:IP地址、广播地址、虚拟局域网、路由协议等)讲解要做到讲清、讲透,但是如果依然采用前面的纯理论的讲解的方式,严重影响了教学效果。经过反复细致的研究,加之与同行之间的研讨。决定将抓包软件(Wireshark、Omnipeek)融入到教学中来。

Wireshark(前身叫Ethereal),在网络抓包软件当中,是目前使用率最高的协议分析软件,它主要的功能就是可以从网络适配器驱动层,对网络数据进行捕获,其中“捕获过滤器”与“显示过滤器”,能很容易在大量的数据捕获数据中找出自己所需要的相关数据,它有多平台版本(Windows、Linux),最新的有2.X版本可供下载使用。在高职教学中,我们一般采用WINDOWS 7操作系统,下面,我们可以从实例教学知识点来说明一下软件对教学的辅助作用。

ICMP网际协议:ICMP全称(Internet Control Message Protocol),主要用于确认IP数据包是否成功送达目标地址,并通知在发送过程中IP数据包被丢弃的原因,改善网络设置等。有了这些功能,就可以获得网络通信是否正常、设置是否有误以及设备有何异常等信息,方便对网络出现问题的分析。协议的工作过程如图1所示。

中我们分析得出:首先,从地址上分析(包括MAC地址与IP地址),源MAC变为(00:12:80:4B:C0:7F),目标MAC变为(00:16:D4:B8:59:B1),源IP变为(192.168.100.1),目标变为(192.168.100.138),与前面的ICMP查询报文比较得出,数据报由主机B发出,在ICMP数据部分变化的主要是(Type:0,ICMP Code:0),按照协议的要求,就正是ICMP应答包的协议规定数据。

经过对上面一个教学实例的分析描述,利用Wireshark抓包,使用Omnipeek对一个ICMP包进行分析,在上述图中可以清晰地看出以太网链路层与IP数据报也就是网络层数据及ICMP协议以IP数据报的形式在网络上传输的过程。在抓包软件的有力帮助下,我们可以非常直观的观察协议数据的结构方式,传输方向,了解ICMP协议工作的原理。

实践证明,在网络协议教学过程中,我们通过合理的使用数据包捕获软件,将其良好的融入到我们的教学内容当中,能让教学内容形象的表示出来。新的教学内容与教学方式让学生在学习的过程中更加容易理解复杂抽象的网络协议结构,学生在学习网络协议的兴趣明显提高了,对“计算机网络技术”的课程教学起到了较大的帮助。

参考文献:

[1] 李强.计算机网络技术在教学中的应用研究[J].计算机光盘软件与应用,2014(2):216-217.

上一篇:培训协议范文 下一篇:怎样写离婚协议书范文