计算机网络总结:第四章 网络层
第四章 网络层
4.1 概述
4.1.1 转发和路由选择
- 转发(forwarding):当一个分组到达路由器的一条输入链路时,路由器必须将该分组移动到适当的输出链路
- 路由选择(routing):当分组从发送方流向接收方时,网络层必须决定这些分组所采用的路由或路径
- 连接建立:网络层第三个重要的网络功能
–网络层的连接:一对节点之间的连接,所有属于这个连接的数据包遵循同一条路径
–传输层的连接:进程之间的连接,同一个数据包可能在网络层经不同路径
4.1.2 网络服务模型:定义了分组在发送与接收端系统之间的端到端运输特性
- 提供的服务
–确保交付
–具有时延上界的确保交付
–有序分组交付
–确保最小带宽
–确保最大时延抖动
–安全性服务 - 两个最重要的ATM服务模型
–恒定比特率
–可用比特率
4.2 虚电路和数据报网络
- 网络层能在两台主机之间提供无连接服务或连接服务,连接服务以源和目的主机间的握手开始,无连接服务则没有任何握手预备步骤
- 网络层和运输层在面向连接和无连接服务的差异
–在网络层,这些服务是由网络层向运输层提供的主机到主机的服务。在运输层中,这些服务则是运输层向应用层提供的进程到进程的服务
–网络层不能同时提供两种服务(面向连接的、无连接的)。仅在网络层提供连接服务的计算机网络称为虚电路(Virtual-Circuit,VC)网络;仅在网络层提供无连接五福的计算机网络称为数据报(datagram network)网络
–网络层连接服务除了在端系统中,也在位于网络核心的路由器中实现;运输层面向连接服务是在位于网络边缘
4.2.1 虚电路网络
- 虚电路的组成
–源和目的主机之间的路径
–VC号,沿着该路径的每段链路的一个号码
–沿着该路径的每台路由器的转发表表项 - 虚电路中有3个明显不同的阶段
–虚电路建立
–数据传送
–虚电路拆除
4.2.2 数据报网络
- 每当一个端系统要发送分组,它就为该分组加上目的端系统的地址,然后将分组推进网络中。当分组从源到目的地传输,它通过一系列路由器传递。这些路由器中的每台都使用分组的目的地址来转发该分组
4.3 路由器工作原理
- 组成成分:输入端口,交换结构,输出端口,路由选择处理器
- 关键功能:运行路由算法/协议(RIP,OSPF,BGP),将数据报从入链路传到出链路
4.3.1 输入端口
4.3.2 交换结构
- 经内存交换
–最简单、最早的路由器是传统的计算机,交换是在CPU的直接控制下完成的
–数据包被复制到系统的内存中
–速度受内存带宽限制(2个总线交叉/数据报) - 经总线交换
–输入端口经一根共享总线将分组直接传送到输出端口
–交换带宽受总线速率的限制 - 经互联网络交换
–克服总线带宽限制
–将数据报分段为固定长度的单元,通过结构切换单元。
4.3.3 输出端口
4.3.4 何处出现排队
4.4 网际协议(IP)
4.4.1 数据包格式
- IP数据报分片
–链路层协议能承受的网络层分组长度不同,一个链路层帧能承载的最大数据量叫做最大传送单元(Maximum Transmission Unit,MTU)
–过大的IP数据报会被分成多个较小的数据报(称为fragment,片)
- 说明:
–ID是初始数据报的标识号
–fragflag=1说明后面还有别的数据报,fragflag=0说明这是最后一个数据报
–offset指定该片应放在初始IP数据报的哪个位置
4.4.2 IPv4编址
- 概念
–IP地址:主机的32位标识符,路由器接口
–接口(interface):主机/路由器与物理链路之间的连接
A)路由器通常有多个接口
B)主机通常有一个接口
–IP地址与每个接口关联 - 子网
- 子网掩码(例子):233.1.1.0/24,其中的/24记法有时称为子网掩码,它指示了32比特中的最左侧24比特定义了子网地址
- 因特网的地址分配策略:无类别域间路由选择(Classless Interdomain Routing,CIDR),对于子网寻址,32比特的IP地址被划分为两个部分,并且也具有点分十进制数形式a.b.c.d/x,其中x指示了地址的第一部分中的比特数,32-x比特用于区分该组织的内部设备
- 获取一块地址
–因特网名字和编号分配机构
即ICANN(Internet Corporation for Assigned Names and Numbers)
A)分配地址
B)管理DNS
C)分配域名,解决争议 - 获取主机地址:动态主机配置协议(分配公网IP)
–动态主机配置协议,即DHCP(Dynamic Host Configuration Protocol)
A)允许主机自动获取(被分配)一个IP地址
B)也被称为即插即用协议(plug-and-play protocol)
–它是客户端 - 服务器协议
- 网络地址转换(Network Address Translation,NAT)(分配私网IP)
–所有离开本地的数据报有着相同的源NAT IP地址,不同的端口号
–不同内部主机由NAT转发表来区分
–本地网内的设备无法明确地寻址,外界看不到
–16位端口号字段,即单个LAN端地址同时连接60,000个
- UPnP:是一种允许主机发现并配置邻近NAT的协议
4.4.3 因特网控制报文协议(ICMP)
- 被主机和路由器用来彼此沟通网络层的信息
A)错误报文:无法访问的主机,网络,端口,协议
B)echo请求/回复(由ping使用)
4.4.4 IPv6
- 实现动机:IPv4的32位地址空间将耗尽
- IPv6数据报格式
–首部仅有40字节
–有效载荷长度:16比特,给出IPv6数据报中跟在首部后面的字节数量
–跳限制:转发数据报的每台路由器将对该字段的内容减1。如果跳限制计数到达0,则该数据报将被丢弃
–删除了分片重新组装、首部校验和,选项功能 - 从IPv4到IPv6的迁移
–建隧道(tunneling)
4.5 路由选择算法
- 根据算法是全局式还是分散式区分
–全局式路由选择算法(global routing algorithm):用完整的、全局的网络知识计算出源到目的地之间的最低费用路径。该算法常被称作链路状态算法,它必须知道网络中每条链路的费用
–分散式路由选择算法(decentralized routing algorithm):以迭代式、分布式的方式计算出最低费用路径。例子:距离向量算法(Distance-Vector,DV),每个节点维护到网络中所有其他节点的费用估计的向量 - 根据算法是静态还是动态区分
–静态路由选择算法(static routing algorithm):路由的变化非常缓慢
–动态路由选择算法(dynamic routing algorithm):周期性地运行或直接响应拓扑或链路费用的变化而运行 - 根据算法是负载敏感的还是负载迟钝的
–负载敏感算法(load-sensitive algorithm):链路费用会动态地变化以反映出底层链路的当前拥塞水平
–负载迟钝算法(load-insensitive algorithm):链路的费用不明显的反映当前(最近)的拥塞水平【当前因特网路由选择算法都是负载迟钝的】
4.5.1 链路状态路由选择算法(LS)
- Dijkstra算法(最短路径)
–D(v):到算法的本次迭代,从源结点到目的结点v的最低费用路径的费用
–p(v):从源到v沿着当前最低费用路径的前一结点(v的邻居)
–N’:结点子集;如果从源到v的最低费用路径已确知,v在N’中
4.5.2 距离向量路由选择算法(DV)
- 它是分布式的、迭代的、异步的
- LS和DV的对比
4.5.3 层次路由选择
- 问题:规模(路由器数目很大),管理自治
- 解决方案:自治系统(Autonomous System,AS)
–在相同的AS中的路由器全部运行相同的路由选择算法
–在一个自治系统内运行的路由选择算法叫做自治系统内部路由选择协议(“intra-AS” routing protocol)
–负责向本AS之外的目的地转发分组的路由器叫做网关路由器(gateway router)
–实践中,AS之间转发分组采用热土豆路由选择方法,即将分组转发给具有最小的最低费用的网关
4.6 因特网中的路由选择
4.6.1 因特网中自治系统内部的路由选择:RIP
- AS内部路由选择协议也被称为内部网关协议
- 路由选择协议(Routing Information Protocol,RIP)
–RIP路由器大约每30秒互相交互通告
–如果一台路由器一旦超过180秒没有从邻居听到报文,则该邻居不再被认为是可到达的
4.6.2 因特网中自治系统内部的路由选择:OSPF
- 开放最短路优先(Open Shortest Path First,OSPF)
–简介
–优点
4.6.3 自治系统间的路由选择:BGP(Border Gateway Protocol)
- 为每个AS提供进行以下工作的手段:
–从相邻AS处获得子网可达性信息
–向本AS内部的所有路由器传播这些可达性信息
–基于可达性信息和AS策略,决定到达子网的“好”路由 - 基础
–对于每条TCP连接,位于该连接端点的两台路由器称为BGP对等方(BGP peers)
–沿着该连接发送的所有BGP报文的TCP连接称为BGP会话(BGP session)
–跨越两个AS的BGP会话称为外部BGP(eBGP)会话
–在同一个AS中的两台路由器之间的BGP会话称为内部BGP(iBGP)会话
–CDIR化的前缀(prefix)使得每个AS知道其相邻AS可到达哪个目的地 - 路径属性和BGP路由
–每个AS都有其全局唯一的自治系统号(ASN)【除了桩(stub)AS】
–当一台路由器通过BGP会话通告一个前缀时,它在前缀中包含一些BGP属性。带有属性的前缀称为一条路由(router)
–AS-PATH:包含前缀通告已经通过的AS
–NEXT-HOP:表示下一跳AS的特定内部AS路由器。(可以是从当前AS到下一跳AS的多条链路)
–网关路由器接收一台路由器通告时,它使用输入策略(import policy) - BGP路由选择
- 路由选择策略
计算机网络总结:第四章 网络层相关推荐
- 计算机网络(第四章网络层)
第四章网络层 4.1_网络层提供的两种服务 (1)虚电路服务 (2)数据报服务 4.2_网络协议 4.2.1_虚拟互连网络 4.2.2_分类的IP地址 (1)分类IP地址 三种分类方法 IP 地址的一 ...
- 计算机网络复习——第四章网络层
9月开始学习的一个月,I hope everthing be fine. 相关知识见,感觉比较容易入手 <计算机网络>(谢希仁)内容总结 | JavaGuide 重点知识: TCP/IP ...
- (考研湖科大教书匠计算机网络)第四章网络层-第五节:静态路由配置及其可能产生的路由环路问题
获取pdf:密码7281 专栏目录首页:[专栏必读]王道考研408计算机网络+湖科大教书匠计算机网络+网络编程万字笔记.题目题型总结.注意事项.目录导航和思维导图 王道考研408计算机组成原理万字笔记 ...
- 《计算机网络》第四章 网络层 ——分类的IP 划分子网 构成超网 路由选择协议 路由器构成
- 计算机网络知识点总结(第四章 网络层)
基于计算机网络(第7版)谢希仁编著. 第四章 网络层 网络层提供两种服务: 面向连接的虚电路服务.特点:保证服务质量,可靠 无连接的数据报服务.特点:"尽最大努力交付",不保证质量 ...
- 计算机网络(第7版)谢希仁著 学习笔记 第四章网络层
计算机网络(第7版)谢希仁著 学习笔记 第四章网络层 第四章 网络层 4.3划分子网和构造超网 p134 4.3.1划分子网 4.3.2使用子网时分组的转发 4.3.3无分类编址CIDR(构建超网) ...
- 计算机网络 华南理工大学期末重点 第四章 网络层 谢希仁
计算机网络 华南理工大学期末重点 第四章 网路层 <计算机网络(第七版)>谢希仁 前言 笔者是自动化专业,以下是大二上学期期末时,整理的一些复习笔记,既一些常考点,这是第四章<网络层 ...
- 【计算机网络】南航计算机网络第四章 网络层
文章目录 计算机网络第四章 网络层 4.1 网络层提供的两种服务 网络层提供的两种服务 虚电报服务 数据报服务 4.2 网际协议IP 虚拟互连网络 直接交付与间接交付 分类的IP地址 点分十进制记法 ...
- 《计算机网络教程》(微课版 第五版)第四章 网络层与网络互连
<计算机网络教程>(微课版 第五版)第四章 网络层与网络互连 课后习题及答案 1.网络层向上提供的服务有哪两种?试比较其优缺点. 解答:面向连接的虚电路服务和无连接的数据报服务. 2.请简 ...
最新文章
- IIS7.5 HTTP 错误 500 调用loadlibraryex失败的解决方法
- R语言可视化面积图(area chart)移除轴标签与实际图形之间的空白区域实战:默认的面积图、移除轴标签与实际图形之间的空白区域
- 学习Python(一)
- javaweb学习总结(二十三):jsp自定义标签开发入门
- 企业级 Spring Boot 教程 (十四)用restTemplate消费服务
- 【Cocos2dX(2.x)_Lua开发之三】
- 社群扫码进群活码引流完整运营源码/对接免签约支付接口/推广正常绑定下级
- 【服务器】创建docker、运行jupyter相关命令
- ELK下Elasticsearch优化
- “Emgu.CV.CvInvoke”的类型初始值设定项引发异常 解决办法
- Oracle数据库出现问题时,这十个脚本帮你快速定位原因
- 小程序block标签配合if和else 和 动态修改标题栏
- 职业计算机试题,职业高中计算机专业综合练习试题一
- 微信小程序 #项目笔记# | 从0到1实现婚礼邀请函小程序
- DiskFileUpload类
- 传感技术复习笔记(9)——光电式传感器
- html字体模糊怎么变清晰,电脑字体模糊怎么办 将字体调节清晰方法【详解】
- LeetCode算题——7月
- 学生做国际义工:时尚背后有多少坑
- opencv4算法库学习笔记(5万多字超长干货——纪念奋战的自己)
热门文章
- spring cloud微服务间限流,使用jMeter性能测试高并发
- 根据屏幕分辨率获取css,根据判断浏览器类型屏幕分辨率自动调用不同CSS的代码...
- 思源黑体ttf_模块模板 | 简单方法替换将TTF格式字体转换为Magisk模块
- linux系统自带python_Linux删除系统自带版本Python过程详解
- python怎么从键盘输入两个数然后求和并输出_C语音的题:从键盘输入两个整数,要求求和然后输出和。应该怎么做?...
- python决策树sklearn_请问python中的sklearn中决策树使用的是哪一种算法呢?
- cvc 降噪_耳机降噪技术有哪几种?
- iphone7wifi模块多少钱_模块炉价格参差不齐,消费者应独具慧眼!
- linux远程访问及控制
- python跳转和创建目录,Python - 创建目录,切换目录,创建文件,复制文件,移动文件 ,删除文件夹及文件...