什么是SR-MPLS

文章目录

    • 为什么需要SR-MPLS
    • SR-MPLS vs MPLS
    • SR-MPLS的工作原理
    • 从SR-MPLS到SRv6



SR-MPLS(Segment Routing MPLS,基于MPLS转发平面的段路由)是基于源路由理念而设计的在网络上转发数据包的一种协议。SR-MPLS的核心思想是将报文转发路径切割成不同的段,再为其分配SID(Segment Identifier,段标识符),然后通过在路径的起始点往报文中封装分段信息的方式来指导报文转发。


为什么需要SR-MPLS

全球数字化进程加速了互联网的蓬勃发展,新需求、新业务的不断涌现也为互联网带来了新的机遇与挑战,服务提供商如何根据多变的业务类型调整网络架构?在网络规模不断扩张、网络结构日渐复杂的背景下如何提供更高的带宽和更好的服务质量?SR设计之初就承载了简化网络的历史使命,运用协议简化的思路,帮助服务提供商完成业务驱动网络的转型。

传统MPLS技术的困局

MPLS(Multi-Protocol Label Switching,多协议标签交换)是一种工作在二层与三层之间的数据转发技术,虽然MPLS因其标签交换的思想使其转发平面广受好评,但是MPLS控制平面却因为协议复杂、扩展性差、部署维护困难等问题受到诟病。那么MPLS控制平面的两大协议,LDP(Label Distribution Protocol,标签分发协议)和RSVP-TE(Resource Reservation Protocol-Traffic Engineering,基于流量工程的资源预留协议)都存在哪些问题呢?

LDP是基于IGP算路结果完成标签分发,LDP存在的主要问题是:

  • 依赖IGP,但是LDP与IGP实际是两个独立的协议,会存在不同步问题,导致流量黑洞。
  • 只能通过最短路径转发,不支持流量工程,缺乏路径规划能力。

RSVP-TE虽然实现了流量工程,可以根据业务需要灵活地选择转发路径,但是也存在明显问题:

  • 配置、维护复杂,RSVP-TE协议状态复杂,设备需要交互大量报文来维持隧道状态,使得该协议难以规模部署。

  • 不支持负载分担,难以充分利用网络资源。

SR-MPLS的使命就是既需要保留传统MPLS网络的优点,还需要解决传统网络的困局。

SDN思潮影响

SDN是一种新的网络体系架构,由美国斯坦福大学 尼克 · 麦基翁(Nick McKeown)教授的团队提出,通过借鉴计算机领域通用硬件、软件定义和开源理念来解决传统网络架构中网络设备硬件、操作系统和网络应用紧密耦合,相互依赖的问题。

SDN主要有3大特征:网络开放可编程、逻辑上的集中控制、控制平面与转发平面分离。符合这3大特征的网络都可以称为SDN。SDN早期的实践代表是OpenFlow,OpenFlow是一种SDN控制平面和转发平面之间交互的通信协议,OpenFlow需要对网络硬件设施全部进行升级或者替换对传统网络进行了革命性创新,从传统网络的分布式架构转变为集中式架构,但是革命网络太过于理想,在实施过程中难以达到理想状态。而SR技术能同时支持传统网络和SDN网络,兼容现有设备,保障现有网络平滑演进到SDN网络。

网络架构演进

SR-MPLS技术价值

SR-MPLS伴随着SDN思潮应运而生,SR-MPLS技术能够使网络更加简化,并具有良好的可扩展能力,主要体现在以下方面:

  • 更简单的控制平面:无需部署LDP/RSVP-TE协议,只需要设备通过IGP/BGP协议扩展来实现标签分发或同步,或者由控制器统一负责SR标签的分配,并下发和同步给设备。
  • 易扩展的转发平面:SR-MPLS复用了已有的MPLS转发平面,网络设备不做改动或者进行简单升级就可以支持SR的转发,在SR-MPLS中,Segment可以映射为MPLS标签,路径就是标签栈。

SR-MPLS技术价值
SR-MPLS伴随着SDN思潮应运而生,SR-MPLS技术能够使网络更加简化,并具有良好的可扩展能力,主要体现在以下方面:

更简单的控制平面:无需部署LDP/RSVP-TE协议,只需要设备通过IGP/BGP协议扩展来实现标签分发或同步,或者由控制器统一负责SR标签的分配,并下发和同步给设备。
易扩展的转发平面:SR-MPLS复用了已有的MPLS转发平面,网络设备不做改动或者进行简单升级就可以支持SR的转发,在SR-MPLS中,Segment可以映射为MPLS标签,路径就是标签栈。
SR-MPLS控制平面和转发平面
SR-MPLS控制平面和转发平面

SR-MPLS以其简单、高效、易扩展的特点,使其具有很多优势:

  • 具备网络路径可编程能力:SR-MPLS具备源路由优势,仅在源节点对报文进行标签操作即可任意控制业务路径,且中间节点不需要维护路径信息,设备控制平面压力小。
  • 简化设备控制平面,减少路由协议数量,简化运维成本;标签转发表简单,标签占用少,设备资源占用率低。
  • 更好的向SDN网络平滑演进:面向SDN架构设计的协议,融合了设备自主转发和集中编程控制的优势,能够更好地实现应用驱动网络。同时,支持传统网络和SDN网络,兼容现有设备,保障现有网络平滑演进到SDN网络。

SR-MPLS控制平面和转发平面
SR-MPLS以其简单、高效、易扩展的特点,使其具有很多优势:

  • 具备网络路径可编程能力:SR-MPLS具备源路由优势,仅在源节点对报文进行标签操作即可任意控制业务路径,且中间节点不需要维护路径信息,设备控制平面压力小。
  • 简化设备控制平面,减少路由协议数量,简化运维成本;标签转发表简单,标签占用少,设备资源占用率低。
  • 更好的向SDN网络平滑演进:面向SDN架构设计的协议,融合了设备自主转发和集中编程控制的优势,能够更好地实现应用驱动网络。同时,支持传统网络和SDN网络,兼容现有设备,保障现有网络平滑演进到SDN网络。

SR-MPLS vs MPLS

SR-MPLS相比于MPLS,一方面保留了MPLS转发平面的优势,使得SR-MPLS可以直接应用在现有MPLS架构上,另一方面也对传统MPLS技术做了革命性的颠覆和创新。SR-MPLS的主要优势体现在以下几个方面。

SR-MPLS和MPLS对比

SR-MPLS的工作原理

SR-MPLS的工作就是将报文转发路径切割成不同的分段并为其分配SID,然后通过在路径的起始点往报文中插入分段信息的方式来指导报文正确的转发到目的地。下面我们将围绕着SID分配和传递展开介绍控制平面如何建立LSP,以及转发平面如何转发数据报文。

在介绍SR-MPLS的工作原理之前,先了解一些基本概念。

SR-MPLS的基本概念

什么是Segment?

Segment表示网络指令,用来指引报文去哪,怎么去。根据生成方式不同,Segment分为3类,分别是Prefix Segment、Node Segment、Adjacency Segment。

Segment分类
Segment分类

什么是SID?

SID表示Segment ID,用来标识SR域内唯一的段。在转发层面,可以映射为MPLS标签。如上图所示,SID也分为3类,分别是Prefix SID、Node SID、Adjacency SID。

  • Prefix SID,也可称之为前缀标签,是针对目的IP地址映射的标签。
  • Node SID,也可称之为节点标签,是针对设备Loopback口IP地址映射的标签,可以看作是特殊的Prefix SID。
  • Adjacency SID,也可称之为邻接标签,是每台设备针对自己的接口邻居发布的,用来显示指定数据包的外发链路,且具有方向性,例如P2分配的16024邻接标签,代表需要从本地Interface1接口外发给P4。

Prefix SID/Node SID和Adjacency SID可以分别类比于传统IP转发中的目的地址和出接口。

Prefix SID、Node SID、Adjacency SID

什么是Segment List?

Segment List表示报文转发路径的一个有序的Segment列表。在转发层面,可以理解为MPLS标签栈。

什么是SRGB?

SRGB表示用户指定的为SR-MPLS预留的全局标签集合,需要手工配置,并且该集合内的标签值只能分配给Prefix SID和Node SID,而Adjacency SID是SRGB范围外的本地SID。

如何建立SR-MPLS LSP和SR-MPLS TE隧道?
SR-MPLS LSP本质上是一种使用依靠Segment Routing技术建立的标签转发路径,因此,SR-MPLS LSP的建立过程实际上是Prefix SID、Node SID分配和传递的过程,SR-MPLS TE隧道的建立过程实际上是Adjacency SID分配和传递的过程。

Node SID分配和传递

如下图所示,以P4为目的节点,在P4节点上手工配置Node SID,通过IGP协议扩展到其他网元之后,整个IGP域的其他节点学习到P4节点的Node SID,然后使用SPF算法得出一条到P4的标签转发路径,然后生成转发表项。

使用Node SID表示的路径就是SR-MPLS BE LSP,SR-MPLS BE是指IGP使用最短路径算法计算得到的最优SR LSP。

Node SID分配和传递

Prefix SID分配和传递

如下图所示,以P4为目的节点,在P4节点上手工配置Prefix SID,通过IGP协议扩展到其他网元之后,其他网元会解析Prefix SID,并根据自己的SRGB计算标签值。此后各节点使用IGP协议收集的拓扑信息,根据最短路径算法计算标签转发路径,并将计算的下一跳及出标签(OutLabel)信息下发转发表,指导数据报文转发。

使用Prefix SID表示的路径也是SR-MPLS BE LSP。

Prefix SID分配和传递

基于Prefix SID的LSP创建过程如下:

  1. 在P4上配置SRGB,在P4的Loopback口配置Prefix SID,生成转发表项并下发。之后P4将SRGB和Prefix SID封装到LSP报文,并将LSP报文通过IGP向全网扩散。
    网络中其他节点接收到LSP报文后,解析P4发布的Prefix SID,根据自己的SRGB计算标签值,同时根据下一跳节点发布的SRGB计算出标签值(OutLabel)。使用IGP拓扑计算标签转发路径,然后生成转发表项。

  2. P3解析P4发布的Prefix SID,根据自己的SRGB=[36000–65535]计算标签值,计算公式是:Label=SRGB的起始值+Prefix SID值,所以Label=36000+100=36100。
    使用IS-IS拓扑计算出标签(OutLabel),计算公式是:OutLabel=下一跳设备发布的SRGB的起始值+Prefix SID值,在本例中,下一跳设备为P4,P4发布的SRGB范围是[16000–65535],所以OutLabel=16000+100=16100。

  3. P2计算过程与P3类似,Label=26000+100=26100,OutLabel=36000+100=36100。

  4. P1计算过程与P3类似,Label=20000+100=20100,OutLabel=26000+100=26100。

Adjacency SID分配和传递

如下图所示,P2节点为其每个邻居分配一个Adjacency SID,IGP默认为邻居自动生成Adjacency SID,也可以支持手工配置。Adjacency SID也是通过IGP协议扩展到其他网元,但是仅在分配的节点生成转发表项,其余节点不针对Adjacency SID生成转发表项,例如此例中仅在P2生成了转发表项。

通过在头节点定义一个包含多个Adjacency SID的Segment List,还可以实现路径的精细规划,因此使用Adjacency SID表示的路径可以称之为SR-MPLS TE隧道,能更好地实现流量工程。

Adjacency SID分配和传递

从上面的介绍中也能看出Prefix SID、Node SID和Adjacency SID的作用:

  • Prefix SID和Node SID用来标识一个节点,从转发平面可以将其理解为沿着支持ECMP的最短路径到此节点,由此可见,基于Prefix SID或Node SID的转发路径并不是一条固定路径,头节点无法控制报文的整条转发路径,因此基于Prefix SID或Node SID建立的转发路径称之为SR-MPLS BE LSP。
  • Adjacency SID是本地针对自己的接口邻居分配的,从转发平面可以将其理解为沿着指定出接口或下一跳转发报文,当在头节点定义一个或多个Adjacency SID的Segment List,则可以严格指定任意一条显式路径,因此基于Adjacency SID建立的转发路径称之为SR-MPLS TE隧道,这种方式能更好的配合实现SDN。另外对于严格指定的显式路径又称之为严格路径,这是SR-MPLS TE隧道的其中一种形式。

在实际应用中Prefix SID、Node SID、Adjacency SID可以单独使用,也可以结合使用,如下图所示,还可以基于Adjacency SID + Node SID建立转发路径。通过Adjacency SID,可以强制整条路径包含某一个邻接。而对于Node SID,节点可以使用SPF算法计算最短路径,也可以负载分担。这种方式的路径并不是严格固定,所以也称作松散路径,这是SR-MPLS TE隧道的另一种形式。

Adjacency SID + Node SID的转发路径

如何转发报文?

前面我们分别介绍了基于不同类型SID建立的不同类型LSP:SR-MPLS BE LSP和SR-MPLS TE隧道(又包含严格路径和松散路径两种形式),下面采用示例说明不同类型LSP的数据报文转发流程。

基于Prefix SID的数据报文转发

以基于Prefix SID的SR-MPLS BE LSP为例,报文在该LSP的报文转发流程如下:

  1. P1节点收到数据报文,添加标签值26100并转发。
  2. P2节点收到该标签报文,进行标签交换,将标签26100弹出,换成标签36100。
  3. P3节点收到该标签报文,进行标签交换,将标签36100弹出,换成标签16100。
  4. P4节点收到该标签报文后,将标签16100弹出,继续查路由转发。

基于Prefix SID的数据转发

基于Adjacency SID的数据报文转发

在头节点定义了一个包含多个Adjacency SID的Segment List后,报文则会沿着这条严格指定的显式路径(SR-MPLS TE隧道的LSP)进行转发,转发流程如下:

  1. P1节点收到数据报文,添加标签栈<1002,2004, 4005,5007,7009>,然后根据栈顶的标签1002匹配邻接,找到对应的转发出接口P1->P2邻接,之后将标签1002弹出。报文携带标签栈<2004, 4005,5007,7009>,通过P1->P2邻接向下游节点P2转发。
  2. P2节点收到报文后,根据栈顶的标签2004匹配邻接,找到对应的转发出接口为P2->P4邻接,之后将标签2004弹出。报文携带标签栈<4005,5007,7009>,通过P2->P4邻接向下游P4转发。
  3. P4、P5、P7节点收到报文后的处理方式与P2相同,直到P7弹出最后一个标签7009,数据报文转发至节点P9。
  4. 出节点P9收到的报文不带标签,通过查找路由表继续转发。

基于Adjacency SID的数据转发

基于Adjacency SID + Node SID的数据报文转发

严格路径方式的SR-MPLS TE在存在等价路径的情况下,也无法进行负载分担,在SR-MPLS TE路径里引入Node SID后,可以弥补上述不足。

在头节点手工指定Node SID、Adjacency SID混合标签栈,转发器基于该标签栈,逐跳查找出接口弹出标签,指导数据报文进行转发到隧道目的地址。如图所示,报文转发流程如下:

  1. 在P1节点根据栈顶邻接标签1003,找到对应的转发出接口为P1->P3邻接,将1003标签弹出,然后将剩余报文发送到下一跳P3节点;
  2. 在P3节点类似P1节点动作,根据栈顶标签1006,找到对应出接口,将1006标签弹出转发出去,发送到下一跳P2节点;
  3. 在P2节点类似P1节点动作,根据栈顶标签1005,找到对应出接口,将1005标签弹出转发出去,发送到下一跳P4节点;
  4. 在P4节点上,处理栈顶节点标签101,在P4节点标签101为到P7节点的链路负载分担标签,流量报文根据其IP五元组,哈希到相应链路上;
  5. 在P5、P6节点上,收到节点标签101后,根据对应的标签做对应动作,交换为下一跳的节点标签,由于这两个节点为倒数第二跳,直接将标签弹出后报文发送给P7节点,完成端到端路径的流量转发。

从以上描述可以看出,通过手工指定节点标签+邻接标签,设备在处理节点标签时,可以按照最短路径进行转发,也可以进行负载分担,其路径并不是严格固定,所以这种也称作松散路径方式的SR-MPLS TE。

基于Adjacency SID + Node SID的数据转发

从SR-MPLS到SRv6

SR-MPLS因其简单、高效、易扩展的特点,一经推出便很快得到了业界的认可。虽然基于MPLS转发平面的SR-MPLS可以提供很好的可编程能力,但是其受限于MPLS封装可扩展性不足等问题,无法很好地满足一些需要扩展报文头携带数据的新业务需求。而基于IPv6转发平面的SRv6不仅继承了SR-MPLS 网络的所有优点,还拥有比SR-MPLS更好的可扩展性。

SR-MPLS基于MPLS转发平面,通过MPLS标签标识SID。那么基于IPv6转发平面的SRv6(Segment Routing IPv6,基于IPv6转发平面的段路由),在没有了MPLS标签,又能用什么来标识SID呢?下面我们就来介绍SRv6与SR-MPLS在帧结构上做了哪些改变。

SR-MPLS

SRv6

从上图可以看出,SRv6在IPv6报文中插入了SRH扩展头来替代传统的MPLS标签转发功能,SRH扩展头存储的是IPv6的Segment List信息,其作用与SR-MPLS里的Segment List一样。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1165459.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

救命神器10个一键生成论文工具,专科生毕业论文轻松搞定!

救命神器10个一键生成论文工具&#xff0c;专科生毕业论文轻松搞定&#xff01; AI 工具如何让论文写作变得轻松 对于许多专科生来说&#xff0c;毕业论文的撰写无疑是一道难以逾越的难关。从选题到开题&#xff0c;从查找到写作&#xff0c;每一个环节都可能让人感到力不从心。…

django-flask基于python的大学生创新计划项目管理web系统

目录Django-Flask 基于 Python 的大学生创新计划项目管理 Web 系统摘要关于博主开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;Django-Flask 基于 Python 的大学生创新计划项目管理 Web 系统…

打开软件出现找不到d3dx9_36.dll如何修复? 附免费下载方法

在使用电脑系统时经常会出现丢失找不到某些文件的情况&#xff0c;由于很多常用软件都是采用 Microsoft Visual Studio 编写的&#xff0c;所以这类软件的运行需要依赖微软Visual C运行库&#xff0c;比如像 QQ、迅雷、Adobe 软件等等&#xff0c;如果没有安装VC运行库或者安装…

学霸同款2026 TOP8 AI论文软件:本科生毕业论文必备测评

学霸同款2026 TOP8 AI论文软件&#xff1a;本科生毕业论文必备测评 2026年学术写作工具测评&#xff1a;为何需要一份精准榜单&#xff1f; 随着AI技术在学术领域的深入应用&#xff0c;越来越多的本科生开始依赖AI工具辅助论文写作。然而&#xff0c;面对市场上琳琅满目的AI论…

django-flask基于python的大学生公益活动志愿服务系统的设计与实现

目录 摘要 关于博主开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01; 摘要 随着社会对公益事业的关注度不断提升&#xff0c;大学生参与志愿服务活动的需求日益增长。传统的志愿服务管理方式…

软件打开提示找不到d3dx9_30.dll文件 如何修复? 附免费下载方法

在使用电脑系统时经常会出现丢失找不到某些文件的情况&#xff0c;由于很多常用软件都是采用 Microsoft Visual Studio 编写的&#xff0c;所以这类软件的运行需要依赖微软Visual C运行库&#xff0c;比如像 QQ、迅雷、Adobe 软件等等&#xff0c;如果没有安装VC运行库或者安装…

django-flask基于python的大学生兼职网站的设计与实现

目录摘要关于博主开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;摘要 随着互联网技术的快速发展&#xff0c;在线兼职平台已成为大学生获取社会实践机会的重要渠道。本文基于Python技术栈&…

计算机毕业设计springboot罕见病科普交流平台 SpringBoot 驱动的“罕见病智慧科普与互动服务系统” 基于 SpringBoot 的“罕见病知识共享与病友互助平台”

计算机毕业设计springboot罕见病科普交流平台fhi4o8jo &#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。当罕见病遇上互联网&#xff0c;信息鸿沟便有望被填平。面对种类繁多、资料…

Open Code教程(一)| 快速入门:安装配置与基础使用

Open Code教程&#xff08;一&#xff09;| 快速入门&#xff1a;安装配置与基础使用OpenCode 快速入门&#xff1a;安装配置与基础使用一、什么是 OpenCode核心特点开发团队发布时间线相关开源项目二、OpenCode vs Claude Code 对比选择建议三、网络环境说明需要科学上网无需科…

【实测有效】分享5款亲测好用的论文降AI神器,轻松解决AI率过高问题,通过AI检测

现在写论文&#xff0c;真正难住人的不一定是内容。有时候&#xff0c;明明自己一字一句写完了&#xff0c;扔进检测系统一查——直接提示“AI生成内容过多&#xff0c;禁止提交。”真的是非常搞心态。 你认真整理的逻辑、反复推敲的结构&#xff0c;在系统眼里&#xff0c;就…

学霸同款9个AI论文软件,本科生轻松搞定毕业论文!

学霸同款9个AI论文软件&#xff0c;本科生轻松搞定毕业论文&#xff01; 1.「千笔」—— 一站式学术支持“专家”&#xff0c;从初稿到降重一步到位&#xff08;推荐指数&#xff1a;★★★★★&#xff09;对于本科生来说&#xff0c;论文写作不仅是对知识的综合运用&#xff…

论文AI率过高怎么办?亲测推荐5款降AI神器,高效降AIGC看这篇就够了!【建议收藏】

现在写论文&#xff0c;真正难住人的不一定是内容。有时候&#xff0c;明明自己一字一句写完了&#xff0c;扔进检测系统一查——直接提示“AI生成内容过多&#xff0c;禁止提交。”真的是非常搞心态。 你认真整理的逻辑、反复推敲的结构&#xff0c;在系统眼里&#xff0c;就…

Windows Server 2016 中文版、英文版下载 (2026 年 1 月更新)

Windows Server 2016 中文版、英文版下载 (2026 年 1 月更新) Windows Server 2016 x64 Version 1607 (updated Jan 2026) 请访问原文链接&#xff1a;https://sysin.org/blog/windows-server-2016/ 查看最新版。原创作品&#xff0c;转载请保留出处。 作者主页&#xff1a;…

选择敏捷咨询公司前,你一定要问的几个问题

企业做敏捷转型&#xff0c;最怕找错人、走弯路。市面上的敏捷咨询公司鱼龙混杂&#xff0c;有的主打低价培训&#xff0c;有的空谈理论框架&#xff0c;真正能帮企业解决实际问题的并不多。想要让敏捷转型真正落地见效&#xff0c;在合作前一定要问清楚以下几个关键问题&#…

破解 IPD 落地难题:专业咨询管理公司的核心价值

IPD&#xff08;集成产品开发&#xff09;体系的重要性已无需多言&#xff0c;但在“知道”与“做到”之间&#xff0c;往往横亘着一条难以逾越的实践鸿沟。许多企业满怀期待启动变革&#xff0c;却在落地过程中步履维艰——流程看似完整&#xff0c;却难以融入实际业务&#x…

Open Code教程(二)| 命令与技巧大全

Open Code教程&#xff08;二&#xff09;| 命令与技巧大全 OpenCode 命令与技巧大全一、前言二、命令大全斜杠命令&#xff08;/commands&#xff09; 三、快捷键大全基础操作消息浏览Leader 键命令 四、文件引用&#xff08; 符号&#xff09;技巧 五、Shell 命令&#xff08…

论文从AI率80%到10%的技巧分享:5款降AI工具实战经验,手把手教你如何降ai

现在写论文&#xff0c;真正难住人的不一定是内容。有时候&#xff0c;明明自己一字一句写完了&#xff0c;扔进检测系统一查——直接提示“AI生成内容过多&#xff0c;禁止提交。”真的是非常搞心态。 你认真整理的逻辑、反复推敲的结构&#xff0c;在系统眼里&#xff0c;就…

Open Code教程(三)| 实战案例集

Open Code教程&#xff08;三&#xff09;| 实战案例集OpenCode 实战案例集一、前言二、实战案例三、实战技巧总结四、下一篇预告OpenCode 实战案例集 一、前言 前两篇我们学习了 OpenCode 的安装配置和命令技巧。本文通过 15 个真实开发场景&#xff0c;展示如何用 OpenCode…

计算机毕业设计springboot基于java的小区物业管理系统 基于SpringBoot的社区智慧物业服务平台 Java微服务架构下的住宅小区综合管理系统

计算机毕业设计springboot基于java的小区物业管理系统n7yox197 &#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。城市化把“小区”变成了城市细胞&#xff0c;也让物业从看门扫地的…

免费与付费降AI工具怎么选?对比5款lunwen 降ai主流产品,哪款才是真正的降AI率神器

现在写论文&#xff0c;真正难住人的不一定是内容。有时候&#xff0c;明明自己一字一句写完了&#xff0c;扔进检测系统一查——直接提示“AI生成内容过多&#xff0c;禁止提交。”真的是非常搞心态。 你认真整理的逻辑、反复推敲的结构&#xff0c;在系统眼里&#xff0c;就…