[发明专利]基于UDP协议的数据传输方法无效
申请号: | 200910010076.1 | 申请日: | 2009-01-13 |
公开(公告)号: | CN101778093A | 公开(公告)日: | 2010-07-14 |
发明(设计)人: | 蒋一;李德宝 | 申请(专利权)人: | 蒋一 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/56 |
代理公司: | 大连智慧专利事务所 21215 | 代理人: | 刘琦 |
地址: | 116000辽宁省大连市*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 udp 协议 数据传输 方法 | ||
技术领域
本发明涉及一种互联网中数据传输的方法,更具体地说,涉及一种基于UDP协议的数据传输方法。
背景技术
TCP(Transmission Control Protocol),传输控制协议,主要用于在主机间建立一个虚拟连接,以实现高可靠性的数据包交换。IP协议可以进行IP数据包的分割和组装,但是通过IP协议并不能清楚地了解到数据包是否顺利地发送给目标计算机。而使用TCP协议就不同了,在该协议传输模式中在将数据包成功发送给目标计算机后,TCP会要求发送一个确认;如果在某个时限内没有收到确认,那么TCP将重新发送数据包。另外,在传输的过程中,如果接收到无序、丢失以及被破坏的数据包,TCP还可以负责恢复。
TCP是一种面向连接的、可靠的、基于字节流的运输层通信协议,通常由IETF的RFC 793说明。在简化的计算机网络OSI模型中,它完成运输层所指定的功能。
UDP(User Datagram Protocol),用户数据报协议,是OSI参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。UDP协议基本上是IP协议与上层协议的接口。UDP协议适用端口分别运行在同一台设备上的多个应用程序。
由于大多数网络应用程序都在同一台机器上运行,计算机上必须能够确保目的地机器上的软件程序能从源地址机器处获得数据包,以及源计算机能收到正确的回复。这是通过使用UDP的“端口号”完成的。例如,如果一个工作站希望在工作站128.1.123.1上使用域名服务系统,它就会给数据包一个目的地址128.1.123.1,并在UDP头插入目标端口号53。源端口号标识了请求域名服务的本地机的应用程序,同时需要将所有由目的站生成的响应包都指定到源主机的这个端口上。UDP端口的详细介绍可以参照相关文章。
UDP协议使用IP层提供的服务把从应用层得到的数据从一台主机的某个应用程序传给网络上另一台主机上的某一个应用程序。其特点如下:
1、UDP传送数据前并不与对方建立连接,即UDP是无连接的,在传输数据前,发送方和接收方相互交换信息使双方同步。
2、UDP不对收到的数据进行排序,在UDP报文的首部中并没有关于数据顺序的信息(如TCP所采用的序号),而且报文不一定按顺序到达的,所以接收端无从排起。
3、UDP对接收到的数据报不发送确认信号,发送端不知道数据是否被正确接收,也不会重发数据。
4、UDP传送数据较TCP快速,系统开销也少。
从以上特点可知,UDP提供的是无连接的、不可靠的数据传送方式,是一种尽力而为的数据交付服务。问题在于,TCP协议在网络发展的前期,适用于所有的用户。在前期使用网络的用户,每个人都拥有一个公共的固定的ip地址,随着用户的增多,ip地址资源开始变得匮乏。为了解决ip资源匮乏的问题,nat(网络地址转换器)设备出现了,大的网络用户集群使用局域网地址,访问公共网络时分配临时的公网地址的方式,解决了ip匮乏问题。但是也直接导致了网络状态的复杂化,并直接影响了TCP协议的适用范围。用户与用户之间使用TCP协议共享资源时,绝大多数情况都无法进行。UDP协议可以穿越绝大多数的nat设备共享用户资源,但是UDP协议的无连接以及不可靠传输的特点,使得共享资源的过程变得异常艰难。
发明内容
本发明提供一种基于UDP协议实现互联网中两个客户终端之间数据的可靠传输方法,旨在弥补TCP协议下对传输数据因IP地址数量有限而受到的限制问题。
本发明一种基于UDP协议的数据传输方法,包括如下步骤:
(S1)发送终端将待发送的文件分成数据包,为数据包设置序号,以便接收终端将各个数据包重新恢复为发送的文件;
(S2)发送终端设置三个队列,包括等待发送数据队列、等待应答数据队列和补发数据队列。其中,等待发送数据队列,将数据包信息以先进先出的方式按序排列,并且基于UDP协议建立传输链路实现数据包的传输;
(S3)当等待发送数据队列中的一个数据包数据全部发出后,将该数据包信息从等待发送数据队列放入所述等待应答数据队列,等待所述接收终端应答;当接收终端应答接收成功时,等待应答数据队列删除成功传输的数据包信息;
(S4)当接收终端对所述等待应答数据队列中的数据包超时或未应答,则将该数据包放入补发数据队列,用于等待重新放入等待发送数据队列进行发送。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于蒋一,未经蒋一许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910010076.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种固型燃料的生产方法
- 下一篇:一种固定含氨基化合物的活性载体及其固定方法