当前位置: 首页 > news >正文

计算机网络——网络层(1)

计算机网络——网络层(1)

  • 小程一言
    • 专栏链接: [link](http://t.csdnimg.cn/ZUTXU)
  • 网络层:数据平面
    • 网络层概述
      • 核心功能
      • 协议
      • 总结
    • 路由器工作原理
      • 路由器的工作步骤
      • 总结
    • 网际协议
      • IPv4
      • 主要特点
      • 不足
      • IPv6
      • 主要特点
      • 现状
    • 通用转发和SDN
      • 通用转发
      • SDN(软件定义网络)
      • 总结

小程一言

我的计算机网络专栏,是自己在计算机网络学习过程中的学习笔记与心得,在参考相关教材,网络搜素的前提下,结合自己过去一段时间笔记整理,而推出的该专栏,整体架构是根据计算机网络自顶向下方法而整理的,包括各大高校教学都是以此顺序进行的。
面向群体:在学计网的在校大学生,工作后想要提升的各位伙伴,

专栏链接: link

在这里插入图片描述

网络层:数据平面

网络层概述

网络层是OSI(开放式系统互联)模型中的第三层,也是TCP/IP协议栈中的第三层。它主要负责在不同网络之间进行数据包的路由和转发,以实现数据的传输。网络层的主要作用是为不同的主机之间提供通信服务,确保数据能够从源主机传输到目标主机。

核心功能

  1. 寻址:寻址是指确定数据包的源和目标的地址,
  2. 路由:路由则是决定数据包从源到目标的路径。
  3. 网络层使用IP地址来进行寻址,通过路由选择算法来确定数据包的传输路径。

在这里插入图片描述

协议

  1. IP协议:是网络层的核心协议,负责将数据包从源主机传输到目标主机
  2. ICMP协议: 用于在网络中进行错误报告和诊断。

总结

网络层是整个网络通信中非常重要的一部分,它负责在不同的网络之间进行数据传输和路由选择,为上层协议提供可靠的通信服务。

路由器工作原理

路由器是一种网络设备,用于在不同的网络之间转发数据包,它是网络层的设备,主要负责网络层的路由功能。

路由器的工作步骤

  1. 数据包接收:路由器接收来自不同网络的数据包,每个数据包包含了目标主机的IP地址以及数据内容。
  2. 数据包分析:路由器根据数据包中的目标IP地址,使用路由表来确定数据包应该被发送到哪个接口。
  3. 转发数据包:一旦确定了数据包的出口接口,路由器就会将数据包发送到相应的网络中。
  4. 更新路由表:路由器会不断地更新自己的路由表,以确保能够选择最佳的路径来转发数据包。这些更新可以通过路由协议(如OSPF、BGP等)来实现。
  5. 网络地址转换(NAT):在一些情况下,路由器还可能执行网络地址转换(NAT)的功能,将内部网络的私有IP地址转换成公共IP地址,以实现内部网络和外部网络的通信。

总结

路由器的工作原理就是根据数据包中的目标IP地址,选择最佳的路径来转发数据包,同时不断地更新自己的路由表,以确保网络中的数据能够快速、准确地传输。

在这里插入图片描述

网际协议

IPv4

因特网协议的第四个版本,是互联网上最常用的网络层协议之一。IPv4使用32位地址,通常以点分十进制表示,例如192.168.1.1。IPv4地址被用于标识网络上的设备,每个设备都必须拥有唯一的IPv4地址。

主要特点

  1. 地址分配:IPv4地址被分为五个类别,分别是A、B、C、D和E类地址。其中A、B、C类地址用于主机地址分配,D类地址用于多播,E类地址保留未分配。由于IPv4地址空间有限,随着互联网的发展,IPv4地址已经非常稀缺。
  2. 数据包格式:IPv4数据包由首部和数据两部分组成。首部包含了版本号、头部长度、服务类型、总长度、标识、标志、片偏移、生存时间、协议、首部校验和、源IP地址和目的IP地址等字段。
  3. 路由选择:IPv4协议使用路由选择算法来决定数据包的传输路径,路由选择算法可以根据目的IP地址和路由表来选择最佳的路径。
  4. 无连接性:IPv4是一种无连接协议,数据包在传输过程中不会维护连接状态,每个数据包都是独立传输的。

不足

尽管IPv4在互联网发展中发挥了重要作用,但由于IPv4地址空间有限,导致了IPv4地址枯竭的问题。因此,IPv6(Internet Protocol version 6)作为IPv4的替代方案,已经逐渐被广泛采用,以解决IPv4地址空间不足的问题。IPv6采用128位地址,大大扩展了地址空间,同时还具有其他一些改进和增强的特性。
**
**

IPv6

IPv6(Internet Protocol version 6)是因特网协议的第六个版本,是IPv4的后继版本,旨在解决IPv4地址空间有限的问题。IPv6采用128位地址,通常以冒号分隔的八组十六进制数字表示,例如2001:0db8:85a3:0000:0000:8a2e:0370:7334。IPv6地址空间的巨大扩展使得它能够为未来的互联网发展提供足够的地址资源。

在这里插入图片描述

主要特点

  1. 大地址空间:IPv6采用128位地址,相比IPv4的32位地址空间大大扩展,提供了约3.4x10^38个地址,以满足未来互联网设备的需求。
  2. 简化的首部:IPv6的数据包首部相对于IPv4来说更加简化,减少了一些不常用的字段,提高了数据包的处理效率。
  3. 自动地址配置:IPv6支持自动地址配置,设备可以通过IPv6的无状态地址自动配置(SLAAC)或者动态主机配置协议(DHCPv6)来获取IPv6地址。
  4. 安全性增强:IPv6在设计上考虑了安全性,支持IPsec协议的一些特性,提供了更好的数据传输安全性。
  5. 改进的多播和任播:IPv6对多播和任播的支持有所改进,提供更加灵活和高效的多播和任播机制。

现状

IPv6在技术上提供了许多改进和增强,但由于IPv4网络的广泛应用和IPv6的推广进程较为缓慢,目前仍然存在IPv4和IPv6共存的情况。然而,随着互联网设备的不断增加和IPv4地址资源的枯竭,IPv6的部署和应用将逐渐成为未来互联网发展的主流趋势。

通用转发和SDN

通用转发

网络设备根据预先配置的路由信息和转发表来进行数据包的转发。在通用转发中,网络设备根据静态的路由表来确定数据包的转发路径,这些路由信息通常是管理员手动配置的,因此网络的配置和管理相对较为繁琐。通用转发的转发决策是基于设备本身的硬件和软件,缺乏智能化和动态化的特点,因此在面对复杂的网络环境和流量管理时可能表现不佳。

SDN(软件定义网络)

是一种新型的网络架构,它将网络控制平面和数据转发平面分离。在SDN中,网络的控制逻辑被集中到一个中心化的控制器中,通过控制器对网络进行统一的管理和控制。SDN可以实现灵活的网络配置和动态的流量控制,管理员可以通过控制器进行网络配置和流量管理,而不需要逐个配置每个网络设备。这种集中式的控制架构使得SDN网络更加灵活、可管理性更高,并且能够更好地适应网络的变化和需求。

总结

通用转发是传统的网络转发方式,静态的路由表和转发表由设备本身管理,缺乏灵活性和智能化;而SDN则是一种新型的网络架构,通过集中式的控制器对网络进行统一的管理和控制,可以实现灵活的网络配置和动态的流量控制,提高了网络的灵活性和可管理性。因此,SDN相比通用转发具有更大的优势和应用前景。

在这里插入图片描述

相关文章:

计算机网络——网络层(1)

计算机网络——网络层(1) 小程一言专栏链接: [link](http://t.csdnimg.cn/ZUTXU) 网络层:数据平面网络层概述核心功能协议总结 路由器工作原理路由器的工作步骤总结 网际协议IPv4主要特点不足IPv6主要特点现状 通用转发和SDN通用转发SDN(软件…...

解释LoRA参数

目录 LoRA参数含义 LoRA在深度学习中的作用 示例代码中的LoRA应用 结论 LoRA参数含义 LoRA (lora_r): LoRA代表"Low-Rank Adaptation",是一种模型参数化技术,用于在不显著增加参数数量的情况下调整预训练模型。lora_r参数指的是LoRA中的秩&…...

直播核心岗位基础内容

一.直播间核心岗位 1.直播间前端岗位 前端岗位分工 (1)主播岗位职责 (2)场控岗位职责 (3)助理岗位职责 中端岗位分工 (1)运营岗位职责 (2)中控岗位职责 …...

安全防御第三次作业

作业:拓扑图及要求如下图 注:server1是ftp服务器,server2是http服务器 lsw1: 其中g0/0/0口为trunk 实现 1,生产区在工作时间内可以访问服务器区,仅可以访问http服务器 验证: 2,办公…...

WordPress反垃圾评论插件Akismet有什么用?如何使用Akismet插件?

每次我们成功搭建好WordPress网站后,都可以在后台 >> 插件 >> 已安装的插件,在插件列表中可以看到有一个“Akismet反垃圾邮件:垃圾邮件保护”的插件(个人觉得是翻译错误,应该是反垃圾评论)。具…...

力扣80、删除有序数组中的重复项Ⅱ(中等)

1 题目描述 图1 题目描述 2 题目解读 对于有序数组nums,要求在不使用额外数组空间的条件下,删除数组nums中重复出现的元素,使得nums中出现次数超过两次的元素只出现两次。返回删除后数组的新长度。 3 解法一:双指针 双指针法可以…...

探索HTMLx:强大的HTML工具

1. HTMLX htmx 是一个轻量级的 JavaScript 库,它允许你直接在 HTML 中使用现代浏览器的功能,而不需要编写 JavaScript 代码。通过 htmx,你可以使用 HTML 属性执行 AJAX 请求,使用 CSS 过渡动画,利用 WebSocket 和服务…...

NC65中间件能启动,前端客户端启动失败,加载异常,卡住(org.owasp.esapi)

控制台输出错误 ESAPI.properties could not be loaded by any means. Fail.SecurityConfiguration class(org.owasp.esapi.reference.DefaultSecurityConfiguration) CTOR threw exception.效果图: 解决方案 添加如下参数: -Dorg.owasp.esapi.resou…...

【大数据】YARN调度器及调度策略

YARN调度器 YARN负责作业资源调度,在集群中找到满足业务的资源,帮助作业启动任务,管理作业的生命周期。 ​ YARN技术架构 ​ 目前,Hadoop作业调度器主要有三种:先进先出调度器(First In First Out&…...

如何快速入门Python指南

在数字化时代,掌握一门编程语言已成为众多行业和职业必备的技能之一。Python以其简洁易读的语法、丰富的库资源以及强大的跨领域应用能力,成为了初学者学习编程的理想选择。本文旨在为新手提供一套全面且深入的Python学习路径,并结合实践建议…...

vue3 页面长时间不使用,再次点击页面切换路由 操作无效报错

问题描述: 使用Vite打包构建的项目,重新部署到生产。在部署期间用户一直停留在当前项目页面(长时间无操作 半个小时),部署完成后点击页面上的路由,报错! 刷新后恢复正常。出现问题原因: 上线打…...

【算法练习】leetcode算法题合集之动态规划篇

普通动规系列 LeetCode343. 整数拆分 LeetCode343. 整数拆分 将10的结果存在索引为10的位置上,需要保证数组长度是n1,索引的最大值是n,索引是从0开始的。 n的拆分,可以拆分为i和n-i,当然i可以继续拆分。而且拆分为n-…...

青少年人工智能实验基地解决方案

1. 方案背景 1.1人工智能创新教育解决方案背景 人工智能已成为引领未来的新兴技术,中国将人工智能列为国家重点发展战略,对人工智能的发展做出了总体部署,全面加速人工智能在研发应用和人才培养的步伐。2021年1月教育部官网公布《关于政协十…...

10个让你的明星网红推广事半功倍的技巧-华媒舍

明星网红已成为市场推广和品牌宣传的重要方式。要在竞争激烈的市场中脱颖而出,并吸引更多的观众和粉丝,需要一些科学而有效的技巧。本文将向你介绍10个让你的明星网红推广事半功倍的技巧。 技巧一:建立个人品牌 成功的明星网红通常都有独特而…...

k8s集群异常恢复

前提、我自己的k8s采用的是单master节点两个从节点部署,我针对单master情况进行恢复说明 场景一:正常开关虚拟机,可直接重启kubelet进行恢复 1、1、一般重启后三个节点都需要检查,输入命令检查kubelet: systemctl s…...

NOC总线(2)

1. NoC的路由 在NoC交换信息时,需要确定从源节点到目标节点所经过的路径,这时就需要路由算法来确定该路径。路由算法分为静态路由算法和动态路由算法两种。 静态路由算法对于两节点之间的路径是固定的,结构简单,便于硬件实…...

2401llvm,clang的libtooling

LibTooling(库工具) LibTooling是个支持基于Clang编写独立工具的库. 在此,为LLVM安装Clang工具 介绍 用LibTooling构建的工具(如Clang插件)通过代码运行FrontendActions. 这里演示运行Clang的快速检查一堆代码语法的SyntaxOnlyAction的不同方法. 解析内存中的代码片 如果想…...

数据结构—基础知识(13):树的存储结构

数据结构—基础知识(13):树的存储结构 双亲表示法 这种表示方法中,以一组连续的存储单元存储树的结点,每个结点除了数据域data外,还附设一个parent域用以指示其双亲结点的位置。 这种存储结构利用了每个结…...

【Python爬虫入门到精通】小白也能看懂的知识要点与学习路线

文章目录 1. 写在前面2. 爬虫行业情况3. 学习路线 【作者主页】:吴秋霖 【作者介绍】:Python领域优质创作者、阿里云博客专家、华为云享专家。长期致力于Python与爬虫领域研究与开发工作! 【作者推荐】:对JS逆向感兴趣的朋友可以关…...

服务器数据恢复—EVA存储raid5硬盘离线的数据恢复案例

服务器数据恢复环境: 某品牌EVA某型号存储,底层是RAID5阵列,划分了若干lun。 服务器故障&分析: 该存储设备中raid5阵列有两块硬盘掉线,存储中的lun丢失。 将故障服务器存储中的所有磁盘编号后取出,硬件…...

《通信之道——从微积分到 5G》读书总结

第1章 绪 论 1.1 这是一本什么样的书 通信技术,说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号(调制) 把信息从信号中抽取出来&am…...

在Ubuntu中设置开机自动运行(sudo)指令的指南

在Ubuntu系统中,有时需要在系统启动时自动执行某些命令,特别是需要 sudo权限的指令。为了实现这一功能,可以使用多种方法,包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法,并提供…...

自然语言处理——循环神经网络

自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元(GRU)长短期记忆神经网络(LSTM&#xff09…...

在WSL2的Ubuntu镜像中安装Docker

Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包: for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...

Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信

文章目录 Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket(服务端和客户端都要)2. 绑定本地地址和端口&#x…...

回溯算法学习

一、电话号码的字母组合 import java.util.ArrayList; import java.util.List;import javax.management.loading.PrivateClassLoader;public class letterCombinations {private static final String[] KEYPAD {"", //0"", //1"abc", //2"…...

基于TurtleBot3在Gazebo地图实现机器人远程控制

1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...

初探Service服务发现机制

1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源&#xf…...

基于Java+MySQL实现(GUI)客户管理系统

客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息,对客户进行统一管理,可以把所有客户信息录入系统,进行维护和统计功能。可通过文件的方式保存相关录入数据,对…...

LLMs 系列实操科普(1)

写在前面: 本期内容我们继续 Andrej Karpathy 的《How I use LLMs》讲座内容,原视频时长 ~130 分钟,以实操演示主流的一些 LLMs 的使用,由于涉及到实操,实际上并不适合以文字整理,但还是决定尽量整理一份笔…...