1.网络就是一块联络全球的数据流通地带,数据之间流通依靠路由器(粗略)
2.路由器:就像现实中包裹的中转站 会通过算法将数据包发往正确的下一站
3.数据包:IP就是地址,MAC就是收货人的身份证
4.转发网关:内网间数据传输时,网关依赖算法找到正确的发送路径
5.NAT网关:因为不同局域网内主机的IP不唯一,但网关的IP唯一,所以当数据包需要通过网关离开局域网时,NAT网关会将IP改为网关IP,同理,目的地网关会使用端口映射目的地IP
NAT网关类似于一个代理,访问公网时必须要保证数据包IP的唯一性,所以NAT会替换发送自己的IP,当接收到数据包时,会根据映射将数据包发送至内网主机
6.协议:数据之间传输的规定,如果违反规定,就不能正常交流
7.公网IP地址都是唯一的,是网络世界的地址;网卡的MAC也是唯一的,是网络世界的身份证;云主机分配的网卡是另一个平行世界的MAC~~~不太懂
8.CIDR协议:规定网络地址的协议,分为两段,一段是iP号,一段是主机号,IP号由‘/’号后的数来决定,掩码表示和CIDR进行&运算后等于IP号,广播地址为主机号全1
9.DHCP协议:房东协议,在内网中通过两次广播和收听给新加入的主机分配IP地址,多个房东时注意撤销,第一次收听时会预留IP,未被选择则撤销预留,‘房满时’会随机踢人
10.OSI七层模型,TCP/IP五层模型:另开文章系统记录(待定)
11.ARP协议,会记录IP地址相关的MAC,如果没有,会广播IP得到MAC,用于数据包传输到局域网后,在网内直接根据MAC传输数据包,IP地址会变动,所以记录会过期,定期更新
12.HUP桥接器:将收到的数据向链接的其他主机全部发送一份,收到的数据的主机会查看是否是属于自己的数据包,不是则抛弃,会产生大量废数据包
13.交换机:HUP升级版,会记录返回数据包的主机,然后进行记录,再次发送数据包时,会根据记录发送,不会产生废数据包
14.ICMP协议:基于IP协议但由于与端口无关,所以依然和IP属于同一层模型,打包发送的指令,解包接收到的指令,打包在IP数据包的内部
15.路由器的进化
静态路由协议:纯靠人写,手抄地图
动态路由协议:
路由表的算法:
距离矢量路由算法:新加入的IP会向全世界广播自己的地址,然后根据相邻IP向外记录自身位置
缺点:自身消失时,相邻IP不能准确判断,只能根据查找失败的阈值来确定一个IP的消失,每次更新都需要更新整个路由表
链路状态路由算法:新加入的IP会向周围相邻IP发送自身位置,然后收到回复后,根据往返时间计算自身与邻居距离,广播全世界自身与相邻IP的链路状态,然后各个路由器构建一幅图,再根据算法计算最近的距离
优点:自身消失时,因为是通过图直接查找,所以消失会被直接发现,每次更新也只需要更新新加入IP的相邻区域
在构建好的图中搜寻最短路径的算法:
OSPF:开放式最短路径优先算法,常用于数据中心内部,也称为内部网关协议(IGP),有效发现最短路径,当数据量过大时,让多条路同时传输提升效率,形成均衡负载的最短路径,此时称为等价路由
BGP:路径矢量路由,距离矢量路由的升级,链接多个运营商,因为可用信息量足够多,可以直接找到最优路径
16.字节序
存储数据时,以字节为单位,人类正常读写方式存储,比如从大往小读,但计算机从小往大存读取效率更高,所以主机通常都是小端字节序,网络只用于传输就采用了大端字节序,更符合人类的读写习惯,总结,计算机读取方式反人类但效率高
大多数系统使用的数据存储字节序是小端字节序,而TCP/IP协议规定,应使用大端字节序,所以当向网络中传数据时,应提前转换字节序
例:小端字节序:0x0102,实际大小为0x0201,16进制两位一字节