自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 windows系统下 移除Beyond Compare比较工具的30天限制问题

用Step1的SID替换,然后运行。

2024-07-13 10:26:11 277 1

原创 关于GTPv1协议解析

概述:***(简单说一下,不重点讲述啦)GPRS 隧道协议 (GTP) 是一种隧道协议,用于 GPRS、UMTS、LTE 和 5G 网络。它分为两个独立的协议:GTP-C 和 GTP-U。GTP-C用于GPRS核心网络中,用于不同网络节点之间的信令。GTP-U 用于承载用户数据。GTP 消息头GTP-C和GTP-U协议使用的GTP头是变长度的。GTP头的最小长度是8个字节。有三个标志用来指示三个可选字段是否使用:PN标志,S标志和E标志。PN标志用于指示是否使用N-PDU可选字段;S标志用.

2022-05-23 14:28:37 3223

原创 make: *** /lib/modules/3.10.0-1160.el7.x86_64/build: No such file or directory. Stop.

这个问题应该是系统没有安装内核开发包,[root@localhost /]# cd /lib/modules/3.10.0-1160.el7.x86_64/[root@localhost 3.10.0-1160.el7.x86_64]# lltotal 3308lrwxrwxrwx. 1 root root 39 Jan 1 09:15 build -> /usr/src/kernels/3.10.0-1160.el7.x86_64drwxr-xr-x. 3 root root

2021-09-17 11:17:15 10334 3

原创 普罗米修斯(Prometheus)与SNMP

最近又在研究普罗米修斯,一种开源的监控系统。打算与SNMP结合使用关于普罗米修斯的介绍,网上有很多https://www.cnblogs.com/cuiyubo/p/10981840.html由于操作系统本身并不直接支持Prometheus,同时用户也无法通过直接从操作系统层面上提供对Prometheus的支持。因此,用户只能通过独立运行一个程序的方式,通过操作系统提供的相关接口,将系统的运行状态数据转换为可供Prometheus读取的监控数据。 除了Node Exporter以外,比如MySQL E

2021-02-24 17:26:28 9638

原创 TCP 协议相关知识点

**TCP 的特性**TCP 提供一种面向连接的、可靠的字节流服务TCP 使用校验和,确认和重传机制来保证可靠传输TCP 给数据分节进行排序,并使用累积确认保证数据的顺序不变和非重复TCP 使用滑动窗口机制来实现流量控制,通过动态改变窗口的大小进行拥塞控制注意:TCP 并不能保证数据一定会被对方接收到,因为这是不可能的。TCP 能够做到的是,如果有可能,就把数据递送到接收方,否则就(通过放弃重传并且中断连接这一手段)通知用户。因此准确说 TCP 也不是 100% 可靠的协议,它所能提供的是数据

2020-12-01 11:31:23 476

原创 简单的C 日志打印函数

```cpp#include <unistd.h>#include <sys/types.h>#include "ntylog.h"FILE *nty_err_log = NULL;#define NCPP_LOG_FILE "/home/guanchuang/nty.log"#define NTY_LOG_SIZE 1*1024*1024*1024struct _log_nty nty_logs = { .level = NTY_LOG_DEBUG,};.

2020-11-25 15:30:22 706

原创 关于HTTP2.0 gzip和br解压缩

关于gzip格式解码使用zlib库解压GZIP格式数据,相关函数inflateInit2(),inflate(),inflateEnd().zlib库安装这个比较简单不做过多描述代码示例直接加入#include <zlib.h>static int vidpeek_uncompressGzip(unsigned char* pSrc, unsigned int srcSize,char*pOutDest, unsigned int* pOutBufSize){ int re

2020-11-24 15:58:57 4181 5

原创 Linux CentOS 7 安装samba

Samba简介Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。S

2020-11-19 14:55:30 1174 1

原创 HTTP/2协议特性

HTTP/2 是 HTTP 协议自 1999 年 HTTP 1.1 发布后的首个更新,主要基于 SPDY 协议。由互联网工程任务组(IETF)的 Hypertext Transfer Protocol Bis(httpbis)工作小组进行开发。该组织于2014年12月将HTTP/2标准提议递交至IESG进行讨论,于2015年2月17日被批准。HTTP/2标准于2015年5月以RFC 7540正式发表。概述和http1兼容。HTTP/2 没有改动 HTTP 的应用语义。 HTTP 方法、状态代码、URI

2020-10-28 17:35:01 378

原创 关于SNMP远程管理端连接不上设备代理端问题

关于SNMP远程管理端连接不上设备代理端问题,我遇到过两种情况,这里做一下记录第一种情况是snmpd.conf问题注意:关于外部权限设置两种选择:rwcommunity public localhost //限制为本机访问rwcommunity public default //默认的 都可行的第二种情况就是防火墙问题iptables 是 Linux 机器上管理防火墙规则的工具。firewalld 也是 Linux 机器上管理防火墙规则的工具。看你设备是那种防火墙1、firew

2020-09-11 16:57:15 2416

原创 如果linux下找不到动态链接库 .so文件

如果使用自己手动生成的动态链接库.so文件,但是这个.so文件,没有加入库文件搜索路劲中,程序运行时可能会出现找不到动态链接库的情形。error while loading shared libraries: libnetsnmpmibs.so.30: cannot open shared object file: No such file or directory解决这个问题:(1)在系统中查找这个文件(当然要保证系统中已经有这个.so文件,只是查找路径没有设置正确而已):  sudo find

2020-09-11 14:48:31 624

原创 SNMPV3 配置文件的编写

上篇我们讲了V2版本的配置文件的编写,这篇将V3版本的配置文件的编写配置V3的 snmpd.conf通过将/usr/local/bin下的net-snmp-create-v3-user脚本。然后执行下面指令创建v3用户,并生成配置文件。sudo /usr/local/bin/net-snmp-create-v3-user -A auth123456 -a MD5 -X priv123456 -x DES fxw然后需要在snmpd.conf文件中加入master agentx 来启动Age

2020-09-10 18:23:57 1467

原创 SNMPv2 配置文件的编写

上篇我们讲了SNMP的部署和安装,这篇将V2版本的配置文件的编写,因为启动snmpd需要配置文件。找到SNMP源码目录(net-snmp-5.7.2)下EXAMPLE.conf文件,如下图所示:复制EXAMPLE.conf文件到/usr/local/share/snmp/目录,并重命名为snmpd.conf:"cp EXAMPLE.conf /usr/local/share/snmp/snmpd.conf "    使用vim编辑器打开snmpd.conf文件:"vim /usr/local/sh

2020-09-10 18:17:32 1710

原创 SNMP在Linux服务器上的安装和卸载

一、安装SNMP1.1、下载Net-SNMP的源代码选择一个SNMP版本, 5.7.2,下载地址如下:https://sourceforge.net/projects/net-snmp/files/net-snmp/,如下图所示:1.2、把压缩包传输到远程的Linux服务器  把压缩包传输到远程的Linux服务器中1.3、对源代码包进行解压缩  使用命令"net-snmp-5.7.2.tar.gz"对下载的源代码包进行解压缩,解压成功后得到一个net-snmp-5.7.2文件夹.1.4、

2020-09-10 18:06:18 4278

原创 SNMP TRAP实战

一、什么是SNMPTRAPSNMP trap(SNMP 陷阱):某种入口,到达该入口会使SNMP被管设备主动通知SNMP管理器,而不是等待SNMP管理器的再次轮询。在网管系统中,被管理设备中的代理可以在任何时候向网络管理工作站报告错误情况,例如预制定阈值越界程度等等。代理并不需要等到管理工作站为获得这些错误情况而轮询他的时候才会报告。正如人们用中断通知 CPU 数据的到达,而不是让 CPU 进行轮询一样。Trap 通知是更加合理的选择。用一句话来说的话,SNMP Trap 就是被管理设备主动发送消息给

2020-09-07 16:42:44 5270 1

原创 NET-SNMP学习 Table对象 (表格代码框架iterate)

SNMP Table是对象的有序集合,包含若干行。为什么SNMP中需要用表格呢,原因是有些数据的组织用表格来表达更方便,多个对象的组合才能完整描述一条信息。表格代码框架概述:表格框架的配置文件根据表格数据是否存在于Net-SNMP的内核中分为两大类:一类是表格数据存放于其内部。这类框架代码中将所有的表格信息和数据都注册到系统中,同时生成单个处理句柄,在代理内核完成数据的GET/SET等操作。当对表格中某列有特殊的处理需求时,才自定义额外的处理句柄。这类框架配置文件有,mib2c.table_dat

2020-09-07 16:41:06 2777

原创 SNMP的MIB文件语法

MIB文件就是一个规范的ASN.1的模块,也可以称为MIB模块。MIB 结构:模块声明部分:所有的MIB模块都需要使用 DEFINITIONS 关键字定义模块,以END标识结束导入/导出部分:也就是IMPORT/EXPORT,它一般紧跟在模块声明后,该部分主要声明导入其他模块,尤其是标准模块中定义的数据类型,宏等。只有导入相关数据类型,才可以在本模块中使用。利用IMPORTS标识,所有的模块引用使用FROM关键字说明其出处,引用使用分号(;)结束IMPORTS Unsigned3

2020-08-24 15:50:42 5221

原创 DPDK中ACL(Access Control List)的学习(基于5元组增加MAC)

DPDK ACL源网页ACL原理:DPDK中的ACL(Access Control List)模块提供了数据包分类功能,Packet Classification and Access Control中所述:The DPDK provides an Access Control library that gives the ability to classify an input packet based on a set of classification rules.The ACL librar

2020-07-31 11:01:03 4370

原创 DPDK 命令行

一:利用DPDK,给程序添加命令行代码,添加一个命令由四部分组成:1. 命令行初始化2. 命令行解析3. 命令行参数的数据结构4. 命令行的功能实现函数源码 dpdk-18.08/examples/cmdline 中提供了一个完整的 Demo 可以供参考一些结构体和变量 需要详细的可以看 源码Demo可以 在主lcore上从main调用,启动命令行的线程/* 启动命令行线程 */if (rte_ctrl_thread_create(&telnet_thread, "sf_cmdli

2020-07-02 10:54:24 4226

原创 DPDK学习文档(逐步更新)

一、 DPDK的概念DPDK(Data Plane Development Kit)数据平面开发套件;Intel 处理器架构下用户空间高效的数据包处理提供了库函数和驱动的支持,它不同于 Linux 系统以通用性设计为目的,而是专注于网络应用中数据包的高性能处理,DPDK的主要目标是为数据平面应用程序中的快速数据包处理提供一个简单,完整的框架。二、 DPDK的优点与缺点传统网络模块结构和DPDK中的网络结构做对比轮询模式取代中断,减少了内存拷贝次数,消除了IO吞吐瓶颈;避免了内核态和用户态的报文拷

2020-06-29 10:44:19 1848

原创 IPV4报文格式

版本(Version)版本字段指定了IP数据报中使用的IP协议版本,占四位。如过协议是IPV4,则值为0100。头部长度(Header Length)头部长度字段指示IP数据报头部的总长度,IP数据报头部的总长度以4字节为单位,该字段占4位。当报头中无选项字段时,报头的总长度为5,也就是5×4=20字节(此时,报头长度的值为0101)。这就是说IP数据报头部固定部分长度为20字节。当IP头部长度为1111时,头部的固定长度为15×4=60字节。但报头长度必须是32位(四字节)的整数倍,如果不是,需要.

2020-06-12 17:32:06 1366

原创 GRE协议

GRE简介通用路由封装协议GRE(Generic Routing Encapsulation), 它实际上是一种封装协议,提供了将一种协议的报文封装在另一种协议报文中的机制。使报文能够在异种网 络中传输,异种报文传输的通道称为 tunnel (隧道)。GRE采用了Tunnel(隧道)技术,是VPN(Virtual Private Network)的第三层隧道协议。对某些网络层协议(如IPX、ATM、IPv6、AppleTalk等)的数据报文进行封装,使报文可以通过GRE隧道透明的传输,解决异种网络的传

2020-05-28 11:21:15 4172

原创 IPv6扩展头部

扩展头部在IPv6中,那些由IPv4选项提供的特殊功能,通过在IPv6头部之后增加扩展头部实现。路由、时间戳、分片和超大分组等功能都在IPv6扩展头部中实现。基于这种设计,IPv6头部固定为40字节,不再处理IP分段的相关信息,去掉了检验和字段等等,扩展头在IPV6中是可选的,一个IPV6包中可以包含0个或多个扩展头,扩展头紧随IPV6基本头后面,扩展头部和更高层协议(例如TCP/UDP) 头部与IPv6头部链接起来,形成级联的头部。如下图:扩展头算作IPV6净荷的一部分,计算在IPV6基本头“有

2020-05-26 15:47:31 11140

原创 IPV6报头结构

IPV6报头结构** 字段作用版本(Version)版本字段用来表示IP版本,占4位,对应值为6(0110)。通信分类(Traffic Class)通信分类字段用来标识对应IPv6的通信流类别,或者说是优先级别,占8位,类似于IPv4中的ToS(服务类型)字段。流标签(Flow Label)流标签字段时IPv6数据报中新增的一个字段,占20位,可用来标记报文的数据流类型,以便在网络层区分不同的报文。流标签字段有源节点分配,通过流标签、源地址、目的地址三元组方式就可以唯一标识一条通信流,而不用

2020-05-26 13:50:25 5762

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除