网络应用的体系结构
客户机/服务器结构(Client-Server, C/S)点对点结构(Peer-To-Peer, P2P)混合结构(Hybrid) 进程之间通信 利用socket发送/接收消息实现 寻址进程:不同主机上的进程进行通信,那么每个进程都必须拥有标识符。 通过IP地址寻找主机(主机有了IP地址后,并不能定位到进程,因为同一个主机上可能同时有多个进程需要通信),为主机上每个需要通信的进程分配一个端口号(例如 HTTP SERVER:80). 进程的标识符:IP地址+端口号WEB应用 World Wide Web
网页
网页互相连接 网页(Web Page)包含多个对象(objects)
对象: HTML文件、JPEG图片、视频文件、动态脚本
基本HTML文件:包含对其他对象引用的链接 对象的寻址:
URL(Uniform Resource Locator):统一资源定位器
Scheme://host:port/path 例如 www.someschool.edu/someDept/pic.gif 其中 www.someschool.edu 是hostname,/someDept/pic.gif是path name 万维网遵循的是HTTP协议(HyperText Transfer Protocol) 使用TCP传输服务
服务器在80端口等待客户的请求
浏览器发起到服务器的TCP连接(创建套接字Socket)
服务器接受来自浏览器的TCP连接
浏览器与Web服务器交换HTTP消息
关闭TCP连接 注意HTTP的无状态即服务器不维护任何有关客户端过去所发送的请求信息 HTTP连接的两种类型 1 非持续性连接(Nonpersistent HTTP) 每个TCP连接最多允许传输一个对象,HTTP1.0版本使用非持久性连接 2 持久性连接(Persistent HTTP) 每个TCP连接允许传输多个对象,HTTP1.1版本默认使用持久性连接
响应时间分析 RTT(Round Trip Time): 从客户端发送一个很小的数据包到服务器并返回所经历的时间 响应时间(Response time): 发起、建立TCP连接:1个RTT,发送HTTP请求消息到HTTP响应的前几个字节到达:1个RTT,响应消息中所含的文件/对象传输时间 Total = 2RTT + 文件发送时间 Cookie技术 某些网站为了辨别用户身份,进行session跟踪而储存在用户本地终端上的数据(通常经过加密) Cookie的组件
HTTP相应消息的cookie头部行HTTP请求消息的cookie头部行保存在客户端主机上的cookie文件,有浏览器管理Web服务器端的后台数据库Cookie的原理 Email应用