教材:计算机网络(第四版)
做者:吴功宜 吴英
出版社:清华大学html
IP协议:是一种无链接、不可靠的分组传送服务的协议web
(分组→相似数据报P30)算法
IP协议是点-点的网络层通讯协议数据库
IP协议是针对源主机—路由器、路由器—路由器、路由器—目的主机之间的数据传输的点—点的网络层通讯协议安全
IP协议屏蔽了互联的网络在数据链路层、物理层协议与实现技术上的差别网络
(IP协议承上启下)并发
IP协议是为了在分组交换(Packet-switched,又译为包交换)计算机通讯网络的互联系统中使用而设计 IP层只负责数据的路由和传输,在源节点与目的节点之间传送数据报,但并不处理数据内容。 数据报中有目的地址等必要内容,使每一个数据报通过不一样的路径也能准确地到达目的地,在目的地从新组合还原成原来发送的数据
IP分组也称为IP数据报app
IPv4分组:分组头和数据。IP分组头长度为20B~60B(就是一串数字)svg
长度:4位性能
版本字段值为4,表示IPv4
版本字段值为6,表示IPv6
长度: 8位
做用: 表示使用IP协议的高层协议类型
标识使用何种协议,经过该字段指示了IP分组应该交给哪一个传输层协议
(IP数据部分须按什么协议来进行解析,可参考第六章UDP协议)
IP分组头有两个长度字段:分组头长度(报头长度)、总长度
分组头长度字段
长度: 4位
做用:它定义了以4字节为一个单位的分组头的长度
(定义了分组头有多少行)
分组头中除了IP选项字段与填充字段以外,其余各项是定长的
IP分组的分组头长度必须为4字节的整数倍。若是不是4字节的整数倍,则由填充字段(填充域)“添0”补齐
分组头长度字段最小值为5( )
(分组头最少有五行)
最大长度为15 ( )
(分组头长度为4bit,取值范围为:0000B-1111B,也就是0~15行,但规定了分组头最少必需要有五行,所以 分组头的长度范围是5~15行)
总长度字段
长度: 16位
(P216 中写的是8位,估计是印错了)
做用: 保证分组头部数据完整性
IP分组只对分组头进行校验,不包括分组数据
地址字段包括源地址与目的地址(点-点传输)
在分组的整个传输过程当中,不管采用什么样的传输路径或如何分片,源地址与目的地址始终保持不变
(在物理链路层中,物理地址在转发时会改变)
源地址字段
目的地址字段
MTU(Maximum Transmission Unit):最大传输单元
每一个数据链路层可以肯定发送的一个帧的最大长度
分片: 实际使用的网络最大传输单元长度比IP数据报最大长度短,使用它们传输IP数据报时,要对其进行分片传输
如:Ethernet的MTU的长度为1500B,所以,在使用这些网络传输IP分组时,要将IP分组分红若干较小的片(fragment)来传输
IP数据报(做为网络层数据)→数据链路层(封装成帧)→物理层(传输到另外一物理层)
一个数据报可能要经过多个不一样的物理网络
不一样的物理网络的数据链路层的MTU长度可能不一样(MTU长度由物理网络所采用的协议决定,如PPP协议规定它的信息帧的信息字段最长为1500B,P117)
因为IP协议是数据链路的上一层,因此它必须不受数据链路的MTU大小的影响可以加以利用
所以,路由器将接收到的帧进行拆包和处理,而后封装成另一个帧,并准备转发到目的主机时,首先根据下一个网络的数据链路层MTU,决定该分组在转发以前是否须要分片
先肯定片长度,而后将原始IP分组包括分组头分红第1片,若剩下的数据仍大于片长度,再进行第2次分片,第2个分片数据加上分组头构成第2个片,如此直到剩下的数据小于片长度
在IP分组的报头中,与一个分组的分片、组装相关的域有
标识域
标志域
长度:3位,最高位为0
不分片(Do not Fragment,DF)
=1,表示接收主机不能对分组分片
=0,表示能够分片
分片(More Fragment,MF)
=1,表示接收的分片不是最后一个分片
=0,表示接收的是最后一个分片
片偏移域
长度:13位
做用:表示该分片在整个分组中的相对位置
(就是记录分片在数据报中的顺序位置)
值以8B为单位计数,即分片长度应为8B的整数倍
例:片2的片偏移值:800/8=100,片3的片偏移值:1600/8=200
RFC791指出:名字说明他是谁;地址说明他在哪里;路径说明如何找到他
MAC地址(物理地址):每块网卡的硬件地址
IP地址(逻辑地址):网络层地址
在路由器发送的报文中目标MAC地址是下一跳路由器的MAC地址,可是目标IP地址则是真正的终点IP地址
举个例子, 把整个网络比做一间教室, IP地址就是教师里的位置, 而MAC地址就是座位上的人。这个座位能够A坐也能够B座, A能够到这个位置坐, 也能够到那个位置坐
分三种状况:
为每个网络接口分配一个IP地址
一台计算机连入网络,需分配一个IP地址,与MAC地址一一对应,且在Internet中惟一的
为多归属主机的每个网络接口分配相应的IP地址
路由器经过多个网卡链接到多个网络时,需为每一个网卡分配一个IP地址
能够为一个接口分配多个IP地址
D类IP地址不标识网络
E类IP地址暂时保留
标准分类的IP地址存在的问题:
子网的基本思想: 借用主机号的一部分做为子网的子网号,划分出更多的子网IP地址,而对于外部路由器的寻址没有影响
(也就是在网络号-主机号的两层地址结构中,借用主机号的一部分做为子网号)
又称子网屏蔽码
背景: 一个标准的IP地址,不管用二进制仍是点分十进制表示,均可以从数值上直观判断出它的类别(A、B、C类),指出它的网络号和主机号
掩码表示方法: 主机号置0,其他置1
做用: 从一个IP地址中提取出子网号
适用范围:(也可适用于没有进行子网划分的)A类、B类、C类地址
例子:一个B类地址划分为64个子网
方法:网络号不变,借用原主机号中的6位做为子网号,剩余10位为子网主机号
如:B类IP地址190.1.2.26,它的子网掩码用点分十进制表示为255.255.252.0;或表示成190.1.2.26/22
例:一个校园网要对一个B类地址(156.26.0.0)进行子网划分。该校园网有近210个局域网组成
析:
,所以可将B类地址主机号的8位做为子网号
B类地址共16位主机号,用8位做为子网号,剩下8位主机号
所以,子网掩码为:255.255.255.0
以上子网划分结果为:
子网号和主机号全0(子网网络地址) 或全1(广播地址) 的地址保留,所以校园网划分后有254个子网,每一个子网254台主机
子网长度的肯定,应考虑两个因素:子网数与每一个子网中主机与路由器数。子网数要考虑留有必定余量为原则
例:某公司申请一个C类202.60.31.0的IP地址,该公司有100名员工在销售部,50名在财务部,50名在设计部。要求为销售部门、财务部门、设计部门分别组建子网
无类别域间路由(CIDR):将剩余的IP地址不是按标准的地址分类规则,而是以可变大小地址块的方法进行分配
CIDR用区别于传统标准分类的IP地址与划分子网的概念的“网络前缀(network -prefix)”,代替“网络号+主机号” 二层地址结构,造成新的无分类二层地址结构
(抛弃使用ABC类地址的用法)
CIDR使用网络前缀去代替了标准分类的IP地址的网络号与主机号,也再也不使用子网的概念
与标准分类IP地址与子网划分的方式相比,CIDR是以任意二进制倍数的大小来分配地址
表示方法:“斜线记法”,
(网络前缀其实就至关于网络号)
如:200.16.23.0/20表前20位为网络前缀,后12位为主机号
200.16.23.0/20=11001000 00010000 00010111 00000001
CIDR地址块: 网络前缀相同的连续的IP地址组成一个CIDR地址块
如:200.16.23.1/20的网络前缀为20位,该地址块有的主机号可达212(4096)
一个CIDR地址块由块起始地址和前缀表示。 块起始地址为地址块中地址数值最小(主机号全0)的一个
如:200.16.23.1/20地址块中起始地址的主机号全0,即这个地址块的最小地址的结构为:
200.16.16.0/20=11001000 00010000 0001 0000 00000000
题目:一个校园网得到200.24.16.0/20的地址块,但愿将它划分为8个等长的较小的地址块
,即借用CIDR地址中12位主机号的前三位,实现进一步划分(8个地址块网络地址前20位相同)
链接到Internet的主路由器向外部网络发送一个通告,说明它接收全部目的地址的前20位与200.24.16.0/20相符的分组。外网不须要知道在该地址块内部还有8个系级的网络存在
(减小路由器工做量,只需辨别前20位)
NAT技术应用领域:ISP、ADSL、有线电视与无线移动接入的动态IP地址分配
优势: 弥补IP地址的短缺
缺点: 对网络性能、安全和应用有很大影响
在使用专用IP地址的内部网络中,要访问Internet,需使用NAT技术
分组交付: 在Internet中主机、路由器转发IP分组的过程
分组交付的分类: 能够分为直接交付和间接交付
是直接交付仍是间接交付,路由器须要根据分组的目的IP地址与源IP地址是否属于同一个子网来判断
直接交付: 当分组的源主机和目的主机是在同一个网络,或是当目的路由器向目的主机传送时,分组将直接交付,即直接进行分组传输
间接交付: 若目的主机与源主机不在同一网络,分组就要间接交付
网关(网间链接器、协议转换器): 一个网络链接到另外一个网络的“关口”
因为历史的缘由,许多有关TCP/IP的文献曾经把网络层使用的路由器称为网关,在今天不少局域网采用都是路由来接入网络,所以一般指的网关就是路由器的IP
默认路由器(默认网关):多数主机先接入一个局域网,局域网经过一台路由器再接入Internet。这台路由器就是局域网主机的默认路由器,又称第一跳路由器
一台主机发送一个IP分组时,首选将其发送到默认路由器。所以默认路由器称为源路由器。与目的主机链接的路由器称为目的路由器
掩码表示方法:主机号置0,其他置1
做用:从一个IP地址中提取出子网号
(该IP地址属于哪一个网络,好比属于子网1)
路由器收到IP包后,取出目的网络地址
将目的网络地址与掩码相与(&)
将相与结果与表中的目标网络地址相比
若相等,则证实该IP包是发送给该目标网络地址(子网)
若不相等,则继续与路由表下一条进行比较
分组在逐跳转发的过程当中,
分组头中源IP地址和目的IP地址是不变的(网络层)
但封装IP分组Ethernet帧的源MAC地址与目的MAC地址是变化的(网络链路层)
IP地址: 做为任意一台主机在虚拟网络上的惟一标识。在主机通讯中必不可少。
IP地址是为了确认目的主机。若是IP地址改变,则目的主机改变没法进行正常通讯
对帧当中的IP地址的理解:发货人、收货人
MAC地址: 直译为媒体访问控制地址,也称为局域网地址、以太网地址或物理地址
MAC地址是为了进行数据传输。若是MAC地址不改变没法进行正常的分组转发算法,数据没法流通
对帧当中的MAC地址的理解:
源MAC: 货物中途所通过的上一个驿站
目标MAC: 货物中途所要到达的下一个驿站
设计路由选择算法的目标:是生成路由表,为路由器转发IP分组找出适当的下一跳路由器。
设计路由选择协议的目标:是实现路由表中路由信息的动态更新
思想:要求路由器周期性地向外发送路由刷新报文通知相邻路由器:本身能够达到的网络,及到达该网络的距离(跳数)(直接相连的路由器之间)
路由刷新报文主要内容是由若干(V,D)组成的表
矢量V:标识该路由器能够到达的目的网络或目的主机
距离D:表示该路由器到达目的网络或目的主机的跳步数(跳数)
其余路由器在接收到某个路由器的(V,D)报文后,按照最短路径原则对各自的路由表进行刷新
路由信息协议RIP适用于相对较小的自治系统,直径通常小于16跳步数
对其(V,D)路由表进行初始化
与RIP比较,OSPF协议的主要特色
================= 略 ====================
(1)创建并维护路由表
路由表中,保存路由器每一个端口对应的目的网络地址,及默认路由器的地址。路由器经过按期与其余路由器交换路由信息来自动更新路由表
(2)提供网络间的分组转发功能
当分组进入路由器时,路由器检查IP分组的目的地址,而后根据路由表决定该分组的交付方式。如果直接交付,就将分组传送到目的网络。如果间接交付,肯定转发端口号与下一跳路由器的IP地址
路由器能以线速转发:路由器分组处理速率等于输入端口的线路的传送速率
基于ICMP的具体应用程序
Ping命令:用于测试目的主机是否可达
一台主机Ping另外一台主机的过程
Tracert命令(“路由跟踪”命令): 能够得到从测试命令发出源主机到达目的主机完整的路径
Tracert命令的应用
IP多播协议(Inernet Group Management Protocol IGMP)
能够将分组发送到属于一个组的多台计算机
单播方式与多播方式的比较
MPLS提供的四个主要的服务功能:
提供面向链接与保证QoS的服务
合理利用网络资源
支持虚拟专网VPN服务
MPLS提供虚拟专网(virtual private network,VPN)服务
支持多协议
在描述一个网络的工做过程时,其实是作了一个假设:已经知道通讯的目的主机的IP地址,而且知道对应这个IP地址的目的主机物理地址
这个假设成立的条件是:在任何一台主机或路由器中必须有一张 “IP地址—MAC地址映射表”
主机A打算给主机B发送一个IP分组,它知道主机B的IP地址,但不知道B的MAC地址,那么它首先要在本地ARP映射表中查找。若找到就不须要进行地址解析。若找不到,则需进行地址解析(这里的主机也但是路由器)
工做过程分4个阶段:
代理发现
移动代理周期性发送代理通告报文,或为相应的移动结点的代理请求而发送代理通告报文
移动结点在接受到代理通告报文后,判断它是否从一个网络切换到另外一个网络,是在家乡网络仍是在外地网络。在切换到外地网络时,能够选择使用外地代理提供的转交地址
注册
移动结点到达新的网络后,经过注册过程将本身的可达信息通知家乡代理
注册目的:
使移动结点得到外地代理的转发服务
使家乡代理知道移动结点当前的转发地址
家乡代理更新即将过时的移动结点的注册,或注销回到家乡的移动结点
注册过程
经过外地代理转发注册请求
移动主机直接到家乡代理注册
分组路由
注销
若是移动结点已经回到家乡网络,则它须要到家乡代理进行注销
IPv6地址某个位段中前几位为连续的0,则可将这几个0省去
若一个位段中全为0则可压缩为一个0
若是连续几个位段都为0,则可将这些0简写为双冒号::
不能将一个位段中的有效0压缩掉。如:0030不能压缩为3,而应是30
双冒号在一个地址中只能出现一次
在IPv4中,子网掩码用来表示网络和子网地址长度。用前缀长度来区分子网号和主机号
IPv6不支持子网掩码,只支持前缀长度表示法
前缀是IPv6的一部分,用作IPv6路由或子网标识
用 “地址/前缀长度” 表示
如:21DA:D3::/48
少于64位的前缀是一个路由前缀,或是一个地址范围
64位前缀是一个子网前缀
双IP:在彻底过渡到IPv6以前,使部分节点和路由器装有两个协议:IPv6和IPv4
这个节点既能与IPv6节点通讯,又能与IPv4节点通讯
具备双IP层的节点或路由器应具备两个IP地址
双协议层和双协议栈结构
IPv6分组进入IPv4网络时,将IPv6分组封装成为IPv4分组,整个IPv6分组变成IPv4分组的数据部分
当IPv4分组离开IPv4网络时,再将其数据部分交给主机的IPv6协议,就如同在IPv4网络中打通一个隧道来传输IPv6分组
经过IPv4隧道传输IPv6分组的机制
路由器-路由器
主机-路由器或路由器-主机
主机-主机
路由器-路由器隧道
主机-路由器隧道
主机-主机隧道
6over4
6to4
是一种地址分配和路由器-路由器的自动隧道技术
ISATAP
是一种地址分配和结点-结点、结点-路由器和路由器-结点的自动隧道协议
思惟导图(2020.01.08终于补上了)