网络传输过程中UDP协议实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
网络传输过程中UDP协议实现

网络传输过程中UDP协议实现   摘要:随着计算机网络的广泛运用,作为计算机网络体系结构中的重要协议之一 ―― UDP传输协议,已经广泛的运用到计算机网络的数据传输的过程中,而且希望数据可以高效、准确、迅速的完成传输。本文研究了运输层的UDP协议发送来的数据包在网络层的IP协议条件下对数据进行处理、发送的过程,主要包括建立连接,数据的接收和缓存,IP数据包头的处理以及数据发送四个步骤,接着设计了以为基础FPGA的功能实现方案 关键词:UDP 协议 FPGA 中图分类号:TP393 文献标识码:A 文章编号:1007-9416(2016)05-0000-00 传输控制协议/网际协议(Transmission Control Protocol/ Internet Protocol,TCP/IP)协议簇是Internet 和全球各地网络互联的引擎。本文针对网际层IP协议下的一项功能的实现,主要是针对从UDP协议下的数据包处理的过程。UDP是一个简单的面向数据报的运输层协议:进程的每个输出操作都正好产生一个UDP数据报,并组装成一份待发送的IP数据报 1数据报处理方案 1.1端口设计 端口应该由外部端口和内部端口组成。外部端口是控制硬件(以FPGA为例),主要包括时钟输入信号和复位输入信号。内部端口为运输层与网络层相互联系为原则设计的,不仅需要数据输入输出,也需要这两个模块间的相互控制。具体内部端口主要包括数据输入输出信号及对应的数据同步信号,两个准备信号,两个IP地址输入信号和输入同步信号的结束信号。信号描述如下: 时钟信号(clk)、复位信号(res)、UDP准备信号(udprd)、输入数据信号(isd):、输入数据同步信号(iss)、输入数据结束信号(ise)、源IP地址(sipa):、目的IP地址(dipa)、IP准备信号(iprd)、输出数据信号(osd)、输出数据同步信号(oss) 具体端口设置如图1: 1.2 功能模块 1.2.1 建立连接模块 运输层和网络层之间有很多协议,不同协议对应不同数据包,如何选择合适通路选择特定数据包,这就要求有特定的连接过程完成特定的数据传输 为了建立UDP协议数据和IP数据之间的相互通信,在方案中,选择增添一个建立连接模块,目的是完成两个功能。首先是完成UDP协议下的数据在特定通道内向网络层的传输,其次是产生控制信号,控制下一模块工作状态。在此过程中,主要涉及到两个信号,其一是udprd信号,是建立连接第一步,这个信号旨在反映UDP数据报已经准备好发送;其二是iprd信号,建立连接第二步,本信号是为了给运输层的UDP协议的反馈信号,如果接到收此信号,UDP数据报就开始发送了。本信号还有一个功能:当网络层对数据处理时,此信号会自动变低电平,将不会接收UDP数据报,直到在网络层的数据处理完毕 1.2.2 数据接收存储模块 在此模块下,可分为数据接收部分和数据的存储部分 首先介绍一下数据的接收部分,当大量的数据报准备进入网络层时,有些数据是没有意义的,所以要准确有效的接收来自UDP协议下的数据报,需要在这一部分完成此功能。在端口的设置,增加了同步接收信号和终止信号,当同步信号有效,数据为有效数据,当终止信号有效,则一个完整的UDP数据包就发送完成了 当大量的UDP数据包进入到IP协议下准备处理,而处理速度是远远小于接收的速度,会导致数据的滞留,甚至数据会丢失。为了解决该问题,增加了一个数据存储模块,把数据存储下来,弥补了处理速度和接收速度的不匹配 此模块还额外的完成了一个功能:计数功能。在加I P数据头需要每一包UDP数据包字节的长度信息进行存储 1.2.3 IP数据包头处理及发送模块 每一份的IP数据包都是有IP数据包头和对应的UDP数据包组合成的。需要将其对应封装 当IP数据包头处理完成了,紧接任务就是将其发送出去。在发送完IP数据包头紧跟要发送其对应的UDP数据包,这就是一个完整的IP数据包。如果输出同步信号有效,这些处理好的数据将发送到数据链路层供其使用 2方案综述 (1)运输层和网络层之间建立连接,保证数据准确无误差的传输到网络层,产生控制信号,控制数据的接收;产生反馈信号,保证运输层的UDP数据包适时的传送过来。(2)读取UDP数据包并准确的计数,将已读的数据存入缓存中,产生信号,控制IP头处理模块的启动,然后将必要数据传递到IP头处理模块。(3)处理数据,将对应的一包UDP数据产生相应的IP数据包头,形成一个IP数据包。然后将包头发送,产生输出的同步信号,之后产生信号读取缓存中的数据,通过输出端口将其发送出去 这就是一个UDP数据包的处理过程,不断反复以上步骤,UDP数

文档评论(0)

linsspace + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档