- 1、本文档共53页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
网络编程技术 概述 C/S模型是TCP/IP网络环境下位于不同主机的进程间通信的基本软件编程模型,掌握基于C/S结构的Socket程序设计是学习Internet应用系统设计与实现技术的重要基础。 提纲 编程训练目的 编程训练要求 相关知识介绍 程序设计分析 扩展与提高 编程训练目的 掌握Windows Socket编程的相关概念、基本套接字API调用和典型网络编程调用时序; 掌握基于C/S结构的Windows Socket TCP/UDP程序设计方法。 掌握Server端和Client端程序结构的设计与编程方法。 熟悉Winsock的2种I/O模式和4种编程模型,了解使用WSAAsynSelect模型进行异步I/O通信的基本方法。 提纲 编程训练目的 编程训练要求 相关知识介绍 程序设计分析 扩展与提高 编程训练要求 编写程序,完成一个简单的客户/服务器程序设计: 使用控制台界面,命令行格式为: Server.exe TCP server port Client.exe TCP Server IP TCP Server Port 首先Server创建2个socket,分别为TCP server socket(由命令行参数指定)和UDP server socket(端口号自定义)。Server在这两个端口上侦听连接,接受来自客户端的服务请求。 程序运行的参考界面(client) 程序运行的参考界面(server) 提纲 编程训练目的 编程训练要求 相关知识介绍 程序设计分析 扩展与提高 C/S结构网络模型 客户(client)和服务器(server)分别指两个应用程序 客户:向服务器发出服务请求 服务器:对客户的请求做出响应 服务器程序可并发处理多个客户请求 服务器对并发请求响应的两种类型 重复服务器方案 并发服务器方案 重复服务器方案 客户请求到达后首先进入等待队列,服务器按照先进先出的原则顺序做出响应 优点:服务器对系统资源要求不高。 缺点:如果请求的任务需要很长时间完成,其他客户需要耐心等待。 适用环境:一般用于处理可在预期时间内处理完的请求,针对于面向无连接的客户-服务器模型。 并发服务器方案 创建新的子进程(线程)为客户的请求服务。 主服务器:主进程(守候进程) 从服务器:子进程(线程) 优点:实时、灵活,每个客户都可以得到及时响应。 缺点:系统开销大、软硬件资源要求高。 适用环境:一般用于处理不可在预期时间内处理完的请求,主要针对于面向连接的客户-服务器模型。 网络编程界面 TCP/IP协议通常在操作系统的内核中实现。 编程界面:由操作系统提供的功能调用,可以使应用程序方便地使用内核的功能。 window Sockets是Microsoft Windows的网络程序编程接口,由Berkeley Sockets扩展而来。 Windows Sockets 2.0 头文件:Winsock2.h 库文件:Ws2_32.lib 套接字Socket 支持TCP/IP协议的操作系统为网络程序开发提供的典型网络编程界面。 套接字(Socket)是应用层与TCP/IP协议族通信的中间软件抽象层。它是一组接口,把复杂的TCP/IP协议族隐藏在Socket背后,通过Socket函数调用去传输数据以符合指定的协议。 Windows、UNIX、Linux都支持socket。 TCP/IP套接字的三种类型 流式套接字(stream sockets): 使用TCP协议,支持主机之间面向连接的、顺序的、可靠的、全双工字节流传输。 数据报套接字(datagram sockets): 使用UDP协议,支持主机之间面向非连接、不可靠的信息传输。 原始套接字(raw sockets): 允许对较低层协议(如网络层的IP、ICMP)直接进行访问,用以实现自己定制的协议或对数据报作较底层的控制。 端口与地址 在TCP/IP互联网中,服务器利用TCP或UDP的端口号作为特定服务的标识。 服务器:启动时在本地主机注册自己使用的TCP或UDP端口号 客户:通过与服务器使用的TCP端口建立连接(或直接向服务器使用的UDP端口发送信息)进行服务请求。 TCP和UDP均使用16位端口号标识用户进程。 主机地址由网络ID和主机ID组成,在TCP/IP协议中用32位整数值表示(即IPv4地址)。 典型的面向连接的流套接字API调用时序 典型的无连接协议套接字API调用时序 提纲 编程训练目的 编程训练要求 相关知识介绍 程序设计分析 扩展与提高 Server端总体设计分析 Server端TCP侦听线程(主线程)流程 定义常量 1、创建TCP套接字 2、获取计算机名 3、获取主机地址 4、将
您可能关注的文档
- 第8章期权与权证剖析.ppt
- 第8章企业重组与清算会计剖析.ppt
- 第6讲组织剖析.ppt
- 第8章清单规范1剖析.ppt
- 第6节餐饮礼仪剖析.ppt
- 第8章清洁生产审核剖析.ppt
- 第6节健康生活剖析.ppt
- 第8章求职沟通剖析.ppt
- 第6节客房部服务与管理发展剖析.ppt
- 第8章认股权证和可转换债券剖析.ppt
- AN024_星历原始观测数据协议.pdf
- APM32F051x6x8数据操作说明 V1.6中文.pdf
- AN1086_APM32F4xx_ISP应用笔记中文.pdf
- APM32F051R8 EVAL Board使用调试操作说明V1.0中文.pdf
- APM32F4xxx用户操作说明 V2.2中文.pdf
- APM32F411xCxE 数据操作说明 V1.3中文.pdf
- AN019_NMEA0183协议说明_北云科技.pdf
- AGP21系列电容式薄膜真空规说明书 A1-20240628.pdf
- AHT40温湿度传感器说明书中文版 A1-202406.pdf
- AN1096_APM32F035_HvMOTOR EVAL无感矢量控制方案_V1.1中文.pdf
文档评论(0)