基于虚拟MODEM的RemoteAccessService(RAS)拨号技术应用

上传人:ji****81 文档编号:252352633 上传时间:2022-02-10 格式:DOCX 页数:9 大小:93.44KB
返回 下载 相关 举报
基于虚拟MODEM的RemoteAccessService(RAS)拨号技术应用_第1页
第1页 / 共9页
基于虚拟MODEM的RemoteAccessService(RAS)拨号技术应用_第2页
第2页 / 共9页
基于虚拟MODEM的RemoteAccessService(RAS)拨号技术应用_第3页
第3页 / 共9页
基于虚拟MODEM的RemoteAccessService(RAS)拨号技术应用_第4页
第4页 / 共9页
亲,该文档总共9页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《基于虚拟MODEM的RemoteAccessService(RAS)拨号技术应用》由会员分享,可在线阅读,更多相关《基于虚拟MODEM的RemoteAccessService(RAS)拨号技术应用(9页珍藏版)》请在金锄头文库上搜索。

1、 基于虚拟MODEM的RemoteAccessService(RAS)拨号技术应用 张 凤/重庆邮电大学 通信学院(重庆400065)摘 要:TD-SCDMA网络具有高速数据传输性能,这样TD-SCDMA用户通过电脑能和ISDN(lntegrated ServicesDigital Network综合服务数字网)用户一样快速地上网浏览,实现高速移动上网。本文详细叙述了在Windows XP及VC+6.0平台下,利用RAS API和虚拟调制解调器(modem)实现RAS拨号连接的设计方法及过程,最后给出了该技术在某无线上网卡管理系统软件中的实际应用。关键词:虚拟modem RAS API RAS

2、技术TP391.9:B:1673-1131(2010)01- 018-03引言网络的应用得到迅速发展和日益普及,虽然通过ISDN(lntcgrated Scrvices Digital Network综合服务数字网)能很好实现远程数据的传输,但受限于客观条件,不能实现移动上网,而TD-SCDMA网络能弥补这个缺陷,当前使用TD-SCDMA技术的无线上网卡能实现高速移动上网,这是ISDN网络所不具备的。但使用这种无线上网卡还需要通过调制解调器(modem)进行拨号,才能访问网络,这就需要专用的拨号软件通过MODEM拨号实现连接网络,在实际应用中,出于成本上的考虑以及使用方便,可以采用虚拟的调制解

3、调器(modem)和RAS API拨号的方式相结合来实现远程数据的传输。本文对如何开发用户系统专用的使用虚拟的调制解调器的RAS拨号连接技术进行了探讨,介绍了自动安装和检测虚拟调制解调器(modem)的方法与实现。一、迈程访问服务(RAS)远程访问服务(Remote Access Service)利用公共交换电话网络(PSTN)把远离局域网(LAN)的计算机连接到局域网上来,远程计算机(RAS客户机)可以获得LAN用户的所有服务和权限,并访问、共享该LAN上的资源1。远程访问服务器提供了拨号网络(DUN)连接与虚拟专用网络(VPN)连接两种不同的远程访问连接方式。拨号网络(DUN)连接就是远程

4、客户机利用一个连接了电话线的调制解调器,通过拨号的方式呼叫远程计算机并建立连接。虚拟专用网络(VPN)是远程客户机使用基于TCP/IP协议的专门隧道协议(如PPTP. L2TP)通过虚拟专用网络服务器的虚拟端口,穿越其他网络(如Internet),实现一种逻辑上的直接连接l21。二、RAS拨号连接实现过程RAS拨号连接是在Windows XP环境下,在VC+6.0平台下,使用Win32 API的RAS AP1通过modem来实现远程访问服务的。要实现RAS拨号,首先应正确安装调制解调器,获取远程通讯服务器的一个登陆网络帐号2。本方案设计为自动安装和检测modem,不需要用户去安装虚拟调制解调器

5、,可以直接拨号访问网络。下面介绍设计过程及方法。2.1虚拟MODEM的自动安装与检测虚拟modem都有对应的数据端口,只有安装在对应的数据端口上modem才能正常使用,本方案设计把modem安装在USB转虚拟的串口上,在系统中可能存在多个串口,首先查找设备所使用的串口,查找串口是通过查找注册表来获得。检查到串口是可用之后,还要检查在该串口是否已经安装modem如果没有modem设备,就在该串口安装modem。安装modem使用Windows DDK中的UpdateDriverForPlugAndPlayDevices函数,由这个函数可以实现设备驱动的安装。Modem的安装与检测过程如图1所示:

6、在modem驱动装好后,在系统中就会有个虚拟的modem设备modem设备是使用AT命令进行数据交互的,要使该modem能正常的拨号,还需要给modem设备写入一条AT命令格式为AT+CGDCONT=1,”IP”,”alca”,“alca”为无线网络提供的APN名,无线网络不同该值也不同。这条AT命令必须写入注册表。作为modem设备的一个属性值。这个值设置正确RAS才能通过modem拨号,实现远程数据传输。2.2拨号流程与实现方法拨号使用RAS API函数,这是Win32 API (Windows32位应用程序接口)的一个组成部分。它将整个拨号网络视为RAS电话簿(Phonebook)而每一

7、个连接视为电话簿条目 (PhonebookEntry)3。调用RasCreatePhonebookEntry创建新的连接,调用RasDial进行拨号,调用RasEnumEntries获得当前系统已有的所有连接,调用RasHangUp可以断开当前连接,调用其它的RAS函数还可以分别实现获取或设置连接参数等功能。2.2.1拨号流程实现拨号连接功能步骤如图2所示:在拨号前首先需要创建一个连接。该连接需要绑定一个modem,然后为该连接配置拨号时需要的参数,根据拨号参数(例如呼叫的电话号码、建立远程访问的用户名、建立远程访问的密码、网络指定的APN等)进行拨号。拨号成功后可以进行断开连接操作4。2.2

8、.2实现方法1异步拨号方式方案设计使用异步拨号方式,采用异步拨号方式的优点是在拨号时不会发生UI界面阻塞现象,拨号调用API的RasDial函数。DWORD RasDial(LPRASDIALEXTENSIONSDiaIExtensions,LPCTSTR PhonebookPath,LPRASDIALPARAMS RasDiaIParams,DWORD NotifierType,LPVOID NotifierLPHRASCONN pRasConn)RasDialExtensions和PhonebookPath:这两个参数一般设为NULL。RasDiaIParams参数指向一个RASDIALP

9、ARAMS结构,该结构包含以下几个成员:dwSize:应设定为sizeof (RASDIALPARAMS):szEntryName指定要建立的连接:szPhoneNumber为ISP号码SzCaIIBackNumber,szDomain设为空字符串SzUserNameszPassword:登录用户名和密码:DwNotifierType指定是由窗口还是由回调函数来处理确认消息:dwNotifier:指定处理确认消息的窗口或回调函数。也可设为NULL。pRasConn指向一个类型为HRASCONN的变量。在调用RasDial前必须指定为NULL,RasDial若成功返回,则将RAS连接的句柄存放于

10、它所指向的变量中。通过此句柄来断开连接。异步拨号方式的实现是在函数RasDial中设定回调函数,参数对应dwNotif´icr,这个参数指定处理消息的回调函数,可以在程序中定义一个全局的函数,作为拨号时调用,具体的操作如下所示:RasDial(NULL,NULL,& rdParams,OL.( RASDIA LFUNC)RasDiaIFunc, &hRasConn):RasDiaIFunc即是定义为处理拨号过程的回调函数。要得到当前的拨号状态,在回调函数中处理,回调函数实现如下:Void RasDialFunc (WPA RAM wParam, LPARAM lParam)swit

11、ch(int wParam)case RASCSConnected:break;case RASCSDisconnected:break;该函数是以消息的方式实现的,RAS事件发生后就会发送对应的消息到指定窗口。这里只列出了连接成功和断开连接两种状态,限于篇幅,还有其他的一些状态没有列出。2断开拨号连接断开一个连接调用API的RasHangUp函数。RasHangUp(hRasConn):Sleep(3000);hRasConn是在拨号连接时所产生的一个连接的句柄,在断开连接时需要等待一段时间,否则计算机有可能无法正常关闭串口。导致下一次无法拨号,只有重新启动Windows才能解决5。有时挂断

12、会出现挂断失败的情况,本方案设计挂断拨号连接后再使用函数RasEnumConnections扫描当前系统中所有的连接,检测当前的连接是否已经挂断,如果当前连接还没有挂断,则再调用RasHangUp函数去执行挂断操作,从而保证了挂断连接的可靠性。以上所设计的方法在Windows Xp,Visual(1+6.0下得到验证,达到预期设计要求。三、应用实例高速便利的无线上网越来越应用广泛,本方案实现了使用某无线上网卡进行远程数据访问,可以随时随地的进行诸如收发Emall.网页浏览、下载资料等。图3是应用在某无线上网卡管理系统软件中的一个上网管理子操作界面。上网管理是某无线上网卡管理软件中的一个功能模块

13、,功能是对网络数据进行监控与管理,包括保存历史数据,显示网络流量和实时下载速率还可以实现用户数据管理。配置拨号连接参数。软件运行时,首先检测系统中是否在设备端口安装modem,检测到modem后则显示调制解调器正常,如果没有检测到需要的调制解调器,则会在设备端口自动安装调制解调器,在TD-SCDMA网络正常后,就可以建立拨号连接,在拨号时会显示当前的拨号状态,连接成功后,就可以访问Internet。四、结论本文给出了在Windows XP及VC+6O平台下,利用RAS API通过虚拟调制解调器(modem)实现RAS拨号的全过程,并将该技术应用到某无线上网卡管理系统软件中,可以实现高速移动访问

14、因特网络,在整个实际应用中取得了较好的应用效果。参考文献1陈坚,孙志月1998MODEM通信编程技术西安:西安电子科技大学出版社2杨宗长基于RAS的VPN连接的软件实现电力系统通信,2005,1-2:47:503王成福,基于Modem的远程通信系统设计,电力系统通信,2008,9-2:56-59.4熊伟,丁宇征,孙娜,钟毅芳用RAS拨号管理DLL管理拨入信息,计算机应用,2003,2-2:107-1095余荣道,王华伟,在PowerBuilder应用中实现RAS拨号,微型电脑应用,2002,10-2: 60-626何璐,陈和平,肖刚基于VC+的的RAS拨号连接技术及其应用,微计算机信息,2008,6-1: 2632-263作者简介张凤(1983-),女,山东济宁人,重庆邮电人学硕士研究生,丰要研究方向为个人移动通信。 -全文完-

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号