1 概述
在实际网络中,许多不在同一地点的局域网之间需要交互信息,为实现专用无线网(数据链)与局域网之间的互连,而研制的具备下述功能的网关。首先,实现IP级互连:即某一局域网的IP数据报经过网关的转换后可以通过无线网传到另一网关,再经转换后,IP数据报可到达另一局域网的相应的主机上,如图1所示;其次,实现连接认证。当网关启动时,与另一网关进行连接认证,当认证通过时,才建立IP连接。
实验采用自主开发的软件,工作在Windows 9x操作系统下,在局域网中获得所有的IP数据报,通过判断、修改Ethernet头信息,将IP数据报送至串口,通过连接在串口的无线设备发送出去,目的网络的网关串口上连接的无线设备接收到后,通过网关转发到目的计算机。从功能上说,网关计算机实现的是路由器的功能。
2 路由器的原理与作用
2.1 路由器原理
路由器(Router)是一种典型的网络层设备。它在两个局域网之间按IP数据报传输数据,在OSI / RM之中被称为中介系统,完成网络层中继或第三层中继的任务。路由器具有判断网络地址和选择路径的功能,它能在多网络互联环境中,建立灵活的连接,可用完全不同的数据分组和介质访问方法连接各种子网,路由器只接受源站或其他路由器的信息,它不关心各子网使用的硬件设备,但要求运行与网络层协议相一致的软件。路由器分本地路由器和远程路由器,本地路由器是用来连接网络传输介质的,如光纤、同轴电缆、双绞线;远程路由器是用来连接远程传输介质,并要求相应的设备,如电话线要配调制解调器,无线要通过无线接收机、发射机。
路由器的主要工作就是为经过路由器的每个数据帧寻找一条最佳传输路径,并将该数据有效地传送到目的站点。由此可见,选择最佳路径的策略即路由算法是路由器的关键所在。为了完成这项工作,在路由器中保存着各种传输路径的相关数据--路由表(Routing Table),供路由选择时使用。路由表中保存着子网的标志信息、网上路由器的个数和下一个路由器的名字等内容。路由表又分为以下两种:
1. 静态路由表
由系统管理员事先设置好固定的路由表称之为静态(Static)路由表,一般是在系统安装时就根据网络的配置情况预先设定的,它不会随未来网络结构的改变而改变。
2. 动态路由表
动态路由表是路由器根据网络系统的运行情况而根据一定的路由选择算法自动调整的路由表。路由器根据路由协议(Routing Protocol)提供的功能,自动学习和记忆网络运行情况,在需要时自动计算数据传输的最佳路径。
2.2 路由器功能
路由器的功能主要有以下五个方面:
1. 网络间截获发送到远地网段的报文,起转发的作用。
2. 选择最合理的路由,引导通信。
3. 路由器在转发报文的过程中,为了便于在网络间传送报文,按照预定的规则把大的数据包分解成适当大小的数据包,到达目的地后再把分解的数据包包装成原有形式。
4. 多协议的路由器可以连接使用不同通信协议的网络段,作为不同通信协议网络段通信连接的平台。
5. 路由器的主要任务是把通信引导到目的地网络,然后到达特定的节点站地址。后一个功能是通过网络地址分解完成的。
由上述可知,根据本项目的具体要求,所设计的无线网关功能上实现了路由器的一部分作用,但并不是一个完整意义上的路由器。在设计和实际编程实现的过程中参照了现有路由器的一些实现方法,但比作为商品的路由器较为简单。
3 系统设计与实现
3.1 系统结构
系统结构如图1所示。
对LAN而言,无线数据链是隐含在网关内的协议实体,它对LAN1和LAN2都是透明的。对外部而言,半网关1和半网关2是一个整体网关,它完成与IP有关的信息处理,路由选择和LAN内部物理寻址。两个LAN间的IP数据报传输处理过程如图2所示。这里网关主要解决转发决策、时延处理和地址转换等。