




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、网络安全协议课程设计题 目 基于 UDP 协议的分析和改进 班级 学号姓名 指导老师2014 年 07 月 01 日目录前言3第 1 章 UDP 协议的概述 31.1UDP 协议31.2UDP 协议的数据报格式 . 41.3针对 UDP 协议的攻击5第 2 章 需求分析52.1UDP 协议的优缺点52.1.1UDP 协议的优势:52.1.2 UDP 协议的不足 :62.2与 TCP协议的比较62.2.1TCP 协议的拥赛控制62.2.2TCP 协议的往返时延6第 3 章 UDP 协议的改进 73.1设计目标73.2模块的设计概述 73.3总体设计73.3.1体系结构73.3.2报文结构8第 4
2、 章 协议的实现机制 94.1协议实现采用的方法94.1.1建立连接94.1.2关闭连接 104.1.3差错检测 104.1.4确认技术 114.1.5序列号 114.1.6超时重发 11第 5 章 安全性分析 115.1协议的功能 115.2协议存在的安全隐患 12第 6 章 小结 12参考文献 13前言2 1 世纪将是一个以网络为核心的信息时代 , 一般把 I n ter net 定义为一个 技术名词 , 指遵守 T CP / I P 协议, 用各种计算机物理连接方式集合在一起的计 算机网络及单机的总和。 T CP/ I P I n ter ne t 协议族已经成为计算机工业中开放 系统互
3、连的事实上的标准。在 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 参考模型中一种无连接
4、的传输层协议,提供面向事务的简单不可靠信息传送服 务,IETF RFC7 68是 UDP的正式规范。在 TCP/IP 模型中,UDP 为网络层(network layer)以下和应用层( application layer)以上提供了一个简单的接口。1.2 UDP 数据报的格式UDP数据报是 UDP协议的数据传输的基本单位,格式见下图:1.端口(两个)源端口( 16bit ):指源主机上运行的进程使用的端口地址。目的端口( 16bit ):指目的主机上运行的进程使用的端口地址。UDP 使用端口对给定主机上的多个目标进行区分。源端口是可选域,当其有 意义时,指的是发送应用程序的 UDP端口。如果
5、不使用它,则在此域中填 0。目 的端口在有特定的目的网络地址时有意义,指目标应用程序的 UDP端口。 UDP的著名端口UDP的端口号关键字描述53DOMAIN域名服务器67BOOTPS引导协议服务器68BOOPTPC引导协议客户机69TFTP简单文件传送161SNMP简单网络管理协议162SNMP TRAP简单网络管理协议陷阱2.长度UDP 数据报的总长度(首部 +数据),用八进制表示(这表明最小的数据报长 度是 8)。UDP数据报总长度也可以通过下式进行计算:UDP数据报总长度 =IP 总长度 -IP 首部长度3.校验和用于校验整个 UDP数据报出现的差错。 它是一种简单的数学运算, 即对
6、IP 头、 UDP头和数据中信息包头的数位取反之和,再取反得到的。在计算校验和时要在 UDP数据报之前增加 12B 的伪首部(临时加上) ,其中第 三字段全 0,第四字段为 IP 首部中的协议字段( 17: UDP)。1.3针对 UDP 协议的攻击UDP Flood 是日渐猖厥的流量型 DoS攻击(拒绝服务攻击) ,原理也很简单。 常见的情况是利用大量 UDP小包冲击 DNS服务器或 Radius 认证服务器、流媒体 视频服务器。 100k pps 的 UDPF lood 经常将线路上的骨干设备例如防火墙打瘫, 造成整个网段的瘫痪。 由于 UDP协议是一种无连接的服务, 在 UDPF lood
7、 攻击中, 攻击者可发送大量伪造源 IP 地址的小 UDP包。但是,由于 UDP协议是无连接性 的,所以只要开了一个 UDP的端口提供相关服务的话, 那么就可针对相关的服务 进行攻击。正常应用情况下, UDP包双向流量会基本相等, 而且大小和内容都是随机的, 变化很大。出现 UDP Flood的情况下,针对同一目标 IP 的 UDP包在一侧大量出 现,并且内容和大小都比较固定。第 2 章 需求分析2.1UDP 协议的优缺点2.1.1UDP 协议的优势:(1)系统开销小、速度快;(2)对于绝大多数居于消息传递的应用程序来说, 基于帧的通信 (UDP)比基于 流的通信( TCP)更为直接和有效:(
8、3)对应用部分实现系统冗余、人物分担提供了极大易实现及可操作性:(4)对等的通信实体、 应用部分可方便的根据需要构造成客户 / 服务器模型及 分布处理模型 , 大大加强应用在可操作性及维护性的能力 ;( 5) 可实现完全图模型的网状网络拓扑结构 , 可大大增强系统的容错性。2.1.2 UDP 协议的不足 :(1) 依赖 IP 协议传送报文;( 2)不确认报文是否到达, 不对报文进行排序也不进行流量控制, 对于顺序 错误或丢失的包,不做纠错或重传;(3) 没有建立初始化连接。2.2与 TCP 协议的比较2.2.1TCP协议的拥赛控制随着网络带宽时延乘积 ( B D P ) 的增加,通常的 T C
9、 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 (
10、 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的提高一直都不能在带宽的利用效
11、 率和公平性方面达到一个令人满意的程度 ) ,这对运行在低速网络中的应用影响尤为严重。考虑到上面的背景, 需要一种在低速网络中支持高效利用可用带宽 的数据传输协议。为此,本文设计了一个应用程序级别的基于U D P 的数据传输协议。第 3 章 UDP 协议的改进3.1设计目标基于 U D P 的可靠传输协议主要目标是效率、稳定。应该利用所有的可用带 宽,即使带宽变化的很剧烈, 以保证在低速网络情况下, 能够为需一定带宽支持 的应用尽可能提供其所需的传输速率。稳定性要求不能像 T C P 那样遇到丢包 时产生传输速率的大幅波动,分组发送速率应该一直快速会聚可用带宽。3.2模块的设计概述本协议是数据
12、传输是单向的,有两个部分:发送方和接收方。发送方根据流 量控制发送 ( 和重传)数据,触发和处理所有的控制事件,如 R T T 估计、超 时检测和重传。 接收者接收数据分组和控制数据报, 并根据接收到的数据报发送 控制数据报。接收程序使用一个固定 U D P 端口来发送和接收。本协议将应用层数据封装成固定的大小进行传输,和 T C P 相似的是,称 这个固定的数据报大小叫做 M S S( 最大分组大小,适宜于快速传输大块数据 流 。 M S S 可以通过应用程序来设置, M S S 的选择对传输效率会有影响。通过滑动窗口的流水技术来进行流量控制, 在参数合适事能够充分利用当前 可用带宽。考虑到
13、系统开销, 协议并没有引入如流数据加密或身份认证等安全机制, 它 依赖于应用程序提供的授权和底层提供的安全机制。然而,由于 U D P 是无连 接的,实现可靠数据传输时,应该检查所有达到的数据报是否是预期的数据报。3.3总体设计3.3.1体系结构从计算机网络层次体系的角度来看,基于 U D P的可靠数据传输协议的层次结 构如图 l 所示。 因此 ,本协议是在原 T C P I P 协议的传输层的 U D P 协 议和应用层之间加入了一层。应用层 基于UDP的可靠传 输协议 传输层 UDP 网络层 IP 网络接口层图 1 基于 UDP的可靠传输协议的层次 为保证可靠数据传输而实现的, 加入了基于
14、 U D P 的可靠数据传输协议而形 成的一个五层体系结构。这样就可以利用 T C P I P 的U D P协议实现一种基 于 U D P 的面向连接可靠数据传输机制。3.3.2报文结构协议有两类数据报:应用数据报和控制数据报 。它们数据报类型域来区分的 。 ( 一 ) 应用数据报序列号时间戳DATA标志类型数据4字节4 字节 1 字节图2 应用数据报格式数据报里含有四个域: 序列号, 是四个字节的无符号整数, 每个非重传的应 用数据报都有一个相对应的序列号,且每个非重传的应用数据报都序号增加 l ; 时间 戳,是一个四字节的无符号整数。数据报类型域里有数据报对应的值 D A T A ,紧跟在
15、这些数据后 面的 是应用程序数据。( 二) 控制数据报。控制报文有三种:序列号时间戳SYN 标志类型需要传送的数据报个数文件名4字节4 字节 1 字节 4 字节图 3 协议连接握手报文图 3 是建立连接时的数据报,其中包含所要传输的数据报个数和文件名序列号时间戳ACK标志类型4 字节 4 字节 1 字节8图 4 应答报文图 4 是应答 ( A C K ) 报文 , 序列号域填写的是希望接收到的下一报文的序 列号。时间戳填入引起此应答的数据报文的时间戳。序列号时间戳FIN标志类型4 字节 4 字节 1 字节 图 5 关闭连接报文 确认报文和关闭连接报文不包含三个域以外的控制信息,图中的类型域所填
16、 的值是三个宏定义 。对于应用数据报和控制数据报来说都不需要增加报文长度域,因为可 以从 U D P 协议头中得到实际的数据报大小。数据报大小信息能被用来得到数据报有 效载荷和控制数据报中的控制信息字段大小。第 4 章 协议的实现机制4.1协议实现采用的方法U D P 是一个简单的面向数据报的运输层协议,它把应用程序交给它的数据 添加上简单的包头就传给 I P 层发送出去,没有可靠性保证。基于 U D P的可靠 数据传输协议是一个面向连接的可靠数据传输协议,在分析它的技术实现问题 时,使用了以下实现可靠数据传输所必需的关键技术,并在其中做出了选择。4.1.1建立连接作为一种面向连接的协议, 在
17、利用协议进行数据通信之前, 首先必须在通信的双 方之间建立一条连接。在的实现中,参考了下图中 T C P中的 3次握手方式。图6 TCP 三次握手协议但是由于协议是单工的,所以在第三个包开始已经传输应用数据了4.1.2关闭连接关闭连接也参考了 T C P的方式, T C P 在关闭连接时的是以 4 次握手方 法进行连接的关闭的,而且在永久连接的链路中正常情况下是不需要关闭连接 的,只有在出现错误的情况下才会进行关闭操作。根据本协议特点做 了一定的 修改,过程如下:发送方收到接收方对最后一个数据报的确认后发送关闭连接数 据报而后结束本次连接关闭完成。接收方发出 最后的一个数据报发出确认后启 动定
18、时器等待关闭连接数据报, 此过程中如果收到最后一个数据报的则发送相应 确认,重启定时器;若定时器超时则表明 F I N 丢失,但是可知在这种情况 无 论超时与否都可知数据已正确传输完毕。 若在传输过程中发送方检测到发送多次 超时或接收方检测到超时,都会导致关闭连接,并检测出数据没有发送成功。4.1.3差错检测U D P头部具有检验和域, 提供了差错检测功能, 由于本协议是调用 U D P 提 供的服务,因此不需要另外增加校验码就可提供此功能。104.1.4 确认技术发送方需要接收方对收到数据的反馈来检测数据是否发送成功。 常用的确认技术 有逐个确认, 捎带确认、累积确认和超时确认, 否定确认以
19、及扩展确认这几种方 式的结合来实现确认。 综合考虑开销,效率和实现复杂性, 本协议采用累积确认。4.1.5序列号由于数据会以 U D P 数据报的方式传输, 而 U D P数据包的到达可能会失 序,因此 它本协议的数据报的到达也可能失序,如果必要,需要对收到的数据 报文进行重新排序,以便能收到的数据 以正确的顺序交给应用层。对报文的丢 失处理方式是重传, 这样就引进了报文的重复, 包括数据报和应答报文, 序列号 可以解决这些乱序、丢失和重复的问题。4.1.6 超时重发数据报文和应答文都有可能丢失,而且 U D P协议会丢弃错误的数据报而不 向本端应用层或发送方提供任何提示信息, 发送方发现这些
20、事件的方法是等待确 认时启动超时重发定时器, 若发生超时则判断为上述三个事件之一发生, 由于无 法区分确认丢失还是另外两个事件发生, 发送方选择的处理策略是万能的重发, 当然它会引入新的问题,但序列号可以解决。第 5 章 安全性分析5.1协议的功能本协议提供的主要功能有:( 1 ) 基于数据报的收发功能,协议调用传输层的 U D P 协议提供的服务, 因而它会将数据分割成合适发送的大小来发送。( 2 ) 处理比特差错, U D P本身具有的校验功能,能够检测出数据包的错误 并丢弃出错的数据报。( 3 ) 处理重复的数据报11( 4 ) 处理乱序的数据报 。( 5 ) 动态估计 R T T 。(
21、 6 ) 超时重发功能,采用和 T C P 类似的超时重发机制来保证数据分组的 可靠传输。5.2协议存在的安全隐患可能存在的安全缺陷:1.由于使用序列号,可能会引起类似于 TCP序列号猜测的攻击,如果攻击者 能够猜测到正确的序列号,他就可以产生他自己的能被目标主机接收的消息片 段。2.由于协议借鉴了 TCP协议的建立连接所使用的三次握手,攻击者可能会利 用SYNF lood 攻击,实现拒绝服务攻击,而且在许多情况下,黑客常利用 SYN攻击 作为其他复杂欺骗和攻击的基础。3.由于超时重发可能引起报文消息的大量重复,会加大系统处理报文的负 担,而且攻击者会趁机发起重放攻击,引起系统瘫痪。4.基于UDP协议本身的特点,我们知道 UDP Flood攻击是最常见的 UDP攻击, 会造成服务、网络和服务器超载等严重后果。第 6 章 小结在本次课程设计的实习中, 通过在网络上查询资料和对平时学习的总结, 我 更加深刻的理解了 TCPIP 协议族存在的安全隐患,通过自身的努力对已有的协
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 岷江股份合同范本
- 2025至2030年中国电动焊接闸阀数据监测研究报告
- 情感辅助合同范本
- 2025至2030年中国电动搬运车电机数据监测研究报告
- 2025年中国万宝工程有限公司校园招聘笔试参考题库附带答案详解
- 神经内科知识在商业保险产品设计中的应用
- 科技教育与创新人才培养的探索与实践
- 科技在生态保护中的多元应用探索
- 有机发电服务合同范本
- 电子商务平台的技术创新与市场领导力
- 电力系统全环节实时精准碳计量方法及其应用展望
- 131邻补角对顶角(分层练习)-2022-2023学年七年级数学下册
- 高三英语语法填空专项训练100(附答案)及解析
- 2024年湖南省长沙市中考数学试题(含解析)
- 航空航天标准与认证互认
- 心理课教案自我认知与情绪管理
- 民用无人机操控员执照(CAAC)考试复习重点题库500题(含答案)
- 幼儿园 中班心理健康《我会倾诉》
- GB/T 6553-2024严酷环境条件下使用的电气绝缘材料评定耐电痕化和蚀损的试验方法
- 中职旅游专业《中国旅游地理》说课稿
- 微积分试卷及规范标准答案6套
评论
0/150
提交评论