- 博客(52)
- 资源 (1)
- 收藏
- 关注
原创 pyqt几点总结
一、窗口运行在主线程,需要采用QTread处理复杂的逻辑,否则导致主窗口卡顿二、强度的绘图库:pyqtgraph下载pyqtgraph,会自动下载依赖库numpy、 PySidepip install --user pyqtgraph -i https://pypi.tuna.tsinghua.edu.cn/simplePyQtGraph自带一个丰富的示例模块: python -m pyqtgraph.examples 示例源码:C:\Users\Jushri_User\AppD...
2020-11-27 11:11:44
326
原创 pyinstaller安装
方法一、直接采用pip install pyinstaller,但编译时提示bootloader错误方法二、重新下载pyinstaller源码编译安装,参考: https://blog.youkuaiyun.com/m0_43432638/article/details/108581288还是不行,说是需要采用win32的,所以:方法三、python ./waf all --target-arch=32bit 再 python setup.py install编译成功,但是发现新问题:由于不想携带命令行
2020-11-27 11:06:35
890
1
原创 pyqtSignal携带参数的两种方法
一、直接再pyqtSignal中指定需要携带参数的类型即可,如str、int,或者万能类型:object二、在connet采用lambda:net方法: _xxx_signal.connect(lambda:xxx.xxx_show(recv_t.data))
2020-11-24 11:04:48
1743
原创 PyQt5 PyQt5-tools 安装
分别安装PyQt5 PyQt5-tools,网上介绍的均是通过pip直接安装,但是直接安装,由于链接的境外网站,网速较慢,安装失败可以采用清华大学镜像网站下载:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyqt5_tools同样失败,原因是由于pip默认原的网络链接较差,临时使用本镜像站来升级pip,详见:https...
2020-03-20 15:21:19
14683
原创 精简头文件
代码的反复拷贝使得头文件重复包含较多,如头文件A包含了B,B包含了C,而在一个.c中却均包含了ABC。这种情况不仅仅出现在我们常见的项目代码中,甚至在一些基础库的引用中也出现类似情况,如:情形1:在引用socket发送网络报文中,我们常常采用如下头文件引用:#include <socket.h>#include <netinet/in.h>#include <...
2020-03-06 17:16:03
277
转载 linux raw socket
问题背景:公司原来为了搜索局域网内的网络视频解码器开发了一个Decoder Finder,用的是UDP广播的方式。现在韩国的客户发现当IP地址和PC不在同一网段时,无法搜索到decoder,人家还找了一个他们的软件,暴强,就算是IP地址全是0,照搜不误。问题分析:PC端,其实也就是用winpcap,直接和网卡通信,把消息包发出来,并且在接受响应。这样数据包不经过IP和UDP协议栈,IP地址...
2019-09-11 16:53:08
927
原创 samba安装
一、查看系统类型,下载对应安装包 getcong LONG_BIT 64二、网易镜像上下载samba 64位安装包 http://mirrors.163.com/centos/6/os/x86_64/Packages/三、安装rpm包:rpm -ivh **.rpm 出现循环依赖,将所有的rpm一起安装即可 rpm -ivh **.rpm ***.rpm -...
2019-05-13 14:43:58
413
原创 根据ifreq&ioctl获取linux设备网卡相关信息
根据ifreq&ioctl获取linux设备网卡相关信息参考文档:struct ifreq学习和实例 == http://blog.youkuaiyun.com/gujintong1110/article/details/45530911
2019-05-09 09:32:52
252
原创 netlink
一、 用户空间与内核通信的几种方法:* system call* procfs(/proc文件系统)* sysctl(/proc/sys目录)* sysfs(/sys文件系统)* ioctl 系统调用* netlink套接字(RFC 3549) net/netlink目录- af_netlink.c- af_netlink.h- genetlink.c...
2019-05-09 09:14:04
2672
原创 动态路由&策略路由
Zebra ——优秀的开源 TCP/IP 路由软件: http://blog.youkuaiyun.com/dadoneo/article/details/8550279
2019-05-09 09:01:48
874
原创 动态ICIC
处于交叠区的中心UE,作为边缘UE处理,并通过上行动态ICIC技术(R8\R9)。上行动态ICIC技术是通过X2接口传送高干扰指示HII和过载指示OI信息。高干扰指示HII:指出分配给边缘用户的可能会造成较大干扰的PRB,通过资源调度避免碰撞,减少干扰。过载指示OI:OI用于指出那些已经受到较大干扰的PRB,防止其再被分配给边缘用户。OI和HII都是事件触发,触发主要基于HII门限和OI门...
2019-05-09 09:00:41
564
原创 python应用于网络通信
项目需要用到采用python实现维护测试工具,测试对象是Linux设备,需要在PC端采用python获取Linux设备相关信息一、采用udp获取普通信息udpserver = socket(AF_INET, SOCK_DGRAM)udpserver.bind(ip, port)data, client_addr = udpserver.recvfrom(BUFSIZE)二、采用t...
2019-05-08 14:54:31
619
原创 C语言编程规范----高端版
度娘的C语言编程规范很多,大多相同,近几年的工作经验,在已有基础上增加如下规范,可以使得C语言代码更加简洁、易读、高效:编程规范:1、函数入口进行参数校验,小概率事件优先检查以不影响主流程处理,防止出现多层嵌套2、变量申请统一放在函数开头3、超过5个以上条件判断,采用表驱动实现3、函数主要功能部分占函数的80%,日志、命令行记录最多占20%模块设计:1、模块设计满足高内...
2019-05-06 17:42:24
434
原创 LTE APN详解
APN即是手机上网接入点参数。简单来讲,就是不同通信公司的代码。用的都是手机流量。网速呢,2G,3G和4G之间当然会不一样。APN即“接入点名称”,无论使用联通3G还是移动2G网络,都必须通过手机APN设置,是手机上网时必须配置的参数。中国联通的2G业务WAP浏览器中使用的APN为“UNIWAP”,3G业务WAP浏览器使用的APN为“3GWAP”;中国联通的2G上公网使用的APN为“UNINE...
2019-05-06 17:10:15
16627
1
原创 select使用额外注意点
1、FDSET需要在循环内部执行,因为select每执行一次,都会清空一次fd2、关于select监控多个fd时,需要使用最大fd值变量(max_fd + 1)作为select的第一个入参参考文档:select监控多个文件描述符 https://blog.youkuaiyun.com/sinat_36184075/article/details/77170996...
2019-05-06 17:08:16
184
原创 LTE鉴权、加密、完保详解
鉴权:身份认证,LTE鉴权需要UE、核心网实现双向鉴权,任何一方失败则UE无法完成接入流程加密:防止数据被窃取,对数据流、控制面(RRC信令、NAS信令)进行加密处理完保:防止数据被篡改,黑客可能不需要获取你的数据、但是会恶意破坏你的数据,完保只会对控制面进行,因为完保是对已有数据通过完保算法生成另外一个数据,会影响通信流量,如果对数据流也进行完包,对管道带宽影响很大鉴权详细流程...
2019-05-06 16:59:39
15084
原创 32位与64位系统变量长度
getconf LONG_BIT getconf是获取当前系统配置参数信息, LONG_BIT是指long类型变量在当前系统的长度,即long类型在32位系统,64位系统上的长度是不同的,我们也可以通过这一变量长度值确定当前系统是32位还是64位。...
2019-05-06 16:47:56
848
原创 关于dhcp协议报文中的transaction ID问题
dhcp client端发送的dhcp协议报文中均携带transaction ID,dhcp server端回复client报文时,需要携带对应的transaction ID,否则将被client丢弃。
2019-04-29 10:22:09
9954
原创 onvif协议
onvif协议是视频监控领域共同制订的一套标准,以探测同一局域网内摄像头信息。onvif开源代码:#include <stdio.h>#include <stdlib.h>#include <string.h> #include <sys/socket.h>#include <netinet/in.h>#include...
2019-04-28 17:46:05
12376
原创 cmake安装
cmake 官网(https://cmake.org/download/)下载cmake安装包,有如下两种:1、手动编译、安装的2、可执行文件可执行文件安装很简单,直接下载对应脚本运行即可,如:cmake-3.6.3-Linux-i386.sh点击运行,输入“q”--->输入“y”(同意lisence)即可,安装完成后,需要设置环境变量:export PATH=$PATH:/us...
2018-10-18 14:53:51
3600
原创 MCPTT简述
MCPTT诞生于集群通信系统,可以说是将LTE技术应用于集群通信系统。集群通信系统: 为了满足用户指挥调度需求开发的,面向特定行业应用的专用无线通信系统。其特点是大量用户共享少量无线信道,具备快速的语音建立和抢占能力。 集群通信系统在政务、医疗、能源、交通、应急通信等领域有着广泛的应用。MCPTT: 运行在LTE网络上的全IP应用层服...
2018-10-15 14:39:01
10763
原创 Makefile简介
总流程:可执行文件生成过程: .c --> .o --> .exe当有多个.c时,需要进行打包处理,则: .c(多个) --> .o (多个)--> .a --> .exe详细步骤:1. 读入所有的Makefile。2. 读入被include的其它Makefile。3. 初始化文件中的变量。4. 推导隐晦规则,并分析所有规则。5. 为所有...
2018-09-03 16:12:41
326
原创 DHCP若干种request报文
DHCP request报文主要分成两大类型:类型一、收到offer报文后,发送request广播报文进一步确认,同时通知其他dhcp服务器已经收到租约,如下所示:类型二、在租约的0.5倍时间上,发送request单播报文续约,如下所示:如果此报文没有回复,则在0.875倍时间上,发生request广播续约。类型一、二有啥区别?dhcp server在接收到此两种类型的报文...
2018-05-14 19:47:19
13810
原创 DHCP Client有限状态机
问题:项目需要实现dhcp server功能,在测试时候,发现client端有线口每次重新接入时,均能正确分配到地址;而wife重新接入时,虽然dhcp server也回复了,但是client端wife无法识别,重复发了5此dhcp request报文,server回复了5次ack报文,也不能确认,直到下一次重新发起discover后,才成功。定位:wife重新接入时,由于wife重新发起的是...
2018-05-09 20:25:15
2617
1
原创 ARP协议DPI深度解析
DPI对ARP报文进行解析(也可以借鉴open dpi?),整理ARP报文结构如下:结构ether_header定义了以太网帧首部;结构arphdr定义了其后的5个字段,其信息用于在任何类型的介质上传送ARP请求和回答;ether_arp结构除了包含arphdr结构外,还包含源主机和目的主机的地址。定义以太网首部:typedef struct ehhdr{ unsig...
2018-05-07 15:08:28
1298
1
原创 windows、linux开机四大协议
1、DHCP :获取本设备IP地址,同时获取网关IP、DNS服务器IP地址2、ARP :向网关设备获取网关的MAC地址3、DNS : 向DNS服务器请求www.baidu.com的IP地址 4、HTTP : 获取并显示www.baidu.com中网页内容...
2018-05-07 14:55:31
457
原创 linux虚拟网络:ip netns
linux虚拟网络:ip netns命令可以在一台linux服务器上搭建很多虚拟空间,这些独立的空间拥有自己的网络结构 两个独立的虚拟空间可以通过桥接的方式进行通信,两个peer网卡加载到同一个桥上:配置完成后,需要打开虚拟网络空间的ip转发功能,以实现模拟路由器转发:echo 1 > /proc/sys/net/ipv4/ip_forward...
2018-05-07 14:47:20
1311
转载 Linux kernel list使用
Linux kernel中的list怎么使用: https://www.cnblogs.com/hwy89289709/p/6754300.html
2018-05-07 14:31:05
431
原创 linux网络用户态与内核态接口:ioctl、netlink
如下代码应用ioctl实现读取eth2接口的ip、mac地址:netlink同样可以,即netlink socket即可,详情见百度:
2018-05-07 14:12:50
1678
原创 日志文件大小限定
#include <stdio.h>#include <string.h>#include <stdlib.h>#include <unistd.h> //getpid#include "time.h"#include "stdarg.h"#include "syslog.h"#define LOG_FILE_NAME
2018-04-24 15:36:03
3026
原创 linux 防火墙-iptables-netfilter
iptables : 对ip层报文进行改写ebtables: 对二层报文进行改写详解(1):入门简介1、iptables(包括netfilter)组成Linux平台下的包过滤防火墙,且是免费的,可以代替昂贵的商业防火墙解决方案,完成包过滤、封包重定向、NAT等功能2、iptables主要对 5链(PREROUTING、INPUT、FORWARD、OUTPUT、POSTROUTING)、 ...
2018-04-11 11:01:01
420
原创 PDU与SDU
SDU:服务数据单元,是从高层协议来的信息单元传送到低层协议。第N层服务数据单元SDU,和上一层的协议数据单元(PDU)是一一对应的。进入每个子层未被处理的数据称为服务数据单元(SDU),经过子层处理后形成特定格式的数据被称为协议数据单元(PDU)。同时,本层形成的PDU即为下一层的SDU。根据协议数据单元的数据的不同,送到接收端的指定层。PDU(N) = SDU(N - 1) SDU(N) ...
2018-04-09 09:52:35
3792
原创 IP分片
IP分片浅析在TCP/IP分层中,数据链路层用MTU(Maximum Transmission Unit,最大传输单元)来限制所能传输的数据包大小,MTU是指一次传送的数据最大长度,不包括数据链路层数据帧的帧头,如以太网的MTU为1500字节,实际上数据帧的最大长度为1512字节,其中以太网数据帧的帧头为12字节。当发送的IP数据报的大小超过了MTU时,IP层就需要对数据进行分片,否则数据将无法发...
2017-11-03 10:57:21
669
原创 大端&小端&网络序&主机序&比特序&位域
Little endian: 将低序字节存储在起始地址 Big endian: 将高序字节存储在起始地址 例子:在内存中双字0x01020304(DWORD)的存储方式 内存地址(注:内存地址从左到右为由低到高) 4000 4001 4002 4003 LE 04 03 02 01 --- 符合人的思维,低值存放于低地址,高值存放于高
2017-10-24 10:27:24
544
原创 NAS介绍
术语: IMSI: 国际移动用户识别码(IMSI:International Mobile Subscriber Identification Number)是区别移动用户的标志,储存在SIM卡中,可用于区别移动用户的有效信息。总长度不超过 15 位,使用0~9的数字。由MCC+MNC+MSIN构成,其中: MCC:国家代号,占3位数字,中国的MCC规定为460。 ...
2017-09-27 13:54:54
8694
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人