没有合适的资源?快使用搜索试试~ 我知道了~
2.1网络应用的体系结构 2.2网络应用的基本原理 2.4Email应用 2.1网络应用的体系结构 2.2网络应用的基本原理
资源推荐
资源详情
资源评论
哈工大计算机网络Week1-网络应用
哈工大计算机网络Week1-网络应用
2.1网络应用的体系结构
特点
应采取什么结构
C/S结构 客户机/服务器
P2P
CS vs P2P
混合结构
思考题目
2.2网络应用的基本原理
网络应用进程通信
进程间通信
套接字: Socket
寻址
应用层协议
应用层协议的内容
网络应用的需求与传输层服务
网络应用对传输服务的需求
Internet提供的传输服务
课后练习
2.3Web应用
web应用概述
Web与HTTP
HTTP协议概述
如何理解无状态?
HTTP连接
HTTP连接的两种类型
非持久性连接
流程
时延
非持久性连接的问题
持久性HTTP
HTTP消息格式
HTTP请求消息
上传附加输入信息的方法
方法的类型
HTTP响应消息
HTTP响应状态代码
Cookie技术
为什么需要Cookie?
Cookie技术
Cookie的原理
Cookie的作用
思考题
Web缓存/代理服务器技术
功能
为什么要发明这种技术?
Web缓存/代理服务器
Web缓存示例
web缓存是如何降低延时的?
条件性GET方法
课后作业
2.4Email应用
Email应用
Email应用的构成
SMTP协议: RFC 2821
与HTTP对比
动手尝试SMTP交互
思考题
Email消息格式与POP3协议
Email消息格式
Email消息格式:多媒体扩展
邮件访问协议(不同与STMP协议)
POP3协议
IMAP协议
Email流程示例
课后练习
2.5DNS服务
DNS概述
DNS:Domain Name System
分布式层次式数据库
DNS根域名服务器
TLD和权威域名解析服务器
本地域名解析服务器
DNS查询示例
DNS记录缓存和更新
思考题
DNS记录和消息格式
DNS记录
DNS协议与消息
如何注册域名?
TCP?UDP??
思考题
2.1网络应用的体系结构
特点
由不同的部分构成,由网络连接组合应用场景
应采取什么结构
C/S结构 客户机/服务器
P2P
混合结构
C/S结构 客户机/服务器
服务器
持续提供服务
固定的访问地址/域
利用大量服务器实现可扩展性
客户机
与服务器通信,使用服务器提供的服务
间歇性接入网络
可能使用动态IP地址
客户机之间无通信能力
如何定义服务器和客户机?会话的发起方是客户,会话开始前的等待方是服务器。
P2P
点对点服务,去中心化体系结构。中心服务器的依赖很低,但是仍然由中心服务器。纯P2P中,资源索引是维护在
每个节点上的,查找信息时需要在网络中进行广播,查询被一层层节点扩散,直到查找到有效信息。
描述
没有永远在线的服务器
任意端系统/节点之间可以直接通讯
节点间歇性接入网络
节点可能改变IP地址
自拓展性
新加入的对等方又为整个网络增强服务能力。
挑战
ISP友好:目前的ISP是非对称的,不适合P2P架构
安全性:高度分布和开发带来安全问题
激励:鼓励用户来自愿为应用提供带宽、存储、计算
CS vs P2P
从服务及时、传输质量稳定、资源查找速度、管理成本、网络安全、客户端节点间交流能力、网络闲散资源利用率
CS>P2P
CS更安全,隐私不容易泄露,因为客户机间不可见,客户机只能访问由服务器暴露的经其他客户机允许
的其他客户机的信息,服务器能轻松的设置安全机制。P2P则不能,个人计算机安全等级较服务器来说
低很多。可能带来垃圾信息或者匿名失效。
CS服务随时支持,P2P则需要提供服务的节点在线才行。
CS服务稳定,因为服务器通常是性能强大的设备群。而P2P受制于服务器节点,稳定性不可预见。
CS中心式结构便于集中管理资源以及客户端,P2P结构松散不便于管理资源。
CS文件查找速度快,P2P需要将查找命令在P2P网络中层层传播,比较慢
P2P>CS
P2P能充分利用节点资源,提高限制资源利用率。CS无法充分利用客户机的能力。使得整个网络负担过
多集中在服务器,客户机性能冗余。
P2P管理成本低,虽然难以有效管理但是去中心化的结构使得管理成本低。CS则要求中心服务器的管理
软硬件要求高。
结构自由。CS结构限制较大。
P2P网络分布广泛,能够大范围提供服务。C-S距离太远延迟高,每个服务器辐射的范围有限,需要采用
分布式多服务器来提供服务。
混合结构
能否将两种结构混合在一起使用? 混合能够利用两者的优点同时规避两者的缺点吗?
目前的混合结构主要有2种:
中心化拓扑P2P(例如Napster)
文件传输使用P2P结构
文件的搜索采用C/S结构——集中式
每个节点向中央服务器登记自己的内容
每个节点向中央服务器提交查询请求,查找感兴趣的内容
半分布式拓扑结构P2P
节点分成索引节点和普通节点,索引节点负责为临近普通节点提供服务。
各个索引节点之间采用去中心化结构
全分布式结构化拓扑的P2P网络主要是采用分布式散列表(Distributed Hash Table, 简写成DHT)技术来组织
网络中的结点。DHT是一个由广域范围大量结点共同维护的巨大散列表。散列表被分割成不连续的块,每个
结点被分配给一个属于自己的散列块,并成为这个散列块的管理者。通过加密散列函数,一个对象的名字或
关键词被映射为128位或160位的散列值。
即对目录进行了分割,使得目录被结构化组织
思考题目
为每种体系结构找出5种以上的网络应用:
从多个方面/角度对比三种体系结构的优缺点
2.2网络应用的基本原理
网络应用进程通信
进程间通信
进程
主机上运行的程序
客户机进程: 发起通信的进程
服务器进程: 等待通信请求的进程
同一主机上运行的进程之间如何通信?
进程间通信机制
操作系统提供
不同主机上运行的进程间如何通信?
消息交换
采用P2P架构的应用是否存在客户机进程/服务器进程之分?
也是有的,只是角色转换非常自由。
套接字: Socket
Socket(套接字、插座)并不是一种协议,而是一种抽象API,将传输层TCP/UDP协议封装,作为一种门面模
式提供应用层抽象的连接服务。Socket实质上提供了进程通信的端点。
Socket=(所用协议,本地IP地址,本地进程端口号),唯一,由本地操作系统分配
Socket面向C/S设计。
C/S连接建立过程
服务器监听:是服务器端套接字并不定位具体的客户端套接字,而是处于等待连接的状态,实时监控网
络状态。
客户端请求:是指由客户端的套接字提出连接请求,要连接的目标是服务器端的套接字。为此,客户端
的套接字必须首先描述它要连接的服务器的套接字,指出服务器端套接字的地址和端口号,然后就向服
务器端套接字提出连接请求。
连接确认:是指当服务器端套接字监听到或者说接收到客户端套接字的连接请求,它就响应客户端套接
字的请求,建立一个新的线程,把服务器端套接字的描述发给客户端,一旦客户端确认了此描述,连接
就建立好了。而服务器端套接字继续处于监听状态,继续接收其他客户端套接字的连接请求。
寻址
不同主机上的进程间通信,那么每个进程必须拥有标识符
如何寻址主机?——IP地址
Q: 主机有了IP地址后,是否足以定位进程?
A: 否。IP地址只能定位主机,同一主机上可能同时有多个进程需要通信。
端口号/Port number
为主机上每个需要通信的进程分配一个端口号
HTTP Server: 80
Mail Server:25
进程的标识符
IP地址+端口号
应用层协议
网络应用需遵循应用层协议,但是不仅仅有应用层协议
公开协议(由RFC定义)
DNS
FTP
SMTP
HTTP
Telnet(远程登陆服务)
剩余24页未读,继续阅读
资源评论
艾闻
- 粉丝: 31
- 资源: 302
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功