CN102227151B - Mixing grid routing protocol - Google Patents
Mixing grid routing protocol Download PDFInfo
- Publication number
- CN102227151B CN102227151B CN 201110210204 CN201110210204A CN102227151B CN 102227151 B CN102227151 B CN 102227151B CN 201110210204 CN201110210204 CN 201110210204 CN 201110210204 A CN201110210204 A CN 201110210204A CN 102227151 B CN102227151 B CN 102227151B
- Authority
- CN
- China
- Prior art keywords
- node
- route
- request information
- message
- route request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明描述了一种在无线网格网中由源节点和目的节点之间的节点通过使用媒体访问控制地址在源节点和目的节点之间建立路由来选择路由的方法。还描述了节点使用媒体访问控制地址来选择路由以加入无线网格网中的多播组的一种方法。
The invention describes a method for selecting a route by a node between a source node and a destination node in a wireless mesh network by using a media access control address to establish a route between the source node and the destination node. Also described is a method for a node to use a media access control address to select a route to join a multicast group in a wireless mesh network.
Description
本申请是2005年3月10日提交的中国专利申请No.200580048992.4的发明名称为“混合网格路由选择协议”的分案申请。This application is a divisional application of the Chinese patent application No. 200580048992.4 filed on March 10, 2005, whose invention title is "Hybrid Mesh Routing Protocol".
技术领域 technical field
本发明涉及一种用于自动拓扑学习和路径选择的路由选择机制。具体地,本发明涉及基于媒体访问控制地址在无线局域网格网中确定路由。The present invention relates to a routing mechanism for automatic topology learning and path selection. In particular, the invention relates to routing in a wireless local area mesh network based on media access control addresses.
背景技术 Background technique
无线局域网格网,也称为基于无线LAN的ad hoc网络,包括通过无线电链路互连并直接或间接地相互通信的两个或多个节点。该网络可以通过入口连接到互联网或其他网络。在无线局域网格网中,已经使用IP层路由选择协议来发现从源节点到目的节点的路由。IP层ad hoc路由选择协议基于IP地址。然而,诸如WLAN接入点之类的一些设备基于IEEE 802.11媒体访问控制(MAC)地址转发数据分组,并只操作于链路层(层2)。此外,因为数据分组不需要经过IP层(层3),所以在层2转发数据通常比在IP层快。A wireless local area mesh network, also known as a wireless LAN-based ad hoc network, consists of two or more nodes interconnected by radio links and communicating with each other directly or indirectly. This network can be connected to the Internet or other networks through portals. In WLANs, IP layer routing protocols have been used to discover routes from source nodes to destination nodes. The IP layer ad hoc routing protocol is based on IP addresses. However, some devices, such as WLAN access points, forward data packets based on IEEE 802.11 Media Access Control (MAC) addresses and operate only at the link layer (layer 2). Furthermore, because data packets do not need to go through the IP layer (layer 3), forwarding data at layer 2 is generally faster than at the IP layer.
Ad Hoc按需距离矢量(AODV)协议是一种操作于IP层的ad hoc路由选择协议。该协议可以支持单播和多播路由发现。路由是基于按需发现的。当源想要向目的节点发送分组时,如果源不具有到目的节点的路由并需要该路由,则源通过在网络上广播路由请求消息来发现到目的地的路由。该消息包括源节点和目的节点的IP地址以及其他必要信息。目的节点或具有到目的节点的有效路由的节点通过向源节点发送路由应答来应答此请求。路由请求和路由应答消息在用于转发和反向路径/路由的中间节点中的每一个中建立路由选择表。如果在给定的路由生命期内不使用该路由,则所建立的路由到期。按需路由选择减少了由于网络拓扑变化(例如,节点移动和故障)的失效路由的影响以及保持不用路由的需要。然而,因为源节点需要在能够发送数据之前建立路由,所以引入了路由发现延迟。源节点还需要在路由发现期间对数据进行缓冲。The Ad Hoc On-demand Distance Vector (AODV) protocol is an ad hoc routing protocol operating on the IP layer. The protocol can support unicast and multicast route discovery. Routing is based on discovery on demand. When a source wants to send a packet to a destination node, if the source does not have a route to the destination node and needs it, the source discovers the route to the destination by broadcasting a route request message on the network. The message includes the IP addresses of the source node and the destination node and other necessary information. The destination node, or a node with a valid route to the destination node, responds to this request by sending a route reply to the source node. The Route Request and Route Reply messages build routing tables in each of the intermediate nodes for the forward and reverse paths/routes. An established route expires if the route is not used within the given route lifetime. On-demand routing reduces the impact of failed routes due to network topology changes (eg, node movement and failures) and the need to keep unused routes. However, a route discovery delay is introduced because the source node needs to establish a route before being able to send data. The source node also needs to buffer data during route discovery.
目的序列距离矢量(DSDV)是针对无线局域网格网的先应式路由选择协议。网络中的节点交换路由选择控制消息,使得每个节点处的路由选择表都包括到无线局域网格网中的所有目的节点的信息。由中间节点沿着路径基于路由选择表将数据分组从源节点转发到目的节点。为了保持有效路径,并且避免由于链路/节点故障和网络拓扑变换而导致的路由选择环路,每个节点不仅周期地传输路由更新,而且在重要的新信息可用时立即广播该更新。虽然DSDV允许使用层2的MAC地址或层3的IP地址来转发分组,并且不存在路由发现延迟,但是因为遍布网络的路由选择消息广播,这导致了相对高的路由选择开销。尤其是在网络中的节点较快地移动以及网络拓扑结构频繁变化时,将网络容量的大部分用于保持路由选择信息是当前的。此外,由于处理和电池限制或其他原因,一些节点可能无法转发源自其他节点的数据分组。然而,上述协议假设每个节点都同意基于请求向其他节点转播数据分组,并且不考虑非转发节点。Destination Sequence Distance Vector (DSDV) is a proactive routing protocol for WLAN mesh networks. Nodes in the network exchange routing control messages so that the routing table at each node includes information to all destination nodes in the wireless local area mesh network. The data packets are forwarded along the path by the intermediate nodes from the source node to the destination node based on the routing table. To maintain valid paths, and avoid routing loops due to link/node failures and network topology changes, each node not only transmits routing updates periodically, but broadcasts them as soon as important new information becomes available. While DSDV allows packets to be forwarded using either a layer 2 MAC address or a layer 3 IP address with no route discovery delay, this results in relatively high routing overhead because of the broadcast of routing messages throughout the network. Especially when the nodes in the network move relatively quickly and the network topology changes frequently, it is current to devote a large part of the network capacity to maintaining routing information. Furthermore, due to processing and battery constraints or other reasons, some nodes may not be able to forward data packets originating from other nodes. However, the above protocol assumes that each node agrees to rebroadcast data packets to other nodes upon request, and does not consider non-forwarding nodes.
在无线局域网格网中,两个或多个节点通过IEEE 802.11链路互连。每个节点都具有唯一的IEEE 802.11媒体访问控制(MAC)地址。当源节点向目的节点发送数据分组时,源节点需要知道从源节点到目的节点的路径/路由。In a WLAN, two or more nodes are interconnected via IEEE 802.11 links. Each node has a unique IEEE 802.11 Media Access Control (MAC) address. When a source node sends a data packet to a destination node, the source node needs to know the path/route from the source node to the destination node.
所需要的是基于目的MAC地址来发现并建立路径的路由选择机制。本发明所解决的问题是,在无线局域网格网中源节点如何基于目的节点的IEEE 802.11MAC地址来发现并建立到目的节点的路径。What is needed is a routing mechanism to discover and establish paths based on the destination MAC address. The problem solved by the present invention is how to discover and establish the path to the destination node based on the IEEE 802.11 MAC address of the destination node in the wireless local area mesh network by the source node.
发明内容 Contents of the invention
无线LAN(WLAN)网格网包括通过IEEE 802.11链路互连的两个或多个节点。每个节点将参与针对自动拓扑学习和路径选择的路由选择协议。本发明提供了一种用于基于IEEE 802.11媒体访问控制(MAC)地址来发现路由的机制。该机制同时支持按需路由发现和先应式路由建立。该机制可以发现并建立路由以满足实时多媒体应用的服务质量(QoS)需求,并保持这种路由。此外,该机制支持非转发节点。A wireless LAN (WLAN) mesh network consists of two or more nodes interconnected by IEEE 802.11 links. Each node will participate in a routing protocol for automatic topology learning and path selection. The present invention provides a mechanism for discovering routes based on IEEE 802.11 Media Access Control (MAC) addresses. This mechanism supports both on-demand route discovery and proactive route establishment. This mechanism can discover and establish routes to meet the quality of service (QoS) requirements of real-time multimedia applications, and maintain such routes. Additionally, the mechanism supports non-forwarding nodes.
描述了一种在无线网格网中由源节点和目的节点之间的节点通过使用媒体访问控制地址在源节点和目的节点之间建立路由来选择路由的方法。还描述了节点用以通过使用媒体访问控制地址在所述节点和多播组之间建立路由来选择路由以加入无线网格网中的多播组的一种方法。在这两种情况中,可以通过使用按需路由选择或先应式路由选择来建立所建立的路由。尽管在无线局域网格网方面描述这里所描述的本发明时,但是在其中建立路由的网路并不局限于无线局域网格网,而可以是任何形式的无线网格网。具有代理服务器的接入点可以加入无线网格网。站点与接入点相关联,但站点并非无线网格网的成员,因此通过接入点发生与站点的通信,并且该通信对于所关联的站点是透明的。A method is described in which a node between a source node and a destination node selects a route by using a media access control address to establish a route between the source node and the destination node in a wireless mesh network. Also described is a method by which a node selects a route to join a multicast group in a wireless mesh network by establishing a route between the node and the multicast group using a media access control address. In both cases, the established routes can be established by using on-demand routing or proactive routing. Although the present invention described herein is described in terms of a wireless local area mesh network, the network in which routing is established is not limited to a wireless local area mesh network, but may be any form of wireless mesh network. Access points with proxy servers can join the wireless mesh. A station is associated with an access point, but the station is not a member of the wireless mesh, so communication with the station occurs through the access point and is transparent to the associated station.
附图说明 Description of drawings
当结合附图理解以下细节描述时,可以最好地理解本发明。附图包括下面简要描述的以下图示:The present invention is best understood from the following detailed description when read in conjunction with the accompanying drawings. The accompanying drawings include the following illustrations briefly described below:
图1描述了示出以路由请求(RREQ)消息对网格网的泛洪以及反向路径建立的无线局域网格网。Figure 1 depicts a wireless local area mesh network showing flooding of the mesh network with route request (RREQ) messages and reverse path establishment.
图2描述了示出路由应答(RREP)消息的单播和前向路径建立的无线局域网格网。Figure 2 depicts a wireless local area mesh network showing unicast of Route Reply (RREP) messages and forward path establishment.
图3A描述了示出用于到RANN消息发起者的路由的先应式建立的路由宣告(RANN)消息的泛洪的无线局域网格网。3A depicts a wireless local area mesh network showing flooding of route announcement (RANN) messages for proactive establishment of routes to the originator of the RANN message.
图3B描述了示出源节点发送无偿RREP消息以建立到源节点的反向路由的无线局域网格网。3B depicts a wireless local area mesh network showing a source node sending a gratuitous RREP message to establish a reverse route to the source node.
图4是示出了节点按需和先应式地建立路由,以及根据本发明的原理处理路由选择控制消息的方法的图示。Fig. 4 is a diagram illustrating a method for nodes to establish routes on demand and proactively, and to process routing control messages in accordance with the principles of the present invention.
图5描述了具有多个关联站点的无线局域网格接入点。Figure 5 depicts a WLAN mesh access point with multiple associated stations.
图6是示出了根据本发明的无线局域网格接入点的示意图。FIG. 6 is a schematic diagram showing a WLAN access point according to the present invention.
图7A示出了新节点以请求其加入多播组的路由请求(RREQ)消息对网格网的泛洪。Figure 7A shows the flooding of a mesh network by a new node with a route request (RREQ) message requesting it to join a multicast group.
图7B描述了通过不同多播树成员发送回路由请求(RREQ)消息的发起者的路由应答(RREP)消息。Figure 7B depicts a Route Reply (RREP) message sent back to the originator of a Route Request (RREQ) message through different multicast tree members.
图7C示出了传输路由激活消息的路由请求(RREQ)消息的发起者。FIG. 7C shows the originator of a Route Request (RREQ) message transmitting a Route Activate message.
图7D示出了已添加到多播组的新节点。Figure 7D shows a new node that has been added to the multicast group.
图8A示出了多播叶节点如何退出/离开多播组。Figure 8A shows how a multicast leaf node exits/leaves a multicast group.
图8B示出了修剪之后的多播树。Figure 8B shows the multicast tree after pruning.
图9A示出了具有断开链路的多播树。Figure 9A shows a multicast tree with broken links.
图9B描述了下流节点尝试为断开的链路设置旁路。Figure 9B depicts a downstream node attempting to bypass a broken link.
图9C示出了下流节点从有资格的多播树成员处接收路由应答(RREP)消息。Figure 9C shows downstream nodes receiving Route Reply (RREP) messages from eligible multicast tree members.
图9D示出了下流节点激活新的链路。Figure 9D shows a downstream node activating a new link.
图9E描述了为断开的链路设置旁路的新多播树。Figure 9E depicts a new multicast tree that bypasses broken links.
具体实施方式 Detailed ways
本发明执行层2的路由选择功能,因此可以基于IEEE 802.11 MAC地址将分组从源节点传输并转发到目的节点。本发明同时支持按需路由选择和先应式路由选择。此外,一些节点只能发送或接收数据,但由于处理和电池限制或其他原因而不能转发源自其他节点的数据。本发明可以处理这些非转发节点。可以将本发明的路由选择机制用于客户端-服务器应用配置/拓扑、对等应用配置/拓扑、以及混合应用配置/拓扑。The present invention performs layer 2 routing functions, so packets can be transmitted and forwarded from source nodes to destination nodes based on IEEE 802.11 MAC addresses. The invention supports on-demand routing and proactive routing at the same time. Also, some nodes can only send or receive data, but cannot forward data originating from other nodes due to processing and battery constraints or other reasons. The present invention can handle these non-forwarding nodes. The routing mechanism of the present invention can be used for client-server application configurations/topologies, peer-to-peer application configurations/topologies, and hybrid application configurations/topologies.
混合网格按需路由选择与IP层路由选择协议AODV相似,都是基于路由请求和路由应答消息。对于层2的混合网络按需路由选择,当源节点想要向一些目的节点发送分组时,源节点检查其用于路由的路由选择表。如果存在有效路由,则源节点将分组转发给路由选择表中所指定的针对此目的节点的下一跳。如果不存在有效路由,则源节点通过广播路由请求(RREQ)消息发起路由发现。不同于AODV,RREQ消息包括具有序列号和可选的层3信息的发起者IEEE 802.11 MAC地址(不是IP地址),以及具有最新知道的目的序列号和针对此目的节点的可选层3信息的目的节点MAC地址(不是IP地址)。RREQ消息还包括消息ID、路由度量、使用期限(TTL)和路由生命期。在发起路由请求之前,RREQ消息将使自身序列号递增。Hybrid grid on-demand routing is similar to IP layer routing protocol AODV, both based on routing request and routing response messages. For layer 2 hybrid network on-demand routing, when a source node wants to send a packet to some destination nodes, the source node checks its routing table for routing. If a valid route exists, the source node forwards the packet to the next hop for this destination node specified in the routing table. If there is no valid route, the source node initiates route discovery by broadcasting a route request (RREQ) message. Unlike AODV, the RREQ message includes the originator IEEE 802.11 MAC address (not an IP address) with a sequence number and optional layer 3 information, and the last known destination sequence number and optional layer 3 information for this destination node Destination node MAC address (not IP address). The RREQ message also includes a message ID, route metric, time to live (TTL) and route lifetime. Before initiating a routing request, the RREQ message will increment its own sequence number.
通过广播RREQ消息或诸如以下将要描述的RANN消息之类的其他网格路由选择控制消息,IEEE 802.11广播MAC地址可以用作所传输的网格路由选择控制消息的目的地址。可选方案是分配用于泛洪网格路由选择控制消息(网络路由选择控制组地址)的专用IEEE 802.11多播MAC地址。此地址指定了所有网格节点。网格节点接收指向此网格路由选择控制组地址的消息。非网格节点可以不接收指向此网格路由选择控制组地址的消息。The IEEE 802.11 broadcast MAC address can be used as the destination address of the transmitted mesh routing control messages by broadcasting RREQ messages or other mesh routing control messages such as the RANN message to be described below. An alternative is to assign a dedicated IEEE 802.11 multicast MAC address for flooding Mesh Routing Control messages (Network Routing Control Group Address). This address specifies all grid nodes. Mesh nodes receive messages directed to this mesh routing control group address. Non-mesh nodes may not receive messages directed to this mesh routing control group address.
参照描述了无线局域网格网的图1,节点105是源节点,节点110是目的节点。所有的其他节点115是潜在的/可能的中间节点,它们是可以通过其在源节点105和目的节点110之间传递消息/分组/数据的节点。基于所选的路由/路径,确定用于从源节点向目的节点传输内容的特定单元的中间节点115的集合。源节点105和目的节点110带纹理或阴影,以便将它们与潜在的/可能的中间节点115区分开。应注意的是,在另一个实例中,现在(图1)作为源和目的节点的节点可以是此实例中的中间节点,而其他节点变成源和目的节点。在图1中,源节点105使用路由请求(RREQ)消息来泛洪无线局域网格网。基于该路由请求消息建立反向路径。Referring to Figure 1 which depicts a wireless local area mesh network,
节点一旦接收到RREQ消息,则检查发起者地址和消息ED,以察看以前是否曾见过这个RREQ消息。如果这是第一RREQ消息,则节点通过增加从其接收RREQ消息的节点和该节点本身之间的链路成本来更新度量域,然后在它的路由选择表中建立到该发起者的反向路由。如果该节点是目的节点,或者如果节点具有到目的地的未到期的有效路由,并且该目的节点的序列号至少如RREQ消息中所表示的一样大,则该节点通过将路由应答(RREP)消息单播回发起者来进行响应。否则,该节点以新的度量传播RREQ消息。如果这不是第一RREQ消息,则该节点通过增加从其接收RREQ消息的节点和该节点之间的链路成本来更新到发起者的度量域。如果新度量小于在节点的路由选择表中所记录的度量,则该节点更新反向路由。否则,则丢弃该RREQ消息。如果该节点满足上述要求,则使用RREP消息来应答发起者。否则该节点以新的反向路由度量来传播RREQ消息。将反向路径/路由用于将RREP消息发送回RREQ消息的发起者以建立前向路径,此外还用于源节点和目的节点之间的双向通信。Once a node receives a RREQ message, it checks the originator address and message ED to see if it has seen this RREQ message before. If this is the first RREQ message, the node updates the metric field by increasing the link cost between the node it received the RREQ message from and the node itself, and then establishes in its routing table the reverse routing. If the node is a destination node, or if the node has an unexpired valid route to the destination, and the sequence number of the destination node is at least as large as indicated in the RREQ message, the node sends a route reply (RREP) The message is unicast back to the originator to respond. Otherwise, the node propagates a RREQ message with the new metric. If this is not the first RREQ message, the node updates the metric field to the originator by increasing the link cost between the node from which the RREQ message was received and this node. If the new metric is less than the metric recorded in the node's routing table, the node updates the reverse route. Otherwise, the RREQ message is discarded. If the node meets the above requirements, it replies to the initiator with an RREP message. Otherwise the node propagates the RREQ message with the new reverse routing metric. The reverse path/routing is used to send the RREP message back to the originator of the RREQ message to establish the forward path, and also for the two-way communication between the source node and the destination node.
通过单播将RREP消息发送回RREQ消息的发起者,以建立前向路径。该RREP消息包括发起者MAC地址、目的MAC地址以及可选的目的层3信息、目的节点的序列号、度量、使用期限以及路由生命期。如果目的节点响应,则使用其当前序列号的最大值以及RREQ消息中的目的地序列号。度量的初始值为零。目的节点也设置了路由的生命期。如果中间节点响应,则使用其对目的序列号和度量的记录,以及基于路由表条目所计算的路由生命期。A RREP message is sent back to the originator of the RREQ message via unicast to establish the forward path. The RREP message includes the initiator MAC address, the destination MAC address and optional destination layer 3 information, the serial number of the destination node, the metric, the lifetime and the route lifetime. If the destination node responds, it uses the maximum value of its current sequence number and the destination sequence number in the RREQ message. The initial value of the metric is zero. The destination node also sets the lifetime of the route. If the intermediate node responds, its records of the destination sequence number and metric are used, along with the route lifetime calculated based on the routing table entries.
参照描述了无线局域网格网的图2,节点205是源节点,节点210是目的节点。确定了针对特定源节点205和目的节点210的中间节点220的集合。对于源节点205和目的节点210之间的路由/路径,中间节点215不再是中间节点。通过从目的节点210到源节点205的单播RREP消息建立了前向路径。Referring to Figure 2 which depicts a wireless local area mesh network,
RREP消息通过在路由请求广播期间所建立的反向路由进行单播。当中间节点接收到RREP消息时,中间节点通过增加从中接收RREP消息的节点和中间节点本身之间的链路成本来更新度量。中间节点在其路由选择表中建立前向路径,并将RREP消息转发给RREQ消息的发起者。如果节点接收到一个以上的RREP消息,则转发第一RREP消息。仅在新的RREP消息包括更大的目的序列号或具有更好度量的相同目的号时,该节点才更新路由选择表并转发新的RREP消息。否则,则丢弃新的RREP消息。图1和图2示出了RREQ消息泛洪网格网,以及通过单播RREP消息建立前向路径。发起者可以在接收到第一RREP消息时立即开始数据/分组传输,并且如果发现更好的路由,则可以稍后更新它的路由选择信息。RREP messages are unicast through the reverse route established during route request broadcast. When an intermediate node receives a RREP message, the intermediate node updates the metric by increasing the link cost between the node from which the RREP message was received and the intermediate node itself. The intermediate node establishes a forward path in its routing table and forwards the RREP message to the originator of the RREQ message. If the node receives more than one RREP message, it forwards the first RREP message. The node updates the routing table and forwards the new RREP message only if the new RREP message includes a larger destination sequence number or the same destination number with a better metric. Otherwise, the new RREP message is discarded. Figure 1 and Figure 2 show that RREQ messages are flooded into the mesh network, and a forward path is established through unicast RREP messages. The initiator can start data/packet transmission immediately upon receiving the first RREP message, and can update its routing information later if a better route is found.
节点可以具有多个IEEE 802.11无线接口。节点具有唯一的节点标识符,即节点的IEEE 802.11 MAC地址,并且每个接口还具有其自身的IEEE 802.11 MAC地址。将节点的MAC地址用于RREQ和RREP消息以及下面所要描述的其他路由选择控制消息。当多接口节点广播EQ消息时,该节点可以通过所有接口广播该RREQ消息。当多接口节点通过单播RREP消息来响应RREQ消息时,该节点向通过其接收相应RREQ消息的接口发送RREP消息。Nodes can have multiple IEEE 802.11 radio interfaces. A node has a unique node identifier, which is the node's IEEE 802.11 MAC address, and each interface also has its own IEEE 802.11 MAC address. The node's MAC address is used for RREQ and RREP messages and other routing control messages as described below. When a multi-interface node broadcasts an EQ message, the node may broadcast the RREQ message through all interfaces. When a multi-interface node responds to a RREQ message through a unicast RREP message, the node sends the RREP message to the interface through which the corresponding RREQ message was received.
路由选择表包括针对目的节点的条目。每个条目都包括目的MAC地址和它的可选层3信息(所支持的层3协议和地址,例如目的节点的IP地址)、目的序列号、下一跳MAC地址、到达下一跳的接口、上流节点列表和使用此路由的接口、状态和路由选择标记(例如,有效、无效)、到目的地的度量、以及路由生命期。每次使用路由时,更新该路由的生命期。如果在路由生命期内没有使用该路由,则该路由变成无效。在无效路由的删除定时器到期时,将删除该无效路由。发起者可以在接收到第一RREP消息时立即开始数据传输,并且如果发现更好的路由,则可以稍后对路由选择信息进行更新。当中间节点接收到数据分组时,该中间节点基于目的MAC地址来检查路由选择表。如果存在针对此目的地的有效条目,则中间节点将该分组转发到此路由选择条目中所指定的下一跳。在到达目的节点之前,这个过程将继续。The routing table includes entries for destination nodes. Each entry includes the destination MAC address and its optional layer 3 information (supported layer 3 protocols and addresses, such as the IP address of the destination node), the destination sequence number, the next hop MAC address, and the interface to the next hop , a list of upstream nodes and interfaces using this route, status and routing flags (eg, valid, invalid), metric to destination, and route lifetime. Each time a route is used, the lifetime of the route is updated. If the route is not used during the lifetime of the route, the route becomes invalid. When the deletion timer of an invalid route expires, the invalid route will be deleted. The initiator can start data transmission immediately upon receiving the first RREP message, and can update the routing information later if a better route is found. When an intermediate node receives a data packet, the intermediate node checks the routing table based on the destination MAC address. If there is a valid entry for this destination, the intermediate node forwards the packet to the next hop specified in this routing entry. This process will continue until the destination node is reached.
在按需路由选择中,只保持当前所使用的路由。这降低了路由选择开销。然而,因为源节点必须在可以发送数据之前建立路由,这导致了额外的延迟。源节点还需要在路由发现期间对数据进行缓冲。为了减少路由发现延迟,可以使用先应式路由选择。此外,在许多节点与特定节点通信的情况下,如果这些节点中的每一个都单独发现到这个特定节点的路由,则需要显著的控制业务量。例如,网格网中的许多节点通过将该网格网连接到互联网或其他网络的一个或多个入口节点来访问互联网或其他网络。希望的是,入口节点先应式地宣告在网格网中到它的路由。本发明将按需路由发现和先应式路由宣告结合。节点可以由网络管理员显性配置,或根据特定策略隐性确定在网格网中执行先应式路由选择。例如,一项策略是所有网格入口节点都应该执行先应式路由宣告。参照图3A,节点310通过周期性地广播未被请求的路由宣告(RANN)消息来宣告其自身,从而网格网中的其他节点315可以获悉到RANN消息发起者310的路由。换言之,发起RANN消息的节点使用未被请求的RANN消息来泛洪无线局域网格网,以便先应式地建立到其自身的路由。当多接口节点广播RANN消息时,该多接口节点可以通过其所有接口来广播该RANN消息。RANN消息包括具有目的序列号和可选的层3信息的发起者节点的IEEE 802.11 MAC地址(不是IP地址)。RANN消息还包括路由度量、使用期限以及路由生命期。注意,不同于RREQ消息的是,RANN消息中的目的地址是RANN消息发起者的MAC地址,因为该RANN消息用于先应式地在网格网中建立到RANN消息发起者的路由。In on-demand routing, only the currently used routes are maintained. This reduces routing overhead. However, this introduces additional delay because the source node must establish a route before data can be sent. The source node also needs to buffer data during route discovery. To reduce route discovery latency, proactive routing can be used. Furthermore, where many nodes communicate with a particular node, significant traffic control is required if each of these nodes individually discovers a route to this particular node. For example, many nodes in a mesh network access the Internet or other network through one or more entry nodes that connect the mesh network to the Internet or other network. Desirably, an ingress node proactively announces routes to it in the mesh network. The invention combines on-demand route discovery and proactive route announcement. Nodes can be explicitly configured by the network administrator, or implicitly determined to perform proactive routing in the mesh network according to specific policies. For example, one policy is that all mesh entry nodes should implement proactive route announcements. Referring to FIG. 3A , a
当节点315接收到RANN消息时,该节点通过增加从其接收RANN消息的节点和该节点本身之间的链路成本来更新到RANN消息的发起者的度量域。如果该节点在其路由选择表中不具有到此目的节点(即,RANN消息发起者310)的有效路由,则该节点在其路由选择表中创建到此目的节点的路由。该节点以新度量通过其接口中的一个或多个向相邻节点广播RANN消息。当该节点具有到此目的地的有效路由时,仅在RANN消息包括较大的目的序列号或具有更好的度量的相同目的序列号时,该节点才更新其路由选择表,并以新度量向相邻节点广播RANN消息。否则,则丢弃该RANN消息。按照这种方式,在网格网中建立到RANN消息发起者的路由。When a
参照图3B,当源节点305想要向目的节点310发送数据分组时,该节点可能已经从目的节点的路由宣告中获得到此目的节点310的前向路径。在这个实例中,该节点可以立即传输分组。然而,不存在从目的节点310到源节点305的反向路由也是可能的。如果需要双向通信,则源节点305可以通过中间节点320沿着由目的节点310的RANN消息所建立的前向路径,向节点310单播地发送无偿RREP消息。该RREP消息建立了到源节点305的反向路由。Referring to FIG. 3B , when the source node 305 intends to send a data packet to the
一些节点想要只作为源节点或目的节点而加入无线局域网格网,即不转发源自其他节点的业务。节点可以由管理员配置为非转发节点,或基于特定策略被确定为非转发节点。例如,一个这样的政策是,如果节点的电池能量低于阈值,则该节点将变成非转发节点。非转发网格节点在其想要传输分组时发送RREQ消息。只有当该非转发节点是接收到的RREQ消息中的目的节点时,才应答路由请求消息。如果该非转发节点不是接收到的RREQ消息中的目的节点,不应答路由请求消息。非转发节点接收RANN消息,以获悉到RANN消息的发起者的路由。非转发节点发送RANN消息,使得可以先应式地建立指向该非转发节点的路由。然而,非转发网格节点不向相邻节点转发任何路由选择控制消息,包括RREQ、RREP和RANN消息。通过这样做,不存在将非转发节点作为中间节点的路由。Some nodes want to join the WLAN mesh network only as source or destination nodes, ie not forward traffic originating from other nodes. Nodes can be configured as non-forwarding nodes by an administrator, or determined to be non-forwarding nodes based on certain policies. For example, one such policy is that if a node's battery energy falls below a threshold, the node will become a non-forwarding node. A non-forwarding mesh node sends a RREQ message when it wants to transmit a packet. Only when the non-forwarding node is the destination node in the received RREQ message, it responds to the routing request message. If the non-forwarding node is not the destination node in the received RREQ message, it does not respond to the routing request message. The non-forwarding node receives the RANN message to learn the route to the originator of the RANN message. A non-forwarding node sends a RANN message so that a route to the non-forwarding node can be established proactively. However, non-forwarding mesh nodes do not forward any routing control messages, including RREQ, RREP, and RANN messages, to neighboring nodes. By doing this, there are no routes with non-forwarding nodes as intermediate nodes.
如果链路断开,则向活跃路径的受影响的源节点发送路由错误(RERR)消息。断开链路的上流节点,即靠近源的节点,发起RERR消息。在发送RERR消息之前,该节点还将损坏路由标记为无效,将损坏路由的度量设为无限大,并由于路由选择表中此链路故障而使不可到达的目的地的目的序列号递增。RERR消息包括由于此链路故障的所有不可到达的目的地、以及它们递增后的序列号的列表。该节点向其一个或多个上流相邻节点广播该RERR消息。对于多接口节点,通过具有使用此故障链路的路由的接口来发送RERR消息。当相邻节点从其下流节点接收到RERR消息时,相邻节点检查是否具有使用下流相邻节点至所列出目的地的路由。如果有,则将这些路由标记为无效,并将这些路由的度量设为无限大。然后将RERR消息传播给上流节点。当源节点接收到RERR消息时,源节点重新发起路由发现。如果节点接收到具有目的MAC地址的数据分组时(该MAC地址不具有活跃/有效路由),则该节点创建针对目的节点的RERR消息,并将此RERR消息发送到上流相邻节点。If the link goes down, a Routing Error (RERR) message is sent to the affected source node of the active path. The upstream node that disconnects the link, that is, the node close to the source, initiates a RERR message. Before sending the RERR message, the node also marks the damaged route as invalid, sets the metric of the damaged route to infinity, and increments the destination sequence number of the unreachable destination due to the failure of this link in the routing table. The RERR message includes a list of all unreachable destinations due to this link failure, along with their incremented sequence numbers. The node broadcasts the RERR message to one or more of its upstream neighbors. For multi-interface nodes, the RERR message is sent through the interface that has a route using the failed link. When a neighboring node receives a RERR message from its downstream node, the neighboring node checks whether there is a route to the listed destination using the downstream neighboring node. If there are, mark those routes as invalid and set their metric to infinity. The RERR message is then propagated to upstream nodes. When the source node receives the RERR message, the source node re-initiates route discovery. If a node receives a data packet with a destination MAC address (which does not have an active/valid route), the node creates a RERR message for the destination node and sends this RERR message to the upstream neighbor node.
本地连接性管理由节点周期性地向相邻节点发送信标(HELLO消息)来实现。从相邻节点接收到信标的节点在其路由选择表中更新与该相邻节点关联的路由生命期。如果节点不能从相邻节点接收针对给定的Hello_life的信标,则到该相邻节点的链路断开,然后在路由选择表中更新针对此相邻节点的路由选择信息。Local connectivity management is implemented by nodes periodically sending beacons (HELLO messages) to neighboring nodes. A node that receives a beacon from a neighboring node updates the route lifetime associated with that neighboring node in its routing table. If a node cannot receive a beacon for a given Hello_life from a neighboring node, the link to that neighboring node is broken, and the routing information for this neighboring node is updated in the routing table.
图4是示出了节点按需地和先应式地建立路由、以及根据本发明的原理处理路由选择控制消息的方法。在步骤402中,节点确定是否需要先应式路由发现。此信息可以由网络管理者显性配置,或者通过如上所述的策略隐性获得。如果需要先应式路由发现,则在步骤404中周期性地发送RANN消息。如果不需要先应式路由,则节点返回空闲状态。在步骤410中,当节点从上层应用中接收到新的数据分组时,该节点检查是否具有到目的节点的前向路径/路由(步骤412)。如果没有,则该节点通过发送RREQ消息来发起按需路由发现(步骤414)。该节点等待相应的RREP消息。一旦接收到RREP消息(步骤416),则建立前向路由(步骤422),并开始传输数据(步骤428)。如果RREQ消息丢失,则可以允许源节点重传该RREQ消息设定次数(步骤418)。如果在RREQ消息的最大重传次数之后仍然没有接收到RREP消息,则通过错误消息通知应用该目的节点不可到达(步骤420)。如果源节点具有前向路由,则源节点检查是否具有用于双向通信的反向路由(步骤424)。如果前向路由是通过目的节点的RANN广告所建立的,则可能不存在反向路由。在反向路由可用的单向通信或双向通信的情况下,源节点在步骤428中立即传输数据。在不具有反向路由的双向通信的情况下,源节点发送无偿RREP消息(步骤426),以建立反向路由。一旦发送了无偿RREP消息,源节点则可以传输数据(步骤428)。Figure 4 is a diagram illustrating a method for nodes to establish routes on demand and proactively, and to process routing control messages according to the principles of the present invention. In
在步骤440中,当网格网中的节点接收到RANN消息,则设置/建立/恢复到RANN消息的发起者的路由(步骤424)。如果该节点为非转发节点(步骤444),则不转发RANN消息(步骤448)。如果该节点是转发节点,则转发RAISIN消息(步骤446)。当节点在步骤450中接收到RREQ消息时,设置/建立/恢复反向路由(步骤452)。节点确定其是否为非转发节点(步骤454)。只有在该节点是RREQ消息中所指定的目的节点时(步骤460),非转发节点才通过将RREP消息单播发送回RREQ消息的发起者来应答此RREQ消息(步骤462)。如果该节点并非目的节点,则非转发节点不转发RREQ消息(步骤464),而是丢弃RREQ消息。对于转发节点,如果该节点是目的节点或者如果该节点具有到目的节点的有效路由(步骤456),则该节点通过将路由应答(RREP)消息单播回RREQ消息的发起者来进行响应(步骤462)。否则传播RREQ消息(步骤458)。当节点在步骤470中接收到RREP消息,则设置/创建/恢复该路由(步骤472)。如果该节点是非转发节点或者该节点是此RREP消息的目的节点(步骤474),则该节点不转发RREP消息(步骤478)。否则,则转发该RREP消息(步骤476)。当节点检测到链路故障或者当节点接收到RERR消息时(步骤480),该节点去激活已损坏的路由(步骤482)。如果该节点是源节点(步骤484),则该节点发现/获悉新的路由(步骤490)。否则,如果该节点不是非转发节点(步骤486),则转发RERR消息(步骤488)。如果该节点是非转发节点,则该节点不转发RERR消息(步骤492)。In
多个站点可以与WLAN中的接入点(AP)相关联。参照图5,节点505是加入网格网的AP。然而,站点510不是无线局域网格网525的一部分。站点510形成具有接入点505的基于基础结构的网络/子网。网格AP 505作为这些站点510的代理服务器,以及路由选择对于非网格站点510是透明的。当网格AP 505转发源自关联站点510的数据分组时,发现到目的节点的路由。网格AP 505还通过向RREQ消息发起者单播RREQ消息,来响应相关站点的RREQ消息。网格AP 505通过广播RANN消息,宣告到关联站点510的路由。可以使用单个RANN消息来宣告具有单独序列号的多个目的地址、可选层3信息、使用期限(TTL)、度量和路由生命期。每个目的地址与一站点相对应。Multiple stations can be associated with an access point (AP) in a WLAN. Referring to FIG. 5, a node 505 is an AP joining a mesh network. However, station 510 is not part of wireless local area mesh network 525 . Stations 510 form an infrastructure-based network/subnetwork with access points 505 . Mesh AP 505 acts as a proxy server for these sites 510, and routing is transparent to non-mesh sites 510. When a mesh AP 505 forwards a data packet originating from an associated site 510, a route to the destination node is discovered. Mesh AP 505 also responds to the RREQ message of the associated station by unicasting the RREQ message to the originator of the RREQ message. Mesh APs 505 announce routes to associated sites 510 by broadcasting RANN messages. A single RANN message can be used to announce multiple destination addresses with separate sequence numbers, optional layer 3 information, time to live (TTL), metrics and route lifetimes. Each destination address corresponds to a site.
图6是示出了具有代理服务器600的网格接入点(图5中的节点/AP505)的细节的方框图。具有代理服务器600的网格AP具有两个逻辑接口。一个是与关联站点通信的站点发送/接收(TX/RX)接口模块645,另一个是与网格网通信的网格网发送/接收(TX/RX)接口模块655。这两个逻辑接口可以使用两个操作于不同信道的物理IEEE 802.11无线接口(每个物理接口与一个逻辑接口相对应)或使用单个IEEE 802.11无线接口来实现。站点关联控制模块650执行站点关联控制。网格路由选择模块605负责在网格网中路由数据。网格路由选择模块605包括网格路由发现单元610,用于发送路由请求以便发现到无线局域网格网中的目的节点的路由(执行按需路由选择)。网格路由选择模块605还包括网络路由宣告单元615,用于在网格网中发送RANN消息(执行先应式路由选择)。路由选择消息处理单元620对所接收到的路由选择控制消息进行处理,并应答/转发路由控制消息。如果检测到链路断开,则路由保持单元625保持路由,并产生路由错误消息。网格路由选择模块605还将路由选择表630保持在其高速缓存中。数据处理单元635基于该路由选择表来发送/接收/转发数据分组。网格路由选择模块605通过网格网TX/RX接口模块655与网格网相接口。站点代理服务器640桥接关联站点和网格网。站点代理服务器640将关联站点信息从关联控制模块650传递到路由选择模块605。站点代理服务器640与路由选择模块605相互作用以便针对关联站点执行路由选择和数据转发功能(例如在站点代理服务器640转发源自关联站点的数据分组时发现到目的节点的路由,响应关联站点的RREQ消息,以及通过在网格网中发起RANN消息来宣告到关联站点的路由)。FIG. 6 is a block diagram showing details of a mesh access point (node/AP 505 in FIG. 5 ) with a
本发明支持多播和单播路由选择。由节点保持单独的多播路由选择表。与上述单播按需路由发现相似的是,多播按需发现基于路由请求和路由应答消息,这也与IP层路由选择协议AODV相似。节点能够随时动态地加入或离开多播组。每个多播组都具有多播组引导者(leader)。组引导者保持多播组序列号。在检测到多播组引导者故障的情况下,创建新的组引导者,从而不存在故障的中心点。The invention supports multicast and unicast routing. A separate multicast routing table is maintained by the nodes. Similar to the above-mentioned unicast on-demand route discovery, multicast on-demand discovery is based on route request and route reply messages, which is also similar to the IP layer routing protocol AODV. Nodes can dynamically join or leave the multicast group at any time. Each multicast group has a multicast group leader. The group leader maintains the multicast group sequence number. In case a multicast group leader failure is detected, a new group leader is created so that there is no central point of failure.
当节点想要加入多播组时,节点向所有网格节点广播RREQ消息。该RREQ消息包括发起者的MAC地址、当前序列号、可选层3信息(支持层3协议和地址,例如IP地址)、目的MAC地址(即,待加入的多播组地址)、组的最新获知的序列号、消息ID、度量、使用期限参数和加入标记。多播树的任何成员都可以响应RREQ消息,但只有多播树的成员可以进行响应。非成员节点(非多播树的成员)不响应RREQ消息,但是创建到发起者的路由/路径。然后,非成员节点向相邻节点转发该RREQ消息。下面将对此进行详细描述。发起者等待发现时间段的期限,以便接收应答或进行应答。如果没有应答,则发起者重传/重新广播消息ID增加1的RREQ消息。在接收到应答或已经超过重试限制之前,发起者继续这种方式。如果在最大重试次数之后没有接收到应答,则发起者可以变成新的多播组的多播组引导者。When a node wants to join a multicast group, the node broadcasts a RREQ message to all mesh nodes. The RREQ message includes the initiator's MAC address, the current sequence number, optional layer 3 information (supporting layer 3 protocols and addresses, such as IP addresses), the destination MAC address (that is, the address of the multicast group to be joined), the latest Learned sequence numbers, message IDs, metrics, age parameters, and join tokens. Any member of the multicast tree can respond to RREQ messages, but only members of the multicast tree can respond. Non-member nodes (non-members of the multicast tree) do not respond to RREQ messages, but create a route/path to the originator. The non-member node then forwards the RREQ message to neighboring nodes. This will be described in detail below. The length of time the initiator waits for the discovery period in order to receive an acknowledgment or reply. If there is no reply, the initiator retransmits/rebroadcasts the RREQ message with the message ID incremented by 1. The initiator continues in this manner until a reply is received or the retry limit has been exceeded. If no acknowledgment is received after the maximum number of retries, the initiator may become the multicast group leader of the new multicast group.
当节点从另一个节点(不是该组中的)接收到加入多播组的请求时,该节点更新度量域并将发起者的不活跃条目添加到其多播路由选择表中。多播路由选择表中的每个条目都具有指示链路活跃或不活跃的标记。对于多播组,将不通过不活跃链路转发/传输数据/分组。该节点还按照单播路由建立规则,在单播路由选择表中创建到发起者的反向路由/路径条目。When a node receives a request to join a multicast group from another node (not in the group), the node updates the metrics field and adds the originator's inactive entry to its multicast routing table. Each entry in the multicast routing table has a flag indicating whether the link is active or inactive. For multicast groups, no data/packets will be forwarded/transmitted over passive links. The node also creates a reverse route/path entry to the originator in the unicast routing table according to the unicast routing establishment rules.
多播树包括作为多播组的成员的节点,以及针对多播组的转发节点。转发节点是作为多播树成员的节点,但并非多播组的成员。转发节点对于所接收到的数据/分组/内容起到了“通道”或“管道”的作用。转发节点不使用其所接收到的数据/分组/内容,并且对所接收到的数据/分组/内容不感兴趣。如果多播树所记录的序列号至少与RREQ消息中所携带的一样大,则多播树的任何成员都可以应答加入多播组的RREQ消息。多播组引导者总是响应加入该多播组的RREQ消息。响应加入多播组的RREQ消息的节点按照单播路由建立规则,在其路由选择表中建立了到发起者的单播反向路由。响应节点还在多播路由选择表中建立针对发起者的路由。将该路由标记为不活跃的。然后,响应节点将RREP消息单播回RREQ消息的发起者。当沿反向路径的节点接收到RREP消息时,该节点更新度量,并在其多播路由选择表中建立前向路径/路由。将在多播路由选择表中所建立的路径/路由标记为不活跃的。然后该节点将RREP消息转发到下一跳。The multicast tree includes nodes that are members of the multicast group, and forwarding nodes for the multicast group. A forwarding node is a node that is a member of a multicast tree, but not a member of a multicast group. The forwarding node acts as a "channel" or "pipe" for the received data/packet/content. A forwarding node does not use and is not interested in the data/packets/content it receives. If the sequence number recorded by the multicast tree is at least as large as that carried in the RREQ message, any member of the multicast tree can respond to the RREQ message to join the multicast group. A multicast group leader always responds to a RREQ message to join the multicast group. The node that responds to the RREQ message of joining the multicast group establishes a unicast reverse route to the initiator in its routing table according to the unicast route establishment rules. The responding node also establishes a route for the initiator in the multicast routing table. Mark the route as inactive. The responding node then unicasts the RREP message back to the originator of the RREQ message. When a node along the reverse path receives an RREP message, the node updates the metrics and builds the forward path/route in its multicast routing table. Marks established paths/routes in the multicast routing table as inactive. The node then forwards the RREP message to the next hop.
多播树中的每个节点具有多播路由选择表。多播路由选择表具有针对每个多播组的条目。多播路由选择表的条目包括多播组MAC地址、下一跳MAC地址、到下一跳的接口、多播组序列号、到多播组引导者的度量、标记(活跃/不活跃以及路由标记)以及路由生命期参数。每次使用/经过路由/路径时,更新路由生命期参数。如果在指定路由生命期内未使用该路由/路径,则该路由/路径变成无效。Each node in the multicast tree has a multicast routing table. The multicast routing table has an entry for each multicast group. Entries in the multicast routing table include multicast group MAC address, next-hop MAC address, interface to next-hop, multicast group sequence number, metric to the multicast group leader, flags (active/inactive, and routing tag) and route lifetime parameters. Every time a route/path is used/passed, update the route lifetime parameter. If the route/path is not used within the specified route lifetime, the route/path becomes invalid.
加入多播组的RREQ消息的发起者可以从多播树的不同成员接收多个RREP消息。每个应答都表示到该多播组的潜在路由/路径。发起者追踪所接收到的应答,并等待路由发现周期/间隔的到期。然后,发起者选择具有最大多播组序列号以及具有到该多播组的最佳度量的路由。通过单播具有设置为加入下一跳的加入标记来多播激活(MACT)消息,发起者激活在路由发现周期/间隔到期时所选择的路由/路径。针对多播路由选择表中的所选路由/路径,发起者将活跃/不活跃标记设置为活跃的。因为沿着路径的每一跳都接收到MACT消息,所以该节点激活其多播路由选择表中的路由,以及如果该节点不是RREP消息的发起者,则将MACT消息转发到下一跳。在RREP消息的发起者接收到MACT消息之前,继续此过程。应注意的是,一个节点可以同时是两个多播组/树的成员。The originator of a RREQ message to join a multicast group may receive multiple RREP messages from different members of the multicast tree. Each reply represents a potential route/path to that multicast group. The initiator keeps track of the replies received and waits for the expiry of the route discovery period/interval. The initiator then chooses the route with the largest multicast group sequence number and the best metric to that multicast group. By unicasting a Multicast Activation (MACT) message with Join Flag set to Join Next Hop, the initiator activates the route/path selected upon expiry of the route discovery period/interval. The initiator sets the active/inactive flag to active for the selected route/path in the multicast routing table. As each hop along the path receives the MACT message, the node activates the route in its multicast routing table and, if the node is not the originator of the RREP message, forwards the MACT message to the next hop. This process continues until the originator of the RREP message receives the MACT message. It should be noted that a node can be a member of two multicast groups/trees at the same time.
图7A-7D示出了新节点“N”如何加入多播组。暗阴影节点是多播组的成员和多播树的成员。白色节点是并非多播树或多播组的成员的节点。节点“N”是想要加入多播组的新节点。以“F”作为标记的节点是前向节点。现在,参照图7A,节点“N”是想要加入多播组的新节点。节点“N”在尝试加入多播组时使用RREQ消息来泛洪网格网。在RREQ消息到达作为多播树的成员的节点之前,通过并非多播树的成员的节点来传输该RREQ消息。图7B描述了返回希望加入多播组的新节点的RREP消息。由不同多播树成员沿反向路径将该RREP消息发送回RREQ消息的发起者。图7C示出了传输路由激活消息(MACT)的RREQ消息的发起者。RREQ消息的发起者单播具有设置以激活到多播组的路由/路径的加入标记的MACT消息。图7D示出了已添加到多播组的新节点。已经将并非多播组或多播树成员的节点添加为转发节点,因而该节点变成多播树的成员。7A-7D illustrate how a new node "N" joins a multicast group. Dark shaded nodes are members of multicast groups and members of multicast trees. White nodes are nodes that are not members of a multicast tree or multicast group. Node "N" is a new node that wants to join the multicast group. Nodes marked with "F" are forward nodes. Now, referring to FIG. 7A, node "N" is a new node that wants to join the multicast group. Node "N" floods the mesh with RREQ messages when attempting to join the multicast group. The RREQ message is transmitted by nodes that are not members of the multicast tree before the RREQ message reaches the nodes that are members of the multicast tree. Figure 7B depicts the RREP message returned to a new node wishing to join a multicast group. The RREP message is sent back to the originator of the RREQ message along the reverse path by a different multicast tree member. FIG. 7C shows the originator of the RREQ message that transmits the Routing Activation Message (MACT). The originator of the RREQ message unicasts the MACT message with the join flag set to activate the route/path to the multicast group. Figure 7D shows a new node that has been added to the multicast group. A node that is not a member of a multicast group or a multicast tree has been added as a forwarding node, thus becoming a member of the multicast tree.
如果作为多播组成员的节点想要退出/离开该组,则该节点使用设置为修剪的修剪标记来向下一跳单播MACT消息,并删除其多播路由选择表中到多播组的条目。一旦沿路径的下一节点接收到具有设置成修剪的修剪标记的MACT消息,则该节点删除针对向其传输MACT消息的节点的路由选择信息。如果接收具有设置成修剪的修剪标记的MACT消息的节点不是多播组的成员,并且该节点在删除掉希望放弃其在多播组中的成员资格的节点的情况下变成叶节点,然后将其自身从多播树剪除。叶节点通过向其下一跳单播具有设置成修剪的修剪标记的MACT消息,将其自身从多播树中修剪掉。如果接收到具有设置成修剪的修剪标记的MACT消息的节点是多播组的成员或者不是叶节点,则该节点不能修剪其本身。If a node that is a member of a multicast group wants to exit/leave the group, the node unicasts a MACT message to the next hop with the pruning flag set to pruning and deletes the entry to the multicast group in its multicast routing table. entry. Once the next node along the path receives a MACT message with the pruning flag set to pruning, that node deletes the routing information for the node to which the MACT message was transmitted. If a node receiving a MACT message with a pruning flag set to pruning is not a member of a multicast group, and the node becomes a leaf node upon removal of a node wishing to relinquish its membership in the multicast group, then the It itself is pruned from the multicast tree. A leaf node prunes itself from the multicast tree by unicasting to its next hop a MACT message with the pruning flag set to pruning. If a node that receives a MACT message with a pruning flag set to pruning is a member of a multicast group or is not a leaf node, the node cannot prune itself.
图8A到图8B示出了节点“A”如何放弃其在多播树和组中的成员资格。暗阴影节点是多播组的成员以及多播树的成员。白色节点是并非多播树或多播组成员的节点。以“F”作标记的节点是转发节点。图8A示出了多播叶节点如果退出/离开多播组。节点“A”单播具有设置成修剪的修剪标记的MACT消息,以便放弃其在多播组和树中的成员资格。图8B示出了修剪后的多播树。在节点“A”从多播组和树中放弃其成员资格后,留下作为转发节点的节点“B”作为叶节点,从而该节点将其本身从多播树修修剪掉。8A-8B illustrate how node "A" relinquishes its membership in a multicast tree and group. Dark shaded nodes are members of multicast groups as well as members of multicast trees. White nodes are nodes that are not members of a multicast tree or multicast group. Nodes marked with "F" are forwarding nodes. Figure 8A shows how a multicast leaf node exits/leaves a multicast group. Node "A" unicasts a MACT message with the prune flag set to prune in order to relinquish its membership in the multicast group and tree. Figure 8B shows the pruned multicast tree. After node "A" relinquishes its membership from the multicast group and tree, leaving node "B" as a forwarding node as a leaf node, the node prunes itself from the multicast tree.
每个Hello_mterval,多播树上的节点都必须接收来自每个相邻节点的传输。传输包括多播数据分组、RREQ消息、Hello消息、信标消息或组问候(GRPH)消息。由组引导者沿多播树周期性地发送GRPH消息。如果节点在HelloJlife内未能接收到来自多播树上的相邻节点的任何传输,则到此相邻节点的链路是断开的。当链路断开时,断开的节点下流(即,距离多播组管理者较远的节点)尝试修复该链路。实际上,这是为断开的链路设置旁路并产生回到多播树的可选路径的尝试。负责尝试修复断开的链路或通过发现可选路由来为断开的链路设置旁路的下流节点发送加入多播组的RREQ消息,该RREQ消息包括指示了发送节点与组引导者的度量的扩展字段。响应RREQ消息的节点必须是具有足够新鲜的序列号(这里的序列号至少与RREQ消息中所携带的多播组序列号一样大)的多播树的成员,并且到多播组管理者的度量必须好于RREQ消息中所指示的度量。在路由发现周期/间隔到期时,发起尝试为断开的链路设置旁路的RREQ消息的节点选择路由/路径,并单播具有设置为加入下一跳的加入标记的MACT消息,以便激活最新发现的路由。如果不能通过任何分支再次加入该树来修复多播树,那么负责为断开的链路设置旁路的下流节点变成新的多播树的新的多播组引导者。Every Hello_mterval, a node on the multicast tree must receive a transmission from every neighboring node. Transmissions include multicast data packets, RREQ messages, Hello messages, Beacon messages, or Group Hello (GRPH) messages. GRPH messages are sent periodically along the multicast tree by the group leader. If a node fails to receive any transmissions from a neighboring node on the multicast tree within HelloJlife, the link to this neighboring node is broken. When a link breaks, the broken node downstream (ie, a node that is farther away from the multicast group manager) attempts to repair the link. In effect, this is an attempt to bypass broken links and generate alternative paths back into the multicast tree. Downstream nodes responsible for attempting to repair a broken link or to bypass a broken link by discovering alternative routes send a RREQ message to join the multicast group, which includes a metric indicating the sending node and the group leader extension field. A node responding to a RREQ message must be a member of a multicast tree with a sufficiently fresh sequence number (where the sequence number is at least as large as the multicast group sequence number carried in the RREQ message), and the metric to the multicast group manager Must be better than the metric indicated in the RREQ message. Upon expiry of the route discovery period/interval, a node that initiates a RREQ message attempting to set a bypass for a broken link selects a route/path and unicasts a MACT message with the join flag set as the join next hop in order to activate The latest discovered route. If the multicast tree cannot be repaired by rejoining the tree through any branch, the downstream node responsible for bypassing the broken link becomes the new multicast group leader of the new multicast tree.
图9A-9E示出了为断开的多播树链路设置旁路。图9A示出了具有断开的链路的多播树。在这个实例中,节点“A”和节点“B”之间的链路断开。图9B描述了下流节点(节点“A”)尝试通过发送请求加入多播组的RREQ消息来为断开的链路设置旁路。图9C示出了下流节点(节点“A”)从有资格的多播树成员处接收RREP消息。图9D示出了下流节点(节点“A”)使用具有设置成加入的加入标记的MACT消息来激活新的链路。图9E描述了为断开的链路设置了旁路的已修复的多播树。需要注意的是,断开的链路实际上并不是修复的,而是通过使用可用的路由发现机制来为其设置了旁路。9A-9E illustrate bypassing a broken multicast tree link. Figure 9A shows a multicast tree with broken links. In this example, the link between node "A" and node "B" is down. Figure 9B depicts a downstream node (node "A") attempting to bypass a broken link by sending a RREQ message requesting to join a multicast group. Figure 9C shows a downstream node (node "A") receiving an RREP message from a qualified multicast tree member. Figure 9D shows a downstream node (node "A") activating a new link using a MACT message with the join flag set to join. Figure 9E depicts a repaired multicast tree with bypasses for broken links. It is important to note that broken links are not actually repaired, but bypassed by using available route discovery mechanisms.
与单播相似,为了减少路由发现延迟,本发明支持先应式路由选择。本发明将按需路由发现和先应式路由宣告结合。对于多播,如果该节点是多播组引导者,则该节点可以由网络管理员显性配置,或根据特定策略隐性确定,以便在网格网中执行先应式路由选择。所配置的组引导者通过周期性地广播未经请求的路由宣告(RANN)消息来广告多播组,使得网格网中的其他节点能够获悉到多播组的路由。RANN消息包括具有组序列号和可选层3信息的多播组的IEEE 802.11 MAC地址(不是IP地址)。RANN还包括路由度量、使用期限和路由生命期。Similar to unicast, in order to reduce route discovery delay, the present invention supports proactive route selection. The invention combines on-demand route discovery and proactive route announcement. For multicast, if the node is a multicast group leader, the node can be explicitly configured by the network administrator, or determined implicitly according to a specific policy, in order to perform proactive routing in the mesh network. The configured group leader advertises the multicast group by periodically broadcasting unsolicited route announcement (RANN) messages, so that other nodes in the mesh network can learn the route of the multicast group. The RANN message includes the IEEE 802.11 MAC address (not the IP address) of the multicast group with the group sequence number and optional layer 3 information. RANN also includes routing metrics, lifetimes, and routing lifetimes.
例如,对于多媒体和视频应用,支持WLAN网格网中的服务质量(QoS)是必要的。为了支持QoS,可以在已扩展的RREQ消息的可选字段中携带例如数据的最大延迟和最小带宽需求的QoS需求。为了响应或转发具有QoS扩展的RREQ消息,节点必须满足QoS限制。否则,则丢弃此QoS RREQ消息。在建立QoS路由之后,如果沿路径的任意节点检测到其不再满足所请求的QoS参数,则该节点向发起者发送RERR消息。RERR消息也可以携带诸如此链路的可用带宽和延迟参数之类的当前测量的QoS参数。发起者可以决定继续使用具有较低QoS的路由,或发现另一个路由。例如,RERR消息指示了链路上可用的当前带宽等于比发起者之前所请求的低的值。发起者可以减少其源速率,以满足当前可用的带宽或发现具有原始需要带宽的新路由。For example, for multimedia and video applications, it is necessary to support Quality of Service (QoS) in WLAN mesh networks. In order to support QoS, the optional field of the extended RREQ message may carry QoS requirements such as the maximum delay of data and the minimum bandwidth requirement. In order to respond to or forward RREQ messages with QoS extensions, nodes must satisfy the QoS constraints. Otherwise, the QoS RREQ message is discarded. After establishing a QoS route, if any node along the path detects that it no longer satisfies the requested QoS parameters, that node sends a RERR message to the initiator. The RERR message may also carry currently measured QoS parameters such as the link's available bandwidth and delay parameters. The initiator can decide to continue using the route with lower QoS, or discover another route. For example, the RERR message indicates that the current bandwidth available on the link is equal to a lower value than previously requested by the initiator. The initiator can reduce its source rate to satisfy the currently available bandwidth or to discover new routes with the originally required bandwidth.
可以理解的是,本发明可以实现为硬件、软件、固件、特定目的的处理器、或这几者的组合,例如移动终端内、接入点、或蜂窝网络。优选地,本发明实现为硬件和软件的组合。此外,软件优选地实现为切实体现在程序存储设备上的应用程序。应用程序可以上载到包括任意适当结构的机器,或者由包括任意适当结构的机器来执行。优选地,在计算机平台上实现该机器,计算机平台具有诸如一个或多个中央处理单元(CPU)、随机存取存储器(RAM)、以及输入/输出(I/O)接口之类的硬件。该计算机平台还包括操作系统和微指令代码。这里所描述的各种处理和功能可以是通过操作系统来执行的微指令代码的一部分或者应用程序的一部分(或这两者的组合)。此外,诸如附加数据存储设备和打印设备之类的各种其他外围设备可以连接到计算机平台。It will be appreciated that the present invention can be implemented as hardware, software, firmware, special purpose processors, or a combination of these, for example within a mobile terminal, an access point, or a cellular network. Preferably, the invention is implemented as a combination of hardware and software. Furthermore, the software is preferably implemented as an application program tangibly embodied on a program storage device. An application program may be uploaded to, or executed by, a machine comprising any suitable architecture. Preferably, the machine is implemented on a computer platform having hardware such as one or more central processing units (CPUs), random access memory (RAM), and input/output (I/O) interfaces. The computer platform also includes an operating system and microinstruction code. The various processes and functions described herein may be part of the microinstruction code or part of the application program (or a combination of both) executed by the operating system. In addition, various other peripheral devices, such as additional data storage devices and printing devices, can be connected to the computer platform.
还可以理解的是,因为附图中所描述的组成系统的组件和方法步骤中的一些优选地实现为软件,所以计算机组件(或处理步骤)之间的实际连接可以根据对本发明进行编程的方式而有所区别。在这里给出教导的情况下,相关领域的普通技术人员将能够设想这些以及相似的实现或本发明的构造。It is also to be understood that since some of the components and method steps that make up the system described in the drawings are preferably implemented as software, the actual connections between computer components (or processing steps) may be based on the manner in which the invention is programmed And there is a difference. Given the teachings herein, one of ordinary skill in the relevant art will be able to contemplate these and similar implementations or constructions of the invention.
Claims (14)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110210204 CN102227151B (en) | 2005-03-10 | 2005-03-10 | Mixing grid routing protocol |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110210204 CN102227151B (en) | 2005-03-10 | 2005-03-10 | Mixing grid routing protocol |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005800489924A Division CN101138207B (en) | 2005-03-10 | 2005-03-10 | Hybrid mesh routing selection method and access point |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102227151A CN102227151A (en) | 2011-10-26 |
CN102227151B true CN102227151B (en) | 2013-07-10 |
Family
ID=44808100
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110210204 Expired - Lifetime CN102227151B (en) | 2005-03-10 | 2005-03-10 | Mixing grid routing protocol |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102227151B (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105704756B (en) * | 2016-01-11 | 2019-01-04 | 吉林大学 | Multi-speed wireless Mesh network route metric and channel distribution integrated processes |
CN107241268B (en) * | 2017-07-20 | 2020-05-12 | 北京航空航天大学 | Local multipath routing method and device based on satellite-based ADS-B message satellite network |
WO2020035159A1 (en) | 2018-08-17 | 2020-02-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Independent redundant path discovery for bluetooth mesh |
CN110224936B (en) * | 2019-06-12 | 2021-11-09 | 四川灵通电讯有限公司 | Routing method based on MAC address and network interface |
CN116094942B (en) * | 2023-04-06 | 2023-10-27 | 北京航天万源科技有限公司 | Method and device for cooperative work of distributed intelligent equipment, electronic equipment and storage medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1191657A (en) * | 1995-08-07 | 1998-08-26 | 英国电讯有限公司 | Routing Finding in Communication Networks |
US6418138B1 (en) * | 2000-03-02 | 2002-07-09 | Worldcom, Inc. | Internet radio communication system |
-
2005
- 2005-03-10 CN CN 201110210204 patent/CN102227151B/en not_active Expired - Lifetime
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1191657A (en) * | 1995-08-07 | 1998-08-26 | 英国电讯有限公司 | Routing Finding in Communication Networks |
US6418138B1 (en) * | 2000-03-02 | 2002-07-09 | Worldcom, Inc. | Internet radio communication system |
Also Published As
Publication number | Publication date |
---|---|
CN102227151A (en) | 2011-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101138207B (en) | Hybrid mesh routing selection method and access point | |
US7403492B2 (en) | Method to support multicast routing in multi-hop wireless networks | |
JP4745387B2 (en) | Multicast routing protocol in mesh networks | |
JP4939544B2 (en) | Route selection in wireless networks | |
US7310335B1 (en) | Multicast routing in ad-hoc networks | |
US8289883B2 (en) | Hybrid multicast routing protocol for wireless mesh networks | |
JP5004999B2 (en) | Hybrid mesh routing protocol | |
CN102227151B (en) | Mixing grid routing protocol | |
CN101552732B (en) | Hybrid grid route selection protocol | |
Akcayol et al. | A survey of multicast routing protocols in Ad-hoc networks | |
JP4939579B2 (en) | Route selection in wireless networks | |
JP2010206842A (en) | Route selection in wireless network | |
CN101902695A (en) | Multicast Routing Protocols in Mesh Networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: I Si Eli Murli Nor, France Patentee after: THOMSON LICENSING Address before: French Boulogne - Bilang Kurt Patentee before: THOMSON LICENSING |
|
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20190527 Address after: Paris France Patentee after: Interactive digital CE patent holding Co. Address before: I Si Eli Murli Nor, France Patentee before: THOMSON LICENSING |
|
CX01 | Expiry of patent term |
Granted publication date: 20130710 |