目录
网络层协议做的工作主要是 地址管理与路由选择(做路径规划)
IP协议内置拆包和组包的功能,如果TCP数据报太长,IP就会进行分包,每个包携带一部分TCP数据.
UDP实现拆包组包可以参考IP的三个字段(标识,标志位,片偏移).
网络环境非常复杂,A->B发送一个IP数据报,数据报就会沿着网络尝试去找B的位置,如果B存在就会直接发送,如果B不存在,就会设置初始TTL(是转发次数) ,每次经过一个路由器就会次数-=1,如果最后TTL为0,那么就认为IP找不到就会触发丢包.
其中源IP地址,目的IP地址,源端口号,目的端口号,协议类型 称为5元组
也就是说可以给每一个主机分配一个唯一的IP地址么???
由于现在手机端+pc端+海量服务器+物联网,就会导致IP地址不够用
动态分配IP地址(DHCP)
动态分配IP地址也就是当设备上网的时候就分配IP地址,不上网的时候就不分配IP地址.
NAT (IP地址转换)
将IP地址分为两大类,一个是内网IP(局域网里面使用的IP),一个是外网IP(广域网中使用的IP).
允许局域网之间的内网IP重复,但是外网IP要保持唯一.
客户端给服务器进行发送数据报,数据报会经过一些设备进行转发,没经过一个路由器就会进行一次IP地址的替换(路由器会记住替换的是哪一个IP地址),当服务器返回给客户端的时候数据报也会经过一系列路由器之间的转发,会将IP地址替换回来,返回给客户端.
NAT机制本质上就是利用一个外网IP代表一大批内网的设备,这样就会将一大批IP地址省下来了.设备之间的IP就可以做出区分了.
IPV6
IPV6是解决IP地址不够用的最终解决方案,IPV6和IPV4是完全不同的两个协议.
IPV4 是4个字节 也就是 2^32 bit
IPV6 是16字节 也就是 2^32 * 2^32 *2^32 *2^32
为了更好的组网,IP又划分为网络号和主机号
主流的划分方式为 : CIDR ;
引入了子网掩码,通过子网掩码来区分哪部分是网络号,哪部分是主机号.
同一个局域网内部,设备之间的网络号都是一样的,主机号是不同的
两个相邻的局域网,网络号是不同的
绿色局域网设备网络号都为192.168.0
如果两个设备主机号相同,就会导致其中一台设备无法上网(IP地址可以通过DHCP自动来分配,也可以通过手动的方式进行分配)
特殊的IP地址
路由选择就相当于是一个人在问路,每次到达某一个地方就会问路,最终一点一点接近目标地点.
每一次问路就相当于是一次路由转发,每次经过路由器会告诉我的目的IP,路由器都会有一张路由表,路由器会根据目的IP在路由表中匹配,如果匹配到了就会按照指定的方向继续往下转发,如果没有匹配到就会有一个默认的方向为下一跳地址(指的时路由器的默认选项).