当前位置:文档之家› 基于UDP网络安全协议课程设计

基于UDP网络安全协议课程设计

《网络安全协议》课程设计题目基于UDP协议的分析和改进班级学号姓名指导老师2014年07 月 01日目录前言 (3)第1章UDP协议的概述 (3)1.1UDP协议 (3)1.2UDP协议的数据报格式 (4)1.3针对UDP协议的攻击 (5)第2章需求分析 (5)2.1UDP协议的优缺点 (5)2.1.1UDP协议的优势: (5)2.1.2 UDP 协议的不足: (6)2.2与TCP协议的比较 (6)2.2.1TCP协议的拥赛控制 (6)2.2.2TCP协议的往返时延 (6)第3章UDP协议的改进 (7)3.1设计目标 (7)3.2模块的设计概述 (7)3.3总体设计 (7)3.3.1体系结构 (7)3.3.2报文结构 (8)第4章协议的实现机制 (9)4.1协议实现采用的方法 (9)4.1.1建立连接 (9)4.1.2关闭连接 (10)4.1.3差错检测 (10)4.1.4确认技术 (11)4.1.5序列号 (11)4.1.6 超时重发 (11)第5章安全性分析 (11)5.1协议的功能 (11)5.2协议存在的安全隐患 (12)第6章小结 (12)参考文献 (13)2前言2 1 世纪将是一个以网络为核心的信息时代, 一般把I n ter net 定义为一个技术名词, 指遵守T CP / I P 协议, 用各种计算机物理连接方式集合在一起的计算机网络及单机的总和。

T CP/ I P I n ter ne t 协议族已经成为计算机工业中开放系统互连的事实上的标准。

在T CP/ I P 协议族中, 在数据链路层、网络层,传输层和应用层存在很多的已知安全缺陷,选择其中一个存在安全缺陷的协议—UDP协议,针对此协议进行优化。

用户数据报协议U DP 提供应用程序之间传送数据报的基本机制基于目。

前U DP 通信的不足: 不可靠的无连接服务, 在参考T CP/ I P 协议及I SO 7 层协议的基础上, 设计了一套基于U DP 的可靠数据传输。

第1章UDP协议的概述1.1UDP协议UDP 是User Datagram Protocol的简称,中文名是用户数据报协议,是 OSI 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,IETF RFC 768是UDP的正式规范。

在TCP/IP模型中,UDP为网络层(network layer)以下和应用层(application layer)以上提供了一个简单的接口。

1.2 UDP数据报的格式UDP数据报是UDP协议的数据传输的基本单位,格式见下图:31.端口(两个)源端口(16bit):指源主机上运行的进程使用的端口地址。

目的端口(16bit):指目的主机上运行的进程使用的端口地址。

UDP使用端口对给定主机上的多个目标进行区分。

源端口是可选域,当其有意义时,指的是发送应用程序的UDP端口。

如果不使用它,则在此域中填0。

目的端口在有特定的目的网络地址时有意义,指目标应用程序的UDP端口。

2. 长度UDP数据报的总长度(首部+数据),用八进制表示(这表明最小的数据报长度是8)。

UDP数据报总长度也可以通过下式进行计算:UDP数据报总长度=IP总长度-IP首部长度43. 校验和用于校验整个UDP数据报出现的差错。

它是一种简单的数学运算,即对IP头、UDP头和数据中信息包头的数位取反之和,再取反得到的。

在计算校验和时要在UDP数据报之前增加12B的伪首部(临时加上),其中第三字段全0,第四字段为IP首部中的协议字段(17:UDP)。

1.3针对UDP协议的攻击UDP Flood是日渐猖厥的流量型DoS攻击(拒绝服务攻击),原理也很简单。

常见的情况是利用大量UDP小包冲击DNS服务器或Radius认证服务器、流媒体视频服务器。

100k pps的UDP Flood经常将线路上的骨干设备例如防火墙打瘫,造成整个网段的瘫痪。

由于UDP协议是一种无连接的服务,在UDP Flood攻击中,攻击者可发送大量伪造源IP地址的小UDP包。

但是,由于UDP协议是无连接性的,所以只要开了一个UDP的端口提供相关服务的话,那么就可针对相关的服务进行攻击。

正常应用情况下,UDP包双向流量会基本相等,而且大小和内容都是随机的,变化很大。

出现UDP Flood的情况下,针对同一目标IP的UDP包在一侧大量出现,并且内容和大小都比较固定。

第2章需求分析2.1UDP协议的优缺点2.1.1UDP协议的优势:(1)系统开销小、速度快;(2)对于绝大多数居于消息传递的应用程序来说,基于帧的通信(UDP)比基于流的通信(TCP)更为直接和有效:(3)对应用部分实现系统冗余、人物分担提供了极大易实现及可操作性:(4) 对等的通信实体、应用部分可方便的根据需要构造成客户/ 服务器模型及5分布处理模型, 大大加强应用在可操作性及维护性的能力;( 5) 可实现完全图模型的网状网络拓扑结构, 可大大增强系统的容错性。

2.1.2 UDP 协议的不足:(1)依赖IP协议传送报文;(2)不确认报文是否到达,不对报文进行排序也不进行流量控制,对于顺序错误或丢失的包,不做纠错或重传;(3)没有建立初始化连接。

2.2与TCP协议的比较2.2.1TCP协议的拥赛控制随着网络带宽时延乘积 ( B D P ) 的增加,通常的 T C P 协议开始变的低效。

这是因为它的A M I D ( A d d i t i v e I n c r e a s e M u i t i p l i c a t i v e D e c r e a s e ,即当 T C P发送方感受到端到端路径无拥塞时就线性的增加其发送速度,当察觉到路径拥塞时就乘性减小其发送速度,简称“和式增加,积式减少”)算法虽然减少了T C P 拥塞窗口,但不能快速的恢复可用带宽。

理论上的流量分析表明 T C P 在 B D P 增加到很高的时候比较容易受数据包丢失的影响。

2.2.2TCP协议的往返时延T C P 拥塞控制的不公平的R T T ( R o u n d — T r i p T i m e ,往返时延,表示从发送端发送数据开始,到发送端收到来自接收端的确认,总共经历的时延) 也成为在分布式数据密集应用中的严重问题。

拥有不同 R T T 的并发T C P 流将不公平地分享带宽。

尽管在 B D P 小的网络中可以使用通常的T C P 实现来相对平等的共享带宽,但在拥有大量 B D P 的网络中,通常的基于T C P的程序就必须承受严重的不公平的问题。

这个 R T T 基于的算法严重的限制了其在广域网分布式应用的效率例如互联网上的网络数据备份。

综上所述,一直到今天,对标准的T C P的提高一直都不能在带宽的利用效率和公平性方面达到一个令人满意的程度 ) ,这对运行在低速网络中的应用影6响尤为严重。

考虑到上面的背景,需要一种在低速网络中支持高效利用可用带宽的数据传输协议。

为此,本文设计了一个应用程序级别的基于 U D P 的数据传输协议。

第3章UDP协议的改进3.1设计目标基于 U D P 的可靠传输协议主要目标是效率、稳定。

应该利用所有的可用带宽,即使带宽变化的很剧烈,以保证在低速网络情况下,能够为需一定带宽支持的应用尽可能提供其所需的传输速率。

稳定性要求不能像 T C P 那样遇到丢包时产生传输速率的大幅波动,分组发送速率应该一直快速会聚可用带宽。

3.2模块的设计概述本协议是数据传输是单向的,有两个部分:发送方和接收方。

发送方根据流量控制发送 ( 和重传)数据,触发和处理所有的控制事件,如 R T T 估计、超时检测和重传。

接收者接收数据分组和控制数据报,并根据接收到的数据报发送控制数据报。

接收程序使用一个固定 U D P 端口来发送和接收。

本协议将应用层数据封装成固定的大小进行传输,和 T C P 相似的是,称这个固定的数据报大小叫做 M S S( 最大分组大小,适宜于快速传输大块数据流。

M S S可以通过应用程序来设置,M S S的选择对传输效率会有影响。

通过滑动窗口的流水技术来进行流量控制,在参数合适事能够充分利用当前可用带宽。

考虑到系统开销,协议并没有引入如流数据加密或身份认证等安全机制,它依赖于应用程序提供的授权和底层提供的安全机制。

然而,由于 U D P 是无连接的,实现可靠数据传输时,应该检查所有达到的数据报是否是预期的数据报。

3.3总体设计3.3.1体系结构从计算机网络层次体系的角度来看,基于 U D P的可靠数据传输协议的层次结7构如图 l 所示。

因此,本协议是在原 T C P / I P 协议的传输层的 U D P 协图1 基于UDP的可靠传输协议的层次为保证可靠数据传输而实现的,加入了基于 U D P的可靠数据传输协议而形成的一个五层体系结构。

这样就可以利用 T C P / I P的U D P协议实现一种基于 U D P的面向连接可靠数据传输机制。

3.3.2报文结构协议有两类数据报:应用数据报和控制数据报。

它们数据报类型域来区分的。

4字节 4字节 1字节图2 应用数据报格式数据报里含有四个域:序列号,是四个字节的无符号整数,每个非重传的应用数据报都有一个相对应的序列号,且每个非重传的应用数据报都序号增加l;时间戳,是一个四字节的无符号整数。

数据报类型域里有数据报对应的值D A T A ,紧跟在这些数据后面的是应用程序数据。

4字节 4字节 1字节 4字节图3 协议连接握手报文图 34字节 4字节 1字节8图4 应答报文图 4 是应答 ( A C K ) 报文,序列号域填写的是希望接收到的下一报文的序列号。

时间戳填入引起此应答的数据报文的时间戳。

4字节 4字节 1字节图5 关闭连接报文确认报文和关闭连接报文不包含三个域以外的控制信息,图中的类型域所填的值是三个宏定义。

对于应用数据报和控制数据报来说都不需要增加报文长度域,因为可以从U D P协议头中得到实际的数据报大小。

数据报大小信息能被用来得到数据报有效载荷和控制数据报中的控制信息字段大小。

第4章协议的实现机制4.1协议实现采用的方法U D P是一个简单的面向数据报的运输层协议,它把应用程序交给它的数据添加上简单的包头就传给 I P 层发送出去,没有可靠性保证。

基于U D P的可靠数据传输协议是一个面向连接的可靠数据传输协议,在分析它的技术实现问题时,使用了以下实现可靠数据传输所必需的关键技术,并在其中做出了选择。

4.1.1建立连接作为一种面向连接的协议,在利用协议进行数据通信之前,首先必须在通信的双方之间建立一条连接。

在的实现中,参考了下图中T C P中的 3次握手方式。

9图6 TCP三次握手协议但是由于协议是单工的,所以在第三个包开始已经传输应用数据了。

相关主题