- 1、本文档共316页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
Windows网络编程基础;;网络编程应用-即时通信;;网络编程应用-文件传输;;网络编程应用-攻击;本课程所涉及的知识范围 ;参考书;教学安排 ;第一讲 导论;;网络程序设计方法纵览;;TCP/IP;3.1 TCP/IP分层结构;3.1 TCP/IP分层结构;3.2 地址;3.3 协议;问题:协议在数据传输中如何体现?;3.4 数据包的封装和分用;多路分解
;问题1:编写不同层次上的应用程序时,协议封装的对象
各是什么?;;什么是分布式的网络应用程序?;分布式的网络应用程序分类 ;;1.Motivation;1.Motivation;会聚点问题的解决方案
1)要求下层通信协议在请求报文到达后自动创建运行程序
——底层通讯程序太复杂!
2)要求在任何一对进行通信的应用进程中,有一方必须在启动执行后(无限期)等待对方与其联系。
——客户-服务器模型的解决方案;2.客户和服务器;
服务器端首先启动,并根据请求提供相应的服务。
① 向操作系统发送请求,请求其打开某个周知公认的端口,以便在该端口上提供服务;
② 等待客户请求达到该端口;
③ 接收服务请求,处理该请求并发送应答;
④ 重复②,等待其它用户请求;
⑤ 关闭服务器端口,释放资源; ;客户方主动请求服务器的服务:
① 向操作系统发送请求,请求其打开一个端口,利用该端口请求服务器服务;
② 向服务器发服务请求报文,等待并接收应答;
③ 重复②;
④ 请求结束后关闭端口,释放资源。
说明:
① 客户端与服务器的作用是非对称的,编码不同;
② 服务器进程一般是先于客户请求而启动的。只要系统运行,该服务进程一直存在,直到正常终止或强迫终止。 ;Whois服务器访问过程举例;Whois服务器访问过程举例;C/S结构;客户端与服务器间的通讯情形
;客户端;
C/S结构通信细节
客户与服务器之间的通信是通过分层的协议族实现的,信息流在发送端向下通过协议栈交付给具体的传输媒介,并在接收端向上通过协议栈提交给应用程序。
;4.客户-服务器模型的扩展;5.客户端软件;5.客户端软件;1)服务器的特权和复杂性
特权:访问受操作系统保护的对象(如文件、数据库、设备或协议端口)
考虑:不能将特权传递给使用服务的客户
举例:文件服务器
;代码复杂性——安全问题:
鉴别——验证客户身份
授权——判断某个客户是否被允许访问服务器所提供的服务
数据安全——确保数据不被无意泄漏或损坏
保密——防止未经授权访问信息
保护——确保网络应用程序不能滥用系统资源
代码的复杂性——效率问题
并发处理能力;2)无连接的和面向连接的服务器;面向连接的服务器
优点:易于编程
缺点:资源消耗问题
无连接的服务器
优点:无资源消耗问题
缺点:编程复杂
;选择思路
考虑
客户和服务器间通信的频度
客户和服务器间交换的数据量
UDP
对广播或多播应用程序必须使用UDP;
在可靠的本地环境中运行,不需要额外的可靠性处理;
应用协议指明必须使用UDP;;3)无状态和有状态服务器;举例:无状态文件服务器;举例:有状态文件服务器;使用状态服务器的两个要点;状态信息的维护是一个复杂的问题;UDP(用户数据报协议);TCP(传输控制协议);(1)网络中的并发;(2)系统内的并发;(3)服务器中的并发;基本概念
并发(concurrency):真正的或表面呈现的同时计算
分时(time sharing):使单个处理器在多个计算任务之间足够快地切换,从表面看这些计算是同时进行的。
多处理(multiprocessing):让多个处理器同时执行多个任务。;基本概念(续)
时间分片(timeslicing):描述多个并发线程共享可用CPU的系统时间的系统。
目的:试图在所有线程间平均分配可用的处理器资源。
方法:
进程间平均
优先级;并发服务器的设计代价;举例:并发和异步I/O
;串行设计;;1. B/S模型;2. P2P模型;2.1 一种思想;2.2 一类应用;2.3 P2P评价;第2讲 协议软件接口;;1.TCP/IP协议软件接口的特点;特点:不精确指明
TCP/IP的设计者尽量避免使用任何一家厂商的内部数据表示。
TCP/IP标准尽量避免让接口使用那些只在某一家厂商的操作系统中可用的特征
目的:使得协议的兼容性强,可以运行在多厂商的环境之中。
目前的一些协议软件接口
Berkeley UNIX:套接字接口(或socket)
微软:Windows Socket
AT&T UNIX(System V):TLI(Transport Layer Interface);2.如何访问TCP/IP协议?;问题的引入;Linux中提供的基本I/O功能
;
文档评论(0)