计算机网络-网络层总结

网络层提供的两种服务

虚电路服务

image-20200801164843195

思路:可靠通信应当由网络来保证。

必须建立连接。

终点地址:仅在连接建立阶段使用,每个分组使用短的虚电路号。

分组转发:属于同一条虚电路的分组均按照同一路由,进行转发。

分组的顺序:总是按发送的顺序到达终点。

端到端的差错处理和流量控制:可以交给网络负责,也可以由用户主机负责。

当节点出现故障时:所有通过出故障的节点的虚电路均不能工作。

数据报服务

image-20200801165602235

思路:可靠通信由用户主机来保证。

不需要建立连接。

每个分组都有终点的完整地址。每个分组独立选择路由进行转发。

当出现故障时,出故障的节点可能会丢失分组,一些路由可能会发生变化。

到达终点时不一定按照发送时的顺序。

端到端的差错处理和流量控制:交由用户主机负责。

IP协议

网络设备

物理层中继系统:转发器

数据链路层:网桥,桥接器。

网络层:路由器

网络层以上的中继系统:网关。

由于历史原因,TCP/IP协议的文献将网络层使用的路由器称为网关。

虚拟互联网

所谓的虚拟互联网就是逻辑互联网络,他的意思就是关联起来的各种物理网络的异构性本来是客观存在的,但是利用IP协议就可以使这些性能各异的网络从用户看起来好像是一个统一的网络。

使用IP协议的虚拟互联网络可简称为IP网。

好处:当互联网上的主机进行通信时,就好像在一个网络上通信一样,而看不见互联的网络异构细节。

IP地址

IP协议简介

网际协议IP是TCP/IP体系中最重要的协议之一。与IP协议共同使用的还有四个协议:

  • 地址解析协议ARP
  • 逆地址解析协议RARP
  • 网际控制报文协议ICMP
  • 网际组管理协议IGMP

image-20200801190422917

ARP协议用来解析目标的MAC地址,IP协议依赖于ARP,ICMP依赖于IP,用来报告网络故障的原因,IGMP也依赖于IP。

IP地址的层次结构

IPV4是32位的,地址分为网络ID和主机ID。

IP地址是分类的。一共可分为5类。

A类IP地址:网络ID占8位,剩下的24位是主机地址

B类IP地址:网络ID占16位,主机ID占16位。

C类IP地址:网络ID占24位,主机ID占8位。

D类IP地址:组播地址。

E类IP地址:研究用的IP地址。

image-20200801192036067

image-20200801194542227

特殊的IP地址

127.0.0.1 环回地址

169.254.0.0 自动获取IP地址时,默认临时地址。

保留的私有地址

10.0.0.0 保留的A类地址

172.16.0.0 — 172.31.0.0 保留32个B类地址

192.168.0.0 — 192.168.255.0 保留256个C类地址

子网掩码的作用

子网掩码又被称为网络掩码,用来确定IP地址是否在一个网段,怎样判断呢,子网掩码和IP地址全部转换为二进制,然后和IP地址做与运算,结果就是使IP地址的主机部分归0,只留下网络ID,如果通信的目标IP和本机是一个网段那就不需要路由器帮忙转发,如果不在一个网段,就需要路由器转发。

举个例子:比如IP地址时172.16.122.104,它的子网掩码是255.255.0.0,两者做与运算,结果是 172.16.0.0;如果通信目标的IP地址前两段是172.16那就不需要路由器参与,如果不是就代表不在一个网段,需要本网段的路由器帮忙转发到另一个网段。

划分子网和构造超网

划分子网,将一个C类网段划分成两个相等的子网,子网掩码向后移动一位。

ARP欺骗

ARP协议的作用就是识别计算机MAC地址,在正常情况下,主机A要想和同一个网段的B通信,首先广播询问一下,“谁是主机B啊?”,然后这个消息被同一个网段上的所有计算机收到,这时候B收到后向主机A发送自己的MAC地址,“这是我的联系方式,有事直接联系就行!”,这样主机A就在缓存中记录了B的MAC地址,以后如果没有更改就一直使用这个MAC地址给B联系。那第三方怎样通过ARP欺骗使主机B不能收到消息甚至不能访问互联网呢?原来在B在向A发送自己的MAC地址后,第三方主机又向A发送了伪造B的MAC地址,然后A收到后,又更新了B的MAC地址,这时候,A向B发送的数据,B就收不到了。这个过程就是ARP欺骗。

IP地址与MAC地址

IP数据报格式

一个IP数据报由首部和数据两部分组成。

首部的前部分是固定长度,一共20个字节,是所有IP数据报必须具有的。

在首部的固定部分的后面是一些可选字段,其长度是可变的。

image-20200802195703861

IP数据报首部的固定部分中的各个字段

0-4位代表版本:IPV4,IPV6;

4-8位代表首部的长度,这属于可选部分,长度是可变的。

8-16位 是区分服务:又称服务质量(Qos),在传输过程中标记IP数据报处理的优先级,这需要和服务器协商,也就是让对法治到这个数据报要优先处理,优先响应。

16-31位。代表中的长度,代表这个数据报的大小。

标识占16位,是一个计数器,每产生一个数据报就+1。

标志占3位,表示是否被分片。标注字段的最低位是MF。MF=1表示后面还有分片。MF=0表示最后一个分片。当标志字段中间的一位是DF,DF= 0时才允许分片。

片偏移量:较长的分组在分片后,某片在原分组的相对位置。偏移单位是8个字节。

image-20200802222136315

TTL:生存时间,每经过一个路由器,对应的值就减一。数据包在网络中可通过的路由器数的最大值。

IP转发分组的流程

ICMP(国际控制报文协议)

为了提高IP数据报交互成功的机会,在网际层使用了网际控制报文协议ICMP。

ICMP允许主机或路由器报告差错情况和提供有关异常的报告。

ICMP不是高层协议,是IP层协议。

ICMP报文作为IP层数据报的数据,加上数据报的首部,组成IP数据报发送出去。

ICMP的类型

ICMP分为两种,一种是差错报告报文和ICMP询问报文。

ICMP报文的前4个字节是统一格式,共有三个字段:类型,代码和校验和。接着的4个字节的内容与ICMP的类型有关。

差错报告报文有五种:终点不可达,源点抑制,时间超过,参数问题,改变路由。

询问报文有两种:回送请求和回答报文,时间戳请求和回答报文。

差错报告 报告报文的数据字段的内容

收到的IP数据报:IP数据报首部+8个字节

ICMP差错报告报文:ICMP前8个字节+IP数据报首部+8个字节。

装入ICMP报文的IP数据报:首部+ICMP差错报文

同一个局域网内相互ping 的时延在10ms以内算正常,如果在广域网一般在100ms以内算正常。

网络排错:path ping 你的ip地址

使用ping能够判断网络通不通,比如请求超时,能够判断出什么位置出现的网络故障。

image-20200803154344338

使用pathping能够跟踪数据报的路径,查出故障点,并且能够计算出路由器转发数据的丢包率,以及延迟,根据这些信息可以推断出网络是否拥堵。

image-20200803154238514

路由选择协议

动态路由协议

RIP协议是最早 的动态路由协议,周期性广播 ,每隔30s广播一次,动态选择最佳路由路径。跳数越小,就是最佳路径。跳数最大值是16。超过16就不可到达了。如果中间间隔的广播超过了30s,那临近的路由器就会把这个没有发送广播的机器作为宕机状态,让以前使用它的路由删除旧的地址,重新缓存。

OSPF(内部网关协议)

OSPF是动态路由协议的一种,是开放式的,也就是说各个运行商都支持这种协议。他是根据带宽的高低来确定最优的转发路径的。并且支持多区域,触发式更新操作。

他是怎样确定邻居路由器的状态呢?

原来在他内部维护了3张表,其中一张就是邻居表,每隔2秒向本路由器的邻居表中,发送hello数据报,这个数据包很小,所以不占用多少流量与带宽,还能确定邻居路由的状态。

另一张表是链路状态表,表示通过最短路径算法,选择最优的转发路径,路径的权值就是带宽,带宽越大优先级越高。

最后一张是计算路由表,作用是不让路由器与路由器之间产生环路。

1、向本系统中所有路由器发送消息,这里使用的方法是洪泛法。

2、发送的信息就是与本路由器相邻的所有路由器的链路状态,但这只是路由器所知道的部分信息。

3、只有当链路状态发生变化时,路由器才用洪泛法向所有路由器发送此信息。

OSPF划分多个区域

为了使OSPF用于发大规模网络,OSPF将一个自制系统(大网络)划分成小的区域,每个区域都有一个32位的区域标识符(用10进制表示)。区域也不能太大,一般一个区域的路由数量不超过200个。

OSPF特点

  • OSPF不用UDP而是直接使用IP数据报传送。

  • OSPF对不同链路根据IP分组的不同服务类型而设置成不同的代价。因此,OSPF对于不同类型的业务可以计算出不同的路由。

  • 如果到达同一个网络有多条相同代价的路径,那么可以将通信量分配给这几条路径,这叫做多路径之间的负载均衡。

  • 所有的OSPF路由器之间交换的分组都具有鉴别的功能。

  • 支持可变长的子网划分和无分类编址CIDR。

  • 每个链路状态都带上一个32位的序号,序号越大状态就越新。

おすすめ

転載: blog.csdn.net/qq_43672652/article/details/111172687