本文分享自华为云社区《提升网络协议服务器的定位能力》,作者:张俭。近期,我再次涉足于协议服务器相关的工作领域,致力于定位并解决各种问题。简单总结一些心得给大家。如果想要定位出协议服务器的问题,那么这些能力可能至关重要。注:我这里比较偏向协议本身的问题,不涉及一些通用的网络问题(如网络吞吐量上不去、响应时间长等等)对CPU和内存的通用分析能力首先,网络协议服务器本质上也是一个应用程序。因此,需要具备一些关于CPU和内存的通用分析能力。PU/内存火焰图,内存dump分析,锁分析,以及远程调试(研发态手段)这些手段都要具备日志和网络连接的关联为了有效地定位网络问题,日志需要精确到毫秒级别。没有毫秒级
目录一、docker安全二、http与https的区别三、为什么要使用SSL证书?四、https证书认证的过程https单向认证的访问流程https双向认证的访问流程五、如何获取证书?六、实操获取证书并验证1、通过阿里云获取证书2、通过mkcert获取证书3、通过openssl获取证书一、docker安全docker容器使用安全注意点:尽量别做的事:尽量不用--privileged运行容器(授权容器root用户拥有宿主机的root权限)尽量不用--networkhost运行容器(使用host网络模式共享宿主机的网络命名空间)尽量不在容器中运行ssh服务尽量不把宿主机系统的关键敏感目录挂载到容器
OSPF:开放式最短路径优先协议也叫无类别链路状态IGP动态路由协议1.距离矢量协议: 运行距离矢量协议的路由器会周期性的泛洪自己的路由表,通过路由的交互,每台路由器从相邻的路由器学习到路由,并且加载进自己的路由表中,对于网络中的所有路由而言,路由器并不清楚网络的拓扑结构,只是简单的知道要去的往某个目的地的方向在哪,距离多远,这就是距离矢量协议的本质。2.链路状态协议:与距离矢量不同,链路状态协议通告的是链路状态信息,而不是路由器。运行链路状态协议的路由器之间会建立一个协议的邻居关系,然后彼此开始交互LSA(链路状态通告)。每台路由器都会产生LSA,路由器将接受到的LSA放入自己的LSDB
一:HTTP响应1.1认识“状态码”(statuscode)状态码表示访问一个页面的结果.(是访问成功,还是失败,还是其他的一些情况…),以下为常见的状态码.1.1.1200OK这是一个最常见的状态码,表示访问成功.抓包抓到的大部分结果都是200HTTP/1.1200OKServer:nginxDate:Thu,10Jun202106:07:27GMTContent-Type:text/html;charset=utf-8Connection:keep-alive...注意:在抓包观察响应数据的时候,可能会看到压缩之后的数据,形如:网络传输中“带宽”是一个稀缺资源,为了传输效率更高往往会对数据
前言:在成功通过arduino开发板控制直流电机后,开始尝试用ros与arduino通信来控制直流电机,为无人小车作准备参考教程:创客智造1.硬件arduino开发板、杜邦线、直流电机、L298N电机驱动板板子的连接参考我之前写的博客:L298N电机驱动器和Arduino板来控制直流电机2.在ubuntu下安装arduinoIDE和rosserialarduino参考链接:安装最新arduino和建立ros_lib库3.打开arduino上传代码对于新手而言,参考创客智造和我之前写的博客(即第一个和第二个链接)会更容易理解#include#include#include//头文件ros::No
准备工作小程序后台设置用户隐私保护指引,需要等待审核通过:设置-基本设置-服务内容声明-用户隐私保护指引小程序的基础库版本从2.32.3开始支持,所以要选这之后的版本在app.json中加上这个设置“usePrivacyCheck”:true具体步骤可以参考官方给的开发文档,里面也有官方提供的demo文件。https://developers.weixin.qq.com/miniprogram/dev/framework/user-privacy/原生小程序适配代码直接参考的官方给的demo3和demo4综合修改出的版本,通过组件的方式引用,所有相关处理逻辑全部放到了privacy组件内部,其
我正在使用MicrosoftCryptoAPI来处理SSL连接。与支持TLS1.0或更高版本的服务器通信时,一切正常,但当我尝试处理仅支持SSL3.0的服务器时InitializeSecurityContext()失败,错误代码为0x80090331(SEC_E_ALGORITHM_MISMATCH).我尝试使用作为pAuthData参数传递给AcquireCredentialsHandle()的SCHANNEL_CRED结构。特别是它有字段grbitEnabledProtocols应该控制支持的协议(protocol)集。当我设置grbitEnabledProtocols=SP_PR
最近项目中用到流媒体平台,java平台负责信令部分,c++平台负责流媒体处理,找了评分比较好的开源项目 https://gitee.com/pan648540858/wvp-GB28181-pro 流媒体服务基于c++写的 https://github.com/ZLMediaKit/ZLMediaKit说明文档:https://github.com/ZLMediaKit/ZLMediaKit/wiki/%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B说明文档:https://doc.wvp-pro.cn/#/_content/introduction/compile搭建
第二天:OSI七层模型与网络协议OSI七层模型应用层:抽象语言----编码表示层:编码---二进制会话层:提供会话号传输层:分段+端口号 两个协议TCP/UDP网络层:IP互联网协议逻辑寻址数据链路层:逻辑链路控制层LLC+介质访问控制层MAC物理层:物理硬件(集线器、中继器等只做物理加压不识别数据)上三层都是对数据进行加工处理的下四层是对数据的运输、到达对端做出工作层级是从下向上的;故数据链路层也叫做二层,网络层也叫三层OSI/RM------开放式系统互联参考模型数据链路层:逻辑链路控制层LLC:对数据惊醒校验,只保障数据完整性;同时增加FCS(校验核),校验数据完整性。会话层:提供会话号
问题简述我这里用的是FT2232HL作为USB转JTAG和串口的芯片前两天我在使用学校的FPGA(7020)板子往里面的arm核烧例程的时候发现虽然烧入成功但是找不到FPGA加载的串口(我使用的FPGA是JTAG与串口复用一个type-C),然后我打开设备管理器发现接入设备竟然没有弹出端口只弹出了通用串行总线控制器。换了一块学长用的不同型号的发现可以正常检测并弹出窗口。(ps:我这里是vivado可以识别到我的设备,可以正常下载程序,就是单纯的电脑检测不到这块板子自带的串口)我这里使用的是vivado.2018.3如果你用的是2022的版本可以直接尝试用另一种方法(不行的话可以再用我的解决方法