网络原理-网络层
网络层负责在复杂的网络环境中确定一个合适的路径.
IP协议
基本概念:
主机:配有IP地址,但是不进⾏路由控制的设备;
路由器:即配有IP地址,又能进⾏路由控制;
节点:主机和路由器的统称;
IP是网络层协议,表示方法通常使用点分十进制表示,例如192.168.250.62,协议格式如下:
4位版本号:指定ip协议的版本,如ipv4,ipv6.
4位首部长度:标识ip数据报的首部长度,单位4字节,因此首部长度最大为60字节.
8位服务类型:3位优先权字段(已经弃⽤),4位TOS字段,和1位保留字段(必须置为0).4位TOS分别表示:最小延时,最大吞吐量,最高可靠性,最小成本.这四者相互冲突,只能选择⼀个.
16位总长度:标识ip数据报的总长度.ip数据报长度有限制,但是ip协议提供了拆包,组包功能.
16位标识:唯一的标识主机发送的报文.如果 IP 报文在数据链路层被分片了,那么每一个片里面的这个 id 都是相同的.
3位标识:第一位保留. 第二位置为 1 表示禁止分片,这时候如果报文长度超过 MTU,IP 模块就会丢弃报文.第三位表示 "更多分片",,如果分片了的话,最后一个分片置为 1, 其他是 0,类似于一个结束标记.
13位片偏移:是分片相对于原始IP报⽂开始处的偏移,用来标识分片在原始报文中的位置.
8位生存时间:数据报到达目的地的最大报文跳数.一般是 64. 每次经过一个路由,TTL -= 1, 一直减到 0 还没到达,那么就丢弃了.这个字段主要是用来防止出现路由循环.
8位协议:表示上次协议,如TCP/UDP.
16位首部校验和:判断首部是否损坏.
32位源地址和32位⽬标地址:发送端ip与接收端ip.
路由选择
路由选择是在复杂的⽹络结构中,找出⼀条通往终点的路线.
路由选择的过程是一跳一跳问路的过程.所谓"⼀跳"就是数据链路层中的⼀个区间.具体在以太⽹中指从源MAC地址到⽬的MAC地址之间的帧传输区间.
IP数据报的传输过程也和问路一样:
1.当IP数据包,到达路由器时,路由器会先查看⽬的IP.
2.路由器绝对这个数据报直接发送给目的ip还是发送给下一个路由器.
3.循环这个过程,知道数据报到达目的ip.
判断这个数据报是发送给目的ip还是发送给下一个路由器,是由每个节点内部维护的路由表决定的.
地址管理
IP地址分为网络号和主机号.
网络号:保证相互连接的两个⽹段具有不同的标识.
主机号:同⼀⽹段内,主机之间具有相同的⽹络号,但是必须有不同的主机号.
不同的⼦⽹其实就是把⽹络号相同的主机放到⼀起.如果在⼦⽹中新增⼀台主机,则这台主机的⽹络号和这个⼦⽹的⽹络号⼀致,但是主机号必须不能和⼦⽹中的其他主机重复.
主机号与网络号的划分方案有两种.
五类主机号
A类:0.0.0.0到127.255.255.255
B类:128.0.0.0到191.255.255.255
C类:192.0.0.0到223.255.255.255
D类:224.0.0.0到239.255.255.255
E类:240.0.0.0到247.255.255.255
但是,随着Internet的⻜速发展,这种划分⽅案的局限性很快显现出来,⼤多数组织都申请B类⽹络地址,导致B类地址很快就分配完了,⽽A类却浪费了⼤量地址.
CIDR
针对上述五类划分方案的弊端,CIDR划分方案就应运而生了.
CIDR划分方案:
1.引⼊⼀个额外的子网掩码来区分⽹络号和主机号.
2.子网掩码也是⼀个32位的正整数.通常⽤⼀串"0"来结尾.
3.将IP地址和子网掩码进⾏"按位与"操作,得到的结果就是⽹络号.
4.⽹络号和主机号的划分与这个IP地址是A类,B类还是C类⽆关.
举例:
IP地址 | 140.252.20.68 |
子网掩码 | 255.255.255.0 |
网络号 | 140.252.20.0 |
子网划分范围 | 140.252.20.0-140.252.20.255 |
特殊的ip地址
将IP地址中的主机地址全部设为0,就成为了⽹络号,代表这个局域⽹.
将IP地址中的主机地址全部设为1,就成为了⼴播地址,⽤于给同⼀个链路中相互连接的所有主机发送数据包.
127.*的ip地址用于本机的环回测试,通常使用的是127.0.0.1.
IP地址的数量限制
ipv4是一个4字节,32位的整数,他所能表示的ip数量只有2^32次方个,在网络日益发达的今日,这个数量不够用了.CIDR在⼀定程度上缓解了IP地址不够⽤的问题,但是仍然不太够用,这时引入了三个机制来解决:
1.动态分配ip地址:只给接⼊⽹络的设备分配IP地址.因此同⼀个MAC地址的设备,每次接⼊互联⽹中,得到的IP地址不⼀定是相同的.
2.NAT机制
3.使用ipv6,ipv6是一个16字节,128位的整数,他所能表示的ip数量有2^128次方之多,ipv4与ipv6是两个互不干扰的协议.
NAT机制
NAT技术是解决当前ipv4地址不够用的主要手段,是路由器的一个重要功能.
1.NAT技术能在对外通信时将私有ip转换为全局ip.
2.很多学校,家庭,公司内部采⽤每个终端设置私有IP,⽽在路由器或必要的服务器上设置全局IP.
3.全局ip要求唯一,私有ip在同一局域网下唯一,在不同局域网下不要求唯一.
NAT IP转换过程:
1.NAT路由器将源地址从10.0.0.10转换为全局IP 202.244.17.73.
2.NAT路由器收到外来数据时将目的IP202.244.17.73还原为原来的10.0.0.10.
3.NAT路由器内部有一个表来维护这个IP之间的映射关系
NAPT
当同一个局域网中,有两台ip不同的设备访问同一个ip的服务器时,在服务器返回应答时,NAT路由器就无法通过IP之间的映射来找到这个应答应该给谁.为了解决这个问题,就将映射关系中添加了端口号,添加端口号的映射后,就能确保准确的找到这个应答应该返回给谁.