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

(WAF)Web应用程序防火墙介绍

(WAF)Web应用程序防火墙介绍

1. WAF概述

​ Web应用程序防火墙(WAF)是一种关键的网络安全解决方案,用于保护Web应用程序免受各种网络攻击和威胁。随着互联网的不断发展,Web应用程序变得越来越复杂,同时也变得更加容易受到恶意攻击。WAF的目标是在应用程序和Web服务器之间建立一个安全的屏障,有效地防止各种攻击,从而保护用户数据、隐私和业务运营的连续性。

​ Web应用程序防火墙(WAF)的主要目标是在应用程序与Web服务器之间创建一种保护层,类似于隔离墙,以阻止恶意的网络攻击和威胁进入应用程序和服务器内部。

​ 具体来说WAF的核心功能,即在应用程序和Web服务器之间建立一个"安全的屏障",以确保来自外部网络的恶意流量、攻击和恶意代码无法直接影响应用程序。这个"安全的屏障"实际上是指WAF的工作机制,它通过对传入的HTTP请求进行深入分析,检测其中是否包含恶意的行为,如SQL注入、跨站点脚本(XSS)、跨站点请求伪造(CSRF)等。如果检测到恶意行为,WAF将采取相应的措施,例如拦截请求、阻止恶意流量进入服务器、强制执行访问控制规则等。

2. WAF诞生背景

Web应用程序防火墙(WAF)的诞生背景与互联网的发展和应用程序安全问题密切相关。以下是WAF诞生背景的一些关键因素:

  • 威胁环境的演变

    • 随着互联网的普及和发展,网络威胁也开始不断演变。攻击者利用各种手段,如SQL注入、跨站点脚本(XSS)、跨站点请求伪造(CSRF)等,试图窃取用户数据、绕过身份验证、破坏应用程序等。传统的网络安全措施如防火墙和入侵检测系统(IDS)无法完全防御这些应用层攻击。
  • 应用程序漏洞的普遍存在

    • 随着更多的业务和服务转移到Web平台上,应用程序安全问题变得尤为突出。开发人员在编写代码时可能会犯错误,导致应用程序存在漏洞。这些漏洞可能被攻击者利用,从而威胁到应用程序的安全性。
  • 市场需求和合规要求

    • 企业和组织对Web应用程序的安全性提出了更高的要求,尤其是涉及敏感数据和交易的应用。随着数据泄露和网络攻击事件的不断增加,保护用户隐私和敏感信息变得至关重要。此外,合规要求也推动了对应用程序安全的关注,特别是在金融、医疗和零售等行业。
  • 传统安全措施的局限性

    • 传统的网络安全措施如防火墙和IDS主要关注网络层面的威胁,而无法深入分析和防御应用层攻击。这就需要一种专门的解决方案,能够在应用程序层面检测和防御各种攻击。
  • 安全专家的呼声

    • 安全专家和研究人员开始呼吁开发更具针对性的应用程序安全解决方案。他们认识到,仅仅依靠开发人员的安全编码实践无法彻底解决问题,需要一种更强大的防御机制来保护应用程序。

​ 综合考虑以上因素,Web应用程序防火墙(WAF)应运而生。WAF充分利用网络安全技术和应用程序安全领域的专业知识,专注于检测和防御应用层攻击。它能够分析HTTP请求和响应,识别潜在的恶意行为,并采取适当的措施来保护应用程序免受攻击。通过在应用程序与外部网络之间建立一道屏障,WAF为Web应用程序提供了更高的安全性和可靠性。

3. WAF功能和特性

WAF的核心功能之一是检测和防护各种Web应用程序攻击,包括但不限于:

  • 攻击检测和防护

    • SQL注入(SQL Injection): 攻击者试图在应用程序中插入恶意的SQL代码,以获取未经授权的访问权限。

    • 跨站点脚本(XSS): 攻击者在Web页面中插入恶意脚本,以获取用户的敏感信息。

    • 跨站点请求伪造(CSRF): 攻击者通过利用用户身份在用户不知情的情况下执行恶意操作。

    • 命令注入(Command Injection): 攻击者试图通过向应用程序发送恶意命令来获得系统级访问权限。

  • 规则和签名

    • WAF使用预定义的规则和签名来检测已知的攻击模式。这些规则可以基于正则表达式、字符串匹配或其他模式,用于识别潜在的攻击行为。管理员可以根据需要启用、禁用或自定义这些规则,以适应特定的应用程序需求。
  • 行为分析

    • 高级的WAF系统可以通过分析应用程序的正常行为模式来检测异常活动。通过建立应用程序的行为基线,WAF可以识别出不符合正常模式的请求和行为,从而捕获未知的攻击。
  • 白名单和黑名单

    • WAF允许管理员配置白名单和黑名单,以控制对Web应用程序的访问。白名单中列出的IP地址或区域将被允许访问应用程序,而黑名单中列出的将被阻止。这为管理员提供了额外的控制权,以限制来自特定地区或恶意来源的访问。
  • 安全日志和报告

    • WAF记录所有的HTTP请求和响应,以及其所采取的防护措施。这些日志对于审计、分析潜在的安全事件以及支持合规性要求非常重要。报告和分析功能使管理员能够更好地了解攻击趋势和应用程序的安全状况。
  • 自定义规则

    • 为了应对特定的攻击场景和业务需求,管理员可以创建自定义规则。这些规则可以针对应用程序的特定漏洞或脆弱性进行调整,提供更加精细的防护。
  • CDN集成

    • 一些WAF系统与内容分发网络(CDN)集成在一起。这种集成可以在全球范围内提供更好的性能和可扩展性,同时也能保护分布式的Web应用程序免受攻击。

4. WAF部署方式

  • 基于软件的WAF

​ 软件WAF是以软件应用程序的形式存在,可以在特定的服务器上安装和运行。它可以嵌入到应用程序服务器中,监控和保护特定的应用程序。软件WAF适用于需要定制化的防护策略或需要保护特定应用程序的情况。

  • 主机本地WAF(硬件WAF)

​ 硬件WAF是一种物理设备,通常是专门设计的硬件,用于在网络流量进入企业网络之前检测和防御应用层攻击。这些设备通常放置在网络边界或数据中心的入口,可以过滤所有进入的流量。硬件WAF通常提供较高的性能和防护能力,适用于需要处理大量流量的企业。

  • 云WAF

​ 云WAF是以云服务的形式提供的,由云服务提供商托管和管理。它通过云网络连接到用户的应用程序,过滤流量并提供保护。云WAF适用于云原生应用程序或需要弹性扩展和灵活部署的情况。用户无需管理硬件或软件,而是通过云控制台进行配置和管理。

5. WAF局限性

尽管WAF在保护Web应用程序方面发挥着重要作用,但它并不是解决所有网络安全问题的唯一解决方案。一些限制包括:

  1. 未知攻击: 新型攻击可能不在WAF的规则库中,因此WAF可能无法准确检测和防护这些攻击。

  2. 误报和漏报: WAF可能会错误地将正常请求标记为恶意(误报),或者未能识别真正的恶意请求(漏报)。

  3. 性能影响: 在高流量环境中,WAF的部署可能会对应用程序性能产生影响,因为它需要分析和处理所有的请求。

  • 最佳实践
  1. 维护更新的规则库: 确保WAF的规则库始终更新,以便识别和防护最新的攻击模式。

  2. 定期审计和优化: 定期审查WAF日志和

报告,以识别潜在的威胁和弱点,并优化WAF的配置。

  1. 组合安全措施: WAF应与其他安全措施,如安全编码实践、漏洞扫描和渗透测试等结合使用,以实现更全面的安全保护。

6. WAF未来发展趋势

随着网络威胁的不断演化,WAF技术也在不断发展,以适应新的挑战和需求。以下是一些WAF未来可能的发展趋势:

  1. 机器学习和人工智能: 基于机器学习和人工智能的WAF将能够更好地识别未知的攻击模式和零日漏洞,从而提高检测和防护的准确性。

  2. 行为分析的加强: 更强大的行为分析技术将能够更准确地识别异常活动,并更好地区分正常流量和攻击流量。

  3. 自适应防御: 未来的WAF可能会实现自适应防御,根据攻击情况动态调整防护策略,以更好地应对不同类型的攻击。

  4. API保护: 随着API在应用程序中的重要性不断增加,WAF可能会扩展其防护范围,包括保护应用程序的API免受攻击。

  5. 更好的集成: WAF可能会更好地与其他安全解决方案集成,如入侵检测系统(IDS)、安全信息和事件管理(SIEM)系统等,以提供更全面的安全情报。

  6. 云原生安全: 随着越来越多的应用程序迁移到云平台,云原生WAF将变得更为重要,以适应云环境中不同的威胁和挑战。

  7. 可视化和交互: WAF可能会提供更直观的可视化仪表板,使管理员能够更轻松地监控和管理应用程序的安全状态。

7. WAF与防火墙区别

虽然Web应用程序防火墙(WAF)和传统网络防火墙都涉及到"防火墙"这一概念,但它们的本质和功能有一些关键区别。以下是WAF和防火墙的本质区别:

  • 应用层 vs. 网络层防御

    • WAF(Web应用程序防火墙): WAF是专门用于保护Web应用程序免受各种应用层攻击的安全解决方案。它主要关注HTTP请求和响应,并针对SQL注入、跨站点脚本(XSS)、跨站点请求伪造(CSRF)等攻击进行检测和防御。WAF能够深入分析应用层的数据,并根据应用程序逻辑判断是否存在恶意行为。

    • 传统防火墙: 传统网络防火墙位于网络层,主要用于控制网络流量的进出。它根据IP地址、端口和协议等信息来控制流量的流向,以防止未经授权的访问。传统防火墙通常不会深入分析应用层的内容,因此对应用层攻击的检测能力有限。

  • 焦点和规则

    • WAF: WAF的主要焦点是识别和防御应用层攻击。它使用预定义的规则、签名和行为分析来检测潜在的攻击,然后采取相应的措施来保护应用程序。WAF可以定制规则,以适应特定的应用程序需求。

    • 传统防火墙: 传统防火墙的焦点是控制网络流量,阻止未经授权的访问。它使用IP地址、端口和协议等信息来过滤流量,确保只有授权的流量能够通过。传统防火墙的规则通常基于网络参数而非应用层内容。

  • 适用范围

    • WAF: WAF主要用于保护Web应用程序,特别是对于涉及用户隐私和敏感信息的应用非常有用。它可以防御与Web应用程序相关的特定攻击。

    • 传统防火墙: 传统防火墙可以用于保护整个网络,无论是内部网络还是与外部网络的通信。它关注的是网络层面的流量控制。

  • 部署位置

    • WAF: WAF通常部署在应用程序和外部网络之间,以拦截和检测进入应用程序的恶意流量。

    • 传统防火墙: 传统防火墙可以在网络边界、内部网络以及云平台等不同位置进行部署。

​ WAF和传统防火墙虽然都与"防火墙"相关,但它们的本质和功能存在重要区别。WAF专注于应用层攻击的检测和防御,而传统防火墙主要用于控制网络流量的进出。两者通常在不同的层面和场景中发挥作用,相互补充,以提供综合的网络和应用程序安全保护。

8. WAF与防火墙协作关系

防火墙(Firewall)和Web应用程序防火墙(WAF)在网络安全中是两个关键的组件,它们在使用上有一定的关系,但又具有不同的重点和功能。以下是防火墙和WAF在使用上的关系介绍:

  • 层级保护

​ 防火墙通常位于网络的边界,用于过滤和监控进出网络的流量。它主要关注网络层面的安全,控制通信流量、IP地址和端口等。WAF则位于应用程序前端,主要关注应用层攻击的检测和防御。

  • 网络保护和应用保护

​ 防火墙主要用于保护整个网络免受未经授权的访问、恶意流量和网络攻击,它可以过滤入站和出站的流量。WAF则专注于保护Web应用程序免受应用层攻击,如SQL注入、XSS和CSRF等。

  • 不同的攻击防御

​ 防火墙主要用于防御网络层的攻击,如DDoS攻击、端口扫描等。WAF专注于防御应用层攻击,如针对Web应用程序的恶意请求和数据。

  • 不同的工作机制

​ 防火墙使用规则和策略来控制流量的流向,允许或拒绝特定类型的连接。WAF使用预定义的规则和行为分析来检测和阻止应用层攻击,它对HTTP请求和响应进行深入分析。

  • 综合安全

​ 综合安全策略可能会将防火墙和WAF结合使用。防火墙保护网络层,防御未经授权的访问和基本的网络攻击。WAF则在应用程序层提供额外的安全性,保护Web应用程序免受特定的应用层攻击。

  • 互补关系

​ 防火墙和WAF在安全策略中通常是互补的,相互弥补对方的不足。防火墙提供了基本的网络保护,而WAF则提供了专门的应用程序层保护。结合两者可以实现更全面的安全性。

  • 日志和监控

​ 防火墙和WAF都会生成日志,记录其活动和拦截的流量。这些日志对于安全审计、监控和调查安全事件都非常重要。

防火墙和WAF在保护企业网络和应用程序安全方面都扮演着重要的角色,但它们关注的层面和攻击类型有所不同。结合两者可以为企业提供更全面、多层次的安全保护。

9. WAF设备主要组件

Web应用程序防火墙(WAF)硬件设备通常包括多个组件,这些组件共同工作以实现有效的应用层安全防护。以下是WAF硬件设备可能包含的一些主要组件:

  1. 硬件外壳: WAF硬件设备通常由一个外壳来保护内部电子元件,提供物理保护和散热。

  2. 处理器: 处理器是WAF设备的核心组件,负责执行各种应用层安全检测和防御任务。

  3. 内存: 内存用于存储临时数据、缓存信息以及正在处理的HTTP请求和响应数据。

  4. 网络接口: 网络接口用于连接WAF设备与网络,接收进入和离开网络的流量。

  5. 输入/输出接口: 输入/输出接口用于连接到其他设备,如监控器、键盘、鼠标等。

  6. 硬盘/存储: 用于存储设备的操作系统、应用程序、规则库、日志数据等。

  7. 电源供应: 提供设备所需的电源以确保正常运行。

  8. 操作系统: 设备的操作系统管理和执行各种安全功能,包括规则管理、威胁检测和日志记录。

  9. 防火墙引擎: 专门设计的引擎,负责执行WAF的各种检测和防御功能,如规则匹配、行为分析等。

  10. 规则库: 预定义的规则集,用于检测和阻止不同类型的应用层攻击,如SQL注入、XSS等。

  11. 网络分析工具: 用于分析进入和离开网络的流量,识别潜在的攻击和异常行为。

  12. 安全策略配置界面: 提供给管理员配置和管理WAF的安全策略、规则和设置的界面。

  13. 日志记录和报告模块: 用于生成、存储和查看WAF的活动日志以及生成安全报告。

  14. 故障排除和监控工具: 提供监控WAF设备健康状态、性能和问题的工具。

  15. 固件更新接口: 用于更新设备的操作系统、规则库和引擎,以保持最新的安全性。

​ 这些组件共同协作,使WAF硬件设备能够有效地检测、阻止和缓解应用层攻击,提供强大的Web应用程序安全保护。不同的供应商和设备可能会有一些变化,但上述组件通常是WAF硬件设备的主要构成部分。

10. 总结

​ Web应用程序防火墙(WAF)在保护Web应用程序免受各种网络攻击方面发挥着关键作用。它通过监控、检测和防护恶意请求,提供了一道坚实的防线,保护用户数据、隐私和业务连续性。然而,要充分发挥其作用,WAF需要与其他安全措施结合使用,同时也需要管理员的定期维护和优化。通过综合的安全策略,可以实现强大的Web应用程序安全。

​ Web应用程序防火墙(WAF)是保护Web应用程序免受各种网络攻击的关键工具。它通过检测和防护SQL注入、跨站点脚本、跨站点请求伪造等攻击,保护用户数据、隐私和业务连续性。WAF可以部署在网络边界、主机本地或云上,具体的部署方式取决于应用程序的需求。尽管WAF在应用程序安全方面发挥着重要作用,但它也有一些局限性,如无法解决所有的安全问题和可能的误报漏报情况。

​ 未来,随着网络威胁的不断演化,WAF技术将会持续发展,采用更先进的技术,以应对新的攻击挑战。无论如何,综合的安全策略仍然是确保Web应用程序安全的关键,包括安全编码实践、定期漏洞扫描、渗透测试等。通过持续的努力,可以建立更加强大的Web应用程序安全防御体系,确保用户数据和业务的安全。

相关文章:

(WAF)Web应用程序防火墙介绍

(WAF)Web应用程序防火墙介绍 1. WAF概述 ​ Web应用程序防火墙(WAF)是一种关键的网络安全解决方案,用于保护Web应用程序免受各种网络攻击和威胁。随着互联网的不断发展,Web应用程序变得越来越复杂&#x…...

SpringMVC拦截器常见应用场景

在Spring MVC中,拦截器是通过实现HandlerInterceptor接口来定义的。该接口包含了三个方法: preHandle:在请求到达处理器之前执行,可以进行一些预处理操作。如果返回false,则请求将被拦截,不再继续执行后续的…...

爬虫:绕过5秒盾Cloudflare和DDoS-GUARD

本文章仅供技术研究参考&#xff0c;勿做它用&#xff01; 5秒盾的特点 <title>Just a moment...</title> 返回的页面中不是目标数据&#xff0c;而是包含上面的代码&#xff1a;Just a moment... 或者第一次打开网页的时候&#xff1a; 这几个特征就是被Cloud…...

数据仓库环境下的超市进销存系统结构

传统的进销存系统建立的以单一数据库为中心的数据组织模式&#xff0c;已经无 法满足决策分析对数据库系统的要求&#xff0c;而数据仓库技术的出现和发展&#xff0c;为上述问题 的解决提供了强有力的工具和手段。数据仓库是一种对多个分布式的、异构的数据 库提供统一查询…...

leetcode:2011. 执行操作后的变量值(python3解法)

难度&#xff1a;简单 存在一种仅支持 4 种操作和 1 个变量 X 的编程语言&#xff1a; X 和 X 使变量 X 的值 加 1--X 和 X-- 使变量 X 的值 减 1 最初&#xff0c;X 的值是 0 给你一个字符串数组 operations &#xff0c;这是由操作组成的一个列表&#xff0c;返回执行所有操作…...

ubuntu下mysql

安装&#xff1a; sudo apt update sudo apt install my_sql 安装客户端&#xff1a; sudo apt-get install mysql-client sudo apt-get install libmysqlclient-dev 启动服务 启动方式之一&#xff1a; sudo service mysql start 检查服务器状态方式之一&#xff1a;sudo …...

大模型从入门到应用——LangChain:链(Chains)-[链与索引:检索式问答]

分类目录&#xff1a;《大模型从入门到应用》总目录 下面这个示例展示了如何在索引上进行问答&#xff1a; from langchain.embeddings.openai import OpenAIEmbeddings from langchain.vectorstores import Chroma from langchain.text_splitter import CharacterTextSplitte…...

【LeetCode-中等题】142. 环形链表 II

文章目录 题目方法一&#xff1a;哈希表set去重方法二&#xff1a;快慢指针 题目 方法一&#xff1a;哈希表set去重 思路&#xff1a;我们遍历链表中的每个节点&#xff0c;并将它记录下来&#xff1b;一旦遇到了此前遍历过的节点&#xff0c;就可以判定链表中存在环。借助哈希…...

Android TV开发之VerticalGridView

Android TV应用开发和手机应用开发是一样的&#xff0c;只是多了焦点控制&#xff0c;即选中变色。 androidx.leanback.widget.VerticalGridView 继承 BaseGridView &#xff0c; BaseGridView 继承 RecyclerView 。 所以 VerticalGridView 就是 RecyclerView &#xff0c;使…...

SpringBoot+Vue项目添加腾讯云人脸识别

一、引言 人脸识别是一种基于人脸特征进行身份认证和识别的技术。它使用计算机视觉和模式识别的方法&#xff0c;通过分析图像或视频中的人脸特征&#xff0c;例如脸部轮廓、眼睛、鼻子、嘴巴等&#xff0c;来验证一个人的身份或识别出他们是谁。 人脸识别可以应用在多个领域…...

什么是IPv4?什么又是IPv6?

IPv4网络IPv4地址 IPv6网络IPv6地址 路由总结感谢 &#x1f496; hello大家好&#x1f60a; IPv4网络 IPv4&#xff08;Internet Protocol Version 4&#xff09;是当今互联网上使用的主要网络协议。 IPv4地址 IPv4 地址有32位&#xff0c;通常使用点号分隔的四个十进制八位…...

飞腾FT-2000/4、D2000 log报错指导(3)

在爱好者群中遇见了很多的固件问题,这里总结记录了大家的交流内容和调试心得。主要是飞腾桌面CPU FT-2000/4 D2000相关的,包含uboot和UEFI。希望对大家调试有所帮助。 这个专题会持续更新,凑够一些就发。 23 在s3 唤醒时报错如下 check suspend ,Platform exception report…...

基于安卓的考研助手系统app 微信小程序

&#xff0c;设计并开发实用、方便的应用程序具有重要的意义和良好的市场前景。HBuilder技术作为当前最流行的操作平台&#xff0c;自然也存在着大量的应用服务需求。 本课题研究的是基于HBuilder技术平台的安卓的考研助手APP&#xff0c;开发这款安卓的考研助手APP主要是为了…...

Leetcode:238. 除自身以外数组的乘积【题解超详细】

纯C语言实现&#xff08;小白也能看明白&#xff09; 题目 给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数…...

基于单片机的智能数字电子秤proteus仿真设计

一、系统方案 1、当电子称开机时&#xff0c;单片机会进入一系列初始化&#xff0c;进入1602显示模式设定&#xff0c;如开关显示、光标有无设置、光标闪烁设置&#xff0c;定时器初始化&#xff0c;进入定时器模式&#xff0c;如初始值赋值。之后液晶会显示Welcome To Use Ele…...

大数据(二)大数据行业相关统计数据

大数据&#xff08;二&#xff09;大数据行业相关统计数据 目录 一、大数据相关的各种资讯 二、转载自网络的大数据统计数据 2.1、国家大数据政策 2.2、产业结构分析 2.3、应用结构分析 2.4、数据中心 2.5、云计算 一、大数据相关的各种资讯 1. 据IDC预测&#xff0…...

Ruoyi安装部署(linux环境、前后端不分离版本)

目录 简介 1 新建目录 2 安装jdk 2.1 jdk下载 2.2 解压并移动文件夹到/data/service目录 2.3 配置环境变量 3 安装maven 3.1 进入官网下载最新的maven 3.2 解压并移动文件夹到/data//service目录 3.3 配置环境变量 3.4 配置本地仓库地址与阿里云镜像 4 安装git 4.…...

PHP聚合支付网站源码/对接十多个支付接口 第三方/第四方支付/系统源码

PHP聚合支付网站源码/对接十多个支付接口 第三方/第四方支付/系统源码 内附数十个支付接口代码文件。 下载地址&#xff1a;https://bbs.csdn.net/topics/616764485...

容器化微服务:用Kubernetes实现弹性部署

随着云计算的迅猛发展&#xff0c;容器化和微服务架构成为了构建现代应用的重要方式。而在这个过程中&#xff0c;Kubernetes&#xff08;常简称为K8s&#xff09;作为一个开源的容器编排平台&#xff0c;正在引领着容器化微服务的部署和管理革命。本文将深入探讨容器化微服务的…...

DevOps系列文章 之 Python基础

Python语法结构 语句块缩进 1.python代码块通过缩进对齐表达代码逻辑而不是使用大括号 2.缩进表达一个语句属于哪个代码块 3.缩进风格 &#xff1a; 建议使用四个空格 如果是Linux系统的话&#xff0c;可以这样做&#xff0c;实现自动缩进 &#xff1a; vim ~/.vimrc set ai…...

Harbour.Space Scholarship Contest 2023-2024 (Div. 1 + Div. 2) A ~ D

比赛链接 A 正常枚举就行&#xff0c;从最后一位往前枚举&#xff0c;-1、-2、-3...这样 #include<bits/stdc.h> #define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); #define endl \nusing namespace std;typedef pair<int, int> PII; typedef long l…...

[管理与领导-53]:IT基层管理者 - 8项核心技能 - 8 - 持续改进

前言&#xff1a; 管理者存在的价值就是制定目标&#xff0c;即目标管理、通过团队&#xff08;他人&#xff09;拿到结果。 要想通过他人拿到结果&#xff1a; &#xff08;1&#xff09;目标&#xff1a;制定符合SMART原则的符合业务需求的目标&#xff0c;团队跳一跳就可以…...

芯片验证板卡设计原理图:446-基于VU440T的多核处理器多输入芯片验证板卡

基于VU440T的多核处理器多输入芯片验证板卡 一、板卡概述 基于XCVU440-FLGA2892的多核处理器多输入芯片验证板卡为实现网络交换芯片的验证&#xff0c;包括四个FMC接口、DDR、GPIO等&#xff0c;北京太速科技芯片验证板卡用于完成甲方的芯片验证任务&#xff0c;多任务…...

几个nlp的小任务(机器翻译)

几个nlp的小任务(机器翻译) 安装依赖库数据集介绍与模型介绍加载数据集看一看数据集的样子评测测试数据预处理测试tokenizer处理目标特殊的token预处理函数对数据集的所有数据进行预处理微调预训练模型设置训练参数需要一个数据收集器,把处理好数据喂给模型设置评估方法参数…...

飞腾X100 LPDDR颗粒线序配置辅助工具

B站讲解视频: 正文内容: 一、 飞腾X100显存使用LPDDR4时,需要工程师在X100的固件中去配置线序交换说明,就类似下面这个: 图1 我们需要输入每个slice中DQ的线序,也需要输入slice之间的交换关系,这个工作量也不小,同时容易出现错误,所以开发了一款辅助小工具,…...

二、数学建模之整数规划篇

1.定义 2.例题 3.使用软件及解题 一、定义 1.整数规划&#xff08;Integer Programming&#xff0c;简称IP&#xff09;&#xff1a;是一种数学优化问题&#xff0c;它是线性规划&#xff08;Linear Programming&#xff0c;简称LP&#xff09;的一个扩展形式。在线性规划中&…...

C语言日常刷题 4

文章目录 题目答案与解析123456 题目 1、设变量已正确定义&#xff0c;以下不能统计出一行中输入字符个数&#xff08;不包含回车符&#xff09;的程序段是&#xff08; &#xff09; A: n0;while(chgetchar()!‘\n’)n; B: n0;while(getchar()!‘\n’)n; C: for(n0;getchar()…...

MyBatis plus 多数据源实现

1. 项目背景 最近写文章发布到【笑小枫】小程序和我的个人网站上&#xff0c;因为个人网站用的是halo框架搭建&#xff0c;两边数据结构不一致&#xff0c;导致我每次维护文章都需要两边维护&#xff0c;这就很烦~ 于是&#xff0c;本文就诞生了。通过项目连接这两个数据库&a…...

k-近邻算法概述,k-means与k-NN的区别对比

目录 k-近邻算法概述 k-近邻算法细节 k值的选取 分类器的决策 k-means与k-NN的区别对比 k-近邻算法概述 k近邻&#xff08;k-nearest neighbor, k-NN&#xff09;算法由 Cover 和 Hart 于1968年提出&#xff0c;是一种简单的分类方法。通俗来说&#xff0c;就是给定一个…...

node 项目搭建

1. 初始化项目 cmd 执行 cnpm init -y 创建README.md 依赖安装 1. 数据库 和 框架 mysql express cnpm install mysql express --save 2. 后端跨域 cors cnpm i cors 3. 安装 body-parser 声明引用 用于接收前端 post 过来的数据 cnpm install --save body-parser 4…...

网站多多/宁德seo优化

本文转载自&#xff1a; https://www.cnblogs.com/hcbwei/archive/2009/08/31/1557289.html 作者&#xff1a;hcbwei 转载请注明该声明。分页类 jQuery Pagination jQuery分页插件jQuery Pagination pager jQuery plug-in jQuery分页插件。pager jQuery plug-in JQuery Pager …...

php网站外包/保定seo网站推广

题目描述&#xff1a; 692. 前K个高频单词 给一非空的单词列表&#xff0c;返回前 k 个出现次数最多的单词。 返回的答案应该按单词出现频率由高到低排序。如果不同的单词有相同出现频率&#xff0c;按字母顺序排序。 示例 1&#xff1a; 输入: [“i”, “love”, “leetcod…...

黑龙江建设人力资源网站/江苏网站推广

Atitit. Gui控件and面板----程序快速启动区--最佳实践Launchy ObjectDock-o0g 两个方式::: 键盘式::先用热键呼叫出QS&#xff0c;然后开始输入程序中的部分字母,按Enter就 是启动这个程序 鼠标式::mouse左的呼叫出面板,分组,点击启动... 作者:: 老哇的爪子 Attilax 艾龙&a…...

免费营销网站制作/网站优化及推广方案

转自&#xff1a;http://www.cnbeta.com/articles/tech/503593.htm 2016年05月22日 15:49 10425 次阅读 稿源&#xff1a;雷锋网 Project Tango发布初期曾经一度被称为黑科技&#xff0c;但现如今已慢慢走进我们的生活。如果说Kinect是3D感应技术的开创者&#xff0c;那么Pro…...

湛江市建设局官方网站/东莞网站推广软件

http://www.wxapp-union.com/article-1070-1.html 分享者&#xff1a;senola&#xff0c;GitHub地址&#xff1a;https://github.com/senola/webchat-app-issues早就知道小程序这个坑很深&#xff0c;一个多月的实践发现这个坑果然名不虚传... 不过&#xff0c;开发的小程序如…...

西安建网站/百度手机助手app下载

文章目录题目描述题解C语言C2. 两数相加题目描述 给你两个 非空 的链表&#xff0c;表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的&#xff0c;并且每个节点只能存储 一位 数字。 请你将两个数相加&#xff0c;并以相同形式返回一个表示和的链表。 你可以假设…...