《计算机网络:自顶向下网络》第四章笔记整理(更新中)

《计算机网络:自顶向下网络》第四章笔记整理(更新中…)

4.1 导论

网络层服务

1.在发送主机和接收主机之间传送段(segment)。
2.在发送端将段封装到数据报中,在接收端将段上交给传输层实体。
3.网络层协议存在于每一个主机和路由器。
4.路由器检查每一个经过它的IP数据报的头部。

网络层的关键功能

1.转发:将分组从路由器的输入接口转发到合适的输出接口。
2.路由:使用路由算法来决定分组从发送主机到目标接收主机的路径。

数据平面和控制平面

数据平面

1.本地,每个路由器功能
2.决定从路由器输入端口到达的分组如何转发到输出端口
3.转发功能:传统方式是基于目标地址和转发表;SDN方式是基于多个字段和转发表

控制平面

1.网络范围内的逻辑
2.决定数据报如何在路由器之间路由,决定数据报从源到目标主机之间的端到端路径
3.两个控制平面方法:传统的路由算法在路由器中被实现;SDN在远程的服务器中实现

传统方式

1.在每一个路由器中的单独路由器算法元件,在控制平面进行交互
2.路由和转发的相互作用:
控制平面:路由算法决定端到端路径
数据平面:IP协议根据转发表决定了IP数据报在此路由器上的局部转发

SDN方式:逻辑集中的控制平面

1.一个不同的(通常是远程的)控制器与本地控制代理(CAs)交互

网络服务模型

从发送方主机到接收方主机传输数据报的通道,
对于单个数据报的服务:可靠传送;延迟保证
对于数据报流的服务:保序数据报传送;保证流的最小带宽;分组之间的延迟差

连接建立

在分组传输之前,在两个主机之间,在通过一些路由器所构成的路径上建立一个网络层连接(涉及到路由器)

4.2 路由器组成

路由器结构概况

高层面通用路由器体系架构
1.路由:运行路由选择算法/协议(RIP,OSPF,BGP)——生成路由表
2.转发:从输入到输出链路交换数据报——根据路由表进行分组的转发
在这里插入图片描述

输入端口功能

1.物理层:Bit级的接收
2.数据链路层:链路层协议动作、解封装
3.网络层:分布式交换
(1)根据数据报头部的信息如:目的地址,在输入端口内存中的转发表中查找合适的输出端口
(2)基于目标的转发:仅仅依赖于IP数据报的目标IP地址(最长前缀匹配)
(3)通用转发:基于头部字段的任意集合进行转发

输入端口缓存

1.当交换机构的速率小于输入端口的汇聚速率时,在输入端口可能要排队(排队延迟以及由于输入缓存溢出造成丢失)
2.HOL blocking:排在队头的数据报阻止了队列中其他数据报向前移动
在这里插入图片描述

交换结构

1.将分组从输入缓存区传输到合适的输出端口
2.交换速率:分组可以按照该速率从输入传输到输出
3.三种典型的交换机构

通过内存交换

1.在CPU直接控制下的交换,采用传统的计算机
2.分组被拷贝到系统内存,CPU从分组头部提取出目标地址,查找转发表,找到对应的输出端口,拷贝到输出端口
3.转发速率被内存的带宽限制(数据报通过BUS两遍)
4.一次只能转发一个分组
在这里插入图片描述

通过总线交换

1.数据报通过共享总线,从输入端口转发到输出端口
2.总线竞争:交换速度受限于总线带宽
3.一次处理一个分组
在这里插入图片描述

通过互联网络(crossbar等)的交换

1.同时并发转发多个分组,克服总线带宽限制
2.榕树网络,纵横网络和其他的互联网络被开发,将多个处理器连接成多处理器
3.高级设计:将数据报分片为固定长度的信元,通过交换网络交换
在这里插入图片描述

输出端口

1.当数据报从交换机构的到达速度比传输速率快,就需要输出端口缓存(数据报可能会被丢弃,由于拥塞,缓冲区没有空间)
2.由调度规则选择排队的数据报进行传输(不一定先到先传)

调度机制

1.调度:选择下一个要通过链路传输的分组
2.FIFO scheduling:按照分组到来的次序发送
3.丢弃策略:丢弃刚到达的分组、根据优先权丢失/移除分组,随机地丢弃/移除
4.调度策略

调度策略:优先权

发送最高优先权的分组

4.3 IP:Internet协议

互联网的网络层

在这里插入图片描述

IP数据报格式

在这里插入图片描述

IP分片和重组

1.网络链路有MTU(最大传输单元)——链路层帧所携带的最大数据长度(不同的链路类型有不同的MTU)
2.大的IP数据报在网络上被分片
(1)一个数据报被分割成若干个小的数据报(有相同的ID,不同的偏移量,最后一个分片标记为0)
(2)重组分片只在最终的目标主机进行
(3)IP头部的信息被用于标识,排序相关分片
3.例子
在这里插入图片描述

IP编址

引论

1.IP地址:32位标示,对主机或者路由器的接口编址
2.接口:主机/路由器和物理链路的连接处
(1)路由器通常拥有多个接口
(2)主机也有可能有多个接口
(3)IP地址和每一个接口关联
3.一个IP地址和一个接口相关联

子网(subnets)

1.IP地址:
(1)子网部分(高位bits)
(2)主机部分(低位bits)
2.一个子网内的节点(主机或者路由器)它们的IP地址的高位部分相同,这些节点构成的网络的一部分叫做子网
3.无需路由器介入,子网内各主机可以在物理上相互直接到达
4.判断子网的方法(将每一个接口从主机或者路由器上分开)

IP地址分类

在这里插入图片描述
1.特殊IP地址:
(1)子网部分全为0,本网络
(2)主机部分全为0,本主机
(3)主机部分全为1,广播地址,这个网络的所有主机
2.内网(专用)IP地址
(1)专用地址:地址空间的一部分供专用地址使用
(2)永远不会被当做公用地址来分配,不会与公用地址重复(只在局部网络中意义,区分不同的设备)
(3)路由器不对目标地址是专用地址的分组进行转发

CIDR 无类域间路由

1.子网部分可以在任意的位置
2.地址格式:a.b.c.d/x,其中x是地址中子网号的长度,例如,200.23.16.0/23

子网掩码

1.32bits,1代表子网部分,0代表主机部分

转发表和转发算法

获取IP数据报的目标地址,对于转发表中的每一个表项,如果如 (IP Des addr) & (mask)==destination, 则按照表项对应的接口转发该数据报;如果都没有找到,则使用默认表项转发数据报

获取IP地址的过程

1.主机获得IP地址
(1)系统管理员将地址配置在一个文件中
(2)DHCP:从服务器中动态获得一个IP地址(即插即用)
A.允许主机在加入网络的时候,动态地从服务器那里获得IP地址
B.DHCP工作概况:
1)主机广播“DHCP discover”报文
2)DHCP服务器用“DHCP offer”提供报文响应
3)主机请求IP地址:发送“DHCP request”报文
4)DHCP服务器发送地址:“DHCP ack”报文
2.获取一个网络的子网部分
(11)从ISP获得地址块中分配一个小地址块
(2)层次编址
在这里插入图片描述

NAT:网络地址转换

1.所有离开本地网络的数据报具有一个相同的源地址NAT IP address,但是具有不同的端口号
2.本地网络只有一个有效IP地址
(1)不需要从ISP分配一块地址,可用一个IP地址用于所有的(局域网)设备
(2)可以在局域网改变设备的地址情况下而无需通知外界
(3)可以改变ISP(地址变化)而不需改变内部的设备地址
(4)局域网内部的设备没有明确的地址,对外是不可见的
3.实现
(1)外出数据包:替换源地址和端口号为NAT IP地址和新的端口号,目标IP和端口不变
(2)记住每个转换替换对(在NAT转换表中)
(3)进入数据包:替换目标IP地址和端口号,采用存储在NAT表中的mapping表项

IPv6

1.固定的40字节头部,数据报传输过程中,不允许分片
2.IPv4到IPv6的平移

猜你喜欢

转载自blog.csdn.net/rainy_universe/article/details/115326222