1 / 72
文档名称:

10网络编程.doc

格式:doc   大小:2,155KB   页数:72页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

10网络编程.doc

上传人:1314042**** 2021/2/24 文件大小:2.10 MB

下载得到文件列表

10网络编程.doc

相关文档

文档介绍

文档介绍:作为本书的读者来说,大概不可能不知道网络吧。网络,尤其是Internet,发展速度超过了任何人任何大胆的预料。一个软件实现网络上的相关应用显然是必不可少的,因此,我们绝对有必要学****一下网络编程。
在网络环境下如果需要实现一个应用程序与另一个应用程序的信息交换,可以有多种方式。在Windows 操作系统还没有出现之前,Internet 实际上就已经出现了,最早的站点就是一些 UNIX 机,当时一组称为Berkeley 的套接字成为Internet 上各UNIX站点实现TCP/IP通讯的标准。Windows Socket(Winsock) API就是基于BSD版本套接字发展而来的,我们可以利用这些特定接口开发网络应用程序。本章就首先介绍各种套接字,然后介绍有关MFC Winsock类及其编程内容,再介绍消息API及其应用,最后给出一个Internet应用实例。
本章包括以下内容:
套接字
MFC Winsock类
WinSock编程实例
消息API(MAPI)
实现Internet应用
10.1 套接字
Winsock 规范定义了一个动态连接库的接口,通常此DLL名为WINSOCKDLL或 WSOCK32DLL。开发商可以自行编写代码实现接口,在应用程序中可以调用这些接口函数。接口函数的使用与不同的开发商没有关系,尽管不同开发商实现过程有所不同 ,但函数调用时,函数名、参数设置以及返回值类型都由接口确定,是完全一致的。例如在Windows 95和Windows NT中套接字动态连接库文件就有所不同,但一个32位的Winsock 应用程序可以调用相应的动态连接库DLL中的Winsock函数,从而既可以在Windows 95环境下执行,又可以不加任何修改地在Windows NT环境中执行。
Winsock在开发用于信息交换的应用程序时是非常有用的,我们可以利用套接字传递数据包,以达到通信的目的。套接字本身可以理解为通信端点,它所提供的数据收发机制可以方便地用于网络通信。
套接字可以有两种方式,即数据报套接字和流式套接字。
数据报套接字(Datagram Sockets)
这种套接字所提供的通信方式并不可靠,即不能保证所传送的数据包一定合法,也不能保证数据包接收顺序与发送顺序完全一致,甚至数据包是否能够安全传送到目的端都不能保证。
由于系统提供的数据报套接字功能有限,因此我们必须在编程时充分考虑各种可能出现的异常情况,例如,如何控制数据包发送和接收顺序,如何保证数据包不被重复发送,另外如何数据包没有发送应该如何处理,这些工作就需要我们自已完成了。
更重要的是,在编写复杂的网络应用程序时,还必须考虑数据报的可靠性,因为如果只依赖于系统提供的支持,数据报套接字的可靠性是极差的,如果一个大型的网络通信应用程序经常出现崩溃,那么带来的损失将是不可估量的。
数据报套接字的主要用途是以广播方式发送数据,如记录型数据等。
流式套接字(Stream Sockets)
流式套接字的含义是数据发送后,需要按顺序而且不重复地由目的端接收。这是一种可靠的数据传输方式,对于单个的数据报,以及完整的数据包,流式套接字都可以提供这种面向连接的数据传输。
流式套接字的使用要广泛得多,特别是对于大量的数据发送,或要求数据接收顺序时,都需要使用流式套接字。
在使用套接字进行网络编程时,有一个非常重要的概念即套接字的端口。在Internet 上每一个站点都有相应的数字化地址,我们称之为IP地址。形式一般为
NUM1 NUM2 NUM3 NUM4
即用小数点分隔的4个数字,如198531453。如果通过网络,有一个请求发到198531453对应的主机上,此请求将附带一个端口号信息,端口号是一个整数值,它标识了所请求的应用程序。必须注意,有一些端口是系统为标准应用预留的,如端口80主要用于Web 服务器监听客户应用程序如Netscape Navigator 浏览器发出的Web 文档请求。
有一些应用程序在设计信息发送时并不是基于连接的,但这种发送方式是没有保障的,即我们不能确定数据确实发送出去了,也不能确定数据接收方的身份。不过对于一些广播性质的信息发送,这种方式是比较适合的。如典型的时间服务,时间服务器将当前时间发送给其所在范围内的每一台机器,至于对方是否接收,或对方接收到时间信息后作何响应,时间服务器都不关心。
我们在应用程序中所使用的套接字一般是基于连接的,即两个应用程序各自生成一个套接字,这样在两个对应的套接字之间就建立了一个连接,两个应用程序就是连接的两端。如果已经建立了连接,意味着两端的应用程序可以在此通路上发送和接收信息了。需要注意的是,在两个端点间建立连接会带来一定的时间延迟,一般来讲,延迟

最近更新

2024年秋季福建省长汀县事业单位招聘46人历年.. 279页

2024年蚌埠淮上区招聘城市管理协管员60人历年.. 280页

2024年贵州安顺关岭县引进紧缺人才22人历年高.. 270页

2024年贵州毕节市纳雍县高校毕业生就业见习人.. 90页

2024年贵州盘县事业单位招聘255人历年高频难、.. 89页

2024年贵州省安顺市黄果树旅游区事业单位招聘.. 278页

2024年贵州省毕节市纳雍县事业单位招聘59人历.. 275页

北京市昌平区集体合同范本 9页

2024年长春师范高等专科学校单招职业适应性测.. 53页

内蒙古乌兰察布盟事业单位招聘考试(职业能力.. 149页

创新医院重点学科的临床路径管理实施方案探讨.. 28页

内蒙古通辽市选调生考试(行政职业能力测验).. 149页

国家保安员考试题库一套 32页

安徽省蚌埠市选调生考试(行政职业能力测验).. 149页

山西省临汾市选调生考试(行政职业能力测验).. 149页

山西省晋中市事业单位招聘考试(职业能力倾向.. 149页

江苏省宿迁市选调生考试(行政职业能力测验).. 147页

河北省唐山市事业单位招聘考试(职业能力倾向.. 147页

河北省沧州市选调生考试(行政职业能力测验).. 146页

研讨发言:以高质量发展推进中国式现代化 3页

关于以高质量发展推进中国式现代化专题研讨发.. 5页

高一年级学业水平测试模拟试卷 10页

小学支部主题党日会议记录 4页

老旧小区改造工程预算 12页

8.1.4 市政竣·通-4 单位(子单位)工程实体质.. 1页

物联网技术的发展现状及前景 5页

2021年新版公共场所集中空调通风系统卫生规范.. 34页

工程经济学案例分析 15页

语文人教版二年级上册《纸船和风筝》微课ppt 17页