WO2004104722A2 - System and method for boundary scan test of a wired or wireless network - Google Patents

System and method for boundary scan test of a wired or wireless network Download PDF

Info

Publication number
WO2004104722A2
WO2004104722A2 PCT/US2003/034884 US0334884W WO2004104722A2 WO 2004104722 A2 WO2004104722 A2 WO 2004104722A2 US 0334884 W US0334884 W US 0334884W WO 2004104722 A2 WO2004104722 A2 WO 2004104722A2
Authority
WO
WIPO (PCT)
Prior art keywords
link
network
test
node
test agent
Prior art date
Application number
PCT/US2003/034884
Other languages
French (fr)
Other versions
WO2004104722A3 (en
Inventor
Donald W. Gillies
Weilin Wang
Michael P. Nova
Original Assignee
Kiyon, Inc.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Kiyon, Inc. filed Critical Kiyon, Inc.
Priority to JP2004572211A priority Critical patent/JP4369374B2/en
Priority to AU2003286859A priority patent/AU2003286859A1/en
Priority to EP03778075A priority patent/EP1625412A2/en
Publication of WO2004104722A2 publication Critical patent/WO2004104722A2/en
Publication of WO2004104722A3 publication Critical patent/WO2004104722A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/06Testing, supervising or monitoring using simulated traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/046Network management architectures or arrangements comprising network management agents or mobile agents therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/122Shortest path evaluation by minimising distances, e.g. by selecting a route with minimum of number of hops
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/10Scheduling measurement reports ; Arrangements for measurement reports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Definitions

  • the present invention generally relates to digital data transmission in a communication network and more specifically relates to mechanisms for performing a boundary scan or roving link test on a wired or wireless network.
  • Boundary scan support devices allow the IEEE 1149.1 standard joint test action group (“JTAG”) to be used as a backplane bus which opens up possibilities of backplane interconnect test and multi-drop architectures, enabling backplane-to-board-to-chip diagnostics in system integration and field service scenarios.
  • JTAG joint test action group
  • all the memory components of an IC chip can be connected in a long shift register, at minimal overhead, and then a general-purpose serial port on the chip is used to shift arbitrary test vectors into and out of the chip.
  • These test vectors allow the whole chip to be exercised and the results compared to a working chip to verify correctness. All complex chips today are tested via JTAG capable interfaces, and the technology is also used to implement hardware debugging of microprocessors.
  • An Euler tour does not exist in all graphs, a common problem is to determine a minimum length tour that traverses each link at least once. This problem is known as the postman problem.
  • a process called graph Eulerization is used to add duplicate links to the graph. These duplicate links are added in such a fashion that they provide each node in the graph with an even number of attached links.
  • a generalization of the postman problem known as the rural postman problem, is to determine a least cost traversal of a specified subset of links in the graph.
  • a rural postman tour of an undirected or directed graph can be computed in polynomial time, whereas a rural postman tour of a mixed graph (i.e., a graph having undirected and directed links) is NP-hard.
  • a simple solution is to replace all sub-graphs of even degree with edges indicating a traversal cost, and then compute a minimum matching on the vertices of odd degree.
  • a communication network that contains a plurality of network devices (also referred to herein as “network nodes,” “nodes,” or “network stations”) that each have a means for communicating over the communication network.
  • network nodes also referred to herein as "network nodes,” “nodes,” or “network stations”
  • a scan test route sequence is constructed. This is accomplished by a sequence of broadcast operations by individual nodes in the network under test.
  • the scan test route sequence can be constructed by successively applying the rural postman ("RPT") tour algorithm. The successive use of the RPT algorithm avoids the broadcast operations that may flood the network.
  • RPT rural postman
  • the scan test route sequence is computed online as the network structure is explored with a depth first search ("DFS") algorithm from a test station by constructing a scan chain table at each node in the network.
  • DFS depth first search
  • a roving test agent is deployed to traverse each link in the route sequence.
  • the roving test agent is an abstract data type that is transmitted over the network in the data payload of one or more communication packets.
  • the roving test agent may contain source route information, attributes to be tested, and intermediate results.
  • the roving test agent may also contain executable code that can be invoked at each or selected network nodes to perform or modify the tests already to be performed by the agent.
  • the attributes under test can be link connectivity, nodal routing configuration, or other attributes of interest.
  • the invention provides a number of important advantages over prior approaches.
  • the invention provides a lower layer mechanism to automatically trouble shoot a wired or wireless network without dependence on the network protocol layer or the corresponding established routing tables.
  • the invention advantageously avoids a circular dependency on routing tables that may be faulty.
  • a robust and simplified solution is provided to rapidly find connectivity problems in a network.
  • Figure 1 is a high level network diagram of an example wired, wireless, or hybrid network topology according to an embodiment of the present invention
  • Figure 2 is a network diagram illustrating an example set of links connecting various nodes in a network according to an embodiment of the present invention
  • Figure 3 is a graph diagram illustrating an example set of links between nodes with an odd degree according to an embodiment of the present invention
  • Figure 4 is a graph diagram illustrating an example Eulerized set of links between nodes with an even degree according to an embodiment of the present invention
  • Figure 5 is a network diagram illustrating an example set of network devices with their corresponding communication ranges and possible communication links according to an embodiment of the present invention
  • Figure 6 is a block diagram illustrating an example broadcast message frame according to an embodiment of the present invention.
  • Figure 7 is a block diagram illustrating an example response message frame according to an embodiment of the present invention.
  • Figure 8 is a block diagram illustrating an example network tour message frame according to an embodiment of the present invention.
  • Figures 9A - 9D are graph diagrams illustrating an example network tour technique for creating a scan test route sequence according to an embodiment of the present invention
  • Figure 10 is a graph diagram illustrating an example depth first search technique for creating a scan test route sequence according to an embodiment of the present invention
  • Figure 11 is an example network address list based on hop count according to an embodiment of the present invention.
  • Figure 12 is a block diagram illustrating an exemplary wireless communication device that may be used in connection with the various embodiments described herein; and [24] Figure 13 is a block diagram illustrating an exemplary computer system that may be used in connection with the various embodiments described herein. Detailed Description
  • Certain embodiments as disclosed herein provide for systems and methods for implementing a boundary scan test in a wired or wireless network. For example, one method as disclosed herein allows for a test station on a network to create a MAC layer scan test route sequence using a depth first search technique and then spawn a test agent that traverses the links in the scan test route sequence and reports back to the test station information pertaining to the various links in the scan test route sequence.
  • a test station on a network create a MAC layer scan test route sequence using a depth first search technique and then spawn a test agent that traverses the links in the scan test route sequence and reports back to the test station information pertaining to the various links in the scan test route sequence.
  • Fig. 1 is a high level network diagram of an example wired, wireless, or hybrid network 50 according to an embodiment of the present invention.
  • the system comprises a network 50 that communicatively couples a plurality of network devices 10, 20, and 30.
  • the network 50 can be a wired network, a wireless network, or a combination of homogeneous or heterogeneous networks including both wired and wireless.
  • Network 50 can be a personal area network ("PAN”), a local area network ("LAN”), a wide area network (“WAN”), or a distributed combination of networks collectively comprising a global communications network such as the Internet.
  • Network 50 can be an ad hoc network or a persistent network and can be fixed in location, mobile, or network 50 may comprise a combination of fixed and mobile components.
  • network 50 may carry communications corresponding to a single network protocol or to multiple network protocols. For example, network 50 may carry 802.3 Ethernet traffic and 802.11 wireless traffic.
  • a network device is preferably a device that is capable of communication over a communication network such as network 50.
  • network device 10 can be a personal computer ("PC"), laptop computer, printer, tablet PC, a TV set-top box, a gaming station, or a wireless communication device such as a personal digital assistant ("PDA”), cell phone, pager, or other device with the ability to communicate data over a wireless network.
  • PC personal computer
  • PDA personal digital assistant
  • cell phone cell phone
  • pager or other device with the ability to communicate data over a wireless network.
  • a variety of different network devices such as network device 10, 20, and 30 are communicatively coupled via the network 50.
  • a network device such as network device 10 may be referred to as a network device, network node, node, wireless communication device, wireless network device, and wireless node.
  • a network device may comprise all or a minimal subset of the components and functional capabilities described with respect to Figs. 12 and 13.
  • Fig. 2 is a network diagram illustrating an example set of links connecting various nodes in a network according to an embodiment of the present invention.
  • network devices 10, 20, and 30 are communicatively coupled via a series of links.
  • link 42 connects node 10 and node 20
  • link 44 connects node 20 and node 30
  • link 46 connects node 30 and node 10. Traversing link 42, 44, and 46 in succession accomplishes a network tour, which in the illustrated embodiment is also an Euler tour.
  • Fig. 3 is a graph diagram illustrating an example set of links between nodes with an odd degree according to an embodiment of the present invention.
  • a network 54 comprises nodes 100, 102, 104, and 106.
  • Communication link A connects nodes 100 and 102.
  • Communication link B connects nodes 100 and 104.
  • Communication link C connects nodes 100 and 106.
  • communication links D and F connect nodes 102 and 104, while communication links E and G connect nodes 104 and 106.
  • the degree of each node with nodes 100, 102 and 106 having a degree of three while node 104 has a degree of five.
  • the illustrated network graph is not in Euler form, meaning that in order to traverse each link a single time, some links in the graph must be traversed more than once. For example, traversing the links in the order A, F, D, F, G, E, B, C, C would travel each link at least once and end up back at the originating node, although links F and C would be traveled twice.
  • FIG. 4 is a graph diagram illustrating an example Eulerized set of links between nodes with an even degree according to an embodiment of the present invention.
  • network 54 again comprises nodes 100, 102, 104, and 106.
  • Communication link A connects nodes 100 and 102.
  • Communication link B connects nodes 100 and 104.
  • Communication links C and J connect nodes 100 and 106.
  • communication links D, F, and H connect nodes 102 and 104
  • communication links E and G connect nodes 104 and 106.
  • the degree of each node with nodes 100, 102 and 106 having a degree of four while node 104 has a degree of six. Because each node has an even degree, the network graph is in Euler form. Thus, traversing the links in the order A, F, D, H, G, E, B, C, J would travel each link a single time and end up back at the first node, namely node 100.
  • Fig. 5 is a network diagram illustrating an example set of network devices 210, 220, 230, and 240 with their corresponding communication ranges 211, 221, 231, and 241 respectively. Additionally shown are the universe of possible communication links 251, 252, 253, 254, 255, and 256.
  • the network 200 has a maximum radius of two hops because any communication packet broadcast by any node will be seen by each node in the network in at most two hops.
  • a sequential broadcast process can be employed to create a scan test route sequence.
  • node 210 initially sends a single hop broadcast message that is received only by node 230.
  • the broadcast message can be a communication packet or a roving agent.
  • the communication packet may have a test agent in its data payload.
  • node 230 verifies the link 251 with an acknowledgement message and the quality of link 251 is recorded.
  • node 230 (and any other node receiving the initial broadcast) sends a corresponding single hop broadcast message that is received by node 210, node 220, and node 240.
  • Node 210 as the originator of the broadcast message, suppresses the broadcast message sent out by node 230.
  • nodes 220 and 240 acknowledge the broadcast message, thereby verifying link 253 and link 252, respectively.
  • the corresponding link qualities are also recorded.
  • the next node to resend the broadcast message (either node 220 or node 240) will cause the link 254 to be verified by acknowledgement and the link quality recorded.
  • node 220 resends the broadcast message the broadcast message reaches node 210. Because node 210 did not initially get an acknowledgement from node 220, it may discard the broadcast message and thereby not verify the link 255.
  • node 210 may send an acknowledgment message to node 220 via node 230 and thereby verify the link 255.
  • node 220 can determine from the acknowledgment message received via node 230 that the link 255 is a unidirectional link. Notably, the potential link 256 is never verified and therefore does not exist or is identified as unusable.
  • the results of the test broadcast messages are passed back to node 210 in a directional traceback (e.g., reverse order) method.
  • node 240 sends the link verifications and link qualities it collected from its broadcast message back to node 230, who in turn provides the link verifications and link qualities it collected from its broadcast message back to node 210.
  • node 220 sends its link verifications and link qualities to node 230 who once again passes the information along to node 210.
  • Fig. 6 is a block diagram illustrating an example broadcast message frame 300 according to an embodiment of the present invention. In the illustrated embodiment the message frame 300 comprises a series of fields.
  • the fields include a type field 302 that contains the type of the message, which can be, for example, set to indicate that the message is a scan test route sequence broadcast, as previously described with respect to Fig. 5. Also included is a transmitter address field 304, a source node address field 306, a time-to-live field 308 that indicates the number of hops remaining before the packet is discarded, an agent identification field 310, and an agent field 312 that preferably contains the agent itself.
  • the agent field 312 may include executable instructions.
  • Fig. 7 is a block diagram illustrating an example response message frame 400 according to an embodiment of the present invention. In the illustrated embodiment, the message frame 400 comprises a series of fields.
  • the fields include a type field 402 that indicates the type of unicast response message. Also included is a recipient address field 404, a transmitter address field 406, a destination address field 408, a source node address field 410, a time-to-live field 412, an agent identification field 414, and a results field 416 that preferably contains the results of the scan test broadcast message. In one embodiment, the results field 416 is arranged as a list of links with the corresponding attribute values as determined by the scan test.
  • Fig. 8 is a block diagram illustrating an example network tour message frame 500 according to an embodiment of the present invention.
  • the message frame comprises a series of fields.
  • the fields include a type field 502 that contains the type of the message, for example, the type can indicate a successive network tour message used to create a scan test route sequence.
  • a length field 504 is also included.
  • a source route field 506 where the first and last addresses in the field are preferably starting point of the network tour, a time-to-live field 508, an agent identification field 510, an agent field 512, and a results field 514.
  • a creation of a scan test route sequence is initiated at an arbitrarily designated node in the network.
  • a broadcast message is sent to allow multiple instances of the roving link test agent included in the broadcast message to traverse throughout the network.
  • the packet format of the broadcast message may take the form of the message frame shown in Fig. 6.
  • the broadcast message frame specifies the broadcast operation in the type field, the transmitter address, the original source node address, time-to-live (TTL) of the packet, the roving test agent ID, and the agent itself.
  • TTL time-to-live
  • the agent itself typically specifies the test(s) to be performed and the attributes to be tested, and may also include the executable instructions of the test or executable instructions that modify the test.
  • the broadcast message (a packet or roving test agent) from the originating node (also referred to as the "designated node") is received by another node, the link between the two nodes is verified and the quality of the link is recorded.
  • Each node receiving the initial broadcast (“tier two nodes”) will re-send the broadcast message (e.g., the test agent) and will also discard any subsequently received communication that is the same broadcast message.
  • This defines a broadcast hierarchy in which the originating node is on top, the tier two nodes (i.e., those nodes that are one hop away) are next, and the additional descendants forming tier three, tier four, and so on to the perimeter of the network.
  • each recipient node in tiers two and higher will complete the specified link test and provide a unicast response to the parent node that sent the test agent.
  • a response message frame was previously described with respect to Fig. 7 and may comprise the receiver address, transmitter address, destination address, source address, agents ID and the results of the test.
  • the test results are typically organized as a list of links with the attribute values that are determined by the test.
  • the attributes included in the test results may comprise link connectivity, link quality, relative signal strength indicator, nodal routing configuration or other attributes of interest.
  • the test results are represented as a bit vector.
  • a network with 5000 links e.g., a fully connected network of 100 nodes
  • the test results can also be transported to the designated node using more than one communication packet, for example in the case of a large network.
  • Test result communications can also be acknowledged and resent if necessary to ensure reliable transportation.
  • a multiple bits/link scheme can also be used to indicate the link quality to various levels of granularity or to incorporate multiple link attributes.
  • the network scan test advantageously uses small data packets, eliminating routing tables that can clog the network with useless data.
  • the test results are recorded at each receiver node and sent back to the broadcaster node via the acknowledgement packets.
  • expected that an intermediate node e.g., tier two node
  • the maximum number of acknowledgement operations for a broadcast initiated at the originating node occurs at the nodes that are one hop away from the designated node, for a total of m acknowledgements.
  • the network radius is defined as the minimum number of broadcast operations that must be forwarded by the intermediate nodes in order to reach the most remote node.
  • the network broadcast radius can be estimated, the per hop round trip delay can be estimated, and a proper value of timeout period can be calculated for all nodes at each broadcast ring of n hops from the designated node.
  • a tier two node will advantageously wait to accumulate most or all of the acknowledgements from its descendent nodes before sending its acknowledgement to the designated node.
  • This arrangement also has the advantage of simplifying the implementation and requiring little memory. Specifically, intermediate nodes only need to know how to send an acknowledgement to its immediate parent node in the broadcast hierarchy while waiting for its own descendant nodes to respond. No extra routing table needs to be built at these nodes to facilitate construction of the scan test route sequence.
  • the network boundary scan test requires only a single broadcast operation at each node. Additionally, the network boundary scan test has the advantage of simple implementation and low computation and memory requirements at each intermediate and leaf node.
  • FIGs. 9A - 9D are graph diagrams illustrating an example network tour technique for creating a scan test route sequence according to an embodiment of the present invention.
  • a network is shown comprising four nodes 620, 622, 624, and 626. All of the theoretical links are also shown, including links 630, 632, 634, 636, 638, and 640.
  • two additional links 642 and 644 have been added to the network diagram to make the graph comply with the Euler form.
  • each node 620, 622, 624, and 626 have an even degree.
  • a network tour i.e., a postman tour
  • a network tour can now be constructed as:
  • Such a network tour begins at node 620, traverses each link in the network exactly once, and finishes at node 620.
  • nodes 620 and 624 are unable to communicate.
  • they may be wireless communication devices that are not in range with each other.
  • the scan test route sequence creation process therefore deletes link 640 and any equivalent links such as link 644.
  • the remaining links are shown in Fig. 9C, which requires that the network tour now be constructed as:
  • the network tour begins at node 620, traverses each link in the network exactly once, and finishes at node 620.
  • the network tour begins at node 622, traverses each link in the remaining subnetwork exactly once and finishes back at node 622.
  • the test results are accumulated and passed back to the original starting point, which is node 620.
  • the path for passing back the results is the reverse order of the reconstituted links, namely 632, 634, and 636 in that order.
  • the scan test route sequence process may detect its arrival back at node 620 after traversing (and verifying) link 630 and the process may terminate there and advantageously eliminate the redundant traversal of link 646 and the trace back node 620 through links 632, 634, and 636.
  • the route scan test sequence is created through a series of rural postman tours constructed for each traversable subgraph of the network.
  • the network under test is represented by an undirected graph.
  • a rural postman tour can thus be constructed and is represented as a complete route through the network that traverses each link ("source route").
  • a roving test agent is then deployed to traverse the graph according to the source route, and the test agent includes a copy of the source route as it travels throughout the network.
  • the specified link test is performed and the results recorded. The test results can be reported back to the designated node immediately or carried by the roving test agent for reporting back later.
  • the roving test agent advances to the next node according to the source route. If a link tests out unsuccessfully, i.e., if it has failed or is non-existing, the current tour is suspended. At that point, a new sub-graph is constructed, deleting all the links that have been tested, whether successfully or unsuccessfully, and also deleting the nodes that are no longer connected with the sub-graph after the link deletion. A new rural postman tour is then constructed, with the node where the previous tour was suspended as the starting point (e.g., designated node) of the tour. In this fashion, the roving test continues, until a rural postman tour can be finally and successfully completed. The roving test agent can then traverse backward along all the successful links to reach the original starting point of the tour. This way, all links in the network will be tested at least once.
  • the sub-graph for a subsequently constructed rural postman tour is always simpler (i.e. with fewer links and or fewer nodes) than the graph or sub-graph for the previous tour. This guarantees the algorithm to be convergent. Construction of the rural postman tour is computationally polynomial and can be easily accommodated at a network node, as most modern communication equipment is not constrained by nodal processing power. Moreover, the use of successive rural postman tour calculations avoids broadcast message operations that may unnecessarily flood the network. Complexity (number of transmissions excluding errors) is O(N 2 ), where N is total number of nodes in the network under test.
  • Fig. 10 is a graph diagram illustrating an example depth first search technique for creating a scan test route sequence according to an embodiment of the present invention.
  • a series of network nodes A — I are shown along with the hierarchical communication links that exist between the various nodes. Additional communication links may also be present, for example, between nodes on a common level such as nodes B, C, and D.
  • the scan test route sequence is computed online as the nodes in the network graph are explored via a depth-first-search process from a test station.
  • node A is the test station.
  • the depth first search proceeds in two phases.
  • the primary node constructs a scan chain table that includes a list of all of its neighbor nodes. This is done by sending out a broadcast message.
  • the primary node sends a unicast message to each of the nodes in its neighbor list.
  • the unicast messages are sent out in succession so that the second unicast message is not sent until a response from the first unicast message has been received.
  • the flow proceeds along the following path:
  • the test station A selects a test vector identifier that preferably has not been used to initiate any prior scan-chain constructions. Additionally, a depth identifier variable is initially set to be zero. The test station A then asserts itself as the primary node and sends a broadcast echo request to collect a list of all of its nearest neighbors. The broadcast contains the test vector identifier that uniquely identifies this particular testing round. Additionally, the broadcast contains the depth identifier that indicates the number of nodes that have so far been attached to the scan chain (e.g., the number of hops).
  • test station A When the broadcast echoes are received by test station A, a record is constructed, containing the test vector identifier, depth identifier, neighbor finger (e.g., a pointer to the nearest neighbor) and the list of all the nearest neighbors. The test station A also includes a flag to specify that the scan chain construction will terminate when the last neighbor responds. Finally, test station A sends a unicast message to its nearest neighbor (e.g., node B) that instructs the nearest neighbor to become a primary node and continue the scan chain table construction.
  • its nearest neighbor e.g., node B
  • node B When the nearest neighbor (e.g., node B) receives the unicast message from the test station, it asserts itself as the prim node and sends out a re-broadcast of the test message to identify its closest neighbors.
  • the broadcast message sent out by node B includes the same test vector identifier from the original broadcast.
  • node B When node B receives its echo responses, it also creates a record containing the test vector identifier, depth identifier, neighbor finger (e.g., a pointer to the nearest neighbor) and the list of all the nearest neighbors. Node B also includes in the record a flag to specify that the scan chain table should be returned to node A upon completion, for example by entering node A last in the nearest neighbor list.
  • node B sends a unicast message to its nearest neighbor (e.g., node E) instructing the node to become the primary node and continue construction of the scan chain table.
  • the unicast message includes the same test vector identifier from the original message but the depth identifier is incremented to indicate that another node has been added to the chain.
  • the process continues at node E and F and when that portion of the sub-graph returns to the test station A, the test station A advances to its next nearest neighbor identified in its record and instructs node C to assert itself as a primary node and continue constructing the scan chain table.
  • the depth identifier is never reset so that when the test station A sends the unicast message to node C, the depth identifier is seven, reflecting the number of hops (down and back) along the chain to get from node A to node C.
  • the scan chain table can be used to send probe messages through the boundary scan chain.
  • the test station A sends a broadcast message with three fields.
  • the fields of the broadcast message include: (a) the destination node n; (b) the next hop node k (which is initially one, but is incremented every time the packet is forwarded); and (c) the test vector identifier (which is used to look up the proper scan chain record to be used).
  • this described depth first search technique for creating a scan test route sequence has the advantage of simple implementation, requires little computation at the network nodes, and avoids network congestion by spreading the scan test messages across the depth of the network graph. Additionally, the technique is scalable to any size of network and results in more reliable communications that are not dependent on the existing routing tables or network layer communication protocols.
  • Fig. 11 is an example network address list based on hop count (i.e., scan chain position) according to an embodiment of the present invention.
  • node A has a network address of zero because it is the root node.
  • Node B has a network address of one because it is reached in one hop along the scan test route sequence.
  • node C would also be considered one hop away from node A, according to the scan test route sequence, node C is seven hops away from node A and therefore its network address is seven.
  • node D has a network address of eleven.
  • node E has a network address of 2
  • node F has a network address of 4
  • node G has a network address of 8
  • node H has a network address of 12
  • node I has a network address of 14.
  • node A may advantageously route a communication packet to a particular node through any intermediate node with a lower network address.
  • node A may initially send the packet through node B, node C, or node D and be assured of the packet arriving at node I. This is based upon the sequential nature of the scan test route sequence and the forwarding of communication packets by a recipient node to the next node in the sequence.
  • Fig. 12 is a block diagram illustrating an exemplary wireless communication device 700 that may be used in connection with the various embodiments described herein.
  • the wireless communication device 700 may be used in conjunction with a handset or PDA network device or as a part of a sensor node in a wireless mesh network.
  • a wireless communication device and/or architectures may also be used, as will be clear to those skilled in the art.
  • wireless communication device 700 comprises an antenna 702, a duplexor 704, a low noise amplifier (“LNA”) 706, a power amplifier (“PA”) 708, a modulation circuit 710, a baseband processor 712, a speaker 714, a microphone 716, a central processing unit (“CPU”) 718, and a data storage area 720.
  • LNA low noise amplifier
  • PA power amplifier
  • RF radio frequency
  • Duplexor 704 acts as a switch, coupling antenna 702 between the transmit and receive signal paths. In the receive path, received RF signals are coupled from a duplexor 704 to LNA 706.
  • LNA 706 amplifies the received RF signal and couples the amplified signal to a demodulation portion of the modulation circuit 710.
  • modulation circuit 710 will combine a demodulator and modulator in one integrated circuit ("IC").
  • the demodulator and modulator can also be separate components.
  • the demodulator strips away the RF carrier signal leaving a base-band receive audio signal, which is sent from the demodulator output to the base-band processor 712.
  • base-band processor 712 decodes the signal and converts it to an analog signal. Then the signal is amplified and sent to the speaker 714.
  • the base-band processor 712 also receives analog audio signals from the microphone 716. These analog audio signals are converted to digital signals and encoded by the base-band processor 712.
  • the base-band processor 712 also codes the digital signals for transmission and generates a base-band transmit audio signal that is routed to the modulator portion of modulation circuit 710.
  • the modulator mixes the base-band transmit audio signal with an RF carrier signal generating an RF transmit signal that is routed to the power amplifier 708.
  • the power amplifier 708 amplifies the RF transmit signal and routes it to the duplexor 704 where the signal is switched to the antenna port for transmission by antenna 702.
  • the baseband processor 712 is also communicatively coupled with the central processing unit 718.
  • the central processing unit 718 has access to a data storage area 720.
  • the central processing unit 718 is preferably configured to execute instructions (i.e., computer programs or software) that can be stored in the data storage are 720.
  • Computer programs can also be received from the baseband processor 712 and stored in the data storage are 720 or executed upon receipt. Such computer programs, when executed, enable the wireless communication device 700 to perform the various functions of the present invention as previously described.
  • the term "computer readable medium” is used to refer to any media used to provide executable instructions (e.g., software and computer programs) to the wireless communication device 700 for execution by the central processing unit 718.
  • Examples of these media include the data storage area 720, microphone 716 (via the baseband processor 712), and antenna 702 (also via the baseband processor 712).
  • These computer readable mediums are means for providing executable code, programming instructions, and software to the wireless communication device 700.
  • the executable code, programming instructions, and software when executed by the central processing unit 718, preferably cause the central processing unit 718 to perform the inventive features and functions previously described herein.
  • FIG. 13 is a block diagram illustrating an exemplary computer system 750 that may be used in connection with the various embodiments described herein.
  • the computer system 750 may be used in conjunction with a network device, a network access point, a router, a bridge, or other network infrastructure component.
  • a network device e.g., a network access point, a router, a bridge, or other network infrastructure component.
  • other computer systems and/or architectures may also be used, as will be clear to those having skill in the art.
  • the computer system 750 preferably includes one or more processors, such as processor 752. Additional processors may be provided, such as an auxiliary processor to manage input/output, an auxiliary processor to perform floating point mathematical operations, a special-purpose microprocessor having an architecture suitable for fast execution of signal processing algorithms (e.g., digital signal processor), a slave processor subordinate to the main processing system (e.g., back-end processor), an additional microprocessor or controller for dual or multiple processor systems, or a coprocessor.
  • auxiliary processors may be discrete processors or may be integrated with the processor 752.
  • the processor 752 is preferably connected to a communication bus 754.
  • the communication bus 754 may include a data channel for facilitating information transfer between storage and other peripheral components of the computer system 750.
  • the communication bus 754 further may provide a set of signals used for communication with the processor 752, including a data bus, address bus, and control bus (not shown).
  • the communication bus 754 may comprise any standard or non-standard bus architecture such as, for example, bus architectures compliant with industry standard architecture ("ISA”), extended industry standard architecture (“EISA”), Micro Channel Architecture (“MCA”), peripheral component interconnect (“PCI”) local bus, or standards promulgated by the Institute of Electrical and Electronics Engineers (“IEEE”) including IEEE 488 general-purpose interface bus (“GPIB”), IEEE 696/S-100, and the like.
  • ISA industry standard architecture
  • EISA extended industry standard architecture
  • MCA Micro Channel Architecture
  • PCI peripheral component interconnect
  • IEEE Institute of Electrical and Electronics Engineers
  • IEEE Institute of Electrical and Electronics Engineers
  • GPIB general- purpose interface bus
  • IEEE 696/S-100 IEEE 696/S-100
  • Computer system 750 preferably includes a main memory 756 and may also include a secondary memory 758.
  • the main memory 756 provides storage of instructions and data for programs executing on the processor 752.
  • the main memory 756 is typically semiconductor-based memory such as dynamic random access memory (“DRAM”) and/or static random access memory (“SRAM”).
  • DRAM dynamic random access memory
  • SRAM static random access memory
  • Other semiconductor-based memory types include, for example, synchronous dynamic random access memory (“SDRAM”), Rambus dynamic random access memory (“RDRAM”), ferroelectric random access memory (“FRAM”), and the like, including read only memory (“ROM”).
  • the secondary memory 758 may optionally include a hard disk drive 760 and/or a removable storage drive 762, for example a floppy disk drive, a magnetic tape drive, a compact disc (“CD”) drive, a digital versatile disc (“DVD”) drive, etc.
  • the removable storage drive 762 reads from and/or writes to a removable storage medium 764 in a well- known manner.
  • Removable storage medium 764 may be, for example, a floppy disk, magnetic tape, CD, DVD, etc.
  • the removable storage medium 764 is preferably a computer readable medium having stored thereon computer executable code (i.e., software) and/or data.
  • the computer software or data stored on the removable storage medium 764 is read into the computer system 750 as electrical communication signals 778.
  • secondary memory 758 may include other similar means for allowing computer programs or other data or instructions to be loaded into the computer system 750. Such means may include, for example, an external storage medium 772 and an interface 770. Examples of external storage medium 772 may include an external hard disk drive or an external optical drive, or and external magneto-optical drive. [82] Other examples of secondary memory 758 may include semiconductor-based memory such as programmable read-only memory (“PROM”), erasable programmable read-only memory (“EPROM”), electrically erasable read-only memory (“EEPROM”), or flash memory (block oriented memory similar to EEPROM).
  • PROM programmable read-only memory
  • EPROM erasable programmable read-only memory
  • EEPROM electrically erasable read-only memory
  • flash memory block oriented memory similar to EEPROM
  • Computer system 750 may also include a communication interface 774.
  • the communication interface 774 allows software and data to be transferred between computer system 750 and external devices (e.g. printers), networks, or information sources.
  • external devices e.g. printers
  • computer software or executable code may be transferred to computer system 750 from a network server via communication interface 774.
  • Examples of communication interface 774 include a modem, a network interface card ("NIC"), a communications port, a PCMCIA slot and card, an infrared interface, and an IEEE 1394 fire-wire, just to name a few.
  • Communication interface 774 preferably implements industry promulgated protocol standards, such as Ethernet IEEE 802 standards, Fiber Channel, digital subscriber line (“DSL”), asynchronous digital subscriber line (“ADSL”), frame relay, asynchronous transfer mode (“ATM”), integrated digital services network (“ISDN”), personal communications services (“PCS”), transmission control protocol/Internet protocol (“TCP/IP”), serial line Internet protocol/point to point protocol (“SLIP/PPP”), and so on, but may also implement customized or non-standard interface protocols as well.
  • Software and data transferred via communication interface 774 are generally in the form of electrical communication signals 778. These signals 778 are preferably provided to communication interface 774 via a communication channel 776.
  • Communication channel 776 carries signals 778 and can be implemented using a variety of communication means including wire or cable, fiber optics, conventional phone line, cellular phone link, radio frequency (RF) link, or infrared link, just to name a few.
  • RF radio frequency
  • Computer executable code i.e., computer programs or software
  • main memory 756 and/or the secondary memory 758 are stored in the main memory 756 and/or the secondary memory 758.
  • Computer programs can also be received via communication interface 774 and stored in the main memory 756 and/or the secondary memory 758.
  • Such computer programs when executed, enable the computer system 750 to perform the various functions of the present invention as previously described.
  • computer readable medium is used to refer to any media used to provide computer executable code (e.g., software and computer programs) to the computer system 750. Examples of these media include main memory 756, secondary memory 758 (including hard disk drive 760, removable storage medium 764, and external storage medium 772), and any peripheral device communicatively coupled with communication interface 774 (including a network information server or other network device). These computer readable mediums are means for providing executable code, programming instructions, and software to the computer system 750.
  • the software may be stored on a computer readable medium and loaded into computer system 750 by way of removable storage drive 762, interface 770, or communication interface 774. In such an embodiment, the software is loaded into the computer system 750 in the form of electrical communication signals 778.
  • the software when executed by the processor 752, preferably causes the processor 752 to perform the inventive features and functions previously described herein.
  • Various embodiments may also be implemented primarily in hardware using, for example, components such as application specific integrated circuits ("ASICs"), or field programmable gate arrays ("FPGAs"). Implementation of a hardware state machine capable of performing the functions described herein will also be apparent to those skilled in the relevant art. Various embodiments may also be implemented using a combination of both hardware and software.
  • ASICs application specific integrated circuits
  • FPGAs field programmable gate arrays

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Systems and methods for providing a boundary scan test of a wired or wireless network having a plurality of network nodes are presented. The system includes a test station communicatively coupled with the network. The test station creates a MAC layer scan test route sequence that includes each link in the network and is independent of the routing mechanism and protocol used for the network. The test station also creates a test agent that is configured to traverse each link in the scan test route sequence. The test agent is then deployed on the network and information about a link is reported back to the test station after the test agent examines the link. The scan test route sequence can be created by sending out a series of broadcast messages from one or more nodes in the network, sequentially applying a network tour to cover the entire network, or performing a depth first search on the entire network.

Description

SYSTEM AND METHOD FOR BOUNDARY SCAN TEST OF A WIRED OR WIRELESS NETWORK
Background
1. Field of the Invention
[01] The present invention generally relates to digital data transmission in a communication network and more specifically relates to mechanisms for performing a boundary scan or roving link test on a wired or wireless network.
2. Related Art
[02] Today's networks are very error-prone and difficult to deploy, diagnose and repair. When a network fails, it is difficult and labor intensive to locate the trouble spots. For example, in a system where routing tables are used, the information in the routing table is no longer valid when a failure has occurred. An internet control message protocol ("ICMP") or similar type of protocol can be used to report errors, locate certain faults and monitor network performance. A significant drawback in self-organizing wired or wireless packet networks, however, is the inability to test all possible alternate routes, i.e., routes that are not currently in use but may be required when existing routes have unsatisfactory signal transmission or total failure.
[03] Boundary scan support devices allow the IEEE 1149.1 standard joint test action group ("JTAG") to be used as a backplane bus which opens up possibilities of backplane interconnect test and multi-drop architectures, enabling backplane-to-board-to-chip diagnostics in system integration and field service scenarios. For example, all the memory components of an IC chip can be connected in a long shift register, at minimal overhead, and then a general-purpose serial port on the chip is used to shift arbitrary test vectors into and out of the chip. These test vectors allow the whole chip to be exercised and the results compared to a working chip to verify correctness. All complex chips today are tested via JTAG capable interfaces, and the technology is also used to implement hardware debugging of microprocessors.
[04] In addition, development of the IEEE 1532-2000 in-system configuration standard leverages IEEE 1149.1 structures to enable programming of complex programmable logic devices ("CPLDs") and field programmable gate arrays ("FPGAs") in situ. Today the IEEE 1149.1 standard is limited to digital electronics, and commonly covers only chips with JTAG capabilities. Nevertheless, in a few years, the IEEE 1149.4 standard for a Mixed-Signal Test Bus, will make testing of analog circuitry possible as well. [05] Graph theory is an area of mathematics that deals with entities (called nodes) and the connections (called links) between the nodes. An important traversal problem is to find a tour in a given graph that traverses each edge exactly once and end up at the originating node. Such a tour is called an Euler tour. An Euler tour is possible only if every node has an even number of links attached to it. This is called having an even degree.
[06] Since an Euler tour does not exist in all graphs, a common problem is to determine a minimum length tour that traverses each link at least once. This problem is known as the postman problem. A process called graph Eulerization is used to add duplicate links to the graph. These duplicate links are added in such a fashion that they provide each node in the graph with an even number of attached links. A generalization of the postman problem, known as the rural postman problem, is to determine a least cost traversal of a specified subset of links in the graph. A rural postman tour of an undirected or directed graph can be computed in polynomial time, whereas a rural postman tour of a mixed graph (i.e., a graph having undirected and directed links) is NP-hard. A simple solution is to replace all sub-graphs of even degree with edges indicating a traversal cost, and then compute a minimum matching on the vertices of odd degree.
[07] In recent years network protocol conformance tests have been created that use the rural postman tour algorithm. In this technique, two deterministic finite state machines are used to model the protocol specification and the protocol implementation, respectively. The test is thus to compare the results of the traversal by the two state machines, with a focus of minimizing the total test sequence length. A postman tour technique can similarly be used for traversing all of the links of a network based on the network routing tables. However, the time varying signal transmission and reception conditions in a network often make a statically constructed rural postman tour incomplete at run time. Therefore, the industry lacks a robust way to test the link status of a wired or wireless network in real time a need has been created for a solution that has yet to be filled.
Summary
[08] Accordingly, the method and algorithms disclosed herein apply to a communication network that contains a plurality of network devices (also referred to herein as "network nodes," "nodes," or "network stations") that each have a means for communicating over the communication network. Independent of the existing routing mechanism and protocol used for network protocol and routing communications, a scan test route sequence is constructed. This is accomplished by a sequence of broadcast operations by individual nodes in the network under test. Alternatively, the scan test route sequence can be constructed by successively applying the rural postman ("RPT") tour algorithm. The successive use of the RPT algorithm avoids the broadcast operations that may flood the network. In another arrangement, the scan test route sequence is computed online as the network structure is explored with a depth first search ("DFS") algorithm from a test station by constructing a scan chain table at each node in the network. [09] Once the scan test route sequence has been established, a roving test agent is deployed to traverse each link in the route sequence. The roving test agent is an abstract data type that is transmitted over the network in the data payload of one or more communication packets. The roving test agent may contain source route information, attributes to be tested, and intermediate results. The roving test agent may also contain executable code that can be invoked at each or selected network nodes to perform or modify the tests already to be performed by the agent. The attributes under test can be link connectivity, nodal routing configuration, or other attributes of interest. [10] It will be apparent from what follows that the invention provides a number of important advantages over prior approaches. The invention provides a lower layer mechanism to automatically trouble shoot a wired or wireless network without dependence on the network protocol layer or the corresponding established routing tables. Furthermore, by bypassing the normal routing system the invention advantageously avoids a circular dependency on routing tables that may be faulty. Thus, a robust and simplified solution is provided to rapidly find connectivity problems in a network.
Brief Description of the Drawings [11] The details of the present invention, both as to its structure and operation, may be gleaned in part by study of the accompanying drawings, in which like reference numerals refer to like parts, and in which:
[12] Figure 1 is a high level network diagram of an example wired, wireless, or hybrid network topology according to an embodiment of the present invention; [13] Figure 2 is a network diagram illustrating an example set of links connecting various nodes in a network according to an embodiment of the present invention; [14] Figure 3 is a graph diagram illustrating an example set of links between nodes with an odd degree according to an embodiment of the present invention; [15] Figure 4 is a graph diagram illustrating an example Eulerized set of links between nodes with an even degree according to an embodiment of the present invention; [16] Figure 5 is a network diagram illustrating an example set of network devices with their corresponding communication ranges and possible communication links according to an embodiment of the present invention;
[17] Figure 6 is a block diagram illustrating an example broadcast message frame according to an embodiment of the present invention;
[18] Figure 7 is a block diagram illustrating an example response message frame according to an embodiment of the present invention;
[19] Figure 8 is a block diagram illustrating an example network tour message frame according to an embodiment of the present invention;
[20] Figures 9A - 9D are graph diagrams illustrating an example network tour technique for creating a scan test route sequence according to an embodiment of the present invention;
[21] Figure 10 is a graph diagram illustrating an example depth first search technique for creating a scan test route sequence according to an embodiment of the present invention;
[22] Figure 11 is an example network address list based on hop count according to an embodiment of the present invention;
[23] Figure 12 is a block diagram illustrating an exemplary wireless communication device that may be used in connection with the various embodiments described herein; and [24] Figure 13 is a block diagram illustrating an exemplary computer system that may be used in connection with the various embodiments described herein. Detailed Description
[25] Certain embodiments as disclosed herein provide for systems and methods for implementing a boundary scan test in a wired or wireless network. For example, one method as disclosed herein allows for a test station on a network to create a MAC layer scan test route sequence using a depth first search technique and then spawn a test agent that traverses the links in the scan test route sequence and reports back to the test station information pertaining to the various links in the scan test route sequence. [26] After reading this description it will become apparent to one skilled in the art how to implement the invention in various alternative embodiments and alternative applications. However, although various embodiments of the present invention will be described herein, it is understood that these embodiments are presented by way of example only, and not limitation. As such, this detailed description of various alternative embodiments should not be construed to limit the scope or breadth of the present invention as set forth in the appended claims.
[27] Fig. 1 is a high level network diagram of an example wired, wireless, or hybrid network 50 according to an embodiment of the present invention. In the illustrated embodiment, the system comprises a network 50 that communicatively couples a plurality of network devices 10, 20, and 30.
[28] The network 50 can be a wired network, a wireless network, or a combination of homogeneous or heterogeneous networks including both wired and wireless. Network 50 can be a personal area network ("PAN"), a local area network ("LAN"), a wide area network ("WAN"), or a distributed combination of networks collectively comprising a global communications network such as the Internet. Network 50 can be an ad hoc network or a persistent network and can be fixed in location, mobile, or network 50 may comprise a combination of fixed and mobile components. Additionally, network 50 may carry communications corresponding to a single network protocol or to multiple network protocols. For example, network 50 may carry 802.3 Ethernet traffic and 802.11 wireless traffic.
[29] A network device is preferably a device that is capable of communication over a communication network such as network 50. For example, network device 10 can be a personal computer ("PC"), laptop computer, printer, tablet PC, a TV set-top box, a gaming station, or a wireless communication device such as a personal digital assistant ("PDA"), cell phone, pager, or other device with the ability to communicate data over a wireless network. Preferably, a variety of different network devices such as network device 10, 20, and 30 are communicatively coupled via the network 50.
[30] In this detailed description, a network device such as network device 10 may be referred to as a network device, network node, node, wireless communication device, wireless network device, and wireless node. Although various names may be used herein, a network device may comprise all or a minimal subset of the components and functional capabilities described with respect to Figs. 12 and 13.
[31] Fig. 2 is a network diagram illustrating an example set of links connecting various nodes in a network according to an embodiment of the present invention. In the illustrated embodiment, network devices 10, 20, and 30 are communicatively coupled via a series of links. For example, link 42 connects node 10 and node 20, link 44 connects node 20 and node 30, and link 46 connects node 30 and node 10. Traversing link 42, 44, and 46 in succession accomplishes a network tour, which in the illustrated embodiment is also an Euler tour.
[32] For purposes of consistency and simplification of the detailed description, the various links referred to herein and described in detail will be described as bi-directional and symmetrical communication links. Thus, a successful test of a link from a particular direction, i.e., from a particular source node to a particular destination node, indicates that a test of the same link originating from the initial destination mode and traveling to the initial originating node will also be successful. However, as will be understood by one having skill in the art, the broad scope contemplated by the present detailed description includes the application of the described techniques to both directional and asymmetrical communication networks.
[33] Fig. 3 is a graph diagram illustrating an example set of links between nodes with an odd degree according to an embodiment of the present invention. In the illustrated embodiment, a network 54 comprises nodes 100, 102, 104, and 106. Communication link A connects nodes 100 and 102. Communication link B connects nodes 100 and 104. Communication link C connects nodes 100 and 106. Similarly, communication links D and F connect nodes 102 and 104, while communication links E and G connect nodes 104 and 106. Also shown is the degree of each node, with nodes 100, 102 and 106 having a degree of three while node 104 has a degree of five.
[34] The illustrated network graph is not in Euler form, meaning that in order to traverse each link a single time, some links in the graph must be traversed more than once. For example, traversing the links in the order A, F, D, F, G, E, B, C, C would travel each link at least once and end up back at the originating node, although links F and C would be traveled twice.
[35] Fig. 4 is a graph diagram illustrating an example Eulerized set of links between nodes with an even degree according to an embodiment of the present invention. In the illustrated embodiment, network 54 again comprises nodes 100, 102, 104, and 106. Communication link A connects nodes 100 and 102. Communication link B connects nodes 100 and 104. Communication links C and J connect nodes 100 and 106. Similarly, communication links D, F, and H connect nodes 102 and 104, while communication links E and G connect nodes 104 and 106. Also shown is the degree of each node, with nodes 100, 102 and 106 having a degree of four while node 104 has a degree of six. Because each node has an even degree, the network graph is in Euler form. Thus, traversing the links in the order A, F, D, H, G, E, B, C, J would travel each link a single time and end up back at the first node, namely node 100.
[36] Fig. 5 is a network diagram illustrating an example set of network devices 210, 220, 230, and 240 with their corresponding communication ranges 211, 221, 231, and 241 respectively. Additionally shown are the universe of possible communication links 251, 252, 253, 254, 255, and 256. The network 200 has a maximum radius of two hops because any communication packet broadcast by any node will be seen by each node in the network in at most two hops.
[37] In the illustrated embodiment, a sequential broadcast process can be employed to create a scan test route sequence. For example, node 210 initially sends a single hop broadcast message that is received only by node 230. The broadcast message can be a communication packet or a roving agent. In one embodiment, the communication packet may have a test agent in its data payload. Upon receipt, node 230 verifies the link 251 with an acknowledgement message and the quality of link 251 is recorded. After verifying the link and recording the link quality, node 230 (and any other node receiving the initial broadcast) sends a corresponding single hop broadcast message that is received by node 210, node 220, and node 240.
[38] Node 210, as the originator of the broadcast message, suppresses the broadcast message sent out by node 230. On the other hand, nodes 220 and 240 acknowledge the broadcast message, thereby verifying link 253 and link 252, respectively. The corresponding link qualities are also recorded. The next node to resend the broadcast message (either node 220 or node 240) will cause the link 254 to be verified by acknowledgement and the link quality recorded. Additionally, when node 220 resends the broadcast message the broadcast message reaches node 210. Because node 210 did not initially get an acknowledgement from node 220, it may discard the broadcast message and thereby not verify the link 255. Alternatively, node 210 may send an acknowledgment message to node 220 via node 230 and thereby verify the link 255. Advantageously, node 220 can determine from the acknowledgment message received via node 230 that the link 255 is a unidirectional link. Notably, the potential link 256 is never verified and therefore does not exist or is identified as unusable.
[39] Advantageously, the results of the test broadcast messages are passed back to node 210 in a directional traceback (e.g., reverse order) method. For example, node 240 sends the link verifications and link qualities it collected from its broadcast message back to node 230, who in turn provides the link verifications and link qualities it collected from its broadcast message back to node 210. Similarly, node 220 sends its link verifications and link qualities to node 230 who once again passes the information along to node 210. [40] Fig. 6 is a block diagram illustrating an example broadcast message frame 300 according to an embodiment of the present invention. In the illustrated embodiment the message frame 300 comprises a series of fields. The fields include a type field 302 that contains the type of the message, which can be, for example, set to indicate that the message is a scan test route sequence broadcast, as previously described with respect to Fig. 5. Also included is a transmitter address field 304, a source node address field 306, a time-to-live field 308 that indicates the number of hops remaining before the packet is discarded, an agent identification field 310, and an agent field 312 that preferably contains the agent itself. For example, the agent field 312 may include executable instructions. [41] Fig. 7 is a block diagram illustrating an example response message frame 400 according to an embodiment of the present invention. In the illustrated embodiment, the message frame 400 comprises a series of fields. The fields include a type field 402 that indicates the type of unicast response message. Also included is a recipient address field 404, a transmitter address field 406, a destination address field 408, a source node address field 410, a time-to-live field 412, an agent identification field 414, and a results field 416 that preferably contains the results of the scan test broadcast message. In one embodiment, the results field 416 is arranged as a list of links with the corresponding attribute values as determined by the scan test.
[42] Fig. 8 is a block diagram illustrating an example network tour message frame 500 according to an embodiment of the present invention. In the illustrated embodiment the message frame comprises a series of fields. The fields include a type field 502 that contains the type of the message, for example, the type can indicate a successive network tour message used to create a scan test route sequence. Also included is a length field 504, a source route field 506 where the first and last addresses in the field are preferably starting point of the network tour, a time-to-live field 508, an agent identification field 510, an agent field 512, and a results field 514.
[43] In an exemplary embodiment that employs the message frames previously described with respect to Figs. 6 - 8, a creation of a scan test route sequence is initiated at an arbitrarily designated node in the network. A broadcast message is sent to allow multiple instances of the roving link test agent included in the broadcast message to traverse throughout the network. For example, the packet format of the broadcast message may take the form of the message frame shown in Fig. 6. Advantageously, the broadcast message frame specifies the broadcast operation in the type field, the transmitter address, the original source node address, time-to-live (TTL) of the packet, the roving test agent ID, and the agent itself. The agent itself typically specifies the test(s) to be performed and the attributes to be tested, and may also include the executable instructions of the test or executable instructions that modify the test.
[44] When the broadcast message (a packet or roving test agent) from the originating node (also referred to as the "designated node") is received by another node, the link between the two nodes is verified and the quality of the link is recorded. Each node receiving the initial broadcast ("tier two nodes") will re-send the broadcast message (e.g., the test agent) and will also discard any subsequently received communication that is the same broadcast message. This defines a broadcast hierarchy in which the originating node is on top, the tier two nodes (i.e., those nodes that are one hop away) are next, and the additional descendants forming tier three, tier four, and so on to the perimeter of the network.
[45] In addition to re-broadcasting the test agent, each recipient node in tiers two and higher will complete the specified link test and provide a unicast response to the parent node that sent the test agent. Such a response message frame was previously described with respect to Fig. 7 and may comprise the receiver address, transmitter address, destination address, source address, agents ID and the results of the test. The test results are typically organized as a list of links with the attribute values that are determined by the test. Advantageously, by each receiver acknowledging the broadcast, the link between a receiver and the broadcaster is exercised and can therefore be verified. [46] The attributes included in the test results may comprise link connectivity, link quality, relative signal strength indicator, nodal routing configuration or other attributes of interest. In one embodiment, the test results are represented as a bit vector. In this arrangement, a network with 5000 links (e.g., a fully connected network of 100 nodes) requires roughly 0.625k bytes of data to be carried. The test results can also be transported to the designated node using more than one communication packet, for example in the case of a large network. Test result communications can also be acknowledged and resent if necessary to ensure reliable transportation. A multiple bits/link scheme can also be used to indicate the link quality to various levels of granularity or to incorporate multiple link attributes. Finally, the network scan test advantageously uses small data packets, eliminating routing tables that can clog the network with useless data.
[47] In one embodiment, the test results are recorded at each receiver node and sent back to the broadcaster node via the acknowledgement packets. In such an embodiment, expected that an intermediate node (e.g., tier two node) may provide an acknowledgement multiple times. For example, in a network with a radius of m hops for the aforementioned broadcast operations (i.e., m-1 tiers), the maximum number of acknowledgement operations for a broadcast initiated at the originating node occurs at the nodes that are one hop away from the designated node, for a total of m acknowledgements. [48] Here the network radius is defined as the minimum number of broadcast operations that must be forwarded by the intermediate nodes in order to reach the most remote node. To reduce the number of acknowledgements at the intermediate nodes, the network broadcast radius can be estimated, the per hop round trip delay can be estimated, and a proper value of timeout period can be calculated for all nodes at each broadcast ring of n hops from the designated node. With these timeout parameters, a tier two node will advantageously wait to accumulate most or all of the acknowledgements from its descendent nodes before sending its acknowledgement to the designated node. This arrangement also has the advantage of simplifying the implementation and requiring little memory. Specifically, intermediate nodes only need to know how to send an acknowledgement to its immediate parent node in the broadcast hierarchy while waiting for its own descendant nodes to respond. No extra routing table needs to be built at these nodes to facilitate construction of the scan test route sequence.
[49] Once a timeout period has expired, all the received scan test route sequence results at the designated node can then be used to construct the link map which indicates the connectivity and link quality of each link of the network under test. This link map is the scan test route sequence. Thus, the network boundary scan test requires only a single broadcast operation at each node. Additionally, the network boundary scan test has the advantage of simple implementation and low computation and memory requirements at each intermediate and leaf node.
[50] Figs. 9A - 9D are graph diagrams illustrating an example network tour technique for creating a scan test route sequence according to an embodiment of the present invention. In Fig. 9A, a network is shown comprising four nodes 620, 622, 624, and 626. All of the theoretical links are also shown, including links 630, 632, 634, 636, 638, and 640. In Fig. 9B, two additional links 642 and 644 have been added to the network diagram to make the graph comply with the Euler form. As shown in the illustrated embodiment, each node 620, 622, 624, and 626 have an even degree. A network tour (i.e., a postman tour) can now be constructed as:
640, 634, 636, 630, 638, 642, 632, and 644. Such a network tour begins at node 620, traverses each link in the network exactly once, and finishes at node 620.
[51] In the embodiment illustrated in Fig. 9C, nodes 620 and 624 are unable to communicate. For example, they may be wireless communication devices that are not in range with each other. Thus, the initial traverse (i.e., test) of link 640 fails to verify. The scan test route sequence creation process therefore deletes link 640 and any equivalent links such as link 644. After such action, the remaining links are shown in Fig. 9C, which requires that the network tour now be constructed as:
636, 634, 632, 638, 642, and 630. Once again, the network tour begins at node 620, traverses each link in the network exactly once, and finishes at node 620.
[52] In the embodiment illustrated in Fig. 9D, when the scan test route sequence process reaches node 622 along the new network tour route, a failure on link 638 is detected. At this point, the scan test route sequence process deletes all of the links that have been successfully tested so far and constructs a new network tour for the remaining nodes in the rest of the graph, namely node 620 and node 622 that are connected by link 630. The remaining sub-graph is converted to Euler form by adding a new link 646. The network tour for the sub-graph can now be constructed as:
630 and 646. Here, the network tour begins at node 622, traverses each link in the remaining subnetwork exactly once and finishes back at node 622.
[53] Once the links 630 and 646 are verified, the test results are accumulated and passed back to the original starting point, which is node 620. The path for passing back the results is the reverse order of the reconstituted links, namely 632, 634, and 636 in that order. Alternatively, the scan test route sequence process may detect its arrival back at node 620 after traversing (and verifying) link 630 and the process may terminate there and advantageously eliminate the redundant traversal of link 646 and the trace back node 620 through links 632, 634, and 636.
[54] In an embodiment that employs the rural postman tour, the route scan test sequence is created through a series of rural postman tours constructed for each traversable subgraph of the network. Specifically, the network under test is represented by an undirected graph. A rural postman tour can thus be constructed and is represented as a complete route through the network that traverses each link ("source route"). A roving test agent is then deployed to traverse the graph according to the source route, and the test agent includes a copy of the source route as it travels throughout the network. For each link traversed, the specified link test is performed and the results recorded. The test results can be reported back to the designated node immediately or carried by the roving test agent for reporting back later.
[55] When a link tests out successfully, the roving test agent advances to the next node according to the source route. If a link tests out unsuccessfully, i.e., if it has failed or is non-existing, the current tour is suspended. At that point, a new sub-graph is constructed, deleting all the links that have been tested, whether successfully or unsuccessfully, and also deleting the nodes that are no longer connected with the sub-graph after the link deletion. A new rural postman tour is then constructed, with the node where the previous tour was suspended as the starting point (e.g., designated node) of the tour. In this fashion, the roving test continues, until a rural postman tour can be finally and successfully completed. The roving test agent can then traverse backward along all the successful links to reach the original starting point of the tour. This way, all links in the network will be tested at least once.
[56] Advantageously, the sub-graph for a subsequently constructed rural postman tour is always simpler (i.e. with fewer links and or fewer nodes) than the graph or sub-graph for the previous tour. This guarantees the algorithm to be convergent. Construction of the rural postman tour is computationally polynomial and can be easily accommodated at a network node, as most modern communication equipment is not constrained by nodal processing power. Moreover, the use of successive rural postman tour calculations avoids broadcast message operations that may unnecessarily flood the network. Complexity (number of transmissions excluding errors) is O(N2), where N is total number of nodes in the network under test.
[57] Fig. 10 is a graph diagram illustrating an example depth first search technique for creating a scan test route sequence according to an embodiment of the present invention. In the illustrated embodiment, a series of network nodes A — I are shown along with the hierarchical communication links that exist between the various nodes. Additional communication links may also be present, for example, between nodes on a common level such as nodes B, C, and D.
[58] In the illustrated embodiment, the scan test route sequence is computed online as the nodes in the network graph are explored via a depth-first-search process from a test station. As shown, node A is the test station. The depth first search proceeds in two phases. In the first phase, the primary node constructs a scan chain table that includes a list of all of its neighbor nodes. This is done by sending out a broadcast message. In the second phase, the primary node sends a unicast message to each of the nodes in its neighbor list. The unicast messages are sent out in succession so that the second unicast message is not sent until a response from the first unicast message has been received. [59] Thus, there is a series of broadcast and unicast messages that cause control of the depth first search to traverse through the network to build a comprehensive scan chain table. In the illustrated embodiment, the flow proceeds along the following path:
A, B, E, F, C, G, D, H, I. [60] In constructing the scan chain table, the test station A selects a test vector identifier that preferably has not been used to initiate any prior scan-chain constructions. Additionally, a depth identifier variable is initially set to be zero. The test station A then asserts itself as the primary node and sends a broadcast echo request to collect a list of all of its nearest neighbors. The broadcast contains the test vector identifier that uniquely identifies this particular testing round. Additionally, the broadcast contains the depth identifier that indicates the number of nodes that have so far been attached to the scan chain (e.g., the number of hops).
[61] When the broadcast echoes are received by test station A, a record is constructed, containing the test vector identifier, depth identifier, neighbor finger (e.g., a pointer to the nearest neighbor) and the list of all the nearest neighbors. The test station A also includes a flag to specify that the scan chain construction will terminate when the last neighbor responds. Finally, test station A sends a unicast message to its nearest neighbor (e.g., node B) that instructs the nearest neighbor to become a primary node and continue the scan chain table construction.
[62] When the nearest neighbor (e.g., node B) receives the unicast message from the test station, it asserts itself as the prim node and sends out a re-broadcast of the test message to identify its closest neighbors. The broadcast message sent out by node B includes the same test vector identifier from the original broadcast. When node B receives its echo responses, it also creates a record containing the test vector identifier, depth identifier, neighbor finger (e.g., a pointer to the nearest neighbor) and the list of all the nearest neighbors. Node B also includes in the record a flag to specify that the scan chain table should be returned to node A upon completion, for example by entering node A last in the nearest neighbor list. Finally, node B sends a unicast message to its nearest neighbor (e.g., node E) instructing the node to become the primary node and continue construction of the scan chain table. The unicast message includes the same test vector identifier from the original message but the depth identifier is incremented to indicate that another node has been added to the chain.
[63] The process continues at node E and F and when that portion of the sub-graph returns to the test station A, the test station A advances to its next nearest neighbor identified in its record and instructs node C to assert itself as a primary node and continue constructing the scan chain table. Advantageously, the depth identifier is never reset so that when the test station A sends the unicast message to node C, the depth identifier is seven, reflecting the number of hops (down and back) along the chain to get from node A to node C.
[64] The process continues until the test station advances past the last node in its neighbor list, at which time the scan chain table is complete. Advantageously, the scan chain table can be used to send probe messages through the boundary scan chain. For example, to send a message to the nth node on the scan chain, the test station A sends a broadcast message with three fields. The fields of the broadcast message include: (a) the destination node n; (b) the next hop node k (which is initially one, but is incremented every time the packet is forwarded); and (c) the test vector identifier (which is used to look up the proper scan chain record to be used).
[65] Whenever such a broadcast is sent, with target node n, each node looks up the test vector identifier, and determines if it ever used k as a depth identifier in forwarding a message. If a node has used k, then it accepts the message, and rebroadcasts the message with a next hop identifier of k+1. If a host accepts a message with n = k, then it is the intended recipient and it processes the message. To respond to such a message a new message is generated with a target destination of infinity. This will cause the message to be routed back to the test station A. In the worst case, a greedy online algorithm for the rural postman tour must traverse 2M edges in a graph with M edges. A depth first search as described with respect to Fig. 10 achieves this performance bound and is therefore optimal among all possible greedy online algorithms.
[66] Advantageously, this described depth first search technique for creating a scan test route sequence has the advantage of simple implementation, requires little computation at the network nodes, and avoids network congestion by spreading the scan test messages across the depth of the network graph. Additionally, the technique is scalable to any size of network and results in more reliable communications that are not dependent on the existing routing tables or network layer communication protocols.
[67] Fig. 11 is an example network address list based on hop count (i.e., scan chain position) according to an embodiment of the present invention. In the illustrated network address list, node A has a network address of zero because it is the root node. Node B has a network address of one because it is reached in one hop along the scan test route sequence. Although in conventional routing, node C would also be considered one hop away from node A, according to the scan test route sequence, node C is seven hops away from node A and therefore its network address is seven. Similarly, node D has a network address of eleven. Accordingly, node E has a network address of 2, node F has a network address of 4, node G has a network address of 8, node H has a network address of 12, and node I has a network address of 14.
[68] In one embodiment, node A may advantageously route a communication packet to a particular node through any intermediate node with a lower network address. Thus, to deliver a communication packet to node I, node A may initially send the packet through node B, node C, or node D and be assured of the packet arriving at node I. This is based upon the sequential nature of the scan test route sequence and the forwarding of communication packets by a recipient node to the next node in the sequence. [69] Fig. 12 is a block diagram illustrating an exemplary wireless communication device 700 that may be used in connection with the various embodiments described herein. For example, the wireless communication device 700 may be used in conjunction with a handset or PDA network device or as a part of a sensor node in a wireless mesh network. However, other wireless communication devices and/or architectures may also be used, as will be clear to those skilled in the art.
[70] In the illustrated embodiment, wireless communication device 700 comprises an antenna 702, a duplexor 704, a low noise amplifier ("LNA") 706, a power amplifier ("PA") 708, a modulation circuit 710, a baseband processor 712, a speaker 714, a microphone 716, a central processing unit ("CPU") 718, and a data storage area 720. In the wireless communication device 700, radio frequency ("RF") signals are transmitted and received by antenna 702. Duplexor 704 acts as a switch, coupling antenna 702 between the transmit and receive signal paths. In the receive path, received RF signals are coupled from a duplexor 704 to LNA 706. LNA 706 amplifies the received RF signal and couples the amplified signal to a demodulation portion of the modulation circuit 710. [71] Typically modulation circuit 710 will combine a demodulator and modulator in one integrated circuit ("IC"). The demodulator and modulator can also be separate components. The demodulator strips away the RF carrier signal leaving a base-band receive audio signal, which is sent from the demodulator output to the base-band processor 712.
[72] If the base-band receive audio signal contains audio information, then base-band processor 712 decodes the signal and converts it to an analog signal. Then the signal is amplified and sent to the speaker 714. The base-band processor 712 also receives analog audio signals from the microphone 716. These analog audio signals are converted to digital signals and encoded by the base-band processor 712. The base-band processor 712 also codes the digital signals for transmission and generates a base-band transmit audio signal that is routed to the modulator portion of modulation circuit 710. The modulator mixes the base-band transmit audio signal with an RF carrier signal generating an RF transmit signal that is routed to the power amplifier 708. The power amplifier 708 amplifies the RF transmit signal and routes it to the duplexor 704 where the signal is switched to the antenna port for transmission by antenna 702.
[73] The baseband processor 712 is also communicatively coupled with the central processing unit 718. The central processing unit 718 has access to a data storage area 720. The central processing unit 718 is preferably configured to execute instructions (i.e., computer programs or software) that can be stored in the data storage are 720. Computer programs can also be received from the baseband processor 712 and stored in the data storage are 720 or executed upon receipt. Such computer programs, when executed, enable the wireless communication device 700 to perform the various functions of the present invention as previously described.
[74] In this description, the term "computer readable medium" is used to refer to any media used to provide executable instructions (e.g., software and computer programs) to the wireless communication device 700 for execution by the central processing unit 718. Examples of these media include the data storage area 720, microphone 716 (via the baseband processor 712), and antenna 702 (also via the baseband processor 712). These computer readable mediums are means for providing executable code, programming instructions, and software to the wireless communication device 700. The executable code, programming instructions, and software, when executed by the central processing unit 718, preferably cause the central processing unit 718 to perform the inventive features and functions previously described herein.
[75] Fig. 13 is a block diagram illustrating an exemplary computer system 750 that may be used in connection with the various embodiments described herein. For example, the computer system 750 may be used in conjunction with a network device, a network access point, a router, a bridge, or other network infrastructure component. However, other computer systems and/or architectures may also be used, as will be clear to those having skill in the art.
[76] The computer system 750 preferably includes one or more processors, such as processor 752. Additional processors may be provided, such as an auxiliary processor to manage input/output, an auxiliary processor to perform floating point mathematical operations, a special-purpose microprocessor having an architecture suitable for fast execution of signal processing algorithms (e.g., digital signal processor), a slave processor subordinate to the main processing system (e.g., back-end processor), an additional microprocessor or controller for dual or multiple processor systems, or a coprocessor. Such auxiliary processors may be discrete processors or may be integrated with the processor 752.
[77] The processor 752 is preferably connected to a communication bus 754. The communication bus 754 may include a data channel for facilitating information transfer between storage and other peripheral components of the computer system 750. The communication bus 754 further may provide a set of signals used for communication with the processor 752, including a data bus, address bus, and control bus (not shown). The communication bus 754 may comprise any standard or non-standard bus architecture such as, for example, bus architectures compliant with industry standard architecture ("ISA"), extended industry standard architecture ("EISA"), Micro Channel Architecture ("MCA"), peripheral component interconnect ("PCI") local bus, or standards promulgated by the Institute of Electrical and Electronics Engineers ("IEEE") including IEEE 488 general- purpose interface bus ("GPIB"), IEEE 696/S-100, and the like.
[78] Computer system 750 preferably includes a main memory 756 and may also include a secondary memory 758. The main memory 756 provides storage of instructions and data for programs executing on the processor 752. The main memory 756 is typically semiconductor-based memory such as dynamic random access memory ("DRAM") and/or static random access memory ("SRAM"). Other semiconductor-based memory types include, for example, synchronous dynamic random access memory ("SDRAM"), Rambus dynamic random access memory ("RDRAM"), ferroelectric random access memory ("FRAM"), and the like, including read only memory ("ROM").
[79] The secondary memory 758 may optionally include a hard disk drive 760 and/or a removable storage drive 762, for example a floppy disk drive, a magnetic tape drive, a compact disc ("CD") drive, a digital versatile disc ("DVD") drive, etc. The removable storage drive 762 reads from and/or writes to a removable storage medium 764 in a well- known manner. Removable storage medium 764 may be, for example, a floppy disk, magnetic tape, CD, DVD, etc.
[80] The removable storage medium 764 is preferably a computer readable medium having stored thereon computer executable code (i.e., software) and/or data. The computer software or data stored on the removable storage medium 764 is read into the computer system 750 as electrical communication signals 778.
[81] In alternative embodiments, secondary memory 758 may include other similar means for allowing computer programs or other data or instructions to be loaded into the computer system 750. Such means may include, for example, an external storage medium 772 and an interface 770. Examples of external storage medium 772 may include an external hard disk drive or an external optical drive, or and external magneto-optical drive. [82] Other examples of secondary memory 758 may include semiconductor-based memory such as programmable read-only memory ("PROM"), erasable programmable read-only memory ("EPROM"), electrically erasable read-only memory ("EEPROM"), or flash memory (block oriented memory similar to EEPROM). Also included are any other removable storage units 772 and interfaces 770, which allow software and data to be transferred from the removable storage unit 772 to the computer system 750. [83] Computer system 750 may also include a communication interface 774. The communication interface 774 allows software and data to be transferred between computer system 750 and external devices (e.g. printers), networks, or information sources. For example, computer software or executable code may be transferred to computer system 750 from a network server via communication interface 774. Examples of communication interface 774 include a modem, a network interface card ("NIC"), a communications port, a PCMCIA slot and card, an infrared interface, and an IEEE 1394 fire-wire, just to name a few.
[84] Communication interface 774 preferably implements industry promulgated protocol standards, such as Ethernet IEEE 802 standards, Fiber Channel, digital subscriber line ("DSL"), asynchronous digital subscriber line ("ADSL"), frame relay, asynchronous transfer mode ("ATM"), integrated digital services network ("ISDN"), personal communications services ("PCS"), transmission control protocol/Internet protocol ("TCP/IP"), serial line Internet protocol/point to point protocol ("SLIP/PPP"), and so on, but may also implement customized or non-standard interface protocols as well. [85] Software and data transferred via communication interface 774 are generally in the form of electrical communication signals 778. These signals 778 are preferably provided to communication interface 774 via a communication channel 776. Communication channel 776 carries signals 778 and can be implemented using a variety of communication means including wire or cable, fiber optics, conventional phone line, cellular phone link, radio frequency (RF) link, or infrared link, just to name a few.
[86] Computer executable code (i.e., computer programs or software) is stored in the main memory 756 and/or the secondary memory 758. Computer programs can also be received via communication interface 774 and stored in the main memory 756 and/or the secondary memory 758. Such computer programs, when executed, enable the computer system 750 to perform the various functions of the present invention as previously described.
[87] In this description, the term "computer readable medium" is used to refer to any media used to provide computer executable code (e.g., software and computer programs) to the computer system 750. Examples of these media include main memory 756, secondary memory 758 (including hard disk drive 760, removable storage medium 764, and external storage medium 772), and any peripheral device communicatively coupled with communication interface 774 (including a network information server or other network device). These computer readable mediums are means for providing executable code, programming instructions, and software to the computer system 750. [88] In an embodiment that is implemented using software, the software may be stored on a computer readable medium and loaded into computer system 750 by way of removable storage drive 762, interface 770, or communication interface 774. In such an embodiment, the software is loaded into the computer system 750 in the form of electrical communication signals 778. The software, when executed by the processor 752, preferably causes the processor 752 to perform the inventive features and functions previously described herein.
[89] Various embodiments may also be implemented primarily in hardware using, for example, components such as application specific integrated circuits ("ASICs"), or field programmable gate arrays ("FPGAs"). Implementation of a hardware state machine capable of performing the functions described herein will also be apparent to those skilled in the relevant art. Various embodiments may also be implemented using a combination of both hardware and software.
[90] While the particular systems and methods herein shown and described in detail are fully capable of attaining the above described objects of this invention, it is to be understood that the description and drawings presented herein represent a presently preferred embodiment of the invention and are therefore representative of the subject matter which is broadly contemplated by the present invention. It is further understood that the scope of the present invention fully encompasses other embodiments that may become obvious to those skilled in the art and that the scope of the present invention is accordingly limited by nothing other than the appended claims.

Claims

WHAT IS CLAIMED IS:
1. A method for testing a link in a network that communicatively couples a plurality of network devices, comprising: establishing a MAC layer scan test route sequence that includes each link in a communication network; creating a test agent configured to traverse each link in the scan test route sequence; and deploying the test agent on the communication network, wherein the test agent examines a link in the scan test route sequence to determine information about the link.
2. The method of claim 1, wherein the establishing step comprises sending a series of broadcast messages from each of the plurality of network devices in the communication network.
3. The method of claim 1, wherein the establishing step comprises sequential application of a network tour.
4. The method of claim 3, wherein the network tour is a postman tour.
5. The method of claim 1, wherein the establishing step comprises performing a depth first search of the communication network.
6. The method of claim 5, wherein the performing step comprises constructing a scan chain table at each network device in the communication network.
7. The method of claim 5, wherein the perfonring step comprises generating a canonical addressing scheme based on hop count.
8. The method of claim 1 , wherein the test agent examines each link in the scan test route sequence to determine information about the communication network.
9. The method of claim 1 , wherein the test agent reports the link information to a test station.
10. The method of claim 1 , further comprising: creating a plurality of test agents; and deploying each of the plurality of test agents on the communication network.
11. The method of claim 10, wherein the plurality of test agents report link information to a single test station.
12. The method of claim 1, wherein the test agent is an abstract data type configured for transmission in the data pay load of one or more communication packets.
13. The method of claim 12, wherein the test agent comprises a test type indicator that identifies the type of test to be performed on a link.
14. The method of claim 12, wherein the test agent comprises source route information.
15. The method of claim 12, wherein the test agent comprises intermediate link information results.
16. The method of claim 12, wherein the test agent comprises a link attribute to be analyzed in connection with examining a link.
17. The method of claim 16, wherein the link attribute is a link connectivity state.
18. The method of claim 16, wherein the link attribute is a network device routing configuration.
19. The method of claim 12, wherein the test agent comprises executable instructions to be performed in connection with examining a link.
20. The method of claim 19, wherein the executable instructions modify the tests performed by the test agent when examining a link.
21. The method of claim 19 wherein the executable instructions are invoked at a subset of the plurality of network devices.
22. A system for testing a link in a network that communicatively couples a plurality of network devices, comprising: a test station having a network communication means and a memory, the test station communicatively coupled with a plurality of network devices via a network; a scan test route sequence comprising each link in the network; a test agent configured to examine a link in the scan test route sequence to determine information about the link.
23. The system of claim 22, wherein the communication means is a wireless transceiver.
24. The system of claim 22, wherein the test agent is created by the test station.
25. The system of claim 22, wherein the test agent is further configured to report the link information to a test station.
26. The system of claim 22, wherein the test agent is further configured to examine each link in the scan test route sequence to determine information about the communication network.
27. The system of claim 22, wherein the test agent is an abstract data type configured for transmission in the data payload of one or more communication packets.
28. The system of claim 22, wherein the test agent comprises a test type indicator that identifies the type of test to be performed on a link.
29. The system of claim 22, wherein the test agent comprises source route information.
30. The system of claim 22, wherein the test agent comprises intermediate link information results.
31. The system of claim 22, wherein the test agent comprises a link attribute to be analyzed in connection with examining a link.
32. The system of claim 31 , wherein the link attribute is a link connectivity state.
33. The system of claim 31 , wherein the link attribute is a network device routing configuration.
34. The system of claim 22, wherein the test agent comprises executable instructions to be performed in connection with examining a link.
35. The system of claim 34, wherein the executable instructions modify the tests performed by the test agent when examining a link.
36. The system of claim 34, wherein the executable instructions are invoked at a subset of the plurality of network devices.
PCT/US2003/034884 2003-05-13 2003-10-31 System and method for boundary scan test of a wired or wireless network WO2004104722A2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2004572211A JP4369374B2 (en) 2003-05-13 2003-10-31 System and method for boundary scan testing of wired or wireless networks
AU2003286859A AU2003286859A1 (en) 2003-05-13 2003-10-31 System and method for boundary scan test of a wired or wireless network
EP03778075A EP1625412A2 (en) 2003-05-13 2003-10-31 System and method for boundary scan test of a wired or wireless network

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/437,128 2003-05-13
US10/437,128 US7069483B2 (en) 2002-05-13 2003-05-13 System and method for identifying nodes in a wireless mesh network

Publications (2)

Publication Number Publication Date
WO2004104722A2 true WO2004104722A2 (en) 2004-12-02
WO2004104722A3 WO2004104722A3 (en) 2005-04-07

Family

ID=33476564

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2003/034884 WO2004104722A2 (en) 2003-05-13 2003-10-31 System and method for boundary scan test of a wired or wireless network

Country Status (6)

Country Link
US (2) US7069483B2 (en)
EP (1) EP1625412A2 (en)
JP (1) JP4369374B2 (en)
CN (1) CN1788208A (en)
AU (1) AU2003286859A1 (en)
WO (1) WO2004104722A2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006279168A (en) * 2005-03-28 2006-10-12 Kddi Corp Communication apparatus for configuring adhoc network, bridge apparatus, and communication system
US7852796B2 (en) 2002-05-13 2010-12-14 Xudong Wang Distributed multichannel wireless communication
US9930575B2 (en) 2002-05-13 2018-03-27 Ol Security Limited Liability Company Scalable media access control for multi-hop high bandwidth communications

Families Citing this family (165)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8260896B2 (en) 2007-02-02 2012-09-04 Mwa Intelligence, Inc. Monitoring business machines using a mesh network on field nodes
WO2004045087A2 (en) * 2002-11-08 2004-05-27 Lyndale Trading Company Limited Adaptive broadband platforms and methods of operation
US8780770B2 (en) 2002-05-13 2014-07-15 Misonimo Chi Acquisition L.L.C. Systems and methods for voice and video communication over a wireless network
US7941149B2 (en) * 2002-05-13 2011-05-10 Misonimo Chi Acquistion L.L.C. Multi-hop ultra wide band wireless network communication
US7480253B1 (en) * 2002-05-30 2009-01-20 Nortel Networks Limited Ascertaining the availability of communications between devices
US7404002B1 (en) * 2003-03-06 2008-07-22 Nvidia Corporation Method and system for broadcasting live data over a network
DE10336121B4 (en) * 2003-08-06 2006-10-26 Infineon Technologies Ag Serial asynchronous interface with SLIP encoding / decoding and CRC check in send and receive paths
US20050065915A1 (en) * 2003-09-23 2005-03-24 Allen Wayne J. Method and system to add protocol support for network traffic tools
JP2005184727A (en) * 2003-12-24 2005-07-07 Hitachi Ltd Radio communication system, radio node, constructing method for radio communication system, location measuring method for node
KR100645431B1 (en) * 2004-02-13 2006-11-15 삼성전자주식회사 Broadcast method in wireless network and communication apparatus of using the same
JP3836118B2 (en) * 2004-02-19 2006-10-18 松下電器産業株式会社 Packet routing method and packet routing apparatus
US7206982B1 (en) 2004-06-16 2007-04-17 Arm Limited Diagnostic mechanism for an integrated circuit
KR100606837B1 (en) * 2004-09-03 2006-08-01 엘지전자 주식회사 JTAG Interface Device of mboile phone using receptacle
US8139507B2 (en) * 2004-09-15 2012-03-20 Hewlett-Packard Development Company, L.P. Network graph for alternate routes
KR100656206B1 (en) * 2004-12-28 2006-12-12 삼성전자주식회사 Ad hoc network for transmitting packet to plural target reigon and packet transmitting method thereof
US7383478B1 (en) * 2005-07-20 2008-06-03 Xilinx, Inc. Wireless dynamic boundary-scan topologies for field
US7630736B2 (en) * 2005-10-11 2009-12-08 Mobitrum Corporation Method and system for spatial data input, manipulation and distribution via an adaptive wireless transceiver
US7447160B1 (en) * 2005-12-31 2008-11-04 At&T Corp. Method and apparatus for providing automatic crankback for emergency calls
US9166812B2 (en) 2006-01-31 2015-10-20 Sigma Designs, Inc. Home electrical device control within a wireless mesh network
US20070177576A1 (en) * 2006-01-31 2007-08-02 Niels Thybo Johansen Communicating metadata through a mesh network
US20150187209A1 (en) 2006-01-31 2015-07-02 Sigma Designs, Inc. Method and system for synchronization and remote control of controlling units
US8194569B2 (en) * 2006-01-31 2012-06-05 Sigma Designs, Inc. Static update controller enablement in a mesh network
US8626251B2 (en) * 2006-01-31 2014-01-07 Niels Thybo Johansen Audio-visual system energy savings using a mesh network
US8300652B2 (en) 2006-01-31 2012-10-30 Sigma Designs, Inc. Dynamically enabling a secondary channel in a mesh network
US8509790B2 (en) * 2006-01-31 2013-08-13 Tommas Jess Christensen Multi-speed mesh networks
US20080151824A1 (en) * 2006-01-31 2008-06-26 Peter Shorty Home electrical device control within a wireless mesh network
US7680041B2 (en) * 2006-01-31 2010-03-16 Zensys A/S Node repair in a mesh network
US8626178B2 (en) * 2006-01-31 2014-01-07 Niels Thybo Johansen Audio-visual system control using a mesh network
US8223783B2 (en) * 2006-01-31 2012-07-17 Sigma Designs, Inc. Using battery-powered nodes in a mesh network
US10277519B2 (en) 2006-01-31 2019-04-30 Silicon Laboratories Inc. Response time for a gateway connecting a lower bandwidth network with a higher speed network
US20080154396A1 (en) * 2006-01-31 2008-06-26 Peter Shorty Home electrical device control within a wireless mesh network
US8219705B2 (en) * 2006-01-31 2012-07-10 Sigma Designs, Inc. Silent acknowledgement of routing in a mesh network
US10326537B2 (en) 2006-01-31 2019-06-18 Silicon Laboratories Inc. Environmental change condition detection through antenna-based sensing of environmental change
US20080151795A1 (en) * 2006-01-31 2008-06-26 Peter Shorty Home electrical device control within a wireless mesh network
EP2000670B1 (en) * 2006-03-29 2018-07-25 Eagle Industry Co., Ltd. Control valve for variable displacement compressor
US8060077B2 (en) * 2006-03-30 2011-11-15 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus for functional testing of a base station system
US7631231B2 (en) * 2006-04-19 2009-12-08 Silicon Storage Technology, Inc. Method and apparatus for testing the connectivity of a flash memory chip
FR2902909A1 (en) * 2006-06-23 2007-12-28 Nodbox Sarl METHOD FOR DETERMINING THE RUNNING LIMITS OF A VEHICLE
US8411590B2 (en) 2006-07-27 2013-04-02 Mobitrum Corporation Mesh network remote control device
USRE47894E1 (en) 2006-07-27 2020-03-03 Iii Holdings 2, Llc Method and system for dynamic information exchange on location aware mesh network devices
US8305936B2 (en) 2006-07-27 2012-11-06 Mobitrum Corporation Method and system for dynamic information exchange on a mesh network in a vehicle
US7801058B2 (en) * 2006-07-27 2010-09-21 Mobitrum Corporation Method and system for dynamic information exchange on mesh network devices
US8305935B2 (en) * 2006-07-27 2012-11-06 Mobitrum Corporation Method and system for dynamic information exchange on location aware mesh network devices
US8427979B1 (en) 2006-07-27 2013-04-23 Mobitrum Corporation Method and system for dynamic information exchange on location aware mesh network devices
US8175613B2 (en) 2006-08-04 2012-05-08 Misonimo Chi Acquisitions L.L.C. Systems and methods for determining location of devices within a wireless network
US8040857B2 (en) * 2006-12-07 2011-10-18 Misonimo Chi Acquisitions L.L.C. System and method for timeslot and channel allocation
US8873585B2 (en) 2006-12-19 2014-10-28 Corning Optical Communications Wireless Ltd Distributed antenna system for MIMO technologies
WO2008103374A2 (en) 2007-02-19 2008-08-28 Mobile Access Networks Ltd. Method and system for improving uplink performance
US7827245B2 (en) * 2007-03-06 2010-11-02 International Business Machines Corporation Methods and computer program products for securing display of message content
US8107399B2 (en) * 2007-06-08 2012-01-31 Alcatel-Lucent Usa Inc. Methods and devices for providing robust nomadic wireless mesh networks using directional antennas
US7930401B2 (en) * 2007-06-26 2011-04-19 International Business Machines Corporation Accessing shared resources with improved request peak management
TWI349463B (en) * 2007-06-29 2011-09-21 Univ Nat Taiwan Science Tech Method for transmitting packet and network system using the same
US20100054746A1 (en) 2007-07-24 2010-03-04 Eric Raymond Logan Multi-port accumulator for radio-over-fiber (RoF) wireless picocellular systems
US8175459B2 (en) 2007-10-12 2012-05-08 Corning Cable Systems Llc Hybrid wireless/wired RoF transponder and hybrid RoF communication system using same
WO2009053910A2 (en) 2007-10-22 2009-04-30 Mobileaccess Networks Ltd. Communication system using low bandwidth wires
US8175649B2 (en) 2008-06-20 2012-05-08 Corning Mobileaccess Ltd Method and system for real time control of an active antenna over a distributed antenna system
WO2009081376A2 (en) 2007-12-20 2009-07-02 Mobileaccess Networks Ltd. Extending outdoor location based services and applications into enclosed areas
US8315197B2 (en) 2008-01-25 2012-11-20 Cisco Technology, Inc. Bridging wireless and wired media in a computer network
US20090189739A1 (en) * 2008-01-25 2009-07-30 Mobitrum Corporation Passive voice enabled rfid devices
US7900098B2 (en) * 2008-04-01 2011-03-01 Intel Corporation Receiver for recovering and retiming electromagnetically coupled data
US8904177B2 (en) * 2009-01-27 2014-12-02 Sony Corporation Authentication for a multi-tier wireless home mesh network
US7961674B2 (en) * 2009-01-27 2011-06-14 Sony Corporation Multi-tier wireless home mesh network with a secure network discovery protocol
US8116336B2 (en) * 2009-01-27 2012-02-14 Sony Corporation Distributed IP address assignment protocol for a multi-hop wireless home mesh network with collision detection
US9673904B2 (en) 2009-02-03 2017-06-06 Corning Optical Communications LLC Optical fiber-based distributed antenna systems, components, and related methods for calibration thereof
AU2010210766A1 (en) 2009-02-03 2011-09-15 Corning Cable Systems Llc Optical fiber-based distributed antenna systems, components, and related methods for monitoring and configuring thereof
EP2394379B1 (en) 2009-02-03 2016-12-28 Corning Optical Communications LLC Optical fiber-based distributed antenna systems, components, and related methods for calibration thereof
US8964634B2 (en) * 2009-02-06 2015-02-24 Sony Corporation Wireless home mesh network bridging adaptor
WO2010089719A1 (en) 2009-02-08 2010-08-12 Mobileaccess Networks Ltd. Communication system using cables carrying ethernet signals
US7990897B2 (en) 2009-03-11 2011-08-02 Sony Corporation Method and apparatus for a wireless home mesh network with network topology visualizer
CN101576338B (en) * 2009-05-14 2012-11-14 宫慕光 Method for storing and utilizing natural cold energy and underground low temperature storage
US9590733B2 (en) 2009-07-24 2017-03-07 Corning Optical Communications LLC Location tracking using fiber optic array cables and related systems and methods
US8548330B2 (en) 2009-07-31 2013-10-01 Corning Cable Systems Llc Sectorization in distributed antenna systems, and related components and methods
US9171338B2 (en) 2009-09-30 2015-10-27 Evan V Chrapko Determining connectivity within a community
US20110099164A1 (en) 2009-10-23 2011-04-28 Haim Zvi Melman Apparatus and method for search and retrieval of documents and advertising targeting
US8280259B2 (en) 2009-11-13 2012-10-02 Corning Cable Systems Llc Radio-over-fiber (RoF) system for protocol-independent wired and/or wireless communication
CN101738577A (en) * 2009-12-21 2010-06-16 北京中星微电子有限公司 Module single test interface system
US8275265B2 (en) 2010-02-15 2012-09-25 Corning Cable Systems Llc Dynamic cell bonding (DCB) for radio-over-fiber (RoF)-based networks and communication systems and related methods
WO2011106897A1 (en) 2010-03-05 2011-09-09 Chrapko Evan V Systems and methods for conducting more reliable assessments with connectivity statistics
US9237526B2 (en) 2010-03-12 2016-01-12 Sunrise Micro Devices, Inc. Power efficient communications
WO2011123336A1 (en) 2010-03-31 2011-10-06 Corning Cable Systems Llc Localization services in optical fiber-based distributed communications components and systems, and related methods
US9922134B2 (en) * 2010-04-30 2018-03-20 Www.Trustscience.Com Inc. Assessing and scoring people, businesses, places, things, and brands
US20110268446A1 (en) 2010-05-02 2011-11-03 Cune William P Providing digital data services in optical fiber-based distributed radio frequency (rf) communications systems, and related components and methods
US9525488B2 (en) 2010-05-02 2016-12-20 Corning Optical Communications LLC Digital data services and/or power distribution in optical fiber-based distributed communications systems providing digital data and radio frequency (RF) communications services, and related components and methods
CN101873273A (en) * 2010-07-08 2010-10-27 华为技术有限公司 Routing forwarding method, routing node and wireless communication network
US8570914B2 (en) 2010-08-09 2013-10-29 Corning Cable Systems Llc Apparatuses, systems, and methods for determining location of a mobile device(s) in a distributed antenna system(s)
CN103119865A (en) 2010-08-16 2013-05-22 康宁光缆系统有限责任公司 Remote antenna clusters and related systems, components, and methods supporting digital data signal propagation between remote antenna units
CA2813958A1 (en) * 2010-10-05 2012-04-12 Utc Fire & Security Corporation Bi-directional link margin establishment for wireless embedded systems
US9252874B2 (en) 2010-10-13 2016-02-02 Ccs Technology, Inc Power management for remote antenna units in distributed antenna systems
US9160449B2 (en) 2010-10-13 2015-10-13 Ccs Technology, Inc. Local power management for remote antenna units in distributed antenna systems
US11296504B2 (en) 2010-11-24 2022-04-05 Corning Optical Communications LLC Power distribution module(s) capable of hot connection and/or disconnection for wireless communication systems, and related power units, components, and methods
CN103314556B (en) 2010-11-24 2017-09-08 康宁光缆系统有限责任公司 For distributing antenna system can be with the Power entry module and associate power unit, component and method for electrically connecting and/or disconnecting
EP2678972B1 (en) 2011-02-21 2018-09-05 Corning Optical Communications LLC Providing digital data services as electrical signals and radio-frequency (rf) communications over optical fiber in distributed communications systems, and related components and methods
WO2012148938A1 (en) 2011-04-29 2012-11-01 Corning Cable Systems Llc Determining propagation delay of communications in distributed antenna systems, and related components, systems and methods
EP2702780A4 (en) 2011-04-29 2014-11-12 Corning Cable Sys Llc Systems, methods, and devices for increasing radio frequency (rf) power in distributed antenna systems
US8724516B2 (en) * 2011-10-06 2014-05-13 Rockwell Collins, Inc. Unifying connected dominating set using localized two hop information with a flexible dominating factor
CN103907091A (en) * 2011-10-31 2014-07-02 惠普发展公司,有限责任合伙企业 Remote software depolyment across network
US10311106B2 (en) 2011-12-28 2019-06-04 Www.Trustscience.Com Inc. Social graph visualization and user interface
EP2829152A2 (en) 2012-03-23 2015-01-28 Corning Optical Communications Wireless Ltd. Radio-frequency integrated circuit (rfic) chip(s) for providing distributed antenna system functionalities, and related components, systems, and methods
WO2013148986A1 (en) 2012-03-30 2013-10-03 Corning Cable Systems Llc Reducing location-dependent interference in distributed antenna systems operating in multiple-input, multiple-output (mimo) configuration, and related components, systems, and methods
WO2013153884A1 (en) * 2012-04-11 2013-10-17 株式会社日立国際電気 Radio system, radio base station, and management apparatus
US9781553B2 (en) 2012-04-24 2017-10-03 Corning Optical Communications LLC Location based services in a distributed communication system, and related components and methods
WO2013162988A1 (en) 2012-04-25 2013-10-31 Corning Cable Systems Llc Distributed antenna system architectures
WO2013181247A1 (en) 2012-05-29 2013-12-05 Corning Cable Systems Llc Ultrasound-based localization of client devices with inertial navigation supplement in distributed communication systems and related devices and methods
US9154222B2 (en) 2012-07-31 2015-10-06 Corning Optical Communications LLC Cooling system control in distributed antenna systems
EP2883416A1 (en) 2012-08-07 2015-06-17 Corning Optical Communications Wireless Ltd. Distribution of time-division multiplexed (tdm) management services in a distributed antenna system, and related components, systems, and methods
US10511497B2 (en) 2012-10-04 2019-12-17 Fortinet, Inc. System and method for dynamic management of network device data
US9455784B2 (en) 2012-10-31 2016-09-27 Corning Optical Communications Wireless Ltd Deployable wireless infrastructures and methods of deploying wireless infrastructures
CN103795587B (en) * 2012-11-02 2018-02-23 北汽福田汽车股份有限公司 A kind of gateway route test method and device
US10257056B2 (en) 2012-11-28 2019-04-09 Corning Optical Communications LLC Power management for distributed communication systems, and related components, systems, and methods
WO2014085115A1 (en) 2012-11-29 2014-06-05 Corning Cable Systems Llc HYBRID INTRA-CELL / INTER-CELL REMOTE UNIT ANTENNA BONDING IN MULTIPLE-INPUT, MULTIPLE-OUTPUT (MIMO) DISTRIBUTED ANTENNA SYSTEMS (DASs)
US9647758B2 (en) 2012-11-30 2017-05-09 Corning Optical Communications Wireless Ltd Cabling connectivity monitoring and verification
US9158864B2 (en) 2012-12-21 2015-10-13 Corning Optical Communications Wireless Ltd Systems, methods, and devices for documenting a location of installed equipment
US9497706B2 (en) 2013-02-20 2016-11-15 Corning Optical Communications Wireless Ltd Power management in distributed antenna systems (DASs), and related components, systems, and methods
US9860851B2 (en) * 2013-03-01 2018-01-02 Qualcomm, Incorporated Managing access to transmission medium in a wireless environment
US10355930B2 (en) 2013-03-14 2019-07-16 Fortinet, Inc. System and method of subnetting a virtual network identifier
US9237024B2 (en) 2013-03-15 2016-01-12 Cooper Technologies Company Informational broadcast messages and its uses in wireless multihop networks
CN105452951B (en) 2013-06-12 2018-10-19 康宁光电通信无线公司 Voltage type optical directional coupler
EP3008828B1 (en) 2013-06-12 2017-08-09 Corning Optical Communications Wireless Ltd. Time-division duplexing (tdd) in distributed communications systems, including distributed antenna systems (dass)
US9247543B2 (en) 2013-07-23 2016-01-26 Corning Optical Communications Wireless Ltd Monitoring non-supported wireless spectrum within coverage areas of distributed antenna systems (DASs)
US9661781B2 (en) 2013-07-31 2017-05-23 Corning Optical Communications Wireless Ltd Remote units for distributed communication systems and related installation methods and apparatuses
WO2015029028A1 (en) 2013-08-28 2015-03-05 Corning Optical Communications Wireless Ltd. Power management for distributed communication systems, and related components, systems, and methods
US9385810B2 (en) 2013-09-30 2016-07-05 Corning Optical Communications Wireless Ltd Connection mapping in distributed communication systems
EP3064032A1 (en) 2013-10-28 2016-09-07 Corning Optical Communications Wireless Ltd Unified optical fiber-based distributed antenna systems (dass) for supporting small cell communications deployment from multiple small cell service providers, and related devices and methods
WO2015079435A1 (en) 2013-11-26 2015-06-04 Corning Optical Communications Wireless Ltd. Selective activation of communications services on power-up of a remote unit(s) in a distributed antenna system (das) based on power consumption
US9178635B2 (en) 2014-01-03 2015-11-03 Corning Optical Communications Wireless Ltd Separation of communication signal sub-bands in distributed antenna systems (DASs) to reduce interference
GB2524067B (en) * 2014-03-13 2016-09-07 Canon Kk Method and device for configuring communication links in a communication network
US10637681B2 (en) 2014-03-13 2020-04-28 Silicon Laboratories Inc. Method and system for synchronization and remote control of controlling units
US9775123B2 (en) 2014-03-28 2017-09-26 Corning Optical Communications Wireless Ltd. Individualized gain control of uplink paths in remote units in a distributed antenna system (DAS) based on individual remote unit contribution to combined uplink power
US9357551B2 (en) 2014-05-30 2016-05-31 Corning Optical Communications Wireless Ltd Systems and methods for simultaneous sampling of serial digital data streams from multiple analog-to-digital converters (ADCS), including in distributed antenna systems
US9509133B2 (en) 2014-06-27 2016-11-29 Corning Optical Communications Wireless Ltd Protection of distributed antenna systems
US9525472B2 (en) 2014-07-30 2016-12-20 Corning Incorporated Reducing location-dependent destructive interference in distributed antenna systems (DASS) operating in multiple-input, multiple-output (MIMO) configuration, and related components, systems, and methods
US9730228B2 (en) 2014-08-29 2017-08-08 Corning Optical Communications Wireless Ltd Individualized gain control of remote uplink band paths in a remote unit in a distributed antenna system (DAS), based on combined uplink power level in the remote unit
US9653861B2 (en) 2014-09-17 2017-05-16 Corning Optical Communications Wireless Ltd Interconnection of hardware components
US9602210B2 (en) 2014-09-24 2017-03-21 Corning Optical Communications Wireless Ltd Flexible head-end chassis supporting automatic identification and interconnection of radio interface modules and optical interface modules in an optical fiber-based distributed antenna system (DAS)
US9420542B2 (en) 2014-09-25 2016-08-16 Corning Optical Communications Wireless Ltd System-wide uplink band gain control in a distributed antenna system (DAS), based on per band gain control of remote uplink paths in remote units
US10659163B2 (en) 2014-09-25 2020-05-19 Corning Optical Communications LLC Supporting analog remote antenna units (RAUs) in digital distributed antenna systems (DASs) using analog RAU digital adaptors
US9184960B1 (en) 2014-09-25 2015-11-10 Corning Optical Communications Wireless Ltd Frequency shifting a communications signal(s) in a multi-frequency distributed antenna system (DAS) to avoid or reduce frequency interference
WO2016071902A1 (en) 2014-11-03 2016-05-12 Corning Optical Communications Wireless Ltd. Multi-band monopole planar antennas configured to facilitate improved radio frequency (rf) isolation in multiple-input multiple-output (mimo) antenna arrangement
WO2016075696A1 (en) 2014-11-13 2016-05-19 Corning Optical Communications Wireless Ltd. Analog distributed antenna systems (dass) supporting distribution of digital communications signals interfaced from a digital signal source and analog radio frequency (rf) communications signals
US9954736B2 (en) 2014-12-01 2018-04-24 Fortinet, Inc. System and method of discovering paths in a network
US9729267B2 (en) 2014-12-11 2017-08-08 Corning Optical Communications Wireless Ltd Multiplexing two separate optical links with the same wavelength using asymmetric combining and splitting
EP3235336A1 (en) 2014-12-18 2017-10-25 Corning Optical Communications Wireless Ltd. Digital interface modules (dims) for flexibly distributing digital and/or analog communications signals in wide-area analog distributed antenna systems (dass)
WO2016098111A1 (en) 2014-12-18 2016-06-23 Corning Optical Communications Wireless Ltd. Digital- analog interface modules (da!ms) for flexibly.distributing digital and/or analog communications signals in wide-area analog distributed antenna systems (dass)
US20160249365A1 (en) 2015-02-19 2016-08-25 Corning Optical Communications Wireless Ltd. Offsetting unwanted downlink interference signals in an uplink path in a distributed antenna system (das)
US9578043B2 (en) 2015-03-20 2017-02-21 Ashif Mawji Calculating a trust score
US9785175B2 (en) 2015-03-27 2017-10-10 Corning Optical Communications Wireless, Ltd. Combining power from electrically isolated power paths for powering remote units in a distributed antenna system(s) (DASs)
US9681313B2 (en) 2015-04-15 2017-06-13 Corning Optical Communications Wireless Ltd Optimizing remote antenna unit performance using an alternative data channel
US9948349B2 (en) 2015-07-17 2018-04-17 Corning Optical Communications Wireless Ltd IOT automation and data collection system
US10560214B2 (en) 2015-09-28 2020-02-11 Corning Optical Communications LLC Downlink and uplink communication path switching in a time-division duplex (TDD) distributed antenna system (DAS)
RU2703234C1 (en) 2015-12-01 2019-10-15 Телефонактиеболагет Лм Эрикссон (Пабл) Acknowledgment handshaking feedback mechanism
US20170235792A1 (en) 2016-02-17 2017-08-17 Www.Trustscience.Com Inc. Searching for entities based on trust score and geography
US9438619B1 (en) 2016-02-29 2016-09-06 Leo M. Chan Crowdsourcing of trustworthiness indicators
US9679254B1 (en) 2016-02-29 2017-06-13 Www.Trustscience.Com Inc. Extrapolating trends in trust scores
US9648580B1 (en) 2016-03-23 2017-05-09 Corning Optical Communications Wireless Ltd Identifying remote units in a wireless distribution system (WDS) based on assigned unique temporal delay patterns
US9721296B1 (en) 2016-03-24 2017-08-01 Www.Trustscience.Com Inc. Learning an entity's trust model and risk tolerance to calculate a risk score
US10236924B2 (en) 2016-03-31 2019-03-19 Corning Optical Communications Wireless Ltd Reducing out-of-channel noise in a wireless distribution system (WDS)
CN109417434B (en) * 2016-05-03 2021-10-26 瑞典爱立信有限公司 Variable transport format parameters for fast acknowledgment feedback mechanism
KR101896993B1 (en) * 2016-06-08 2018-09-11 아주대학교산학협력단 Method and Apparatus for deciding path of vehicle
CN107967235A (en) * 2016-10-20 2018-04-27 上海复旦微电子集团股份有限公司 A kind of wireless programmable system
US10637673B2 (en) 2016-12-12 2020-04-28 Silicon Laboratories Inc. Energy harvesting nodes in a mesh network
TWI598610B (en) * 2017-02-16 2017-09-11 致茂電子股份有限公司 General purpose control system
US10180969B2 (en) 2017-03-22 2019-01-15 Www.Trustscience.Com Inc. Entity resolution and identity management in big, noisy, and/or unstructured data
US10944669B1 (en) 2018-02-09 2021-03-09 GoTenna, Inc. System and method for efficient network-wide broadcast in a multi-hop wireless network using packet echos
CA3107919A1 (en) 2018-07-27 2020-01-30 GoTenna, Inc. Vinetm: zero-control routing using data packet inspection for wireless mesh networks
US10831691B1 (en) * 2019-05-24 2020-11-10 International Business Machines Corporation Method for implementing processing elements in a chip card

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6671840B1 (en) * 1997-06-02 2003-12-30 Mitsugu Nagya Communication system with boundary scan elements

Family Cites Families (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5940771A (en) * 1991-05-13 1999-08-17 Norand Corporation Network supporting roaming, sleeping terminals
US6173387B1 (en) 1994-05-11 2001-01-09 Intel Corporation Interleaved exchange in a network mesh
US6282513B1 (en) * 1995-10-06 2001-08-28 Glenn G. Strawder Quality assurance method for a machine and an operator
GB2308776B (en) * 1995-12-28 1998-06-24 Nokia Telecommunications Oy Telecommunications network management method and system
US6003007A (en) * 1996-03-28 1999-12-14 Dirienzo; Andrew L. Attachment integrated claims system and operating method therefor
FR2751814B1 (en) * 1996-07-24 1998-09-25 Gemplus Card Int SERVICE CONTROL AND MANAGEMENT SYSTEM
US6331762B1 (en) * 1997-11-03 2001-12-18 Midtronics, Inc. Energy management system for automotive vehicle
US5959999A (en) 1996-09-20 1999-09-28 Linkabit Wireless, Inc. Providing control-function data in communication-data channel of a full-mesh satellite communication network by dynamic time-slot assignment in TDMA-frame communication channel
US6345260B1 (en) * 1997-03-17 2002-02-05 Allcare Health Management System, Inc. Scheduling interface system and method for medical professionals
US6289316B1 (en) * 1997-03-25 2001-09-11 International Business Machines Corporation Progress notes model in a clinical information system
US6226642B1 (en) * 1997-09-11 2001-05-01 International Business Machines Corporation Content modification of internet web pages for a television class display
US6292596B1 (en) * 1997-09-19 2001-09-18 Eastman Kodak Company Method for automatic image dependent digitization and processing of small format films
US6272492B1 (en) * 1997-11-21 2001-08-07 Ibm Corporation Front-end proxy for transparently increasing web server functionality
US5950203A (en) * 1997-12-31 1999-09-07 Mercury Computer Systems, Inc. Method and apparatus for high-speed access to and sharing of storage devices on a networked digital data processing system
US6357010B1 (en) * 1998-02-17 2002-03-12 Secure Computing Corporation System and method for controlling access to documents stored on an internal network
US6366912B1 (en) * 1998-04-06 2002-04-02 Microsoft Corporation Network security zones
DE19818823A1 (en) 1998-04-27 1999-10-28 Siemens Ag Method for compressing a telephone number database of a telecommunication system and corresponding telecommunication system
US6336114B1 (en) * 1998-09-03 2002-01-01 Westcorp Software Systems, Inc. System and method for restricting access to a data table within a database
US6385730B2 (en) * 1998-09-03 2002-05-07 Fiware, Inc. System and method for restricting unauthorized access to a database
US6418549B1 (en) 1998-10-30 2002-07-09 Merunetworks, Inc. Data transmission using arithmetic coding based continuous error detection
US6480497B1 (en) 1998-11-23 2002-11-12 Ricochet Networks, Inc. Method and apparatus for maximizing data throughput in a packet radio mesh network
JP3401523B2 (en) * 1999-01-11 2003-04-28 デュアキシズ株式会社 Communication element and communication device using the same
US6366683B1 (en) * 1999-03-16 2002-04-02 Curtis P. Langlotz Apparatus and method for recording image analysis information
US6868072B1 (en) * 1999-03-19 2005-03-15 Broadcom Corporation Home phone line network architecture
US6980524B1 (en) 1999-05-20 2005-12-27 Polytechnic University Methods and apparatus for routing in a mobile ad hoc network
US6434191B1 (en) * 1999-09-30 2002-08-13 Telcordia Technologies, Inc. Adaptive layered coding for voice over wireless IP applications
JP2001156787A (en) 1999-11-10 2001-06-08 Internatl Business Mach Corp <Ibm> Wireless station retrieval method and device in wireless adhoc communication network
KR100677078B1 (en) 1999-11-26 2007-02-01 삼성전자주식회사 Method for operating personal ad-hoc network between bluetooth-devices
US6975613B1 (en) 1999-12-06 2005-12-13 Telefonaktiebolaget L M Ericsson (Publ) System and method for scheduling communication sessions in an ad-hoc network
US6791949B1 (en) 2000-04-28 2004-09-14 Raytheon Company Network protocol for wireless ad hoc networks
JP3421639B2 (en) * 2000-06-01 2003-06-30 富士通株式会社 Communication monitoring control for preventing RF signal interference in an information processing device having a plurality of wireless communication units
DE10044994A1 (en) 2000-09-11 2002-03-21 Philips Corp Intellectual Pty Reconfiguration of an ad hoc network
WO2002028020A2 (en) 2000-09-29 2002-04-04 The Regents Of The University Of California Ad hoc network accessing using distributed election of a shared transmission schedule
US6850502B1 (en) 2000-10-30 2005-02-01 Radiant Networks, Plc Join process method for admitting a node to a wireless mesh network
US6807165B2 (en) 2000-11-08 2004-10-19 Meshnetworks, Inc. Time division protocol for an ad-hoc, peer-to-peer radio network having coordinating channel access to shared parallel data channels with separate reservation channel
US6853641B2 (en) 2000-12-20 2005-02-08 Nortel Networks Limited Method of protecting traffic in a mesh network
US6965575B2 (en) 2000-12-29 2005-11-15 Tropos Networks Selection of routing paths based upon path quality of a wireless mesh network
US6865371B2 (en) 2000-12-29 2005-03-08 International Business Machines Corporation Method and apparatus for connecting devices via an ad hoc wireless communication network
US7031293B1 (en) 2001-03-26 2006-04-18 Tropos Networks, Inc. Method and system to provide increased data throughput in a wireless multi-hop network
EP1271834B1 (en) * 2001-05-14 2007-08-08 LG Electronics, Inc. Method for controlling data transmission in a radio communications system
US7003313B2 (en) 2001-06-27 2006-02-21 Ricochet Networks, Inc. Method for enhancing mobility in a wireless mesh network
US6985476B1 (en) 2001-08-20 2006-01-10 Bbnt Solutions Llc Automatic setting of time-to-live fields for packets in an ad hoc network
US6754188B1 (en) 2001-09-28 2004-06-22 Meshnetworks, Inc. System and method for enabling a node in an ad-hoc packet-switched wireless communications network to route packets based on packet content
US6839541B2 (en) 2001-12-04 2005-01-04 Illinois Institute Of Technology Technique for establishing a virtual backbone in an ad hoc wireless network
US6640087B2 (en) 2001-12-12 2003-10-28 Motorola, Inc. Method and apparatus for increasing service efficacy in an ad-hoc mesh network
US20030126291A1 (en) 2001-12-28 2003-07-03 Wang Ben B. Method and message distributor for routing requests to a processing node
US6845084B2 (en) 2001-12-28 2005-01-18 Tsys Acquisition Corp. Routing protocol selection for an ad hoc network
US6904021B2 (en) 2002-03-15 2005-06-07 Meshnetworks, Inc. System and method for providing adaptive control of transmit power and data rate in an ad-hoc communication network
US6870846B2 (en) 2002-04-29 2005-03-22 Harris Corporation Hierarchical mobile ad-hoc network and methods for performing reactive routing therein using dynamic source routing (DSR)
US7007102B2 (en) 2002-04-29 2006-02-28 Harris Corporation Admission control in a mobile ad hoc network
US6970714B2 (en) 2002-04-30 2005-11-29 Lucent Technologies Inc. Adaptive power level setting in an ad-hoc wireless network
US7035207B2 (en) 2002-06-05 2006-04-25 Eka Systems, Inc System and method for forming, maintaining and dynamic reconfigurable routing in an ad-hoc network
US7054126B2 (en) 2002-06-05 2006-05-30 Meshnetworks, Inc. System and method for improving the accuracy of time of arrival measurements in a wireless ad-hoc communications network
US7050819B2 (en) 2002-07-16 2006-05-23 Qwest Communications International Inc. Mesh network mobile unit with positioning system
US7027426B2 (en) 2002-08-05 2006-04-11 Harris Corporation Multi-channel mobile ad hoc network
US6894985B2 (en) 2002-08-05 2005-05-17 Harris Corporation Monitoring link quality in a mobile ad hoc network
US6961310B2 (en) 2002-08-08 2005-11-01 Joseph Bibb Cain Multiple path reactive routing in a mobile ad hoc network
US6986161B2 (en) 2002-08-12 2006-01-10 Harris Corporation Mobile ad-hoc network with intrusion detection features and related methods
US6975614B2 (en) 2002-09-04 2005-12-13 Harris Corporation Intelligent communication node object beacon framework in a mobile ad hoc network
US6763013B2 (en) 2002-09-04 2004-07-13 Harris Corporation Intelligent communication node object beacon framework including neighbor discovery in a mobile ad hoc network
US6850511B2 (en) 2002-10-15 2005-02-01 Intech 21, Inc. Timely organized ad hoc network and protocol for timely organized ad hoc network
US6909721B2 (en) 2002-10-31 2005-06-21 Nokia Corporation Device detection and service discovery system and method for a mobile ad hoc communications network
US6985776B2 (en) * 2003-04-25 2006-01-10 Medtronic, Inc. Method and apparatus for coronary sinus cannulation
US7016328B2 (en) 2003-06-24 2006-03-21 Tropos Networks, Inc. Method for allowing a client to access a wireless system
US7062286B2 (en) 2004-04-05 2006-06-13 Motorola, Inc. Conversion of calls from an ad hoc communication network
US7053770B2 (en) 2004-09-10 2006-05-30 Nivis , Llc System and method for communicating alarm conditions in a mesh network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6671840B1 (en) * 1997-06-02 2003-12-30 Mitsugu Nagya Communication system with boundary scan elements

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7852796B2 (en) 2002-05-13 2010-12-14 Xudong Wang Distributed multichannel wireless communication
US9930575B2 (en) 2002-05-13 2018-03-27 Ol Security Limited Liability Company Scalable media access control for multi-hop high bandwidth communications
JP2006279168A (en) * 2005-03-28 2006-10-12 Kddi Corp Communication apparatus for configuring adhoc network, bridge apparatus, and communication system

Also Published As

Publication number Publication date
US20060253747A1 (en) 2006-11-09
AU2003286859A8 (en) 2004-12-13
US7451365B2 (en) 2008-11-11
EP1625412A2 (en) 2006-02-15
US7069483B2 (en) 2006-06-27
AU2003286859A1 (en) 2004-12-13
JP4369374B2 (en) 2009-11-18
US20030212941A1 (en) 2003-11-13
CN1788208A (en) 2006-06-14
WO2004104722A3 (en) 2005-04-07
JP2006526303A (en) 2006-11-16

Similar Documents

Publication Publication Date Title
US7069483B2 (en) System and method for identifying nodes in a wireless mesh network
JP6125014B2 (en) Multimedia multi-modulation method and multi-data rate mesh network
AU2006223440C1 (en) Multi-node communication system and method of requesting, reporting and collecting destination-node-based measurements and route-based measurements
US7443801B2 (en) Remote estimation of round-trip delays in a data network
KR101150011B1 (en) System and method for link quality routing using a weighted cumulative expected transmission time metric
JP4879281B2 (en) End-to-end quality of service using source-routed probes
US8224626B2 (en) Quality degradation point estimating system and quality degradation point estimating method
TW200950418A (en) Wireless communication method and system for routing packets via intra-mesh and extra-mesh routes
EP3766276B1 (en) Methods and nodes for obtaining information regarding a bluetooth mesh network
JP2011507322A (en) Method for characterizing a communication link in a communication network
Fehnker et al. Modelling and analysis of AODV in UPPAAL
WO2015040821A1 (en) Communication device, communication method
JP7237263B2 (en) Wireless communication terminal, wireless communication method and wireless communication program
WO2004034648A2 (en) Method for a wireless station to determine network metrics prior to associating with an access point
US8259619B2 (en) Topology specifying method and topology specifying apparatus
CN117280671A (en) Message processing method, device, network equipment and medium
Shon et al. Towards the implementation of reliable data transmission for 802.15. 4-based wireless sensor networks
US11894997B2 (en) Methods and systems for network diagnostic
Avakyan et al. Methodology for testing LPWAN networks with mesh topology
JP2007221440A (en) Quality measurement method, terminal, and program
JP2000032038A (en) Traffic analysis method for packet exchange network and system therefor
Machado et al. A User Space Implementation of the AODVv2 Routing Protocol
Chiu et al. Design and Implement Adaptive Tree Topology Mechanism For Wi-Fi Wireless Network
Wang et al. Connecting the Dots: Reconstructing Network Behavior with Individual and Lossy Logs
JP2019068138A (en) Control apparatus, radio terminal, radio communication network, program of the control apparatus

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): BW GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2004572211

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 2003778075

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 20038B03626

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 2003778075

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 2003778075

Country of ref document: EP