type
status
date
slug
summary
tags
category
icon
password
网络应用的体系结构Application Layer
客户-服务器模式(CS模式)
服务器:一直运行,固定的IP地址和周知的端口号,响应资源
客户端:主动与服务器通信,与互联网有间歇性的连接,可能是动态IP地址,不直接与其他客户端通信,请求资源
缺点:可扩展性差,客户端太多了会难以响应;可靠性差:完全依赖服务器
设有数据中心:托管大量主机,常被用于创建强大的虚拟服务器搜索引擎
P2P体系结构(peer to peer)
peer:对等体
服务器:几乎没有一直运行的服务器
任意端系统之间都可以进行通信,每一个节点既是客户端又是服务器
参与的主机间歇性连接且可以改变IP地址
缺点:难以管理
自拓展性:每个新peer节点都为系统增加服务能力,当然也带来新的服务请求
迅雷
Napster
文件搜索:全局
文件传输:P2P
进程通信
进程:在主机上运行的应用程序,不同主机通过交换报文(message)来通信(使用OS提供的通信服务,按照应用协议交换报文)
客户端进程:发起通信的进程
服务端进程:等待连接的进程
分布式进程通信需要解决的问题
- 问题1
进程标识和寻址的问题(服务用户)
标识:SAP
主机:唯一的32位IP地址(在哪个终端设备上?)
传输层协议:TCP或者UDP(在这个终端设备上的哪里?)
端口号Port
一个进程用IP+port标识端节点
本质上,一对主机进程之间的通信由两个端节点构成
- 问题2
- 要传输的报文(本层的SDU)
- 谁传的?对方的应用进程的标识:IP+TCP/UDP端口号
- 传给谁?对方的应用进程的标识:IP+TCP/UDP端口号
- TCP socket
- TCP服务:两个进程通信之前需要建立连接,两个进程通信会持续一段时间,通信关系稳定
- 可以用一个整数表示两个应用实体之间的通信关系,在本地标识
- 穿过层间接口的信息量最小、易于操作系统管理
- TCP socket:一个本地标识四元组,包含源IP、源端口、目标IP、目标端口
- UDP socket
- UDP服务:两个进程通信之前不需要先建立连接,每个报文都是独立传输的,前后报文可能给不同的分布式进程
- 只能用一个整数表示本应用实体
- 穿过层间接口的信息量最小、易于操作系统管理
- UDP socket:本IP、本端口
- 传输报文时必须提供对方IP和端口号
传输层-应用层是如何提供服务的(服务)
位置:层间界面的SAP
形式:应用层间接口API
层间接口必须携带的信息:
传输层实体:根据这些信息进行报文段的封装,包括段头和数据部分
减少层间传输的信息量:连续传输没有必要每次都传输IP和端口号
用一个代号标识通信的双方或单方
- 问题3
- 交换的报文类型:请求和应答报文
- 各种报文类型的语法
- 字段的语义:字段取值的含义
- 进程何时、如何发送报文及对报文响应
如何使用传输层提供的服务,实现应用进程之间的报文交换(用户使用服务)
定义应用层协议:报文格式、解释、时序等
编制程序,使用OS提供的API,调用网络基础设施提供通信服务传报文,实现应用时序等
应用层协议:
应用需要传输层提供什么样的服务
数据丢失、延迟、吞吐、安全性
- Author:orangec
- URL:orange’s blog | welcome to my blog (clovy.top)/f6f93ed9714b4a5fa5a0cb47897e1f89
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!
Relate Posts