客户端和服务器-西安交通大学.ppt

  1. 1、本文档共48页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
客户端和服务器-西安交通大学

第2讲: 网络应用与应用层协议 本讲目标: 网络应用层的概念和实现 客户端/服务器范式 服务模型 通过对常用应用层协议的探讨和分析来学习网络协议 教科书参考 第2章 深层次目标 特定协议: HTTP FTP SMTP POP DNS 网络应用与应用层协议简介 应用程序:分布式的进程 运行在网络主机中的 “用户空间” 在应用程序间交换报文 e.g., email, ftp, Web 应用层协议: 应用程序的一个“组成部分” 定义应用程序需交换的报文 和所需采取的动作 使用较低层次所提供的通信服务 (TCP, UDP) 网络应用程序: 一些术语 进程(Process): 主机中运行中的程序. 在某些主机中, 两个进程使用进程间通信 (由 OS管理). 而运行在不同主机上的进程则使用应用层协议进行通信 用户代理(User agent): 软件进程, 是介于用户( above )和网络( below )之间的接口 实现应用级协议 Web: 浏览器 E-mail: OE、Foxmail 流媒体: media player 客户端/服务器模式及定位 典型的网络应用是由两个部分组成: 客户端 和 服务器 因特网应用层进程的基本特征 应用程序接口(API: application programming interface) 定义应用层和传输层间的接口 插口(socket: Internet API) 两个进程间的通信, 将数据送入 socket, 或从socket 读出数据 Q: 某个进程如何“认定”另一个 需要与之通信的进程? IP 地址-运行另一个进程的主机所拥有的 “端口号(PORT #)” – 允许接收主机来确定的一个标识,本地进程将报文发送给它 应用应用与所需要的传输服务 数据丢失(Data loss) 某些应用 (e.g., audio) 可以容忍某种程度上的数据丢失 其他应用 (e.g., 文件传输, telnet) 要求 100% 可靠的数据传输 实时性(Timing) 某些应用(e.g., IP 电话, 交互式游戏) 要求较低的时延 常用应用程序对传输功能的要求 因特网传输协议服务 TCP 服务: 面向连接: 在客户端和服务器进程之间需要建立连接(setup ) 可靠传输 : 在发送和接受进程之间 流量控制: 发送数据的速度决不超过接收的速度 拥塞控制: 当网络超负荷时,束紧发送端口,减缓发送速度 不提供: 实时性, 最小带宽承诺 UDP服务: 在客户端和服务器进程之间实现“不可靠的”数据传输 不提供:连接建立, 可靠性保证,流量控制,拥塞控制,实时性, 最小带宽承诺 Q: 既生喻,何生亮? Why is there a UDP? 因特网应用: 应用vs传输协议 万维网与HTTP协议 HTTP: TCP 传输服务: 客户端启动TCP连接(创建插口) 到服务器, 端口 80 服务器接受来自客户端的 TCP 连接 http 报文(应用层协议报文) 在浏览器 (http client) 和Web服务器(http server)之间进行交换 关闭TCP 连接 HTTP是 “无状态(stateless)”的 服务器不保留任何访问过的请求信息 Web: HTTP协议 超文本传输协议(HTTP: hypertext transfer protocol) 万维网应用协议 客户端/服务器模式 客户端: 浏览器请求、接收、展示 Web对象( objects) 服务器: Web 服务器发送对象对请求进行响应 HTTP1.0: RFC 1945 HTTP1.1: RFC 2068 HTTP举例 假设用户键入了一个 URL www.someS/someDepartment/home.index 1a. http 客户端启动 TCP 连接到www.someS上的http 服务器 (进程). Port 80 是 http 服务器的默认端口. HTTP举例 (续.) 5. http 客户端接收到了包含html文件的响应报文。 分析 html 文件, 发现 10 个引用的 jpeg 对象 非持续和持续连接 (非持续连接)Non-persistent HTTP/1.0: 服务器分析请求、响应、关闭 TCP 连接 取对象需要2 RTTs TCP 连接 对象请求/传送 每次传送都要受到TCP连接初始化时的慢启动影响 许多浏览器同时打开多个并行的连接来改善性能 (持续连接)Persistent HTTP/1.1的默认设置 在同一TCP 连接上: 服务器分析请求、响应请求,分析新的请求、.. 客户端一旦下载到了基本的html文件( base HTML )马上发送对所有引用对象的请求. 较少的 RTTs, 较少的慢启动. HTTP报文格式:

文档评论(0)

wangyueyue + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档