1 概述
1.1因特网概述
网络:由若干节点和连接这些节点的链路组成。
多个网络可以通过路由器连接,即互联网。
因特网:世界上最大的互联网络。
因特网服务提供者ISP(我国主要有:电信、移动、联通)
基于ISP的三层结构的因特网:
因特网的组成:边缘部分和核心部分
1.2三种交换方式:电路交换、分组交换和报文交换
电路交换:电话交换机接通电话的方式==(效率很低)==
步骤:
- 建立连接(分配通信资源)
- 通话(一直占用资源)
- 释放连接(归还通信资源)
分组交换:
报文交换:和分组交换类似,没有分组,对于缓存有一定要求。
交换方式对比:
1.3计算机网络的定义和分类
计算机网络的简单定义:一些互联的、自治的计算机的集合。
较完整的定义:计算机网络主要由一些通用的、可编程的硬件互联而成(不限于一般的计算机),这些硬件并非用来实现某一特定目的。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用(能够支持多种应用)。
分类:
1.4计算机网络的性能指标
- 速率: 1Byte = 8bit
- 带宽 : 理论最大速率
- 吞吐量: 受实际影响的最大速率
- 时延: 发送时延、传播时延、处理时延
- 时延带宽积 = 传播时延×带宽 :以比特为单位的链路长度
- 往返时间(RTT Round-Trip Time)
- 利用率 信道利用录并非越高越好
- 信道利用率:某信道有百分之几的时间是被利用的(有数据通过)。
- 网络利用率:全网络的信道利用率的加权平均。
D:当前网络时延 D0:网络当前时延 U:利用率
- 丢包率 : 传输过程中丢失的分组数量与总分组数量的比率。反应了网络的拥塞情况
1.5计算机网络体系结构
- 协议:控制两个对等实体进行逻辑通信的规则的集合。假设,并不存在
- 语法:定义交换信息的格式
- 语义;定义收发双方所要完成的操作
- 同步:定义收发双方的时序关系
- 服务:对等实体间的逻辑通信使得本层能够向上一层提供服务。上层协议需使用下层提供的服务
题目
2 物理层
2.1物理层的基本概念
2.2物理层下面的传输媒体
-
导引型传输媒体:
-
同轴电缆 -
双绞线 -
光纤
- 原理:入射角较大,产生全反射:光在纤芯中不断的全反射;
-
电力线 -
非导引型传输媒体
2.3传输方式
-
串行传输/并行传输 -
同步传输/异步传输
- 外同步:时钟信号线
- 内同步:发送端将时钟同步信号编码到发送数据中一起传输 例如曼彻斯特编码
-
单工/半双工/全双工
2.4编码与调制
码元:使用时间域的波形表示数字信号时,代表不同离散数值的基本波形
常用编码:
- 不归零编码NRZ(反向不归零编码NRZI)
- 归零编码RZ:自同步信号 编码效率低
- 曼彻斯特编码:码元中间时刻的跳变即表示时钟,又表示数据
- 差分曼彻斯特编码:跳变表示时钟,开始处电平是否发生变化表示数据
基本调制方法:
混合调制:相位和振幅可以结合一起调制,称为正交振幅调制QAM
- QAM-16: 12种相位,2种振幅,对应关系为格雷码:任意两个相邻码元只要一个比特不同
2.5通道的极限容量
因码元传输速率、信号传输距离、噪声干扰、传输媒体质量等原因导致的信号失真会导致信号串扰。
奈氏准则:在假定的理想条件下,为了避免码间串扰,码元传输速率是有上限的。
- 理想低通信道:最高码元传输速率 = 2W Baud = 2W 码元/秒 W 信道带宽 Baud 波特
- 理想带通信道:最高码元传输速率 = W Baud = W 码元/秒
码元传输速录又称为波特率、调制速率、波形速率、符号速率。波特率 = 比特率 * 码元携带比特信息;
4个相位,4种振幅的QAM调制技术,比特信息为4bit
香农公式:带宽受限且有高斯白噪声干扰的信道的极限信息传输速率;
提高信息传输速录的方法:多元制和提高信道中的信噪比
3 数据链路层
3.1数据链路层概述
链路Link:一个节点到相邻节点的一段物理线路,中间没有其他的交换节点。
数据链路Date Link:把实现通信协议的软件和硬件加到链路上,构成数据链路。
数据链路层以帧为单位传输和处理数据。
- 差错检测:检错码放在帧尾
- 可靠传输:发送方发送的=接受方接收的(丢弃含误码的帧)
广播信道:通过帧头中的地址确定发送接收方。(以太网使用CSMA/CD协议解决碰撞问题)
有线局域网:交换式局域网替代共享式局域网
无线局域网:CSMA/CA
3.2封装成帧
封装成帧:数据链路层给上层交付的协议数据单元添加帧头帧尾使之成帧。
帧头帧尾的作用之一为帧定界。
物理层也可以给帧添加前导码。
帧间间隔为96比特的发送时间。
透明传输:数据链路层对上层交付的数据没有任何限制
例如:数据链路层会扫描上层交付的数据,出现有歧义的字段(交付的数据中包含和帧头帧尾或者转义字符一样的数据)增加转义字符。
面向字节的物理链路层使用字节填充的方法实现透明传输。
面向比特的物理链路层使用比特填充的方法实现透明传输。
为了提高帧的传输效率,应当使帧的数据部分长度尽可能大。
考虑到差错控制,规定了帧的数据部分的长度上限,即最大传送单元MTU。
3.3差错检测
比特差错(误码):传输过程中0或1发生了变化。
误码率BER(Bit Error Rate):传输错误的比特占传输比特总数的比率。
使用差错检测码检测数据在传输过程中是否产生了比特差错,无法定位错误。
- 奇偶校验,添加一位奇偶校验位,若比特1的奇偶改变,可以检验出错误。(奇数位发生误码,可以检出;偶数位发生误码,漏检。)
- 循环冗余校验CRC:较好的检测能力,易于硬件实现。
- 收发双方约定好一个生成多项式G;
- 发送方基于待发送的数据和生成多项式计算出差错检验码(冗余码),将其添加到待传输数据的后面一起传输;
- 接收方通富哦生成多项式计算收到的数据是否产生了误码。
可靠服务:检错重传;
不可靠服务:丢弃错误帧。
3.4可靠传输
一般情况,有线传输误码率低,不要求可靠传输;无线传输与之相反,要求可靠传输。
传输差错:比特差错、分组丢失、分组失序、分组重组。(不仅仅局限于数据链路层)
是否使用可靠传输取决于应用需求。
3.4.1停止-等待协议SW
发送丢失:超时重传;
确认丢失:分组编号。
信道利用率:若往返时延远大于发送时延,信道利用率极低;
3.4.2回退N帧协议GBN
1<WT<=2n-1 :发送窗口尺寸
WR=1 :接收窗口尺寸
累积确认:接收方不一定要对收到的数据分组逐个发送确认,而是在收到几个数据分组后,对按顺数到达的最后一个数据分组发送确认。
若存在某个数据分组误码不被接收,后续的几个分组因序号不匹配都不被接收(需要重传,所以称为回退N帧),当通信线路质量不好时,回退N帧协议的信道利用率也不高。
发送窗口尺寸不能超过其上限,否则无法判断是否重复接收。
3.4.3选择重传协议SR
1<WT<=2n-1 :发送窗口尺寸
1<WR<=WT :接收窗口尺寸
相较于回退N帧协议,选择重传协议只重传出现误码的部分,接收窗口的尺寸大于1,小于等于发送窗口尺寸。不能使用累积确认,而是逐一确认
3.5点对点协议
Point-to-Point Protocol:目前使用最广泛的点对点数据链路层协议;
组成部分:
- 封装成帧
- 链路控制协议LCP:用于建立、配置、测试数据链路层的连接
- 一套网络控制协议NCPs:每一个协议支持不同的网络层协议
帧格式:
透明传输方法:
差错检验:CRC
3.6媒体接入控制
共享信道着重考虑的问题就是如何协调多个发送和接收站点对一个共享传输媒体的占用。即媒体接入控制MAC(Medium Access Control)
随着技术的发展,交换技术成熟且成本低,有线领域点对点网络和交换式局域网已经取代了共享式局域网,无线领域仍然使用共享媒体技术。
静态划分信道
信道复用:通过一条物理线路同时传输多路信号。
- 码分复用TMD:主要用于多址技术,即码分多址CDMA(Code Division Multiple Access)这个地方没听懂,回头重新听一下
随机接入 CSMA/CD协议
适用于有限网络,不适用与无线网络
以太网强化碰撞:在检测到碰撞后除了停止发送,还要继续发送干扰信号强化碰撞,产生足够多的信号让所有站点检测到碰撞。
征用期(碰撞窗口)传播需要时间,所以会发生碰撞数据在总线上往返时间
最小帧长=征用期×数据传输速率
在以太网中使用此协议的帧长不能太短,否则会导致无法检测到碰撞。最小帧长64字节。如果发送字节小于64字节,需要填充至64字节。
征用期内没有发生碰撞则不会再发生碰撞(信号已经到达了总线的每个位置)。
帧的最大长度:若长度过长会导致长期占用总线,影响其他设备。
截断二进制指数退避算法:若连续发生多次碰撞,则证明参与竞争信道的设备越多,使用这种算法可以使重传需要推迟的平均时间随碰撞次数而增大(动态退避),减小碰撞概率。
信道利用率:
帧发送流程:
基于交换机和全双工的以太网不会发生碰撞。
随机接入 CSMA/CA协议
适用于无线网络(无线局域网)
因为使用碰撞检测(无线使用碰撞避免)对硬件要求极高,另外存在隐蔽站的问题所以无线局域网不适用于CSMA/CD协议。
工作原理:
DIFS:其他站有高优先级帧先发送;
SIFS:最短的帧间间隔,用来区分不同的帧;
退避一段随机时间,防止多个站点同时发送数据产生碰撞;
退避算法:
信道预约和虚拟载波监听:
小结:
3.7MAC、IP及APR协议
1.MAC地址
以太网的MAC子层所使用的协议(数据链路层)
主机发送的帧中必须携带标识发送主机和接收主机的地址,这些地址用于媒体接入控制(Media Access Control),称为MAC地址。
固化在网卡的电可擦可编程只读存储器EEPROM中,因此MAC地址称为硬件地址。
MAC地址有时也被称为物理地址,但是并不位于物理层。
用户主机包含两个网络适配器:网络适配器有全球唯一的MAC地址,交换机和路由器有更多的网络接口,拥有更多的MAC地址。MAC地址是对网络上各接口的唯一标识,不是对各设备的唯一标识。
- 有线局域网适配器(有线网卡)
- 无线局域网适配器(无线网卡)
单播、多播、广播。
2.IP地址
TCP/IP体系结构网络层所使用的协议(网际层)
因特网上主机和路由器所使用的地址,标明两部分信息:
- 网络编号:标识因特网上数量庞大的网络
- 主机编号:标识统一网络上不同的主机或者路由器接口
3.APR协议
属于TCP/IP体系结构的网际层,其作用是已知设备分配到的IP地址,使用ARP协议可以通过该IP地址获取到设备的MAC地址(网际层)
作用:通过IP地址找到MAC地址。
广播:
回应:
3.8以太网与交换器的区别
集线器:
集线器拓展以太网的缺点:更大的碰撞域
集线器和交换机的区别:
以太网交换机的特点:
3.9以太网自学习和转发帧的流程
以太网交换机工作在数据链路层(也包括物理层)
在接收到帧后,在帧交换表中查找帧的目的MAC地址对应的接口号,然后通过该接口转发帧。
即插即用设备,刚上电时帧交换表中是空的,随着各主机间的通信,通过自学习算法逐渐建立帧交换表。
以太网自学习和转发帧的流程:
当帧交换表中没有记录时,通过盲目泛洪方式转发,是学习的阶段,在通信后即在帧交换表中记录通信过的MAC地址,再次通信时既可以实现明确转发。
若总线接入交换机的同一接口,则总线上的设备发送帧在进入交换机后会被丢弃。
题目:交换机中的帧交换表中也会记录连接在其他交换机上设备的MAC地址
3.10以太网交换机的生成树协议STP
提高以太网的可靠性:增加冗余链路。
冗余链路导致的负面效应网络环路。
- 主机收到重复的广播帧:消耗主机资源
- 交换机的帧交换表震荡(漂移)
解决办法:生成树协议
交换机自动计算并构建一个逻辑上没有环路的网络,逻辑拓扑结构是树形的,无逻辑环路,树形逻辑拓扑需要连通整个网络。
首次连接交换机或者网络拓扑物理结构发生改变时,交换机都将进行生成树的重新计算。
3.11虚拟局域网VLAN
以太网规模扩大,广播域相应扩大,带来很多弊端。
-
广播风暴:信号传遍整个网络,浪费资源。 -
难以管理和维护 -
潜在的安全问题
分隔广播域的方法:
- 虚拟局域网VLAN技术(Virtul Local Area Network)
将局域网内的设备划分为与物理位置无关的逻辑组,逻辑组具有某些共同的需求。
虚拟局域网VLAN的实现机制
交换机接口类型:
- Access:连接用户计算机,只能属于一个VLAN,PVID值与所属VLAN的ID相同。
- Trunk:交换机之间或者交换机和路由器中间,可以属于多个VLAN,用户可以设置PVID值,默认为1。VID等于PVID的帧,去标签再转发;接收时给未打标签帧打标签,VID等于PVID。VID不等于PVID的帧,直接转发;接收已打标签的帧。
- Hybird(华为特有):可以使用Access或者Trunk连接方式。
练习:
4 网络层
4.1网络层概述
主要任务:实现网络互连,实现数据包在各网络之间传输。
主要解决以下问题:
- 网络层向运输层提供怎样的服务(可靠传输/不可靠传输);
- 网络层寻址问题;
- 路由选择问题。
4.2网络层提供的两种服务
1.面向连接的虚电路服务
可靠通信由网络保证;
必须建立网络层的连接-虚电路VC;
沿着已建立的虚电路发送分组;
目的主机地址在连接建立阶段使用,之后分组携带虚电路编号即可;
通信结束,释放虚电路。
2.无连接的数据报服务
可靠传输由用户主机保证;
不需要建立网络层连接;
分组可走不同路径;
分组首部携带目的主机的完整地址;
提供的是不可靠传输服务;
因特网使用这种设计思想:复杂的网络处理功能置于因特网的边缘(用户主机),相对简单的功能置于因特网核心。
4.3 IPv4
1.地址概述
IPv4地址就是给因特网上的每台主机或者路由器的每一个接口分配一个在全世界范围内是唯一的32比特的标识符。
十进制表示方法:
2.分类编址的IPv4地址
A类前8位:0000 0001-0111 1111 十进制1-127
B类前8位:1000 0000-1011 1111 十进制128-191
C类前8位:1100 0000-1101 1111 十进制192-223
0.0.0.0只能作为源地址使用,表示本网络上的本主机。
255.255.255.255只能作为目的地址使用,表示只在本网络上进行广播。
A类地址详细信息:其他类可类比得出(BC类不保留最小和最大网络号)
一般不使用的IP地址:
3.划分子网的IPv4地址
32比特的子网掩码可以表明分类IP地址的主机号部分被借用了几位用作子网号。
4.无分类编址的IPv4地址
数量极大的C类网因为其地址空间太小没有得到充分利用,IPv4地址在加速消耗,基于此,提出了采用无分类编址的方法来解决IP地址紧张的问题。
无分类域间路由选择CIDR(Classless Inter-Domain Routing):消除了ABC类地址和子网概念,更加有效的分配地址空间。
路由聚合:
5.IPv4地址的应用规划
子网划分方式:
4.4数据报的发送和转发过程
包含以下两个部分:
默认网关
4.5静态路由配置及其环路问题
静态路由配置:用户或者网络管理员使用路由器的相关命令给路由器人工配置路由表。
优点:方式简单,开销小。 缺点:不能及时适应网络状态变化。
产生路由环路的原因:
配置错误导致的环路问题:
解决办法——在IP数据报首部设有生存时间TTL字段。
聚合了不存在的网络:
解决办法——黑洞路由
网络故障导致的路由环路:
解决办法——黑洞路由
补充:
4.6.1路由选择协议概述
路由选择比较:
因特网采用的路由选择协议主要特点:
分层次路由选择协议:
常见的路由选择协议:
路由器的基本结构:
- 路由表一般仅包含从目的网络到下一跳的映射
- 路由表需要对网络拓扑变化的计算最优化
- 转发表是从路由表得出的
- 转发表的结构应当使查找过程最优化
4.6.2路由信息协议RIP的基本工作原理
RIP认为好的路由就是距离短的路由,尽管带宽较小。
有多条距离相等的路由时,可以进行等价负载均衡。(多条路由同时传输)
三个要点:
- 和谁交换信息:仅和相邻路由器交换信息;
- 交换什么信息:自己的路由表;
- 何时交换信息:周期性交换(例如30秒)。
基本工作过程:
路由条目更新规则:
坏消息传的慢:由于网络故障,附近非直连路由器没有得到消息的情况下,发送自身路由表给故障网络直连路由器,形成网络环路。
解决措施:
- 限制最大路径距离为15(16不可达)。
- 路由表发生变化时立即发送更新报文(即触发更新)。
- 路由器记录收到某特定路由信息的接口,不让同一路由信息通过同一接口方向发送(水平分割)。
4.6.3 开放最短路径优先OSPF的基本工作原理
4.6.4边界网关协议BGP的基本工作原理
当BGP发言人互相交换了网络可达性的信息后,各BGP发言人就根据所采用的策略从收到的路由信息中找出==到达各自治系统的较好的路由 。==也就是构造出树形结构、==不存在回路的自治系统连通图。
BGP-4协议的四种报文:
- OPEN(打开报文):用来与相邻的另一个BGP发言人建立关系,使通信初始化。
- UPDATE(更新报文):用来通告某一路由的消息,以及列出要撤销的多条路由。
- KEEPALIVE(保活报文):用来周期性的证实邻站的连通性。
- NOTIFICATION(通知报文):用来发送检测到的差错。
封装关系:
4.7IPv4数据报的首部格式
IPv4数据报分片:MF(后续是否还有分片),DF(是否允许分片)
题目:注意数据载荷必须为8的倍数,整字节
题目:
4.8网际控制报文协议(ICPM)
作用:更有效准发IP数据报和提高交付成功的机会。
主机或路由器使用ICPM来发送差错报告报文和询问报文。
封装在IP报中发送。
差错报告报文有以下五种:
常用ICPM询问报文:
回送请求和回答:主机或路由器向一个特定的目的主机发出的询问,收到此报文的主机必须给源主机或路由器发送ICPM回送回答报文,用来测试目的站是否可达并了解有关状态。
时间戳请求和回答:请某个主机或者路由器回答当前的日期和时间,用来进行时钟同步和测量时间。
ICMP应用:
4.9虚拟专用网VPN和网络地址转换NAT
网络地址转换(NAT):可以让大量使用内部专用地址的专用网络用户共享少量外部全球地址来访问因特网上的主机和资源、
NAT对外网屏蔽了内网主机的网络地址,能为内网的主机提供一定的安全保护。
5 运输层
5.1 运输层概述
物理层、数据链路层和网络层实现了主机到主机间的通信。
在计算中通信的真正实体是位于通信两端主机中的进程(运输层的任务、端到端协议)。
5.2 运输层端口号、复用与分用的概念
端口号的概念:
发送方的复用和接收方的分用:
TCP/IP体系的应用层常用协议所使用的运输层熟知端口号:
举例:运输层端口号
- DNS服务器将查询结果(DNS响应)发送给用户PC
5.3 UDP和TCP对比
UDP(User Dategram Protocol)用户数据报协议;
TCP(Transmission Control Protocol)传输控制协议;
5.4 TCP的流量控制
流量控制:让发送方的发送速率不要太快,要让接收方来得及接收;
滑动窗口机制可以实现对发送方的流量控制。
举例:
5.5 TCP的拥塞控制
拥塞:对网络中某一资源的需求超过了该资源所能提供的可用部分,网络性能就要变坏。
出现拥塞若不进行控制,整个网络的吞吐量将随输入负荷的增大而下降。
慢开始:
拥塞避免:
慢开始和拥塞避免:
慢开始和拥塞避免出现较早,为了避免因数据丢失导致拥塞误判,增加了快重传和快恢复新的拥塞控制算法。
快重传可以尽快让发送方知道个别报文段的丢失。
快重传:接收方不要等待自己发送的数据时捎带确认,而是要立即确认,受到失序报文段,也要对发送对于收到的报文段的重复确认;发送方一旦受到三个重复的确认,就将相应的报文段立即重传,而不是等待超时重传。
快恢复:
TCP拥塞控制四种算法举例:
5.6 TCP超时重传时间的选择
RFC6289建议使用的超时重传时间RTO计算公式:
往返时间RTT测量复杂的原因:Karn算法,报文重传则不计忽略这次时间。修正:每重传一次,RTO值增大一些,典型的为变为2RTO。
举例:
5.7 TCP可靠传输的实现
基于以字节为单位的滑动窗口来实现可靠传输。
发送窗口的描述:
接收窗口的描述:
注意点:
5.8 TCP的运输连接管理
TCP是面向连接的协议,他是基于运输连接来传送TCP报文段。
TCP运输连接的建立和释放是每一次面向连接的通信中必不可少的过程。
运输连接有三个阶段:
运输连接管理就是使运输连接的建立和释放都能正常地进行。
5.8.1 TCP的连接建立(三次握手)
需要解决三个问题:
- 使TCP双方能够确知对方的存在;
- 使TCP双方能够协商一些参数(如最大窗口值、是否使用窗口扩大选项和时间戳选项以及服务质量等);
- 使TCP双方能够对运输实体资源(如缓存大小、连接表中的项目等)进行分配。
使用“三报文握手”建立连接的过程:
传输控制块:指向发送和接收缓存的指针、指向重传队列的指针、当前的发送和接收序号…
客户端发送TCP连接请求:
SYN:同步位设置为一,表明这是一个TCP连接请求报文段(SYN为一的报文段不能携带数据)
seq:设置初始值为x,作为TCP客户进程所选择的初始序号
服务端发送针对TCP连接请求的确认:
SYN:同步位
ACK:确认位
seq:y
ack:确认号字段设置为x+1,对连接请求seq的确认
发送针对TCP连接请求的确认的确认:
ACK:设置为1,表明为普通的TCP确认报文段
seq:不携带数据加1,携带数据不加
为什么不能使用“两报文握手”:防止失效的连接请求报文段突然又传送到了TCP服务器,因而导致错误。
5.8.2 TCP的连接释放(四次挥手)
发送TCP连接释放:
FIN:终止位
ACK:确认位
seq:等于TCP客户进程之前已经传送过的、数据的最后一个字节的序号加1(FIN=1即使不携带数据也要消耗序号)
ack:等于TCP客户进程之前已收到的、数据的最后一个字节的序号加1。
发送TCP普通确认:
ACK=1:普通的TCP确认报文段
seq:等于TCP服务器进程之前已经传送过的数据的最后一个字节的序号加1
ack:对TCP连接释放报文段的确认
为何要等待:
保活计时器:
5.9 TCP报文段的首部格式
首部格式:
6 应用层
6.1应用层概述
应用层是计算机网络结构的最顶层,是设计和建立计算机网络的最终目的,也是计算机网络中发展最快的部分。
6.2 客户—服务器方式和对等方式
网络应用程序运行在网络边缘不同的端系统上,通过彼此间的通信来共同完成某种任务。
开发一种新的网络应用首先要考虑的问题是网络应用程序在各种端系统上的组织方式和他们之间的关系。
1. C/S方式(客户/服务器)
客户/服务器方式(Client/Server CS):通信中所涉及的两个进程,描述的是进程之间服务和被服务的关系。
客户是服务请求方,服务器是服务提供方。
服务器总是处于运行状态,并等待客户的服务请求。服务器具有固定的端口号(HTTP服务器的默认端口号是80),运行服务器的主机有固定的IP地址。
C/S方式:万维网、电子邮件、文件传输FTP等。
基于C/S方式的应用服务通常是服务集中型的:应用服务集中在网络中比客户计算机少的多的服务计算机上,常会出现服务计算机跟不上众多客户机请求的情况,解决办法是用计算机集群构建一个强大的虚拟服务器。
2. P2P方式(对等)
没有固定的服务请求者和服务提供者,分布在网络边缘各端系统中的应用进程是对等的,称为对等方。对等方之间直接通信,每个对等方既是服务的请求者,又是服务的提供者。
应用主要包括:P2P文件共享、即时通信、P2P流媒体、分布式存储等。
基于P2P的应用是服务分散性型的,因为服务不是集中在少数几个服务计算器中,而是分散在大量对等计算机中,这些计算机并不为服务提供商所有,而是为个人控制的桌面计算机和笔记本电脑,它们通常位于住宅、校园和办公室中。
突出特性之一为可拓展性,系统性能不会因规模的增大而降低。
具有成本上的优势,不需要庞大的服务器设施和服务器带宽。
6.3 动态主机配置协议DHCP
DHCP的作用:
工作过程:
中继代理:避免使用过多的DHCP服务器
6.4 域名系统DNS(Domain Name System)
作用:域名与IP地址相比更加便于记忆。
不能只使用一台DNS服务器的原因:
因特网采用层次树状结构的域名结构,用若干个分量组成,由点隔开,代表不同级别的域名(每一级的域名由英文字母和数字组成,不超过63个字符,不区分大小写;低级别域名位于左边;完整域名不超过255个字符;不规定包含多少下级域名,也不规定每级域名代表的意思 ;各级域名由上一级的域名管理机构管理,顶级域名由因特网名称与数字地址分配机构ICANN进行管理)。
例如:
域名分类:
因特网的域名空间:
域名服务器:
域名解析过程:递归查询和迭代查询
高速缓存:
6.5 文件传送协议FTP
文件传送:将某台计算机的文件通过网络传送到可能相距很远的另一台计算机中。
文件传送协议FTP(File Transfer Protocol)是因特网上使用的最广泛的文件传送协议:
- 提供交互式访问,允许客户指明文件的类型和格式,并允许文件具有存取年限;
- 屏蔽了计算机系统的细节,适合于在异构网络中传送文件;
基本工作原理:
6.6 电子邮件
发送过程:
简单邮件传送协议SMTP(Simple Mail Transfer Protocol)的基本工作原理:
电子邮件有信封和内容两部分组成,内容由首部和主体两部分构成:
SMTP协议只能传送ASCII码文本数据,不能传送可执行文件或其他的二进制对象。为了解决这个问题,提出了多用途因特网邮件拓展MIME(Multipurpose Internet Mail Extensions),也可用于面向ASCII码字符的HTTP。
- 增加了5个新的邮件首部字段
- 定义了许多邮件内容的格式
- 定义了传送编码,可对任何内容格式转换
常用的邮件读取协议(采用基于TCP连接的客户/服务器方式):
- 邮局协议POP(Post Office Protocol,采用熟知端口110),POP3是第三个版本,因特网正式标准;
- 只能以下载并删除方式或者下载并保留方式从邮件服务器下载邮件到用户计算机;
- 不允许用户在邮件服务器上管理自己的邮件(例如创建文件夹)。
- 因特网邮件访问协议IMAP(Internet Message Access Protocol),IMAP4是第四个版本,因特网建议标准;
- 用户在自己的计算机上就可以操控邮件服务器中的邮箱,就像在本地操纵一样,是一个联机协议。
基于万维网的电子邮件:
6.7 万维网WWW
万维网概述:
统一资源定位符URL指明因特网上资源位置,一般形式如下组成:
万维网的文档:
HTML:超文本标记语言(Hyper Text Markup Language),使用多种标签描述网页的结构和内容;
CSS:层叠样式表(Cascading Style Sheets),从审美的角度描写网页的样式;
JavaScript:一种脚本语言(和Java没有关系),控制网页的行为。
超文本传输协议HTTP(HyperText Transfer Protocol):HTTP定义了浏览器(即万维网客户进程)怎样向万维网服务器请求万维网文档,以及万维网服务器怎样把万维网文档传送给浏览器。
HTTP/1.0采用非持续连接方式。在该方式下,每次浏览器请求一个文件都需要与服务器建立TCP连接,当收到响应后就立即关闭连接;每请求一个文档就有两倍的RTT的开销。若一个网页上有很多引用对象(例如图片等),那么请求每一个对象都需要花费2RTT的时间;为了减小时延,浏览器通常会建立多个并行的TCP连接同时请求多个对象,这样会加大服务器负担。
HTTP/1.1采用连续连接的方式,万维网服务器在发送响应后仍然保持连接;还可以使用流水线方式工作,即浏览器在收到HTTP的响应报文之前能够发送多个请求报文。
HTTP的报文格式:HTTP是面向文本的,其报文中的每一个字段都是一些ASCII码串,并且每个字段的长度都是不确定的。
请求报文格式:
响应报文格式:
使用Cookie在服务器上记录用户信息:
- 早期的万维网应用简单,仅仅是用户查看存放在不同服务器上的各种静态文档。因此HTTP被设计为一种无状态的协议。可以简化服务器的设计。
- 现在,用户可以通过万维网实现复杂应用。需要登录用户信息,可以选择记住我。
- Cookie提供了一种机制使得万维网服务器能够记住用户,==是一种对无状态的HTTP进行状态化的技术。
万维网缓存与代理服务器:
- 在万维网中可以使用缓存机制提高万维网的效率。
- 万维网缓存又称Web缓存(Web Cache),可位于客户机,也可位于中间系统,位于中间系统上的Web缓存又称代理服务器(Proxy Server)。
- Web缓存把最近的一些请求和相应暂存在本地磁盘中。当新请求达到时,若发现这个请求与暂时存放的请求相同,就返回暂存的响应,而不需要按照URL的地址再次去因特网中访问该资源。
代理服务器存放有所请求的对象:
代理服务器没有所请求的对象:
对比:
有效时间问题:
习题:
|