一、概述
1、三网:电信网络、有线电视网络和计算机网络
2、电路交换、报文交换、分组交换的比较
电路交换
公共电话网(PSTN网)和移动网(包括GSM和CDMA网)采用的都是电路交换技术,它的基本特点是采用面向连接的方式,在双方进行通信之前,需要为通信双方分配一条具有固定宽带的通信电路,通信双方在通信过程中一直占用所分配的资源,直到通信结束,并且在电路的建立和释放过程中都需要利用相关的信令协议。这种方式的优点是在通信过程中可以保证为用户提供足够的带宽,并且实时性强,时延小,交换设备成本低,但同时带来的缺点是信道利用率低,一旦电路被建立不管通信双方是否处于通话状态分配的电路一直被占用。
报文交换
报文交换是以报文为数据交换的单位,报文携带有目标地址、源地址等信息,在交换结点采用存储转发的传输方式;由于报文长度差异很大,长报文可能导致很大的时延;为了满足各种长度报文的需要并且达到高效的目的,节点需要分配不同大小的缓冲区,否则就有可能造成数据传送的失败,这样对每个节点来说缓冲区的分配也比较困难。另外一个缺点是出错时,整个报文都将重传。
分组交换
分组交换仍采用存储转发传输方式,但将一个长报文先分割为若干个较短的分组,然后把这些分组(携带源、目的地址和编号信息)逐个地发送出去。采用分组交换技术,在通信之前不需要建立连接,每个节点首先将前一节点送来的分组收下并保存在缓冲区中,然后根据分组头部中的地址信息选择适当的链路将其发送至下一个节点,这样在通信过程中可以根据用户的要求和网络的能力来动态分配带宽。分组交换比电路交换的信道利用率高,但时延较大。分组转发的带来的问题:排队时延以及增加头部带来的开销。
优点:
优点
所采用的手段
高效
在分组传输过程中动态分配传输带宽,对通信链路是逐段占用
灵活
为每一个分组独立地选择转发路由,以分组为传送单位和查找路由
迅速
以分组作为传送单位,可以不不先建立连接就能向其他主机发送分组
可靠
保证可靠性的网络协议;分布式多路由的分组交换网,使网络有很好的生存性
总之,若要传送的数据量很大,且其传送时间远大于呼叫时间,则采用电路交换较为合适;当端到端的通路有很多段的链路组成时,采用分组交换传送数据较为合适。从提高整个网络的信道利用率上看,报文交换和分组交换优于电路交换,其中分组交换比报文交换的时延小,尤其适合于计算机之间的突发式的数据通信。
3、计算机网络的性能指标
1)速率:连接在计算机网络上的主机在数字信道上传送数据的速率,也称为数据率或比特率。
2)带宽:网络的通信线路传送数据的能力。即:在单位时间内从网络中的某一个点到另一点所能通过的“最高数据率”。
3)吞吐量:在单位时间内通过某个网络(信道/接口)的数据量。
4)时延:数据(一个报文或分组,甚至比特)从网络(或链路)的一端传送到另一端所需的时间。
发送时延:主机或路由器发送数据帧所需要的时间,即:从发送数据帧的第一个比特算起到该帧的最后一个比特发送完毕所需要的时间。
传播时延:电磁波在信道中传播一定的距离需要花费的时间。
处理时延:主机或路由器在收到分组时要花费一定的时间进行处理。例如:分析分组的首部信息、从分组中提取数据部分、进行差错检验或查找适当的路由等等。
排队时延:分组在经过网络传输时,要经过许多路由器。但分组在进入路由器后要先在输入队列中排队等待处理。
注意:对于高速网络链路,我们提高的仅仅是数据的发送速率而不是比特在链路上的传播速率而不是比特在链路上的传播速率。
5)时延带宽积:传播时延*带宽
6)往返时间RTT:从发送方发送数据开始,到发送方收到来自接收方的确认总共经历的时间。
7)利用率:信道利用率和网络利用率两种。
4、协议与划分层次的好处
1)各层之间是独立的
2)灵活性好
3)结构上可分割开
4)易于实现和维护
5)能促进标准化工作:差错控制,流量控制,分段和重装,复用和分用,连接建立和释放
5、接口、协议和服务
接口:下层向上层提供的原语操作
协议:同一层之间,通信双方进行信息交换必须遵守的规则
服务:不同层之间交换信息必须遵守的规则
6、计算机网络系统结构
TCP/IP四层协议:应用层(Telnet,FTP,SMTP),运输层(TCP或UDP),网际层IP,网络接口层
五层协议:应用层,运输层,网络层,数据链路层,物理层
7、网络各层的作用
应用层:为操作系统或网络应用程序提供访问网络服务的接口。
应用层任务是通过应用进程间的交互来完成特定网络应用。
应用层协议的代表包括:FTP、HTTP、SMTP等。
运输层:负责向两个主机中进程之间的通信提供服务。运输层还要处理端到端的差错检测(与数据链路层不同)、拥塞控制、流量控制等问题。
运输层协议的代表包括:TCP(面向连接、可靠数据传输服务,数据传输单位是报文段)、UDP(无连接。尽最大努力的数据传输服务,数据传输单位是用户数据报)等。
网络层:负责对子网间的数据包进行路由选择,为分组交换网上的不同主机提供通信服务。
网络层协议的代表包括:IP、ICMP、IGMP等。
数据链路层:数据的封装成帧、数据的透明传输、数据的差错检测。
数据链路层协议的代表包括:PPP、帧中继等。
物理层:通过传输介质发送和接收二进制比特流。
属于物理层定义的典型规范如RJ-45等。
8、数据如何在网络各层之间传输
物理层,数据链路层,网络层属于OSI模型的低三层,负责创建网络通信连接的链路,传输层,会话层,表示层和应用层是OSI模型的高四层,具体负责端到端的数据通信。当然,并不是所有通信都是要经过OSI的全部七层,如物理接口之间的转接,只需要物理层中进行即可;而路由器与路由器之间的连接则只需网络层以下的三层。
9、在网络各层之间,数据是以什么单位进行传输的
在物理层数据的传输单位称为比特;在数据链路层数据的传输单元称为帧; 在网络层数据的传输单元称为数据包;在传输层数据的传输单元称为报文段。
二、物理层
1、基带调制
1)编码:把数字信号转换为另一种形式的数字信号。
常用编码方式:不归零制,归零制(正脉冲代表1,负脉冲代表0),曼彻斯特编码(位周期中心的向上跳变代表0,向下代表1,反之亦可),差分曼彻斯特编码(每一位的中心处始终有跳变。位开始边界有跳变为0,位开始边界无跳变为1)。
2)基本的带通调制方法
调幅,调频,调相
2、奈氏准则和香农公式的主要区别是什么
奈氏准则:在任何信道中,码元传输的速率是有上限的,传输速率超过此上限,就会出现严重的码间串扰的问题,使接收端对码元的判决(即识别)成为不可能。
香农公式:求出了信息传输速率的极限。
意义在于:只要信息传输速率低于信道的极限信息传输速率,就一定可以找到某种方法来实现无差错的传输。
C=W*log2(1+S/N) ( log2表示以2为底的对数)(bit/s)
W是信道带宽(赫),S是信号功率(瓦),N是噪声功率(瓦)。
香农公式中的S/N 为无量纲单位。如:S/N=1000(即,信号功率是噪声功率的1000倍)
但是,当讨论信噪比(S/N)时,常以分贝(dB)为单位。公式如下:
SNR(信噪比,单位为dB)=10log(S/N)
3、信道复用技术
1)频分复用FDM:所有用户在同样的时间占用不同的带宽频率(频率带宽)
2)TDM:
3)波分复用WDM:
4)码分复用CDM:
码分多址CDMA
三、数据链路层
1、三个基本问题
1)封装成帧:数据部分长度上限—MTU
2)透明传输:用字节填充或字符填充解决透明传输问题。
3)差错检测:CRC循环冗余校验。
CRC运算实际上就是在数据长为k的后面添加供差错检测用的n位冗余码,然后构成帧k+n位发送出去。
例子:现假定待传输的数据M = 101001(k = 6),除数p = 1101 (n = 3)比n多一位
这n位冗余码可以用下面的方法得出。
(1)用二进制的模2运算进行(2^n)乘M的运算,相当于在M后面添加n个0。
即M后面添加3个0
(2)现在得到M = 101001000(k+n = 9)位的数除以除数p(n = 3)位,
得到商是Q(不关心),余数R =001(n位)R就是冗余码FCS,现在加上FCS后发送的帧是101001001
在接收端把接收到的数据M = 101001001以帧为单位进行CRC检验:把收到的每一个帧都除以相同的除数p(模2运算),然后检查得到的余数R。
如果在传输过程中没有差错,那么经过检验后得到余数R肯定是0。
在数据链路层若仅仅使用CRC差错检验技术,则只能做到对帧的无差错接收。
2、数据链路层拆分为两个子层
1)逻辑链路控制LLC
2)媒体接入控制MAC
3、适配器的作用
计算机与外界局域网的连接是通过通信适配器。NIC(网卡)。
1)进行串行/并行转换
2)对数据进行缓存
3)在计算机的OS安装设备驱动程序。
4、CSMA/CD协议
局域网上的计算机称为:主机,工作站,站点,站
以太网采取两种措施方便通信:
1)以太网提供的服务是尽最大努力的交付,即:不可靠的交付。对有差错帧是否需要重传由高层来决定。若高层使用TCP协议,TCP就会发现丢失了一些数据,经过一定时间后,TCP就把这些数据重新传递给以太网进行重传。
总线上只有一台计算机在发送数据,在同一时间只允许一台计算机发送数据。
2)以太网发送的数据都是用曼彻斯特编码的信号。
CSMA/CD(载波监听多点接入/碰撞检测)协议的要点
1)多点接入:总线型网络,许多计算机以多点接入的方式连接在一根总线上。协议的实质是“载波监听”和“碰撞检测”。
2)载波监听: “发送前先监听”,即每一个站点在发送数据之前先要检测一下总线上是否有其他的站点在发送数据,如果有,则暂时不要发送数据,要等待信道变为空闲时再发送。
总线上并没有什么“载波”。因此, “载波监听”就是用电子技术检测总线上有没有其他计算机发送的数据信号。
3)碰撞检测:“边发送边监听”,即适配器边发送数据边检测信道上的信号电压的变化情况,以便判断自己在发送数据时其他站是否也在发送数据。
是计算机边发送数据边检测信道上的信号电压大小。当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞。所谓“碰撞”就是发生了冲突。因此“碰撞检测”也称为“冲突检测”
每一个正在发送数据的站,一旦发现总线上出现了碰撞,就要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再次发送。
以太网使用截断二进制指数退避算法来确定碰撞后重传的时机。基本退避时间为争用期2t。
以太网规定了一个最短帧长64字节,即512bit。帧间最小间隔为9.6us.
凡长度小于64字节的帧都是由于冲突而异常中止的无效帧。
CSMA/CD协议的要点归纳如下:
1)准备发送
2)检测信道
3)在发送过程中仍不停地检测信道,即:网络适配器要边发送边监听。分为如下两种可能性
一是发送成功;在争用期内一直未检测到碰撞。这个帧可定能够发送成功。发送完毕后其他什么都不做。然后返回1)
一是发送失败;在争用期内检测到碰撞。这时立即停止发送数据,并按规定发送人为干扰信号。适配器接着就执行指数退避算法,等待r倍512bit时间后,返回步骤2)继续检测信道。但若重传达到16次仍不能成功,则停止重传而向上报错。
以太网每发送完一帧一定要把已发送的帧暂时保留一下。如果在争用期内检测出发生了碰撞,那么还要在推迟一段时间后再把这个暂时保留的帧重传一次。
为什么以太网有一个最小帧长和最大帧长
设置最小帧长是为了区分开正常和因发生碰撞而异常中止的短帧。
设置最大帧长是为了保证个站都能公平竞争接入到以太网。因为如果某个站发送特长的数据帧,则其他的站就必须等待很长的时间才能发送数据。
5、同步通信与异步通信的区别是什么
同步通信:通信双方必须先建立同步,即双方的时钟要调整到同一个频率。收发双方不停地发送和接收连续的同步比特流。
异步通信:异步通信在发送字符时,所发送的字符之间的时间间隔可以是任意的。当然,接收端必须时刻做好接收的准备。发送端可以在任意时刻开始发送字符,因此必须在每一个字符的开始和结束的地方加上标志,即加上开始位和停止位,以便使接收端能够正确地将每一个字符接收下来。异步通信的好处是通信设备简单、便宜,但传输效率较低(因为开始位和停止位的开销所占比例较大)。
异步通信也可以是以帧作为发送的单位,接收端必须随时做好接收帧的准备。这时,帧的首部必须设有一些特殊的比特组合,使得接收端能够找出一帧的开始,这也称为帧定界。帧定界还包含确定帧的结束位置,这有两种方法:一种是在帧的尾部设有某种特殊的比特组合来标志帧的结束;或者在帧首部中设有帧长度的字段。需要注意的是,在异步发送帧时,并不是说发送端对帧中的每一个字符都必须加上开始位和停止位后再发送出去,而是说,发送端可以在任意时间发送一个帧,而帧与帧之间的时间间隔也可以是任意的。发送端不需要在发送一帧之前和接收端进行协调(不需要先进行比特同步)。
6、位同步与帧同步的区别
位同步:使接收端接收的每一位信息都与发送端保持同步。
帧同步:识别一个帧的起始和结束位置。
7、数据链路层协议的三个基本问题
1)封转成帧
就是在一段数据的前后分别添加首部和尾部,这样就构成了一个帧。
2)透明传输
不管什么字符都可以放在帧中传输过去,这样的传输就是透明传输。解决透明传输的问题方法是:发送端的数据链路层在数据中出现控制字符"SOH"或"EOH"的前面插入一个转义字符"ESC",而在接收端的数据链路层在将数据送往网络层之前删除这个插入的转义字符。
3)差错检测
采用的是循环冗余检验(CRC:Cyclic Redundancy Check)的差错检查技术,如果仅仅使用CRC,则只能做到对帧的无差错接收,即接收的帧在传输的过程中没有产生差错,并没有要求数据链路层向网络层提供“可靠传输”的服务。
8、适配器(网卡)的作用
1)适配器的一个重要功能就是要进行数据串行传输和并行传输的转换。
2)由于网络上的数据率和计算机总线上的数据率并不相同,因此在适配器中必须装有对数据进行缓存的存储芯片。
3)适配器还要实现以太网协议。
9、以太网的MAC层
MAC帧的格式
最后一个字段是4字节的帧检验序列FCS(使用CRC检验)
网桥工作在数据链路层,它根据MAC帧的目的地址对收到的帧进行转发和过滤。网桥依靠转发表来转发帧。
集线器工作在物理层。
10、网桥带来的好处和缺点
好处:
1)过滤通信量,增大吞吐量
2)扩大了物理范围
3)提高了可靠性
4)可互联不同物理层、不同MAX子层和不同速率的以太网
缺点:
1)网桥对接收的帧要先存储和查找转发表,然后才转发,转发之前进行CSMA/CD算法,增加了延迟。
2)MAC子层没有流量控制功能,当网络上负荷很重时,网桥中的缓存的存储空间可能不够而发生溢出,以致产生帧丢失的现象。
3)可能发生广播风暴。
11、透明网桥
“透明”是指以太网上的站点并不知道所发送的帧将经过哪几个网桥,以太网上的站点都看不见以太网上的网桥。透明网桥还是一种即插即用设备。
网桥通过自学习算法处理收到的帧。
四、网络层
1、网络层提供的两种服务:虚电路服务,数据报服务。
网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。网络在发送分组时不需要先建立连接。每一个分组(即:IP数据报)独立发送,与其前后的分组无关(不进行编号)。网络层不提供服务质量的承诺。
由于传输网络不提供端到端的可靠传输服务,这就使网络中的路由器可以做的较简单,且价格低廉。如果主机(即端系统)中的进程之间的通信需要是可靠的,那么就由网络的主机中的运输层负责(包括差错处理、流量控制等)。采用这种设计思路的好处是:网络的造价大大降低,运行方式灵活,能够适应多种应用。
虚电路服务和数据报服务的主要区别:
2、网际协议IP
网际协议IP是TCP/IP体系中最重要的协议之一。与其配套使用的还有三个协议:
1)地址解析协议ARP(Address Resolution Protocol)
2)网际控制报文协议ICMP(Internet Control Message Protocol)
3)网际组管理协议IGMP(Internet Group Management Protocol)
应用层 各种应用层协议
(HTTP,FTP,SMTP等)
网络层 ICMP IGMP
IP
(网际层)
ARP
网络接口层
与各种网络接口
物理硬件
将网络互连起来的中间设备:
1)物理层使用的中间设备叫做转发器(repeater)
2)数据链路层使用的中间设备叫做网桥或桥接器(bridge)
3)网络层使用的中间设备叫做路由器(router)
4)在网络层以上使用的中间设备叫做网关(gateway)
当中间设备是转发器或网桥时,这仅仅是把一个网络扩大了,而从网络层的角度看,这仍然是一个网络,一般并不称之为网络互连。网关由于比较复杂,使用得较少。有时把网络层使用的路由器也称之为网关。
虚拟互连网络即为逻辑互连网络,它的意思就是互连起来的各种物理网络的异构性本来是存在的,但是利用IP协议就可以使这些性能各异的网络在网络层上看起来好像是一个统一的网络。这种使用IP协议的虚拟互连网络可简称为IP网。
3.ARP的工作原理
1)首先,每个主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址之间的对应关系。
2)当源主机要发送数据时,首先检查ARP列表中是否有对应IP地址的目的主机的MAC地址,如果有,则直接发送数据,如果没有,就向“本网段”的所有主机发送ARP数据包,该数据包包括的内容有:源主机IP地址,源主机MAC地址,目的主机的IP地址。
3)当本网络的所有主机收到该ARP数据包时,首先检查数据包中的目的主机IP 地址是否是自己的IP地址,如果不是,则忽略该数据包,如果是,则首先从数据包中取出源主机的IP和MAC地址写入到ARP列表中,如果已经存在,则覆盖,然后将自己的MAC地址写入ARP响应包中,告诉源主机自己是它想要找的MAC地址。
4)源主机收到ARP响应包后,将目的主机的IP和MAC地址写入ARP列表,并利用此信息发送数据。如果源主机一直没有收到ARP响应数据包,表示ARP 查询失败。
广播发送ARP请求,单播发送ARP响应。
假定在一个局域网中计算机A发送ARP请求分组,希望找出计算机B的硬件地址。这时局域网上的所有计算机都能收到这个广播发送的ARP请求分组。试问这时由哪一个计算机使用ARP响应分组将计算机B的硬件地址告诉计算机A
区分两种情况:如果计算机B和计算机A都连接在同一个局域网上,那么就是计算机B发送ARP响应分组。
如果计算机B和计算机A不是连接在同一个局域网上,那么就必须由一个连接在本局域网上的路由器来转发ARP请求分组。这时,该路由器向计算机A发送ARP回答分组,给出自己的硬件地址。
4.分类的IP地址
现在的IP网络使用32位地址,以点分十进制表示,如172.16.0.0。地址格式为:IP地址=网络地址+主机地址 或 IP地址=主机地址+子网地址+主机地址。
IP地址类型:最初设计互联网络时,为了便于寻址以及层次化构造网络,每个IP地址包括两个标识码(ID),即网络ID和主机ID。同一个物理网络上的所有主机都使用同一个网络ID,网络上的一个主机(包括网络上工作站,服务器和路由器等)有一个主机ID与其对应。IP地址根据网络ID的不同分为5种类型,A类地址、B类地址、C类地址、D类地址和E类地址。
1)A类IP地址 一个A类IP地址由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”, 地址范围从1.0.0.0 到126.0.0.0。可用的A类网络有126个,每个网络能容纳1亿多个主机。
2)B类IP地址 一个B类IP地址由2个字节的网络地址和2个字节的主机地址组成,网络地址的最高位必须是“10”,地址范围从128.0.0.0到191.255.255.255。可用的B类网络有16382个,每个网络能容纳6万多个主机 。
3)C类IP地址 一个C类IP地址由3字节的网络地址和1字节的主机地址组成,网络地址的最高位必须是“110”。范围从192.0.0.0到223.255.255.255。C类网络可达209万余个,每个网络能容纳254个主机。
4)D类地址用于多点广播(Multicast)。 D类IP地址第一个字节以“lll0”开始,它是一个专门保留的地址。它并不指向特定的网络,目前这一类地址被用在多点广播(Multicast)中。多点广播地址用来一次寻址一组计算机,它标识共享同一协议的一组计算机。224.0.0.0到239.255.255.255用于多点广播 。
5)E类IP地址 以“11110”开始,为将来使用保留。240.0.0.0到255.255.255.254,255.255.255.255用于广播地址
全零(“0.0.0.0”)地址对应于当前主机。全“1”的IP地址(“255.255.255.255”)是当前子网的广播地址。
在IP地址3种主要类型里,各保留了3个区域作为私有地址,其地址范围如下: A类地址:10.0.0.0~10.255.255.255 B类地址:172.16.0.0~172.31.255.255 C类地址:192.168.0.0~192.168.255.255
IP地址的指派范围如下表
私有地址
私有地址包括3组
A类:10.0.0.0~10.255.255.255
B类:172.16.0.0~172.31.255.255
C类:192.168.0.0~192.168.255.255
我们买的无线路由器,也要设置局域网,一般为192开头的,比如192.168.0.1或者192.168.199.1(比如极路由就是这个地址)
我们建企业网(单位网络)时,一般是使用私有地址来分配内部主机,小企业使用C类的192.168.0.0网络,中型企业使用172.16.0.0网络,如果还不够用,还有10.0.0.0 网络。
5.IP数据报格式
1)版本:IP协议的版本,目前的IP协议版本号为4,下一代IP协议版本号为6。
2)首部长度:IP报头的长度。固定部分的长度(20字节)和可变部分的长度之和。共占4位。最大为1111,即10进制的15,代表IP报头的最大长度可以为15个32bits(4字节),也就是最长可为15*4=60字节,除去固定部分的长度20字节,可变部分的长度最大为40字节。
3)区分服务(服务类型):Type Of Service。占8位,未使用。
4)总长度:IP报文的总长度。报头的长度和数据部分的长度之和。占16位,因此数据报的最大长度为2^16-1=65535字节(实际极少遇到)。
在IP层下面的每一种数据链路层协议都规定了一个数据帧中的数据字段最大长度,这称为最大传送单元MTU。当一个IP数据报封装成链路层的帧时,此数据报的总长度(即首部加上数据部分)一定不能超过下面的数据链路层规定的MTU值。如:最常用的以太网就规定其MTU值是1500字节。若所传送的数据报长度超过数据链路层的MTU值,就必须把过长的数据报进行分片处理。
IP协议规定,在因特网中所有的主机和路由器,必须能够接受长度不超过576字节的数据报。即:假定上层交下来的数据长度有512字节,加上最长的IP首部60字节,再加上4字节的富裕量。否则就要进行分片。
5)标识:唯一的标识主机发送的每一分数据报。通常每发送一个报文,它的值加一。当IP报文长度超过传输网络的MTU(最大传输单元)时必须分片,这个标识字段的值被复制到所有数据分片的标识字段中,使得这些分片在达到最终目的地时可以依照标识字段的内容重新组成原先的数据。
6)标志:共3位。R、DF、MF三位。目前只有后两位有效,DF(don’t fragment)位:为1表示不分片,为0表示分片。MF(more fragment):为1表示“更多的片”,为0表示这是最后一片。
7)片位移:本分片在原先数据报文中相对首位的偏移位。(需要再乘以8)
IP数据报分片举例1:一数据报总长度3820字节,其数据部分3800字节长,需要分片为长度不超过1420字节的数据报片。因固定首部长度为20字节,因此每个数据报片的数据部分长度不能超过1400字节。于是分为3个数据报片,其数据部分的长度分别为1400,1400,1000字节。原始数据报首部被复制为各数据片的首部,但必须修改有关字段的值。分片结果如下:
总长度
标识
MF
DF
片偏移
原始数据报
3820
12345
0
0
0
数据报片1
1420
12345
1
0
0
数据报片2
1420
12345
1
0
175
数据报片3
1020
12345
0
0
350
举例2:一个长4000B的IP数据报,数据部分3980B,到达了一个路由,需要转发到一个MTU为1500B的链路上,这样就得分片了。分片数目是3片。每个片都是一个数据报。假设标识是777,那么数据报分片结果是:
分片一:标识:777,MF=1,DF=0,片偏移=0,有效数据:1480B(编号0~1479)
分片二:标识:777,MF=1,DF=0,片偏移=185,185*8=1480,有效数据:1480B(编号1480~2959)
分片三:标识:777,MF=0,DF=0,片偏移370,370*8=2960,有效数据:1020B(编号2960~3979)
8)生存时间:IP报文所允许通过的路由器的最大数量。每经过一个路由器,TTL减1,当为0时,路由器将该数据报丢弃。TTL 字段是由发送端初始设置一个 8 bit字段.推荐的初始值由分配数字 RFC 指定,当前值为 64。发送 ICMP 回显应答时经常把 TTL 设为最大值 255。
9)协议:指出IP报文携带的数据使用的是那种协议,以便目的主机的IP层能知道要将数据报上交到哪个进程(不同的协议有专门不同的进程处理)。和端口号类似,此处采用协议号,TCP的协议号为6,UDP的协议号为17。ICMP的协议号为1,IGMP的协议号为2.
10)首部校验和:计算IP头部的校验和,检查IP报头的完整性。不包括数据部分。
11)源IP地址:标识IP数据报的源端设备。32位
12)目的IP地址:标识IP数据报的目的地址。32位
6.IP层转发分组的流程
1)从数据报的首部提取目的主机的IP地址D,得出目的网络地址为N。
2)若N就是与此路由器直接相连的某个网络地址,则进行直接交付,不需要再经过其他的路由器,直接把数据报交付给目的主机(这里包括把目的主机地址D转换为具体的硬件地址,把数据报封装为MAC帧,再发送此帧);否则就要执行3)进行间接交付。
3)若路由表中有目的地址为D的特定主机路由,则把数据报传送给路由表中所指明的下一跳路由器,否则执行4)。
4)若路由表中有到达网络N的路由,则把数据报传送给路由表中所指明的下一跳路由器,否则执行5)。
5)若路由表中有一个默认路由,则把数据报传送给路由表中所指明的下一跳路由器,否则执行6)。
6)报告转发分组出错。
7.划分子网和构造超网
IP地址={<网络号>,<子网号>,<主机号>}
默认子网掩码:
A类地址的默认子网掩码:255.0.0.0
B类地址的默认子网掩码:255.255.0.0
C类地址的默认子网掩码:255.255.255.0
子网掩码是一个网络或一个子网的重要属性:路由器和相邻路由器交换路由信息时,必须把自己所在网络(或子网)的子网掩码告诉相邻路由器;
路由表必须包含以下三项内容:目的网络地址,子网掩码和下一跳地址;
划分子网后,分组转发的算法:
1)从收到的数据报的首部提取目的IP地址D;
2)先判断是否为直接交付,对路由器直接连接的网络逐个进行检查:用各网段的子网掩码和D逐位相“与”(AND)操作,看结果是否和相应的网络地址匹配;若匹配,则把分组进行直接交付(当然还需要把D转换为物理地址,把数据报封装在MAC帧中发送出去),转发任务结束;否则就是间接交付,执行3);
3)若路由表中有目的地址为D的特定主机路由,则把数据报传送给路由器中所指明的下一跳路由器;否则,执行4);
4)对路由表中的每一行(目的网络地址,子网掩码,下一跳地址),用其中的子网掩码和D逐位相“与”(AND操作),其结果为N;若N与该行的目的网络地址匹配,则把数据报传送给该行指明的下一跳路由器;否则,执行5);
5)若路由表中有一个默认路由,则把数据报传送给路由表中所指明的默认路由器;否则,执行6);
6)报告转发分组出错;
无分类编址CIDR(构成超网)
1)变长子网掩码VLSM:指明在一个划分子网的网络中可同时使用几个不同的子网掩码;
2)无分类域间路由CIDR:
**CIDR消除了传统的A类,B类,C类地址以及划分子网的概念,因而可以更加有效的分配IPv4的地址空间;
**CIDR把32位的IP地址划分为两部分,前面的部分是“网络前缀”用来指明网络,后面的部分则用来指明主机;
**IP地址={<网络前缀>,<主机号>}
**CIDR还使用“斜线记法”或称“CIDR记法”,即在IP地址后面加上斜线“/”,然后写上网络前缀所占的位数;128.14.35.7/24
**CIDR把网络前缀都相同的连续IP地址组成一个“CIDR地址块”,我们只要知道CIDR地址块中的任何一个地址,就可以知道这个地址块的起始地址(即最小地址)和最大地址,以及地址块中的地址数;
3)CIDR使用32位的地址掩码,地址掩码有一串1和一串0组成,而1的个数就是网络前缀的长度;斜线记法中,斜线后面的数字就是地址掩码中1的个数;
4)128.14.35.7/20=10000000 00001110 00100011 00000111 //红色表示网络前缀:20位
5)斜线记法除了可以表示IP地址外,还可以表示这个地址的网络前缀有几位,剩下的就是主机位;通过简单的计算,还可以得出这个地址块中的最下地址和最大地址;
6)求地址块中最小地址和最大地址:
**找出地址掩码中1和0的交界处发生在地址中的哪一个字节;
**把这一字节的十进制数用二进制表示出来;
** 把主机号数(32-网络前缀号数)的那几位,全部置0就是最小地址,全部置0就是最大地址;
7)路由聚合:一个CIDR地址块中很多地址,在路由表中利用CIDR地址块来查找目的网络;路由聚合也称为构造超网
8)CIDR记法有很多种形式:10.0.0.0/10可简写为:10/10;在网络前缀的后面加一个星号*:00001010 00*,*号表示IP地址中的主机号;
9)构成超网的方法:就是将网络前缀缩短。网络前缀越短,其地址块所包含的地址数就越多;
10)最长前缀匹配:
**路由表中每个项目由“网络前缀”和“下一跳地址”组成,但是在查找路由表时,可能会得到不止一个匹配结果;
**应当从匹配结果中选择具有最长网络前缀的路由;这叫做最长前缀匹配,这是因为网络前缀越长,其地址块就越小,因而路由就越具体。
子网划分
以C类网络为例,原有8位主机位,2的8次方即256个主机地址,默认子网掩码255.255.255.0。
借用1位主机位,产生2个子网,每个子网有126个主机地址;借用2位主机位,产生4个子网,每个子网有62个主机地址……
练习题
把子网掩码为255.255.0.0的网络40.15.0.0分为两个子网,假设第一个子网为40.15.0.0/17,则第二个子网为?
40.15.0.0/17 表示网段是40.15.0.0,子网掩码是17位。
子网掩码为:255.255.128.0,斜杠后面的17表示子网掩码前17位为1.
答案:划分为两个子网的话子网掩码应该为255.255.128.0
第一个子网是40.15.0.0/17,可用地址范围是40.15.0.1~40.15.127.254(第一个为主机地址,最后一个为广播地址,不可用)
第二个子网是40.15.128.0/17,可用地址范围是40.15.128.1~40.15.255.254
解析:
掩码的前两个八位是255,第三个八位是128,有2的一次方个子网(因为第三个八位只有一个1,后面七位都是0),所以ip 地址第三个8位是0000,0000或者1000,0000,即0或者128。
因为第3个8位是1000,0000,可以区分开头第一个数是0还是1, 区分了两个子网。所以这两个子网是40.15.0.0和40.15.128.0
8.ICMP(Internet Control Message Protocol)网际控制报文协议
ICMP 报文有两种:差错报告报文和询问报文。
当运行PING 127.0.0.1时,这个IP数据报将发送给谁
127.0.0.1是环回地址。主机将测试用的IP数据报发送给本主机的ICMP(而不是发送到因特网上)以便进行环回测试。
9.IP协议的定义,主要有什么作用?TCP与UDP呢?
IP协议(Internet Protocol):网际协议,主要提供网际互联的作用。
TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议,在收发数据前,必须和对方建立连接。UDP(User Data Protocol,用户数据报协议)是与TCP相对应的协议,它是面向非连接的协议,不与对方建立连接,而是直接就把数据包发送过去。
10.RIP协议的特点?RIP的优缺点?RIP用什么来传送?
1)特点
l 仅和相邻路由器交换信息
l 路由器交换的信息是当前本路由器所知道的全部信息,即自己的路由表
l 按固定的时间间隔交换路由信息
2)优缺点
优点:实现简单、开销较小
缺点:限制了网络的规模(因为它能使用的最大距离为15),坏消息传播得慢。
3)RIP用UDP来传送
11.OSPF协议的特点?OSPF用什么来传送?
1)特点
l 向本自治系统中所有路由器发送信息(而RIP是发送给邻居)
l 发送的信息就是与本路由器相邻的所有路由器的链路状态(RIP发送的是整个路由表)
l 只有当链路状态发生变化时,路由器才向所有路由器用洪泛法发送此信息(而RIP是30秒更新一次)
2)OSPF直接用IP数据报传送
12.链路层广播和IP广播有何区别
链路层广播是用数据链路层协议(第二层)在一个以太网上实现的对该局域网上的所有主机的MAC帧进行广播。
IP广播则是用IP协议通过因特网实现的对一个网络(即目的网络)上的所有主机的IP数据报广播。
13.交换机和路由器各自的实现原理是什么?有什么区别?
实现原理:路由器通过路由决定数据的转发。转发策略称为路由选择。
而交换机则是一种基于MAC地址识别,能完成封转转发数据包功能的网络设备。交换机可以“学习”MAC地址,并把其存放在内部地址表中,通过在数据帧的起始者和目标接收者之间建立临时的交换路径,使数据帧直接由源地址到达目的地址。
区别:
l 二者的工作层次不同
交换机工作在数据链路层,而路由器工作在网络层。
l 二者转发所依据的对象不同
交换机是利用MAC地址确定转发数据的目的地址,而路由器则是利用IP地址来确定数据转发的地址。
14.VPN(虚拟专用网),NAT(网络地址转换)