LTE第一个handover call 业界第一个LTE的handover call: Nortel claims first field handover of data call between base stations Nortel Networks has moved its Long Term Evolution (LTE) trials out of the lab and into the field,
TD版LTE 大家都知道,有TD版3G, TD-SCDMA, 已经在中国移动正式商用。TD阵营很强悍,也搞了个TD版4G, TDD LTE,似乎也在很快地发展起来。 这2天,已经有第一个TDD LTE的端到端的视频流媒体demo,在中国搞的:Nortel Completes Worlds First LTE TDD 4G Wireless Demonstration in China
试了一下一致性哈希(consistent hashing) 普通的一致性哈希(consistent hashing)是这样,在哈希环上为client顺时针选取最近一个server: 在某个paper上看到一种变形,具体哪个paper忘了,它是这么做的,就是选取前后两个server,每个client对应两个server,而不是一个: 为了写代码方便,最后实现的是这种: 为一个
新西兰天维网登录发送明文密码 新西兰比较有人气的华人社区网站是天维网(新西兰天维网),是这边华人用中文吐槽经常上的论坛,也是华人之间各种交易(比如买卖二手车)的集散地。上次非诚勿扰新西兰专场就是天维网承办的宣传和报名。来新西兰定居后我也知道了这个论坛并注册了账号,注册的时候看到没有HTTPS,但心想现在的网站怎么说对密码也会有点保护或隐藏吧,没多想。今天心血来潮,用Wireshark抓包看看。随意输入用户名ti
遭遇多线程bug (1) 某些用户,机器重启后,到第三方服务器的连接起不来,而到我们自己服务器的连接就没事。如果连接由于网络或其他原因fail掉,过一定时间后应该会重新尝试建立连接的。测试组做初步调查,他们能在本地环境复现,只是不是稳定复现,时而有时而没有。(嗯,race condition的问题就常常比较飘忽不定,并且往往在系统繁忙负载高的时候爆发)。我开始参与。
三十岁,开始异域漂泊 三十岁,开始异域漂泊2012年5月,因为想在职业上做一些新的尝试(其中的一个想法,就是想尝试做贴近用户和产品一些的开发工作,而不只是做平台...),萌生去意。当时公司快上市了(现在已经上市了),上市半年后解禁 手上成熟的部分股票应该可以带来一些回报。不过人生有几个一年,自己想要什么生活应该立即开始努力尝试,不想因为这个再等一年。跟公司说了想法之后,公司提议我参加一老板亲自带队的 新
算法写到广告词里 有天晚上,看到路边公交站上的这块广告牌:Divide and Conquer?这是惠普还是微软的程序员想的广告文案吗?(Windows 8系统,惠普的变形超级本,其实不确定是微软还是惠普做的广告)----------------------------------------------------------------------------------------
用好Code Review 个人写各自的代码,没有review流程,确实比较快。开发人员会天然地喜欢和有这种倾向,因为这样感觉比较自由,有一些丑陋的地方也不会被别人看到...但,如果开发的程序有多人维护,并且对质量、稳定性要求高的话,最后还是需要Code Review来保障代码质量。Code Review不仅是提高软件质量的有效手段之一,更是团队老人传授知识和经验给团队新人的极好时机。认真
Evernote 的服务器架构 最近几天开始用云笔记Evernote...也顺带了解一下Evernote服务器端的设计。Evernote的技术博客上有若干Evernote的CTO Dave Engberg撰写的文章做了阐述。可读性很强,可直接点开下面的原文链接阅读,这里就不赘述或翻译了。Evernote服务器整体方案的描述:http://blog.evernote.com/tech/2011/05/17/ar
前Amazon工程师分享早期故事 前Amazon软件工程师GREG LINDEN在他的博客上,分享了1997年毕业后加入Amazon的一些早期故事:The seriesThe first weekGroup discountsDoor desksBookMatcherboy-am-i-hard-to-pleaseInventory cacheDogsXmas at the warehouseSplitting the
临时优化了一下可靠UDP程序 之前做的一个简单的可靠UDP传输,基本的可靠是实现了,但没做动态的流控。当时为了简单,也为了快速实现。当然 运算简单服务器也能撑起更多用户,比如一个服务端单线程进程可能撑起上万的用户连接。几个数据量小的业务,跑了几个月并没发现什么明显问题。后来迁移一个业务过去,灰度测试,客户端获取一份数据的速度很慢,比原来使用TCP的慢多了。对比之后发现用来使用TCP传的时候,这份业务数据有做压缩,迁
亚马逊(Amazon)面向服务架构(SOA)经验 Amazon前员工,现google员工在Google+上说google不懂得做平台,里头也提到以前Amazon实现面向服务架构的一些经验(不过是好几年前的经验了):- pager escalation gets way harder, because a ticket might bounce through 20 service calls before the real owner
宣讲行程更新 在前面一篇毕业生又开始找工作了里说的校园宣讲行程后来更改了,基本上长沙的宣讲延到11月,其他地方的都在10月:宣讲行程 城市宣讲学校宣讲会时间地点 广州华南理工大学10月14日 14:30 - 16:30大学城校区A4-204
初遇缓冲区溢出攻击 初遇缓冲区溢出(Stack Buffer Overflow)攻击那天晚上,某种业务有好几个服务端进程在短时间内崩溃了。同事上去看了,发现都是在处理来自同一个地方东莞的同一个IP地址过来的请求时发生core dump。恩,诡异,当时我们先跟运维同事联系,在该业务的几个服务器上 临时紧急禁掉该IP的连接。我也上去看了,用GDB查看core文件。看了trace
看完 Masters of Doom 终于看完 Masters of Doom: How Two Guys Created an Empire and Transformed Pop Culture 这本书。了解业界前辈的这些经历,感觉收获还是蛮多的。1. 有人财务自由,功成名就之后干活不卖力了。比如John Romero,前面一两个游戏出来成功之后,整天忙于应酬,享受千万粉丝追捧。
黑莓宕机 黑莓宕机影响全球用户3天 ...各大洲的用户都影响到了,可以看RIM官方上的service update:http://www.rim.com/newsroom/service-update.shtml原因是一个核心交换机坏了,虽有备份的,不过切换后备份交换机没按预期工作...一般实现一个高可用的服务器系统,有两种方式。方法A,让一个主服务器
毕业生又开始找工作了 公司的2012校园招聘终于要开始了。2012校招职位:C++开发工程师(广州)Java开发工程师(珠海)Java开发工程师(广州)产品运营专员(广州)内容编辑(广州)产品运营专员(珠海)C++开发工程师计划招聘130
初始化惹的祸 我们某种业务,客户端获取服务端数据,有重试机制。其中重试的timer原定是可配置的,就是服务端改了数值,客户端与服务端交互消息之后就起效。客户端版本发布之后,发现客户端一直按默认值执行,更改timer的配置无效。同事debug后,发现消息在从服务端发出去之前就不对了。获取配置后给消息赋值时打出来的timer的数值是正确的,序列化后再发送出去之前再打出来就不对了。代码逻辑看起来完全正确...
大学毕业,真正的学习才刚刚开始 最近读到两篇文章,觉得他们的观点挺有意思,所以分享一下。第一个是:The Truly Educated Never Graduate文章全文在以下链接:http://stoffe.deephacks.org/2011/08/09/the-truly-edu
Java虚拟机(JVM)内部干些什么 来自一家开发商业Java虚拟机的公司Azul Systems的 Ian Rogers博士,2011年5月27日做了一次演讲 叫“Learn about JVM internals - what does the JVM do?”。简单讲解了Java虚拟机内
Facebook的服务器架构 大体层次划分 Facebook的架构可以从不同角度来换分层次。 一种是:一边是PHP整的经典的LAMP stack;另外一边是非PHP整的各种service。Facebook的页面从刚创立的时候扎克伯格写的,到现在,都用PHP开发。后端有用各种语言开发的service。它们之间用跨语言的thrift RPC通信(Scribe也是建立在Thrift之上
Oracle的高可用 快速浏览了一下Oracle官方的网页以及非官方的ppt,简单了解了一下Oracle提供的高可用方案。主要有三种: 1. RAC RAC, Real Application Clusters 多个Oracle服务器组成一个共享的Cache,而这些Oracle服务器共享一个基于网络的存储。这个系统可以容忍单机/或是多机失败。 不
Twitter的服务器架构 三字要诀Twitter的工程师把他们构建高效率,可伸缩的系统的经验总结为三字要诀:partitioning(分片), indexing(索引), 和 replication(复制)。分片(partitioning)技巧Twitter上的tweet有两种
Skype的服务器架构 这篇文章 SKYPE's Roadmap and Architecture 简化地描述了Skype的架构。Skype的数据库团队leader Asko Oja 的幻灯, http://www.slideshare.net/highload/asko-oja-moskva-architecture-highload-presentation 则说Skype使用了PostgreSQL和Skype贡献的开源工具(plProxy, pgBouncer, PgQ...)做分布式数据库。终于具
Flickr的服务器架构 前Flickr的架构师 Cal Henderson,在 Flickr: Web Services 这个PPT中,有对其架构比较全面的阐述。Flickr运维团队的John Allspaw,有两个讲LAMP的幻灯,Hardware Layouts for LAMP Installations 和 capacity planning for LAMP,但应该是Flickr架构演进和运维的一些经验总结,其中也透露一些服务器架构。John Allspaw也很强调测量(measurement)的重要
Mixi的服务器架构 Mixi的CTO Batara Kesuma 在PPT mixi.jp scaling out with open source中讲他们怎么使用开源工具做向外扩展伸缩的。主要是怎么对MySQL数据库做切分(partitioning)。Mixi还被MySQL官方收为案例之一:mixi Delivers Massive Scale-out with MySQL这篇文章memcached全面剖析–5. memcached的应用和兼容程序(翻译自日文文章 http://gihyo.j
Redis的源代码分析 比较全面但不太详细的分析:Redis: under the hoodRedis的字符串实现:http://code.google.com/p/redis/wiki/HackingStringsRedis的事件库:http://code.google.com/p/redis/wiki/RedisEventLibraryRedis的虚拟内存实现:http://code.google.com/p/redis/wiki/VirtualMemorySpecification简单
Redis Cluster预览 当前稳定版本的redis(2.0.4)只支持简单的master-slave replication:一个master写,多个slave读。只能通过客户端一致性哈希自己做sharding。Redis Cluster是下个版本开发的重点,会有集群的自动sharding,多节点容错等等。10月份,Redis的作者Salvatore antirez Sanfilippo在伦敦的Redis London Meetup会上做了演讲,介绍了Redis Cluster。Youtube已经上传
软件架构师(Software Architect)成美国最佳职业 CNN排出了全美100个最佳职业,其中 软件架构师(Software Architect) 竟然排在第一位:1 Software Architect 34% 2 Physician Assistant 39% 3 Management Consultant 24% 4 Physical Therapist 30% 5 Environmental Engineer 31% 6 Civil Engineer 24% 7 Database Administrator 20%
RTLinux的架构 偶尔听到 实时Linux, 也就是 Real Time Linux - RTLinux. 不过都没去仔细了解。为什么会有实时Linux,估计大家都知道,普通Linux内核是作为通用系统设计,追求应用任务的平等调度和总体吞吐量,而不保证实时性。而很多嵌入式的应用场合对硬实时性(hard real time)有要求。RTLinux就是声称可以满足硬实时性的一种Linux。偶然看了一个infosys的一个关于RTLinux的幻灯(http://linux-bangalore.org
Redis server主从之间的断开重连 最近某项目,用了开源的 key-value 存储 Redis server,同事提出来用的。会部署一个master和若干个slave。slave和master同步。开发完了上线。第二天,发现slave与master断开了。master和slave放在不同机房的。进程都还在,只是没有同步,数据没有更新,因为master显示连接的slave少了。这太吓人了,不会简单的断开重连都没实现吧,redis。进一步分析,一开始如果slave没连上master,是会一直重试连接的。中间如果重启mas
北电的产品卖给Ciena后被拿去开源 北电的城域以太网事业部MEN卖给Ciena后,DRAC产品被Ciena开源了。叫Open DRAC:http://www.opendrac.org/DRAC意思是动态资源分配控制器,它的基本理念是把网络作为一种资源来管理分配,和传统的计算,存储一样。要通过web页面注册,等人工回复拿到账号,才可以查看文档和下载代码。整个DRAC都用Java实现,代码用SVN check out下来有几百兆,花费时间挺长的。
NetPeeker的替代工具 用NetPeeker这个工具,可以方便地看到你写的程序建立了多少网络连接,TCP的还是UDP的,速率是多大,还可以随意切掉任一个连接。所以在你测试,调试的时候,都挺有用的。不过它是商业软件,过了试用期没有lisense就用不了了。 还好,免费的工具有一替代品。你如果只是要看程序有多少网络连接,速率,开了那些TCP/UDP端口,其实用360就可以看。但360没办法随意切掉某个连接,这个调
Windows上的异步通信程序库CAsyncSocketEx Windows上的异步通信程序库CAsyncSocketEx CAsyncSocketEx是一个叫Tim Kosse的2003年发布到codeproject.com上的一个小程序库(http://www.codeproject.com/KB/IP/casyncsocketex.aspx),说是MFC的CAsyncSocket的替代品和改进品。 作为异步通信,CAsync
为私有协议写一个wireshark插件 为私有协议写一个wireshark插件 为公司私有协议写了一个Wireshark插件。这样可以直观分析抓到的包,对开发和调试都可以带来一些方便。 首先编译wireshark就挺折腾的,参考了网文还有Wireshark官方的 developer guide也还有一大堆错误,并且折腾到最后生成的wireshark exe文件还执行不了。。。幸好编译的插件可以用:) 有很
推荐一个画call flow的好工具 推荐一个画call flow的好工具 作者:千里孤行(http://blog.csdn.net/yanghehong) 推荐一个画call flow的好工具,callpot。可以到SourceForge的项目主页下载:http://sourceforge.net/projects/callplot/ 下载下来的是文件后缀是1,可以改后缀为.rar然后解压缩。这个网页上并没有
Linux上TCP丢失小包不可见的解决 Linux上TCP丢失小包不可见的解决 作者:千里孤行(http://blog.csdn.net/yanghehong) 有网友在做一个Linux上的客户端碰到这样的问题: 我们在Linux下开发一个网络客户端程序(服务器是不可修改的),不断向服务器不定期发送一些很小的包(一般只有几十字节),现在出现这种情况:大部分包正常发送,但是当无线Modem断开的时候,如果这个时候
IM系统 文件传输的断点续传 IM系统 文件传输的断点续传作者:千里孤行(http://blog.csdn.net/yanghehong) 一般的IM系统,除了基本的文字聊天功能之外,还可以传输文件。 而文件传输,断点续传基本上是一个基本需求了。(哈哈,貌似QQ也经历一个从无到有的过程,一开始的文件传输并没有支持断点续传,多年前的事不知道有没记错:)) 断点续传是需要发送方程序和接收方程序)相互配
中国公司使用巴西文字插图介绍产品? 在google查论坛里头的新加坡公司Jitcomm是干什么的,翻到广州一同类型的公司,看到它的一个网页http://www.dtonecn.com/traffic.html 在介绍它的“业界最高性能的流量控制器”。结果发现上面的插图上的文字竟然没看懂,不是中文,也不是英文: 什么 Rede Local, Servidores Corporativos, Monitorar Imagen
关于 《XMPP: The Definitive Guide》 关于 《XMPP: The Definitive Guide》作者:千里孤行(http://blog.csdn.net/yanghehong) 这本书 XMPP: The Definitive Guide: Building Real-Time Applications with Jabber Technologies 是09年出的, 作者是Peter Saint-Andre (
Chrome浏览器的证书管理 Chrome浏览器的证书管理 作者:千里孤行(http://blog.csdn.net/yanghehong) 当浏览HTTPS开头的网站时,网站的服务器会发一个数字证书过来,浏览器和人需要对其做有效性验证。这个过程中,需要从本地的证书库里头找出证书的颁发机构(certificate authority ,CA)的证书来对网站服务器的证书做验证。这些CA的证书是浏览
GPRS移动数据网络 – Charging Characteristics(计费特性) GPRS移动数据网络 – Charging Characteristics(计费特性) 作者:千里孤行(http://blog.csdn.net/yanghehong) 这里要说的是Charging Characteristics,把它翻译作计费特性,是因为看到网上有这样翻译的。不知道是不是最恰当,因为标准中是区分Charging和Billing。两个单词都比较长,为了简单,
GPRS移动数据网络 - TLLI和P-TMSI GPRS移动数据网络 - TLLI和P-TMSI 这里说的GPRS移动数据网络,既指2G的GPRS网络,也包括3G(WCDMA/UMTS)的数据网络(包交换域, PS Domain).因为经常会碰到TLLI和P-TMSI,所以这里简单解释一下。SIM卡上有一个IMSI( 3GPP里头写作 International Mobile Subscriber
传说华为有贡献MPLS-TP标准 在新浪网上看到新闻: 华为引领MPLS-TP标准发展 说华为提交在MPLS-TP的标准上做了很多贡献,特别是 RFC 565 ”截至目前,华为已提交了13篇IETF文稿,包括5篇IETF工作组正式文稿和RFC 5654(MPLS-TP requirement)。RFC 5654是当前MPLS-TP 4篇RFC中最重要的1篇,是所有MPLS-TP协议工作的基础。“
支付宝玩虚假宣传? 看信箱里头好几封支付宝的信件。说有个积分换购的活动 "年终盛宴:50元买手机,1元买资生堂,45元充50话费……每日限量". 宣传的图片好诱人: 50块钱+50积分可以换iPod shuffle。 不过点击进去之后就傻了: 里面实际写的 288块钱+200积分。。。 这算不算玩 虚假广告 虚假宣传啊?
搞SCTP开发看哪个协议标准 搞SCTP开发看哪个协议标准 作者:千里孤行(http://blog.csdn.net/yanghehong) 如果是自己开发SCTP协议栈本身,那基本上要依照RFC 2960 Stream Control Transmission Protocol (SCTP协议) 和 RFC 3309 Stream Control Transmission Protocol (SCTP)
CSDN博客系统做的太差了 挺感谢csdn提供免费服务。不过CSDN的博客系统确实做得太差了。 刚写一个多小时的文章,竟然提交失败,然后什么都没有,在草稿管理里头也找不到。尽管写的过程,已经看到提示说自动保存草稿了。 以前还有很多其他用户体验差的问题。 比如,现在首页也没显示评论 等等很多。 那个摘要也挺扯蛋的。 博客根本不需要摘要,只要把全文或者一部分正文显示出来就行。 显示摘要好丑
Starent支付UT斯达康350万美元解决专利纠纷 Starent支付UT斯达康350万美元解决专利纠纷。可以看Starent官方网站: ALAMEDA, Calif., and TEWKSBURY, Mass., Oct. 15, 2009 – UTStarcom, Inc. (Nasdaq: UTSI) and Starent Networks, Corp. (Nasdaq: STAR) announced today that t
Diameter协议被广泛采用 无意中看到,某厂商列出的基于Diameter的网络接口,吓了一跳。原来IETF, 3GPP, 3GPP2, ETSI TISPAN, PacketCable, MSF and ITU 这些标准组织已经普遍接受Diameter协议,在各种GSM/UMTS网络,CDMA网络,LTE网络啊,有线电视网络等等各种网络,,采用Diameter协议才做它的AAA接口。 http://www.t
思科收购Starent网络 之前,说过思科(Cisco)在08年十月份说想搞LTE(4G)的 Gateway。 现在,用29亿美元收购了著名做移动核心网的公司Starent Networks. Cisco Announces Agreement to Acquire Starent NetworksAcquisition of Starent Networks Expands Ciscos Mob
HTTP协议FAQ 1.Q: 网络中充斥着大量的HTTP请求报文, 其中有很多是用户点击浏览器后,浏览器根据返回的页面中携带的URL信息自动发起的请求, 在路由中间设备上如何才能判断一个HTTP请求消息是用户点击某个连接,或者是在地址栏中输入的HTTP请求消息呢? A: 可以通过Referer域来区别。 Referer域 表示改请求是由哪个页面(URI)衍生出来的请求。 Referer: http
腾讯升级一个产品要168小时 这几天如果有试图打开Qq相册,可以看到如下的提示信息: 尊敬的QQ相册用户:QQ相册将于6月2日-6月8日期间进行系统升级维护。在此期间,相册部分服务将受到影响。由此给您带来的不便,我们深表歉意,敬请广大用户谅解。特此通告QQ相册产品中心 很多产品,客户要求升级的时候不中止服务,或者中断服务的时间很短,几分钟啊什么的。不过这个对技术要求很高,在一开始做设计
HTTP1.1和HTTP1.0的区别 HTTP1.1和HTTP1.0的区别 翻了下HTTP1.1的协议标准RFC2616,下面是看到的一些它跟HTTP1.0的差别。 Persistent Connection(持久连接)在HTTP1.0中,每对Request/Response都使用一个新的连接。HTTP 1.1则支持Persistent Connection, 并
现在常用的处理器都有几个核 RMI公司的Superscalar XLP处理器(8核): Cavium Networks 的 Octeon处理器(CN58xx有16个核): 其实Octeon 2 有32个核的: 著名的通信软件提供商,比如6Wind, windriver, 和Continuous Computing这些公司,都支持RMI XLP 或 Cavium Oc
室内基站(Femtocell)出第一个标准了 3GPP, Femto论坛 和 Broadband 论坛合作,在3GPP网站上发布了第一个室内基站的标准。 Number Title22.220 Service requirements for Home Node B (HNB) and Home eNode B (HeNB)23.830 Architecture asp
Cisco也要搞4G? 无意中发现,Cisco在08年十月份就放出豪言,说想搞LTE(4G)的 Gateway. Cisco官方网站上的:(http://www.cisco.com/en/US/solutions/collateral/ns341/ns525/ns537/ns705/ns810/statement_of_direction_C22-502484.html) Stat
LTE网络节点,接口,协议栈 把分散在若干3GPP标准中的东西,组合成这个示意图,LTE网络的网络节点之间的接口和协议一目了然: 包括终端和接入网基站eNB的接口,eNB和eNB之间的接口,已经接入网(eNB)和核心网(MME, Serving GW, PDN GW)控制平面和用户平面上的接口等等。。。 S1-MME: S1-AP协议参见
蓝牙LAN接入协议栈 画了张 蓝牙LAN接入 (Bluetooth LAP) 协议栈 的示意图: 不过,相应的标准在蓝牙组织的网站上已经找不到了,因为这种基于PPP的方法已经被抛弃,取而代之的是更一般化的协议架构,Personal Area Networking Profile (PAN)
LTE网络架构简化了 翻了一下LTE的一个标准文档3GPP TS 36.401。相对于3G(UMTS),LTE的网络架构简化了, 原来的 NodeB----RNC---核心网 变成 eNodeB----核心网,去掉了RNC这一级别的节点 : 更详细的网络结构,可参见LTE网络节点,接口,协议栈
08年软交换(softswitch)市场 2008年第一季度排名:Nortel(北电)Nokia Siemens Networks(诺西) 根据文章Nortel, Nokia Siemens Neck and Neck in Media Gateway/Softswitch Market in 1Q08Nokia Siemens Networks gained five points in the combined
MSN禁令 公司认为MSN不安全,要全部卸载,以后不能在办公室聊MSN了:) 似乎很久以前,MSN曾经强制用户升级到某个最新版本,不然就不给登陆,就是因为发现比较严重的安全隐患。 Google了一下,MSN爆出的安全漏洞还不少啊: Microsoft Security Bulletin MS07-054 - ImportantVulnerability in MSN Messeng
看过的一些网络通信协议 这里说的看过,不一定是全部看完,但也不是只看一些介绍性文章;至少是下载了协议标准文档,看过不止overview部分:) 有些协议,参与过商业产品上的开发;有些只是看过开放源代码的一些实现;有些,则纯粹随便看看,了解协议的设计思想。 即时通信(IM) (网上曾经流传Jabber Technical White Paper和Protocol Overview , 不过其
03年的访谈,变成08年的新闻 今天(2008.10.27)CSDN网站首页上的新闻: 对话Python之父:回顾Python的成功之路 03年一月的访谈,竟成了今天的新闻:) 可以看看03年的文章:The Making of PythonA Conversation with Guido van Rossum,(http://www.artima.com/intv/python.html)
中文核心期刊上的IM论文 在网上看到IM系统的论文: 多服务器分布式即时通讯系统模型的设计Design of Multi-server Distributed Instant Messaging System Model微计算机信息 >>2006年27期丁忠 , 刘志勤 即时通讯是当前Internet最流行的通讯方式之一,为克服传统的单服务器模式的一些缺点,本文提出一种新的即时通讯系统模型.该系统模型
Gtalk Jingle (4) ICE 前面说了一下relay server, 其实它只是当客户端在某些比较“坏”的NAT(symmetric)后面的时候才派上用场的。Client也可能在比较有利于P2P通信的网络环境,比如有一个public的IP地址,或是在没那么坏的NAT(non-symmetric)后面, 那么client可以直接建立连接或是通过STUN协议学习到映射地址来进行通信,而不必动用用relay server。有这么几种
Gtalk Jingle (3) signal/slot机制的应用 libjingle中大量使用signal/slot机制 (采用的是Sarah Thompson写的sigslot程序库)。 sigslot将原来直接调用的函数在一定程度上分离,然后在程序运行过程中随意粘合(connect)或分离(disconnect)它们的调用关系。这样它们分离得比较松,不过还有一定程度的耦合,比如signal和slot的参数类型和个数要一致。 比如RelaySe
Gtalk Jingle (2) - IM的带内和带外 上回说到libjingle的代码里, relayserver的写法,导致一个client只能和一个peer通信,那Gtalk如果直接用这个代码没有改动,当需要relay server的时候,是怎么和多个人聊天的? 其实这个libjingle只负责语音聊天,文件传输这些比较附加的功能,Gtalk功能还挺简洁(简单)的,并没有支持多人语音聊天之类的。用XMPP术语来说,就是带外数据(out o
思科收购Jabber 思科收购Jabber: Cisco Announces Definitive Agreement to Acquire Jabber 收购IM,意欲何为? 应该是可以加强企业网,统一通信这块。
Gtalk Jingle (1) - TURN relay server 看了一下google放出来的libjingle-0.4.0源代码中的relay server部分。基本原理是要有个public的Relay Server,Relay Server要可以分配Replayed Transport Address,倒是如TURN draft-ietf-behave-turn-09描述的那样。但有挺多不同和简化。当然了,这个东西私有的,不存在互通的问题。 TUR
UML和SDL(Specification and Description Language ) UML很强大,表达和记录软件的设计的时候常常会用。但某些方面可能也没有其他描述工具方便。 比如在设计状态机的时候,有时候我也会适用SDL(Specification and Description Language)来做。 UML做出来的状态机的图,可以让你挺容易看出有哪几个状态,会有哪些状态之间的转化。但其实对于状态机,状态转化间可能会做很多事情,比如有N多状态机之间的消息交互时
Genband又砍产品线 刚卖掉BayPackets,Genband又砍产品线,将M6 Applications Server 卖给Broadsoft: BroadSoft Acquires GENBANDs M6 Communication Applications Server 看来Genband很坚决的要专注于gateway啊。 M6 application server原来是VocalD
中通思普(Continuous Computing)收购Embedded Solution Partners 8月7号的事,中通思普(Continuous Computing)收购Embedded Solution Partners:Continuous Computing Acquires Embedded Solution PartnersEmbedded Solution Partners的客户包括Genband。。。 Continuous Computing看起来还挺热衷于收购
北电(Nortel)亏损了还狂收购 似乎北电(Nortel)第二季度亏1亿美金刚出来还没多久,8月13号就收购了Pingtel公司:Nortel Acquires Pingtel’s Business to Extend Unified Communications Capabilities 现在,今天又突然收购了另一公司,DiamondWare:Nortel Acquires DiamondWare to
Genband卖掉2年前收购的BayPackets 其实这个已经不是新闻,可见7月31号的网络报道:Genband sells IMS specialist BayPackets。 06年收购做IMS的BayPackets,说想搞产品多样化。现在卖掉,说想更专注于gateway。 基本上Genband算是media gateway的一匹黑马,后来居上,现在市场份额很不错。 07年初收购了Tekelec的signaling g
MTP2的帧结构有点特别 传统SS7网络中的二层是MTP2. ITU-T Q.703中规定它的帧(SS7中的术语叫Signal Unit)结构: ,|||+||||||| | F | CK | SIF | SIO|/ | LI |F |FSN |B BSN |
狡猾的E1 印象中,T1用于美国和日本,E1用于欧洲和中国等其他国家。T1和E1的基本单位都是DS0, 64K的一个timeslot。T1有24个timeslot,E1有32个timeslot。 如果仅仅知道这些,可能判断上会出差错,以为T1可以用来传24路数据,E1可以用来传32路数据。 对于T1,确实可以将24个timeslot都配来传输语音,数据或信令。但E1就比较狡猾了,只能用31个t
引用(Reference)和指针的区别 引用(Reference)和指针到底有什么区别呢?先写几行C++代码,看看它们生成的汇编。pointer.ccvoid simpleFun(int* a_p){ *a_p = 7;} 其生成的汇编:_Z9simpleFunPi:.LFB2: pushl %ebp.LCFI0: movl %esp, %ebp.LCFI1: movl 8(%ebp), %eax m
IP层的目标地址从哪里来 看到有人有这样的疑问“...根据OSI七层模型的概念,网络层的IP报头中的数据实际上应该就是传输层TCP/UDP数据包。但对于TCP/UDP包来说,只有源/目的端口的信息,没有源/目的IP地址的信息的。那么网络层的IP报头中源/目的IP地址的信息中如何得来的呢? ...”其实这里是混淆了几个基本概念,协议(protocol), 接口 interface(service, primitive).
Virtual PC 装不了Ubuntu 8.04 想用Virtual PC装Ubuntu玩玩。下载下来的是8.04版本,死活装不上,加载kernel就出"...unrecoverable processor error..."。上网一看,以前7.*版本装不上Virtual PC的,用几下设置就可以解决,但8.04的似乎很多人最终都没成功。幸好看到推荐VirtualBox的,也是免费的,马上下载下来,装上,可以用。再捣鼓许久把build-ess
什么是软交换 别人问我什么是软交换,我直接回答说:有Media Gateway的网络架构就是软交换。现在看到有这样说的,用一个一般的通用计算机来做电话交换机,那么它就是软交换机(softswitch)。想想倒是一致的,因为有Media Gateway, 才把控制逻辑和语音交换硬件分离,那么控制逻辑(应用层)自然可以用跑在通用计算机上的软件实现。那么软交换机就是会用Megaco控制Media Gatewa
创新 在看google中国黑板报上吴军写的文章。 “在贾里尼克以前,科学家们把语音识别问题当作人工智能问题和模式匹配问题。而贾里尼克把它当成通信问题,并用两个隐含马尔可夫模型(声学模型和语言模型)把语音识别概括得清清楚楚。这个框架结构对至今的语音和语言处理有着深远的影响,它从根本上使得语音识别有实用的可能。”看到这里很有感觉。想想什么是创新和怎么样创新。。。
使用Opera的不便 使用Opera发现几个不好(相对IE):1. 保存网页的时候,网页的图片没有装在一个文件夹里头, 跟网页散乱在一起.2.使用金山词霸2005屏幕取词, 没法智能取出短语,而 使用 IE 可以.3.点击.rar的下载链接,却直接用浏览器打开,出来一堆看不懂的码子....
Java 中的图像旋转 Java 中的图像旋转 通过AffineTransform.getScaleInstance(double sx, double sy) 可以得到一个执行旋转操作的AffineTransform 实例,再用它做参数,构造一AffineTransformOp 对象,再调用其filter(BufferedImage src,BufferedImage dst)方法
Dialog Boxes use in Windows Forms In Jeff Prosises book Programming Microsoft .NETChapter 4 Windows Forms, ”Experienced Windows developers are often shocked to find that Windows Forms dialogs create their controls programmatica
Simple Image Slide Show C# edition <!--p.MsoTitle {margin:0cm;margin-bottom:.0001pt;text-align:center;font-size:16.0
C# 绘图--飘带 C# 绘图--飘带 //-------------------------------------// DrawStreamer.cs by Flycrane//------------------------------------- using System; using System.Drawing; using System.Window
C# 绘图--金刚石 C# 绘图--金刚石 //-------------------------------------// DrawDiamond.cs by Flycrane//-------------------------------------using System;using System.Drawing;using System.Windows.Forms;
C# 编码规范和编程好习惯 C# 编码规范和编程好习惯撰文:DotNetSpider.com(http://www.dotnetspider.com)谁都会写代码!几个月的编程经验可以让你写出“可运行应用程序”。让它可运行容易,但是以最有效率的方式编码就需要下更多的功夫!要知道,大多数程序员在写”可运行代码,“而不是”高效代码“。我们在这个指南课程前面提到,你想成为你们公司”最尊贵的专业人员“吗?
MINFO-印度铁矿资源矿物信息原型数据库 MINFO-印度铁矿资源矿物信息原型数据库 MINFO--a protype mineral information database for iron ore resources of India(Computers & Geosciences 27 (2001) 357-361) 撰文:Indranil Roy,B.C. Sarker, A. Chattopa