IP编址&数据转发(md版)

IP编址&数据转发

  • 一、IP编址
    • 1.1、二进制、十进制和十六进制
    • 1.2、进制之间的转换
    • 1.3、IP编址
    • 1.4、子网掩码
    • 1.5、二进制和十进制转换
    • 1.6、IP地址分类
    • 1.7、IP地址类型
    • 1.8、地址规划
  • 二、VLSM与CIDR
    • 2.1、有类IP编址的缺陷
    • 2.2、变长子网掩码 VLSM
    • 2.3、缺省情况下的掩码
    • 2.4、子网划分的计算
    • 2.5、子网划分举例—C类地址
    • 2.6、无类域间路由CIDR
    • 2.7、网关
    • 2.8、总结
  • 三、数据转发过程
    • 3.1、数据转发过程概述
      • 3.1.1、TCP封装
      • 3.1.2、IP封装
      • 3.1.3、查找路由
      • 3.1.4、ARP
      • 3.1.5、以太网封装
      • 3.1.6、数据帧转发过程
      • 3.1.7、数据包转发过程
      • 3.1.8、数据帧解封装
      • 3.1.9、数据包解封装
      • 3.1.10、数据段解封装
    • 3.2、总结

一、IP编址

  • 网络层位于数据链路层与传输层之间。网络层中包含了许多协议,其中最为重要的协议就是IP协议。网络层提供了IP路由功能。理解IP路由除了要熟悉IP协议的工作机制之外,还必须理解IP编址以及如何合理地使用IP地址来设计网络。

1.1、二进制、十进制和十六进制

IP编址&数据转发(md版)_第1张图片

在IP网络中,二进制和十六进制是常用的编码方式。

1.2、进制之间的转换

IP编址&数据转发(md版)_第2张图片

1.3、IP编址

IP编址&数据转发(md版)_第3张图片

1、IP地址分为网络部分和主机部分。
2、IP地址由32个二进制位组成,通常用点分十进制形式表示。

IP编址&数据转发(md版)_第4张图片

1、网络地址:主机位全等于0。

2、广播地址:主机位全等于1。

3、这两个地址都不能够分配出去使用。

1.4、子网掩码

IP编址&数据转发(md版)_第5张图片

1.5、二进制和十进制转换

IP编址&数据转发(md版)_第6张图片

1.6、IP地址分类

IP编址&数据转发(md版)_第7张图片

默认掩码:

IP编址&数据转发(md版)_第8张图片

1.7、IP地址类型

1、私有地址范围

  • 10.0.0.0~10.255.255.255
  • 172.16.0.0~172.31.255.255
  • 192.168.0.0~192.168.255.255

2、特殊地址

  • 127.0.0.0~127.255.255.255
  • 0.0.0.0
  • 255.255.255.255

1.8、地址规划

IP编址&数据转发(md版)_第9张图片

二、VLSM与CIDR

2.1、有类IP编址的缺陷

IP编址&数据转发(md版)_第10张图片

在设计网络时使用有类IP地址会造成地址的浪费。

2.2、变长子网掩码 VLSM

  • 变长子网掩码(Variable-Length Subnet Masks,VLSM)的出现是打破传统的以类(class)为标准的地址划分方法,是为了缓解IP地址紧缺而产生的;
  • 作用:节约P地址空间;减少路由表大小。
  • 注意事项:使用VLSM时,所采用的路由协议必须能够支持它,这些路由协议包括RIPV2,OSPF,EIGRP和BGP。

IP编址&数据转发(md版)_第11张图片

  • 如上图:
  • 本例中的地址为C类地址,缺省子网掩码为24位。
  • 用一个主机位作为网络位,借用的主机位变成子网位。
  • 一个子网位有两个取值0和1,因此可划分两个子网。
  • 该比特位设置为0,则子网号为0;该比特位设置为1,则子网号为128;
  • 将剩余的主机位都设置为0,即可得到划分后的子网地址;
  • 将剩余的主机位都设置为1,即可得到子网的广播地址。

2.3、缺省情况下的掩码

1、IP地址:172.16.2.160 掩码:255.255.0.0

IP编址&数据转发(md版)_第12张图片

缺省情况下,未划分子网。

2、IP地址:172.16.2.160 掩码:255.255.255.0

IP编址&数据转发(md版)_第13张图片

“/16”表示子网掩码有16位
“/24”表示子网掩码有24位

3、IP地址:172.16.2.160 掩码:255.255.255.192

IP编址&数据转发(md版)_第14张图片

1、扩展了10位子网地址
2、子网划分的核心思想:“借用”主机位来“制造”新的“网络”

2.4、子网划分的计算

1、你所选择的子网掩码将会产生多少个子网?
        2的x次方(x:子网位数)


2、每个子网能有多少主机?
        2的y次方-2(y:主机位数)


3、有效子网(块大小)?
        块大小=2的y次方(y:主机位数)
        (结果叫做block size或base number)



4、每个子网的广播地址是?
        主机位全为1。(广播地址=下个子网号-1)



5、每个子网的有效主机分别是?
        忽略子网内全为0和全为1的地址,剩下的就是有效主机地址。

2.5、子网划分举例—C类地址

IP编址&数据转发(md版)_第15张图片

  • 子网:网络号,网络地址

2.6、无类域间路由CIDR

  • CIDR的概念:忽略A、B、C类网络的规则,定义前缀相同的一组网络为一个块即一条路由条目。(如:199.0.0.0/8)
  • CIDR的优点:
    • 减少了网络数目,缩小了路由选择表;
    • 从网络流量、CPU和内存方面说,开销更低;
    • 对网络进行编址时,灵活性更大。

IP编址&数据转发(md版)_第16张图片

CIDR增强了网络的可扩展性。

IP编址&数据转发(md版)_第17张图片

2.7、网关

IP编址&数据转发(md版)_第18张图片

网关用来转发来自不同网段之间的数据包。

2.8、总结

1、子网掩码的作用是什么?
	 区分IP地址的网络位和主机位。

2、网关的作用是什么? 
	转发来自不同网段之间的数据包。

IP编址&数据转发(md版)_第19张图片
IP编址&数据转发(md版)_第20张图片

三、数据转发过程

  • TCP/IP协议簇和底层协议配合,保证了数据能够实现端到端的传输。数据传输过程是一个非常复杂的过程,例如数据在转发的过程中会进行一系列的封装和解封装。对于网络工程师来说,只有深入地理解了数据在各种不同设备上的转发过程,才能够对网络进行正确的分析和检测。

3.1、数据转发过程概述

数据包在相同网段内或不同网段之间转发所依据的原理基本一致。

IP编址&数据转发(md版)_第21张图片

3.1.1、TCP封装

IP编址&数据转发(md版)_第22张图片

  • 当主机建立了到达目的地的TCP连接后,便开始对应用层数据进行封装。
  • 0~ 1023:知名端口号,1024~65535:可以动态分配的范围。
  • 80:HTTP服务。
  • Source Port:源端口。
  • Destination Port:目的端口。
  • Sequential Number:序列号。
  • Acknowledgment Number:确认号。

3.1.2、IP封装

IP编址&数据转发(md版)_第23张图片

3.1.3、查找路由

主机A必须要拥有到达目的地的路由。

IP编址&数据转发(md版)_第24张图片

3.1.4、ARP

  • 通进ARP缓存表找到下一跳的MAC地址。
  • 如果表项里没有下一跳的MAC地址,主机A会发送ARP请求。

IP编址&数据转发(md版)_第25张图片

3.1.5、以太网封装

IP编址&数据转发(md版)_第26张图片

3.1.6、数据帧转发过程

IP编址&数据转发(md版)_第27张图片

  • 主机工作在半双工状态下,所以会使用CSMA/CD来检测链路是否空闲。
  • 前导码用于使接收者进入同步状态,定界符用于指示帧的开始。

IP编址&数据转发(md版)_第28张图片

  • 同一个冲突域里的设备都会接收到主机A发送的数据帧。
  • 只有网关(RTA)会处理该数据帧,并继续转发。

3.1.7、数据包转发过程

IP编址&数据转发(md版)_第29张图片

  • 网关检查是否具有到达目的网络的路由条目。
  • 如果存在转发路径,则为数摆包添加一个新的二层帧头和帧尾.并继续转发

3.1.8、数据帧解封装

IP编址&数据转发(md版)_第30张图片

  • RTB以服务器A的MAC地址作为目的MAC继续转发。
  • 服务器A接收到该数据帧后,发现目的MAC为自己的MAC,于是会继续处理数据帧。

3.1.9、数据包解封装

IP编址&数据转发(md版)_第31张图片

  • 服务器A检查数据包的目的IP地址,发现目的IP与自己的IP地址相同。
  • 服务器A剥掉数据包的IP头部后,会送往上层协议TCP继续进行处理。

3.1.10、数据段解封装

IP编址&数据转发(md版)_第32张图片

服务器A检查TCP头部的目的端口,然后将数据段发送给应用层的HTTP协议进行处理。

3.2、总结

1、数据在进行二层和三层封装之前,主机需要了解哪些信息?
	二层:目的MAC;三层:源IP地址

2、当数据帧发送到非目的主机时,非目的主机将会如何处理?
	丢弃

3、传输层如何能够准确的将数据交给特定应用?
	目的端口号

4、当两台主机同时访问服务器的HTTP服务,该服务器如何区分数据属于哪个会话? 
	源IP(SIP)、源端口(SP)
	五元组区分:SIP、DIP、SP、DP、pro(协议)

你可能感兴趣的:(国科学习,通信基础,学习,tcp/ip,php,网络)