非计算机专业 《计算机网络 第八版》 最重点总结(期末闭卷速过高分)

计算机网络知识点总结:

第一章 概论——

1.网络边缘核心

网络边缘部分:所有连接在互联网上的主机组成,是用户直接使用的,用来进行通信(传送数据、音频、或者视频)和资源共享。

这些处在边缘部分的主机称为端系统,可以是小到手机,也可以大到昂贵的超级计算机。

拥有者也是从个人到机关或ISP。

核心部分:由大量网络和连接这些网络的路由器组成,为边缘部分提供服务,提供连通性和交换。

端到端的通信分为C/S方式或者P2P方式,一种客户到服务器,另一种是对等方式,不区分谁是服务的请求方谁是服务的提供方,只要下载了对等连接软件,他们可以平等的对等的连接通信

2.网络的透明性

网络中的实体是任何可以发送或接收信息的硬件或软件

协议是两个对等实体之间进行通信的规则的集合

在协议的控制下,两个对等实体之间的通信可以使本层可以向上一层提供服务,同时实现协议要使用下一层的服务。

协议是水平的,服务是垂直的

本层的服务用户只能看见服务但是看不到下层的协议。即下层的协议对上层服务用户是透明的

上层使用服务原语来获得下层所提供的服务。

3.协议体系(OSI、TCP/IP,五层协议体系每一层的作用)

OSI体系是七层的理想结构,但是并没有运用到实际当中

TCP/IP体系是四层的体系结构

五层协议的体系结构是从下到上是物理层、数据链路层、网络层、运输层、应用层

他们的作用分别是;

物理层:考虑怎样才能在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。也就是让信号在各个不同的介质媒体中实现无差别的传播。

数据链路层:1.实现了局域网中的通信(点对点PPP&广播CSMA/CD协议)

2.将网络层传来的数据可靠地传输到相邻节点的目标机网络层。

为此,必须具备以下功能:

(1)将数据组合成数据块(数据链路层中的数据块称帧,帧是数据链路层的传送单位)

(2)如何控制帧在物理信道上的传输,包括如何处理传输差错,如何控制发送速率使接收方匹配;以及在两个网络实体之间提供数据链路的建立、维持和释放的管理。

作用:物理地址寻址、数据封装成帧、流量控制、数据的检错、重发等。

网络层:实现了各个局域网之间的连通,实现端到端的IP数据报传输

目的:实现两个端系统之间数据的透明传输,具体功能包括:寻址、路由选择、连接的建立保持和终止等。

运输层:1.实现应用进程到应用进程之间的连接(端到端)

2.负责将上层数据进行分段并提供端到端、可靠(TCP)或不可靠(UDP)的传输。

3.控制端到端的差错控制和流量控制问题

4.只有网络边缘的主机的协议栈才有运输层,网络核心部分的路由器转发时只用到最后三层

应用层:通过不同主机中的多个应用进程之间的通信和协同工作来完成,内容就是定义具体的通信规则。

第二章.物理层——

传输速率(传输时延=报文长度/传输速率)

时延是数据从网络的一端到另一端所需要的时间,也叫作延迟或者迟延

有发送时延(也叫传输时延) 传播时延 处理时延 排队时延

处理时延是主机或者路由器在收到分组的时候提取首部等花费的时间

排队时延是路由器输入输出的队列中排队等待处理的时延,取决于当时的通信量

总时延为四个之和

考点:速率仅仅提高的是发送速率而不是传播速率

提高带宽减小的是数据的发送时延

高速链路上比特会传输的快一点是错的(不可能超越告诉)

发送时延=数据帧长度(bit)/发送速率

传输时延=信道的长度/信道上的传播速率(米/秒)

信道的极限信息传输速率C=Wlog2(1+S/N)(香农公式,带宽受限且存在信道白噪声你干扰的极限、无差错的传输速率)

W为带宽 S信道内信号的平均频率,N为信道内部的高斯噪声功率。

常用编码方式

曼彻斯特:1的时候就中心下降,0的时候就中心上升

差分曼彻斯特:中间都有跳变,只有边缘又跳变是0,没有是1

考点:传输媒体(双绞线)

导引型(铜线或光纤)和非导引型传播媒体(非导引型的媒体就是自由空间,非导引型媒介中电磁波的传输成为称为无线传输)

双绞线(最常用)模拟和数字都可以使用,距离为几到十几公里。分为屏蔽双绞线STP和无屏蔽双绞线UTP(屏蔽双绞线的绝缘层外包着一层屏蔽层,再是聚氯乙烯套层)

不同叫绞合度的双绞线分3类线,和5类线(规定了5个种类的UTP标准,从1类线到5类线,最常用的是UTP的五类线)

另外还有同轴电缆(抗干扰性好,用于传输速率较高的数据)

光纤:光纤是关心通信的媒体,光纤可见光频率很高,带宽远远超过其他的传输媒体。传输损耗小、体积小、保密性好、抗电磁干扰性能好。

复用(波分复用本质上是一种频分复用,光的频分复用,频率变成了波长)(使得用户可以使用一个共享的)

频分复用 波分复用 码分复用 时分复用

频分复用是使用一个时件内所有用户占用不同的带宽资源,也就是频率资源

时分复用(每一个用户占用的时间周期性的出现,TDM信号也称等时信号,所有用户在不同的时间占用同样的频带宽度)(造成资源的浪费)(STDM不是固定的分配间隙,是按需求动态,减少资源浪费)

波分复用本质上是一种频分复用,光的频分复用,频率变成了波长

码分复用 用户通过挑选不同的码型,不会互相干扰。这种系统的信号有很强的抗干扰能力,其频谱类似于白噪声,不易被发现。

第三章数据链路层——

  1. 数据通信协议又叫数据规程。物理链路(链路)(一条物理路径,没有交换节点)加必要的通信协议等于逻辑链路
  2. 三个基本问题(封装成帧、透明传输、差错控制)

封账成帧:加首部和尾部进行帧定界(使用特殊的帧定界符SOH表示开始,EOT表示帧的结束)

透明传输:进行字符填充/字节填充,在SOH和EOT前加转义符ESC(1B),转义字符前也加上转义字符,接收端收到的时候把前面的转义字符去掉

差错检测(CRC校验):传输过程中会出现比特差错,1和0错了。一段时间里错误的比特数所占传输比特的比率为误码率BER,与信噪比关系很大。噪声大则误码率就会增加。

循环冗余检验CRC

多项式有n位则除数就有n位,则余数R 有n-1位,这个余数就是冗余码,被称为帧检验序列FCS,和CRC不一样,CRC是循环冗余检验,可以得到FCS,但是并不是得到FCS的唯一方法,FCS只是一个冗余码。具体见书本以及作业例题。

接收端对收到的每一帧要进行CRC检验。如果R=0则接收;若R≠0,有差错,则直接丢弃。只要除数的P的位数足够大,那么出现检测不到的差错的概率就很小。

但并不知道哪几个比特出现了问题。

CRC差错检测只能做到无差错接收,就是只要是接收的帧,就近似于1的概率认为这些帧在传输的过程中没有产生差错。有差错的帧都被丢弃不接受。

CRC 只能做到无比特差错,及传过去的无比特差错,但是不是无传输差错。要做到可靠传输还要确认和重传机制

广播信道:

为了通信的简便,以太网建立无连接的直接发送也对数据帧不进行编号,不要求发回确认,因为信道质量很好,因信道质量出现差错的概率较小

以太网提供不可靠交付,尽最大努力的交付。目的站会丢弃差错的数据帧,纠错由高层确定,若高层重传,但是以太网并不知道是重传的帧,而是会当成是一个新的帧。

CSMA-CD(名字,每个名称都是指的什么)

载波监听多点接入/碰撞检测

多点接入:指的是许多计算机用同一种方式接入一根总线

载波监听:每一个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据,如果有的话就暂时不要发送数据,以免发生碰撞。

实际上并没有所谓的“载波”。只是用电子技术检测总线上有无别的计算机发送的数据信号。

碰撞检测:计算机边发送边检测信道上的信号电压大小。如果电压超过一个门限值就认为至少两个站在同时发送数据,发生了冲突。也叫作冲突检测

发生碰撞就会使信息变得无用。一旦发现碰撞,站就立刻停止继续发送,免得浪费网络资源,再等待随机的一段时间后进行再次发送。

碰撞检测的必要性:

由于电磁波传输速率有限,某个站监听到是空闲的时候,并非真正的空闲。A在发送的途中b没有监听到所以也发送了,导致会出现碰撞,使得信息都失效。所以必须要进行碰撞检测。

特性:

使用CSMA/CD协议的以太网不能进行全双工通信只能进行双相交替通信(半双工)

每个站发送数据后的一小段时间里存在碰撞的可能性

这种发送的不确定性使得以太网的平均通讯量低于以太网的最高数据率。

最先发送数据帧的站最多需要2τ(往返时间)就可以知道是否遭受到碰撞,2τ叫作争用期,经过争用期没有检测到碰撞,那么这次肯定不会发生碰撞。

二进制指数类型退避算法:发现碰撞停止发送数据后要退避一个随机时间才能再发送数据。基本退避时间为争用期。从[0.1.3.。。。。2k次-1]中随机抽一个数记为r,则这个随机事件也就是重传时间为r倍的争用期。K=min【次数,10】

当重传十六次还是不能成功就丢弃该帧,并且向高层报告。

10mbps以太网最短有效帧长

10Mbit/s以51.2μs为争用期长度,可以发送64字节。所以只要前64个字节没有发生冲突,则后面就不会发生冲突。如果变成100MBPS,传输速率还是一定的还是六十四字节,那么所需发送时间就是512/100Mbit/s的时间,再×r为退避时间。

若果一检测到冲突就停止发送,那么一定小于64字节。所以规定以太网最短有效帧长为64字节,任何小于64字节的帧都是由于冲突而异常终止的无效帧。

强化碰撞,即检测到碰撞后立刻停止发送并且继续发送人为干扰信号使所有用户都知道已经发生了碰撞。

星型以太网,10Base-T(什么含义)

10:10mbit/s

BASE:基带

T:双绞线(两根绝缘层的铜线绞起来然后无屏蔽金属壳,使用星型拓扑),每个站用两对双绞线,分别用于发送和接收。通信距离短,不超过100m

10BASE-T双绞线以太网的出现是局域网的里程碑,为以太网在局域网中的统治地位奠定了基础。

以太网扩展(物理层扩展,数据链路层扩展)

物理层的扩展

使用光纤扩展:一对光纤和一对光纤调制解调器连接到集线器。使主机很容易和几公里以外的集线器相连

使用集线器扩展:使用多个集线器可连成更大的、多级星形结构的以太网。用主干集线器将将各个独立地10BASE-T以太网连成一个更大的以太网

优点:使原本不同碰撞域的计算机可以跨区域通信且扩大了以太网的覆盖范围

缺点:吞吐量没有提高

如果不同的碰撞域使用不同的数据率,那么无法将他们用集线器互相连接起来。

数据链路层扩展以太网:

扩展以太网常用在数据链路层进行

一开始是网桥,现在用以太网交换机

网桥根据MAC帧的目的地址对收到的帧进行转发和过滤,并不是向所有接口转发,而是先看这个帧的MAC地址然后再确定该转发到哪个接口,或者把它丢弃

交换式集线器又叫做以太网交换机(工作在数据链路层)

是一个多接口的网桥,一般工作在全双工方式,具有并行性使多对主机可以同时通信。

相互通信的主机都是独占媒体,无碰撞地传输数据。

以太网交换机接口有存储器,能在输出口繁忙时将到来的帧进行缓存。内部的帧交换表是通过自主学习算法自动逐渐建立起来的。

交换方式:存储转发(先缓存再进行处理)

直通方式:立即按照数据帧的目的MAC地址决定转发接口,提高了转发速度,但是没有进行差错检测,有一些无效帧转发给了其他站。

MAC地址(又叫硬件地址物理地址)

48位地址是某个接口的标识符

以太网MAC帧的格式(以太网V2的MAC帧格式):

由5个字段组成

前两个字段分别是6字节长的目的地址和源地址。第三个字段是2字节的类型字段,用来标志上一层的协议(0x0800表示上一层是IP数据报)。第四部分是数据部分46~·500字节之间(46=64-18个字节的首部和尾部),最后是四字节的FCS帧检验序列。FCS检验的就是从目的地址开始的五个字段,但是不包括物理层插入的8个字节的前同步码和帧定界符。

PPP协议,数据部分0x7E变成0X7D+0X5E,0X7D变成0X7D+0X5D 小于0x20变成0x7D然后改变编码

网络层——

网络层提供的两种服务。(思路、是否建立连接、分组转发过程)实质是可靠传输是靠端系统还是靠网络负责。

  1. 面向连接的服务

首先建立虚电路,再加可靠传输的网络协议就可以无差错按顺序到达,不重复也不丢失。所有分组沿着同一条虚电路经过相同的路由器向另一个端传送。

  1. 无连接的服务

网络层向上只提供无连接的,网络层尽量简单灵活,尽最大努力交付的数据报服务

发送时不需要建立连接,分组独立发送,与其前后的分组无关(不进行编号)

到达的分组可能会出错、丢失、重复,也不能保证传输的时限。

网络层不提供服务质量的承诺

尽最大努力交付的数据报服务

传输网络不提供端到端的可靠交付,所以路由器比较简单,价格低廉。如果需要可靠通信,那么由运输层来进行差错处理、流量控制。

各个分组可以沿着不同路径进行传送

对比两种服务:

思路:

虚电路服务 可靠通信应由网络保证(网络不行就无法进行可靠传输)

  数据报服务  可靠通信应由用户主机来保证(主机的上一层还可以进行差错处理和流量控制)

连接的建立:

  虚电路服务  必须有  

        数据报服务  不需要

分组转发的过程:

      虚电路服务:属于同一虚电路的分组由同一个路由器进行转发并且通过出故障的结点的所有虚电路都不能正常工作。并且分组是按顺序到达

      数据报服务:每个分组独立选择路由器转发,当结点出现故障时某些路由会发生变化,故障结点会丢失分组且到达的顺序不一定按照发送顺序。

终点地址:虚电路服务:仅在建立连接时使用,中间过程每个分组使用虚电路号。

      数据报服务:每个分组都有目的地的完整地址

流量控制和差错处理:虚电路服务:由网络或者主机负责

                数据报服务:仅有主机负责(运输层)

IP地址(IP协议是TCP/IP体系中最重要的协议之一与其配套的有ARP(地址解析协议)\ICMP(网际控制报文协议)\IGMP(网际组管理协议))

IP地址就是给每个连接互联网的主机分配一个全世界范围内唯一的32位的标识符

分为分类的IP地址、子网划分、构成超网

分类的IP:分为两个字段:网络号和主机号,主机号在网络号的范围内必须是唯一的,所以IP在整个互联网中也是唯一的。

两级IP结构:共32位,4字节

A类第一位网络号是0xxxxxxx,网络号共一个字节,主机号三个字节

网络号从1到126。最大主机数为2的的24次方-2;不能是全0或全1

B前两位是10xxxxxxxxxxx,网络号共两个字节,主机号二个字节

网络数2的14次,主机数为2的16次-2

C前两位是110xxxxx,网络号共三个字节,主机号一个字节

网络号有2的21次。主机号有2的8次-2=254个

点分十进制:每八位为一组将二进制转化成十进制然后加点

特点:分等级的地址结构。分两个等级的好处是:

1.方便IP地址的管理,主机号由得到网络号的单位自行分配

2.仅根据网络号来转发分组,这样就可以是使路由表照中的项目数大幅度减少,减小了路由表所占的储存空间。

实际上IP地址是标志一个主机(或路由器)和一条链路的接口

因为IP地址是标志链路的接口,所以当主机连接到两个网络时,必须有两个相应的IP地址,并且两个网络号必须是不同的。这种主机称为多归属主机。

同理,一个路由器至少应当有两个不同的IP地址。

两个路由器直接相连,可以指明也可以不指明。就构成了只有一段线路的特殊“网络”。也有自己的网络号

IP地址在IP的数据报首部,硬件地址在MAC帧的首部

虚拟的IP层上的互联网只能看到IP数据报,且中间的IP地址不会出现在IP数据报的首部,IP数据报首部只有目的地和源地址。路由器只根据目的站的IP地址的网络号进行路由选择

在具体的物理网络的链路层只能看见MAC帧而看不见IP数据报。IP层抽象的互联网屏蔽了下面的复杂的细节,可以使用抽象的IP地址研究主机和主机或者主机或路由器之间的通信。

ARP协议,解决的是局域网范围内的主机和路由器IP地址、硬件地址的映射问题

(已知一个机器的IP地址,找出其相应的硬件地址)

ARP的作用:从网络层使用的IP地址,解析出数据链路层使用的MAC地址。因为不管网络层是什么协议,总是要用硬件地址来传输数据帧在数据链路上传输时。

每个主机都有一个ARP高速缓存,里面存储了各个局域网网上的主机和路由器的IP地址到硬件地址的映射表。

ARP高速缓存的作用:ARP高速缓存就是用来存放最近获得的IP地址到MAC地址的绑定,减少ARP广播的数量。若有B的IP地址,则查出硬件地址;如果没有,则在本局域网上广播发送一个ARP请求分组,收到ARP响应分组以后,将新得到的映射关系写入到ARP高速缓存中。

ARP分组1.在本地广播(路由器不转发)

2.封装在物理网络的帧传输

3.请求和响应分组都有发送方的两个地址和目标放的两个地址,目标方硬件地址不知道为0 4.在请求分组里就有自己的两个地址,减少通信量,B收到A以后就直接写到自己的缓存中,以后会更方便。

如果要找的主机和源主机不在同一个局域网上,那么就要把分组发送给路由器,路由器转发到下一个网络。

只要和已知IP地址的主机在本网络上通讯,ARP就会自动将IP地址解析成链路层需要的硬件地址。

如果和不是本网络上的主机进行IP数据报的传输,那么这时都要用ARP协议找到本网络上的硬件地址(下一跳是自己的网络里的),然后剩下的工作由这个路由器完成。

IP数据报的分片(计算题)

IP数据报由首部和数据两部分组成,首部固定部分是20字节,是所有IP数据报必须有的。首部固定部分以后还有一些可选字节。是可以变化的长度。最大为60字节,因为首部长度四位表示到15个单位,一个单位4字节

IP数据报的总长度不得超过最大传送单元MTU,16位,单位为字节。

标识为IP数据报的一个计数器,16位,用来产生IP数据报的标识,传递到分片上

标志:三位 最低位MF=1标识还有分片;MF=0表示最后一个分片

中间一位DF=0才允许分片

片偏移:占13位,较长的分组在分片后某片在原分组中的相对位置。以8个字节为偏移单位

例题:书本P138

IP可变首部从1字节到40字节,增加长度可以增加功能,但是同时会增加路由器处理数据的开销。

特定主机路由:类似于某个特定主机或者某些特定主机或者局域网一定会和某个路由进行连接,这个特定的路由就是特定主机路由,可以方便网络管理人员管理和测试网络。有安全隐患时可以采用

直接交付:路由器和网络直接相连,可以直接交付给网络中的主机

默认路由:减少路由表所占用的空间和搜索路由表所用的时间,因为除了已知几个网络相连接的路由,要到其他的网络都要经过的路由器叫做默认路由。当我不知道目的地的时候,先去默认路由试一下,也许会成功。

IP数据报不会说明下一跳的IP地址,但是会根据ARP协议找到下一跳的MAC地址,放在MAC帧的首部找到下一跳的路由器。

子网掩码

划分子网:将两级的IP地址增加一个“子网号字段”,使两级的IP地址变成三级的IP地址的这种做法叫做划分子网

这是一个单位内部的事情,主机号减少了若干个位作为子网号。但是对外的表现还是一个网络号,只是内部进行了划分,并且只对网络号部分进行划分。

从一个IP数据报的首部无法判断源主机或者目的主机是否进行了子网划分,这时就要用子网掩码。

规则:网络号和子网号 1

  主机号          0

网络地址就是将网络号和子网号表示出来而将划分后的主机号置零,也就是将子网掩码和IP地址进行与运算获得。

如果是两级的IP地址比如A.B.C类没有划分子网的,他们的子网掩码就是默认子网掩码

子网掩码是一个网络或一个子网的重要属性

不同的子网掩码可以得出相同的网络地址,但是他们的效果是不一样的。且子网掩码前面都是1,到后面是0(主机号)

划分子网情况下路由器转发分组的算法

先获取IP地址,然后看和自己直接相连的子网掩码,如果发现和自己在一个网络就直接交付,否则就看目的地址在路由表中是否有特定主机路由,有就给下一跳路由器。如果也没有,那么一行行进行与操作发现他在某一个网络,然后根据下一跳。如果还是找不到他所在的网络的话,就进行默认路由,如果没有默认路由就报错。

CIDR,网络前缀

CIDR又称无分类间路由选择(无分类的两级编址)

消除了传统的A.B.C类以及划分子网的概念,有效分配IPv4的地址空间。其使用网络前缀来代替网络号和子网号,将三级的编址又回到了两级编址。

他用/n来表示网络前缀,也就是和三级编址中的子网掩码中的1的个数是一样的

比如128.14.32.0/20的这个地址块的最小地址是128.14.32.0,最大为128.14.47.255,但是全0和全1的主机号地址一般不使用

CIDR虽然不使用掩码,但是依然用“掩码”这一名词,/后面的数字就是掩码中1的个数。

一个CIDR地址块可以表示很多地址,这种地址常称为路由聚合,也叫作,使得路由表中的一个项目可以表示很多个原来传统分类地址的路由。

CIDR地址块的时候后面的主机号都是0,前面的网络号+子网号的位数就是/后面的数字

网络前缀越短,则地址块包含的地址数就越多,但是在三级IP中,划分子网使得网络前缀变长。可以更加有效地分配IPv4地址空间,可以根据客户的需要适当分配合适大小的CIDR地址块。

路由选择RIP

互联网有两大路由选择协议,分别是内部网关协议IGP和外部网关协议EGP

内部网关协议IGP是在一个自治系统从内部使用的路由选择协议。

目前用的最多的是RIP和OSPF协议

外部网关协议EGP

源站和目的站不在一个自治系统,当数据报传到一个自治系统的边界时,就要一种协议将路由选择信息传递到另一个自治系统中,常用BGP-4

自治系统之间的路由选择叫做域间路由选择,而在自制系统内部的路由选择叫域内路由选择

路由信息协议RIP是内部网关协议IGP中最先得到的广泛使用的协议,是一种分布式的、基于距离向量的路由选择协议

每一个路由器都要维护从它到其他目的网络的距离记录(直接相连的为1,非直接连接的网络的距离定义为所经过的路由器数加1,距离也叫作“跳数”,这里的距离记录是最短距离)

RIP最多的距离是16的时候,也就是包含十五个路由器的时候就视作不可到达,所以用于小型互联网。并且RIP不能在两个网络之间使用多条路由,只选择具有最少路由器的路由,哪怕其他的路由距离长但是速度快也只选择距离短的。

特点:1.仅和相邻路由器交换信息

  2.交换的是当前自己知道的全部信息

  3.按固定时间拓扑变化时和相邻的路由器进行路由信息的交换

路由表建立的过程:一开始只有直接相连的网络的距离,路由表空。

以后每一个路由表只和相邻的路由器交换信息并且更新,一段时间后每一个路由器都会知道自己到达每一个自治区域之内的网络的最短距离以及下一跳路由器的地址。并且收敛较快,及更新的过程较快。

路由表信息更新的过程:1

  1. 收到X的路由表后先将下一跳的地址都改成X,然后将所有的到目标网络的地址都+1
  2. 修改后的项目如果目标网络不在路由表中,直接抄
  3. 如果在路由表中,并且下一跳是同一个路由器,那么更新后成后面的
  4. 如果目的地在路由表中,但是下一跳路由器不一样,那就找距离最小的下一跳进行抄写
  5. 如果3分钟还没有收到相邻路由器的路由表,那么标记为不可到达路由器

RIP协议的特点概括:好消息传得快,坏消息传的慢。

RIP存在的问题:如果网络出现故障,那么这个信息传送的时间会很长,也就是说收敛的时间会很长,才能让所有的路由器都更新完自治区域内的最短距离。

运输层(给应用层提供通信服务,是面向通信的最高层也是用户功能中的最低层)

从IP层看是主机和主机的通信,但是运输层中端到端的通信是应用进程之间的通信

一台主机中多个进程同时会和另一个主机的多个进程进行通信,这时候就有分用和复用两个重要功能,并且运输层屏蔽了下面网络核心的细节,好像看到两个运输层实体之间有一条端到端的逻辑通信信道。

TCP和UDP差别

1.TCP是面向连接的,而UDP是无连接的(UDP数据传输之前不用建立连接)

2.TCP建立的逻辑通信信道相当于一个全双工的可靠信道,UDP逻辑信道相当于一条不可靠的信道

3.UDP(用户数据报协议)传送的数据单元协议是UDP报文或用户数据报,面向报文

TCP(传输控制协议)传输的是TCP报文段,面向的是字节流

4.对方在收到UDP报文后,不需要给出任何确认,虽然UDP不可靠,但是有时候是最有效的工作方式

5.TCP不提供广播或多播服务,是可靠的面向连接的服务,每一条TCP连接只有两个端点(一对一/点对点)因此开销会增加,使得协议数据单元的首部增大很多。而UDP提供一对一、一对多、多对一和多对多的通信,首部开销较小

6.UDP没有拥塞控制,但是有复用和分用功能以及差错检测功能,但是TCP是有拥塞控制的

强调:IP数据报经过互联网间许多路由器的转发而UDP用户数据报是在运输层的端到端的逻辑通信中传送的

端口号16位,只有本地意义,不同计算机的相同端口号没有关系

两个计算机要通信不仅要知道IP地址还要知道对方的端口号。

UDP:

应用进程交下来的报文,在添加首部(八个字节,端口号占2×2个字节,然后还有十二个字节的伪首部)后就交付给IP层,不会对报文进行合并以及拆分,保留报文的边界,一次放送一个报文。接收方的UDP会去除首部后原封不动交付,一次交付一个完整的报文。应用进程必须给合适大小的报文,否则太大会影响IP层效率,太小,IP首部相对较大,同样会影响IP层的效率。

TCP不保证应用程序接收的数据块和发送程序发出的数据块具有对应大小的关系,但是保证接收方和发送方的应用程序的字节流完全一样

TCP不关心应用进程一次把多少长的报文发送到TCP缓存,TCP将连续的字节流进行分段后形成TCP报文段。

TCP建立的连接是一条虚连接,不是真正的物理连接

UDP报文长度是根据应用进程给的,而TCP是根据对方的接收窗口值和当前网络拥塞情况来决定一个报文段包含多少个字节

TCP可以将数据划分后传送,也可以等待累积足够的字节以后统一构成报文段发送

TCP两端连接的是什么?用什么来识别?

TCP连接的端点是套接字或接口(端口号拼接到IP地址即形成了套接字)

所以每一个IP地址有很多个不同的TCP连接同一个端口号也可以出现在不同的TCP连接中

用两个端点(即两个套接字来识别TCP的连接,且是唯一确定的)

可靠传输(停止等待协议、连续ARQ协议)针对TCP协议

停止等待协议:

发送方发送一个分组就停止发送,等待对方确认再发送下一个分组

停止等待协议虽然简单,但是信道利用率很低,每个分组发送完后都要进行暂时的保存以备重发,并且分组和确认分组都要进行编号。超时计时器重传的时间应该比数据的平均往返时间更长一点。

流水线传输:多个分组一起发,可以获得较高的信道利用率

连续ARQ协议:

有一个滑动窗口,一次先发五个分组,然后等待确认到一个,滑动窗口向后滑动一下,序号小的先发送,这样可以提高信道利用率。

但是一般采用累积确认的方式。对到达的最后一个分组发送确认,表示这个为止的分组都到达了,然后就发送方就移动五个窗口,所以有了回退N,当中间的某个分组丢失的时候会回退N个分组重新发送。网络通信质量不好的时候,ARQ协议会重复发送,带来负面影响。

重点:TCP可靠传输具体实现及注意事项:

首先明确:必须有发动窗口和接收窗口,并且是字节的序号进行的控制,并不是基于报文段,而是字节的序号,两端的四个窗口(缓存和滑动窗口均是在动态变化的)由于往返时间不固定,所以重传时间也是要通过特定的算法进行估计。

发送和接收窗口不一定相等,没有规定不按顺序到达的数据怎么处理,一般是先在接收方接收窗口中,等到字节流中所缺少的字节收到后再按序交付上层的应用进程,并且TCP具有累积确认的功能(合适的时候发确认或者自己发的时候捎上,但是不能太慢,会触发超时重传),减小传输开销。

TCP每发送一个报文段(一次发送一串字节流好几个报文)就会设置一次计时器,时间设置不能短,会增加网络复核,也不能太长,会降低传输效率。

收到的报文段无差错,只是未按照序号以及缺少数据,如何只传送缺少的数据?

使用选择确认SACK

接收方收到和前面字节流不连续的两个字节块后,如果已经在接收窗口之内,那么就先收下这些数据,但是要把信息准确告诉发送方,使得其不要重复发送这些已经收到的数据,比如收到123后返回收到前三个将这三个上传,接收窗口移动到4开始,然后56到了说收到前三个,只有第四个到了才会确认456到了。

流量控制

利用滑动窗口实现流量控制(发送速率不要太快,既要让接收方来得及接收,也不要使网络发生拥塞)见PPT

当数据发送完后接收窗口从零变成非零的时候可能会发生锁死。B向A发送rwnd=400,但是这个报文段丢失了,于是B一直在等A的数据,A也一直在等B的命令,双方都按兵不动。这时会发生锁死,可以当一方收到零窗口的通知时就启动持续计时器,时间到了就发一个一字节的试探数据,对方就会在确认这个字节的时候提供窗口值,如果仍然是零,则重新设置持续计时器

拥塞控制:四个方法,什么时候执行快重传方法

拥塞的原因:在某个时间段内对某资源的需求超过了该资源的可用部分

增加资源不能解决拥塞,会变得更坏,并且拥塞会引起重传,重传导致更加拥塞,这是一个恶性循环,使网络的吞吐量大大下降。

TCP是基于窗口的方法进行拥塞控制,属于闭环控制。拥塞窗口动态变化大小,发送窗口大小不仅取决于接收窗口,还取决于拥塞状况(拥塞窗口)

发送窗口=min(接收方窗口值,拥塞窗口值)

原则:没有拥塞就增加拥塞窗口,以便把更多分组发出去,有拥塞发生时就减小拥塞窗口,缓解网络的拥塞。

拥塞的判断:

  1. 重传定时器超时(一般不会有丢失分组,所以只要重传的定时器超时就说明出现拥塞)
  2. 收到三个重复的ACK(立刻快重传,并且调整拥塞窗口的值,每次移动窗口都会改变窗口的大小)

流量控制和拥塞控制的区别(考点):

流量控制指的是点对点通信量的控制,是端到端的问题(改变窗口大小)。

拥塞控制是一个全局性的过程(考虑的是网络),涉及到所有的主机、路由器以及其他降低网络性能的种种因素,并且拥塞控制向发送端发送报文让发送端放慢发送速率,这点和流量控制十分相似。

拥塞的算法

慢开始,拥塞避免,快重传,快恢复(后两者对应超时重传)

慢开始:第一轮 一个拥塞窗口,然后确认以后移动窗口再变成两个拥塞窗口,然后指数上升到了16以后进行拥塞避免,一次增长一个

增长到出现超时重传的时候,也就是到了要重新执行慢开始(从1开始),到了门限值(上一次超时的二分之一的窗口值)时再次拥塞避免,然后直到出现了三个ACK的时候进行快重传(赶紧重传),并且执行快恢复,就略过慢开始,直接拥塞避免,从出现三个ACK的拥塞窗口值的一半开始。

应用层——(具体内容是规定应用进程在通信时所遵循的协议)

应用层的许多协议都是以客户-服务器的方式

应用层软件经常直接使用域名系统DNS,互联网用层次结构的命名树作为主机的名字,使用分布式的域名系统DNS

域名结构 (…三级.二级.顶级域名)域名只是一个逻辑的概念

总体功能:域名服务器在专设的结点上运行域名服务器程序,完成将名字到IP地址的解析

(一部分域名和对应的IP地址)被存在一个域名服务器里,有根域名服务器。

DNS协议实现 然后一条条向下寻找各级域名所在的服务器,找到最后一个www后不再是域名和服务器,里面就是对应的IP地址。

根域名服务器 顶级域名服务器 权限域名服务器 本地域名服务器(单位自己有的,承担自己的设备查找IP地址)

常用顶级域名

最早的顶级域名

.cn 表示中国 .us表示美国 .uk表示英国

通用顶级域名 .com(公司和企业)

         .net(网络服务组织)

.org(非赢利性组织) .edu(美国专用的教育机构)

,gov美国专用的政府部门

.mil美国专用的军事部门

.int(国际组织) .aero(航空运输业)

.biz(公司和企业)

.cat(佳泰隆人的语言和文化团体)

.coop(合作团体)

.info(各种情况)

.jobs(人力资源管理者)

.mobi(移动产品和服务的用户和提供者)

.museum 博物馆 .name 个人 .travel 旅游业 .pro有证书的专业人员

域名查询(递归查询,迭代查询)(查出IP地址)

迭代查询(每次都回到本地域名服务器):先告诉本地域名服务器让他去访问根域名服务器再回到它,它再去顶级域名服务器问再回来再去权限域名服务器找到IP地址,最后通过本地域名服务器告诉我们的主机就可以实现域名的查询

递归查询(比较少用,每一个去问下一层):需要找IP地址,先通过本地域名服务器去根域名服务器问,然后一步步通过根域名服务器问到最后的IP,然后返回到本地域名服务器传给主机,但是由于根域名服务器是大家共用的,所以其处理信息的量很大很大,一般很少用

但是这两种方法主机和本地域名服务器之间都是通过递归查询的

第七章网络安全——

主动攻击(考点)

被动攻击 截获(窃听别人的通信内容)、 用加密技术

他不干扰信息流,这种被动攻击又叫做流量分析

主动攻击:篡改(篡改网上的报文.这种攻击方式也称为更改报文流) 用加密技术和鉴别技术

恶意程序:病毒、木马等

拒绝服务 攻击者向互联网上某个服务器不停发送大量分组,使得服务器无法正常提供服务,甚至完全瘫痪。分布式拒绝DDos(成百上千的网站集中攻击一个服务器,称为网络带宽攻击或者连通性攻击)

无论截获者截获了多少密文,都无法破解出明文,就说是无条件安全的,理论上不可破解。在很久时间之内无法破译,就是在计算上是安全的。

两类密码体质(对称秘钥密码体质、公钥密码体质)

对称秘钥密码体质(加密秘钥和解密秘钥是相同的)DES(明文进行分组然后用56位的秘钥去加密),由于算法是公开的,所以只要知道秘钥就可以破解

因此有了3DES,K1加密,K2解密K1再加密,那么只要知道K1和K2秘钥就可以先K1解密在K2加密再K1解密就可以推出明文

公钥密码体质(加密秘钥和解密秘钥不是相同的)

加密秘钥PK是公开的,解密秘钥是保密的

算法E和D也是公开的

PK可以决定SK,但是无法计算得到SK

并且计算的时候发送方A用接收方B的公钥加密后只有B通过自己的私钥可以解密,不能用公钥进行解密。

同时加密和解密可以对调顺序,加密和解密是互逆的,公钥只能用来加密,私钥只能用来解密,但是用B的私钥先解密在用公钥加密和先用B的公钥先加密再用B的私钥解密是一样的。

数字签名

过程:用A的私钥先解密再用B的公钥加密后行成密文,B要用自己的私钥先解密然后用A的公钥再加密才可以得到明文

这样就可以保证接收方确定一定是从A发来的,因为用A的公钥可以解出来的

但是是用A的私钥解密的,所以A不能抵赖签名

不可否认是因为我无法伪造你发送,我没有你的私钥,不能发给别人,无法甩锅计算机网络知识点总结:

.cat(佳泰隆人的语言和文化团体)

.coop(合作团体)

.info(各种情况)

.jobs(人力资源管理者)

.mobi(移动产品和服务的用户和提供者)

.museum 博物馆 .name 个人 .travel 旅游业 .pro有证书的专业人员

域名查询(递归查询,迭代查询)(查出IP地址)

迭代查询(每次都回到本地域名服务器):先告诉本地域名服务器让他去访问根域名服务器再回到它,它再去顶级域名服务器问再回来再去权限域名服务器找到IP地址,最后通过本地域名服务器告诉我们的主机就可以实现域名的查询

递归查询(比较少用,每一个去问下一层):需要找IP地址,先通过本地域名服务器去根域名服务器问,然后一步步通过根域名服务器问到最后的IP,然后返回到本地域名服务器传给主机,但是由于根域名服务器是大家共用的,所以其处理信息的量很大很大,一般很少用

但是这两种方法主机和本地域名服务器之间都是通过递归查询的

第七章网络安全——

主动攻击(考点)

被动攻击 截获(窃听别人的通信内容)、 用加密技术

他不干扰信息流,这种被动攻击又叫做流量分析

主动攻击:篡改(篡改网上的报文.这种攻击方式也称为更改报文流) 用加密技术和鉴别技术

恶意程序:病毒、木马等

拒绝服务 攻击者向互联网上某个服务器不停发送大量分组,使得服务器无法正常提供服务,甚至完全瘫痪。分布式拒绝DDos(成百上千的网站集中攻击一个服务器,称为网络带宽攻击或者连通性攻击)

无论截获者截获了多少密文,都无法破解出明文,就说是无条件安全的,理论上不可破解。在很久时间之内无法破译,就是在计算上是安全的。

两类密码体质(对称秘钥密码体质、公钥密码体质)

对称秘钥密码体质(加密秘钥和解密秘钥是相同的)DES(明文进行分组然后用56位的秘钥去加密),由于算法是公开的,所以只要知道秘钥就可以破解

因此有了3DES,K1加密,K2解密K1再加密,那么只要知道K1和K2秘钥就可以先K1解密在K2加密再K1解密就可以推出明文

公钥密码体质(加密秘钥和解密秘钥不是相同的)

加密秘钥PK是公开的,解密秘钥是保密的

算法E和D也是公开的

PK可以决定SK,但是无法计算得到SK

并且计算的时候发送方A用接收方B的公钥加密后只有B通过自己的私钥可以解密,不能用公钥进行解密。

同时加密和解密可以对调顺序,加密和解密是互逆的,公钥只能用来加密,私钥只能用来解密,但是用B的私钥先解密在用公钥加密和先用B的公钥先加密再用B的私钥解密是一样的。

数字签名

过程:用A的私钥先解密再用B的公钥加密后行成密文,B要用自己的私钥先解密然后用A的公钥再加密才可以得到明文

这样就可以保证接收方确定一定是从A发来的,因为用A的公钥可以解出来的

但是是用A的私钥解密的,所以A不能抵赖签名

不可否认是因为我无法伪造你发送,我没有你的私钥,不能发给别人,无法甩锅

你可能感兴趣的:(网络,网络协议,http)