四、网络层(一)网络层的功能

article/2025/8/23 23:46:56

目录

1.0 网络层的功能

1.1 异构网络互连

1.2 路由选择与分组转发

1.3 软件定义网络(SDN)

1.4 拥塞控制


1.0 网络层的功能

网络层的主要任务就是将分组从源主机经过多个网络和多段链路传输到目的主机,可以将该任务划分为分组转发路由选择两种重要的功能。 

网络层使用的是向上只提供简单灵活的无连接的尽最大努力交付数据报服务。所传送的分组可能出错、失序、丢失、重复或超时,如果主机间进程的通信是可靠的,那么可以由更高层的传输层来负责。

采用这种设计思路的好处:网络的造价大大降低,运行方式灵活,能够适应多种应用。

网络层的主要目的是在任意结点间进行数据报传输。

1.1 异构网络互连

在路由器互连的多个局域网的结构中,要求每个局域网的物理层、数据链路层网络层的协议可以不同,但网络层以上的高层协议必须相同。

中继系统(设备)分为以下四种

  1. 物理层:中继器(转发器)、集线器(Hub)。
  2. 数据链路层:网桥、交换机(switch)。
  3. 网络层:路由器。
  4. 网络层以上的中继系统:网关。

但由于历史原因,许多有关TCP/IP的文献也把网络层的路由器称为网关,IP网关=IP路由器。

不使用路由器就还是一个网络(如局域网或广域网),一般不称为网络互连。

这种使用IP协议的虚拟互连网络可简称为IP网。当IP网上的主机进行通信时,就好像在一个单个网络上通信一样,而看不见互连的各网络的具体异构细节(如具体的编址方案、路由选择协议等)

路由器可使用IPv4/IPv6双协议栈,能正常和只使用IPv4的路由器通信。路由器有能力互连低三层协议不同的两个网络。

1.2 路由选择与分组转发

路由器主要有两个功能:一个是路由选择,另一个是分组转发。

  • 路由选择是指按照复杂的分布式算法,进行基于路由协议的交互,根据从各相邻路由器所得到的关于整个网络或网络某一部分的拓扑变化情况,动态地改变所选择的路由。
  • 分组转发就是路由器根据转发表将用户的IP数据报从合适的端口转发出去。
  • 存储转发:路由器先接收整个分组,然后对分组进行错误检查,如果出错丢弃该分组;否则存储该正确的分组。最后根据路由选择协议,将正确的分组转发到合适的端口。(二层交换机和路由器都具有存储转发功能,注意中继器和Hub没有)

路由表是根据路由选择算法得出的,而转发表是从路由表得出的。路由表需要对网络拓扑变化的计算最优化,而转发表的结构应当使查找过程最优化。在讨论路由选择的原理时,往往不去区分路由表和转发表,而是笼统地使用路由表一词。

1.3 软件定义网络(SDN)

软件定义网络(Software Defined Network,SDN)于2009年提出。 

把网络的控制层面和数据层面(也称转发层面)分离,而让控制层面利用软件来控制数据层面中的许多设备。

 

 并未规定必须使用OpenFlow协议。

 

在OpenFlow交换机中,既可以处理数据链路层的帧,也可以处理网际层的IP数据报,还可以处理运输层的TCP或UDP报文

 

1.4 拥塞控制

在通信子网内,由于出现过量的数据包而引起网络性能下降的现象称为拥塞

在网络层实现拥塞控制的方法为显式反馈。目前网际控制报文协议(ICMP)最新规定已经不再使用源点抑制报文,即显式反馈。

TCP/IP体系中,拥塞控制主要是利用隐式反馈在传输层实现的。故拥塞控制具体实现方法在后续传输层介绍。

  • 流量控制是抑制发送端发送数据的速率,以便接收端来得及接收。
  • 拥塞控制是一个全局性的问题,涉及网络中所有的主机、路由器及导致网络传输能力下降的所有因素。单一地增加资源并不能解决拥塞问题。

网络利用率高并不一定是好事,若路由器数量不足会丢弃分组,造成随着通信子网负载的增加,吞吐量反而降低,表明发生了拥塞。 

拥塞控制的方法

  • 闭环控制指作为被控的输出量以一定方式返回到作为控制的输入端,并对输入端施加控制影响的一种控制关系。 是带有反馈信息的系统控制方式。分为隐式反馈和显示反馈。
  • 开环控制是指无反馈信息的系统控制方式。


http://chatgpt.dhexx.cn/article/fL04BQiZ.shtml

相关文章

TCP/IP——网络层

TCP/IP——网络层 一、网络层协议 网络层继承被称之为IP层。但网络层协议并不只是IP协议,还包括ICMP(Internet control Message Protocol)协议、IPX(Internet Packet Exchange)协议 IP寻址:能过上网的设备…

计算机网络 | 网络层 | 什么是网络层 | 详解

本博客为个人笔记,篇幅较长,内容较多,因时间原因,内容中的重点部分没有重点标出,望谅解。如有错误,欢迎各位前来纠正。 目录 一.网络层提供的两种服务 1.虚电路服务 2.电话机与现代计算机的区别 3.数据…

计算机网络-网络层

网络层 1. 前言2. 网络层的作用3. 网络层数据交换4. 网络层协议及报文格式5. ARP与RARP6. 国际控制报文协议ICMP 1. 前言 网络层介于传输层和数据链路层之间,其主要作用是实现两个网络系统之间的数据透明传送,具体包括路由选择,拥塞控制和网…

计算机网络(五):网络层

文章目录 1. 网络层概述1.1 路由器工作原理 2. IP:网际协议2.1 IPv4数据报格式2.2 IP地址2.2.1 IP地址的分类2.2.2 广播和多播2.2.3 子网和子网掩码2.2.4 CIDR与VLSM2.2.5 公有地址和私有地址 2.3 路由控制2.4 IP 分片和重组2.4.1 路径 MTU 发现 2.5 IPv62.5.1 IPv6…

网络层与传输层

目录 一、网络层 (一)IP数据包格式 (二)ICMP协议介绍 (三)ARP协议介绍 (四)ARP攻击原理 (五)ping命令及tracert ( 六)ARP命令 …

网络层——IP协议

网络层 网络层概述 网络层主要考虑数据传输的路上问题,在复杂的网络环境中确定一个合适的路径。 网络层设计要尽量简单,向上层只提供简单灵活的、无连接的、不保证可靠性的数据报服务。网络层不提供服务质量的承诺! IP 数据报的格式 如何分…

计算机网络——网络层

目录 4.1 网络层概述 4.2 网络层提供的两种服务 面向连接的虚电路服务 无连接的数据报服务 4.3 IPv4地址 IPv4地址概述 分类编址的IPv4地址 划分子网的IPv4地址 无分类编制的IPv4地址 IPv4地址的应用规划 4.4 IP数据报的发送和转发过程 4.5 静态路由配置 默认路由和…

详解网络层_计算机网络

目录 1. 网络层提供的两种服务 2. 网际协议IP 3.虚拟互联网络 4. IP地址 IP地址的划分方法 点分十进制 IP地址指派范围 IP地址的重要特点 5. IP地址与MAC地址 1. 网络层提供的两种服务 首先,网络层的引入主要是为了屏蔽不同网络的差异,实现不同网络…

计算机网络(四)_网络层

相关博文: 计算机网络入门 计算机网络物理层 计算机网络-数据链路层 与网络层相关的IP地址与子网掩码单独抽出于下 IP地址 计算机网络-域名与IP地址详解 子网掩码与子网划分 计算机网络-子网掩码与子网划分 文章目录 IP地址子网掩码与子网划分一些基本概念网络层提供…

应用层、传输层、网络层、数据链路层

应用层 包括:应用服务 (FTP(FileTransfer Protocol,文件传输协议)和DNS(Domain NameSystem,域名系统))发送HTTP请求DNS域名解析系统:提供通过域名&#xff0…

计算机网络之网络层

一、概述 网络层介于传输层和数据链路层之间,其主要作用是实现两个网络系统之间的数据透明传送,具体包括路由选择,拥塞控制和网际互连等。网络层是网络与网络之间通信的最底层,在数据从数据链路层向传输层进行数据传输的通信中&a…

计算机网络-网络层详细讲解

目录 网络层概述 网络层提供的两种服务 面向连接的虚电路服务 无连接的数据报服务 IPv4地址 IPv4地址概述 概述 表示方法 分类编址的IPv4 A类地址 B类地址 C类地址 练习 划分子网的IPv4地址 子网掩码 32比特的子网掩码可以表明分类IP地址的主机号部分被借用了几个比特…

网络层

一、概述 1、网络层是OSI参考模型中的第三层,介于传输层和数据链路层之间,它在数据链路层提供的两个相邻端点之间的数据帧的传送功能上,进一步管理网络中的数据通信,将数据设法从源端经过若干个中间节点传送到目的端,从…

网络五大层介绍,看完你就懂

当前的网络协议是分层的:应用层,传输层,网络层,数据链路层,物理层 目录 应用层 传输层 UDP协议 数据报格式 TCP(传输控制协议) 报文格式 1.确认应答(核心) 2.超时重传 3.连接…

Android 4.4 沉浸式状态栏的实现

Android 4.4(kitkat)之后,Android Window 提供一个新的属性: WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS从名字上可以看出,这个属性可以用来设置状态栏是否透明,我们就可以利用这个属性来实现沉浸…

总结系列-一文搞懂沉浸式状态栏

近期做到与状态栏相关一些需求,网上关于沉浸式状态栏的文章有很多,基本上都先讲一堆概念,然后接着推出一个自己写的轮子,这类轮子面对很多不同场景的情况不能百分之百满足使用需求,过度地使用轮子也往往会让开发者不了解代码到底是怎么实现沉浸式的,基于…

安卓沉浸式状态栏

安卓沉浸式状态栏 前言安卓版本Android4.4之前Android4.4(API 19) - Android 5.0(API 21)1.图片沉浸1.1 xml实现1.2代码实现 2.ToolBar沉浸2.1xml实现2.1.1 设置 fitsSystemWindows 属性2.1.2 布局里添加占位状态栏 2.2代码实现2.…

Android-StatusBarUtil沉浸式状态栏

文章目录 一、前言二、去掉标题栏三、StatusBarUtil属性四、沉浸状态栏颜色五、沉浸状态栏图片 一、前言 大家再开发过程中会遇到上面这种情况,它不影响使用但是在美观上面差点意思,接下来教给大家一种方式来使它美观 二、去掉标题栏 只需要改变NoAction…

沉浸式状态栏(一)

我们知道IOS上的应用,状态栏的颜色总能与应用标题栏颜色保持一致,用户体验很不错,那安卓是否可以呢?若是在安卓4.4之前,答案是否定的,但在4.4之后,谷歌允许开发者自定义状态栏背景颜色啦&#x…

安卓沉浸式状态栏,android沉浸式状态栏工具类封装

文章目录 前言二、使用步骤1.定义2.使用3.效果 前言 沉浸式状态栏对安卓6.0以上版本很简单,今天分享一个封装好的工具,供大家参考 二、使用步骤 1.定义 代码如下: package com.example.mystudy_kotlin.utilsimport android.app.Activity …