前言
计算机网络笔记第四部分内容,主要包括网际层的相关知识,主要围绕网络层如何交付IP数据报展开。
一、网络层概述
网络层的主要任务是实现不同网路之间的互联(同一网络中不同设备互联只需要数据链路层即可)。网络层需要解决的主要问题有:
- 向上提供什么服务(可靠传输或不可靠传输)
- 寻址问题
- 路由选择(选择走哪条路)
下面网络层的主要只是基于TCP/IP协议栈,在TCP/IP中,网络层也被称为网际层。
二、MAC地址、IP地址及其转换
1、MAC地址
MAC地址其实是属于数据链路层的内容,但是因为它和IP地址息息相关,所以就放到这里。 在广播信道上(多台主机接入一个主线),各主机之间为了相互区分,每个主机就需要一个唯一标识符,也就是MAC地址。通过校验接收到的帧中的目的地址来判断该帧是否是发送给自己的。PS:广播地址的目的地址为全1(FF-FF-FF-FF-FF-FF)
MAC地址又被称为硬件地址、物理地址,固化在网络适配器(网卡)中。一般一个主机会有两个网卡——无线网卡和有限网卡,每个网卡有自己的MAC地址,而交换机和路由器有更多的网络接口也就需要更多的MAC地址。所以MAC地址并不是唯一标识一台主机,而是标识一个网络接口。
MAC帧格式:EUI-48,现在还有EUI-64 MAC地址的发送顺序有点小奇怪,从第一字节到第四字节,但是字节内是从b0到b7。 ps:如何判断是否是多播帧?目的地址的第一个字节能否被2整除,不能整除就是多播(即b0为1) 目前大多数设备已经采用随机MAC地址技术,来防止通过MAC地址追踪设备。
2、IP地址
IP地址是路由器和主机的唯一标识(和MAC地址不同),也是因特网上数量庞大的各个网络的标识。所以只要接入因特网就必须使用IP地址。
数据包转发过程: 在转发过程中,源IP地址和目的IP地址不变,源MAC地址和目的MAC地址随网络发生改变。我的理解是,IP地址只告诉你,数据包的最终目的地在哪,但是中间的路怎么走它不管,而MAC地址则是由路由器选择后,告诉帧具体下一步该去哪,从而一步步到达目的地。
但是这里的问题在于,路由器和主机都只知道相邻设备的IP地址而不知道MAC地址,如何发送呢?这就是ARP协议的功能。
3、ARP协议
每个设备都会有自己的ARP高速缓存表,记录IP的地址和MAC地址的对应关系。所以在发送时,会先查表;如果没找到再发送ARP请求报文。ARP请求报文封装在MAC帧中,是一个广播帧(显然嘛,他不知道要发哪,它的找,可不得广播,这也就导致了ARP协议无法跨网络使用)。简单来说报文的内容就是告诉对方自己得IP地址和MAC地址,给出目的IP地址并请求MAC地址。非目的主机收到解析后会无视,目的主机解析后,会先将发送的主机的IP地址和MAC地址存入表中,并发送响应报文。原先发送的主机收到后就知道了目的主机的MAC地址。
注意,IP地址和MAC地址的对应关系不是确定的(比如网卡坏了换个网卡)。ARP高速缓存表中的记录类型分两种,动态和静态。 动态指主机自己通过ARP请求获取的,生命周期为两分钟。 静态是手动设置的,生命周期在不同操作系统中各有不同。
二、网络层提供的服务
1、面向连接的虚电路服务 虚电路服务在就相当于在发送数据前在网络中建立一条逻辑电路,通信双方必须沿着已建立的虚电路发送数据。这种方式配合可靠传输的网络协议就能实现可靠传输,但是因特网并没有采用这种方式。
2、无连接的数据报服务 无连接的数据报服务要求可靠通信应由用户的主机来保证而不是网络,所以通信前不需要建立连接,每个分组可以走不同的路径。 这样的设计思想:将复杂的网络处理功能置于网络边缘(用户主机),将相对简单的交付功能置于网络核心。 这样做的好处在于可以减少路由设备的价格,运行方式灵活,可以适应多种应用。
三、IPv4地址
1、表示方法
IPv4地址采用点分十进制以方便表示
2、编址方法
IPv4地址的编址方法经历了三个阶段:
分类编址
注意:
- 只有ABC类地址可以分配给主机,或者路由器的各个接口
- 对于A类网络,网络号全0保留不指派,不能分配给主机,或者路由器的各个接口
- 网络号除了开头固定部分全部取1作为本地环回测试地址,也不可指派
- 对于一个网络,主机号全部取0就代表该网络的网络地址,全1代表该网络的广播地址
一般不使用的特殊IP地址:
划分子网
一个C类网络可分配的IP地址是254个,一个B类网络可分配的IP地址有65534个。 划分子网的意义在于:
- 如果不划分子网,那么每个路由器中路由表中中信息量极大!导致速度慢,性能差。划分子网后,减少了广播所带来的负面影响,提高了整体性能。
- 便于管理和维护。
- 对IP地址进行和合理的使用,避免大量IP地址浪费。虽然划分子网在绝对意义上减少了IP地址(需要多分配网络地址和广播),但是会使IP地址得到充分利用。比如你需要10个有300个主机的网络,此时C类网络对你而言小了,你需要10个B类网络,但每个网络的IP地址你只使用了很少。有了划分子网你就可以只申请一个B类地址并划分,大大减少了IP地址的浪费。
划分子网,就要将原网络的主机号中借用几位来作为子网号,那么如何让计算机知道,借用了几位作为子网号呢?这就需要子网掩码。
子网掩码的规则:
- 子网掩码用连续的1来对应网络号和子网号,用连续的0来对应主机号。
- 将被划分的IP地址和子网掩码相与,即可得到它所属的子网网络地址。
默认子网掩码:网络号全1,主机号全0。
无分类编址
|