第一章 概述
- 计算机网络(可简称为网络)把许多计算机连接在一起,而互连网则把许多网络连接在一起,是网络的网络。
- 以小写字母i开始的internet(互连网)是通用名词,它泛指由多个计算机网络互连而成的网络。在这些网络之间的通信协议(即通信规则)可以是任意的。
- 以大写字母I开始的Internet (互联网)是专用名词,它指当前全球最大的、开放的、由众多网络相互连接而成的特定互连网,并采用TCP/IP协议族作为通信规则,且其前身是美国的ARPANET。Internet的推荐译名是“因特网”,但很少被使用。
- 互联网现在采用存储转发的分组交换技术,以及三层ISP结构:主干ISP,地区ISP,本地ISP
- 互联网按工作方式可划分为边缘部分与核心部分。主机在网络的边缘部分,其作用是进行信息处理。路由器在网络的核心部分,其作用是按存储转发方式进行分组交换。
- 计算机通信是计算机中的进程(即运行着的程序)之间的通信。计算机网络采用的通信方式是客户-服务器方式和对等连接方式(P2P方式)。
- 客户和服务器都是指通信中所涉及的应用进程。客户是服务请求方,服务器是服务提供方。
- 按作用范围的不同,计算机网络分为广域网WAN、城域网MAN、局域网LAN和个人区域网PAN。
- 计算机网络最常用的性能指标是:速率、带宽、吞吐量、时延(发送时延、传播时延、处理时延、排队时延)、时延带宽积、往返时间和信道(或网络)利用率。
- 网络协议即协议,是为进行网络中的数据交换而建立的规则。计算机网络的各层及其协议的集合,称为网络的体系结构。
- 五层协议的体系结构由应用层、运输层、网络层( 或网际层)、数据链路层和物理层组成。运输层最重要的协议是TCP和UDP协议,而网络层最重要的协议是IP协议。
第二章 物理层
- 物理层的主要任务就是确定与传输媒体的接口有关的一些特性, 如机械特性、电器特性,功能特性和过程特性。
- 一个数据通信系统可划分为三大部分,即源系统、传输系统和目的系统。源系统包括源点(或源站、信源)和发送器,目的系统包括接收器和终点(或目的站,或信宿)。
- 通信的目的是传送消息。如话音、文字、图像、视频等都是消息。数据是运送消息的实体。信号则是数据的电气或电磁的表现。
- 根据信号中代表消息的参数的取值方式不同,信号可分为模拟信号(或连续信号)和数字信号(或离散信号)。代表数字信号不同离散数值的基本波形称为码元。
- 根据双方信息交互的方式,通信可以划分为单向通信(或单工通信)、双向交替通信(或半双工通信)和双向同时通信(或全双工通信)。
- 来自信源的信号叫做基带信号。信号要在信道上传输就要经过调制。调制有基带调制和带通调制之分。最基本的带通调制方法有调幅、调频和调相。还有更复杂的调制方法,如正交振幅调制。
- 要提高数据在信道上的传输速率,可以使用更好的传输媒体,或使用先进的调制技术。但数据传输速率不可能被任意地提高。
- 传输媒体可分为两大类,即导引型传输媒体(双绞线、同轴电缆或光纤)和非导引型传输媒体(无线或红外或大气激光)。
- 常用的信道复用技术有频分复用、时分复用、统计时分复用、码分复用和波分复用(光的频分复用)。
- 最初在数字传输系统中使用的传输标准是脉冲编码调制PCM。现在高速的数字传输系统使用同步光纤网SONET (美国标准)或同步数字系列SDH (国际标准)。
- 用户到互联网的宽带接入方法有非对称数字用户线ADSL (用数字技术对现有的模拟电话用户线进行改造)、光纤同轴混合网HFC (在有线电视网的基础上开发的)和FTTx (即光纤到…)。
- 为了有效地利用光纤资源,在光纤干线和用户之间广泛使用无源光网络PON.无源光网络无须配备电源,其长期运营成本和管理成本都很低。最流行的无源光网络是以太网无源光网络EPON和吉比特无源光网络GPON.
第三章 数据链路层
- 链路是从一个结点到相邻结点的段物理线路, 数据链路则是在链路的基础上增加了一些必要的硬件(如网络适配器)和软件( 如协议的实现)。
- 数据链路层使用的信道主要有点对点信道和广播信道两种。
- 数据链路层传送的协议数据单元是帧。数据链路层的三个基本问题则是:封装成帧、透明传输和差错检测。
- 循环冗余检验CRC是一种检错方法, 而帧检验序列FCS是添加在数据后面的冗余码。
- 点对点协议PPP是数据链路层使用最多的一种协议,它的特点是:简单:只检测差错,而不是纠正差错:不使用序号,也不进行流量控制:可同时支持多种网络层协议。
- PPPoE是为宽带上网的主机使用的链路层协议。
- 局域网的优点是:具有广播功能,从一个站点可很方便地访问全网:便于系统的扩展和逐渐演变;提高了系统的可靠性、可用性和生存性。
- 共享通信媒体资源的方法有二:一是静态划分信道(各种复用技术),二是动态媒体接入控制,又称为多点接入(随机接入或受控接入)。
- IEEE 802委员会曾把局域网的数据链路层拆成两个子层,即逻辑链路控制(LLC)子层(与传输媒体无关)和媒体接入控制(MAC)子层(与传输媒体有关)。但现在LLC子层己成为历史。
- 计算机与外界局域网的通信要通过通信适配器(或网络适配器),它又称为网络接口卡或网卡。计算机的硬件地址就在适配器的ROM中,
- 以太网采用无连接的工作方式,对发送的数据帧不进行编号,也不要求对方发回确认。目的站收到有差错帧就把它丢弃,其他什么也不做。
- 以太网采用的协议是具有冲突检测的载波监听多点接入CSMA/CD。协议的要点是:发送前先监听,边发送边监听,一旦发现总线上出现了碰撞,就立即停止发送。然后按照退避算法等待一段随机时间后再次发送。因此,每一个站在自己发送数据之后的一小段时间内,存在着遭遇碰撞的可能性。以太网上各站点都平等地争用以太网信道。
- 传统的总线以太网基本上都是使用集线器的双绞线以太网。这种以太网在物理上是星形网,但在逻辑上则是总线形网。集线器工作在物理层,它的每个接口仅仅简单地转发比待,不进行碰撞检测。
- 以太网的硬件地址,即MAC地址实际上就是适配器地址或适配器标识符,与主机所在的地点无关。源地址和目的地址都是48位长。
- 以太网的适配器有过滤功能,它只接收单播帧、广播帧或多播帧。
- 使用集线器可以在物理层扩展以太网(扩展后的以太网仍然是一个网络)。
- 交换式集线器常称为以太网交换机或第二层交换机(工作在数据链路层)。它就是一个 多接口的网桥,而每个接口都直接与某台单主机或另个集线器相连, 且工作在全双工方式。以太网交换机能同时连通许多对的接口,使每一对相互通信的主机都能像独占通信媒体那样,无碰撞地传输数据。
- 高速以太网有100 Mbit/s的快速以太网、吉比特以太网和10 Gbit/s的10吉比特以太网。最近还发展到100吉比特以太网。在宽带接入技术中,也常使用高速以太网进行接入。
第四章 网络层
- TCP/IP体系中的网络层向上只提供简简单灵活的、无连接的、尽最大努力交付的数银报服务。网络层不提供服务质量的承诺,不保证分组文付的时限,所传送的分组可能出错、丢失,重复和失序。 进程之间通信的可靠性由运输层负责。
- IP网是虚拟的,因为从网络层上看,IP网就是一个统一的、抽象的网络(实际上是异构的)。IP 层抽象的互联网屏蔽了下层网络很复杂的细节,使我们能够使用统一的、 抽象的IP地址处理主机之间的通信问题。
- 在互联网上的交付有两种:在本网络上的直接交付(不经过路由器)和到其他网络的间接交付(经过至少一个路由器,但最后一次一 定是直接交付)。
- 一个P地址在整个互联网范围内是唯一的。分类的P地址包括A类、B类和C类地址(单播地址),以及D类地址(多播地址)。E类地址未使用。
- 分类的IP地址由网络号字段(指明网络)和主机号字段(指明主机)组成。网络号字段最前面的类别位指明IP地址的类别。
- IP地址是一种分等级的地址结构。IP地址管理机构在分配IP地址时只分配网络号,而主机号则由得到该网络号的单位自行分配。路由器仅根据目的主机所连接的网络号来转发分组。
- IP地址标志一台主机(或路由器)和一条链路的接口。多归属主机同时连接到两个或更多的网络上。这样的主机同时具有两个或更多的IP 地址,其网络号必须是不同的。由于一个路由器至少应当连接到两个网络,因此一个路由器至少应当有两个不同的IP地址。
- 按照互联网的观点,用转发器或网桥连接起来的若干个局域网仍为一个网络。 所有分配到网络号的网络(不管是范围很小的局域网,还是可能覆盖很大地理范围的广域网)都是平等的。
- 物理地址(即硬件地址)是数据链路层和物理层使用的地址,而IP地址是网络层和以上各层使用的地址,是一种逻辑地址(用软件实现的),在数据链路层看不见数据报的IP地址。
- IP数据报分为首部和数据两部分。首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的(源地址、目的地址、总长度等重要字段都在固定首部中)。一些长度可变的可选字段放在固定首部的后面。
- IP首部中的生存时间字段给出了IP数据报在互联网中所能经过的最大路由器数,可防止IP数据报在互联网中无限制地兜圈子。
- 地址解析协议ARP把IP地址解析为硬件地址,它解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题。ARP的高速缓存可以大大减少网络上的通信量。
- 在互联网中,我们无法仅根据硬件地址寻找到在某个网络上的某台主机。因此,从IP地址到硬件地址的解析是非常必要的。
- 无分类域间路由选择CIDR是解决目前IP地址紧缺的一个好方法。CIDR记法把IP地址后面加上斜线“/”,然后写上前缀所占的位数。前缀(或网络前缀)用来指明网络,前缀后面的部分是后缀,用来指明主机。CIDR把前缀都相同的连续的IP 地址组成一个“CIDR地址块”。IP地址的分配都以CIDR地址块为单位。
- CIDR的32位地址掩码(或子网掩码)由一串1和一串0组成,而1的个数就是前缴的长度。只要把IP地址和地址掩码逐位进行“逻辑与(AND)”运算,就很容易得出网络地址。A类地址的默认地址掩码是255.0.0.0。B类地址的默认地址掩码是255.255.0.0。C类地址的默认地址掩码是255.255.255.0。
- 路由聚合(把许多前缀相同的地址用一个来代替)有利于减少路由表中的项目,减少路由器之间的路由选择信息的交换,从而提高了整个互联网的性能。
- “转发”和“路由选择”有区别。“转发”是单个路由器的动作。“路由选择”是计多路由器共同协作的过程,这些路由器相互交换信息,目的是生成路由表,再从路由表导出转发表。若采用自适应路由选择算法,则当网络拓扑变化时,路由表和转发表都能够自动更新。在许多情况下,可以不考虑转发表和路由表的区别,而都使用路由表这一名词。
- 自治系统(AS) 就是在单一的技术管理下的一组路由器。一个自治系统对其他自治系统表现出的是一个单一的和一致的路由选择策略,
- 路由选择协议有两大类:内部网关协议(或自治系统内部的路由选择协议),如RIP和OSPF;外部网关协议(或自治系统之间的路由选择协议),如BGP-4。
- RIP是分布式的基于距离向量的路由选择协议,只适用于小型互联网。RIP按固定的时间间隔与相邻路由器交换信息。交换的信息是自已当前的路由表,即到达本自治系统中所有网络的(最短)距离,以及到每个网络应经过的下一跳路由器。
- OSPF是分布式的链路状态协议,适用于大型互联网。OSPF只在链路状态发生变化时,才向本自治系统中的所有路由器,用洪泛法发送与本路由器相邻的所有路由器的链路状态信息。“链路状态”指明本路由器都和哪些路由器相邻,以及该链路的“度量”。“度量”可表示费用、距离、时延、带宽等,可统称为“代价”。所有的路由器最终都能建立一个全网的拓扑结构图。
- BGP-4是不同AS的路由器之间交换路由信息的协议,是一种路径向量路由选择协议。BGP力求寻找一条能够到达目的网络(可达)且比较好的路由(不兜圈子),而并非要寻找一条最佳路由。
- 网际控制报文协议ICMP是IP层的协议。ICMP报文作为IP数据报的数据,加上首部后组成IP数据报发送出去。使用ICMP并非为了实现可靠传输。ICMP允许主机或路由器报告差错情况和提供有关异常情况的报告。ICMP报文的种类有两种,即ICMP差错报告报文和ICMP询问报文。
- ICMP的一个重要应用就是分组网间探测PING,用来测试两台主机之间的连通性。PING使用了ICMP回送请求与回送回答报文。
- 要解决IP地址耗尽的问题,最根本的办法就是采用具有更大地址空间的新版本的IP协议,即IPv6。
- IPv6所带来的主要变化是: (1)更大的地址空间(采用128位的地址): (2) 灵活的首部格式: (3)改进的选项: (4) 支持即插即用: ()支持资源的预分配: (6) IPv6首部改为8字节对齐。
- IPv6数据报在基本首部的后面允许有零个或多个扩展首部,再后面是数据。所有的扩展首部和数据合起来叫做数据报的有效载荷或净负荷。
- IPv6数据报的目的地址可以是以下三种基本类型地址之一:单播、多播和多播。
- IPv6的地址使用冒号十六进制记法。
- 向IPv6过渡只能采用逐步演进的办法,必须使新安装的IPv6系统能够向后兼容。向IPv6过渡可以使用双协议栈或使用隧道技术。
- 与单播相比,在一对多的通信中,IP多播可大大节约网络资源。IP 多播使用D类IP地址。IP多播需要使用网际组管理协议IGMP和多播路由选择协议。
- 虚拟专用网VPN利用公用的互联网作为本机构各专用网之间的通信载体。VPN内部使用互联网的专用地址。一个VPN至少要有一个路由器具有合法的全球IP地址,这样才能和本系统的另一个VPN通过互联网进行通信。所有通过互联网传送的数据都必须加密。
- 使用网络地址转换NAT技术,可以在专用网络内部使用专用IP地址,而仅在连接到互联网的路由器使用全球IP地址。这样就大大节约了宝贵的IP地址。
- MPLS的特点: (1)支持面向连接的服务质量: (2) 支持流量工程,平衡网络负载; (3)有效地支持虚拟专用网VPN。
- MPLS在入口结点给每一个IP数据报打上固定长度的“标记”,然后根据标记在第二层(链路层)用硬件进行转发(在标记交换路由器中进行标记对换),因而转发速率大大加快。
- 多协议标签交换(MPLS)是一种用于快速数据包交换和路由的体系,它为网络数据流量提供了目标、路由地址、转发和交换等能力。更特殊的是,它具有管理各种不同形式通信流的机制。MPLS 独立于第二和第三层协议
第五章 运输层
- 运输层提供应用进程间的逻辑通信,也就是说,运输层之间的通信并不是真正在两个运输层之间直接传送数据。运输层向应用层屏蔽了下面网络的细节(如网络拓扑、所采用的路由选择协议等),它使应用进程看见的就是好像在两个运输层实体之间有一条端到端的逻辑通信信道。
- 网络层为主机之间提供逻辑通信,而运输层为应用进程之间提供端到端的逻辑通信。
- 运输层有两个主要的协议: TCP 和UDP.它们都有复用和分用,以及检错的功能。当运输层采用面向连接的TCP协议时,尽管下面的网络是不可靠的(只提供尽最大努力服务),但这种逻辑通信信道就相当于一条全双工通信的可靠信道。当运输层采用无连接的UDP协议时,这种逻辑通信道仍然是一条不可靠信道。
- 运输层用一个16位端口号来标志一个端口。端口号只具有本地意义,它只是为了标志本计算机应用层中的各个进程在和运输层交互时的层间接口。在互联间的不同计算机中,相同的端口号是没有关联的。
- 两台计算机中的进程要互相通信,不仅要知道对方的IP 地址(为了找到对方的计算机),而且还要知道对方的端口号(为了找到对方计算机中的应用进程).
- 运输层的端口号分为服务器端使用的端口号(0-1023指派给熟知端口,1024-49151是登记端口号)和客户端暂时使用的端口号(49152-65535).
- UDP的主要特点是; (1) 无连接: (2)尽最大努力交付: (3) 面向报文: (4)无拥塞控制: (5)支持一对一、一对多、多对一和多对多的交互通信: (6)首部开销小(只有四个字段:源端口、目的端口、长度、检验和)。
- TCP的主要特点是: ()面向连接: (2)每一条TCP连接只能是点对点的(一对一); (3)提供可靠交付的服务: (4) 提供全双工通信: (5) 面向字节流,
- TCP用主机的IP地址加上主机上的端口号作为TCP连接的端点,这样的端点就叫做套接字(socket)或插口。套接字用(IP地址:端口号)来表示,
- 停止等待办议能够在不可靠的传输网络上实现可靠的通信。每发送完一个分组展停止发送,等待对方的确认。在收到确认后再发送下一个分组。分组需要进行编号。
- 超时重传是指只要超过了一段时间仍然没有收到确认,就重传前面发送过的分组(认为刚才发送的分组丢失了)。因此每发送先一个分组需要设置一个超时计时器,其重传时间应比数据在分组传输的平均往返时间更长一些。这种自动重传方式常称为自动重传请求ARQ.
- 在停止等待协议中,若接收方收到重复分组,就丢弃该分组,但同时还要发送确认。
- 连续ARQ协议可提高信道利用率。发送方维持一个发送窗口,凡位于发送窗口内的分组都可连续发送出去,而不需要等待对方的确认。接收方般采用累积确认,对按序到达的最后一个分组发送确认,表明到这个分组为止的所有分组都已正确收到了。
- TCP报文段首部的前20个字节是固定的,后面有4N字节是根据需要而增加的选项(N是整数)。在一个TCP连接中传送的字节流中的每一个字节都按顺序编号。首部中的序号字段值则指的是本报文段所发送的数据的第一个字节的序号。
- TCP首部中的确认号是期望收到对方下一个报文段的第一个数据字节的序号。若确认号为N,则表明:到序号N- 1为止的所有数据都已正确收到。
- TCP首部中的窗口字段指出了现在允许对方发送的数据量。窗口值是经常在动态变化着的。
- TCP使用滑动窗口机制。发送窗口里面的序号表示允许发送的序号,发送窗口后沿的后面部分表示已发送且已收到了确认,而发送窗口前沿的前面部分表示不允许发送。发送窗口后沿的变化情况有两种可能,即不动(没有收到新的确认)和前移(收到了新的确认)。发送窗口前沿通常是不断向前移动的。
- 流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收。
- 在某段时间,若对网络中某一资源的需求超过了该资源所能提供的可用部分,网络的性能就要变坏。这种情况就叫做拥塞。拥塞控制就是防止过多的数据注入到网络中,这样可以使网络中的路由器或链路不致过载。
- 流量控制是一个端到端的问题,是接收端抑制发送端发送数据的速率,以便使接收端来得及接收。拥塞控制是一个全局性的过程,涉及到所有的主机、所有的路由器,以及与降低网络传输性能有关的所有因素。
- 为了进行拥塞控制,TCP的发送方要维持一个拥塞窗口cwnd的状态变量。拥塞窗口的大小取决于网络的拥塞程度,并且动态地在变化。发送方让自己的发送窗口取为拥塞窗口和接收方的接收窗口中较小的一个。
- TCP的拥塞控制采用了四种算法,即慢开始、拥塞避免、快重传和快恢复。在网络层,也可以使路由器采用适当的分组丢弃策略(如主动队列管理AQM),以减少网络拥塞的发生。
- 运输连接有三个阶段,即:连接建立、数据传送和连接释放。
- 主动发起TCP连接建立的应用进程叫做客户,而被动等待连接建立的应用进程叫做服务器。TCP的连接建立采用三报文握手机制。服务器要确认客户的连接请求,然后客户要对服务器的确认进行确认。
- TCP的连接释放采用四报文握手机制。任何-方都可以在数据传送结束后发出连接释放的通知,待对方确认后就进入半关闭状态。当另一方也没有数据再发送时,则发送连接释放通知,对方确认后就完全关闭了TCP连接。
第六章 应用层
- 应用层协议是为了解决某类应用问题,而问题的解决又是通过位于不同主机中的多个应用进程之间的通信和协同工作来完成的。应用层规定了应用进程在通信时所遵循的协议。应用层的许多协议都是基于客户服务器方式的。客户是服务请求方,服务器是服务提供方。
- 域名系统DNS是互联网使用的命名系统,用来把便于人们使用的机器名字转换为IP地址。DNS是一个联机分布式数据库系统,并采用客户服务器方式。
- 域名到IP地址的解析是由分布在互联网上的许多域名服务器程序(即域名服务器)共同完成的。
- 互联网采用层次树状结构的命名方法,任何一台连接在互联网上的主机或路由器,都有一个唯一的层次结构的名字,即域名。域名中的点和点分十进制IP 地址中的点没有关系。
- 域名服务器分为根域名服务器、顶级域名服务器、权限域名服务器和本地域名服务器。
- 文件传送协议FTP使用TCP可靠的运输服务。FTP使用客户服务器方式。一个FTP服务器进程可同时为多个客户进程提供服务。在进行文件传输时,FTP 的客户和服务器之间要建立两个并行的TCP连接:控制连接和数据连接。实际用于传输文件的是数据连接。
- 万维网WWW是一个大规模的、联机式的信息储藏所,可以非常方便地从互联网上的一个站点链接到另一个站点。
- 万维网的客户程序向互联网中的服务器程序发出请求,服务器程序向客户程序送回客户所要的万维网文档。在客户程序主窗口上显示出的万维网文档称为页面。
- 万维网使用统一资源定位符URL来标志万维网上的各种文档,并使每一个文档在整个互联网的范围内具有唯一的标识符URL。
- 万维网客户程序与服务器程序之间进行交互所使用的协议是超文本传送协议HTTP。HTTP使用TCP连接进行可靠的传送。但HTTP协议本身是无连接、无状态的。HTTP/1.1 协议使用了持续连接(分为非流水线方式和流水线方式)。
- 万维网使用超文本标记语言HTML来显示各种万维网页面。
- 万维网静态文档是指在文档创作完毕后就存放在万维网服务器中,在被用户浏览的过程中,内容不会改变。动态文档是指文档的内容是在浏览器访问万维网服务器时才由应用程序动态创建的。
- 活动文档技术可以使浏览器屏幕连续更新。活动文档程序可与用户直接交互,并可连续地改变屏幕的显示。
- 在万维网中用来进行搜索的工具叫做搜索引擎。搜索引擎大体上可划分为全文检索搜索引擎和分类目录搜索引擎两大类。
- 电子邮件是互联网上使用最多的和最受用户欢迎的一种应用。电子邮件把邮件发送到收件人使用的邮件服务器,并放在其中的收件人邮箱中,收件人可随时上网到自己使用的邮件服务器进行读取,相当于“电子信箱”。
- 一个电子邮件系统有三个主要组成构件,即:用户代理、邮件服务器,以及邮件协议(包括邮件发送协议,如SMTP,和邮件读取协议,如POP3和IMAP)。用户代理和邮件服务器都要运行这些协议。
- 电子邮件的用户代理就是用户与电子邮件系统的接口,它向用户提供一个很友好的视窗界面来发送和接收邮件。
- 从用户代理把邮件传送到邮件服务器,以及在邮件服务器之间的传送,都要使用SMTP协议。但用户代理从邮件服务器读取邮件时,则要使用POP3 ( 或IMAP) 协议。
- 基于万维网的电子邮件使用户能够利用浏览器收发电子邮件。用户浏览器和邮件服务器之间的邮件传送使用HTTP协议,而在邮件服务器之间邮件的传送仍然使用SMTP协议。