Windows Socket编程实验要求

Windows Socket编程实验要求

ID:44273176

大小:202.50 KB

页数:35页

时间:2019-10-20

Windows Socket编程实验要求_第1页
Windows Socket编程实验要求_第2页
Windows Socket编程实验要求_第3页
Windows Socket编程实验要求_第4页
Windows Socket编程实验要求_第5页
资源描述:

《Windows Socket编程实验要求》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、WindowsSocket编程实验要求WindowsSockets编程简介WindowsSockets简介基本概念数据结构WinSock库函数程序结构WindowsSockets简介WindowsSockets(套接字)是在Windows下一套开放的、支持多种协议的网络编程接口规范。为Windows下网络异步通信提供了一种方便的开发和运行环境。WindowsSockets规范建立在BSDUNIX中实现的Berkeley套接字模型上,这个模型现在已是TCP/IP网络的标准。它独立于底层的协议。许多网络供应商在网络协议中支持WindowsSockets,包括TCP/IP、DECNet、IPX/S

2、PX等。目前主要是TCP/IPWindowsSocketsDLL。原理示意图工作模式TCP/IP应用服务采用客户机/服务器工作模式,服务器端启动守护进程,等待客户端的请求;服务器对应客户端的请求,派生子进程与客户进程进行数据通信,提供服务。客户机/服务器工作模式服务器先启动:1)打开一通道,告之本地主机愿意在某一公认的地址(端口,如FTP为21)接收客户请求。2)等待客户请求到达该端口。3)接收客户请求,处理请求。4)转2),等待另一客户请求。客户方:1)打开一通道,并连接到服务器的端口上。2)向服务器发服务请求报文,等待应答;继续请求……3)请求结束,关闭通道。基本概念套接字(Socket

3、):网络通信的基本构件,它是可以被命名和寻址的通信端点,每一个套接字与一个进程相连。TCP/IP应用程序之间的通信通过Socket进行。服务器拥有全局公认的Socket,任何客户端都可以向它发出连接请求和信息请求。客户端向操作系统申请一个Socket,系统为之分配一个Socket号。套接字类型流式套接字SOCK_STREAM面向连接,可靠,数据无错,无重复的发送,且按发送顺序接收的服务。数据报式套接字SOCK_DGRAM无连接服务。数据包以独立方式发送,数据可能有错、有重复、有丢失,接收顺序混乱。在WinSock1.1#defineSOCK_STREAM1/streamsocket/#def

4、ineSOCK_DGRAM2/datagramsocket/端口传输层和网络层在功能上的最大区别是传输层提供了进程通信能力。网络通信的最终地址不仅仅是主机地址,还包括可以描述进程的某种标识符;端口是一种抽象的软件结构(包括一些数据结构和I/O缓冲区)。每个端口都有一个端口号,TCP/IP的TCP和UDP的端口号互相独立。小于255的端口号作为保留端口。相关五元组半相关(三元组)(协议、本地地址、本地端口号)它在网络中可以全局唯一地标志一个进程,它指定了连接的每半部分。全相关(相关五元组)(协议、本地地址、本地端口号、远程地址、远程端口号)创建一个套接字通过套接字与远程应用建立连接阻塞(blo

5、cking)两种模式:阻塞模式(blockingmode)非阻塞模式(non-blockingmode)。阻塞模式(或称同步模式Synchronous)的socket的函数直到操作完成才返回。调用返回之前,该socket不能做任何其它事情。在BerkeleySockets中,套接字的默认工作模式是阻塞模式非阻塞模式(异步操作operatingasynchronously),则调用立即返回。WindowsSockets鼓励使用非阻塞的异步操作,用消息来驱动可能引起阻塞的网络连接和数据传输函数。基本数据结构Winsock.h定义了Winsock.dll使用的数据结构和函数SOCKET句柄数据类型

6、(套接字描述符/套接字号)typedefunsignedintu_int;typedefu_intSOCKET;网络地址结构:WinSock使用SOCKADDR_IN结构来指定本地或与之建立socket连接的远程端点地址。structin_addr{union{struct{u_chars_b1,s_b2,s_b3,s_b4;}s_un_b;struct{u_shorts_w1,s_w2;}s_un_w;u_longs_addr;};typedefstructsockaddr_inSOCKADDR_IN;/Socketaddress,internetstyle./structsockaddr

7、_in{shortsin_family;//地址族AF_INETu_shortsin_port;//端口structin_addrsin_addr;//IP地址charsin_zero[8];//填充位};WinSock库函数WindowsSockets库函数分为三类:1.套接字函数2.数据库函数3.扩展函数-------为适应Windows下基于消息的网络编程的异步扩展函数标准socket函数(23个)ac

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

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

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