全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
过socket进行通信的分布式应用是比较常见的,包括winsocket和websocket一、客户机/服务器模式在TCP/IP网络中两个进程间的相互作用的主机模式是客户机/服务器模式(Client/Server model)。该模式的建立基于以下两点:1、非对等作用;2、通信完全是异步的。客户机/服务器模式在操作过程中采取的是主动请示方式: 首先服务器方要先启动,并根据请示提供相应服务:(过程如下)1、打开一通信通道并告知本地主机,它愿意在某一个公认地址上接收客户请求。2、等待客户请求到达该端口。3、接收到重复服务请求,处理该请求并发送应答信号。4、返回第二步,等待另一客户请求5、关闭服务器。客户方:1、打开一通信通道,并连接到服务器所在主机的特定端口。2、向服务器发送服务请求报文,等待并接收应答;继续提出请求3、请求结束后关闭通信通道并终止。二、基本套接字为了更好说明套接字编程原理,给出几个基本的套接字,在以后的篇幅中会给出更详细的使用说明。1、创建套接字socket()功能:使用前创建一个新的套接字格式:SOCKET PASCAL FAR socket(int af,int type,int procotol);参数:af: 通信发生的区域type: 要建立的套接字类型procotol: 使用的特定协议2、指定本地地址bind()功能:将套接字地址与所创建的套接字号联系起来。格式:int PASCAL FAR bind(SOCKET s,const struct sockaddr FAR * name,int namelen);参数:s: 是由socket()调用返回的并且未作连接的套接字描述符(套接字号)。其它:没有错误,bind()返回0,否则SOCKET_ERROR地址结构说明: struct sockaddr_inshort sin_family;/AF_INETu_short sin_port;/16位端口号,网络字节顺序struct in_addr sin_addr;/32位IP地址,网络字节顺序char sin_zero8;/保留3、建立套接字连接connect()和accept()功能:共同完成连接工作格式:int PASCAL FAR connect(SOCKET s,const struct sockaddr FAR * name,int namelen);SOCKET PASCAL FAR accept(SOCKET s,struct sockaddr FAR * name,int FAR * addrlen);参数:同上4、监听连接listen()功能:用于面向连接服务器,表明它愿意接收连接。格式:int PASCAL FAR listen(SOCKET s, int backlog);5、数据传输send()与recv()功能:数据的发送与接收格式:int PASCAL FAR send(SOCKET s,const char FAR * buf,int len,int flags);int PASCAL FAR recv(SOCKET s,const char FAR * buf,int len,int flags);参数:buf:指向存有传输数据的缓冲区的指针。 6、多路复用select()功能:用来检测一个或多个套接字状态。格式:int PASCAL FAR select(int nfds,fd_set FAR * readfds,fd_set FAR * writefds, fd_set FAR * exceptfds,const struct timeval FAR * timeout);参数:readfds:指向要做读检测的指针writefds:指向要做写检测的指针exceptfds:指向要检测是否出错的指针timeout:最大等待时间7、关闭套接字closesocket()功能:关闭套接字s格式:BOOL PASCAL
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年公路工程监理实务(成本控制与审计)考核试卷
- 9.2025年新能源行业海上风电施工自升式平台起重能力优化技术创新能力考核试卷
- 2025年零售科技行业智能零售店与无人购物体验研究报告及未来发展趋势预测
- 2025合肥东部新中心建设投资有限公司第二批招聘4人笔试考试参考题库及答案解析
- 2026年福建农信校园招聘131人岗位表考试笔试模拟试题及答案解析
- 2025四川宜宾市航务事务中心第2次招聘编外人员8人考试笔试备考题库及答案解析
- 2025下半年四川内江市人力资源和社会保障局内江市卫生健康委员会医疗卫生事业单位招才引智考核招聘103人(泸州场)考试笔试模拟试题及答案解析
- 2025四川乐山市马边星农现代农业开发有限公司招聘企业员工1人考试笔试参考题库附答案解析
- 2026黑旋风锯业股份有限公司高校毕业生招聘1人笔试考试备考题库及答案解析
- 无机盐制造的年终总结报告-生物医疗化学敏感性
- 云南罚没财物管理办法
- 食堂人员编制及岗位职责
- 海南省2025年中考化学真题试题(含答案)
- DB37∕T 4683-2023 非煤矿山企业安全管理信息化建设基本规范
- 体育教练培训课件
- JJF 2225-2025 高绝缘电阻测量仪(高阻计)校准规范
- 高血压疾病讲课件
- 财政直接支付管理制度
- 2025至2030年中国电力智能巡检机器人行业市场现状调查及发展前景研判报告
- 2024年广东省清远市事业单位招聘考试《公共基础知识》真题库及答案
- D级压力容器质量管理体系内审资料符合TSG07-2019附录M
评论
0/150
提交评论