客户端软件范文(精选11篇)
客户端软件 第1篇
FTP是一种能将信息更好的组织起来,让用户能方便、直接地检索和获取所需信息的较好协议。在Internet上全面推广之后,得到了广泛的应用。但目前市面上各大公司生产的可轻松获取共享资源的上传下载软件都有版权,如要使用均需购买,以至于我们现在用的都是破解版;而从其它渠道获取的FTP软件,考虑到安全方面的因素,一般也不敢轻易去用。所以研发一个自己的FTP软件,即经济易用又可以克服安全方面的问题。
1 界面设计的主体思路
以下是结合课题要求用VC++6.0实现FTP客户端的界面及使用Winsock语言实现FTP编程的全过程(图1)。
建立一个单文档/视图应用程序。从File菜单选择New对话,在Projects选项卡中选择AppWizard(exe)图标。键入项目名并单击OK,在第一步中选择Single Document单选按钮,第四步要选上Windows Socket选项,在最后一步的时候要选择Base Class,我们在这里先选成CView类。这样就得到了一个基于单文档的窗口。
FTP软件涉及本地显示栏和服务器显示栏,这就使得要对新建的窗口进行拆分,拆分成几个什么类型的子窗口这就要根据你对该FTP的要求而定了。根据课题的要求,我将主窗口切分成五个子窗口。CSplitter Wnd类提供了切分窗口的各种功能。切分窗口主要有以下几步:在主框架中嵌入一个CSplitter Wnd的成员变量;重载主框架CFrame Wnd::On Create Client的成员功能;调用Create或Create Static成员功能。同时还要注意要在CMain Frm.h中加入各子窗口的头函数及#include
如果将窗口切分完毕之后,又想更改子窗口的类型,那就要看这两个类是不是从相同的类继承下来的。如果以前是CView类,那么就可以改成从CView类继承下来的所有类(例如CForm View类)。首先将要更改的子窗口的头文件和源文件中的CView改成CForm View。将构造函数改成CMy View::CMy View:CForm View(CMy View::IDD)。项目处点右键选择New Form或手动添加一个Dialog资源。最后在该子窗口的头文件中添加IDD资源。这时编译通过但不显示结果,主要是没有将Debug清空。清空Debug后,类类之间的转型就成功了。
确定要选择哪两个子窗口做本地显示栏和远程显示栏之后,就要分别在它们上面添加List View控件和Combo Box控件了。如果选择的这两个子窗口是CDialog类或是CForm View类则可以直接在其上添加相应的控件,但如果是CView类则必须要调用相关的控件函数来实现。List View是由Combo Box、静态文本控件和编辑控件构成的。通常总是将Combo Box控件放在List View的上方位置。通过调用List Item可以将List View控件中的所有项目以大图标、小图标、列表、报表的形式显示出来。Combo Box控件可以用已定义好值的下拉列表显示也可以让用户随意输入一个值的编辑列表显示。这两个控件显示的内容如果超出了显示栏最初的大小设制时,系统就会自动为其加上滚动条。在MFC中对这两项都有详细的说明,适当的参阅会取得意想不到的收获。
2 VC++6.0与Winsock协同编写FTP客户端程序
基本界面的框架搭建好之后,我们就开始用Winsock语言编写FTP程序了。
2.1 Winsock语言的介绍
Winsock是由Sun Micro System、FTP software和Microsoft等几家公司联合制定的一套通用的TCP/IP编程接口。目前Windows下的Internet软件都是基于Winsock开发的,而且Winsock已经被集成到了Windows95以及Windows NT中。Winsock可被看成一个文件指针,只要向指针对应的文件读写数据就可以实现网络通信(见图2)。
2.2 Visual C++6.0的网络C/S模式编程
在Visual C++6.0中,可通过三种方法进行网络编程:(1)直接使用Winsock API;(2)使用Win Sock控件;(3)使用MFC中提供的Winsock语言即CSocket类。现在在Visual C++6.0环境下使用MFC提供的CSocket类。该类由CAsync Socket派生而来,前者用于同步调用,后者用于异步调用。使用CSocket类编程的方法如下:
(1)在Init Instance()中添加如下代码:
(2)用Class Wizard添加一个新类,类型(Class type)为MFC,并将其基类(Baseclass)置成CSocket。
(3)在新类中根据需要重载CSocket中的虚函数(Virtual Function)。
(4)在新类重载的虚函数中向要使用网络通信的窗口发送自定义的消息。
(5)在使用网络通信的窗口中响应由新类发送的自定义的消息。
要注意的一点是,如果在Visual C++6.0中使用CSocket编程,连接时最好使用“Use MFC in a Static Library”选项,否则在运行时会发生“动态连接库错误”。
3 界面的优化
成功实现FTP的上传下载及其相关功能后,可根据自身需要添加一些FTP功能或不断完善界面设计。例如在框架窗口中添加登陆栏,将传统工具条更改成彩绘工具条,在状态栏里添加上传下载的进度栏或是为整个窗口做托盘。这些都将有助于界面的优化。
结束语
上述FTP客户端使用Winsock进行程序编写、用VC++完成客户端界面的设计,实现各子模块相应的功能并将其进行融合、连接,最终建立一个展现平台,成功的实现了FTP所应具有的各种功能。
摘要:介绍了制作FTP客户端软件的全过程,利用VisualC++提供的一个支持可视化编程的集成开发环境,设计并制作了FTP客户端界面;利用Sockets为Windows下网络异步通信提供了一种方便的开发和运行环境,实现了FTP上传下载等主要功能及相关的一些辅助功能,是基于FTP协议原理并结合VC++6.0的相关特性来设计制作这个客户终端的,所以该终端具有可视化和易于使用的特点。
关键词:FTP,图形界面,客户端,协议
参考文献
[1]周鸣扬.Visual C++界面编程技术[M].北京:北京希望电子出版社.
[2]蒋东兴.Windows Socket网络程序设计大全[M].北京:清华大学出版社,1999.
客户端软件 第2篇
昨天我折腾了一个下午,给用友的400打了N个电话,终于解决了在域环境下且是NTFS文件系统的客户端中只给用户USER权限也能正常使用用友系统的问题,特此与大家分享。
首先和大家说一下我的环境:
域控:WINDOWS 2003 EE SP2
客户端:WINDOWS XP SP2 C盘NTFS文件系统,D盘FAT32文件系统
用友:U861版,只用总帐模块,安装在D盘根目录下
用管理员安装完用友后不做任何设置,用户登录用友门户会无法登录且提示C:WINDOWSSYSTEM32U8COMSQL下某个文件无法访问。
解决方法:赋予C:WINDOWSSYSTEM32U8COMSQL目录USER用户的(读取和运行、写入)权限,(如果用友软件的安装目录U8SOFT也是NTFS系统的则要赋予USER用户该目录 修改、读取和运行、写入 的权限,这是用友说的,我的D盘是FAT32文件系统所以没办法试验)。
此时用友的门户已经可以登录,但是打开总帐模块时仍然显示子系统登录失败。
解决方法:经过多次实验发现只要赋予USER用户C:ZW.TXT文件的(读取和运行、写入)权限就可以正常运行了。(这个可是我反复试验出来的结果,连用友客服都不知道的啊。)
由于我们只使用了总帐模块所以其他系统能否正常运行我目前尚不清楚。
金蝶K3,域环境中,无本地用户管理员权限的域用户如何设置注册表权限 如果该用户是属于Power Users组:只需要给用户添加注册表中的HKEY_LOCAL_MACHINE的SOFTWARE完全控制的权限。(勾选允许父项的继承权限和传播到该对象和所有子对象)
如果该用户是属于Users组:除了需要给用户添加注册表中的HKEY_LOCAL_MACHINE的SOFTWARE完全控制的权限以外,还需要给用户添加注册表中HKEY_CLASSES_ROOTD的APPID以及KdSvrmgr.clsAct完全控制的权限。
客户端软件 第3篇
在刚刚推出免费杀毒软件几天后,6月20日,百度又低调推出了电脑维护软件“百度卫士”。业内普遍认为,这两款产品的推出,意味着百度已经在安全领域,向奇虎360发起了正式的“围剿”。
有趣的是,在“百度卫士”推出的同一天,360以“更低调”的姿态推出了“360新闻客户端”。不过,短命的“360新闻客户端”上线不足3天就遭遇下架乌龙,并引发业内热议。业内分析人士直言,360低调推出新闻客户端,这效果等同于干露露低调露胸、郭美美低调炫富,尽显360式低调的张扬,不但赚足了眼球,还在有意无意中将360在移动互联网领域的战略意图显现出来。
下架乌龙
360新闻客户端将自己定义为一款聚合类新闻资讯阅读软件,其内容来自于各大媒体,包含头条、娱乐、体育、军事,仅支持安卓平台。然而,360新闻客户端投放市场不到3天即被下架。360副总裁曲晓东对媒体解释称,“360是一家平台公司,绝对不是要做新闻的公司。我们在发布的时候,应该有更严格的审核流程。在这件事上我们有疏漏,这款产品不能代表360的发展方向。”
在业内人士看来,这个说法明显有些牵强附会,既然不符合360的发展方向,为什么会允许内部团队去花费额外的精力制作这么一款产品?
目前,新闻客户端已经成为互联网企业抢占移动互联网入口的重要手段,IT大佬都在发力新闻客户端,并各有所长。腾讯新闻客户端背靠庞大的用户群和微信、QQ等强大应用;新浪新闻客户端有老牌媒体团队和新浪微博助阵;百度新闻客户端则有百度强大的新闻搜索支撑。
易观智库发布的数据显示,截至今年4月底,网易、搜狐、腾讯、百度、凤凰和新浪的新闻客户端,已经瓜分了超过80%的下载量。
面对众多竞争对手,尤其是百度在新闻客户端的强势发展,360自然不会袖手旁观。
互联网分析人士洪波表示,对于360来说,移动新闻客户端并不是重点,最重要的是终端和流量控制,只不过,做新闻客户端的成本相对低,万一做成了也是360在移动端的重要产品。在洪波看来,360有强大的渠道能力,在搜索领域都可占据10%以上份额,在移动端也可以多布局。
也有业内人士怀疑,360新闻客户端的下架乌龙,这可能是一起精心策划的炒作事件。360选择在百度发布安全软件的同一天上线新闻客户端,再策划因不符合公司战略而紧急下架的乌龙事件,在很大程度上引领了舆论。
新闻客户端是网易、腾讯及搜狐等网站争夺入口的重要产品,但360并不具备新闻内容上的优势,市场已被先入者占去绝大部分的份额。从360过去的发展路径来看,它的战略支点是平台而非内容。
百度的安全牌
在国内安全市场,360安全卫士占有优势,为了在安全市场改变奇虎360一家独大的局面,百度和腾讯等IT巨头,正争相在安全软件领域进行布局。腾讯继去年宣布设立10亿元安全基金布局移动安全之后,正在着力部署手机安全和浏览器计划。百度则在近期连续推出免费杀毒软件和电脑维护软件“百度卫士”两款安全软件。
据了解,百度发布的免费杀毒软件,除了与奇虎360的老对头卡巴斯基合作推出之外,还特别提到对用户隐私的保护,承诺此软件不含任何跟踪、监视用户计算机功能的代码,不会监控用户网上及网下的行为等等。细心的用户发现,百度作出的这些承诺,每一点曾经都是360屡遭诟病的地方。
“百度卫士”针对360安全卫士的意味很明显。在功能方面,“百度卫士”集合了电脑加速、系统清理、木马查杀和软件管理功能,和360安全卫士的功能基本类似。
众所周知,安全产品一直是奇虎360的核心产品。依靠安全产品所带来的巨大用户资源,360顺势推动了360浏览器和360搜索业务的快速发展。因此,百度推出安全软件无疑是直指奇虎360的核心,借此也能遏制住奇虎360在桌面端的绝对优势。
虽然360在安全市场已是独占鳌头,但其与同行的关系一直很紧张。据了解,360最初曾与卡巴斯基合作,后来360推出免费杀毒后,与卡巴斯基反目,互相指责。当年的杀毒软件巨头瑞星、金山和江民,期间也与360爆发连绵不断的口水战。此前百度称将牵手合作伙伴(业内推测为腾讯和金山)进军杀毒市场,周鸿祎在接受媒体采访时,曾毫不客气地形容为“中国互联网最大的笑话”。
目前国内杀毒市场乱象丛生,百度的参与让用户增加了选择权。但很多业内人士对百度安全产品并不看好。一位业内人士直言,此前“插根扁担都能开花”的腾讯都没能拿下360,百度短期内也没戏。
既有格局难破
根据艾媒咨询数据,360安全产品在中国智能手机市场的渗透率或份额目前达到71.3%,腾讯手机管家紧随其后。根据2013年Q1财报,360手机安全领域市场份额进一步扩大,360手机卫士的用户在今年3月末达到了2.75亿。在移动互联安全市场,百度短期内难以撼动360的主导地位。
百度也于今年4月中旬推出了基于安卓平台的百度安全管家测试版,5月8日推出正式版本2.0,百度安全管家与市面上主流的手机安全软件大同小异,主要功能包括查杀手机病毒、清理垃圾、防骚扰、防止流量偷跑和恶意扣费等,这意味着未来百度与360手机卫士、腾讯手机管家将面临艰难的同质化竞争。
而百度这回看似强攻360腹地的杀软之战,仍然只是一款战略防御型产品,这是因为对于杀毒软件这样用户使用黏度较高的软件产品来说,用户的使用习惯在短期之内难以改变。
金山网络CEO傅盛表示,百度进入杀毒市场,对用户而言多一个选择,对行业而言,不会影响现有的市场格局。“PC安全的格局已经定了,在没有空白需求的前提下,格局不可能被打破。”
同样,360也很难在新闻领域对百度形成威胁。360此前在新闻领域并没有太多积累,比起几大门户网站,360在内容上并无优势,仅依靠产品创新很难取胜。
目前看来,360想依靠新闻客户端在其中分一杯羹已是难上加难。不过,作为一个从来不按规则出牌的人,周鸿祎和他的360总能在各个领域都让竞争对手感到不安。360此次宣布不会向新闻客户端进军,或许在准备下一盘更大的棋。
基于客户端软件的个人电子邮件管理 第4篇
启动Outlook Express,点击菜单栏中的“工具”项,打开“帐户”对话框。见图1。
运行“添加”-“邮件”命令,进行电子邮件收发参数设置。见图2。
进入Internet连接向导,首先输入显示名,可按自己的爱好随便设置。见图3。
在Internet电子邮件地址栏中输入申请到的免费电子邮件地址。见图4。
在电子邮件服务器名中输入接收邮件服务器(POP3)域名或者IP地址和发送邮件服务器(SMTP)域名或者IP地址,这些参数可以从提供免费邮件服务的邮件系统帮助信息中找到,比如网易163邮件系统的这两个参数分别为:pop3.163.com,smtp.163.com,新浪邮件系统的这两个参数分别为:pop3.sina.com,smtp.sina.com。见图5。
在Internet Mail登录页面,密码栏可以选择记住密码(通常在私用电脑),这样在收发邮件时系统会自动运行,不需用户干预。见图6。
帐户参数设置完成以后,可以对已添加的邮件帐户进行一些属性的设置。见图8。
在“常规”页签,可以设置邮件帐户的名称等信息。见图9。
在“服务器”页签,可以对服务器信息,接收邮件服务器,发送邮件服务器进行设置,通常对于发送邮件服务器中的选项“我的服务器要求身份验证”要选中,这样可以防止垃圾邮件发送。见图10。
在“高级”页签,通常对“传送”的选项“在服务器上保留邮件副本”进行选择,这样系统把邮件下载到本地硬盘以后,邮件服务器上还会有一个备份,增加了邮件的安全性。见图11。
如果拥有多个电子邮箱,可以按同样的步骤在客户端程序中分别进行设置,可以同时存在。设置好以后,要收发邮件就非常简单了,计算机上网以后,只需运行Outlook Express程序,不需登录邮件系统主页面,系统就可以自动从邮件服务器上把所有设置的电子邮箱中的电子邮件接收到本地硬盘上,这对于多个邮箱的邮件接收尤其方便。若要发送电子邮件只需运行Outlook Express程序的相关功能即可,若要发送带附件的电子邮件,最简单的方法是,选中需要发送的文件,点右键,执行“发送到”中的“邮件接收者”命令,就可以调用客户端程序编写邮件和发送了。见图12。若设置了多个电子邮箱,可选择其中一个作为默认的发送邮件服务器,或者直接从发件人下拉列表框中选择。见图13,图14。更简单的,如果把Outlook Express程序的执行文件或者它的快捷方式加入到“开始”菜单中的“启动”文件夹中,每次系统启动以后就会自动开始邮件接收。
由于客户端程序会把从服务器上下载的邮件保存在本地硬盘,默认是在系统安装的分区,因此,一旦系统重装,这些邮件将会被清除。要使这些邮件得到很好的保存,最好把存放邮件的地址改到非系统分区。具体可如下操作:首先在硬盘的非系统分区(例如E或者F分区等)建立一个文件夹,准备用来存放电子邮件,例如在E盘建立了一个Mail文件夹。启动Outlook Express,点击菜单栏中的“工具”项,打开“选项”对话框。见图15。
打开“选项”窗口中“维护”页签的“存储文件夹”对话框,在“存储位置”窗口中点击“更改”按钮。在“浏览文件夹”窗口中选择Outlook Express存放邮件的文件夹,比如上面在E分区建立的Mail文件夹。见图16。
上述工作完成以后,只要是通过Outlook Express客户端程序收发的邮件,都会被自动保存在E分区建立的Mail文件夹。将来系统分区遭到破坏或重装系统,邮件不会有任何损失。在恢复了系统以后,将存储位置改为E分区建立的Mail文件夹,我们又可以看到以前的电子邮件了。
参考文献
[1]樊孝忠.计算机英语基础[M].北京:北京理工大学出版社,20-08.
微信电脑版客户端所需软件下载安装 第5篇
在电脑上安装微信省手机流量费: 还可以任意模拟卫星定位到国内 各个城市 乡村。去找到那里的附近的人—哈哈哈 很好玩!在电脑上可以使用微信自动摇一摇:不用手动操作.解放双手!
还可以用这个办法 发微信广告 加微信粉丝……
电脑上安装微信的软件请到微信论坛 下载:一:先获得下载地址
在本论坛注册一个用户
然后去推广赚取100个积分金钱 之后就可以得到下载地址;
(推广方法:发布你的推广链接,只要有一个人点击你的链接就能得到20积分,有5个人点击就能达到100积分,利用博客论坛发帖: QQ 群发送消息,在你的QQ空间分享转发本文)
二:安装
得到下载地址后---下载----解压后 里面包含有 四个 文件夹
按照 顺序依次 安装里面的文件(注意:windows xp 系统4个文件夹里的文件都得安装; win7 的系统 只需安装 第3和4 的文件夹的文件就可以)三:
模拟卫星定位软件的解压密码:加微信号 xiaohahe就能自动发送给你密码四:
自动摇一摇软件需要1000 个积分或者 你直接联系 QQ 250856189 购买:10 元 人民币
如果不想花钱买,就写一篇【网上下载的不算】 关于微信的小文章发帖发到我们的论坛上,【要求100--150 字左右,且文章里至少出现“微信” 5次---8次以上】 只要写得基本顺畅就可以,不要求文采有多好,我们审阅合格就给你 直接加1000 积分
基于客户的软件项目风险规避研究 第6篇
摘 要:软件项目开发成功率低是软件行业的共识,主要是因为在软件开发过程中众多的风险因素造成。文章拟从以客户为中心的软件开发思想,以客户为主导的角度研究软件项目风险的规避行为,降低软件项目的风险。
关键词:软件项目;以客户为中心;风险
中图分类号:F407.672 文献标识码:A文章编号:1006-8937(2009)24-0036-02
信息技术的发展促进了软件产业的飞速发展,使得软件产品在众多领域的应用越来越重要。然而,软件产品的开发成功率相对于其它工程项目产品要低得多,这主要是由于软件产品的特殊性造成的,软件产品的特殊性使得软件项目在开发过程中具有众多的风险因素,而且风险因素错综复杂。
从软件项目风险管理的研究成果来看,风险辨识和评估的研究比较丰富和深入,而软件项目风险因素的识别、评估的最终目的是为了能够制订科学的风险管理和控制方法,从而有效地进行软件项目风险管理。然而,如何在风险辨识与评估的基础上采取风险规避行为,文章从以客户为中心的软件开发思想出发,提出基于客户满意度的软件开发能够在一定程度上减少软件项目的风险,即在软件开发过程中,客户满意度越高软件项目成功的概率越大。
1全生命周期的客户风险
以客户为中心的软件项目开发思想是敏捷软件项目管理中的核心思想,时刻与客户保持合作关系,使得客户能参与到软件项目开发中。由于软件是一种特殊的逻辑产品,不具备实体的可见性,它是由经过智力劳动而产生出来,具有特殊物质的复杂事物,因此在软件开发过程中将有众多的不确定因素存在,如客户需求不断变化。采用以客户为中心的软件开发更适用于软件行业,Ilieva et al.(2004)等人在研究敏捷开发中发现:客户在软件开发过程中对开发进程监控,使得项目在签收时受到客户的高度评价,即项目成功。但是Tore Dyb与Torgeir Dings?yr(2008)指出客户在敏捷开发中表现出不持续性将对项目带来更大的风险[1]。
客户风险主要是客户对中间产品或最终产品的不满意,或客户的意见未被采纳或更改,造成产品最终无法满足客户的要求;客户对规划、原型和规格的审核决策周期比预期的长;客户提供的组件质量欠佳等。客户风险体现在软件项目生命周期中的各个阶段。
软件项目在其生命周期中,分为以下四个阶段:需求分析阶段、制定方案阶段、实施阶段与结束项目阶段。
①需求分析阶段。对于软件项目组织来说,该阶段需精确识别客户的真实需求,因此项目组织必需密切与客户沟通,在将收集到的信息加以汇总时对不明确之处反馈于客户,以期客户解答。此阶段中,若客户不予以配合或不完全表达其意思,则软件项目必定失败。项目组织在需求分析过程中,需要时时以客户为中心,使得客户能够顺利方便地参与到项目中,做好软件项目工作的第一阶段。因此,与客户的沟通程度、客户的参与程度将是客户风险在该阶段的体现。
②制定方案阶段。该阶段项目团队的主要任务就是与客户一起制定一个以前期明确的需求、双方的资源、项目开始实施的时间约定、项目费用限制等为基础的具有可操作性的项目计划,从本阶段开始争取客户全面参与项目的管理,需要双方共同考虑项目实施的具体计划落实和风险规避。
③实施项目阶段。此阶段为项目成功的主要阶段,伴随着项目工程的推进,在前两个阶段中不确定性的事件可能会成为该阶段的主要事件,客户在本阶段也会因为外界环境的变化而使得第一阶段中的需求发生改变,如客户所处公司的环境。此时项目团队应实时对客户满意度进行评估,实时了解客户的需求。在本阶段中,客户风险体现在原需求的改变、项目进度达不到客户需要、软件项目的成本、软件项目的质量(如软件界面设计)等。若此阶段项目团队不能与客户密切沟通与合作,客户风险将导致项目的夭折。
④结束项目阶段。此阶段也可以称为软件产品验收阶段,软件项目经理将软件产品交付客户使用。客户对软件产品的满意程度将直接决定是否签收该软件产品,如果客户对软件产品不满意,意味着软件产品的开发失败,修改软件产品将需要更多的成本与时间。因此,客户对产品的质量、成本控制、项目是否延时等问题都将成为影响客户满意度的因素。
2风险规避模型建立
在软件项目全生命周期中,客户风险时刻存在。为了达到客户满意度,采用一般风险管理中常用的规避风险的四个策略:“避免”、“转移”、“接受”、“遏制”和“深入探讨”。所谓“避免”策略是指通过改变产品设计或开发过程,避免或消除风险可能造成的严重后果。“转移”策略常用于保险分担或合同分担,风险出现的概率并没有因此而降低,但是降低了风险出现后某一方遭受损失的程度。“接受”策略指听任风险的自然发展,一方面不需付出风险控制成本,另一方面也没有消除风险可能的危害。“遏制”策略通常有两条途径,一条是加强高风险因素的薄弱环节,降低风险发生的概率;另一条是调整设计方案或管理方法,减轻风险出现后的影响后果。“深入探讨”策略是为掌握风险的具体特性而开展的各项活动,以便取得更多的信息,使风险决策更为科学和明智。
软件项目开发的过程中,软件项目团队与客户保持密切联系,共同处理风险。文章中采用这个四个策略的优先级顺序评估客户对软件项目风险处理的接受程度,达到客户的心理接受风险程度,即客户对软件项目的满意程度。
3 结语
在项目管理过程中,项目的三个主要控制要素:成本、质量、进度。这些要素是每个项目管理中不可获缺的,在软件项目中也不例外。在软件项目中,这三个要素在不同的阶段具有不同的权重,而且其中的任何一个要素的滞后都将带来客户的不满。
客户端软件 第7篇
关键词:VOD,客户端软件,流媒体流量均衡装置,ip filter driver hook
0引言
针对中小型园区网VOD应用中因网络带宽及点播服务器I/O带宽不足导致的系统阻塞问题, 作者前期的研究成果提出了一种新型网络设备流媒体流量均衡装置 (以下简称流量均衡装置) , 基于该装置的VOD方案通过在VOD系统中添加多个流量均衡装置, 从而减轻点播服务器和主干网络的负载, 解决系统阻塞问题[1]。
该方案依赖流量均衡装置内部的均衡策略, 通过各个单点设备之间的协同来实现全局流量均衡, 而由于每个单点设备只能获取对应区域的点播状况, 因此实现全局均衡则需要各个设备进行频繁且大量的信息交换, 增加了每个单点设备的负载, 也导致全局流量均衡收敛时间的延长, 并且新的流量均衡设备加入后, 需要一段时间才能融合到系统中, 这限制了该VOD优化方案的应用。
为解决该问题, 在此提出一种应用于该VOD方案的客户端软件, 前述的VOD应用方案在引入了该客户端软件后, 能进一步优化VOD应用结构, 提高运行效率, 增强该方案的实用性。
这里将分别对改进方案结构以及客户端软件的设计进行说明。
1改进方案结构
通常的VOD系统都配有Web服务器, 以提供节目列表[2], 原来基于流量均衡装置的VOD应用方案的点播需要Web服务器修改客户机上网页插件的属性, 使得用户的点播请求重定向到每个区域指定的流量均衡装置中, 再由流量均衡装置为之提供服务。由于目前VOD系统有若干种主流的点播软件方案, 用户可能使用Real player, Media player或QuickTime player等几种客户端中的一种[3]。该方式需要根据客户机上的不同点播软件提供不同的配置方式, 而实现全局流量均衡需要各个单点的流量均衡装置之间的交互来获知整个园区网的点播状况, 为了达到较快的全局均衡收敛速度, 这种信息交互的频率较高, 这给资源相对有限的流量均衡装置带来一定的额外负载。如果降低信息交互的频率, 则会导致收敛性能的降低。
改进的VOD应用方案主要是在点播的客户机上添加了一个与流量均衡装置配合的客户端软件, 该软件除了能实现将客户机的点播请求转发到某个流量均衡装置, 实现各种点播软件对流媒体流量均衡装置的透明使用外, 主要还提供一个额外的通信接口, 流量均衡装置可以通过该通信接口修改相应点播客户机的点播请求转发方向。在这种情况下, 全局流量均衡主要是通过将点播客户机的点播请求, 依据全局网络状况转发到最合适的流量均衡装置处而得到实现。
为了实现这个目的, 对VOD应用方案进行微调, 根据具体数量将网络中的流量均衡装置分为两级或者三级, 每一级的下一层流量均衡装置将所属区域的网络状况发到上一层的流量均衡装置中。最终汇总到一个事先指定的主控流量均衡装置中, 该流量均衡装置根据全局流量均衡策略以及实际网络状况控制所有点播客户机上客户端软件的点播转发方向, 如图1所示。
2客户端软件设计
该改进方案的关键在于客户端软件。客户端软件需要实现的最主要功能是将客户机的点播请求重定向到流量均衡装置中, 并且引导服务器将流媒体数据发送到流量均衡装置中。由于目前主流流媒体协议RTSP协议簇在发送流媒体数据前, 必须在服务器及客户端之间经过多次RTSP协商, 确定具体参数, 而后续的操作则根据RTSP协商的结果进行。如果在客户机对点播软件发起的RTSP协商过程进行干预时, 则完全可实现点播全过程的重定向。本文客户端软件的设计思想正是基于这一点。实现RTSP协商数据包的重定向实质是实现数据包的截获、修改和转发, 在客户端发起连接时, 从网络底层将请求数据包拦截, 并根据接收到的命令将其目的IP地址修改再发出去, 接收到回复包再进行反向的处理, 而这一切对于客户机的点播软件都是透明的。
由于目前VOD系统中的用户端以采用Windows操作系统的微机为主, 该客户端软件的设计面向Windows。在Windows下实现这些功能需要使用内核模式驱动程序[4]。目前适用于该客户端要求的可选内核模式驱动模式包括:微端口NIC 驱动程序 (Miniport NIC Drivers) 、中间层驱动程序 ( Intermediate Drivers) 、协议驱动程序 (Protocol Drivers) 以及过滤器钩子驱动程序 (IP Filter Driver Hook) 等[5,6,7]。相比较而言, 过滤器钩子驱动程序具有处理流程简单, 效率较高的特点[8], 并且从功能上能很好地满足要求。该方案采用过滤器钩子驱动程序进行设计。
过滤器钩子驱动程序依赖于Microsoft 提供的IP 协议过滤驱动程序, 在Windows 2000/XP 系统中, System 32drivers目录下的ipfltdrv.sys是Microsoft 提供的IP 协议过滤驱动程序, 它允许用户注册自己的IP 数据包处理函数, 即过滤器钩子函数[9]。本机所有进出的IP包都经操作系统的IP过滤驱动程序处理, 而IP过滤驱动程序调用用户定义的过滤器钩子函数进行处理, 确定是丢弃或者传送。
该客户端软件由处于内核态的过滤器钩子驱动程序和处于用户态的应用程序组成, 应用程序包括接收主控流量均衡装置命令的监听线程和配合驱动程序工作的服务线程, 如图2所示。
过滤器钩子驱动程序中设计主要是进行过滤钩子函数的编写。该客户端软件过滤器钩子驱动程序的钩子函数完成的工作主要是比较本机进出的数据包是否符合设定的转发方向设置, 如果符合则拦截, 进行改写后传送, 具体流程如图3所示。
过滤器钩子驱动程序工作在IP层, 只能改写IP包的内容, 对于本机发送到其他机器的包, 由于其MAC地址已经设定好, 只改写IP地址不能实现数据包的重定向。为解决该问题, 驱动程序修改目标IP为本机IP, 端口号为约定传送端口后传送数据包。由于基于原始套接字能实现自由收发TCP包的功能[10]。应用程序中的服务线程采用原始套接字方式与驱动程序配合进行二次处理:在约定的传送端口进行监听, 获取驱动程序发送的需要, 重定向的IP包, 根据设定的规则改写对应IP地址及端口号, 再通过原始套接字转发至相应的流量均衡装置, 其流程图如图4所示。
命令监听线程等待主控流量均衡装置发送的命令, 一旦接收到命令, 则通过修改程序的配置来实现转发方向的更改, 具体流程如图5所示。
3结语
本文在前期的研究成果即基于流媒体流量均衡装置的VOD方案基础上, 提出一种改进方法。在点播的用户计算机上添加一个客户端软件, 减少了流量均衡装置间的信息交互, 降低了流量均衡装置的负载, 并且该软件直接对用户发送的点播请求网络包进行拦截和改写, 能与各种不同的VOD客户端配合使用, 具有较高的灵活性和适用性, 从而拓展了该新型VOD方案的应用前景。
参考文献
[1]杨震伦, 蒋亚军, 黄中伟.基于MIPS的流媒体流量均衡设备的设计[J].计算机应用与软件, 2008 (11) :125-127.
[2]胡斌.基于Web流媒体系统的设计与实现[J].现代电子技术, 2009, 32 (2) :111-113.
[3]薛元昕, 韩维.论流媒体技术及流媒体服务器的建立[J].现代电子技术, 2004, 27 (16) :28-31.
[4]王兰英, 居锦武.Windows内核模式驱动程序运行环境的分析[J].微计算机信息, 2005 (23) :201-202.
[5]廖永红, 李洛, 黄战.基于Windows 200x的WDM体系的IP过滤实现技术[J].计算机工程与设计, 2007, 22 (11) :5 425-5 427.
[6]裴林, 曹斌.基于NDIS中间层的网络数据包拦截技术及实现[J].计算机安全, 2008 (12) :13-15.
[7]李明欣, 佘堃.基于NDIS中间驱动的入侵检测[J].计算机工程与设计, 2007 (1) :51-52.
[8]吕建军, 罗万伯, 陈蓉, 等.基于过滤器钩子驱动的数据包过滤研究与实现[J].四川大学学报:自然科学版, 2005, 41 (4) :754-757.
[9]莫向阳.基于Filter-Hook Drive设计个人防火墙[J].广东技术师范学院学报, 2007 (10) :18-20.
客户端软件 第8篇
人们不禁要问, 为什么360、腾讯、百度等业界巨头要纷纷进军电脑管家类的软件领域?同时, 由于一些公司之间发生口水仗, 还引起了消费者的担心与质疑, 那么如何才能保证此类软件的公正性呢?
三大公司纷纷争当电脑管家
多数使用电脑的人都知道360安全卫士, 其拥有查杀木马、清理插件、修复漏洞、电脑体检等多种功能, 并设计了“木马防火墙”功能, 依靠抢先侦测和云端鉴别, 可全面、智能地拦截各类木马, 保护用户的帐号、隐私等重要信息。不得不承认, 360安全卫士推出后的确获得了大量的安装量。然而, 最近, 360公司迎来了另两位竞争对手。
一个对手是腾讯QQ电脑管家。今年5月31日, 腾讯QQ实验室发布了QQ医生3.3升级版QQ电脑管家, 包含云查杀木马、系统漏洞修补、实时防护、清理插件等多项安全防护功能, 这被业界认为是其与360展开正面竞争的信号, 因为无论是在安全、系统维护方面, 还是在软件管理软件, QQ电脑管家都与360安全卫士很类似。
另一个对手是百度电脑管家。10月上旬, 百度的电脑管家悄然上线, 百度电脑管家V1.0 beta版已经有安装包可以下载, 目前, 百度电脑管家集软件下载、软件管理于一体, 界面主要按钮只有装机必备、软件升级、软件卸载三个, 分别提供推介软件及安装管理、已有软件升级管理、软件卸载与电脑优化维护三方面的内容。看起来, 百度电脑管家也与360的部分功能相类似。
在三家公司都拥有类似的电脑管家软件的同时, 还有相关的几件事伴随着发生, 也值得关注。
一件事是360推出360隐私保护器引发与腾讯之间的口水仗。9月27日, 360突然推出360隐私保护器, 该产品“第一版”唯一的监控对象就是QQ软件。360公司总裁齐向东解释称, “近期用户对QQ未经提示就扫描全盘、访问和聊天无关文件的反馈最集中。另外, 微软Process Monitor、Comodo防火墙、QQ侦探工具都发现了这个情况。”对此, 腾讯回应称:QQ软件绝对没有窥探用户隐私的行为, 也绝不涉及任何用户隐私的泄露。于是, 整个国庆期间360与腾讯一直争吵不断。甚至, 最近360还发布了《用户隐私保护白皮书》, 向用户详细阐述360旗下每款软件乃至每个按钮的工作原理。
另一件事是业界一度传闻百度电脑管家与金山有合作的事得到印证。目前, 百度电脑管家由金山快快提供“云安装”功能, 另金山系软件如金山毒霸、金山快快游戏世界、金山卫士均在百度电脑管家中获得重点推荐。特别是在安全杀毒这一板块, 百度电脑管家一共推荐了66款安全产品, 其中排在前面的11项均来自金山公司。
为何竞相开发电脑管家软件?
在360安全卫士、腾讯QQ电脑管家、百度电脑管家及360隐私保护器纷纷亮相的同时, 在相关公司之间的明争暗斗之间, 人们不得不要问, 为何它们都这么热衷于电脑管家类软件的开发?笔者分析主要原因有四个方面。
其一, 为争夺电脑客户端类软件市场。国内互联网公司都热衷于通过客户端来进一步控制用户资源, 而通过客户端软件成功的很多, 自然客户端类软件就成了被争夺的市场。除了输入法、浏览器、播放器及下载工具外, 电脑管家的客户端的热度在360身上体现了出来, 自然这种热度会引起较多厂商竞相进入此类市场。
其二, 为争夺更多的用户及用户流量。在争夺到电脑客户端市场份额后, 其自然迎来的就是更多的用户及流量。既然360能在电脑管家类软件市场上兴风作浪, 那么拥有国内即时通讯用户数量最多的腾讯及拥有国内搜索用户数量最多的百度自然认为, 这一领域他们更有能力做, 而且, 反过来还会促进其用户数量及已有用户忠诚度的增加。
其三, 为争夺软件评测与推荐的主动权。从360安全卫士、腾讯QQ电脑管家、百度电脑管家及360隐私保护器等相关软件看, 在帮助电脑用户管理电脑的同时, 往往都有根据评测结果进行软件推荐的功能。显然, 谁开发的电脑管家软件, 谁自然就拥有评测标准, 谁就拥有推荐软件的主动权, 而推荐软件过程中, 显然会涉及相关合作企业的商业利益。
其四, 为掌握更多的用户信息及操作习惯。在给出评测结果之前, 电脑管家软件必须要对用户的电脑进行检测 (不论是用户的主动检测还是软件的自动检测) , 而只要有检测, 软件的服务器端就会获取用户的信息及用户的操作习惯。虽然不能随便怀疑电脑管家软件运营方一定会利用这些信息干些什么事, 但至少这些信息随时在电脑管家软件运营商掌握之下, 厂商们往往会认为这些信息具有很大的潜在价值。
电脑管家软件潜规则受质疑
在厂商们纷纷推出电脑管家类软件的同时, 广大电脑用户则是“别有一番滋味在心头”, 这是因为虽然这些软件对用户平常电脑使用起到了一定的管理作用, 但是却有几个问题使越来越多的用户心生担忧。
首先, 用户的电脑是否会被监控?没有一个电脑用户不担心自己机器内的东西被监控。既然各家电脑管家软件都拥有检测功能, 那么用户的信息与操作历史都自然会被电脑软件所获知。相关公司之间的口水仗更引起了消费者的担心与质疑, 这难怪会引起电脑用户的担忧:过去是担心黑客入侵, 现在对电脑管家软件也担心了。
其次, 用户电脑的哪些操作与信息会被监控?虽然从技术原理上讲, 任何一台联网的电脑的所有信息及操作都可以被检测并记录, 但是从心理上讲, 许多用户并不能接收这种讲法。甚至, 许多用户通过他们的口水仗已经知道这些软件会“扫描全盘、访问和聊天无关文件”, 他们就更担心到底自己电脑中哪些信息被检测了?虽然检测与监控是两回事, 但用户们也明白, 只要能检测, 那么就意味着可以监控。
再次, 用户哪些被检测的操作与信息会被上传?虽然电脑管家软件多数只是检测用户电脑中存在的问题, 但是这些检测的操作与信息会不会被上传到电脑管家软件服务器端, 还是被许多用户所担心。而且, 由于这种服务器端的操作具有隐蔽性, 即使将其中的原理与步骤都告诉用户, 也会存在用户不完全理解的情况。更何况用户还担心的是, 上传与否并没有严格的界定与第三方的监管。
此外, 用户的个人信息及隐私信息是否会被泄漏?既然用户的个人信息及隐私可以被电脑管家软件获得, 并可能会被上传到电脑管家软件的服务器端, 那么就难保这些信息不会被泄漏。即使是银行、电信公司及医院都出现过信息泄漏案例, 谁有能保证电脑管家软件运营方不会有类似的情况发生。更何况, 在现在风行的“精准营销”背景下, 这些信息难保会不被电脑管家软件运营方及其他公司利用。
如何保证电脑管家软件的公正性?
在相关厂商陆续推出电脑管家类软件并产生部分摩擦的同时, 如果站在第三方的中立角度来看待各类软件厂商及电脑用户的综合利益看, 我们不得不深思, 在电脑管家类软件逐步增多的同时, 如何能更有效地保证电脑管家软件的公正性。
一是测评技术与方法的公开性。最近, 360已经发布了《用户隐私保护白皮书》, 其中除了“自曝”软件工作原理之外, 《白皮书》中还首次提出了健康软件的“两不一必须”三项规范, 并呼吁互联网同业者加以补充和完善:一、软件行为不应越界。软件的功能不同, 在电脑系统中应各司其职, 其行为必须有边界;二、软件不能上传用户个人的隐私信息, 遇到用户正常使用功能必须上传部分信息时, 明码上传不加密, 让用户监督;三、软件行为必须明示用户, 尊重用户的知情权和选择权。虽然有人质疑360的这些说法是否“冠冕堂皇”, 但至少从字面上讲是为了体现企业自律精神, 体现电脑管家类软件在测评技术与方法上的公开性, 这一点对电脑管家软件厂商而言是非常需要的。
二是测评过程的公开与公平性。既然要对用户的电脑进行检测并给出相应的评测结果, 那么就必须保证测评过程的公开与公平性。如果说上述360《白皮书》提出了一些规范, 属于工作原理公开, 但是具体的规范必须严格遵照并落实执行才有意义, 否则只是口号或沦为一纸空文。
三是推荐软件时的公正性。在检测出用户电脑的问题之后, 推荐软件更需要显示公正性, 这方面已经引起一些公司的注意。例如, 虽然百度电脑管家一共推荐了66款安全产品, 其中排在前面的11项均来自金山公司, 但是竞争对手360公司的安全产品 (如360安全卫士、360杀毒等) 也同样受到推荐, 只是这四款产品排在了最后4项。如果百度能再大度些, 将这些软件的推荐顺序做出合理的排队, 则会显得更公正。
客户端软件 第9篇
i GMAS系统是2007年开始建设, 在2011年9月份, 在联合国卫星导航国际委员会第六届大会上, 中国政府的创意提案得到了参会代表的一致赞同, 并且成立了监测评估国际工作组。目前系统的建设现状是已经建成十个站, 包括中国境内有八个, 另外南北极各建一个站, 同时全球还有二十五个跟踪站正在建设之中。通过全球布站, 把跟踪站上的数据发到数据中心, 汇集到分析中心经过数据处理, 对空间星座卫星状态进行检测评估, 对空间导航的信号质量进行监测评估等。
一般的FTP客户端软件可用于上传、下载数据文件[1], 但需要大量的人工操作, 如寻找相应目录, 并将数据分别上传至相应目录下或从目录下多个文件中逐个选择进行下载, 工作异常繁琐。因此, 本文根据i GMAS数据文件类型及其存放特点, 研制了专门上传i GMAS数据的客户端软件, 提高了上传工作的智能化水平, 降低了对操作人员的技术要求。
1 i GMAS产品及存放规则分析
1.1 产品类型
目前, i GMAS定期向用户提供以下两类数据[2]:一是i GMAS全球跟踪站的观测数据;二是i GMAS的产品, 包括: (1) BDS卫星的最终星历、快速星历、超快速星历; (2) BDS卫星钟的信息等, 本文的数据传输软件主要针对跟踪站观测数据的自动上传。
1.2 产品命名及存放规则
i GMAS提供的所有文件均可在其FTP服务器上找到, 它们都以Z格式的压缩文件存放。数据类型文件存放在/pub/data/i GMAS/BDT路径下, 此路径下同一年的文件存放在一个文件夹中, 文件夹名为年份, 每一年的文件夹下按照年积日分列子文件夹, 年积日文件夹下按照小时分列子文件夹, 小时子文件夹下按照高频和小时文件分别进行数据的存放, 具体存放规则见图1。
图图11 ii GGMMAASS数数据据存存放放规规则则
i GMAS跟踪站观测数据文件均采用RINEX格式, 每个文件都由文件头和数据记录两部分组成。命名规则为:aaaabbbc.yyt。其中:aaaa表示测站名;bbb表示年积日;c表示一天内的文件序号;yy表示年号;t表示文件类型。文件类型具体包含以下几种:a表示多径数据、d表示观测值文件, e表示电离层数据、g表示GLONASS星历、i表示完好性数据、j表示抗干扰数据、k表示健康数据、l表示GALION星历、m表示气象数据、n表示GPS星历、r表示BDS星历、t表示时差数据。
2 软件设计
2.1 设计思路
该软件需要将接收机采集到的数据, 按照RINEX格式要求, 将数据打包, 自动上传至i GMAS相应目录。同时该软件还需显示上传进度、上传速度等信息方便用户了解上传情况。上传完成后要能生成上传日志, 方便用户查询上传数据的状态。此外, 从软件的健壮性考虑, 该软件还应该具有判断运行过程中的错误并自动显示的能力[3]。
根据上述要求, 该软件必须做到: (1) 能够访问i GMAS提供的FTP服务器, 自动寻找指定的文件并下载该文件; (2) 能够提示运行过程中各种错误; (3) 需要具备一个人性化的人机交互界面, 提高智能化水平, 使得用户不局限于专业人员。
2.2 软件实现
本软件的开发环境为Linux Cent OS 6.4, 选择QT 4.8为开发平台。该软件可分为两部分, 第一部分为获取接收机数据, 对数据进行解析、打包生成上传文件名和上传路径, 第二部分为网络传输, 将数据上传至i GMAS数据中心。
2.2.1 文件名与上传地址生成
由第2节可知, 文件名的生成, 关键是将接收机数据中的周内秒, 转换成BDS周和年积日后, 根据i GMAS数据中心的相应地址可以很方便的生成需上传的文件名filename。由filename可直接生成上传地址p。
p=“pub”+“data”+“i GMAS”+“BDT”+年+年积日+“highrate”+小时+时刻+filename;//高频文件
p=“pub”+“data”+“i GMAS”+“BDT”+年+年积日+“hourly”+小时+filename;//小时文件
2.2.2 上传功能实现
QT类库是一个跨平台的面向对象的C++类库, 目前主要用于Linux下的开发。QT的高度面向对象和模块化的特征能够将开发人员从繁琐中解脱了出来, 并提高开发的效率和程序的可靠性。因此本软件采用了QT作为工具开发FTP客户端。
QT对象间通讯类似于Microsoft MFC的消息映射和事件循环, 他的对象间通讯采用的是signal-slot机制, signal就好像是事件, 而slot则是响应事件的方法, 如果需要实现对象间的通讯, 只需要把一个对象的slot和另外一个对象的signal“连接起来”就可以实现“事件驱动”。
通信实际开发的主要步骤为:
1) 获取i GMAS数据中心登陆信息:选择需要上传的数据中心, 并查找到登陆用户名及密码;
2) 初始化网络连接状态:使用QT中的QFtp函数建立FTP客户端, 并创建相应的槽函数;
3) 获取网络连接状态:查看网络状态主要看步骤2中建立的槽函数的响应情况, 如果有响应值并返回为TRUE, 则表示网络握手成功, 否则返回FALSE;
4) 数据上传:第2节提到默认数据上传时间是每一小时的00、15、30和45分钟, 在每一个规定时间下, 调用QFtp的类函数将数据put到相应的路径下。
5) 获取上传数据状态:调用QFtp的类函数对步骤4上传的文件进行状态查询, 获取上传文件的进度, 如果返回TRUE, 则表示上传完成。
2.3 图形界面设计
该软件的图形界面主要实现以下功能: (1) 提供接收机配置信息, 让用户可以设置接收机的登录信息; (2) 提供数据中心配置信息, 让用户可以设置数据中心的登录信息; (3) 显示运行过程中出现的各种错误; (4) 显示上传速度与进度。
3 结果分析
以2015年1月1日, i GMAS跟踪站xia1的站点为例, 统计一个月上传至数据中心的数据并与本地产生的数据进行对比, 具体如图3所示:
根据i GMAS对跟踪站上传数据的要求, A、E、J、T四个数据类型的文件仅需上传小时文件, 每天产生文件的数量为24个;其余八个数据类型的文件同时具备高频和小时文件, 每天产生文件的数量为120个。由于伽利略卫星过少, 每天观测到的时长不固定, 因此L文件数据类型一般比较少, 数据量不固定。图3中蓝色表示的是本地计算机产生的数据量, 红色表示上传至数据中心的数据量, 可以看出蓝色和红色均重叠, 因此表明上传数据正常。
4 结束语
通过测试结果比较, 可以证明软件在网络正常时可以按需的上传数据文件, 保证上传工作正常进行。本软件基本能满足i GMAS系统对跟踪站数据传输的需求, 并且能实现无人值守式运行, 能充分保证跟踪站设备的运行。
参考文献
[1]龚明, 王毅.远程数据传输的研究[J].现代通信技术, 2005 (5) :52-55.
[2]陈欣, 杨博, 李爱荣.IGS数据下载方法[J].软件导刊, 2013 (5) :147-148.
客户端软件 第10篇
嵌入式Web服务器是非常实用的网络服务器,因为在一个体积很小的设备内把视频压缩和Web功能集中到其中,并且即插即用方式连入局域网,电缆的使用也节省掉了,安装方便。用户用浏览器即可观看无需安装任何硬件设备。服务器应用软件由CGI程序,Web服务器,内存管理和调度模块,嵌入式数据库Mini SQL的视频调度和传输模块,摄像机控制模块,和其他一些重要模块。具体来讲其主要包含以下几个部分 :
(1)CGI程序与Web服务器
需要进行信息交换的Web服务器其作用是通过监控客户端的浏览器软件与HTTP协议来实现的,同时它能够完成对所监视的客户端进行访问控制,过滤监控端的请求和控制信息。Boa Web服务器是本系统选择了的嵌入式系统服务器。Boa的主要特点有 :单任务,动态Web技术,CGI技术,开源,高性能。
(2)实现视频传输与模块调度
服务器模块和视频传输模可以通过错误处理和拥塞控制模式,达到实时反馈、网络状态监控终端的效果。
系统在使用IP多播模式下,首先采取特定的服务器到客户端的视频数据传输的要求,使得发送数量的份数和发送的数据包的目的地址大大减少,可以减少发送的数据网络量,减少视频数据流的传输带宽,减少服务器负担,保证高品质的服务。其次,系统使用的RTP / UDP / IP网络传输协议模型,充分考虑实时视频传输的质量保证,传输网络还可以采取一定的拥塞控制和差错控制策略解决在同一时间的不确定性的情况。
(3)Mini SQL嵌入式数据库
Mini SQL是比较成熟可靠的嵌入式数据库,通过该嵌入式数据库本系统主要使用了其对于用户的基本信息的存储、存储与查询该网络监控机器人的视频文件的基本功能。作为后端嵌入式数据库Mini SQL,架构结构紧凑,占用系统资源少,非常适合在嵌入式Linux系统中使用。
(4)摄像机控制模块
摄像头的控制是通过摄像机控制模块,建立和监控服务器端良好的数据互连。在监测端,用户通过浏览器发送摄像机控制命令时,Web服务器接收和处理的控制命令,由控制模块发送到摄像机的一个CGI程序,并转换成相应的摄像机的控制命令,从而实现摄像机的远程控制。
2 C# 程序的设计与编写
本文开发设计了一个基于C# 的视频监控系统,实现远程控制PTZ和镜头。系统主要实现了网络监控机器人的用户登录、车灯控制、语音对讲、运动控制、云台控制和机械手臂控制。
(1) 用户登录
用户登录模块主要根据用户输入的远程服务器地址、网关、用户名和密码,判断用户是否能登录到系统中。在系统登录时,调用了ARM板中的登录验证函数CHCNet SDK.NET_DVR_Login_V30.
(2) 车灯控制
车灯控制 采用了Pelco-D协议,Pelco-D是在PTZ控制中最常用的协议,由于采用的解码器可以识别常用的协议,所以解码器对于Pelco-D的解析是没有任何问题的。在实现控制车灯的过程中,首先通过互联网发送控制指令,通过ARM板将指令转换为PTZ命令,通过串口转发给网络监控机器人,网络监控机器人接受指令后,完成指定动作,具体工作图如图1.1所示。
在具体实现过程中,通过远程发送网络命令,根据ARM板中预先定义的云台控制命令,重新进行了分配,具体分配如表1.1所示。
在实现车灯控制的过程中,首先通过调用ARM板中的CHCNet SDK.NET_DVR_PTZControl函数实现远程发送命令。其次,在按钮事件中直接调用PTZ发送命令的方法即可,
(3) 语音对讲
由于ARM板中提供 了远程语 音对讲功能,并且在ARM板中提供 了语音转发 功能调用 的接口NET_DVR_Start Voice Com_MR_V30,通过该接口启动与设备的语音转发(此时已建立与设备之间的连接,等待发送数据)。
(4) 运动控制
运动控制主要是控制网络监控机器人的运动方向,仍然采用PTZ命令来控制,在按钮事件中直接调用PTZ发送命令的方法即可。
(5) 云台控制
云台控制主要是实现网络监控机器人上面的监控探头的角度旋转,仍然采用PTZ命令来控制。
(6) 机械手臂控制
机械手臂控制也采用了PTZ命令来控制,将机械手背操作的宏定义直接传入Ptz Control方法即可实现相应的操作。
(7) 视频采集及图像抓取
在网络监控机器人上安装了一个视频探头,用来采集视频,视频通过网络传输到远程客户端。在实现过程中,先创建了NET_DVR_CLIENTINFO对象,然后调用NET_DVR_Real Play_V30方法获取 远程视频。
通过以上几个功能的实现,最终实现了远程网络监控机器人的控制,远程视频采集和图像抓取以及机械手臂的控制。
3 结语
客户端软件 第11篇
会上,IBM还分享了蓝色巨人在2013年全球软件市场上取得的不俗业绩:Gartner数据显示IBM连续13年蝉联应用基础架构和中间件市场冠军。Gartner报告[Gartner《2013年全球软件市场份额报告》]同时显示在11个市场门类中,IBM有8个排名全球第一,包括企业级中间件等门类以及移动、社交及云计算相关领域。不仅如此,IBM在大数据分析、移动等领域的表现也可圈可点:2013年IBM大数据分析领域营收高达160亿美金[IBM年度报告],在企业社交、移动、安全及漏洞管理三大市场占据全球第一的位置。
IBM全球副总裁兼大中华区软件集团总经理胡世忠先生指出:“今天,消费者和企业同处在一个瞬息万变的环境中,企业面临着从以客户为中心’向客户导向型企业’的转型。在大中华区,我们将着力推进软件在大数据分析、云计算、企业移动与社交领域的投入,利用软件技术的创新智慧,助力企业打造洞察分析体系,实现智慧的转型。”
首席高管全面拥抱客户影响力,依托新技术展开转型之旅
全球每日产生25亿GB数据、使用社交媒体的用户已经达到了16亿、2015年全球互联的移动智能设备总数超过1万亿身处互联互通的时代,消费者产生的海量信息和期望建立开放沟通平台的要求,占据了企业中各职能部门首席高管们的首要位置。对此,IBM《2013年IBM全球首席高管调研报告》指出,技术已成为推动企业变革最重要的外部力量,而以社交商务、移动计算、大数据分析和云计算为代表的新兴技术将推动变革进程。
由社交、移动和云推动实现的企业互动参与体系,将帮助企业收集到极具价值的数据,与之相较的传统业务体系数据则以更加结构化的数据推动企业业务的发展。越来越多的企业已经意识到,将企业的参与互动体系与传统业务体系数据结合建立洞察分析体系,将产生全新的直达行动的业务洞察,提供极高的业务价值,并可将其用于零售、金融服务和医疗等多个领域,推动行业创新和商业变革。由此可见,在向“客户导向型企业”转型的过程中,建立洞察分析体系,对与企业来讲意义重大。
IBM聚焦核心三大技术大力推进转型进程
软件在推动洞察分析体系转型、建设“客户导向型”企业过程中发挥的关键作用,它将助力企业把数据作为竞争优势的新基础、充分利用云作为业务增长的引擎、促进以人为中心的交流互动以发现新的盈利渠道。为此,IBM软件集团将在2014年继续为企业提供智慧转型的关键能力:
在大数据与分析领域,IBM已充分展现了在该市场的领先优势。IBM拥有40000个全球成功实践、另据权威调研机构Wikibon近期报告[《大数据供应商收益与市场预测》]表明IBM在70多家大数据供应商中脱颖而出,连续两年大数据市场占有率第一。2014年,IBM将持续升级在大数据方面的投入,一方面继续深入在金融、电信、医疗、零售、制造等各行业的实践,另一方面增强大数据与分析与云计算、移动、社交等热点趋势的融合,实现认知分析与大数据应用的不断融合。
在云计算领域,IBM构建了最为全面和丰富的云产品及解决方案,为企业提供100多套业界领先的SaaS产品,以满足企业开展包括营销等在内的各项工作。另据了解,IBM还投资10亿美元构建BlueMix平台,并将在2014年投资12亿美元拓展SoftLayer在全球的数据中心建设。
不仅如此,IBM还专注于移动、社交和安全领域。IBM拥有4300项移动、社交和安全技术专利,遍布世界各地的25个安全实验室和10个安全运营中心,并通过收购12家安全技术公司、8家移动营销的公司,为企业开展安全和个性化的互动参与提供先进的解决方案和专业知识。
IBM全球副总裁兼IBM中国开发中心总经理王阳博士介绍说:“针对目前不同行业对快速增长的大数据分析、云计算、移动与社交技术的需求,IBM中国开发中心将不断加大研发力度,利用技术实践所积累的丰富经验,通过在大数据分析、云计算、社交及移动等以软件为主导的领域的投入,帮助企业支持当前参与互动体系的商业和技术创新,从而推动洞察分析体系的建设,从容应对向客户导向型企业’转型的趋势。”
IBM携手合作伙伴构建软件核心竞争力
在客户主导权不断上升的当下,IBM不仅将以软件能力为主导的创新技术帮助客户向企业智慧转型,还将根据市场变化和客户需求制定更具针对性的渠道支持举措,如与广大中国合作伙伴更加紧密地合作、完善合作伙伴的服务能力,助其自身价值的全面提升,构建“渠道增值”的生态系统。在2014年,IBM将通过“蜂潮行动”继续深入区域市场的渠道覆盖;还将从客户需求出发,推动高价值解决方案在行业的渗入;源源不断地针对8大重点行业推出可扩展解决方案,拓展创新技术为基础的全新业务模式。
同时,IBM软件集团与研发团队、咨询服务部门的协作也将进一步把先进的软件能力带给客户,共同解决业务线客户关注的问题,为客户提供高价值服务。此外,IBM还将更加贴近地方需求,通过智慧城市、云计算、大数据等领域的创新,支持地方成长与战略发展,助力中国城镇化建设。