计算机网络学习散记
计算机网络——自洽(无主从关系),互联(通信链路)的计算机集合。
计算机网络=硬件+网络协议(数据交换的规则)。
网络协议三要素——语法,语义,时序。
协议标准,RFC(Request for comments),IEFE(Internet Engineer Task Force)
Internet,全球最大的互联网=ISP(互联网网络提供商)网络之网络。
分组交换——经由路由器和交换机转发数据包。
交换方式,存储-转发,数据暂存在转发节点。
报文转发的延时=节点传输延时*节点传输个数
(缓存空间=一个报文)
分组转发的延时=节点传输延时*节点传输个数+节点传输延时*分组个数(并行交换)
(缓存空间=一个分组)
分组会增加数据冗余(分组头);分组交换允许多用户复用电路(适合突发传输);产生拥塞(分组延迟和丢失)
分组丢包
分组时延=处理延迟+排队延迟+传输延迟+传播延迟
时延带宽积的单位是bits,时延小,带宽要大。
吞吐量=时延带宽积/秒
计算机网络结构几乎全是分层结构,从功能上描述计算机网络结构。协议是水平的,服务是垂直的。相邻层实体通过接口交互。
OSI参考模型,加头(协议数据单元PDU,地址,差错检测信息,协议控制)。
网络层,从源主机到目的主机的,可以跨越多个链路的数据分组的传输。路由器。Packet
数据链路层,节点到节点之间的组帧传输。Framing
物理层,单一比特级的传输服务。Bit
传输层端到端的进程间完整报文传输。交换机。SAP寻址(寻找进程,端口号)
TCP/IP参考模型(实用),应用层(HTTP,DNS),运输层(TCP/UDP),网际层(IP),网络接口层。
五层参考模型,应用层,传输层,网络层,数据链路层,物理层。
网络应用,不仅仅基于自己的计算机。
网络结构,C/S,P2P,混合结构。
C/S,具有永远在线的服务器农场。服务器可扩展,具有永久可访问域名/地址。
P2P,没有永远在线的服务器,任意节点之间可以直接通讯,节点可能改变ip,间歇性接入网络。特点,高度可扩展,但是管理复杂。
混合结构的例子,Naspster,搜索集中式,传输P2P。
进程,主机上运行的程序,进程间通信机制由操作系统提供。
P2P中也存在服务器进程/客户机进程。
进程标识符:IP地址+端口号。
HTTP连接两种类型,非持久性连接,每个TCP连接最多允许传输一个对象。持久性连接时,每个TCP连接允许传输多个对象。
RTT=从客户端发送小数据包到服务器并返回所经历的时间。
HTTP 1.0响应时间分析与建模
发起/建立TCP连接:1个RTT。发送HTTP请求到HTTP响应消息的前几个字节到达,1个RTT。响应消息中对象的传输时间。
Total = 2RTT+文件发送时间
HTTP 1.1响应时间分析与建模
同时建立多个TCP连接,对服务器端造成很大资源。不如维持长久TCP连接。
无流水TCP连接,客户端收到一个响应后才发送新的http请求,每个被引用对象小号一个rtt。
流水TCP连接,客户端遇到一个引用对象时,无论是否收到响应后,都发送新的http请求。理想状态下消耗一个rtt。
http响应消息格式,200 OK.查询RFC。
Cookie,HTTP是无状态的。
HTTP请求消息的cookie头部行
HTTP响应消息的cookie头部行
保存在客户端主机上的cookie文件(浏览器管理)
Web服务端的后台数据库
一个Cookile file保存多个键值对信息,代表与多个网站的交互记录。服务器端根据cookie的键值对信息从数据库读取信息。
Web缓存/代理服务器技术,在不访问服务器的情况下满足http请求。以缩短响应时间,减少机构/组织的流量,在大范围(internet)内实现有效的内容分发。
代理服务器按代理内容部署,一般由ISP假设。缓存既充当客户端,也充当服务器。
内容分发模型,机构局域网到互联网,局域网吞吐量10Mbps,接入网吞吐量1.5Mbps。
不代理,则时延=互联网往返延迟2s,接入网延迟2min,局域网延迟2us。接入网延迟高,提升吞吐量的成本巨大(由代理商控制)
局域网web缓存,假设缓存命中率0.4。40%请求由局域网缓存服务器满足,60请求由代理
代理,则时延=0.6*(互联网往返延迟2s,接入网延迟2us,局域网延迟2us)+ 0.4*局域网延迟2us
缓存的利用办法,条件性get http 加上if-modified-since = date
如果modified,回复200+data 否则回复304
SMTP与HTTP相比,SMTP为推送式,HTTP为拉取式。