0 引言
在对等网络运行过程中,不同的节点之间采取直接连接的方式,实现了数据与服务的交换;由于具有灵活性、开放性等特征,对等网络已成为当前互联网应用的重要形式之一,但是也要考虑到,该系统同时还有开放性、动态性以及匿名性特征,那么就给更多用户的恶意入侵带来可乘之机,安全隐患不容忽视。如何构建完善、有效的机制抑制不良入侵行为,有效规避安全风险,是当前对等网络应用需思考的话题。
1 局域网环境下的对等安全通信技术及其应用
1.1 基于网卡NIC的编程控制
用户直接通过网卡NIC中的寄存器实现编程控制过程,可以正确发送或者接收数据分组。以NE2000为例,是16位的适用于ISA总线中的网卡,其功能主要包括连接器、接口电路、站地址ProM、缓冲RAM、DP8390、DP8391和DP8392等若干部分。其中,以DP8390作为重要的网络接口控制电路NIC,可以适应IEEE802.3标准,内部包括微机对网卡的状态控制、检测和收发数据的缓冲。
另外,有关网卡中缓冲RAM的读写控制,用户可以通过控制NE2000网卡通信中的命令寄存器编程而实现,该项技术简单、可操作,不需要复杂的网络软件支撑,具有良好的使用性能。但是,编程不具备针对性,移植性能较差,其适用范围有限。
1.2 基于NETBios的编程控制
主要利用IBM公司的NETBios或者仿真系统,实现实时性的数据服务。NETBios作为网络编程的接口模式,一般处于会话层和表示层之间的位置,接口程序和较低一层之间的活动呈隔离状态;在NETBios IAN适配器中,通过网络的多个名称来区分,每一个网络名包括16个字符;但是注意名称的第一个字符不能为2进制或者符号“※”;对于NETBios来说,其自身并不具备路由的功能,但是可以依赖“TCP/IP”的路由特征,将NETBios的名称解释为IP地址形式,以此实现远程控制与访问目标;但是利用NETBios不能和互联网实现连接,这主要由于其名字的单一制限制。在利用NETBios进行通信过程中,首先由程序发出监听的信号,对名字表中的某个特定名字进行访问;其次构建一个虚电路,以此搭建数据发送与接收的通道,也就是面向连接的通信方法。
另外,应用NETBios还可以通过普通股数据包或者广播数据包的形式,完成无连接通信过程。但是采用该种通信方法,不具备差错控制功能,效率相对较低;但是编程过程较为简单、易实现;但是在网络繁忙的状态下,可能出错率较高。
1.3 基于微机网络的编程控制
利用微机网络技术,实现实时通信的编程接口运行,构建实时对等安全通信的运行环境。在1.NovEll的网络操作系统中,给用户提供了多元化的服务支持,其中涉及的Ipx协议,提供了网络层的数据报接口,实现和服务器、工作站等设备的连接,支持数据的发送与接收。在Ipx数据报中,主要包括包头和数据两大部分,其中包头通过分组的长度、传输手段等实行控制;其中也包括分组的类型、分组的目的、节点地址等;在数据部分,应控制在546字节范围内;Ipx协议则包括工作点节点地址、网络号、应用程序等构成,这也是发送或者接收数据的重要通道。通过事件控制块的作用,Ipx可以实现数据的侦听、发送、调度以及管理等功能,同时也可以发送或者接收ECB,二者添加的内容不同,但是结构相同;遵循“先入先出”的原则,在Ipx中对ECB队列实行有序管理,完成整个通信过程;其中,Ipx提供了主动性的服务,如数据包的发送、数据包的打开、关闭或者取消事件等。
2 互联网环境下的对等安全通信技术及其应用
当前,WinSock已经在Windows xx和Windows NT中实现集成作用,并且支持互联网运行过程的TCP/IP协议实现;利用Socket完成通信过程,一般包括以下两种形式:其一,面向连接流。在两个应用通信程序之间如果需要构建虚拟化的连接关系,就需要使用连接号,而套接字Socket实际上也就是通过连接号构成的管道;在数据分组中,虽然不带有目的性的地址,但是收发数据过程的内容和顺序保持一致。也就是说,在流方式作用下,以TCP协议运行为主,可较好地保障通信的有序发送和到达;同时,在数据中进行了重发与校验,进一步增强数据文件的安全性、可靠性。其二,采取无连接的方式完成数据报过程。对于每一个数据来说,在分组时都需要附加目的地址,但是不能确保数据传输过程的安全、完整或者保持数据正确、顺序无误等。可见,在数据报中,以UDP协议为主。在TCP/IP应用过程中,在启动客户机进程之前就切入服务器进程,直到客户机的响应结束为止,其流程如图2所示。
在Winsock程序中,提供了约为100个通信函数,但是在流程图中却不能一一列出;对于个别函数来说,如接收连接Accept()或者寻求连接Connect()中,在执行时可能遇到系统繁忙或者通信信道被占用现象,造成数据不能及时返回;为了更好地支持非阻塞通信过程,在Winsock程序中,可以实现异步选择函数的过程,利用某一函数注册网络事件,如果发现接收的缓冲区为满员状态,则可以发送数据;当发生请求连接事件之后,应用程序就可以接收相关信息,但是在使用应用程序Windows Socket s DLL之前,需要启动函数WSAstartup();如果应用程序已经终止,就需要调用WSACleanup()函数,即可在DLL中完成注销;如果当前运行的线程出现操作错误,需要调用WSAGetLastError()函数,当调用失败之后,可以返回错误的代码。
在TCP/IP协议以及Winsock编程接口中,二者实现对等通信程序,可采用当前较为普遍的Java语言实现,在Java中提供了较为强大的网络支持体制,而API接口可以面向的类形式中,提供了不同层次的网络支持体系,一种为通过Socket实现的客户机/服务器通信模式;另一种为通过URL实现的网络资源类库。在Java程序中,通过面向对象的形式,在用户中提供了不受平台干扰的使用接口。在客户机与服务器之间,各个通信组件具有相通性,一般都由“地址+端口号”的方法识别,每个地址最多保留65535个端口,不通过的服务器程序提供了不同的端口服务模式,如果客户机需要运用该程序,就需要保持相关的端口号,一般保留0-1024作为网络系统端口,1024以上的任意端口则由程序员自行挑选。
3 对等网络的安全管理技术
在实行网络通信时,涉及到链路加密、端对端加密等形式,
其中端对端加密状态下,被保护数据的中间节点往往不通过明文的方式出现;如果在传输层下端实行加密,那么网络层的数据分组以密文形式为主,通信子网不能通过密文方式传输。因此,若想真正保障数据的安全性、可靠性,必须加强对传输层的控制与管理。
由于IPX/SPX或者TCP/IP协议属于网络层,因此数据的安全性受到一定威胁;而NETbios则处于会话层与表示层之间,如果采取面向连接的通信方法,则可更好地提高数据传送安全性、有效性;同时SPX与TCP协议为传输层,可确保通信数据的分组、有序排列,同时重发机制、校验机制也可发挥纠错作用;相较而言,在协议的编程接口中,可提高安全保障作用。但是网络通信的安全问题也不容忽视。在NETBios网络卡的永久性节点名中,以通信工作站变现方法为主,如果黑客恶意获取授权并进行窃听,将威胁数据的安全性。
4 结束语
随着我国计算机与网络通信技术的不断发展与完善,各种安全技术的研究力度加大并正式投入使用,包括路由器加密技术、数据加密技术、防火墙技术、身份验证技术、数字签名技术等。这些技术的开发与应用,和网络协议密切相关,而采用JJCP系统,奠定在TCP/IP协议基础上,采取Java编程的数据通信完成加密和解密过程,该工作站之间的文件传送畅通,可较好地保障安全性能、操作简单,具有广泛的应用价值和发展空间。
参考文献
[1] 熊继平.对等网络中路由机制及关键技术研究[D].中国科学技术大学:通信与信息系统,2006.
.通信技术,2010(9).
[3] 胡若,钱省三.信息安全中语义安全性定义及其对等性证明[J].计算机科学,2011(7).
[4] 金丽,朱浩.基于可信对等的分布式入侵检测通信框架设计[J].计算机工程与设计,2010(5).
[5] 李致远,王汝传.移动P2P网络安全拓扑构造协议[J].通信学报,2010(10).
[6] 方小东.P2P网络中安全即时通信技术的研究与实现[J].大连理工大学:计算机技术,2007.
[7] 许佳,冯登国,苏璞睿.基于动态对等网层次结构的网络预警模型研究[J].计算机研究与发展,2010(9).
[8] 陆峰,郑康锋.构建风险敏感的对等网安全信任模型[J].北京邮电大学学报,2010(33).
作者简介:
向敏(1979-),男,重庆人,海军指挥自动化工作站;研究方向:网络技术与信息安全。
刘福强(1976-),男,辽宁鞍山人, 海军装备研究院;研究方向: 网络及网络安全。