网络层重要协议:IP协议

1 基础概念

1.1 IP地址

概念:

IP地址,指互联网协议地址,网际协议地址,它为互联网上的每一个网络和主机分配一个逻辑地址,以此来屏蔽物理地址的差异。

组成:

网络号 标识网段 ,保证相互连接的两个网段具有不同的标识;
主机号 标识主机 ,同一网段内,主机之间具有相同的网络号,但是必须有不同的主机号;
分类:
IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(4个字节)
IP地址分为五类:
各类地址的表示范围:

主机最大连接数减去2,是扣除了全0和全1的特殊IP地址
特殊的IP地址:
        1.主机地址全为0,就成了网络号,代表这个局域网;
        
        2.主机地址全为1,就成了广播地址,用于给同一个链路中相互连接的所有主机发送数据包;
        3. 127.*的IP地址用于本机环回(loop back)测试,通常是127.0.0.1。

1.2 子网掩码

格式:
子网掩码格式 也是一个 32 位的二进制数。其中左边是网络位,用二进制数字 “1” 表示, 1的数目等于网络位的长度;右边是主机位,用二进制数字“0” 表示, 0 的数目等于主机位的长度。

作用:

1.划分ABC三类 IP 地址子网:如一个BIP地址:191.100.0.0,按A ~ E类分类来说,网络号二进制数为16位网络号+16位主机号。假设使用子网掩码 255.255.128.0(即17) 来划分子网,意味着划分子网后,高17位都是网络位/网络号,也就是将原来16位主机号,划分为1位子网号+15位主机号。

2.网络通信时,子网掩码结合IP地址,可以计算获得网络号(划分子网后的网络号)及主机号(划分子网后的主机号)。一般用于判断目的IP与本IP是否为同一个网段。

计算方式:

IP 地址和子网掩码进行 按位与 操作(与操作,两个都是 1 结果为 1 ,否则为 0 ),得到的结果就是网络号。将子网掩码二进制按位取反,再与 IP 地址位与计算,得到的就是主机号。

1.3 MAC地址

MAC地址,用于标识网络设备的硬件物理地址,主机或者网卡的MAC地址都是唯一的,在出厂时就确定了,不能修改。网络通信,即网络数据传输,本质上是网络硬件设备,将数据发送到网卡上,或从网卡接收数据。 硬件层面,只能基于MAC地址识别网络设备的网络物理地址。

对比:

IP 地址描述的是 路途总体的起点和终点 ;是给人使用的网络逻辑地址。
MAC 地址描述的是路途上的每一个区间的起点和终点,即 每一跳的起点和终点 ;是给网络硬件设备使用的网络物理地址。

2 网络设备及相关技术

集线器: 转发所有端口

集线器是工作在物理层的网络设备,发送到集线器的任何数据,都只是简单的将数据复制并 转发到其他 所有端口

交换机:MAC地址转换表+转发对应端口

交换机工作在数据链路层,交换机内部回记录并维护一张MAC地址转换表

1. MAC 地址转换表主要记录 MAC 地址与端口之间的映射 。(端口指交换机后边的物理端口)
2. 主机连接到交换机,及主机发送数据的时候,交换机可以学习并记录该主机 MAC 地址与端口信息。
3. 交换机接收到数据报以后,在 MAC 地址转换表中,通过目的 MAC 查找到对应的端口,则目的主机为该端口相连接的主机。只需要将数据报转发到对应端口 上即可。

主机: 网络分层从上到下封装

发送数据报时,发送端主机都需要先根据网络分层从上到下封装

   1. 源IP与目的IP标识整个路径的起点和终点;

   2.源MAC与目的MAC标识了每一跳;

   3.源主机和目的主机在同一个网段,下一跳设备就是目的主机;

   4.发送端主机和接收端主机在不同网段时,发送端主机是无法知道目的主机在哪,此时会设置下一跳设备为网关设备;

主机&路由器: ARP 缓存表 +ARP 寻址
首先, ARP 是一个介于数据链路层和网络层之间的协议; ARP 协议建立了 IP 地址与 MAC 地址的映射关系。在数据链路层,寻找下一跳设备MAC 地址的过程,称为 ARP 寻址:
1.主机和路由器中都保存了一张ARP缓存表:通过 IP 地址可以找到对应的 MAC 地址。
2.根据下一跳设备的IP地址,在 ARP 缓存表中能找到对应的 MAC 地址,则可以设置目的 MAC 并发送数据报。
3.如果找不到,则发送ARP广播数据报:目的 MAC 为广播地址,询问下一跳设备的 MAC 地址。

路由器:路由+NAPT

作用:

1.网关:划分公网和局域网,还可以将局域网划分为多个子网

   路由器作为网关: 划分局域网多个子网时,可以直接通过ARP寻址找到局域网任意主机。

           划分公网和局域网时,局域网内主机发送数据报到公网主机时,需要基于 NAPT 协议,将局域网主机的IP 地址和端口号,转换为路由器公网 IP 和端口号。

2.路由: 路由就是在网络结构中找到一跳通往终点的路线

冲突域
主机之间通过网络设备(集线器、交换机)的物理端口、网线相连时,两个主机在同一时刻同时发送数据报,如果存在冲突,则该网络范围为一个冲突域(Collision Domain )。
冲突域是基于第一层物理层,又称为碰撞域
集线器接收到数据报后,是将数据报简单的复制、转发到其他所有端口,如果有两个数据报要同时
转发,就会出现冲突。整个集线器,即 集线器的所有端口为一个冲突域
交换机接收到数据报后,是将数据报转发到对应的一个端口:两个数据报同时转发到不同端口不存
在冲突,但同时转发到一个端口就出现冲突。即 交换机可以分割冲突域,分割后,一个端口为一个
冲突域

广播域
广播是指某个网络中的主机同时向网络中其它所有主机发送数据( IP MAC 地址设置为广播地址),这个数据所能传播到的范围即为广播域(Broadcast Domain )。
广播域基于第二层数据链路层。
集线器接收到广播数据报,仍是简单的复制、转发到其他所有端口,所以 集线器的所有端口为一个
广播域
交换机接收到广播数据报,会转发到其他所有端口;而路由器可以隔离广播域
路由器某个LAN口网卡接收到广播数据报,如果发现是同网段,则丢弃,即广播数据不会扩
散到路由器以外。

3. 网络数据传输流程

使用集线器网络互联的情况下,发送端主机发送数据包时,需要先从上到下封装数据报。但封装时,目的MAC 可能并不知道,需要先进行 ARP 寻址:
(1)发送端在本机 ARP 缓存表中,根据目的 IP 查找对应的 MAC 地址
(2)如果找到,则可以在数据链路层以太网帧头中,设置目的 MAC 并发送数据包
(3)如果没有找到,需要先发送 ARP 广播请求,让接收端,即目的主机告诉自己,目的 MAC 是多少
(4)发送端更新本机 ARP 缓存表:保存目的 IP 与目的 MAC 的映射
(5)有了目的 MAC ,就可以按照第(2)个步骤发送数据了。
涉及的知识:封装,集线器转发, ARP 寻址

 如果本机ARP缓存表中找不到目的MAC,则需要先发送广播请求:

涉及的知识:ARP寻址,ARP广播

4 应用层重要协议

4.1 DNS协议

域名系统解析协议,将不便于记忆的IP地址转换为域名,并通过域名系统来映射域名和IP地址,DNS域名服务器,即提供域名转换为IP地址的服务器.(例如www.baidu.com

网络通信发送数据时,如果使用目的主机的域名,需要先通过 域名解析 查找到对应的 IP 地址:
        域名解析的过程,可以简单的理解为:发送端主机作为域名系统树形结构的一个子节点,通过域名 信息,从下到上查找对应IP 地址的过程。如果到根节点(根域名服务器)还找不到,即找不到该主 机。
        域名解析使用DNS 协议 来传输数据。 DNS 协议是应用层协议,基于传输层 UDP TCP 协议来实现。

4.2 NAT和NAPT

        NAT技术:解决IP地址不够用的问题,就是将私有IP和全局IP相互转化的技术方法,因为全局IP要求唯一,但是私有IP不需要;在不同的局域网上出现相同的私有IP是完全不影响的;

        NAPT:局域网内部多个主机都访问同一个外网服务器,此时对于服务器返回的数据终目的IPT都是相同的,此时NAPT就通过IP+port来建立这个关联关系,这种关联关系也是由NAT路由器自动维护的。例如在TCP的情况下,建立连接时,就会生成这个表项;在断开连接后,就会删除这个表项。

 由于NAT依赖这个转换表,所以有诸多限制:

        无法从NAT外部向内部服务器建立连接;

        转换表的生成和销毁都需要额外开销;

        通信过程中一旦NAT设备异常,即使存在热备,所有的TCP连接也都会断开;

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值