Socket实现UDP协议下的网络通信.pdf

Socket实现UDP协议下的网络通信.pdf

ID:51495315

大小:138.41 KB

页数:3页

时间:2020-03-25

Socket实现UDP协议下的网络通信.pdf_第1页
Socket实现UDP协议下的网络通信.pdf_第2页
Socket实现UDP协议下的网络通信.pdf_第3页
资源描述:

《Socket实现UDP协议下的网络通信.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第8卷%第9期软件导刊Vol.8No.92009年9月SoftwareGuideSep.2009用Socket实现UDP协议下的网络通信王伟,蓝雯飞,高伟华(中南民族大学计算机学院,湖北武汉430070)摘要:随着计算机技术、网络技术、通信技术的迅速发展,越来越多的网络信息走入了大众的生活,对网络信息的传输设计和实现技术要求也越来越高。研究了基于VC的UDP网络编程的设计与实现,并采用同步传输技术实现了一个简单的UDPServer。关键词:网络编程;UDP;同步传输中图分类号:TP393.04文献标识码:A文章编号:1672-7800(2009)09-0115

2、-031网络通信技术2Socket基本原理计算机网络将多个具有独立工作能力的计算机系统通过在Windows网络编程中,套接字接口主要有3种类型:流通信设备和线路由功能完善的网络软件实现资源共享和数据式套接字,数据报套接字以及原始套接字、流式套接字定义了通信的系统。一种面向连接的服务,实现了无差错无重复的顺序数据传输,1.1网络的分类无长度限制。数据报套接字接口定义了一种无连接的服务,数用于计算机网络分类的标准很多,如拓扑结构,应用协议据通过相互独立的报文进行传输,是无序的,并且不保证可靠。等。但是这些标准只能反映网络某方面的特征,最能反映网络原始套接字允许对低

3、层协议IP或ICMP直接访问,主要应用技术本质特征的分类标准是分布距离,按分布距离分为LAN,网络协议的测试。在现在的网络应用中,通信双方最常见的交MAN,WAN,INTERNET。互模式便是Client/Server模式。客户/服务器模式通常采用监1.2网络通信协议听/连接的方式实现。服务器端应用程序在一个端口监听对服网络通信协议是通信双方在通信时遵循的规则和约定,是务的请求,也就是说,服务进程一直处于休眠状态,直到有一个信息网络中使用的通信语言。它有3个要素:语法,即信息格客户对这个服务提出了连接请求,此时服务线程被“唤醒”并为式;语义,某些信息组合的含义

4、;同步,即收、发双方能分辨出通客户提供服务,即对客户的请求做出适当的反应。采用面向连信的开始和结束。在计算机网络中用协议数据单元PDU描述接的协议(如TCP)时,服务器处理的请求比较复杂,并不是简通信协议,PDU由控制部分和数据部分组成,控制部分由若干单的请求应答所能解决的,而且大多数TCP服务器是并发服字段组成,表示通信中用到的协议。当今局域网中最常见的三务器,因此需要经过反复的交互。使用面向连接的协议时,典型个协议是MICROSOFT的NETBEUI、NOVELL的IPX/SPX和交的套接字接口调用流程如图1所示。叉平台TCP/IP。1.3网络通信的同步与

5、异步同步就是发送和接受数据的双方保持步调一致,发送数据方发送数据后,必须等到接受数据方发回了接受到了数据的信息后,才能做下面的事情。而作为接收数据方,在决定接收后,必须接收到数据后才能做下面的事情,它需要不断地轮询接收缓冲区有没有数据,又称为阻塞方式。异步则是在发送和接收数据时还可以做其它的事情,又称为非阻塞方式。图1典型的套接字接口调用流程作者简介:王伟(1982-),男,湖北蕲春人,中南民族大学计算机学院硕士研究生,研究方向为数据库、程序设计;蓝雯飞(1966-),女,浙江遂昌人,中南民族大学计算机学院副教授,研究方向为数据库;高伟华(1980-),男,湖

6、北武汉人,中南民族大学计算机学院硕士研究生,研究方向为数据库、程序设计。·116·软件导刊2009年if(err!=0)3基于UDP的Socket编程技术{return;UDP是一种面向非连接,不可靠的通讯协议,相对于TCP}来说,虽然可靠性不及,但传输效率较高。所以在网络上仍有很if(LOBYTE(wsaData.wVersion)!=1

7、

8、HIBYTE(wsaData.大的用途。wVersion)!=1)server端:openasocket(socket)-->namethesocket(bind){-->sendandreceivedata(sendt

9、orecvfrom)-->closesocket(clos-WSACleanup();esocket)return;client端:openasocket(socket)-->sendandreceivedata}(sendtorecvfrom)-->closesocket(closesocket)sockSrv=socket(AF_INET,SOCK_DGRAM,0);server端无需listen,client端无需connect,因此UDP中SOCKADDR_INaddrSrv;server和client的区别相对较模糊。只要调用sendto和recvf

10、romaddrSrv.sin_addr

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。