
通信传输
bo_2018
这个作者很懒,什么都没留下…
展开
-
GPRS附着 与 PDP 上下文
GPRS无线数据传输终端利用网络实现与上位机的全双工数据通信。终端需附着GPRS网络,登陆Internet与连接其上的任意一台普通PC机建立数据链路并随时进行数据传输。欲完成这一过程必须实现GPRS的附着和PDP(PacketDataProtoco1,分组数据协议)上下文的激活。通过GPRS的附着登记用户信息,对用户进行移动性管理,激活过程用于激活IP协议,保证数据能以IP报的形式进行传送,使移动...转载 2020-04-16 10:20:15 · 411 阅读 · 0 评论 -
C++版循环缓冲
CCycleBuffer.h#ifndef __test__CCycleBuffer__#define __test__CCycleBuffer__ #include <iostream>#include <assert.h>class CCycleBuffer{public: bool isFull(); bool isEmpty();...转载 2019-12-02 17:43:49 · 603 阅读 · 0 评论 -
jrtplib介绍
程序流程发送:获得接收端的 IP 地址和端口号 创建 RTP 会话 指定 RTP 数据接收端 设置 RTP 会话 默认参数 发送流媒体数据接收:获得用户指定的端口号 创建RTP会话 设置接收模式 接受RTP数据 检索RTP数据源 获取RTP数据报 删除RTP数据报1.初始化I、在使用 JRTPLIB 进行实时流媒体数据传输之前,首先应该生成 R...转载 2019-09-27 16:16:08 · 8722 阅读 · 0 评论 -
epoll介绍及使用
一、 介绍 Epoll 是一种高效的管理socket的模型,相对于select和poll来说具有更高的效率和易用性。传统的select以及poll的效率会因为 socket数量的线形递增而导致呈二次乃至三次方的下降,而epoll的性能不会随socket数量增加而下降。标准的linux-2.4.20内核不支持epoll,需要打patch。本文主要从linux-2.4.32和linux-2.6...原创 2019-09-05 19:39:57 · 882 阅读 · 0 评论 -
DTMF
双音多频 DTMF(Dual Tone Multi Frequency),双音多频,由高频群和低频群组成,高低频群各包含4个频率。一个高频信号和一个低频信号叠加组成一个组合信号,代表一个数字。DTMF信号有16个编码。利用DTMF信令可选择呼叫相应的对讲机。在编码时将击键或数字信息转换成双音信号并发送,解码时在收到的DTMF信号中检测击键或数字信息的存在性。一个DTMF信号由两个频率的音频信号...原创 2019-08-13 18:48:34 · 3268 阅读 · 0 评论 -
RTP协议介绍
OSI七层模型OSI 中的层 功能 TCP/IP协议族应 用层文件传输,电子邮件,文件服务,虚拟终 端TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet表示层...转载 2019-07-23 11:14:01 · 848 阅读 · 0 评论 -
select,poll和epoll区别
(1)select==>时间复杂度O(n)它仅仅知道了,有I/O事件发生了,却并不知道是哪那几个流(可能有一个,多个,甚至全部),我们只能无差别轮询所有流,找出能读出数据,或者写入数据的流,对他们进行操作。所以select具有O(n)的无差别轮询复杂度,同时处理的流越多,无差别轮询时间就越长。(2)poll==>时间复杂度O(n)poll本质上和select没有区别,它将用...翻译 2019-07-31 15:48:48 · 96 阅读 · 0 评论 -
tcpdump介绍
用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。下载地址:http://www.tcpdump.org/#l...原创 2019-07-31 09:06:47 · 694 阅读 · 0 评论 -
网卡中断与CPU的绑定问题
在Linux的网络调优方面,如果你发现网络流量上不去,那么有一个方面需要去查一下:网卡处理网络请求的中断是否被绑定到单个CPU(或者说跟处理其它中断的是同一个CPU)。先说一下背景网卡与操作系统的交互一般有两种方式,一种是中断(IRQ,网卡在收到了网络信号之后,主动发送中断到CPU,而CPU将会立即停下手边的活以便对这个中断信号进行分析), 另一种叫DMA(Direct Memory...转载 2019-07-29 10:27:36 · 654 阅读 · 0 评论 -
EventBus报错
报错的内容and its super classes have no public methods with the @Subscribe annotation这句话大概说的意思没有找到公有含有Subscribe注解的方法,也就是说没有找到在EventBus注册Activity中含有Subscribe注解的方法。1. 添加@Subscribe(threadMode = ThreadMode.MA...原创 2019-02-22 15:25:59 · 1077 阅读 · 0 评论 -
EventBus介绍及使用
前言EventBus是一种用于Android的发布/订阅事件总线。它有很多优点:简化应用组件间的通信;解耦事件的发送者和接收者;避免复杂和容易出错的依赖和生命周期的问题;很快,专门为高性能优化过等等。基础知识EventBus使用了发布者/订阅者模式。发布者通过EventBus发布事件,订阅者通过EventBus订阅事件。当发布者发布事件时,订阅该事件的订阅者的事件处理方法将被调...转载 2018-11-15 10:48:40 · 168 阅读 · 0 评论 -
rxAndroid介绍及使用实例
一、概念EventBus有个缺点就是凡是使用了EventBus的类都不能进行混淆了,否则Evnetbus就找不到OnEvent方法了。RxJava要比EventBus的应用更广泛,EventBus仅仅是作为一种消息的传递工具,但是RxJava里面几乎可以做任何事情。如果是Android开发的话,可以使用RxAndroid,这是对RxJava的一个扩展,结合sqare公司的retrofit...原创 2018-11-16 13:48:23 · 782 阅读 · 0 评论 -
Schedulers线程类型
在rxJava/rxAndroid的使用中我们都会遇到线程控制问题,那么我们来说说它的的几种使用方式。Schedulers.immediate() 默认的scheduler,不指定线程,直接在当前线程运行。 Schedulers.newThread() 启动新的线程,并在新的线程执行操作 Schedulers.io() I/O操作(读写文件,读写数据库,网络请求等)所使用的schedu...转载 2018-11-16 10:34:21 · 936 阅读 · 0 评论