自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(385)
  • 资源 (1)
  • 收藏
  • 关注

原创 关于SIP防火墙穿越的汇总

术语和基础知识防火墙  一个防火墙限制私人内网和公众因特网之间的通讯,典型地防火墙就是丢弃那些它认为未经许可的数据包。在数据包穿越一个防火墙时,它检查但是不修改包里的 IP地址和TCP/ UDP 端口信息。网络地址转换(NAT)  当数据包穿过NAT时,NAT不仅检查同时也修改数据的包头信息,并且允许更多的在NAT后的主机分享少数公网IP地址(通常只有1个)。NAT的类型和说明NAT通常有2种

2009-03-16 21:25:00 4431

转载 sip中的subscribe和notify扩展应用技术

摘要:会话启动协议研究工作组提出3种协议功能扩展方式:方法扩展、头部扩展和消息体扩展。文章深入探讨了包含这3种扩展方法的事件通告机制,给出了基于这一机制的自动回叫业务实例,并讨论了该机制的安全性。 关键词:会话启动协议;事件通告机制;IP通信网协议;增值业务 Abstract:IETFSIPPING (Session Initiation Protocol Investigation) wor

2009-03-07 10:29:00 11647

转载 SIP Using SDP with Offer/Answer Model

根据RFC3261-13.2.1所述,SIP使用的Offer/Answer模型是建立在对话环境下的。RFC中还特意对Offer/Answer交互有限制:1.        初始Offer必须在INVITE消息或者第一个可靠的非失败型响应中。注:当时RFC3261中可靠效应只有2**,接下来将讲到1**(除100外)也可为可靠性效应。2.        如果初始Off

2009-03-04 16:17:00 2965 1

转载 Linux 共享库:尽量避免 LD_LIBRARY_PATH

Linux 运行的时候,是如何管理共享库(*.so)的?在 Linux 下面,共享库的寻找和加载是由 /lib/ld.so 实现的。 ld.so 在标准路经(/lib, /usr/lib) 中寻找应用程序用到的共享库。但是,如果需要用到的共享库在非标准路经,ld.so 怎么找到它呢?目前,Linux 通用的做法是将非标准路经加入 /etc/ld.so.conf,然后运行 ldconfig 生成 /

2009-03-04 14:56:00 2260 1

转载 配置OpenLDAP使用TLS通讯

作者:马路遥  缺省的情况下,OpenLDAP 服务器和客户端之间使用明文通讯,这在一定条件下是不安全的,OpenLDAP 支持TLS加密。这需要制作证书和修改OpenLDAP的配置文件。制作证书的步骤如下:进入/usr/share/ssl/misc 目录,如果此目录下已经存在demoCA 目录,则应该先将demoCA目录删除。执行下列命令: ./CA -new

2009-03-04 10:41:00 2405

转载 The Session Initiation Protocol (SIP) "Join" Header

The Session Initiation Protocol (SIP) "Join" HeaderStatus of this Memo   This document specifies an Internet standards track protocol for the   Internet community, and requests discussion and suggesti

2009-03-02 22:32:00 1515

转载 gmake与make的区别

一种说法:gmake是GNU Make的缩写。Linux系统环境下的make就是GNU Make,之所以有gmake,是因为在别的平台上,make一般被占用,GNU make只好叫gmake了。比如在安装二进制文件进行编译时要使用make命令,但如果在Solaris或其他非GNU系统中运行,必须使用GNU make,而不是使用系统自带的make版本,这时要用gmake代

2009-02-28 15:04:00 5856 1

转载 CIF,4CIF,QCIF,D1

QCIF全称Quarter common intermediate format。QCIF是常用的标准化图像格式。在H.323协议簇中,规定了视频采集设备的标准采集分辨率。QCIF = 176×144像素。  CIF是常用的标准化图像格式(Common Intermediate Format)。在H.323协议簇中,规定了视频采集设备的标准采集分辨率。CIF = 352×288像素CIF格式具

2008-12-09 22:45:00 1230

原创 VOIP Bandwidth consumption naturally depends on thecodecused

VOIP Bandwidth consumption naturally depends on thecodecused.  VOIP消耗的带宽一般取决于所使用的语音编码.When calculating bandwidth, one cant assume that every channel is used all the time. Normal conversation

2008-12-08 22:58:00 1106

原创 voip常用编码带宽计算

voip常用编码带宽计算VOIP计算方法如下,和哪个厂家的没有什么关系:带宽=包长度×每秒包数=包长度×(1/打包周期)=(Ethernet头+IP头+UDP头+RTP头+有效载荷)×(1/打包周期)=(208bit +160bit+64bit+96bit +有效载荷)×(1/打包周期)=(528bit+(打包周期(秒)×每秒的比特数))×(1/打包周期)=( 528

2008-12-08 22:43:00 1466 1

原创 MPEG2、H.263、H.264协议效率对比

1.1        MPEG2、H.263、H.264协议效率对比ITUT中定义的双向视频通信协议族包括:H.320、H.323,这两个协议族中,包含了很多子协议,例如音频编码协议、视频编码协议等,其中视频编码包括:H.261、H.263、H.264几种主要协议,其中H.261、H.264协议已经比较成熟,技术市场上所有的产品都支持,H.264协议是2003年发布的新的编码协议,相对于H.2

2008-12-08 22:29:00 2604 1

转载 C中的预编译宏定义

在将一个C源程序转换为可执行程序的过程中, 编译预处理是最初的步骤. 这一步骤是由预处理器(preprocessor)来完成的. 在源流程序被编译器处理之前, 预处理器首先对源程序中的"宏(macro)"进行处理. C初学者可能对预处理器没什么概念, 这是情有可原的: 一般的C编译器都将预处理, 汇编, 编译, 连接过程集成到一起了. 编译预处理往往在后台运行. 在有的C编译器中, 这些过程统统由

2008-12-04 22:59:00 2228

原创 "无法找到“XXX.exe”的调试信息,或者调试信息不匹配。未使用调试信息生成二进制文件"的解决方法

Debug模式,运行时完全正常,但是一调试就出现对话框,显示出错信息: “无法找到“XXX.exe”的调试信息,或者调试信息不匹配。未使用调试信息生成二进制文件。” VC项目是空项目。发现其他的项目都可以调试,就“空项目”不行。解决方法:首先打开菜单 项目->项目属性页 1。选择 配置属性->链接器->调试->生成调试信息 改为 是 2。选择 配置属性->C/C++ ->常规->调试信息格

2008-12-04 22:41:00 5860 3

转载 定义一个class而没有明确定义构造函数的时候,编译器会自动假设两个重载的构造函数

实际上,当我们定义一个class而没有明确定义构造函数的时候,编译器会自动假设两个重载的构造函数 (默认构造函数"default constructor" 和复制构造函数"copy constructor")。例如,对以下class: class CExample { public: int a,b,c; void multiply (int n, int

2008-12-04 22:02:00 1453

原创 SIZEOF宏,弥补sizeof不足

对PODstruct Data{    int a;    int b[32];    char c[128];};C/C++不能够支持如下的语法:sizeof(Data::a); sizeof(Data::b); sizeof(Data::c[0]), sizeof必须要有存在的对象,才可以进行操作,这个不好仿照offsetof宏,定义一个SIZEOF宏:#def

2008-12-04 11:26:00 1284 1

转载 C++ 文档以及 Microsoft .NET 框架中的“POD 类型”。

你可以将 POD 类型看作是一种来自外太空的用绿色保护层包装的数据类型,POD 意为“Plain Old Data”(译者:如果一定要译成中文,那就叫“彻头彻尾的老数据”怎么样!)这就是 POD 类型的含义。其确切定义相当粗糙(参见 C++ ISO 标准),其基本意思是 POD 类型包含与 C 兼容的原始数据。例如,结构和整型是 POD 类型,但带有构造函数或虚拟函数的类则不是。 POD 类型没有

2008-12-04 11:21:00 684

转载 多层多数据库模式开发的实验(二)实体

    实体类是对象实体在系统中的表示。它贯穿于整个架构,负担着在各层次及模块间传递数据的职责。很多情况下,实体类和数据库中的表(这里指实体表,不包括表示对应的关系表)是一一对应的。但这并不是一个限制,在复杂的数据库设计中,有可能出现一个实体类对应多个表,或者交叉对应的情况。在本实验中,实体类和表是一一对应的,并且实体类中的属性和表中的字段也是对应的。用户对象User实体CodeC

2008-12-03 22:55:00 900

转载 多层多数据库模式开发的实验(一)框架

  浏览了博客园的许多三层/多层设计文章,花了几天时间,自己动手写了个代码来实验这样设计的优缺点。希望在这个实验系列的过程中,能和朋友们一起学习,一起进步。    本文章系列是基于VS2008框架平台进行代码编写的,数据库会用到SQLServer2005 Express和Access2003。    设计的分层架构,层与层之间应该是松散耦合的。之所以这样做,是为了实现层与层之间的“可替换”

2008-12-03 22:51:00 774

转载 权限架构设计

权限架构设计一、设计说明由于现在系统的设计具有很多不可知的因素,可能存在未来的扩展,故此,在设计本权限架构时,尽可能的顾及到了未来的系统扩充和可操作性、可维护性。把此权限架构作为一个独立的模块进行开发,方便未来的其他系统应用。 设计说明:本架构采用树型权限模型处理,所有节点,都可以作为权限的实体存在。如:         |--权限A         |----

2008-12-03 22:41:00 1987

转载 什么才是多线程安全的

  对于多线程编程,很多人概念不清,写代码的时候要么是处处加锁,影响性能不说,还容易莫名其妙的死锁,还有人对多线程敬而远之。所以学习多线程编程最重要的不是学习API,而是理解什么才是多线程安全的代码从例子说起#include windows.h>#include process.h>long global1 = 0;volatile long global2 = 0;class MyCla

2008-11-18 22:51:00 1636 1

转载 vim安装使用以及资料和文档收集

 vim编译命令./configure --enable-multibyte --enable-cscope--enable-multibyte(vim可以使用多语言配置)--enable-cscope(代替SourceInsight,SourceInsight则是一款非常强劲的代码阅读工具)  vim Help文件(中文): http://vimcdoc.source

2008-11-18 22:15:00 745

转载 linux内核裁剪的具体过程和方法

在menuconfig中配置:详细介绍内核配置选项及删改情况第一部分:全部删除Code maturity level options ---> 代码成熟等级选项[]Prompt for development and/or incomplete code/drivers 默认情况下是选择的,这将会在设置界面中显示还在开发或者还没有完成的代码与驱动.不选。第二部分 :除以下选项,其它全部删除Ge

2008-11-18 21:55:00 830

转载 linux下串口编程的个人心得

我刚刚完成了一个串口的项目,有一点收获,就说说着段时间的体会吧!一开始在网上找资料,最多是《Linux Serial HOWTO 中譯版》,浏览地址:http://linux.cis.nctu.edu.tw/chinese/how-to/Serial-HOWTO.html。以及众多这个版本的摘选,内容是大同小异的。后来发现,其实串口编程的实质就是多串口属性的设置。而属性也就下面这么几个:c

2008-11-18 21:39:00 830

转载 _beginthread和_beginthreadex的区别

 首先我们看看这两个函数都干了什么uintptr_r __cdecl _beginthreadex(...){    //为即将创建的线程分配一个数据结构_ptiddata ptd(per-thread data)    //初始化这个数据结构,其中ptd->_thandle = (uintptr_t)(-1)    //如果初始化失败,返回(uintptr_t)(0) [

2008-11-08 14:39:00 5472

转载 linux配置时间服务器(ntp)

    <!--google_ad_client = "pub-3373391245880993";google_ad_width = 160;google_ad_height = 600;google_ad_format = "160x600_as";google_ad_type = "text";google_ad_cha

2008-09-09 23:20:00 1857

转载 什么是呼叫中心的统一通信UC

截止目前,呼叫中心和统一通信的技术均取得长足发展,这两项技术均为企业及用户带来了巨大的收益。根据Radicati集团的估计,到2008年年底,全球统一通信市场的总价值将达到105亿美元。  目前,微软Office Communications Server图谋统一通信霸主,IBM Lotus Sametime 7.5命名为即时协作通信平台,实际上就是“统一通信”。CISCO、ALCATE、西门

2008-09-09 23:11:00 1603

转载 NAT、防火墙的原理区别和分类

1、NAT        NAT是Net Address Translation 的缩写,从名字也可以看出,它是负责网络地址转换的一个协议。通俗的说,它负责把私网内的的IP和端口转换成公网的IP和端口,也即使我们通常所说的IP地址影射。例如:公司内一般有一个私网,假设为10.1.1.1网段。公司通过一个公网服务器(机器A)接入Internet,此服务器内网IP为10.1.1.1,外网为220.

2008-09-01 22:59:00 1463 1

转载 浅析IP多媒体子系统中QoS资源预留的实现

浅析IP多媒体子系统中QoS资源预留的实现 (2006-07-13 08:37:27)□  中国电信股份有限公司上海研究院  王颖  凌玉萍IP多媒体子系统(IMS)是提供实时和非实时的IP多媒体业务的通用体系结构,由于不限定下层接入技术等特点,它在固定、移动网络融合的过程中受到广泛  关注。为了保证移动域IMS的服务质量(QoS),RFC3312定义了在SIP会话建立过程中进行QoS资源预留的机

2008-08-27 22:43:00 1105

转载 shell的基本概念

shell的基本概念2007-04-30 11:03            Shell就像一个壳层,这个壳层介于用户和操作系统之间,负责将用户的命令解释为操作系统可以接收的低级语言,并将操作系统响应的信息以用户可以了解的方式来显示。            从用户登陆到注销期间,用户输入的每个命令都会经过解译及执行,其负责机制就是shell。            s

2008-08-25 22:39:00 1672

转载 SIP、NAT问题阐述及其解决方案分析(2)

 3.服务器端解决方案  服务器端解决方案主要包括:B2BUA(Back-to-BackUserAgent)、服务器端RTP中继。  B2BUA是一个接收请求并充当UAS处理请求的逻辑实体,主要是通过两个UA以Back-to-Back的工作模式控制经过它的呼叫。B2BUA与SIP代理服务器不同,B2BUA可以接收呼叫,并能对其进行修改,以其它形式代表发起呼叫的UA向终端目标发起呼叫,并能充当呼叫双

2008-08-20 22:36:00 2420

原创 了解使用ptr_fun、mem_fun和mem_fun_ref的原因

ptr_fun/mem_fun/mem_fun_ref系列是什么意思的?有时候你必须使用这些函数,有时候不用,总之,它们是做什么的?它们似乎只是坐在那里,没用地挂在函数名周围就像不合身的外衣。它们不好输入,影响阅读,而且难以理解。这些东西是STL古董的附加例子(正如在条款10和18中描述的那样),或者只是一些标准委员会的成员因为太闲和扭曲的幽默感而强加给我们的语法玩笑?冷静一下。虽然ptr_f

2008-07-07 23:20:00 1403

原创 GNUGK(2.2.3)源代码分析之线程池结构

GNUGK2.2.3一改之前2.0版本版本的单线程结构。采用了作业(Job,Task)-代理(Agent)-执行者(Worker)三层控制结构 。使整个体系结构更加易于扩展和清晰。在这里主要分析Job,Task,Agent,Worker他们之间的关系,以及Job的派生类Jobs与RegularJob时等。理解Job,Agent,Worker三个类之间的关系,需要跟大家复习一下操作系统中的程

2008-07-07 23:19:00 857

转载 深入浅出Win32多线程程序设计之线程控制

WIN32线程控制主要实现线程的创建、终止、挂起和恢复等操作,这些操作都依赖于WIN32提供的一组API和具体编译器的C运行时库函数。一、线程函数    在启动一个线程之前,必须为线程编写一个全局的线程函数,这个线程函数接受一个32位的LPVOID作为参数,返回一个UINT,线程函数的结构为:UINT ThreadFunction(LPVOID pParam){ //线程处

2008-07-02 15:37:00 1825

转载 同步机制及windows同步函数的使用

本篇文章适合比较熟悉多线程并且想学习线程同步的读者。最近由于使用多线程,不可避免的要用到线程之间的同步,对一些常用的windows 中同步函数和机制有了一些初步的了解,并且写了一些小例子来验证,当然其中难免有错误和疏漏之处,希望高手能给我这个小鸟指出不足之处,非常感谢。目录一 临界区二 互斥体三 事件四 信号量五  附录一 临界区临界区的使用在线程同步中应该算是

2008-07-02 11:13:00 998

转载 C++多线程-信号量Semaphore

多线程同步之Semaphore (主要用来解决生产者/消费者问题)一 信标Semaphore信标内核对象用于对资源进行计数。它们与所有内核对象一样,包含一个使用数量,但是它们也包含另外两个带符号的3 2位值,一个是最大资源数量,一个是当前资源数量。最大资源数量用于标识信标能够控制的资源的最大数量,而当前资源数量则用于标识当前可以使用的资源的数量。为了正确地说明这个问题,让我们来看一

2008-07-01 22:46:00 5500

转载 C++多线程之Mutex

多线程之线程同步Mutex (功能与CriticalSection相同,保证某一时刻只有一个线程能够访问共享资源,但是是内核对象,所以访问速度要比CriticalSection要慢,但是增加了等待超时的功能,使用时可以根据实际的情况选择其一)一 Mutex    互斥对象(mutex)内核对象能够确保线程拥有对单个资源的互斥访问权。实际上互斥对象是因此而得名的。互斥对象包含一个使用数量

2008-07-01 22:10:00 6606

转载 C++多线程-互锁

多线程同步之WIN API互锁函数 (可以避免使用CriticalSection或Mutex)一 互锁函数      互锁函数的家族十分的庞大,可以查看msdn(http://msdn2.microsoft.com/en-us/library/ms686360.aspx)以InterLocked开始的函数都是户数函数。使用互锁函数的优点是:他的速度要比其他的CriticalSect

2008-07-01 21:59:00 7198

转载 C++多线程-Critical Section

多线程同步之Critical Sections(功能与Mutex相同,保证某一时刻只有一个线程能够访问共享资源,但是不是内核对象,所以访问速度要比Mutex快,但是增没有等待超时的功能,所以有可能会导致死锁,使用时可以根据实际的情况选择其一)一 Critical Sections1) 因为Critical Sections不是内核对象,所以只能用来统一进程内线程间的同步,不能用来多个不

2008-07-01 21:46:00 6164 1

转载 Sockets/Windows Sockets错误码

Windows Sockets在头文件winsock.h中定义了所有的错误码,它们包括以"WSA"打头的Windows Sockets实现返回的错误码和Berkeley Sockets定义的错误码全集.定义BerkeleySockets错误码是为了确保原有软件的可移植性.WSAEACCES (10013) Permission denied.试图使用被禁止的访问权限去访问套

2008-06-30 14:17:00 1163

转载 GetLastError与FormatMessage联用得到出错原因

通常,在写WINDOWS程序的时候我们会用 GetLastError()来获得错误代号,进而想要知道具体出错原因(文本描述),我们可以用 FormatMessage 函数来得到。  下面示例一段代码。  1  2 /*  3 利用F

2008-06-30 13:40:00 1332

Overview of Microsoft Office Communications Server 2007

ocs2007简介,可以让你对ocs有一个大体上的认识,ptt的

2008-10-05

空空如也

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

TA关注的人

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