汇总:Android小白成长之路_知识体系汇总【持续更新中…】
网际协议IP
-
虚拟互联网络:也就是逻辑互联网络。互联起来的各种物理网络的异构性本来是客观存在的,但是利用IP协议就可以使得这些性能各异的网络在网络层上看起来好像是一个统一的网络,看不见互连的网络的具体异构细节
-
IP地址:就是给互联网上的每一台主机的每一个接口分配一个在全世界范围是唯一的32位的标识符
-
IP地址和MAC地址的区别:
-
IP地址是网络层和以上各层使用的地址,是一种逻辑地址(用软件实现的)。MAC地址是数据链路层和物理层使用的地址
-
IP地址放在IP数据报的首部,MAC地址放在MAC帧的首部
-
地址解析协议ARP:根据IP地址,找到其MAC地址。每一台主机设有一个ARP高速缓存,里面有本局域网上的各主机和路由器的IP地址到MAC地址的映射表,这些都是目前主机所知道的一些地址。对于那些不知道的地址,ARP进程会在本局域网上广播发送一个ARP请求分组,内容包括自己的IP地址和MAC地址和请求的对方IP地址。其他主机收到这个请求分组后,发现不是给自己的则忽略,是给自己的则收下并把这个IP和MAC保存到自己的ARP高速缓存中,然后发出响应分组,告诉发请求的主机自己的IP地址和MAC地址。发请求的主机收到这个响应后写入这个IP和MAC到ARP高速缓存中。高速缓存有一定的生存时间,凡是超出时间的项目就从高速缓存中删除
-
IP数据报的格式
- 版本:指IP协议的版本,通信双方使用的IP协议版本必须一致
- 首部长度:首部的长度,最长限制为60字节
- 区分服务:只有在使用区分服务时,这个字段才起作用,一般情况下无用
- 总长度:首部和数据之和的长度,最长长度为65535字节,由于MAC的帧最大长度MTU比这个值小得多,所以有时候需要进行分片处理
- 标识:IP软件在存储器中维持一个计数器,每产生一个数据报,计数器加一,并赋值给标识字段,这个值会在数据报被分片后的每一个分片的标识字段中。相同的标识字段的值使分片后的各数据报片最后能正确地重装成为原来的数据报
- 标志:占3位,但只有两位有用,最低位记为MF,为1时表示后面还有分片的数据报,为0时表示这是最后一个分片、中间一位记为DF,为1时表示不能分片,为0时表示允许分片
- 片偏移:较长的分组在分片后,某片在原分组中的相对位置
- 生存时间:表明数据报在网络中的寿命。防止无法交付的数据报无限制地在互联网中传递,
- 协议:协议字段指出此数据报鞋带的数据是使用何种协议,以便使目的主机的IP层知道应将数据部分上交给哪个协议进行处理
- 首部检验和:这个字段只检验数据报的首部,不包括数据部分
- 源地址
- 目的地址
- 可变部分:选项字段,用来支持排错、测量以及安全等措施,内容很丰富,增加这个字段是为了增加数据报的功能
划分子网
-
划分子网:一个拥有许多物理网络的单位,可将所属的物理网络划分为若干个子网。方法是从网络的主机号借用若干位作为子网号,形成新的IP地址:
I P 地 址 : : = < 网 络 号 > , < 子 网 号 > , < 主 机 号 > IP地址 ::= <网络号>,<子网号>,<主机号> IP地址::=<网络号>,<子网号>,<主机号>
凡是从其他网络发送给本单位某台主机的IP数据报,仍然是根据IP数据报的目的网络号找到连接在本单位网络上的路由器,路由器收到IP数据报后,再按目的网络号和子网号找到目的子网,再在子网中找到目的主机,把IP数据报交给该主机。 -
子网掩码:
使用子网掩码和IP地址进行与运算,就可以立即得到网络地址。使用子网掩码是为了更便于查找路由表。如果一个网络不划分子网,那么该网络的子网掩码就使用默认子网掩码,默认子网掩码中的1的位置和IP地址中的网络字段正好相对应。因此,若使用默认子网掩码与某个不划分子网的IP地址相与,也能得到该IP地址的网络地址,这样就不用查该地址的类别位就知道这是哪一类IP地址
网际控制报文协议ICMP
-
网际控制报文协议IMCP:互联网的标准协议,ICMP报文是装在IP数据报中,作为其数据部分的,是IP层的协议,加上数据报的首部,组成IP数据报发送出去。
-
IMCP格式:
- 类型:种类分为两类,即ICMP差错报告报文和ICMP询问报文,然后再细分出一系列的类型
- 终点不可达:当路由器或主机不能交付数据报时就向源点发送终点不可达报文
- 时间超时:当路由器收到生存时间为零的数据报时,除丢弃该数据报外,还要向源点发送时间超过报文。当终点在预先规定的时间内不能收到一个数据报的全部数据报片时,就把已收到的数据报片都丢弃,并向源点发送时间超时报文
- 参数问题:当路由器或目的主机收到的数据报的首部中有的字段的值不正确时,就丢弃该数据报,并向源点发送参数问题报文
- 改变路由(重定向):路由器把改变路由报文发送给主机,让主机知道下次应将数据报发送给另外的路由器
- 回送请求和回答:ICMP回送请求报文是由主机或路由器向一个特定的目的主机发出的询问,收到此报文的主机必须给源主机或路由器发送ICMP会送问答报文,这种询问报文用来测试目的站是否可达以及了解其有关状态
- 时间戳请求和回答:ICMP时间戳请求报文是请某台主机或路由器回答当前的日期和时间,用于时钟同步和时间测量
- 差错报告数据部分:
所有ICMP差错报告报文中的数据字段都具有同样的格式,把收到的IP数据报的首部和数据字段前8个字节提取出来,作为ICMP报文的数据字段,再加上ICMP报文的前8个字节,就构成了ICMP差错报告报文。提取收到的数据报的数据字段前8个字节是为了得到运输层的端口号(对于TCP和UDP)以及运输层报文的发送序号(对于TCP)
-
ICMP应用举例:
-
专用地址:只能用于一个机构的内部通信,而不能用于和互联网上的主机通信,在互联网中的所有路由器,对目的地址是专用地址的数据报一律不进行转发
-
三个专用地址块:
- 10.0.0.0到10.255.255.255
- 172.16.0.0到172.31.255.255
- 192.168.0.0到192.168.255.255
-
采用专用IP地址的互联网络称为专用互联网或本地互联网,也叫可重用地址
-
虚拟专用网VPN:利用公用的互联网作为本机构各专用网之间的通信载体,基于TCP/IP协议。一个机构要构建自己的VPN就必须为它的每一个场所购买专门的硬件和软件并进行配置,使每一个场所的VPN系统都知道其他场所的地址
-
远程接入VPN:通过VPN软件在个人电脑和别的主机之间建立VPN隧道,连接进别的主机的内部网络,然后就可以通过这个内部网络的外部IP访问外部互联网
网络地址转换NAT
- 网络地址转换NAT:在专用网连接到互联网的路由器上安装NAT软件,这个路由器只有一个有效的外部全球IP地址,所有使用本地地址的主机在和外界通信时,都要在NAT路由器上将其本地地址转换成IP地址,才能和互联网连接。当NAT路由器具有n个全球IP时,专用网内就最多可以同时有n台主机接入到互联网。为了更有效地利用NAT路由器上的全球IP地址,现在常用的NAT转换表把运输层的端口号也利用上,这样就可以使用多个拥有本地地址的主机,共用一个NAT路由器上的全球IP地址。