本书是一本讲解计算机网络基础知识的教材,是一本理论书籍。
在将开篇讲了计算机网络的基本知识后,详述了五层的体系结构:物理层、数据链路层、网络层、运输层、应用层;
然后讲述了网络安全、音频/视频服务、无线网络与移动网络等概念;
最后描述了下一代因特网的情况。
本书结构
1 基本知识
1.1计算机网路与信息时代
21世纪重要特征是数字化、网络化、信息化,是一个以网络为核心的信息时代。
三网:电信网络、有线电视网络、计算机网络
计算机网络重要功能:连通性、共享
1.2因特网
1.2.1概念
网络-->互联网-->因特网
网络:若干节点和链接这些结点的链路组成。
互联网:网络和网络之间通过路由器互联起来。
因特网:世上最大的互联网。
主机:因特网上的计算机。
1.2.2发展
形成-->三级结构-->多层次ISP结构
三级结构:主干网、地区网、校园网(或企业网)
多层次ISP结构:用户通过因特网服务提供商接入因特网
1.3因特网组成
1.3.1边缘部分
边缘部分:所有主机。
边缘端系统通信方式:客户端-服务器方式、对等方式(P2P)(文件共享)。
1.3.2核心部分
核心部分:大量网络和连接这些网络的路由器。
路由器:实现分组交换的关键构件,其任务时转发收到的分组。
电路交换:建立连接-->通话-->释放连接
分组交换:
报文:需要发送的整块数据。
报文交换:整个报文先传到相邻结点,全部存储下来后查找转发表,转发到下一个结点。
分组:报文分成等长的数据段,然后在前面加上必要的控制信息(首部),即为分组。
分组交换:单个分组传送到相邻结点,存储下来后查找转发表,转发到下一个结点。
1.4计算机网络在我国的发展
1.5计算机网络的类别
1.5.1定义
一些互相连接的,自治的计算机的集合。
1.5.2类别
作用范围:广域网(WAN)、城域网(MAN)、局域网(LAN,如校园网、企业网)、个人局域网(PAN,WPAN)
使用者:公用网(电信公司建造的大型公众网)、专用网(不对外提供服务)
1.6网络性能
速率:主机在数字信道上传送数据的速率,单位bit/s。
带宽:通信线路传送数据的能力,一点到另一点的最高数据率,单位b/s
吞吐量:单位时间通过某个网络(或信道,接口)的数据量,单位b/s
时延:数据从网络的一端传送到另一端所需的时间。
发送时延:主机或路由器发送数据帧所需的时间
传播时延:电磁波在信道中传播一定距离需要花费的时间。
处理时延:主机或路由器在收到分组时要花费一定时间进行处理。
排队时延:分组进入路由器要先在输入队列中排队等待处理。
时延带宽积:传播时延*带宽,链路可以容纳多少个比特
往返时间RTT:发送数据到收到接收方的确认。
利用率:信道利用率、网络利用率
1.7计算机网络体系结构
1.7.1概念
体系结构:计算机网络的各层及其协议的集合。这个计算机网络及其构件所应完成的功能的精确定义。
体系结构是抽象的,而实现是具体的,是真正在运行的计算机硬件和软件。
网络协议:为进行网络中的数据交换而建立的规则、标准或约定
1.7.2OSI
OSI(OSI/RM):Open systems interconnection referencemodel
开放系统互连基本参考模型
应用层、表示层、会话层、运输层、网络层、数据链路层、物理层
1.7.3五层体系结构
TCP/IP是一个四层体系结构:应用层、运输层、网际层、网络接口层。
五层:结合OSI和TCP/IP的优点,采用五层结构来讲解计算机网络的折中。
应用层:通过应用进程间的交互来完成特定网络应用。应用进程间通信和交互的规则。
运输层:为两个主机中进程之间的通信提供通用的数据传输服务(报文)。TCP、UDP
网络层:为分组交换网上的不同主机提供通信服务(分组)。IP层或网际层
数据链路层:IP数据报组装成帧,在两个相邻结点间的链路上传送。
物理层:传输比特数据。
1.7.4实体、协议、服务和服务访问点
实体:任何可以发送或接收信息的硬件或软件进程。
协议:控制两个对等实体(或多个)进行通信的规则的集合。
服务:在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。下面的协议对上面的实体是透明的。
服务访问点:同一系统中相邻两层的实体进行交互(交换信息)的地方。
1.7.5TCP/IP体系结构
主机(应用层、运输层、网际层、网络接口层)-->网络-->路由器(网际层、网络接口层)-->网络-->主机
2 物理层
2.1基本概念
物理层:考虑怎样在连接各种计算机的传输媒介上传输数据比特流。
特性:机械特性、电气特性、功能特性、过程特性。
2..2基础知识
2.2.1数据通信系统的模型
数据通信系统:源系统(发送端)、传输系统(传输网络)、目的系统(接收端)
模型:源点-->发送器-->传输系统-->接收器-->终点。
源点:源点设备(如pc键盘输入汉字)产生的传输数据。
发送器:数字比特流编码成可以在传输系统传输的信号(模拟信号),如调制器。
接收器:接收传输系统中传送过来的信号,并转换成被目的设备处理的信息。
终点:从接收器获取数字比特流,输出信息。
模拟信号(连续信号)
数字信号(离散信号)
2.2.2信道
信道:与电路并不等同,用来表示向某一方向传送信息的媒体。一条通信电路往往包含一条发送信道和一条接收信道。
通信的双方信息交互方式:单向通信(单工)、双向交替通信(半双工、不能同时发送)、双向同时通信(全双工)
编码方式:不归零制、归零制、曼切斯特编码、差分曼切斯特编码
带通调制方法:调幅(AM)、调频(FM)、调相(PM)
2.3物理层下面的传输媒体
2.3.1概念
传输媒体:传输媒介、传输介质,数据传输系统中在发送器和接收器之间的物理通路。
2.3.2导引型传输媒体
双绞线
同轴电缆:内导体(铜芯)、绝缘层、外导体屏蔽层(网状编织)、绝缘保护套层
光缆
2.3.3非导引型传输媒体
非导引型传输媒体:自由空间
方式:短波通信(高频通信)、微波通信(地面微波接力通信、卫星通信)
2.4信道复用技术
频分复用、时分复用、统计时分复用
波分复用:即光的频分复用
码分复用
2.5数字传输系统
2.6宽带接入
ADSL(非对称数字用户线):用数字技术对现有的模拟电话用户线进行改造,使它能够承载宽带数字业务。
光纤同轴混合网(HFC网):光纤结点连接光纤和同轴电缆(接入用户)。
FTTx技术:
FTTH:Fiber to theHome,光纤到户
FTTZ:光纤到小区
FTTB:光纤到大楼
FTTF:光纤到楼层
FTTO:光纤到办公室
FTTD:光纤到桌面
3 数据链路层
3.1使用点对点信道的数据链路层
3.1.1概念
3.1.2三个基本问题
3.2点对点协议PPP
3.2.1特点
(1)应满足的需求
简单、封装成帧、透明性、多种网络层协议(同一条物理链路上同时支持多种网络层协议)、多种类型链路、差错检测、检测连接状态、最大传送单元、网络层地址协商、数据压缩协商
(2)组成
一个将IP数据报封装到串行链路的方法。
一个用来建立、配置和测试数据链路连接的链路控制协议LCP。
一套网络控制协议NCP,其中每一个协议支持不同的网络层协议。
3.2.2帧格式
首部(FAC+协议)+IP数据报+尾部(检验序列FCS+F)
字节填充
零比特填充
3.2.3工作状态
链路静止(设备间无链路)-->链路建立(物理链路)-->鉴别(LCP链路)-->网络层协议(已鉴别的LCP)-->链路打开(已鉴别的LCP和NCP链路)-->链路终止
3.3使用广播信道的数据链路层
3.3.1局域网的数据链路层
局域网拓扑:星型网(集线器连接)、环形网、总线网
共享信道技术:静态划分信道(不适用与局域网)、动态媒体接入控制(又称多点接入,分为随机接入、受控接入)
适配器的作用:计算机与外界局域网的连接。主机箱中的网络接口板(卡),即网卡,现在叫适配器。
3.3.2CSMA/CD协议
3.4使用广播信道的以太网
3.4.1使用集线器的星型拓扑
以太网:用无源电缆作为总线来传送数据帧,并以曾经在历史上表示传播 电磁波的以太(Ether)来命名。
集线器:星型中心的可靠性非常高的设备
集线器特点:(1)使用集线器的以太网在逻辑上是一个总线网,使用CSMA/CD协议(适配器协议);(2)多个接口的转发器;(3)工作在物理层,简单地转发比特流,不进行碰撞检测;(4)专门的芯片,进行自适应串音回波抵消。
3.4.2以太网的信道利用率
3.4.3以太网的MAC层
硬件地址:物理地址、MAC地址,固化在适配器中的ROM中的地址。
MAC帧格式:目的地址(6字节)+源地址(6字节)+类型字段(2字节)+数据(46~1500)+帧检验序列FCS(4字节)。
3.5扩展的以太网
3.5.1在物理层扩展以太网
以太网上的主机之间的距离不能太远,否则铜线传输信号会衰减到CSMA/CD不能正常工作。
使用工作在物理层的转发器来扩展以太网的地理覆盖范围。
3.5.2在数据链路层扩展以太网
网桥:工作在数据链路层,根据MAC帧的目的地址对收到的帧进行转发和过滤。使用网桥在数据链路层扩展以太网。
好处:(1)过滤通信量,增大吞吐量;(2)扩大了物理范围;(3)提高了可靠性;(4)可互联不同物理层、不同MAC子层和不同速率的以太网。
缺点:(1)增加了时延;(2)MAC子层中没有流量控制功能;(3)广播风暴(传播过多的广播信息而产生的网络拥塞)。
网桥在转发帧时,不改变帧的源地址。
透明网桥:即插即用设备,只要把网桥接入局域网,不用人工配置转发表网桥就能工作。
源路由网桥:
多接口网桥:以太网交换机,工作在数据链路层。一般网桥只有2-4个接口。
3.6高速以太网
高速以太网:速率达到或超过100Mb/s的以太网。
高速以太网技术:100BASE-T以太网、吉比特以太网、使用以太网进行宽带接入
4 网络层
4.1网络层提供的两种服务
虚电路服务:两个计算机通信时,建立一条虚拟的连接电路。可靠性由网络保证。
数据报服务:简单灵活、无连接、尽最大努力交付。可靠性由用户主机保证。
TCP/IP体系采用数据报服务。
4.2网际协议IP
与IP配套的三个协议:地址解析协议ARP、网际控制报文协议ICMP、网际组管理协议IGMP。
4.2.1虚拟互联网络
网路互联的中间设备:转发器(物理层)、网桥或桥接器(数据链路层)、路由器(网络层)、网关(网络层以上)
虚拟互联网络:由于参加互连的计算机网络都使用相同的网际协议IP,因此可以把互连以后的计算机网络看成一个虚拟互连网络(IP网),即在网络层上看起来好像是一个统一的网络,互联网。
互联网可以由多种异构网络互连组成。
4.2.2分类的IP地址
IP:整个因特网是一个单一的、抽象的网络。IP就是给因特网上的每一个主机(或路由器)的每一个接口分配一个在全世界范围是唯一的32位的标识符。
IP地址::={<网络号>,<主机号>}
A类:0,8位网络号
B类:10,16位网络号
C类:110,24位网络号
D类:1110,多播地址
E类:1111,保留为今后使用
网络号 |
主机号 |
意义 |
0 |
0 |
本网络上的本主机 |
0 |
host-id |
本网络上的某个主机 |
全1 |
全1 |
只在本网络上进行广播(各路由器均不转发) |
Net-id |
全1 |
对net-id上的所有主机进行广播 |
127 |
非全0或全1的任何数 |
作为本地环回测试之用 |
4.2.3IP地址与硬件地址
物理地址:是数据链路层和物理层使用的地址
IP地址:是网络层和以上各层使用的地址,是一种逻辑地址。
4.2.4地址解析协议ARP
ARP:根据机器的IP地址找到相应的硬件地址。解决同一局域网上的问题。
方法:在主机ARP高速缓存中存放一个从IP地址到硬件地址的映射表,这个映射表可以动态更新。
4.2.5IP数据报的格式
版本(4),首部长度(4),区分服务(8),总长度(16)
标识(16),标志(3),片偏移(13)
生存时间(8),协议(8),首部检验和(16)
源地址(32)
目的地址(32)
可选字段(长度可变),填充()
数据部分(。。。。。。)
4.2.6IP层转发分组的流程
4.3划分子网和构造超网
4.3.1划分子网
子网划分的原因:(1)两级IP地址空间利用率有时很低(一个网络上的结点个数有限,则有些IP地址被浪费了);(2)路由表太大(一个网络上的主机过多);(3)两级IP地址不够灵活。
基本思路:
(1)一个拥有许多物理网络的单位,可将所属的物理网络划分成若干个子网。但这个单位对外仍表现为一个网络。
(2)两级的IP地址在本单位内变成了三级IP地址::={<网络号>,<子网号>,<主机号>}
(3)从外面来的IP数据报仍会找到本单位的路由器,但是进来后,路由器按目的网络号和子网号找到目的子网,再把IP数据报交付个目的主机。
4.3.2子网掩码
子网划分:从主机号中分出几位来作为子网号。
两级IP(网络号+主机号)-->三级IP(网络号+子网号+主机号)
子网掩码:将网络号和子网号全部置为1,主机号为0,即为子网掩码。
默认子网掩码:即子网号位数为0时的子网掩码,即A,B,C类地址的默认子网掩码。
划分子网增加了灵活性,但减少了能够连接在网络上的主机总数。
4.3.3无分类编址CIDR(构成超网)
无分类的两级编址:IP地址::={<网络前缀>,<主机号>}
无分类域间路由选择CIDR记法:128.14.34.7/20(无分类两级编址/网络前缀长度)
构成超网:CIDR地址块都包含了多个C类地址。
4.4网际控制报文协议ICMP
4.4.1ICMP报文种类
4.4.2ICMP的应用举例
分组网间探测PING:测试两个主机间的连通性。应用层直接使用网络层的一个例子,没有通过运输层的TCP或UDP。
traceroute:跟踪一个分组从源点到终点的路径
4.5因特网的路由选择协议
4.5.1基本概念
理想的路由算法:正确完整,简单,能适应通信量和网络拓扑的变化(自适应性),稳定性,公平,最佳。
自治系统AS:因特网将整个互联网划分成许多较小的自治系统。一个AS对其他AS表现出的是一个单一的和一致的路由选择策略。
两大类路由选择协议:内部网关协议IGP(如RIP,OSPF),外部网关协议EGP(解决不同自治系统之间的选择信息传递,如BGP)
4.5.2内部网关协议RIP
RIP:路由信息协议,一种分布式的基于距离的向量路由选择协议。使用用户数据报UDP传送。
特点:(1)仅和相邻路由器交换信息;(2)交换的信息是本路由器所知道的全部信息,即自己的路由表;(3)按固定的时间间隔交换路由信息。
4.5.3内部网关协议OSPF
OSPF:开放最短路径优先。直接用IP数据报传送。
特点:(1)向本自治系统中所有路由器发送消息(洪泛法);(2)发送的消息是与本路由器相邻的所有路由器的链路状态;(3)只有当链路状态发生变化时,路由器才向所有的路由器用洪泛法发送此消息。
五种分组类型:(1)问候;(2)数据库描述(介绍自己);(3)链路状态请求;(4)链路状态更新;(5)链路状态确认。
4.5.4外部网关协议BGP
不使用内部网关协议的原因:(1)因特网规模太大,使得AS之间路由选择非常困难;(2)AS之间的路由选择必须考虑有关策略。
BGP:边界网关协议
4.5.5路由器的构成
路由器结构:路由选择、分组转发
路由选择:控制部分,核心构建是路由选择处理机。
分组转发:交换结构,一组输入端口、一组输出端口
交换结构:将数据端口的分组转发到输出端口,方式:(1)通过存储器;(2)通过总线;(3)通过互联网络。
4.6IP多播
4.6.1基本概念
多播:一对多的通信,只需发送一次,路由器复制成多个。
IP多播:在因特网上进行多播
4.6.2在局域网上进行硬件多播
4.6.3网际组管理协议IGMP和多播路由选择协议
IGMP:让连接在本地局域网上的多播路由器知道本局域网上是否有主机参加或退出了某个多播组。
多播路由选择协议转发的三种方式:(1)洪泛和剪除;(2)隧道技术;(3)基于核心的发现技术
4.7虚拟专用网VPN和网络地址转换NAT
4.7.1虚拟专用网VPN
本地地址:仅在本机构有效的IP地址,机构内部自行分配的IP地址。
全球地址:向因特网的管理机构申请全球唯一的IP地址。
专用地址:RFC指明,只能用于一个机构的内部通信,而不能用于和因特网上的主机通信。
三个专用地址块:(1)10.0.0.0/8,又称24位块;(2)172.16.0.0/12,又称20位块;(3)192.168.0.0/16,又称16位块。
专用互联网(本地互联网):采用专用IP地址块的互联网络,简称专用网。
专用IP地址:可重用地址。
虚拟专用网VPN:利用公用的因特网作为本机构各专用网之间的通信载体。
实现:两个路由器(外部接口是合法全球IP地址)在因特网上建立一个隧道(传输的数据是加密的),将两个场所连成一个专用网。
内联网:两个场所的内部网络构成的虚拟专用网
外联网:有些外部机构(通常是合作伙伴)参加进来
远程接入VPN:外地工作的员工通过拨号接入因特网,而驻留在PC中的VPN软件可以在员工的PC和公司的主机之间建立VPN隧道。
4.7.2网络地址转换NAT
网络地址转换NAT:使内网主机能够与因特网上的主机通信。通过NAT路由器将其本地地址转换成全球IP地址。
5 运输层
5.1运输层协议概述
5.1.1进程间通信
通信的真正断点不是主机而是主机中的进程,端到端的通信时应用进程之间的通信。
运输层向高层用户屏蔽了下面网络核心的细节,它是应用进程看见的就是好像在两个运输层实体之间有一条端到端的逻辑通信信道。
运输层的重要功能:复用和分用。
5.1.2运输层的两个主要协议
用户数据报协议UDP,不需要先建立连接。
传输控制协议TCP,提供面向连接的服务。
5.1.3运输层的端口
端口:协议端口号,软件端口,应用层各种协议进程与运输实体进行层间交换的一种地址。
两类:服务器端使用的端口号(分为熟知端口号0~1023和登记端口号1024~49151)、客户端使用的端口号(仅在客户程序运行时才动态选择,短暂端口号)。
5.2用户数据报协议UDP
5.2.1概念
UDP:在IP数据报服务上增加了复用和分用以及差错检测功能。
特点:(1)无连接;(2)尽最大努力交付;(3)面向报文(直接报应用层的报文加上首部就交给IP层);(4)没有拥塞控制;(5)支持一对一、一对多、多对一的交互通信;(6)首部开销小(8个字节)
5.2.2首部格式
源端口(2字节)
目的端口(2字节)
长度(2字节)
检验和(2字节)
5.3传输控制协议TCP概述
5.3.1主要特点
(1)面向连接的运输层协议
(2)每一条TCP连接只能由两个端点,只能是点对点的
(3)提供可靠交付
(4)提供全双工通信(两边能够同时发送接收,采用缓存)
(5)面向字节流(应用层报一个个大小不等的数据块交给TCP,TCP把它们看成一连串无结构的字节流)
5.3.2连接
TCP把连接作为最基本的抽象。
TCP连接的端点:套接字或插口,端口号拼接到IP地址即构成类套接字。
套接字socket=(IP地址:端口号)
每一条TCP连接唯一地被通信两端的两个端点所确定:
TCP连接::={socket1,socket2}={(IP1:port1),(IP2:port2)}
5.4可靠传输的工作原理
5.4.1理想传输
(1)传输信道不产生差错
(2)不管发送方以多快的速度发送数据,接收方总是来得及处理收到的数据。
5.4.2停止等待协议
超时重传:发送方发送一个分组后,如果一段时间没有接到确认,就会把这个分组重发一次。
确认丢失和确认迟到:接收方会丢弃重复的分组,发送方不管迟到的确认。
流水线传输:为了提高传输效率,发送方可以不适用低效率的停止等待协议,而是采用流水线传输。
5.4.3连续ARQ协议
发送方维持一个发送窗口,每收到一个确认就向前滑动一个位置。接收方采用累积确认,即对按序到达的最后一个分组发送确认(接收到分组1-5,只发送5的确认)。
5.5TCP报文段的首部格式
源端口(2),目的端口(2)
序号(4)
确认号(4)
数据偏移(4位),保留(6位),控制位(6位:紧急URG,确认ACK,推送PSH,复位RST,同步SYN,终止FIN),窗口(2)
校验和(2),紧急指针(2,在URG=1时才有意义)
选项(可变,最长为40),填充
5.6TCP可靠传输的实现
5.6.1以字节为单位的滑动窗口
5.6.2超时重传时间的选择
自适应算法:计算报文段的往返时间RTT,累积得到平滑的往返时间RTTs,超时重传时间RTO略大于加权平均往返时间RTTs。
5.6.3选择确认SACK
5.7TCP的流量控制
5.7.1利用滑动窗口实现流量控制
流量控制:让发送方的发送速率不要太快,要让接收方来得及接收
滑动窗口机制控制:发送方的发送窗口不能超过接收方的接收窗口的数值。
5.7.2必须考虑传输效率
5.8TCP的拥塞控制
5.8.1一般原理
拥塞控制:防止过多的数据注入到网络中,这样可以使网络中的路由器或链路不致过载。
流量控制是点对点的通信量控制,拥塞控制是全局性的过程。
轻度拥塞:网络吞吐量明显小于理想吞吐量时
拥塞状态:随着提供的负载的增大,网络的吞吐量下降
死锁:提供的负载增大到某一数值时,网络的吞吐量下降到零,网络无法工作。
5.8.2几种拥塞控制方法
(1)慢开始
(2)拥塞避免
(3)快重传
(4)快恢复
5.8.3随机早期检测RED
5.9TCP的运输连接管理
5.9.1建立连接
三次握手
5.9.2释放连接
四次握手
5.9.3有限机状态
6 应用层
6.1域名解析系统
6.1.1概念
域名系统DNS:因特网使用的命名系统,用来把便于人们使用的机器名字转换成IP地址。
域名服务器程序:完成域名到IP地址的解析
域名服务器:运行域名服务器程序的机器
6.1.2因特网的域名结构
6.1.3域名服务器
6.2文件传输协议
6.2.1FTP概述
FTP:文本传输协议,因特网上使用最广的文件传输协议。
6.2.2基本工作原理
网络环境的一项基本应用:将文件从一台计算机复制到另一台计算机。
原理:
服务器端:主进程(接收新请求),从属进程(处理单个请求,分为控制进程和数据传输进程)
客户端:用户界面,控制进程,数据传输进程
6.2.3简单文件传送协议TFTP
原理:使用客户-服务器方式,使用UDP数据报,有自己的差错改正措施。
优点:(1)可用于UDP环境;(2)所占内存小。
6.3远程终端协议TELNET
TELNET:远程终端协议,终端仿真协议,将用户击键传到远地主机,感觉像是键盘和显示器直接连在远地主机上。
网络虚拟终端NVT:TELNET两端的系统不一样,之间的数据和命名的转换通过NVT格式(用户格式<-->NVT格式<-->远地系统格式)。
6.4万维网WWW
6.4.1概述
万维网:一个大规模的、联机式的信息储藏所。分布式超媒体系统,是超文本系统的扩充。
超文本:包含指向其他文档链接的文本。是万维网的基础。
超媒体:相比超文本,处理包含文本信息,还包含图像、声音、动画、活动视频等。
万维网客户程序:浏览器
万维网服务器:万维网文档所驻留的主机(运行服务器程序)
统一资源定位符URL:Uniform Resource Locator,标志万维网上的各种文档,并使每一个文档在整个因特网的范围内具有唯一的标识符URL。
超文本传送协议HTTP:万维网客户程序与万维网服务器程序之间的交互遵守的严格协议。
超文本标记语言HTML:使链接到的不同风格的万维网文档在主机上显示出来。
6.4.2统一资源定位符URL
6.4.3超文本传送协议HTTP
HTTP:定义了浏览器(万维网客户进程)怎样向万维网服务器请求万维网文档,以及服务器怎样把文档传给浏览器。面向事务的应用层协议。
操作过程(以HTTP/1.0为例):
(1)浏览器分析链接指向页面的URL;
(2)浏览器向DNS请求解析IP地址
(3)DNS解析出IP地址
(4)浏览器与服务器建立TCP链接
(5)浏览器发出取文件命令
(6)服务器给出响应,传送文件
(7)释放TCP连接
(8)浏览器显示页面文本。
代理服务器:网络实体,万维网高速缓存,把最近的一些请求和响应暂存在本地磁盘中,当新请求到达时,如果本地有暂存,直接响应。
HTTP两类报文:请求报文,响应报文
报文结构:(1)开始行(用来区分请求报文和响应报文);(2)首部行(用来说明浏览器、服务器或报文主体的一些信息);(3)实体主体(请求报文通常不用,响应报文有些不用)
Cookie:HTTP服务器和客户之间传递的状态信息。
Cookie工作过程:
(1)用户张三浏览使用Cookie的网站,该网站服务器为张三产生唯一识别码,在响应文档中添加Set-cookie:识别码。
(2)张三浏览器在特定的Cookie文件中添加一行,记录服务器主机名和识别码
(3)张三继续浏览这个网站,取出识别码,HTTP请求报文中添加Cookie:识别码
(4)用户收到有识别码的请求,即可跟踪用户张三在该网站的活动。服务器并不需要知道用户姓名和其他信息。
6.4.4万维网的文档
HTML:一种制作万维网页面的标准语言,消除了不同计算机之间信息交流的障碍。
HTML文档:HTML把各种标签嵌入到万维网页面中,这样就构成类HTML文档。
XML:Extensible Markup Language,可扩展标记语言,用于标记电子文件,使其具有结构性的标记语言,可用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。
XHTML:可扩展超文本标记语言
CSS:Cascading Style Sheets,层叠样式表,一种样式表语言,用于为HTML文档定义布局。HTML用于结构化内容,CSS用于格式化结构化内容(即字体,颜色,边距等)。
动态万维网文档:
静态文档:创作完成之后,用户浏览过程中,内容不会改变。
动态文档:文档内容在浏览器访问万维网服务器时才由应用程序动态创建。
CGI:Common GatewayInterface,通用网关接口,一种标准,定义了动态文档应如何创建,输入数据应如何提供给应用程序,以及输出结果应如何使用。
活动万维网文档
两种技术用于浏览器屏幕显示连续更新:服务器推送,活动文档
服务器推送:所有工作都由服务器完成,服务器不断地运行与动态文档相关联的应用程序,定期更新信息,并发送更新过的文档。
活动文档:所有工作都交给浏览器端。浏览器请求一个活动文档,服务器返回一段活动文档程序副本,使该程序副本在浏览器执行。(如applet小程序)
6.4.5万维网的信息检索系统
6.4.6博客、微博和轻博
博客(blog):万维网日志(web log)的简称。
网络日志:个人撰写并在因特网上发布的、属于网络共享的个人日记。
微博:微型博客,微博客,只记录片段、碎语,三言两语,现场记录,发发感慨,晒晒心情,永远只针对一个问题进行回答。
轻博:轻博客,介于博客(倾向于表达)和微博(倾向于社交和传播)之间的网络服务,同样为用户提供生成内容表达自己的平台。
6.5电子邮件
6.5.1概述
6.5.2简单邮件传送协议SMTP
客户-服务器方式
建立连接-->邮件传送-->连接释放
6.5.3电子邮件的信息格式
格式:信封+内容
内容:首部(To,Subject主题,Cc复写副本,Bcc暗送,From,Date,Reply-To),主体
6.5.4邮件读取协议POP3和IMAP
邮局协议POP:客户-服务器方式,服务器把邮件送到后,就把它删除(POP3会保留一段时间),邮件到了本地。
IMAP:internetMessage Access Protocol,网际报文存取协议,客户-服务器方式,建立连接后,用户在自己PC上就可以操作邮件服务器的邮箱,是一个联机协议。
6.5.5基于万维网的电子邮件
万维网电子邮件:存储在网上的电子邮件,如Gmail,Hotmail,Yahoo!Mail,163,sina
协议:邮件服务器之间(如162-->sina)采用SMTP,用户浏览器与邮件服务器之间发送与接收采用HTTP。
6.5.6通用因特网邮件扩充MIME
MIME:为解决SMTP的缺点而提出,没有改动或取代SMTP,继续使用原来的邮件格式,但增加了邮件主体的结构,并定义了传送非ASCII码的编码规则。
6.6动态主机配置协议DHCP
协议配置:在协议软件中给参数赋值的动作。
连接到因特网的计算机的协议软件需要配置的项目包括:(1)IP地址;(2)子网掩码;(3)默认路由器的IP地址;(4)域名服务器的IP地址。
DHCP:Dynamic HostConfiguration Protocol,自动协议配置方法,提供即插即用联网。
6.7简单网络管理协议SNMP
6.7.1网络管理基本概念
网络管理:简称网管,包括对硬件、软件和人力的使用、综合与协调,以便对网络资源进行监视、测试、配置、分析、评价和控制,这样就能以合理的价格满足网络的一些需求,以实时运行性能、服务质量等。
管理站:管理器,是整个网络管理系统的核心,通常是个有着良好图形界面的高性能工作站,并由网络管理员直接操作和控制。
SNMP:简单网络管理协议,客户-服务器方式
基本原理:若要管理某个对象,就必然会给该对象添加一些软件或硬件,但这种“添加”必须对原有对象的影响尽量小些。
SNMP网络管理三部分组成:SNMP本身,管理信息结构SMI,管理信息库MIB
6.7.2管理信息结构SMI
功能:规定(1)被管对象应怎样命名;(2)用来存储被管对象的数据类型有哪些种;(3)在网络上传送的管理数据应如何编码。
6.7.3管理信息库MIB
管理信息:在因特网的网管框架中被管对象的集合。
管理信息库MIB:被管对象构成一个虚拟的信息存储器
6.7.4SNMP的协议数据单元和报文
6.8应用进程跨越网络的通信
6.8.1系统调用和应用编程接口
系统调用:在应用程序和操作系统之间传递控制权
应用编程接口API:应用程序调用系统调用的接口
套接字接口:TCP/IP协议软件已被驻留在操作系统中,TCP/IP标准没有规定TCP/IP协议软件应如何实现接口细节,套接字接口是一种著名的API。
6.8.2几种常用的系统调用
连接建立(bind,listen,accept,connect),数据传送阶段(send,recv),连接释放(close)。
系统调用使用顺序例子:
客户端: socket-->connect-->send-->recv-->close
服务器端:socket-->bind-->listen-->accept-->recv-->send-->close
7 网络安全
7.1概述
7.1.1计算机网络面临的安全性威胁
7.1.2内容
(1)保密性:为用户提供安全可靠的保密通信
(2)安全协议的设计
(3)访问控制:存取或接入控制
7.1.3一般的数据加密模型
明文-->密钥+加密算法-->密文-->传送-->密文-->解密算法+密钥-->明文
7.2两类密码体制
对称密钥密码体制:加密密钥和解密密钥是相同的,如DES,IDEA
公钥密钥体制:加密与解密密钥不同,加密密钥(公钥)是向公众公开的,解密密钥(私钥)是保密的,
7.3数字签名
三点功能:(1)报文鉴别;(2)报文完整性;(3)不可否认。
采用公钥体系
7.4鉴别
鉴别:验证通信的双方的确是自己所要通信的对象,而不是其他冒充者。
两种:报文鉴别,实体鉴别
报文鉴别方法:报文摘要MD
7.5密钥分配
7.6因特网使用的安全协议
7.6.1网络层安全协议
IPsec
7.6.2运输层安全协议
安全套接字层SSL(Secure Socket Layer)
运输层安全TLS(Transport Layer Security)
7.6.3应用层的安全协议
7.7系统安全:防火墙和入侵检测
7.7.1防火墙
防火墙:一种访问控制技术,通过严格控制进出网络边界的分组,禁止任何不必要的通信,从而减少潜在入侵的发生,尽可能降低这类安全威胁所带来的安全风险。
防火墙:一种特殊编程的路由器,安装在一个网店和网络的其余部分之间,目的是实施访问控制策略。
两类技术:(1)分组过滤路由器;(2)应用网关,也称代理服务器
7.7.2入侵检测系统
IDS:IntrusionDetection System,入侵检测系统。
方法:(1)基于特征的入侵检测,维护一个所有已知攻击标志性特征的数据库;(2)基于异常的入侵检测。
8 因特网上的音频/视频服务
8.1概述
多媒体信息特点:(1)信息量大;(2)传输时,对时延和时延抖动均有较高的要求(边传边放)
三种音频/视频服务:(1)流式存储音频/视频,边下载边播放;(2)流式实况音频/视频,边录制边播放;(3)交互式音频/视频,实时交互式通信。
8.2流式存储音频/视频
8.2.1具有元文件的万维网服务器
元文件:非常小的文件,描述或指明其他文件的一些重要信息。
8.2.2媒体播放器
媒体服务器:流式服务器
8.2.3实时流式协议RTSP
8.3交互式音频/视频
IP电话
8.4改进“尽最大努力交付”的服务
9 无线网络和移动网络
9.1无线局域网WLAN
两类:(1)有固定基础设施(基站);(2)无固定基础设施
9.2无线个人区域网WPAN
WPAN:在个人工作地方把属于个人使用的电子设备(便携式电脑,平板等)用无线技术连接起来自组网络,如蓝牙
9.3无线城域网WMAN
9.4蜂窝移动通信网
10 下一代因特网
10.1下一代网际协议IPv6(IPng)
10.2多协议标记交换MPLS
10.3P2P应用