计算机网络知识点学习总结

第一章 概述

  • 计算机网络(可简称为网络)把许多计算机连接在一起,而互联网则把许多网络连接在一起,是网络的网络。

  • 以小写字母i开始的internet(互联网)是通用名词,它泛指由多个计算机网路互连而成的网络。在这些网络之间的通信协议(即通行规则)可以是任意的。

  • 以大写字母I开始的Internet(互联网)是专用名词,它指当前全球最大的、开放的、有众多网络互连而成的特定互连网,并采用TCP/IP协议族作为通信规则,且其前身是美国的ARPANET。Internet的推荐译名是“英特网”,但是很少使用。

  • 互联网现在采用存储转发的分组交换技术,以及三层ISP结构。

  • 互联网按工作方式可划分为边缘部分和核心部分。主机在网络的边缘部分,其作用是进行信息处理。路由器在网络的核心部分,其作用是按存储转发方式进行分组交换。

  • 计算机通信是计算机中的进程(即运行着的程序)之间的通信。计算机网络采用的通信方式是客户-服务器方式和对等连接方式(P2P)方式。

  • 客户和服务器都是指通信中所涉及的应用进程。客户是服务请求方,服务器是服务的提供方。

  • 按作用的范围的不同,计算机网络分为广域网WAN、城域网MAN、局域网LAN和个人区域网PAN。

    (1)广域网WAN 作用范围几十到几千公里,也称远程网。广域网是互联网的核心部分,任务是通过长距离运送主机发送的数据。连接广域网的各结点交换机的链路是高速链路,有较大的通信容量。(2)城域网MAN 作用范围一般是城市,约5-50km。用来将多个局域网互连,许多城域网采用以太网技术,因此有时也并入局域网范围讨论。(3)局域网LAN 一般用微型计算机或工作站通过高速通信线路相连,地理上局限在较小范围(1km左右)。(4)个人区域网PAN 在个人工作的地方把属于个人使用的电子设备用无线技术连接起来的网络,也称无线个人区域网WPAN,范围很小,大约在10m左右。

  • 计算机网络最常用的性能指标是:速率、宽带、吞吐量、时延(发送时延、传播时延、处理时延、排队时延)、时延宽带积、往返时间和信道(或网络)利用率。

    (1)速率 计算机发出的信号都是数字形式的。网络中速率指数据的传送速率,也称数据率或比特率,一个比特就是二进制数字的一个0或1。(2)带宽 原指某个信号具有的频带宽度(频域称谓),单位是赫兹。计算机网络中,带宽表示网络中某通道传送数据的能力(时域称谓),网络带宽表示单位时间内某信道能通过的最高数据率,单位即数据率的单位bit/s。(3)吞吐量 单位时间内通过某个网络(信道/接口)的实际数据量。受到带宽或网络额定速率的限制。(4)时延 数据从网络(链路)的一端传送到另一端所需的时间,也称迟延或延迟。 1.发送时延:主机或路由器发送数据帧需要的时间,也就是发送数据帧的第一个比特算起,到该帧的最后一个比特 发送完毕所需的时间,也叫传输时延。 发送时延=数据帧长度(bit)/发送速率(bit/s) 2.传播时延:电磁波在信道中传播一定的距离需要花费的时间。传播时延=信道长度(m)/电磁波在信道上的传播速率(m/s)发送时延发生在机器内部的发送器中(一般在网络适配器中),与传输信道的长度(或信号传送的距离)无关。传播时延发生在机器外部的信道媒体上,与信号的发送速率无关。 3.处理时延:主机或路由器收到分组时要花费一定时间进行处理。 4.排队时延:分组进入路由器后要再输入队列中排队等待处理。对于高速网络链路,提高的仅是数据的发送速率,而不是比特在链路上的传播速率。(5)时延带宽积 =传播时延x带宽,又称以比特为单位的链路长度,表示链路可容纳多少个比特。(6)往返时间RTT 有效数据率=数据长度/(发送时间+RTT)(7)利用率 有信道利用率和网络利用率,信道利用率指某信道有百分之几的时间是被利用的(有数据通过),完全空闲的信道利用率为0。网络利用率时全网络的信道利用率的加权平均值。网络当前时延D=网络空闲时延D0/(1-利用率U)。信道或网络的利用率过高会产生非常大的时延

  • 网络协议即协议,是为进行网络中的数据交换而建立的规则。计算机网络的各层及其协议的集合,称为网络的体系结构。

  • 五层协议的体系结构由应用层、运输层、网络层(或网际层)、数据链路层和物理层组成。运输层最重要的协议是TCP和UDP协议,而网络层最重要的协议是IP协议。

    OSI的七层协议体系结构概念清楚,理论完整,但既复杂又不实用。TCP/IP体系结构则不同,TCP/IP是一个四层体系结构,包含应用层、运输层、网际层和网络接口层。从实质上讲TCP/IP只有最上面的三层,因为网络接口层没有具体内容。因此学习计算机网络原理时往往采取折中方法,综合OSI和TCP/IP的优点,采用一种只有五层协议的体系结构。(1)应用层体系结构中的最高层,任务是通过应用进程间的交互来完成特定网络应用。应用层协议定义的是应用进程间通信和交互的规则。应用层协议:DNS、HTTP、SMTP。应用层数据单元:报文(message)。(2)运输层运输层的任务就是负责向两台主机中进程之间的通信提供通用的数据传输服务。由于一台主机可同时运行多个进程,因此运输层有复用和分用的功能。复用就是多个应用层进程可同时使用下面运输层的服务,分用是运输层把收到的信息分别交付上面应用层中的相应进程。运输层主要使用以下两种协议:传输控制协议TCP:提供面向连接的、可靠的数据传输服务,数据传输单位是报文段(segment)。用户数据报协议UDP:提供无连接的、尽最大努力的数据传输服务(不保证数据传输的可靠性),数据传输单位是用户数据报。(3)网络层网络层负责为分组交换网上的不同主机提供通信服务,网络层把运输层产生的报文段或用户数据报封装成分组或包进行传送。在TCP/IP体系中,网络层使用IP协议,因此分组也叫做IP数据报,或简称数据报。无论哪一层传送的数据单元,都可笼统地用分组来表示,运输层的用户数据报UDP和网络层的IP数据报不同。网络层的另一个任务即选择合适的路由,使源主机运输层传下来的分组,能够通过网络中的路由器找到目的主机。网络层中的网络不是通常提到的具体网络,而是计算机网络体系结构模型中的第三层的名称。互联网由大量的异构网络通过路由器相互连接起来。互联网使用的网络层协议是无连接的网际协议IP和许多种路由选择协议,因此互联网的网络层也叫做网际层或IP层。(4)数据链路层简称为链路层。两个相邻结点之间传送数据时,数据链路层将网络层交下来的IP数据报组装成帧(framing),在两个相邻结点之间的链路上传送帧(frame)。每一帧包括数据和必要的控制信息(如同步信息、地址信息、差错控制等)。接收数据时,控制信息使接收端能够知道一个帧从哪个比特开始到哪个比特结束。还使接收端能够检测收到的帧中有无差错,如发现差错就简单地丢弃。(5)物理层传送的数据单位是比特。物理层要考虑用多大的电压代表1或0,以及接收方如何识别发送方所发送的比特。物理层还要确定连接电缆的插头应有多少根引脚以及各引脚如何连接。传递信息所利用的物理媒体,如双绞线、同轴电缆、光缆、无线信道等并不在物理层协议内而是其下面。TCP/IP并不一定单指TCP和IP两个具体的协议而是表示互联网所使用的整个TCP/IP协议族。

第二章 物理层

  • 物理层的主要任务就是确定与传输媒体的接口有关的一些特性,如机械特性、电气特性、功能特性和过程特性。

    将物理层的主要任务描述为确定与传输媒体接口有关的一些特性:(1)机械特性:指明接口所用接线器的相关规定。(2)电气特性:指明接口电缆的各条线上出现的电压范围。(3)功能特性:指明某条线上出现的某一电平的电压的意义。(4)过程特性:指明对于不同功能的各种可能事件的出现顺序

  • 一个数据通信系统可划分为三大部分,即源系统、传输系统和目的系统。源系统包括源点(或源站、信源)和发送器,目的系统包括接收器和终点(或目的站,或信宿)。

  • 通信的目的是传送消息。如语音、文字、图像、视频等都是消息。数据时运送消息的实体。信号则是数据的电气或电磁的表现。

  • 根据信号中代表消息的参数的取值方式的不同,信号可分为模拟信号(或连续信号)和数字信号(或离散信号)。代表数字信息号不同离散值的基本波形称为码元。

    根据信号中代表消息的参数的取值方式不同,信号可分为以下两大类:(1)模拟信号,或连续信号 代表消息的参数的取值是连续的。用户家中的调制解调器到电话端局之间的用户线上传送的就是模拟信号。(2)数字信号,或离散信号 代表消息的参数的取值是离散的。用户家中的计算机到调制解调器之间,或在电话网中继线上传送的就是数字信号。在使用时间域的剥削表示数字信号时,代表不同离散数值的基本波形称为码元。二进制编码时,只有两种不同的码元,一种代表0状态一种代表1状态。

  • 根据双方信息交互的方式,通信可以划分为单向通信(或单工通信)、双向交替通信(或半双工通信)和双向同时通信(或全双工通信)。

    从通信双方的信息交互方式来看,有以下三种基本方式:(1)单向通信 又称单工通信,即只能有一个方向的通信而没有反方向的交互。例如:无线电广播、有线电广播,电视广播。(2)双向交替通信 又称半双工通信,即通信双方都可以发送信息,但不能双方同时发送。一方发送而另一方接收,过一段时间后可以再反过来。(3)双向同时通信 又称全双工通信,即通信的双方可以同时发送和接收信息。单向通信只需要一条信道,而双向交替通信或双向同时通信都需要两个信道(每个方向各一条)。双向同时通信的传输效率最高。

  • 来自信源的信号叫做基带信号。信号要在信道上传输要经过调制。调制有基带调制和带通调制之分,最基本的带通调制的方法有调幅、调频和调相。还有更复杂的调制方法,如正交振幅调制。

    调制可分为两大类。一类仅对基带信号的波形进行变换,使它与信道特性相适应,变换后的信号仍是基带信号,这类调制叫基带调制。由于这种调制时把数字信号转换成另一种形式的数字信号,也成为编码(coding)。另一类调制则需要使用载波(carrier)进行调制,把基带信号的频率范围搬移到较高的频段,并转换为模拟信号。经过载波调制的信号为带通信号,使用载波的调制称为带通调制。

    常用编码方式:(1)不归零制 正电平=1,负电平=0(2)归零制 正脉冲=1,负脉冲=0(3)曼彻斯特编码 位周期中心的向上跳变=0,位周期中心的向下跳变=1,也可反过来定义(4)差分曼彻斯特编码 每一位的中心处始终有跳变,位开始边界有跳变=0,位开始边界没有跳变=1基本的带通调制方法:(1)调幅(AM)载波的振幅随基带数字信号变化,例如1或0分别对应无载波和有载波输出。(2)调频(FM) 载波的频率随基带数字信号变化,例如1或0分别对应频率f1或f2。(3)调相(PM) 载波的初始相位随基带数字信号变化,例如1或0分别对应相位0度或180度。为达到更高信息传输速率,必须采用技术上更为复杂的多元制的振幅相位混合调制,如正交振幅调制QAM。

  • 要提高数据在信道上的传输数率,可以使用更好的传输媒体,或使用先进的调制技术。但是数据传输率不可能任意地提高。

  • 传输媒体可分为两大类,即导引型传输媒体(双绞线、同轴电缆或光纤)和非导引型传输媒体(无线或红外线或大气激光)。

  • 常用的信道复用技术有频分复用、时分复用、统计时分复用、码分复用和波分复用(光的频分复用)。

频分复用

 

时分复用

 

 

统计时分复用

 

波光复用

 

  • 数字通信的优点:虽然信号在信道上产生失真,但接收端只要从失真的波形中识别出原来的信号,那么对通信质量就没有影响。码元传输速率越高,信号传输的距离越远,或噪声干扰越大,传输媒体质量越差,在接收端的波形失真就越严重。限制码元在信道上传输速率的因素有以下两个:(1)信道能通过的频率范围在接收端收到的信号波形失去了码元之间的清晰界限,这种现象叫做码间串扰。1924年内奎斯特推导出了奈式准则。在任何信道中,码元传输的速率是有上限的,传输速率超过此上限,就会出现严重的码间串扰问题,使接收端对码元的判决(识别)成为不可能。信道频带越宽,能通过的信号高频分量越多,那么就可以用更高速的速率传送码元而不出现码间串扰。(2)信噪比噪声存在于所有电子设备和通信设备中,由于噪声随机产生,它的瞬时值有时会很大,因此噪声会使接收端对码元的判决产生错误(1误判为0或0误判为1)。噪声影响是相对的,信号较强噪声的影响就较小。信噪比即信号的平均功率和噪声的平均功率之比,记为S/N,用分贝(dB)作为度量单位。信噪比(dB)=10 log10(S/N)(dB)1948年,香农推导出了香农公式,香农公式指出信道的极限信息传输速率C是C=W log2(1+S/N)W为信道的带宽(以Hz为单位),S为信道中所传信号的平均功率,N为信道内部的高斯噪声功率。香农公式表明,信道的带宽或信道中的信噪比越大,信息的极限传输速率就越高。该公式的意义在于:只要信息传输速率低于信道的极限信息传输速率,就一定存在某种方法来实现无差错的传输。若频带宽度已确定的信道,如果信噪比也不能提高,可让每个码元携带更多比特的信息量以提高信息的传输速率。

第三章 数据链路层

  • 链路是从一个结点到相邻结点的一段物理线路,数据链路则是在链路的基础上增加了一些必要的硬件(如网路适配器)和软件(如协议的实现)。

  • 数据链路层使用的信道主要有点对点信道和广播信道两种。

  • 数据链路层传送的协议单元是帧。数据链路层的三个基本问题则是:封装成帧、透明传输和差错检测。

    数据链路层协议有许多种,但有三个基本的共同问题:封装成帧、透明传输和差错控制。(1)封装成帧封装成帧(framing)就是在一段数据的前后分别添加首部和尾部,这样就构成了一个帧,接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。一个帧的帧长等于数据长度部分(IP数据报构成)加上帧首部和帧尾部的长度。首部和尾部的一个重要作用就是帧定界(即确定帧的界限)。此外首部和尾部还包括许多控制信息,在发送帧时,是从帧首部开始发送的。为提高帧传输效率,应使帧的数据部分长度仅可能大于首部和尾部,但每一种链路层协议都规定了所能传送的帧的数据部分长度上限——最大传输单元MTU(Maximum Transfer Unit)。当数据由可打印的ASCII码组成的文本文件时,帧定界可以使用特殊的帧定界符。控制字符SOH(Start Of Header)放在帧的最前面,表示帧的首部开始,另一个控制字符EOT(End Of Transmission)表示帧的结束。SOH和EOT都是控制字符的名字,它们的16进制编码分别是01和04。当数据在传输中出现差错时,帧定界的作用更加明显。假定发送端在尚未发送完一个帧时发生故障,中断了发送之后恢复正常,从头开始发送刚才未发完的帧,由于使用了帧定界符,接收端就知道前面收到的数据是不完整的帧(只有SOH而没有EOT),必须丢弃。(2)透明传输当传送帧是用文本文件组成的帧时,其数据部分不会出现SOH或EOT这样的帧界定控制符。因此不管从键盘上输入什么字符都可以放在这样的帧中传输过去,这样的传输就是透明传输。但当数据部分时非ASCII码的文本文件时,情况就不同了。如果数据中某个字节的二进制代码恰好和SOH或EOT一样,数据链路层会错误地找到帧的边界收下部分帧而把剩下的数据丢弃。透明是一个重要术语,它表示:某一个实际存在的事物看起来却好像不存在一样。在数据链路层透明传送数据,表示无论什么样的比特组合的数据,都能按原样没有差错地通过数据链路层。因此对传送数据来说,这些数据就“看不见”数据链路层有什么妨碍数据传输的东西。为解决透明传输,必须设法使数据中可能出现的控制字符SOH和EOT在接收端不被解释为控制字符。具体的方法是:发送端的数据链路层在数据中的SOH或EOT之前插入一个转义字符ESC(其16进制编码为1B),而在接收端的数据链路层在把数据送往网络层之前删除这个ESC。这种方法称为字节填充或字符填充。如果转义字符也出现在数据,那就在ESC前再加一个ESC。(3)差错控制比特在传输过程中可能产生差错:1可能变成0,0可能变成1,这就叫比特差错。比特差错是传输差错的一种。在一段时间内,传输错误的比特占所传输比特总数的比率就叫误码率BER(Error Bit Rate)。误码率和信噪比有关,如果设法提高信噪比,误码率就会减小。为保证数据传输可靠性,必须采用各种差错检测措施,目前在数据链路层广泛使用了循环冗余检测CRC的检错技术。在发送端,先把数据划分为组,假定每组k个比特。假定待传送数据M=101001(k=6),CRC运算就是在M的后面添加n位供差错检测用的冗余码,然后构成一个(k+n)位的帧发送出去。n位冗余码用以下方法得出。用二进制的模2运算进行2n乘M,相当于在M后面添加n个0,得到的(k+n)位数除以事先约定的长度为(n+1)的除数P得到商Q和余数R(n位,比除数少一位)。例M=101001,P=1101即n=3,经模2除法得出的结果是商Q=110101(商无用),R=001。这个余数R就作为冗余码拼接在M的后面发送出去,这种为了检错而添加的冗余码称为帧检测码FCS,因此加上FCS后发送的帧是101001001(即2nM+FCS)。接收端把接收到的数据以帧为单位进行CRC校验:把收到的每一个帧都出以同样的除数P(模2运算),然后检查余数R。如果传输无差错,那么R=0。若R=0,判定帧没有差错,接收,如果R不等于0,则判断帧有差错并舍弃。一种较简便的方法是用多项式来表示循环冗余检验过程。例如用P(X)=X3+X2+1表示1101。多项式P(X)称为生成多项式。在数据链路层,发送端帧检验序列FCS和接收端CRC检验都是用硬件完成的,处理迅速,不会延误数据的传输。从上述讨论可知如果不以帧为单位传送数据就无法加入冗余码来进行差错检验,因此要在数据链路层进行差错检验就必须把数据划分位帧,每一帧都加上冗余码,一帧一帧地发送然后在接收端逐帧进行差错检验。若仅使用CRC,则只能做到对帧的无差错接受,即凡是接收端数据链路层接受的帧,我们都能以非常接近1的概率认为这些帧在传输中没有出现差错。出现差错的帧虽然曾接收到了但最终会被丢弃。差错传输分类两大类:一类是前述最基本的比特差错,而另一类传输差错更复杂,就是收到的帧没有比特差错,但出现了帧丢失、帧重复或帧失序。过去OSI的观点是:必须让数据链路层向上提供可靠传输,因此在CRC的基础上增加了帧编号、确认和重传机制。收到正确的帧就要向发送端发送确认,发送端未在时限内收到对方确认就会进行重传直到收到对方确认位置。但现在的通信线路质量已大大提高,互联网以采用了区别对待的方法。对通信质量良好的有线传输链路,数据链路层协议不使用确认和重传机制,即不要求向上提供可靠的传输服务。如果在数据链路层传输数据时出现差错并需要更正,那么改正差错的任务交给上层协议(如运输层的TCP)来完成。对通信质量较差的无线传输链路,数据链路层协议使用确认和重传机制,向上提供可靠的服务。实践证明,这样做可以提高通信效率。

  • 循环冗余检验CRC是一种检错方法,而帧检验序列FCS是添加在数据后面的冗余码。

  • 点对点协议PPP是数据链路层使用最多的一种协议,他的特点是:简单;只检测差错,而不是纠正差错;不使用序号,也不进行流量控制;可同时支持多种网络层协议。

  • PPPoE是为宽带上网的主机使用的链路层协议。

  • 局域网的优点是:具有广播功能,从一个站点可以访问全网;便于系统的扩展和逐渐演变;提高了系统的可靠性、可用性和生存型。

  • 局域网可按网络拓扑分类:(1)星形网。由于集线器的出现和双绞线大量用于局域网中,星形以太网以及多级星形结构的以太网获得了广泛应用。(2)环形网。(3)总线网,各站直接连在总线上。以传统以太网最为著名。

  • 共享通信媒体资源的方法有二:一是静态划分信道(各种复用技术),二是动态媒体接入控制,又称为多点接入(随机接入和受控接入)

    局域网工作的层次跨越了数据链路层和物理层,不仅与数据链路层有关。共享信道解决众多用户合理方便共享通信媒体资源的两种方法:(1)静态划分信道,频分复用FDM、时分复用TDM、波分复用WDM和码分复用CDM等。用户只要分配了信道就不会和其他人冲突,但代价高不适合局域网。(2)动态媒体介入控制,又称多点接入,特点是信道并非在用户通信时固定分配给用户,又分为两类:①随机接入,特点是所有用户可随机发送信息。如果恰好由两个或以上用户在同一时刻发送信息,在共享媒体上会发生碰撞(冲突)。②受控接入,特点是用户不能随机发送而必须服从控制。代表由分散控制的令牌环局域网和集中控制的多点线路探寻,或称为轮询。

  • IEEE802委员会曾把局域网的数据链路层拆分成两个子层,即逻辑链路控制(LLC)子层(与传输媒体无关)和媒体接入控制(MAC)子层(与传输媒体有关)。但现在LLC子层已成为历史。

  • 计算机与外界局域网通信要通过通信适配器(或网络适配器),它又称为网络接口或网卡。计算机的硬件地址就在适配器的ROM中。

    适配器的作用:

    (1)进行串行/并行控制

    (2)对数据进行缓存

    (3)在计算机的操作系统安装设备驱动程序

    (4)实现以太网

  • 以太网采用无连接的工作方式(不必建立连接就可以直接发送数据),对发送的数据帧不进行编号,也不要求对方发回确认。目的站收到有差错帧就把它丢掉,其他什么也不做。

    以太网发送的数据都使用曼彻斯特编码的信号。二进制基带数字信号的问题是出现一长串的连0或连1时接收端就无法从收到的比特流中提取同步位。曼彻斯特编码保证了每个码元的正中间出现一次电压转换,而接收端就利用这种转换方便地提取同步信号。缺点是所占的频带宽度增加了一倍。

  • 以太网采用的协议是具有冲突检测的载波监听多点接入CSMA/CD。协议的要点是:发送前先监听,边发送边监听,一旦发现总线上出现了碰撞,就立即停止发送。然后按照退避算法等待一段时间后再发送。因此,每个站在自己发送数据之后的一小段时间内,存在遭遇碰撞的可能性。以太网各站点都平均地竞争以太网信道。

    CSMA/CD协议的要点:(1)准备发送:适配器从网络层获得一个分组,加上以太网的首部和尾部,组成以太网帧,放入适配器的缓存中。但在发送前必须先检测信道。(2)检测信道:若检测信道忙,应不停地检测,直到信道转为空闲。若检测信道空闲,并在96比特时间内信道保持空闲(保持了帧间最小间隔),就发送这个帧。(3)在发送过程中仍不停地检测信道,即网络适配器要边发送边监听。这里只有两种可能性:①发送成功:在争用期未检测到碰撞,发送成功后什么也不做返回(1)。②发送失败:在争用期内检测到碰撞,立即停止发送数据,按规定发送人为干扰信号。适配器执行指数退避算法,等待r倍512比特时间后回到步骤(2)。若重传16次仍不能成功,停止重传上报错误。

  • 传统的以太网基本上都是使用集线器的双绞线以太网。 这种以太网在物理上是星形网,但是在逻辑上则是总线形网。集线器工作在物理层,它的每个接口仅仅简单地转发比特,不进行碰撞检测。

  • 扩展以太网更常用的方法是在数据链路层进行。以太网交换机的每个接口都直接与一个单台主机或另一个以太网交换机相连,并且一般都工作在全双工方式。相互通信的主机都是独占传输媒体,无碰撞地传输数据。

  • 以太网的硬件地址,即MAC地址实际上就是适配器地址或适配器标识符,与主机所在地无关。源地址和目的地址都是48位长。

  • 以太网的适配器有过滤功能,他只接受单播帧、广播帧或多播帧。

  • 使用集线器在物理层扩展以太网.(扩展后的以太网仍是一个网络)。

  • 高速以太网有100Mbit/s地快速以太网,吉比特以太网和10Gbit/s地10吉比特以太网。最近还发展到100吉比特以太网。在宽带接入技术中也常使用高速以太网进行接入。

第四章 网络层

  • TCP/IP体系中的网络层向上层只提供简单灵活的、无连接的、尽最大努力交付的数据包服务。网络层不提供服务质量的承诺,不保证分组交付的时限,所传送的分组可能出错、丢失、重复和失序。进程之间的通信的可靠性由运输层负责。

  • IP网是虚拟的,因为从网络层上看,IP网就是一个统一的、抽象的网络(实际上是异构的)。IP层抽象的互联网屏蔽了下层网络的很多细节,使我们能够使用统一的、抽象的IP地址处理主机之间的通信问题。

    由于参加互连的计算机网络都是用相同的网际协议IP,因此互连起来的计算机网络可以看成一个虚拟互连网络。所谓虚拟互连网络也就是逻辑互连网络,他的意思是互连起来的各种物理网络的异构性本来是客观存在的,但是我们利用IP协议就可以使这些性能各异的网络在网络层上看起来好像是一个统一的网络。这种使用ip协议的虚拟互连的网络可简称IP网。

  • 由于用户需求是多样的,没有一种单一的网络能适应所有用户的需求。将网络互相连接起来要使用一些中间设备,根据层次可划分为:(1)物理层的中间设备叫做转发器(2)数据链路层的中间设备叫做网桥或桥接器(3)网络层的中间设备叫路由器(4)网络层以上的中间设备叫网关,网关连接不兼容的系统要在高层进行协议转换

  • 互联网上的交付有两种:本网络上直接交付(不经路由器)和到其他网络的间接交付(经过至少一个路由器,最后一次一定是直接交付)。

  • 一个IP地址在整个互联网范围内是惟一的。分类的IP地址包括A类、B类和C类地址(都是单播地址),以及D类地址(多播地址)。E类地址未使用。

    分类的IP地址由网络号字段(指明网络)和主机号字段(指明主机)组成。网络号最前面的类别位指明IP地址的类别。

  • IP地址是一种分等级的地址结构。IP地址管理机构在分配IP地址时只分配网络号,而主机号则由得到该网络号的单位自行分配。路由器仅根据目的主机所连接的网络号来转发分组。

  • IP地址是标志一台主机或路由器和一条链路的接口。当一台主机同时连到两个网络上该主机就必须具有两个相应的IP地址,称为多归属主机。一个路由器至少应当连接到两个网络,因此一个路由器至少应有两个不同的IP地址。

  • 按照互联网的观点,用转发器或网桥连接起来的若干局域网仍为一个网络,因为这些局域网都具有同样的网络号。具有不同网络号的局域网必须使用路由器进行互连。

  • 物理地址(即硬件地址)是数据链路层和物理层使用的地址,而IP地址是网络层和以上各层使用的地址,是一种逻辑地址(用软件实现的),在数据链路层看不见数据报的IP地址。

  • IP数据报分为首部和数据两部分。首部的前一部分是固定的,共20个字节,是所有的IP数据报必须具有的(源地址、目的地址、总长度等重要字段都在固定首部中)。一些长度是可变的可选字段放在固定首部的后面。

IP数据报的格式一个IP数据报由首部和数据两部分组成,首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的。在首部的固定部分的后面是一些可选字段,长度可变。IP数据报首部固定部分中的各字段

(1)版本 占4位,指IP协议的版本。通信双方所用版本必须一致。

(2)首部长度 占4位

(3)区分服务 占8位,在旧标准中叫做服务类型,一般情况不使用

(4)总长度 指首部和数据长度之和,16位,因此数据报的最大长度为216-1为65535字节。在进行分片时,数据报首部中的总长度字段是指分片后的每一个分片的首部长度与该分片的数据长度之和。

(5)标识 占16位,IP软件在存储器中维持一个计数器,每产生一个数据报,计数器加1,并将此值赋给标识字段。当数据报长度由于超过MTU而必须分片后,标识字段的值就被复制到所有的数据报片的标识字段,相同标识字段的值使分片后的各数据报片最后能正确地重装为原有的数据报。

(6)标志 占3位,只有2位有意义。最低位MF,1表示还有分片,0表示无。中间一位记作DF,意思是不能分片,DF=0时才允许分片。

(7)片偏移 占13位,较长的分组在分片后,某片在原分组中地相对位置。除最后一个数据报片外,每个分片地长度一定是8字节的整数倍。

(8)生存时间 占8位 常用英文缩写TTL,表明数据报在网络中的寿命。每经过一个路由器就减去其消耗的时间,为0时丢弃。后来功能改为“跳数限制”(但名称不变),现在TTL的单位不是秒而是跳数。数据报能在互联网中经过的路由器最大数值为255,若初值设1则只能在本局域网传送。

(9)协议 占8位 指出此数据报携带的数据使用何种协议,以便使目的主机IP层知道应该将数据上交给哪个协议处理。

(10)首部检验和 占16位,只检验数据报的首部不包括数据部分,主要使用反码。

(11)源地址 占32位。

(12)目的地址 占32位。

IP数据报首部的可变部分用来支持排错、测量以及安全等措施,内容丰富。

  • IP首部中的生存时间字段给出了IP数据在互联网中所能经过的最大路由器数,可防止IP数据报在互联网中无限制的兜圈子。

  • IP层转发分组的流程

在路由表中,对每一条路由最主要的是以下两个信息:(目的网络地址,下一跳地址)。IP数据报最终一定可以找到目的主机所在目的网络上的路由器(可能需要通过多次间接交付)。只有到达最后一个路由器时,才试图向目的主机进行直接交付。虽然互联网上所有的分组转发都是基于目的主机所在的网络,但在大多数情况下都允许有这样的特例,即对特定的目的主机指明一个路由,这种路由叫做特定主机路由。路由器还可采用默认路由以减小路由表所占空间和搜索路由表所用的时间。当路由器收到一个待转发的数据报,在从路由表中得出下一跳路由器的IP地址后,不是把这个地址填入IP数据报,而是交送数据链路层的网络接口软件。网络接口软件把下一跳路由器的IP地址转换成硬件地址(必须使用ARP),并将此硬件地址放在链路层MAC帧的首部,然后根据这个硬件地址找到下一跳路由器。

归纳分组转发算法如下:(1)从数据报首部提取出目的主机的IP地址D,得出目的网络地址N。

(2)若N就是与此路由器直接相连的某网络,则直接交付,否则间接交付,执行(3)。

(3)若路由表中有目的地址为D的特定主机路由,则把数据报传送给路由表中所指明的下一跳路由器,否则执行(4)。

(4)若路由表中有到达网络N的路由,则把数据报传送给路由表中所指明的下一跳路由器,否则执行(5)。

(5)若路由表有默认路由,则把数据报传送给路由表中所指明的默认路由器,否则执行(6)。

(6)报告转发分组出错。

  • 地址解析协议ARP把IP地址解析为硬件地址,他解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题。ARP高速缓存可以大大减少网络上的通信量

下图画的是三个局域网用两个路由器 R1和R2互连起来。现在主机H1要和主机H2通信。这两台主机的IP地址分别是IP1和IP2,而它们的硬件地址分别为HA1和HA2 (HA表示Hardware Adress)。通信的路径是: H1一经过R1转发再经过R2转发一H2。路由器R1,因同时连接到两个局域网上,因此它有两个硬件地址,即HA3和HA4。同理,路由器R2也有两个硬件地址HA5和HA6。

IP1 - HA1 IP2 - HA3

IP1 - HA4 IP2 - HA5

IP1 - HA6 IP2 - HA2

因此也并不一定是真正的映射

地址解析协议ARP用来寻找已知IP地址主机的硬件地址。

  • ARP在主机ARP高速缓存中存放一个从IP地址到硬件地址的映射表,并且这个映射表还经常动态更新(新增或超时删除)。每一台主机都设有一个ARP高速缓存,里面有本局域网上的各主机和路由器的IP地址到硬件地址的映射表,这些都是该主机目前知道的一些地址。当主机A要向本地局域网的某台主机B发送IP数据报时,先在其ARP高速缓存查看有无主机B的IP地址,如有就在ARP高速缓存中查出其对应的硬件地址再把它写入MAC帧,通过局域网把MAC帧发往此硬件地址。若差不到主机B的IP地址,主机A就自动运行ARP,然后按以下步骤查出主机B的IP地址:(1)ARP进程在本局域网上广播发送一个ARP请求分组,ARP分组的主要内容是:我的IP地址是…,我的硬件地址是…,我想知道IP地址为…的硬件地址。(2)在本局域网上的所有主机上运行的ARP进程都收到此ARP请求分组。(3)主机B的IP地址与ARP请求分组中要查询的IP地址一致,收下这个ARP请求分组,并向主机A发送ARP响应分组。ARP响应分组的主要内容是:我的IP地址是…,我的硬件地址是…。ARP请求分组是广播,但响应是单播。(4)主机A收到ARP响应后,在ARP高速缓存中写入主机B的IP地址到硬件地址的映射。为减小网络通信量,当A发送其ARP请求时就把自己的IP地址到硬件地址的映射写入ARP请求分组,B收到后将其写入自己的ARP高速缓存。ARP对保存在高速缓存中的每一个映射地址项目都设置生存时间,超过生存时间的项目将被删除。ARP是解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题,若不在一个局域网上就无法解析。从IP地址到硬件地址的解析是自动进行的,主机的用户对这种过程是不知道的。由于全世界存在各种网络,它们使用不同的硬件地址。要使这些异构网络能相互通信就必须进行非常复杂的硬件地址转换工作,IP编址解决了此问题,因此不直接用硬件地址而额外使用抽象的IP地址。

  • 互联网中,我们无法仅根据硬件地址寻找到某个网络上的某台主机。因此从IP到硬件地址的解析是非常必要的。

  • 从两级IP 地址到三级IP 地址 划分子网

    划分子网纯属一个单位内部的事情。单位对外仍然表现为没有划分子网的网络。

    从主机号借用若干个位作为子网号subnet-id,而主机号host-id也就相应减少了若干个位。

  • 子网掩码从IP数据报的首部无法看出源主机或目的主机所连接的网络是否进行了子网划分,因此需要使用子网掩码。使用子网掩码的好处:不管网络有没有划分子网,只要把子网掩码和IP地址进行逐位的与运算,就立即得出网络地址来。

规则:

子网掩码长度=32位

某位=1:IP地址中的对应位为网络号和子网号

某位=0:IP地址中的对应位为主机号

如果一个网络不划分子网,那么该网络的子网掩码就使用默认的子网掩码。A类地址的默认子网掩码是255.0.0.0。B类地址的默认子网掩码是255.255.0.0。C类地址的默认子网掩码是255.255.255.0。子网掩码是一个网络或一个子网的重要属性。路由器在和相邻路由器交换路由信息时,必须把自己所在的网络或子网的子网掩码告诉相邻路由器。

  • 无分类域间路由选择(无分类编制)CIDR是解决目前IP地址紧缺的一个好办法。CIDR记法把IP地址后面加上斜线“/”,然后写上前缀所占的位数。前缀(或网络前缀)用来指明网络,前缀后面部分是后缀,用来指明主机。CIDR把前缀相同的连续的IP地址组成一个“CIDR地址块”。IP地址的分配都以CIDR地址块为单位。
  • 路由聚合(把许多前缀相同的地址用一个来代替)有利于减少路由表中的项目,减少路由器之间的路由选择信息的交换,从而提高整个互联网的性能。

  • “转发”和“路由选择”的有区别 。

    转发是单个路由器的动作。

    路由选择是许多路由器共同协作的过程,这些路由器相互交换信息,目的是生成路由表,再从路由表导出转发表表。若采用自适应路由选择算法,则当网络拓扑变化时,路由表和转发表都能够自动更新。许多情况下,可以不考虑转发表和和路由表的区别,而使用路由表这一词。

  • 自治系统(AS)就是在单一的技术管理下的一组路由器。一个自治系统对其他自治系统表现出的是一个单一的和一致的路由选择策略。

  • 路由选择协议有两大类:内部网关协议(或自治系统内部的路由选择协议),如RIP和OSPF;外部网关协议(自治系统外部的路由选择协议),如BGP-4.

第五章 运输层

  • 运输层提供应用进程间的逻辑通信,也就是说,运输层之间的通信并不是真正在两个运输层之间直接传送数据。运输层向应用层屏蔽了下面的网络的细节(如网络拓扑、所采用的路由选择协议等),它使应用进程看见的就是好像在两个运输实体之间有一条端到端的逻辑通信信道。

  • 网络层为主机之间提供逻辑通信,而运输层为应用进程之间提供端到端的逻辑通信。

  • 运输层有两个主要的协议:TCP和UDP。它们都有分用和复用,以及检错的功能。当运输层采用面向连接的TCP协议时,尽管下面的网络是不可靠的(只提供尽最大努力服务),但这种逻辑通信信道就相当于一条全双工通信的可靠信道。当运输层采用无连接的UDP协议时,这种逻辑通信信道仍是一条不可靠信道。

  • 运输层用一个16位的端口号来标志一个端口。它只是为了标志本地计算机应用层中的各个进程在和运输层交互时的层间接口。在互联网的不同计算机中,相同的端口号是没有关联的。

  • 两台计算机中的进程要互相通信,不仅要知道对方的IP地址(为了找到对方的计算机),而且还要知道对方的端口号(为了找到对方计算机中的应用进程)

  • 运输层的端口号分为服务端使用的端口号(0~1023指派给熟知的端口号,1024~49151是登记端口号)和客户端暂时使用的端口号(49152~65535)。

  • UDP的主要特点:(1)无连接;(2)尽最大努力交付:(3)面向报文;(4)无拥塞控制:(5)支持一对一、一对多、多对一和多对多的交互通信;(6)首部开销小(只有四个字段:源端口、目的端口、检验和)。

  • TCP的主要特点:(1)面向连接的;(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协议。

    • 简单网络管理协议SNMP由三部分组成,即(1)SNMP本身,负责读取和改变各代理中的对象名及状态数值;(2)管理信息结构SMI,定义命名对象和定义对象类型的通用规则,以及把对象和对象的值进行编码的基本编码规则BER;(3)管理信息库MIB,在被管理的实体中创建命名对象,并规定了其类型。

    • 系统调用接口是应用程序的控制权和操作系统的控制权进行转换的一个接口,又称为应用编程接口API.API就是应用程序和操作系统之间的接口。

    • 目前P2P工作方式下的文件共享在互联网流量中已占据最大的份额,比万维网应用所占的比例大的多。

    • BT是一种很流行的P2P应用。BT采用“最稀有的优先”技术,可以尽早把最稀有的文件块收集到。此外,凡有当前以最高数据率向某个对等方传送文件块的相邻对等方,该对等方就优先把所有请求的文件块传送给这些相邻的对等方。这样做的结果是,这些对等方相互之间都能够以令人满意的速率交互文件块。

    • 当对等的数量很大的时,采用P2P方式下载大文件,要比传统的客户---服务器方式快很多。

    • P2P应用中,广泛使用的索引和查找技术是分布式散列表DHT.

     

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值