本文分享自华为云社区《提升网络协议服务器的定位能力》,作者:张俭。近期,我再次涉足于协议服务器相关的工作领域,致力于定位并解决各种问题。简单总结一些心得给大家。如果想要定位出协议服务器的问题,那么这些能力可能至关重要。注:我这里比较偏向协议本身的问题,不涉及一些通用的网络问题(如网络吞吐量上不去、响应时间长等等)对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...注意:在抓包观察响应数据的时候,可能会看到压缩之后的数据,形如:网络传输中“带宽”是一个稀缺资源,为了传输效率更高往往会对数据
准备工作小程序后台设置用户隐私保护指引,需要等待审核通过:设置-基本设置-服务内容声明-用户隐私保护指引小程序的基础库版本从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(校验核),校验数据完整性。会话层:提供会话号
一、实验目的利用Wireshark软件抓包分析IP分片,了解IP分片的工作原理。二、实验过程1、网络拓扑设备IP地址设备接口MTUAR1172.30.132.164Ethernet0/0/0700AR2172.30.132.165Ethernet0/0/012002、实验过程(1)在eNSP中按网络拓扑搭建网络,并配置好IP地址、子网掩码等。(2)分别修改AR1和AR2各自E0/0/0口的MTU值为700和1200,并且查看修改后的效果。(3)在AR1的E0/0/0口启动wireshark,抓取数据包。wireshark启动后,在AR1路由器E0/0/0口运行ping命令3、结果分析
看到一个文章[Go]不到100行代码实现一个支持CONNECT动词的HTTP服务器原理图如下:这里在NET8.0中实现反向代理服务器部分新建MiniApi项目编辑Program.cs文件。varbuilder=WebApplication.CreateSlimBuilder(args);varapp=builder.Build();//将HTTP请求通过协议升级机制转为远程TCP请求(WebSocket分支,Nginx支持)app.Map("/http2tcp",async(context)=>{varupgradeFeature=context.Features.GetMicrosoft.A