由于MSAODV路由协议是AODV路由协议的改进演化,所以与AODV路由协议帧类似,MSAODV路由协议也包括RR卫Q协议帧和RREP协议帧,但不包含RERR协议帧。不包含RERR协议帧会导致MSAODV协议在路由维护和错误处理上功能欠缺,但可以通过其他方法来弥补这个缺陷。
1 RREQ协议帧格式
2 RREP协议帧格式
4 MSAODV路由协议的操作
由于MSAODV路由协议是对AODV协议的改进演化,所以MSAODV路由协议的操作与AODV路由协议的操作大同小异,为了清晰起见,对MSAODV协议的操作做一详细的介绍还是有必要的。
4.1产生路由请求
无线网络中某个节点需要和网络中的另一个节点通信时,他首先会查找自己的路由表,以确定是否有通往该目的节点的有效路由,如果有的话,从对应的目的节点路由表项中取出下一跳节点地址,然后构造数据包并把该数据包发往下一节点,如果不存在通往目的节点的路由,那么该节点就要发起一次路由请求。
4.2处理和转发路由请求
处理和转发路由请求是针对源节点和目的节点之间的中间节点而言。这些中间节点可能不止一个,在他们收到源节点广播的RREQ路由请求帧之后,必需处理和转发该路由请求帧。
在某个中间节点接收到源节点广播或者由其他节点转发的RREQ请求帧后,他首先会判定该RREQ请求帧是否己经被成功接收过,判断的依据就是源节点的IP地址和广播ID号,如果发现由源节点和广播ID唯一标志的RREQ请求帧是新的,也就是没收到过,就会根据此RREQ请求帧更新自己路由表中对应的项。很显然,该路由表项的目的节点IP字段就是是源节点IP地址,下一跳IP地址就是发送此RREQ请求帧的节点IP地址,有可能是源节点也有可能是另一个中间节点。接下来此中间节点判断该RREQ请求帧的目的IP是不是就是自己,如果是就回送一个RREP回应帧,不是就转发该RREQ请求帧。