• 最新文章

coturn安装

安装 yum install coturn -y 配置 vim /etc/coturn/turnserver.conf listening-port=3478 #指定 coturn 监听的端口。默认的 TURN 协议端口是 3478,用于接收 TURN 客户端的连接请求。 tls-listening-port=5349 #指定用于 TLS (传输层安全协议) 加密连接的监听端口。TURN 支持通过

STUN协议

NAT墙 完全锥形 IP限制型锥形 端口限制型锥形 对称型 NAT穿透 STUN协议简介 STUN(Session Traversal Utilities for NAT)是一个用于帮助客户端发现其所在NAT之后的公网IP地址和端口号。通信的双方都能知道所在的公网IP,并且能够让公网的NAT帮助转发,从而实现NAT穿透。STUN协议广泛应用在WebRTC实时通信系统中。STUN交互过程主要有以下几

libpeer分析

关键数据结构 PeerConfiguration typedef struct PeerConfiguration { IceServer ice_servers; MediaCodec audio_codec; MediaCodec video_codec; DataChannelType datachannel; void (*onaudiotrack)(uint8_t* data, s

乌龟图分析法

结构形似乌龟,身体是主体,头尾脚代表着互相关联的六个要素。 身体:代表过程、活动。 头部:达标input,即过程的要求,是分析的关键。 左前脚:代表Procedure,指的操作的方法,怎么做? 右前脚:达标Resources,是做成这件事需要的非人工资源。 右后脚:代表who,谁负责这个事情,对人有什么要求? 左后脚:代表KPI,衡量这个过程的指标,有效性。 尾部:代表Output,即过程产生的结

看wireshark报文技巧

TCP握手与挥手 握手看SYNC与ACK 第一次握手标志, 第二次握手看标志,第三次ACK。 挥手看FIN 报文交互 正常交互 先看len,当长度为0,这个包是ack包,长度不为0表示是发送的数据包。 再看ack,表示该值以前的序号都收到了。ack是对端上一个报文的seq+len,同时也是期望对端下一个发包。 警告交互 TCP Dup ACK 重传ACK

MQTT协议分析

什么是MQTT MQTT是基于TCP/IP网络协议栈构建的异步通信消息协议,基于发布-订阅模式进行传输。实现MQTT协议需要客户端和服务器端通讯完成,在通讯过程中, MQTT协议中有三种身份: 发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。 其中消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者,客户端之间的通信完全是空间解耦的。

SSL/TLS协议分析

什么是TLS 1994: SSL 1.0 NetScape公司提出SSL第一版,未公开。 1995: SLL 2.0 公开发布了第二版,与2011年弃用。 1996: SSL 3.0 第三版得到大规模应,于2015年弃用。 1999: TLS 1.0 RFC2246,被IETF纳入标准化,没太大改动,改名TLS。 2006: TLS 1.1 RFC4346,修复bug,增加参数。 2008: TL

道德经-第六十四章

原文 为之于未有,治之于未乱。合抱之木,生于毫末;九层之台,起于累土;千里之行,始于足下。 译文 做事情要做在没有发生问题之前,治理变乱在没有酝酿成混乱之前。合抱粗的大树,产生于小的萌芽;巍峨高大的土台,起始于对接的泥土;千里漫长的远行,开始于脚底下的第一步。 见解 提前部署,行动,耐心,耐性,积少成多。

道德经-第九章

原文 持而盈之,不如其己;揣而锐之,不可常保。金玉满堂,莫之能守;富贵而骄,自遗其咎。功成身退,天之道。 译文 凡是处处要求圆满,不如趁早歇手不干;持才傲物锋芒毕露,必然难以保持长久;黄金美玉堆满屋子,到头来谁也无法守藏;因财产丰厚、地位显赫而骄傲自大,必然会留下祸患,埋下灾难。功成名就,立即谦让告退,这样才符合天道的规律。 见解 物极必反,知足常乐。

道德经-第八章

原文 上善若水,水善利万物而不争,处众人之所恶,故几于道。居善地,心善渊,与善仁,言善信,正善治,事善能,动善时。夫唯不争,故无尤。 译文 最崇高的德行就像水一样。水善于帮助万物生长而不同万物相争,它总是停留在普通人不喜欢的地方,所以最接近于“道”。上善的人,进退出处,就像水那样安于卑湿;立志存心,就像水那样博大深远;交朋结友,就像水那样仁爱相亲;说话发言,就像水那样诚实守信;在为政上,就像水那样

Linux系统编译生成镜像流程

编译内核 清除内核 命令 ${MAKE} O= mrproper 示例 make CROSS_COMPILE=riscv32-unknown-linux- ARCH=riscv -j16 O=kernel/build KERNEL_SRC=kernel/linux-5.4 INSTALL_MOD_PATH=kernel/staging O= mrproper 配置defconfig 命令 defc

I2C协议总结

简介 以下是 I2C 总线的一些特性: 只需要两条线;串行数据线(SDA)和串行时钟线(SCL)。 连接到总线的每个设备都可以通过唯一的地址进行软件寻址简单的控制器/目标关系始终存在;控制器可以作为控制器发射器或控制器接收器。 它是真正的多控制器总线,包括冲突检测和仲裁,以防止如果两个或多个控制器同时发起数据传输,则会导致数据损坏。 串行面向8位的双向数据传输速度可达 100 kbit/s 标准模

系统死机排查思路

反汇编现场寄存器 kasan watchpoint: 针对固定位置 栈溢出检测: cache:检查地址对齐、长度对齐(少/多刷,少/多无效)。 现象一般是watchpoint抓不到,软件复位无效,如USB驱动与cpu会同时操作内存。 硬件: 排除个体差异,存在电压、电流等不稳定,或者芯片不良等异常或内存、flash异常。

内存地址对齐

内存地址对齐是在内存中的数据(具体为变量的地址、内存块的地址)按照指定地址长度对齐,包含了基本的变量数据对齐和结构体数据对齐。 为什么需要内存对齐? 可以提高CPU和内存交互的效率,比如一个32位的系统,CPU读取内存,硬件设计上只支持4字节或4字节的倍数对齐进行地址访问,CPU在每次访问内存时,一个周期可以访问4字节,如果要访问的数据是4字节对齐的地址,CPU一次就可以把数据访问完毕;如果访问的