US20150351000A1 - Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods - Google Patents

Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods Download PDF

Info

Publication number
US20150351000A1
US20150351000A1 US14/820,687 US201514820687A US2015351000A1 US 20150351000 A1 US20150351000 A1 US 20150351000A1 US 201514820687 A US201514820687 A US 201514820687A US 2015351000 A1 US2015351000 A1 US 2015351000A1
Authority
US
United States
Prior art keywords
client
server
network
clients
leo
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US14/820,687
Inventor
Edwin B. Brownrigg
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
IPCO LLC
Original Assignee
IPCO LLC
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 IPCO LLC filed Critical IPCO LLC
Priority to US14/820,687 priority Critical patent/US20150351000A1/en
Assigned to IPCO, LLC reassignment IPCO, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BROWNRIGG, EDWIN B.
Publication of US20150351000A1 publication Critical patent/US20150351000A1/en
Assigned to ROBBINS GELLER RUDMAN & DOWD LLP reassignment ROBBINS GELLER RUDMAN & DOWD LLP SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: IP CO., LLC
Assigned to IP CO., LLC reassignment IP CO., LLC RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS). Assignors: ROBBINS GELLER RUDMAN & DOWD LLP
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/20Hop count for routing purposes, e.g. TTL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/22Communication route or path selection, e.g. power-based or shortest path routing using selective relaying for reaching a BTS [Base Transceiver Station] or an access point
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/14Relay systems
    • H04B7/15Active relay systems
    • H04B7/155Ground-based stations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/14Relay systems
    • H04B7/15Active relay systems
    • H04B7/185Space-based or airborne stations; Stations for satellite systems
    • H04B7/18502Airborne stations
    • H04B7/18506Communications with or from aircraft, i.e. aeronautical mobile service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/14Relay systems
    • H04B7/15Active relay systems
    • H04B7/185Space-based or airborne stations; Stations for satellite systems
    • H04B7/18578Satellite systems for providing broadband data service to individual earth stations
    • H04B7/18584Arrangements for data networking, i.e. for data packet routing, for congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/24Connectivity information management, e.g. connectivity discovery or connectivity update

Definitions

  • This disclosure relates generally to communication networks and more particularly to wireless network systems.
  • LAN local area network
  • Novell® network or Appleshare® network can be used to couple together the personal computer in an office.
  • one or more network “servers” or “hosts” will influence data flow within the network and access to certain network functions such as a central file repository, printer functions, Internet gateways, etc.
  • Other local area networks operate on a peer-to-peer basis without the use of servers.
  • a wide area network is sometimes referred to as a “networks of networks.”
  • the Internet is a WAN that has, of late, become extremely popular.
  • the origins of the Internet date back several decades to a government-sponsored military/business/research WAN that was designed to remain operational even in the event of a catastrophic loss of a large portion of the network.
  • robust protocols and systems were developed, which allowed a geographically distributed collection of computer systems to be connected by means of a network that would remain operational even if a large portion of the network were destroyed.
  • the Internet is based upon a transmission protocol known as “Transmission Control Protocol/Internet Protocol” (or “TCP/IP” for short), which sends packets of data between a host machine, e.g. a server computer on the Internet, and a client machine, e.g. a user's personal computer connected to the Internet.
  • the VVW1N is an Internet interface protocol which is supported by the same TCP/IP transmission protocol.
  • Intranets are private networks based on the Internet standards, and have become quite common for managing information and communication within an organization. Intranets, since they subscribe to Internet standards, can use the same web browser and web server software as used on the Internet. Internets are, in many cases, supplementing or replacing traditional local area network protocols.
  • Most, if not all, of the data communication links between the various machines of most networks area hard-wired. That is, client machines are typically coupled to a server and to other client machines by wires (such as twisted-pair wires), coaxial cables, fiber optic cables and the like.
  • some of the communication links can be wireless communication links such as microwave links, radio frequency (r.f.) links, etc., but this tends to be rare with most LANs.
  • wireless networks are radio modems for data communication, although there are some IR networks available that work over very short distances, such as within a single large room. However networks spanning larger areas will predominately use radio modems.
  • GRE America, Inc of Belmont, Calif. sells a number of spread-spectrum modems that can be used for the transmission of digitally encoded information.
  • a number of wireless network services such as Ricochet® network services (Ricochet is a subsidiary of Metrocom, Inc of Los Gatos, Calif.) combine a radio modem with a portable personal computer to allow the personal computer to connect to the Internet.
  • the Ricochet system operates by providing a large number of r.f. data transceivers within a given geographic area, that is often attached to telephone poles, and that are coupled to centralized server that serves as a gateway to the Internet.
  • wireless communication systems such as Ricochet system exhibit a number of drawbacks. For one, if the radio modem of the personal computer is not within transmission range of one of the transceivers of the Ricochet network, a connection cannot be made to the network. Furthermore, the Ricochet network can create a great deal of “packet duplication” or “pollution” as copies of a particular data packet are multiply repeated, rather than routed. This packet duplication can also occur if a radio modem of a particular personal computer is radio transmission range of two or more transceivers can each receive the data packets, and each proliferates copies of the data packet across the Ricochet network.
  • Cellular telephone system operates using a number of transceivers, where each transceiver occupies a “cell.”
  • an elaborate and expensive land-based system causes the mobile telephone to “handed-off’ from the cell that it was previously in to the cell that is entering.
  • the equipment and system used for the hand-off is expensive and, further, such hand-off sometimes fail, dropping the telephone connection.
  • individual radios at a given cell can handle only one call at the time, which is inadequate for many computer network systems.
  • Amateur radio (“Ham”) operators have developed a peer-to-peer digital repeater system referred to as the AX.25 protocol. With this protocol, each peer repeats all data packets that it receives, resulting in rapid packet proliferation. In fact, with this protocol, so many packet collisions occur among the peers that the packets may never reach the intended peer.
  • the present disclosure describes a wireless network system which may be particularly well adapted for connections to a wide area network such as an Intranet or the Internet.
  • the wireless network system may include one or more servers which are coupled to the wide area network, and two or more clients capable of communicating with the server or with each other via radio modems.
  • the communication in the wireless network system may take the form of digital data packets, which are not too dissimilar from the TCP/IP data packets used over the Internet.
  • the data packets of the present disclosure may also include data routing information concerning the path or “link” from the source of the packet to the destination of the packet within the wireless network.
  • the data packets may include a code indicating the type of packet being sent.
  • a client of the wireless network system of the present disclosure may have either a direct or an indirect path to a server of the wireless network system.
  • the client When in direct communication with the server, the client is said to be “1 hop” from the server. If the client cannot reliably communicate directly with the server, the client will communicate with a “neighbor” client which has its own path (“link”) to the server. Therefore, a client may be able to communicate with the server along a link that includes one or more other clients. If a client communicates with the server through one other client, it is said to be “2 hops” from the server, if the client communicates to the server through a series of two other clients, it is said to be “3 hops” from the server, etc.
  • the process of the present disclosure may include an optimization process which minimizes the number of hops from the clients to the servers, on the theory that the fewer the number of hops, the better the performance of the network. Optimization process may also factor in traffic and transmission reliability of various links to determine the optimal path to the server.
  • Some wireless network systems described herein may include at least one server having controller and a server radio modem, and a plurality of clients each including a client controller and a client radio modem.
  • the server controller may implement a server process that includes the controlling the server radio modem for the receipt and transmission of data packets from clients of the network.
  • the client controller may implement a client process including the transmission and receipt of data packets from the server and from other clients.
  • the client process of each of the clients may initiate, select, and/or maintain a radio transmission path (“link”) to the server.
  • this radio transmission path to the server may be either a direct path to the server (1 hop) or an indirect path to the server (multi-hop) through one or more clients.
  • the client process of a particular client may also constantly search for improved paths to the server.
  • Some methods for providing wireless network communication described herein may include providing a server implementing a server process, and providing a server implementing a server process, and providing a plurality of clients, each client implementing a client process.
  • the server process may include receiving data packets via server radio modem, sending data packets via the server radio modem, performing a “gateway” function to another network, and/or performing housekeeping functions.
  • the client process may include the sending and receiving of data packets via a client radio modem, maintaining a send/receive data buffer in digital memory, and/or selecting links to the server. Again, the client process may choose a “best” link to the server that may be either a direct path or an indirect path through one or more other clients.
  • Some exemplary servers described herein may provide a gateway between two networks, where at least one of the networks is a wireless network.
  • the gateway function of the server may make any desired translations in digital packets being sent from one network to the other network.
  • the server may include a radio modem capable of communicating with a first, wireless network according to some examples of the present disclosure, a network interface capable of communicating with the second network (which may or may not be wireless and, in fact, may be a wired TCP/IP protocol network), and a digital controller coupled to the radio modem and to the network interface.
  • the digital controller passes data packets received from the first network that are destined for the second network to the second network, and passes data packets received from the second network that are destined for the first network to the first network, after performing any necessary translations to the data packets.
  • the digital controller may further maintain a map of the links of the first network and may provide a map to the first network clients on request. By maintaining a map of the first network links, the server may be able to properly address packets received from either the first network or the second network to the appropriate client of the first network, and may allow the client of the network to maintain and upgrade their data communication paths to the server.
  • Some network clients for a wireless communication network described herein may include a radio modem capable of communicating with at least one server and at least one additional client, and a digital controller coupled to the radio modem to control the sending and receiving of data packets.
  • the digital controller may be further operative to determine an optimal path to at least one server of wireless network.
  • the optimal path can be either a direct path to the server or an indirect path to the server through at least one additional client.
  • the methods and systems of the described herein may provide a wireless network that is both robust and efficient. Since each client of the network can potentially be in communication with a multiplicity of other clients and servers of the network, there may be a great number of link choices available. If conditions change, or if a better link becomes known to a client, the link may be updated and improved.
  • the wireless network system may include a source node having a first source wireless interface and a second source wireless interface, wherein the source node is configured to initiate a data transmission via the first source wireless interface.
  • the wireless network system may also include a repeater node having a first repeater wireless interface and a second repeater wireless interface, wherein the repeater node is configured to receive the data transmission on one of the first repeater wireless interface and the second repeater wireless interface, and to repeat the data transmission on the other of the first repeater wireless interface and the second repeater wireless interface.
  • the wireless network system may further include a destination node having a first destination wireless interface and a second destination wireless interface, wherein the destination node is configured to receive the data transmission on one of the first destination wireless interface and the second destination wireless interface.
  • a method for routing data packets in a wireless network system may include initiating at a source node a data packet transmission via a first source wireless interface, receiving at a repeater node the data packet transmission on one of a first repeater wireless interface and a second repeater wireless interface. The method may further include repeating the data packet transmission on the other of the first repeater wireless interface and the second repeater wireless interface, and receiving the data packet transmission on one of a first destination wireless interface and a second destination wireless interface of a destination node.
  • a satellite-based, wireless network system may include an earth-station server configured to transmit data packets to a secondary network.
  • the wireless network system may also include a first satellite client of a plurality of satellite clients and a terrestrial client configured to maintain a table of known satellites, wherein the table is operable to store an address for each satellite client known to the terrestrial client.
  • At least one processor may be associated with at least one of the earth-station server, the first satellite client, and the terrestrial client, wherein the at least one processor is configured to establish a temporary route between the terrestrial client and the earth-station server via the first satellite client, ping a second satellite client, measure a response latency of the second satellite client, and determine, based on the measured response latency, whether the second satellite client has a reliable time-to-live. Further, if the second satellite client is determined to have the reliable time-to-live, the at least one processor may initiate a normal-mode handoff to the second satellite client. And, if the second satellite client is determined not to have the reliable time-to-live, the at least one processor may initiate a survival-mode handoff.
  • a method for routing data packets in a satellite-based, wireless network may include maintaining at a terrestrial client a table of known satellites, wherein the table is operable to store an address for each known satellite client in the table.
  • the method may also include establishing a temporary route between the terrestrial client and an earth-station server configured to transmit data packets to a secondary network through a first satellite client in a plurality of satellite clients.
  • the method may include pinging a second satellite client, measuring a response latency of the first satellite client, and determining, based on the measured response latency, whether the second satellite client has a predetermined reliable time-to-live.
  • the method may further include initiating a normal-mode handoff to the second satellite client. And, if the first satellite client is determined not to have the reliable time-to-live, the method may includes initiating a survival-mode handoff.
  • a wireless network system may include a terrestrial client including a source wireless interface, wherein the terrestrial client is configured to initiate a data packet transmission via a source wireless interface.
  • the wireless network system may also include a satellite client including an uplink interface and a downlink interface, the uplink interface operating at a first frequency and the downlink interface operating at a second frequency, the first and second frequencies being non-overlapping, wherein the satellite client is configured to receive the data packet transmission on the uplink interface and repeat the data packet transmission on the downlink interface.
  • the wireless network system may further include an earth station server including a first destination wireless interface and a second destination wireless interface, wherein the earth station server is configured to receive the data packet transmission on one of the first destination wireless interface and the second destination wireless interface, repeat the data packet transmission on the other of the first destination wireless interface and the second destination wireless interface, and transmit the data packet transmission to a secondary network.
  • an earth station server including a first destination wireless interface and a second destination wireless interface, wherein the earth station server is configured to receive the data packet transmission on one of the first destination wireless interface and the second destination wireless interface, repeat the data packet transmission on the other of the first destination wireless interface and the second destination wireless interface, and transmit the data packet transmission to a secondary network.
  • a method for routing data packets in a wireless network system may include initiating a data packet transmission via a source wireless interface associated with a terrestrial client. The method may further include receiving the data packet transmission on a first frequency at an uplink interface associated with a satellite client and repeating the data packet transmission on a second frequency at a downlink interface associated with the satellite client, wherein the first and second frequencies are non-overlapping. The method may also include receiving the data packet transmission on one of a first destination wireless interface and a second destination wireless interface associated with an earth-station server, repeating the data packet transmission on the other of the first destination wireless interface and the second destination wireless interface, and transmitting the data packet transmission to a secondary network.
  • a method for routing data packets in a wireless network system may include initiating a data packet transmission via a source wireless interface associated with a terrestrial client. The method may further include receiving the data packet transmission on a first frequency at an uplink interface associated with a satellite client and repeating the data packet transmission on a second frequency at a downlink interface associated with the satellite client, wherein the first and second frequencies are non-overlapping. The method may also include receiving the data packet transmission on one of a first destination wireless interface and a second destination wireless interface associated with an earth-station server, repeating the data packet transmission on the other of the first destination wireless interface and the second destination wireless interface, and transmitting the data packet transmission to a secondary network.
  • a wireless network system may include an earth-station server configured to provide a gateway to a secondary network and a plurality of clients, each including a client controller implementing a client process, wherein the client process of at least one of the clients selects a transmission path to the earth-station server that is an indirect link to the earth-station server through at least one of the other clients, and wherein at least one of the clients is aircraft-based.
  • a method for routing data packets in a wireless network may include configuring an earth-station server to provide a gateway to a secondary network.
  • the method may also include providing a plurality of clients, wherein each of the clients implements a client process operable to select a transmission path to the earth-station server that is an indirect link to the earth-station server through at least one of the other clients, and wherein at least one of the clients is aircraft-based.
  • FIG. 1 is a pictorial representation of a wireless network system in accordance with the present invention
  • FIG. 1 a illustrates a first tree structure of the data communication path or “links” of the wireless network system of FIG. 1 ;
  • FIG. 1 b illustrates a second tree structure illustrating optimized or “stabilized” data communication paths for the wireless network system of FIG. 1 ;
  • FIGS. 2 a - 2 g , 2 h ′- 2 h ′′, and 2 i - 2 o are used to describe a prototype of the wireless network system of FIG. 1 , illustrating both the path connection and path optimization process;
  • FIG. 3 is a block diagram of a server, router, the first wireless network and the second network of FIG. 1 ;
  • FIG. 4 is a flow diagram of a server process operating on the server of FIG. 3 ;
  • FIG. 5 is a flow diagram of the “Process Packets Received From Client” step of FIG. 4 ;
  • FIG. 5 a illustrates a data packet processed by the process illustrated in FIG. 5 ;
  • FIG. 5 b is a flow diagram illustrating the process “Am Ion Route?” of FIG. 5 ;
  • FIG. 5 c is a flow diagram illustrating the process “Data?” of FIG. 5 ;
  • FIG. 6 is a flow diagram illustrating the “Process Intermodal Information” process of FIG. 5 ;
  • FIG. 6 a is a flow diagram illustrating the process “Client Authentic?” of FIG. 6 ;
  • FIG. 6 b is a flow diagram illustrating the process “Put New Client In Tree” of FIG. 6 ;
  • FIG. 7 is a flow diagram illustrating the function “ADDS ON(P,C)” of FIG. 6 b;
  • FIGS. 7 a and 7 b are used to illustrate the operation of the ADSON function of FIG. 7 ;
  • FIG. 8 is a flow diagram illustrating the “Delete Client From Tree” process of FIG. 6 ;
  • FIGS. 8 a - 8 c illustrate the process of FIG. 8 ;
  • FIGS. 9 a - 9 c illustrate the “Place Network Tree In Client Transmit Buffer” of FIG. 6 ;
  • FIG. 10 is a pictorial representation of the “Communicate with Network” process of FIG. 4 ;
  • FIG. 11 is a flow diagram of the process “Communicate With Network” of FIG. 4 ;
  • FIG. 12 is a block diagram of radio packet modem
  • FIG. 13 illustrates a client, such as client A, B, C or D of FIG. 1 ;
  • FIG. 14 is a flow diagram of a client process running on the client of FIG. 13 ;
  • FIG. 15 is a flow diagram of the process “Radio Transmit and Receive Packet” of FIG. 14 ;
  • FIG. 16 is a flow diagram of the process “Perform Transmit/Receive Process” of FIG. 15 ;
  • FIG. 17 is a flow diagram of the process “Process Computer receive Packets” of FIG. 16 ;
  • FIG. 18 is a flow diagram of the process “Process Radio Received Packets” of FIG. 16 ;
  • FIGS. 18 a and 18 b are used to illustrate the process “Is It My Packet?” of FIG. 18 ;
  • FIG. 19 is used to illustrate the “Process Per Type Code” of FIG. 18 ;
  • FIG. 20 illustrates an initialization routine of the client process
  • FIGS. 21 a - 21 d illustrate the process of FIG. 20 ;
  • FIG. 22 depicts an exemplary wireless network comprising transmission paths between a series of nodes in which each node implements an exemplary dual wireless interface
  • FIG. 23 illustrates a block diagram of one possible configuration of a radio modem implementing an exemplary dual-wireless interface
  • FIG. 24 depicts an exemplary LEO constellation
  • FIG. 25 depicts an exemplary satellite-based wireless network
  • FIG. 26 depicts a LEO satellite-based system operating in an exemplary normal mode
  • FIG. 27 illustrates in flow chart form an exemplary overall satellite-based routing scheme
  • FIG. 28 depicts an exemplary “Initiation Subprocess”
  • FIG. 29 depicts an exemplary “LEO Beacon Subprocess”
  • FIG. 30 depicts an exemplary “RTRT Subprocess”
  • FIG. 31 depicts an exemplary “Route Discovery Subprocess”
  • FIG. 32 depicts an exemplary “Reliable TTL Process”
  • FIG. 33 depicts in detail an exemplary “Reliable TTL Handoff Process”
  • FIG. 34 depicts an exemplary “Adjacent Plane Links Process”
  • FIG. 35 depicts an exemplary “Alternate Remote Route Process.”
  • FIG. 36 depicts an exemplary network in which an aircraft-based client may serve as a router for a terrestrial client.
  • FIG. 37 depicts an exemplary network in which aircraft-based clients and LEO clients may form a transmission link to an earth-station.
  • FIG. 38 depicts an exemplary network in which aircraft-based clients may extend a distressed LEO constellation operating in survival mode.
  • FIG. 1 illustrates an exemplary wireless network system 10 .
  • the wireless network system 10 which will also be referred to herein as a “first network”, is preferably in communication with a second network 12 via a digital communication bridge or router 14 .
  • the construction and operation of networks, such as second network 12 , and bridges or routers, such as router 14 are well-known to those skilled in the art.
  • the second network operates on the aforementioned TCP/IP protocols, i.e. the second network is the Internet or is a private Intranet.
  • the second network will be referred to as simply the Internet, it being that other forms of a second network are also operable with the systems, apparatus, and process described herein.
  • routers, bridges, and other network devices such as hubs, gateways and Ethernet interfaces are well-known to those skilled in the art, and are available from a variety of sources including Cisco Systems, 3-Corn, Farillion, Asante, etc.
  • network interface may refer to any such device that allows a server of the wireless network system to communicate, directly and indirectly, with the second network.
  • the exemplary wireless network system 10 may include one or more servers 16 , the single example of which is herein labeled S.
  • the server 16 serves as a gateway in that it performs a translation service between the first network and the second network.
  • the data packets on the first network include links and data types that are only applicable to the first network. Therefore, such links and data types are removed from the data packets before they are transmitted to the second network which, as noted previously, preferably operates on a TCP/IP protocol.
  • data packets received from the second network are modified to include the links and data types before they are transmitted to the first network.
  • the data packets on the first or wireless network can be essentially “packages” or “envelopes” for TCP/IP data packets when they are destined for the Internet or received from the Internet.
  • the data packets of the first network can be of types other than “data” types for TCP/IP formatted data. It should be noted that while only a single server S is shown in this example that, in most cases, multiple servers, each with their own gateway to the intemet, will be used in the first network.
  • the exemplary wireless network system 10 further includes a number of clients 18 , each including a client machine 20 and a radio modem 22 .
  • the client machine 20 can be any form of digital processor, including a personal computer (PC), a computer workstation, a personal digital assistant (PDA), etc.
  • the client machine may be a personal computer (PC) made to the Microsoft Windows/Intel microprocessor (“Wintel”) standard, or the Apple Macintosh standard. Wintel and Macintosh compatible computers are commercially available from a variety of vendors.
  • Wintel and Macintosh compatible computers are commercially available from a variety of vendors.
  • computer workstations and PDAs are available from a number of vendors.
  • Radio modems such as the radio modem 22 , are further available from a number of vendors.
  • At least some embodiments disclosed herein may be implemented using radio modems produced by GRE America, Inc. which operate on a spread spectrum technology, and which provide good receiver sensitivity and repeater capabilities.
  • These GRE America, Inc. radio modems are commercially available under the Gina trademark and operate in the 2.4 gigahertz or 900 megahertz bands with support for the packetized data transmission.
  • the Gina band radio modems further include error detection and correction, can operate in asynchronous and synchronous modes, and can support data speed from 300 to 64 kbps.
  • the Gina radio modems can operate in a point-to-point or point-to-multipoint mode.
  • a server process may be implemented on the server 16
  • a client process also to be discussed in detail subsequently, operates on each of the clients 18 .
  • the client process operates, at least in part, on the client machine 20 .
  • the client process can operate on the controller of the radio modem 22 of the client 18 .
  • the client 18 A is in “direct” radio communication with the server 16 as indicated by the radio communication link 26 .
  • This will be referred to herein as “direct” or “1-hop” or “line-of-sight’ connection with server 16 .
  • the client 18 B does not have a direct path or “link” to the server 16 due to an obstacle 24 , such as a hill, large building, etc. Therefore, the client 18 communicates via a radio link 28 with client 22 A which relays the data packets from client 18 B to server 16 .
  • a client 18 C has a direct line-of-sight to server 16 , but is out of transmission range to the server 16 . Therefore, the client 18 C transmits its data packets by a radio link 30 to client 18 B, from where is relayed to client 18 A via link 28 , for eventual relay to the server S via radio link 26 .
  • 18 D is in direct communication with server 16 via radio communication link 32 . If client 18 C detects the transmissions of client 18 D, it will note that client 18 D has less “hops” to server 16 than does client 18 B, and will switch its link from client 18 B to client 18 D. This process is a part of the “stabilization” or “optimization” process of the network 10 .
  • the exemplary wireless network system 10 may be constantly attempting to optimize itself for the “best” data transmission.
  • this optimization looks solely to the number of hops between the client and the server for the sake of simplicity.
  • other factors can also affect the quality of the data transmission.
  • the traffic, of data packets through a particular client modem may be large, such that is better to route the data from neighboring clients through other clients, even though there may be more hops involved with the alternative routing.
  • some radio links may be less robust or may be slower than other links, such that optimization may result in a routing of data around the less robust or slower links, even though it may increase the number of hops to the server 16 . Therefore, although the present embodiment looks at only one single factor in its optimization process, it will be appreciated by those skilled in the art that multiple factors can be used to stabilize or optimize the exemplary wireless network system 10 .
  • the exemplary wireless network system 10 may be quite robust in that it may survive the loss of one or more clients in the system. For example, if the client 18 A is lost due, for example, to a power or system failure, the data packets of client 18 C can be routed through the client 18 D, and the data packets for the client 18 B can be routed through clients 18 C. Therefore, the wireless network system 10 may be highly robust and highly survivable under a number of adverse conditions.
  • some embodiments described herein may permit mobile communication within the wireless network system 10 .
  • the client 18 D is a portable computer and is moved around within the wireless network system 10 , it will opportunistically change its data communication path as better links become available.
  • the client 18 D is moved close to the client 18 B, it may use the client 18 B as its link to server 16 .
  • any routing through the client 18 D from other clients will be updated and optimized as the data path for the client 18 D changes.
  • the network may operate the best and may be the most suitable if the radio modems and their client/controllers are never turned off. It may therefore be desirable to not have and on/off switch on the radio modem, so that the clients are always participating in the network traffic distribution. However, even if a radio modem is turned off, the remaining clients will re-route through other clients, as will be discussed subsequently
  • FIGS. 1 a and 1 b two “tree” structures are shown illustrating the various links that were discussed, by way of example, with reference to FIG. 1 .
  • the tree structure is maintained in the server S, and is transmitted to any client that may request it.
  • a tree indicates that client 18 A is linked to a server 16 by a link 26 , client 18 B is linked by link 28 to a client 18 A and by link 26 to a server, and client 18 C is linked by line 30 to client 18 B, by link 28 to client 18 A and by line 26 to server 16 .
  • the client 18 D is in direct communication with the server 16 via radio link 32 . Therefore, clients 18 A and 18 D are both “1 hop” away from the server 16 , client 18 B is “2 hops” away from server 16 , and client 18 C is “3 hops” away from server 16 .
  • client 18 C realizes it has a better connection to server 16 through the client 18 D
  • the link 30 to client 18 B is no longer used, and a new radio link 34 to client 18 D is established.
  • FIG. 1 b Now clients 18 A and 18 B remain 1 hop clients, client 18 B remains a 2 hop client, but client 18 C is upgraded from a 3 hop client to a 2 hop client. Therefore, the data transmission efficiency of the network has been “stabilized” or “optimized.”
  • link is used to convey both the connection to an adjacent client as well as the entire path from the client to a server. It will therefore be understood that when speaking of a link to an adjacent client, that this also implicitly includes all necessary links from that adjacent client to the server, i.e. a link is the entire path description from a given client to a given server.
  • FIGS. 2 a - 2 o an exemplary wireless point-to-multipoint network is prototyped to facilitate a discussion of the theory and operation of the disclosed embodiments present invention.
  • a network 36 with 60 potential “nodes” 001 through 060 is illustrated.
  • a “node” can either be a client or a server.
  • the nodes 014 and 016 have been arbitrarily selected as servers for the purpose of this example.
  • the nodes 014 and 016 are marking servers with the large black dot replacing the leading “0” of those numerals.
  • client 005 is referred as client 5 in FIG. 2 b .
  • This notation is used for clients with respect to clients and servers and the notation should not be confused with any other uses of the reference numerals 1 through 60 in this document.
  • a first client is designated at node 005 (hereafter “client 005 ”).
  • client 005 the Yen or “E” symbol is positioned next to the client 005 .
  • client 005 detects that there is a radio contact with node 014 , which is a server (hereafter “server 014 ”). This server 014 and the client 005 will build a routing path or “link” between each other.
  • client 0005 transmitting a “I Am Alive” packet seeking a route to a server.
  • the server 014 being within a radio transmission range, will respond and will add the client 005 to its routing table as its “left son.”
  • the meanings of the “routing table” and the “left son” will be described subsequently.
  • the routing table of the server 014 is therefore 014 ( 005 ), and the route from the client 005 to the server 014 is 005>014. Again, this notation will be discussed in greater detail subsequently.
  • the network 36 than has a second client 6 added as indicated by the “E” symbol next to node 006 in FIG. 2 c .
  • Second client 006 makes radio contact with client 005 and builds a routing path or a “link” to a server 014 through the client 005 .
  • Server 014 updates its routing table accordingly. This is accomplished by client 006 issuing an “I Am Alive” packet seeking a client repeater route to a server.
  • Client 005 will respond and add client 006 to its routing table as its left son.
  • the updated routing table of the server 014 is therefore 014 ( 005 ) 006 )).
  • the route from the user client node 006 to the server 014 is 006 > 005 > 014 .
  • a third client 007 is added to the network 36 as indicated by the “E” symbol next to node 007 .
  • Client 007 establishes contact with client 006 and finds a path through clients 006 and 005 to server 014 . This is accomplished by client 007 issuing a “I Am Alive” packet seeking a client repeater route to server 014 .
  • Client 006 will respond and add client 007 to its routing table as its left son.
  • the updated routing table of the server 014 is then: 014 ( 005 ( 006 ( 007 ))).
  • the route from client 007 to the server 014 is: 007 > 006 > 005 > 014 .
  • FIG. 2 e another client 016 has been added at node 016 as indicated by the “El symbol. It should be noted that the client 016 can make radio contact with clients 005 , 006 , and 007 . However, client 016 recognizes node 026 as being a server (hereafter “server 026 ”) and then connects directly to server 026 . This is accomplished by client 016 transmitting a “I Am Alive” packet seeking a route to a server. The server 026 will respond and will add client 016 to its routing table and its left son. The updated routing table of server 026 is then 026 ( 016 ). The routing from client 016 to the server 026 is 016 > 026 .
  • server 026 a server
  • FIG. 2 f a server routing table and a route for each client thus far in the example are illustrated.
  • client 016 came into existence, a shorter route was created for client 007 to a server, namely via client 016 to server 026 .
  • client 007 has made the adjustment to connect to server 026 , thereby “stabilizing” or “optimizing” the network 26 .
  • server 014 has deleted client 007 from its routing table, since client 007 is now using server 026 as its gateway to the Internet. This creates a universe of six nodes, of which two are servers and of which four are clients. The average “hop” distance from a client to a server is 1.5 hops.
  • FIGS. 2 g - 2 o further illustrate these concepts.
  • FIG. 2 g the network 36 illustrates an extreme example where 58 clients are connected to the two servers 014 and 026 .
  • FIGS. 2 h ′ and 2 h ′′ show a fully “stabilized” or “optimized” network where the path or “link” from any client any client to a server is as short as possible, i.e. where there is few “hops” as possible. It should be noted that the optimization occurs dynamically during operation and without complex algorithms and look-up tables. As will be discussed in greater detail subsequently, the optimization occurs when clients “hear” transmission from other clients that have a better (i.e. shorter) path to a server.
  • FIG. 2 h ′ shows the network as seen from the point of view of servers 014 and 026 and from the point of views of clients 001 -client 031 .
  • FIG. 2 h ′′ the network as seen from the point of view of clients 032 - 060 , along with statistics for the overall network, are shown.
  • the average hop distance from a client to a server is 2.36206897 hops.
  • FIG. 2 i the process of adding a new client 009 to the server is illustrated.
  • the reason that it may take many tries to find a connection path is that multiple neighbors of client 009 are responding to the client 009 “I Am Alive” message via CSMA/CD (Carrier Sent Multiple Access/Collision Detection) protocol.
  • CSMA/CD Carrier Sent Multiple Access/Collision Detection
  • client 009 hears from a neighbor that it does not have a path to a server, client 009 tells that neighbor not to respond to the next “I Am Alive” announcement from client 009 . In consequence, client 009 keeps trying to find a path to the server until it succeeds. However, that path may not be the shortest path. In this example, the client 009 finds a path to the Internet server, resulting in updating of the routing table for the Internet server 014 , as 014 ( 005 ( 006 ( 007 ( 008 ( 009 ))), 004 , 003 ).
  • the route or “link” from client 009 to the server is: 009 > 008 > 009 > 006 > 005 > 014 .
  • a client 029 is finding a route to the server via one of its neighbors. It finds a route through 019 , and is added to the routing table a client 019 as its left son. The routing table of server 014 is also updated, and the rout from user client 029 to the server is determined. However, this route is not an optimal route in that it includes a greater number of hops than necessary.
  • FIG. 2 k the “stabilization” or “optimization” process is illustrated.
  • client 029 has a non-optimal path to a server.
  • client 029 will receive “help” from its neighbors starting with client 007 .
  • Client 007 currently has a route to server 014 .
  • Client 007 starts randomly probing its neighbors looking to a short route to a server.
  • Client 007 finds a shorter route to client 026 .
  • Client 007 informs server 014 to drop client 007 from server 014 's routing table, and client 007 informs server 026 to add client 007 to its routing table. Since client 029 was “downstream” from client 007 , client 029 dramatically becomes switched to a route to server 026 .
  • this process is repeated for client 008 .
  • client 008 shortens its route to server 026 by 1 hop.
  • Client 009 cannot improve its route to server 026 .
  • client 018 shortens its route to server 027 to 2 hops. This is despite the fact that the route to client 007 and 008 are a relatively efficient 3 hop links.
  • client 029 is optimizing its path. Client 029 eliminates 018 from its route by “leap frogging” past client 018 with the result of the shortest possible 3 hop route to server. Ultimately, therefore, client 029 route is improved from a 7 hop path to server 014 to the shortest possible 3 hop path to server 026 . This result is dramatically accomplished with the efficiencies of clients 007 , 008 , and 018 also improving, and without the need for complex routing algorithms.
  • FIG. 2 o another example of individual dramatic routing is illustrated for client 044 .
  • This client node shortens its route from 3 to 2 hops by switching server destinations.
  • Client 044 drops out of the server 014 's routing table and gets added to server 026 's routing table.
  • the advantage of prototyping the system in FIGS. 2 a - 2 o is that further optimizations become apparent. For example, if a great deal of network traffic is going to a particular node, it may be desirable to place a “passive repeater” at that node.
  • a passive repeater is not a client, per se, but, rather, is a transceiver that receives and rebroadcasts packets. The passive repeater therefore effectively extends the range the range of the transmitting clients, and reduces data bottlenecks in the system.
  • a passive repeater is also used for clients with long links to a server in that it can shorten the link by effectively allowing to skip some intermediate links.
  • the prototyping of the system is also useful in that it shows that placing servers near the center of the network reduces the average link length (i.e. reduces the average number of client hops) in the network.
  • FIG. 3 a block diagram of the server 16 of FIG. 1 is illustrated.
  • the server 16 includes a computer system 38 and a number of peripherals coupled to the computer system.
  • the computer system 38 can be a personal computer system, a computer workstation or a custom data processor capable of implementing the exemplary processes disclosed herein.
  • the computer system 38 includes a microprocessor 42 that is coupled to a memory bus 44 and to an input/output (I/O) bus 46 .
  • I/O input/output
  • RAM random access memory
  • ROM read only memory
  • the RAM 48 is usually volatile (i.e. its contents are lost when power is removed) and is used for temporarily or “scratch pad” memory.
  • the ROM 50 is nonvolatile (i.e. its contents are not lost when power is removed), and typically includes the start-up instructions for the computer system 38 .
  • a number of peripherals are typically coupled to the I/O bus 46 .
  • a removable media drive 52 for a removable media 54 is typically coupled to the I/O bus 46 , as is a fixed or hard disk 56 .
  • a router 14 or bridge can be used to couple the I/O bus 46 to the Internet 12 as previously described.
  • an RJ45 Ethernet interface 58 can be used to couple the computer system 38 to a local area network 60 and from there to the Internet 12 by a router 14 , or the like.
  • a radio modem 62 (including a control section C, a radio section R, and an antenna 64 coupled to the radio section R) can be coupled to the I/O bus 46 .
  • the radio modem 62 can communicate with the network 10 including a number of nodes 66 by a wireless transmission of “radio link 68 ”.
  • the assembly of the hardware of the server illustrate in FIG. 3 will be apparent to those skilled in the art.
  • an exemplary server process 70 of the present invention is implemented on the server 16 . More particularly, the server process 70 can be implemented on computer system 38 , within the control section of the radio modem 62 , or partially in both of those places. In the embodiment shown, the majority of the server process 70 is implemented on the computer system 38 . However it should be noted that the control section C of the radio modem 62 includes a microprocessor and memory and, with proper program instructions, can be made to implement the process 70 of FIG. 4 , freeing the personal computer 38 for other tasks.
  • the server process 70 includes a server process control 72 and four subprocesses. More particularly, the subprocesses include a process 74 which processes received from clients, a process 76 which sends packets, a process 78 which communicates with the network, and a process 80 which performs housekeeping functions. Each of these processes will be discussed in greater detail subsequently.
  • a step 86 retrieves a packet from the client receive buffer, and a decision step 88 determines whether the path or “link” of the packet is same as the currently stored link in memory. If not, a step 90 updates the tree. If so, or after the updating of the tree in step 90 , a decision step 92 determines whether it is “My Packet?” In other words, step 92 determines whether the packet being received by the server was intended for that server. If not, a decision step 94 determines whether that server is on route.
  • a decision step 96 determines whether the packet has already been repeated. If, not the packet is placed in the client transmit buffer. If decision step 94 determines that the server is not on the route, or the packet has already been repeated, or upon the completion of step 98 , a decision step 100 looks for time-out.
  • the time-out is provided by the server process control 72 such that the computer hardware resources on which process 70 are implemented can be shared among the four processes. More particularly, in most instances, the computer hardware resources are shared among the subprocesses 7478 in a “round-robin” fashion well-known to those skilled in the art. However, it should be noted that at times the strict round-robin scheduling is not adhered to, as will be discussed subsequently.
  • step 100 determines whether a time-out has occurred.
  • the decision step 102 determines whether the retry number RETRY is greater than the allowed, namely NUMRETRY.
  • the number of retries RETRY are set at, perhaps, 2 or 3 so that the server does not tie up its resources with endless retries of process. If RETRY is greater than the NUMRETRY, the process is as indicated at 103 . Otherwise, a step 104 increments RETRY by 1. In the absence of a time-out and in the absence of the number of retries being used up, process control returns to step 86 .
  • step 106 determines whether the packet is a data type. If not, a step 108 process “internodal information.” If so, a step 110 places the data in a server transmit buffer. After the completion of steps 108 or 110 , process control is returned to step 100 to determine if there is a time-out.
  • a data packet is an associated string of digital information that is transferred and processed as a unit.
  • the data packet 112 shown includes a header 114 , a type 116 and data 118 .
  • the data 118 can be standard TCP/IP data.
  • the header 114 includes the source address, the address of all hops along the way (i.e. the “link” of the data packet), and the destination address. Hops (i.e. clients and servers) that already have been traversed (i.e. have already forwarded the data packet) are indicated with an asterisk (“*”) symbol.
  • the type 116 is, in this implementation, a two-digit code indicating the type of the data packet 112 , as well as will be discussed in greater detail subsequently.
  • the data section 118 of the data packet 112 includes the data associated with that packet.
  • the data according to some embodiments is in the range of 128-1024 bytes in length.
  • FIGS. 5 b and 5 c respectively, the decision steps 94 and 106 , respectively, are illustrated with respect to the data packet architecture of FIG. 5 a .
  • the decision step 94 (“Am I On Route?”) of FIG. 5 is simply determined by process 120 “My Address In The Header?”. If yes, the process of FIG. 5 branches to step 96 , and if no, the process of FIG. 5 branches to step 100 .
  • the decision step 106 “Data?” simplifies to a process 122 “Is the Type Equal to 14?”. This is because, in the present invention, a type 14 has been arbitrarily chosen to indicate a data type. If yes, the process of FIG. 5 branches to step 100 , and if no, the process of FIG. 5 branches to step 108 .
  • the process 108 begins at 124 and, in a multi-branch decision step 126 , the type of the data packet is determined. If the type is a “01”, a step 128 places an acknowledgement and a “code seed” in the client transmit buffer, and the process is completed at 130 . Acknowledgements and “code seeds” will be discussed subsequently. If the type is a “07”, a step 132 receives the client request for the network tree, and the process places the network tree in the client transmit buffer in a step 134 . The process is then completed at 130 .
  • a step 136 deletes the client from the tree and a step 138 determines whether a flag has been set. If not, the process is completed at 130 . If, the flag has been set as determined by step 138 , a step 140 puts a new client in the tree and the process is then completed at 130 .
  • step 142 determines whether the client is authentic. The authentication process, which will be discussed subsequently, keeps unauthorized clients from being added to the network. If the client is not authentic, the process is completed at 130 and the client is not allowed to connect to the server. If a step 142 determines that the client is authentic, a step 144 determines whether the client is already in the server tree. If yes, the flag is set in a step 146 and process control is turned over to step 136 to delete the client from the tree. Since the flag has been set, step 138 branches the process control to step 140 and the new client is placed in the tree, after which the process is completed at 130 .
  • FIG. 6 a illustrates the process 142 of FIG. 6 in greater detail. More particularly, the process 142 begins at 148 and, in a step 150 , a “seed” is chosen on the fly. Next, in step 152 , a “one way” function is performed using the seed and a known authentication algorithm, and a one-way result is stored. Next, found in step 154 , the seed is “camouflaged” and in a step 156 , places an acknowledgement code and camouflaged seed in the client transmit buffer. The process is then completed at 158 .
  • the purpose of the process 142 is to prevent unauthorized “clients” from accessing the network. For example, hackers may be prevented from accessing the network unless they can crack the authentication process, which is nearly impossible.
  • Authentication techniques are well known to those skilled in the art.
  • the book, incorporated herein by reference, Algorithms in SNOBOL 4, by James F. Gimpel, Bell Telephone Laboratories, John Wiley & Sons, a Wiley Interscience Publication,® 1976 by Bell Telephone Labs, Inc., ISBN 0-471-30213-9 describes authentication techniques using one-way seeds. See, in particular pp. 348349 with back references.
  • a “seed” is chosen “on the fly” such as by reading the system clock.
  • the one-way function modifies the seed using an algorithm known to both the server and the clients.
  • the one-way result, which in this instance is 4 bytes in length, is stored.
  • the step 154 then “camouflages” the seed by dispersing the 4 bytes among perhaps 26 other bytes prior to transmitting the camouflaged seed.
  • the receiving clients know which of the four bytes to use for their one-way function.
  • the process 140 “Place New Client In Tree” of FIG. 6 is illustrated in greater detail in FIG. 6 b .
  • the process 140 begins at 160 and in a step 162 , it is determined whether this is a “1 hop” client. If so, a decision step 164 determines whether it is a new client C. If so, the variable P is set to S in step 166 and the function “ADDSON” with the variables (P, C) is evoked in step 168 . S, of course is the server or root of the tree. If step 164 determines that is not a new client C, or after the completion of the ADDSON function, the process ends at 170 .
  • step 162 determines whether it is not a 1 hop client (i.e. C is a multi-hop client) a step 162 determines whether the parent P of client C is known to client C. If not, a step 174 determines the parent P from the header of client C. If the client C does know its parent, or after the completion of step 174 , a step 176 receives parent P from client C. Next, in a step 178 , the function ADDSON(P,C) is evoked, and the process is completed at 170 .
  • the ADDSON(P,C) function is explained in greater detail. More particularly, function steps 168 - 178 begin at 180 and, in a step 182 , the variables C, P are received.
  • the sting RSIB ( ) refers to a string of right siblings
  • the notation LSON( ) refers to a string of left sons.
  • the string FATHER provides a pointer from a child C to its father, which in this case is P.
  • the process is then completed as indicated at 190 .
  • FIGS. 7 a and 7 b the ADDSON function is graphically illustrated.
  • a parent 192 has left a son 194 and a right sibling 196 .
  • the parent 192 and left son 194 have mutual pointers to each other, while the right sibling 196 has only a pointer to the parent 192 .
  • the left son 194 also has a pointer to the right sibling 196 .
  • ADSON function is evoked with the argument (P, C) C is added as the left son 198 and the pointer in the parent 192 is updated to point to the left son 198 .
  • the left son 198 has pointers to the parent and to the new right sibling 194 .
  • the new right sibling 194 still has a point to the older right sibling 196 , and both siblings 194 and 196 have pointers to the parent 192 . It should be noted, under all circumstances, that the parent is only directly aware of the left son, in that it only has a pointer to the left son.
  • the process 136 “Delete Client From Tree” is illustrated in flow-diagram form.
  • the process 136 begins at 200 and in a step 202 , it is determined whether the target is equal to the left son.
  • the “target” is, of course, the client to be deleted. If the target is the left son, a step 204 determines if there are other siblings. If not, the left son is deleted in a step 206 . If there are other siblings, a step 208 makes the next sibling the left son, and then the left son is deleted by step 206 . The process is then completed at 210 . If step 202 determines that the left target is not equal to the left son, the target is found in a step 212 , and is then deleted in a step 214 . A step 216 then changes the sibling pointers, and the process is completed at 210 .
  • FIG. 9 a is a tree structure that will be used to illustrate the step 134 “Place Network Tree In Client Transmit Buffer” of FIG. 6 . Since the tree structure 220 is a logical construct, it must be represented in a form suitable for digital transmission. This form is illustrated in FIG. 9 b as a string 222 . With reference to both FIGS. 9 a and 9 b , the string 222 represents the tree on a top-to-bottom, left-to-right basis. Therefore the string 222 indicates for the parent X that its left son is 3 with a right sibling B. For the parent 3 , there is a left son 9 with a right sibling Z.
  • the tree structure 220 has been completely and compactly represented by the notation of the string 222 .
  • the table of FIG. 9 c is created to implement fast searching and other housekeeping functions.
  • the table of FIG. 9 c includes four columns The first column is the sequential element or “node number”
  • a second column 226 is the node name
  • the third column 228 includes the time stamp of the creation of the node
  • the fourth column includes the actual physical memory location of the node. In this way, a particular node can be searched by element number, node name, time stamp, or memory location without resorting to the time consuming recursive search algorithms otherwise typically used to search tree structures.
  • FIG. 10 is a pictorial representation of a portion of the server of FIG. 3 that has been simplified to explain steps 78 of FIG. 4 “Communicate With Network.”
  • the exemplary wireless network system 10 may include a number of clients and, perhaps, other servers, each of which has its own IP address.
  • the radio modems of those clients and servers communicate with radio modem 62 of the server which provides digital data to the serial port of a server computer or host 38 .
  • a router, bridge or other device is used to connect the server to a network, such as TCP/IP network 12 .
  • the radio packet modem 62 and the server computer 38 can be considered part of the exemplary wireless network system 10 as described previously.
  • the combination of the server and the router or the like performs a “gateway” function, in that it provides translation services between the two networks 10 and 12 .
  • the step 76 “Send Packets” simply involves sending the data packets stored in the client transmit buffer to the network 10 through the radio modem 62 .
  • the step 78 “Communicate With Network” simply forwards the data stored in the network transmit buffer to the network through the router 14 or through another route, such as the Ethernet interface 58 .
  • the “Send Packets” and “Communicate With Network” processes will be easily understood by those skilled in the art.
  • the server process control 72 allocates system resources among the processes 74 - 80 on a round-robin basis.
  • FIG. 11 the exemplary housekeeping process 80 of FIG. 4 is illustrated in greater detail. Since the housekeeping function 80 is of generally less importance than the other function of process 70 , it is possible that housekeeping function will be interrupted with a branch to one of function s 74 , 76 and 78 of FIG. 4 .
  • the process 80 begins at 232 and, in a decision step 234 , it is determined whether a flag is set. If not, at step 236 , the next element is equal to 1, i.e. it is picking the first element on the list. If step 234 determines that a flag is set, the process 80 knows that the housekeeping has been interrupted in the middle of the list and therefore the next element is set equal to the stored mark point as indicated in step 238 . Next, a step 240 determines whether if the end of the table has been reached. If so, the process is completed at 242 .
  • step 244 If the of the end table has not been reached, the element retrieved in a step 244 , and then in a step 246 , it is determined whether the current time minus the time stamp is greater than a predetermined interval. If it is, a step 248 deletes the client from the tree and from the table. This step 248 is performed to ensure that a client node that has dropped out the network 10 without informing the server is deleted from the server tree at some point in time. A suitable interval may be 15 minutes, or any interval set by a network manager. Process control then returns to step 240 .
  • step 246 determines that a node (i.e., a client) corresponding to the next element has cheeked-in within the time INTERVAL
  • a step 250 determines whether there is a heavy traffic on the server. If not, process control is returned to step 240 . If there is a heavy traffic, a step 252 marks the place in the table corresponding to the current element (i.e., the marked point in the list is stored in memory) and then a step 254 determines the traffic type. Process control then branches to process 256 if it is heavy network traffic, 258 if it is heavy outgoing packet traffic, and process 2600 if it is heavy incoming packet traffic.
  • a radio modem 62 (which can be similar to all of the radio modems described herein) is illustrated in block diagram form.
  • the radio modem 62 is commercially available from GRE America, Inc. as the Gina spread spectrum radio modem, models 6000N-5 or 8000N-5.
  • Spread spectrum technology gives good reliability and some transmission security in that a 127-bit cyclical code must be known by both the transmitting and receiving node.
  • encryption techniques well known to those skilled in the art, should be used.
  • Gina modems do include the option of 64-bit built-in encryption as an option.
  • the Gina radio modem hardware can be modified to incorporate the server process (or the client process for the client radio modem) of the present invention by storing program steps implementing those processes into a ROM or programmable ROM (PROM) 262 of the radio modem 62 .
  • ROM programmable ROM
  • the radio modem 62 includes a microprocessor 264 coupled to a bus 268 .
  • the microprocessor is an Intel 80C188 microprocessor in the present example.
  • the PROM 262 (which currently stores 512 Kbytes of code) is coupled to the bus, as in RAM 268 , a serial interface 270 and an HDLC converter 272 . Coupled to the HDLC 272 interface is a transceiver interface 274 , and coupled to the transceiver interface 274 is a CSMA/CD unit 276 .
  • a transceiver unit 278 with an antenna 280 is coupled to the CSMA/CD unit 276 .
  • the devices 272 and 276 are used for error correction and noise cancellation, as will be appreciated by those skilled in the art.
  • the CSMA/CD detects if two packets have “collided” producing indecipherable noise. If so, no acknowledgement of the packets is sent by radio modem 62 and the senders of the two packets will wait a short random period before resending their packets. Since the waiting period is random, there is little likelihood that the packets will collide a second time.
  • the HDLC performs a checksum on the received packets and, if the checksum fails, prevents the sending of the acknowledgement. This will cause the sending node to resend the packet after a random waiting period.
  • the currently used radio modems operate in the 902-908 MHZ frequency range at about 725 mW, and have an outdoor range of up to 12 miles, line-of-sight. These characteristics are a good compromise for a light to moderately dense network. If the network becomes very dense, it may be preferable to reduce the power, since this will reduce the number of clients that hear a given packet. Also, other frequency ranges are also suitable, such as the 2.404 to 2.478 GHz range.
  • the currently sold Gina spread spectrum radio models have their transmission (“baud”) rate artificially limited to 38.4 kHz. However, this artificial limit can be easily removed by a simple change to the program in PROM 262 to allow the modems to operate at 115.2 kHz, or nearly at full ISDN baud rates. At these baud rates, a single server can reasonably support three simultaneous WVVW browser sessions and a dozen e-mail sessions. This compares very favorably to cellular networks which, as noted previously, can only support one user at the time. This also compares very favorably to the RICOCHET system which, since is limited to 28.8K baud, is not very useful for VVWVV browsing.
  • FIG. 13 an exemplary client 18 including a computer 20 and a radio modem 22 of FIG. 1 is illustrated in greater detail.
  • the client computer 20 can be any suitable form of digital processor including personal computer, work station, PDA, etc.
  • a computer 20 includes a microprocessor 282 , RAM 284 , and ROM 286 .
  • the microprocessor is coupled to the RAM 284 and the ROM 286 by a memory bus 288 .
  • the microprocessor 282 is also coupled to an input/output (I/O) bus 290 to which a number of peripherals 292 may be attached, including the radio modem 22 .
  • I/O input/output
  • the radio modem 22 includes a control C portion and a radio R portion, where the control portion of the radio modem 22 is coupled to the I/O bus 290 .
  • the control portion C is everything but the transceiver unit 278 and the antenna 280
  • the radio portion R corresponds to the transceiver unit 278 .
  • the client process running on the client 18 can run on the computer 20 , in the control C portion of the modem 22 , or partially on both processors.
  • the client 18 typically includes other peripherals 292 such as a removable media drive 294 receptive to removable media 296 , (such as a floppy disk or a CD ROM) and to a hard disk drive 298 .
  • uninterruptible power supplies and Global Positioning Systems may be added to the client 18 .
  • the uninterruptible power supplies ensure that the clients stay on the network, and the GPS can be used in conjunction with directional antennas (such as phased array antennas) attached to the radio modem 22 to direct the transmission to the desired next node in the link. This increases the efficiency of the system, and reduces “packet pollution” of the network.
  • the GPS unit can be coupled to I/O bus 290 , or can be incorporated into the radio modem 22 .
  • an exemplary client process 300 is implemented in the hardware of client 18 . Again, this process can run on the microprocessor 282 , or it can be partially or wholly run on the microprocessor of the controller C of the radio modem 22 . In this exemplary embodiment, the process 300 runs on the computer portion 20 of the client 18 .
  • the client process 30 includes a client process control 302 , a process 304 for radio transmitting and receiving data packet, and a process 306 for maintaining a first-in-first-out (FIFO) buffer for send and receive data packets in RAM 284 for the computer 20 .
  • FIFO first-in-first-out
  • the process 304 begins at 308 and, in a step 310 ; it is determined whether the client is on the network. If not, the client needs to get on the network before it can send data to the server.
  • This connection process begins at 312 to determine whether it is out of tries in trying to reach the server. If not, it sends a 01 packet in a step 314 and waits to receive a 02 packet from the server or another client in a step 316 . If it does not receive a 02 packet in response to 01 packet process control is returned to step 312 until it runs out of server tries.
  • step 318 determines whether it is out of client tries. If yes, this particular client cannot reach either a server or another client and the process terminates at 320 with a failure. If it is not out of client tries in step 318 , a 03 packet is sent in a step 321 and the client waits to receive a 04 from another client in a step 322 . If a 04 is not received, the process control is returned to a step 318 until they are out of client tries.
  • a 02 is received in a step 316 or a 04 is received in a step 322 , then the client is in communication with the server or a client, respectively.
  • a step 324 stores the “link”, i.e., the path to a server, whether it is direct to the server or through one or more intermediate clients.
  • a 05 is sent to the link and a step 328 determines whether a 06 is returned. If not, the process is terminated as indicated at 320 . If a 06 has been received, then a 07 is sent to the link in a step 330 , and a step 332 determines whether a 08 is returned.
  • a step 334 determines if they are out of tries, and if not, process control is returned to step 330 to send another 07 to the link. If after a certain number of tries, e.g., 3 tries, a 08 is received in response to 07 transmitted by the client, the process terminates with a failure at step 320 . If a 08 is received as determined by step 332 , a random check-in time is set in a step 336 . A random check-in time is set so that not all clients will try to check in with the server at the same time. Preferably, the random times will equally distribute the check-in times for the various clients equally within the aforementioned period INTERVAL.
  • step 338 the client is connected into the network and the transmit/receive process is accomplished in a step 338 .
  • the step 338 can be performed directly. The step 338 will be performed until there is a time-out of the transmit/receive process due to the round-robin scheduling by the client process control 302 (see FIG. 14 ).
  • the process 338 “PerfomiTransmit/Receive” is illustrated in greater detail.
  • the process 338 has a transmit/receive process control 340 and the three subprocesses 342 , 344 and 346 . Again, the time allocated to the various subprocesses on a round-robin basis.
  • the subprocess 342 is the check-in routine where the client is required to check in on a periodic basis with the server to avoid being dropped from the server's routing list.
  • the check-in start time is essentially random, and is within a given period INTERVAL. More particularly, the subprocess 342 begins with a decision 348 as to whether it is the proper time to check-in. If not, process control is immediately returned to process control 340 . If it is check-in time, a 07 is sent to the server. If a 08 is received from the server, all is well and process control is returned to process control 340 . If the expected 08 is not received, decision step 354 determines if there are any more tries. Typically, at least three tries will be allowed.
  • process control is returned to step 350 . If there aren't any more tries, a step 356 will authenticate and send an 11 to the left son of the client that the client is removing itself from the network. Authentication prevents the situation where a “promiscuous” spooler could masquerade as a client and transmit an “11” packet with downstream client addresses, thereby disconnecting those downstream clients from the network. The client then marks itself as being disconnected or “off’ of the network in a step 358 , and a process control is returned to process control 340 .
  • an exemplary process 344 “Computer Received Packets” is shown in flow diagram form.
  • the process 344 begins at 360 and, in a step 362 , the data is obtained from a buffer.
  • the header is added to the data including the link and the packet type “14” to indicate that this is a data-type data packet.
  • the data packet, complete with header is transmitted in a step 366 and the process is completed at step 368 .
  • FIG. 18 illustrates an exemplary process 346 “Process Radio Packets” of FIG. 16 in greater detail.
  • the process 346 begins at 370 and, in a step 372 , determines if the received packet is for it. If yes, a step 374 will process the packet per the code type, as will be discussed in greater detail subsequently. Then, a step 376 determines if the father node of the client has been marked. If not, a new, shorter link is created, since the packet was received without being relayed by the father node. If the father node has been marked, or after a new link has been created, the process terminates at 380 .
  • step 372 determines if it is not that client's packet. If yes, a step 384 tests to see if the client is marked. If it is marked, it has already sent that packet and the process is completed at 380 . If the client hasn't been marked, it marks itself in the header of the data packet and transmits the packet in a step 386 . Process control is then given to step 376 to see if the client's link can be upgraded as discussed previously.
  • step 382 determines that the packet is not for that client, and that the client is not part of the link, steps 388 - 392 still analyze the packet in process known as “pooning”. Since this client can hear this packet, there is an opportunity to upgrade its link.
  • Step 388 determines whether the link to the last marked node plus one (i.e. the distance to the first unmarked node) is shorter than its own link. This is because this client is listening to the last marked node, and the number of hops through that last marked node is the number of hops of that last marked node plus one. If it is, the client's link is updated in a step 392 to this shorter link. If not, the alternative route is cached in case the client's current link becomes inoperative. Therefore, in the pooning process, the client listens to all packets to continuously and dynamically update its link to the best possible path.
  • an exemplary data packet 394 may include a header portion 396 including a link section 398 and a data type section 400 , and a data portion 402 .
  • the link 398 indicates that the destination of this data packet is the node P.
  • the two digit data type 400 indicates what type of data is being sent, and the data field 402 includes the actual data and is terminated within EOD (end of data) marker.
  • This packet corresponds to the tree of FIG. 9 a . Since all upstream nodes (i.e. nodes Q, Z, 3, and X) are marked with asterisk (“*”), it is known that the data packet has passed through and has been marked by each of these nodes before reaching the node P.
  • the table of FIG. 19 is used to illustrate an exemplary process “Process Per type Code” step 384 of FIG. 18 .
  • the table of FIG. 19 includes tree columns 404 , 406 , and 408 .
  • the first column 404 lists the codes that can be received. These codes correspond to the 2 byte code 400 of the data packet 394 of FIG. 18 a .
  • the second column 406 corresponds to the server responses to receiving such codes, and the third column 408 are the client responses to receiving the codes.
  • the server will ignore or drop those data packets because these data packets are only intended for clients. If a client receives a 02, it responds with a 05 and a one-way response. In response to a 03, a client will send a 04 and a seed or a null. In response to a 04, the client will send a 05 and a one-way seed. Again, one-way seeds and responses to one-way seeds were discussed previously.
  • a server When a server receives a 05, if it has previously sent a 02 and if the 05 is authentic, then it will send a 06. Otherwise, it will drop the packet.
  • a client receives a 05, if it had previously sent a 04, and if the 05 is authentic, then it sends a 06. Otherwise, the client will drop the data packet. If the server receives a 06, it will drop the data packet. If a client receives a 06 after it sent a 05, then it will send a 07. Otherwise, it will drop the packet as well.
  • Data packets coded with an 08, 09, 10 or 11 are all dropped if received by a server. If a client receives a 08, it will update the tree or repeat the data. In response to a 09, a client will send a 10. In response to a 10, a client will update the tremor repeat the data. In response to a type 11, it sends an 11 to the left son with the address the departing node plus a 01 to reconnect to the network.
  • Data packets of type 12 and 86 are currently reserved.
  • a server In response to a data packet type 13, a server will delete the sender. Since this is a server destination data packet only, if a client receives a data packet of type 13, it will drop the data packet.
  • a server receives a data packet of type 14, it will send it to the network transmit buffer. If a client receives a data packet of type 14, it will send it to the computer transmit buffer.
  • FIG. 20 illustrates an initialization routine which connects the client CB to a server S through another client CA.
  • the sequence is a s follows.
  • client CB sends a 03 to client CA.
  • the client CA sends a 04 and a seed back to client CB as indicated by arrow b.
  • Client CB then sends a 05 and a one-way response as indicated by arrow c to client CA, and client CA sends a 06 and an acknowledgement with a 05 to a client CD as indicated by arrow d.
  • client CB sends a 09 to client CA as indicated by arrow d.
  • client CB sends a 09 to a client CA as indicated by arrow e, and client CA sends a 10 and the link to the client CB as indicated by arrow f.
  • Client CB then sends a 07 and the neighbor's addresses to the client CA as indicated by arrow g, and client CA relays the 07 and the neighbor's address to the server S as indicated by arrow g′.
  • the server S then sends a 08 and the tree to the client CA as indicated by arrow h, and the client CA relays the 08 and the tree to the client CB as indicated by arrow h′.
  • the client CB has the link tree to the server S and the complete tree of the network in its memory.
  • FIGS. 21 a - 21 d illustrate a portion of the server process which deals with determining a return path from a received data packet at a server.
  • the tree is known to the server is as illustrated in FIG. 21 a . this is the same tree as was illustrated in an example of FIGS. 9 a and 9 b .
  • the server X receives the data packet from a client P as illustrated in FIG. 21 b .
  • the simplest way of determining the reverse address is simply reverse the link section of the header portion of the data packet of FIG. 21 b to provide a return address of 21 c . However, if the part of the address of the header of the data packet of FIG.
  • the tree of FIG. 21 a can be used to reconstruct the return path. This is accomplished by jumping from parent to parent in reverse order as indicated to determine the return path.
  • the reverse order parent jumping indicates that the original path to the server X was P>Q>Z>3>X, which, when reversed, gives us the proper reverse path, namely X(3(Z(Q(P)))).
  • this type of reverse tree transversal is easily accomplished with a recursive function.
  • clients and servers may implement dual wireless interfaces to increase throughput between a source node and destination node.
  • the client nodes and server nodes implement a single transceiver and interface, or a single-wireless interface.
  • One inherent disadvantage of the single wireless interface may be a significant reduction in bandwidth per node in a transmission link.
  • transmitting data packets from a source node through one or more repeater nodes to a destination node may effectively reduce the bandwidth by one-half per node.
  • no more than three repeater nodes may be able to operate between a source node and a destination node without noticeable throughput loss to the destination node.
  • servers and clients may, in some embodiments, implement dual wireless interfaces.
  • at least some nodes may include a first source wireless interface and a second source wireless interface, one for receiving data packets and the other for simultaneously transmitting data packets.
  • a “node” as used herein refers to either to a client or a server. Where these nodes implement a hardware or software control that operates according to the conventions described below, this arrangement may allow a wireless network to achieve near 100% bandwidth through each repeater node. Accordingly, at least some examples of dual-wireless interfaces described herein may significantly reduce practical limits on the number of repeater nodes and, consequently, the number of hops between a source node and a destination node.
  • FIG. 22 depicts an exemplary wireless network including transmission paths between a series of nodes in which at least some of the nodes (e.g., each node) implements a dual wireless interface.
  • This exemplary system includes three clients 18 a , 18 b , and 18 c ; a server 16 ; and two transmission paths 410 a and 410 b .
  • Path 410 a carries data initiated at client 18 a and destined for server 16
  • path 410 b carries data initiated at client 18 c and destined for server 16 .
  • clients 18 a and 18 b act as source nodes.
  • server 16 acts as a destination node.
  • the first transmission path 410 a contains a repeater node, client 18 b , between the source and destination. Therefore, data packets traversing the path 410 a between source client 18 a and the destination server 16 have a two-hop route. And data packets traversing the path 410 b between client 18 c and the destination server 16 have a one-hop route.
  • the network nodes may implement a controller configured to serve as a dispatcher in each node.
  • the dispatcher may, in some embodiments, operate to route data packets according to the conventions described herein.
  • any node in a wireless network system may, at times, act as a source, a repeater, and/or a destination node, depending on its function within a given transmission path.
  • a node acting as a source at a given time operates in “source mode”
  • a node acting as a repeater operates in “repeater mode”
  • a node acting as a destination operates in “destination mode.”
  • the control conventions described with reference to the example network of FIG. 22 should be viewed as applying to a particular “snapshot” in time.
  • the controller may be configured, so that the dispatcher designates one of a node's wireless interfaces as the source from which it initiates all data transmissions.
  • source node 18 a has designated wireless interface 412 a as the source wireless interface. Accordingly, all data transmissions originating from the client 18 a , when acting in source mode, transmit from wireless interface 412 a of client 18 a .
  • client 18 a initiates a data transmission from wireless interface 412 a to repeater client 18 b over the first hop along transmission path 410 a .
  • the dispatcher operates to ensure that all other data transmissions from client 18 a initiate from the same wireless interface 412 a , and the dispatcher correspondingly operates to ensure data transmissions do not initiate from the client's other wireless interface 412 b.
  • the controller may be configured so that the dispatcher allows the node to receive data packets on either of its two wireless interfaces and retransmit the data on the other of its two wireless interfaces.
  • client 18 b acts as a repeater node, receiving incoming data packets from source client 18 a over the first hop of transmission path 410 a and retransmitting them to the destination node, server 16 , on the second hop along transmission path 410 a .
  • the dispatcher operates to retransmit the data packets on the other of client 18 b 's wireless interfaces 412 b . It is important to note that the dispatcher routes the data in this manner, regardless of any designation the dispatcher has otherwise assigned to client 18 b 's wireless interfaces 412 a and 412 b . In other words, as described above, the client 18 b 's dispatcher may have assigned interface 412 b as the source wireless interface. That designation, however, applies only when the client 18 b acts in source mode. As a result, when wireless client 18 b operates in repeater mode, it repeats data transmissions on either of its wireless interfaces, which interface is determined as the wireless interface other than that on which the client received the transmission.
  • the controller may be configured to allow a node to receive transmissions on either of a node's two wireless interfaces.
  • the dispatcher may operate to allow a node acting in destination mode to receive data packets continuously on both of its wireless interfaces.
  • server 16 acts in destination mode, receiving two simultaneous and continuous data transmissions from two sources, client 18 b and client 18 c .
  • server 16 On server 16 's wireless interface 412 a , it receives a transmission initiated at client 18 c and transmitted along the one-hop path 410 b .
  • server 16 receives on its wireless interface 412 b a transmission from client 18 b along the second hop of path 410 a . In this manner, the destination node may maintain near 100% throughput.
  • FIG. 23 illustrates a block diagram of one possible configuration of a radio modem implementing a dual-wireless interface. This may be accomplished, in one respect, by modifying a radio modem at least similar to the radio modem 62 of the previously described client of FIG. 13 to resemble radio modem 62 a as shown in FIG. 23 .
  • the radio modem 62 a illustrated in block diagram form, may incorporate a second transceiver unit 280 a , CSMA/CD 276 a , and transceiver interface 274 a .
  • the hardware may support the simultaneous receipt and transmission of data packets as described, by receiving incoming packets at a first transceiver unit 280 and retransmitting outgoing packets on a second transceiver unit 280 a .
  • the radio modem hardware may incorporate the controller by storing the logic of the above-described conventions into a ROM or programmable ROM (PROM) 262 of the radio modem.
  • the wireless network may comprise a satellite constellation in order to extend a wireless network and/or facilitate access to the Internet to remote users.
  • a satellite-based wireless network As described herein, such an embodiment is referred to as a “satellite-based wireless network.”
  • Such a system may be viewed as an extension into three dimensions of the terrestrial wireless network described above.
  • data transmissions initiated on earth route through one or more satellites before making their way to a server located at earth (an “earth station server” or “ESS”) and passing into a secondary network, such as the Internet. Therefore, in the satellite-based system, satellites may operate in a client mode and may serve as repeater nodes of a transmission link.
  • ESS earth station server
  • a satellite may be any communications device in the earth's atmosphere or orbit including, but not limited to, for example, a low-earth orbit satellite (LEO), mid-earth orbit satellites (MEO), a geosynchronous satellite (GEO), a zeppelin (e.g., a stationary zeppelin), a blimp, or a high-altitude balloon.
  • LEO low-earth orbit satellite
  • MEO mid-earth orbit satellites
  • GEO geosynchronous satellite
  • zeppelin e.g., a stationary zeppelin
  • blimp a high-altitude balloon.
  • Extending the routing scheme described above for a terrestrial network may require additional control due to the possible complications introduced by extending the network into three dimensions, e.g., by adding satellite clients to the network. These complications have made achieving, for example, TCP/IP capable routers on board satellites a significant hurdle for extending broadband wireless internet through the use of orbiting satellite routers and/or other conventional technologies.
  • using a constellation of LEO satellites to route data packets may advantageously avoid many latency-associated difficulties that arise in satellite implementations employing other types of satellites such as GEO satellites and MEO satellites, which require data packets to travel relatively greater distances.
  • LEOs for example, orbit between approximately 5,000 km and 10,000 km, and GEOs orbit at approximately 35,786 km above the earth's surface.
  • LEOs avoid many latency-related problems, however, they may introduce a host of other problems due to their orbital proximity to the earth's surface. Namely, LEOs' orbital proximity (within approximately 2,000 km of the earth's surface) causes them to travel with a greater degree of motion relative to clients located at the earth's surface (terrestrial clients). Therefore, wireless networks employing LEOs may need to account for additional mobility-related challenges to successfully implement a satellite-based broadband network using, for example, TCP/IP.
  • one practical challenge of achieving TCP/IP routing in a LEO constellation may be acquiring and maintaining a virtual circuit among, for example, a terrestrial client (“TC”), a LEO satellite, and earth station server (ESS).
  • TC terrestrial client
  • ESS earth station server
  • the routing strategies implemented by the wireless network may greatly affect the overall performance of TCP communications carried across a satellite-based network.
  • Normal mode 446 may include a set of network processes that perform a data packet routing scheme when a requisite number of satellite-clients and earth station servers are operable, so that each of the TCs in the wireless network is able to build an optimal two-hop route to an ESS through an in-view LEO.
  • Survival Mode 488 describes an optimal routing scheme adopted when, for example, a TC cannot find an optimal two-hop route to an ESS through an overhead LEO, but instead must revert to a constellation-wide mesh routing scheme to find an alternative optimal route through a plurality of LEO satellites.
  • FIG. 24 and FIG. 25 depict an exemplary LEO constellation 413 that represents one possible arrangement for use in the described wireless network system.
  • the illustrated constellation 413 may include, for example, seventy LEO satellites 416 traveling in polar orbit of the earth 414 at an escape velocity of approximately 17,000 miles per hour.
  • the seventy satellites may be distributed among five orbital paths 418 collocated approximately five thousand miles apart at the equator. Accordingly, there are fourteen, approximately evenly distributed, satellites per orbital plane. Satellites travel along these planes in a longitudinal trajectory, moving from north to south over the horizon in one half orbit and from south to north in the other.
  • the network may further include a number of ESSs 420 distributed on the earth's surface.
  • ESSs 420 distributed on the earth's surface.
  • earth station servers may be collocated some five thousand miles apart.
  • the LEOs of this exemplary constellation have statistically three ESSs 420 in view at any given time.
  • a client or server is said to be “in view” when it is in communication range of another given client or server.
  • second and third in-view ESSs 420 provide redundancy.
  • exemplary systems and methods that may be used to support the above-described LEO handoffs while maintaining a substantially stable virtual circuit between the TC and ESS.
  • These methods may comprise two operational modes: normal mode and survival mode.
  • a normal mode provides a novel handoff scheme that may be employed in an operational satellite-based wireless network.
  • a survival mode provides countermeasures that may be desirable for maintaining a survivable network in the event that one or more clients or earth station servers is rendered inoperable, such as in the event of a global, catastrophic event.
  • these methods may address at least some of the complexities of extending a terrestrial network to a satellite-based wireless network.
  • FIG. 26 illustrates a LEO satellite-based system operating in an exemplary normal mode.
  • the transmission path between the source node and destination node may contain a total of two hops and only one “satellite hop” through a satellite client.
  • an exemplary data communication initiates at a TC 422 acting in source mode.
  • TC 422 may be a client located at earth and may be mobile or stationary.
  • Data packets transmitted from TC 422 may ultimately seek a destination on a second network 424 , such as the Internet.
  • the second network may interface to the wireless network at a gateway of an ESS 420 . For this reason, the ESS 420 may serve as the destination node in the transmission path from the TC 422 .
  • LEOs 416 travel overhead relative to the TC 422 in polar orbit. LEOs 416 a , 416 b , and 416 c orbit in a “local plane,” and LEOs 416 d and 416 e orbit in an “adjacent,” “remote” plane. Assuming an operational satellite constellation, such as the described exemplary LEO constellation, the TC 422 statistically will have three LEOs in view at any given time. For example, as shown in FIG. 26 , local-plane LEOs 416 a and 416 b , and adjacent-plane LEO 416 d are located most proximately overhead the TC 422 .
  • the TC 422 will therefore build a route to the ESS 420 along a two-hop route comprising a first-hop 426 and a second-hop 428 .
  • the TC will advantageously favor a route through a local-plane LEO over a remote-plane LEO due to the reliability and predictability of the local-plane LEO's time-to-live overhead.
  • LEO 416 b receives data transmissions from the TC 422 on its uplink frequency over the first hop 426 in the transmission path and repeats it on its downlink frequency to the earth station server over the second link in transmission path 428 . Because it may be assumed that the transmitted data packets contain TCP/IP structure, the earth station server need not perform any translation before passing the data packets on to a secondary network, for example, the Internet 424 .
  • FIGS. 28-34 illustrate the described exemplary processes in chart form as a series of steps that take place in vertical, sequential order from top-to-bottom and execute at one or more TC, LEO, and ESS, as designated by vertical columns and according to the following description.
  • a “mesh network” refers to a network that may allow for continuous connections and reconfiguration around broken or blocked paths by “hopping” from node to node until the destination is reached.
  • a route between a client and server and passing through one or more other clients will likely persist. In that case, alternative routes merely serve as an option to resolve the unlikely contingency that one or more nodes in the link between a source and destination becomes unavailable.
  • LEO clients travel a great degree more with respect to the earth and, consequently, to terrestrial clients.
  • each LEO remains overhead and in range of a terrestrial client for a limited time as it rises above the horizon and a short time later, falls below the opposite horizon, for example.
  • This limited time a LEO spends in view above the horizon is hereafter referred to as a LEO's “time-to-live” (TTL).
  • TTL time-to-live
  • a “handoff’ refers to replacing a LEO client in an existing route with another LEO client in order to maintain a virtual circuit between the source and destination nodes. Due to the frequency of such handoffs, route maintenance in a satellite-based mesh may be a relatively more complex process than the process associated with a terrestrial network.
  • meshing in a satellite-based wireless system may result in implementing a route discovery and maintenance process that differs from a routing scheme associated with a terrestrial mesh network.
  • route discovery in a satellite-based network were to begin as with a terrestrial network, as described in the exemplary embodiments above, the satellite-based route discovery process might be much less stable than the terrestrial route discovery process.
  • an ESS maintains an in-memory tree of all of the clients that it is serving, once a TC has discovered a LEO through which to route, via an exchange of 03 and 06 packets, respectively, the TC and LEO would exchange 09 and 10 packets.
  • the TC Upon receiving the 10 packet, the TC (a) converts the payload data string of said 10 packet into its own in-memory tree, (b) finds its own address in said tree, and (c) counts the number of hops between it and the address of the server at the top of said tree.
  • the route through the LEO would be unreliable due to the uncertainty of the new LEO's TTL.
  • randomly discovering other LEOs as potential alternate routes as in a terrestrial network may exacerbate the problem by forcing handoffs to other LEOs with unpredictable TTLs, thus making the network functional, but possibly unstable—requiring an unpredictable number of handoffs.
  • the Initiation Subprocess of FIG. 28 begins a slower, but more stable, route discovery process initiated by a LEO.
  • This exemplary subprocess is one of four underlying sub-processes that may be performed at particular steps within the major exemplary processes described below.
  • a LEO constantly searches and identifies in-view ESSs.
  • Table 1 below provides a description of the exemplary data packet types referred to in the following description.
  • a LEO issues a 01 (I'm Alive!, ping) packet at short random intervals and receives in return a 02 (Server ACK from 01 followed by one-way challenge) from an in-view ESS.
  • a 02 Server ACK from 01 followed by one-way challenge
  • the ESS and LEO exchange 04 Client ACK from 03 followed by one-way challenge
  • 05 ACK followed by one-way response to 04
  • multiple ESSs may receive the LEO-issued 01 packet, while only one ESS will respond with a 02 packet.
  • the ESSs may implement a variant of multi-homing by maintaining multiple potential routes, yet without transporting any payload data. These multiple routes would in that case respectively correspond to each LEO the ESS has sent a 02 packet. Therefore, after initiation, each one-hop route between a given LEO and ESS has exchanged no payload data (actual packet data that follows the packet header and identifies the source and destination of the packet) with a TC.
  • TCs in the wireless network may maintain a table of known LEOs including several fields of information relating to each LEO it identifies overhead.
  • the array of known LEOs may store each known LEO's network IP address.
  • these addresses correspond to static IP, IPv4, or IPv6 addresses assigned to each node (TC, LEO, and ESS).
  • Other possible embodiments, however, may assign addresses using non-static protocols such as, e.g., network address translation (NAT) or dynamic host control protocol (DHCP).
  • NAT network address translation
  • DHCP dynamic host control protocol
  • the TC may maintain these addresses in a table of known satellite clients located in transient or non-volatile memory using any of a variety of possible data structures well known in the art, including, for example, a stack, a queue, an array, or a hash table.
  • the table of known LEOs may further comprise a time stamp field, which specifies the moment in time that the TC first identified and obtained the address of a LEO passing overhead, and a response latency time field, a measure indicative of a LEO's overhead proximity to the TC.
  • the response latency of a satellite client may be, for example, a measured round trip response time (RTRT).
  • FIG. 29 illustrates an exemplary “LEO Beacon Subprocess,” another subprocess that may be implemented as part of the satellite-based route discovery process.
  • a TC discovers a LEO that has a one-hop route to an ESS and stores that LEO's address into its table of known LEOs.
  • a LEO issues a 07 (ping to server for route) packet at short, random intervals.
  • an ESS with which the pinging LEO has a route responds with an 08 (ACK from 07 followed by route data).
  • the LEO repeats the received 08 packet.
  • the TC upon receiving the 08 packet, the TC reads the address contained in the 08 packet's payload data and enters the address in the TC's table of known LEOs along with a time stamp.
  • each execution of the LEO Beacon Subprocess creates an entry in a TC's table of known LEOs.
  • the TC may then determine which, if any, address in the table represents a reliable temporary route through a LEO to an ESS.
  • a TC may treat its table of known LEOs as “statistically full” when, for example, it has identified a predetermined number of overhead, in-view LEDs.
  • a given TC expects three in-view LEOs during any given twenty-minute interval.
  • the TC 422 has three in-view LEOs 416 a and 416 b in its local plane, and 416 d , in its adjacent, remote plane.
  • the predetermined number of LEOs that renders the table of known LEOs as statistically full serves primarily as a trigger for a TC to check whether any of its known LEOs has a reliable TTL.
  • the TC may be configured, in the alternative, to treat its table of known LEOs as being statistically full at a lesser or greater number, as desired.
  • a TC will advantageously establish a two-hop route through a local-plane LEO for its property of having a predetermined, predictable reliable TTL.
  • a TC may make this determination, in one aspect by performing the exemplary RTRT subprocess of FIG. 30 .
  • the TC indexes its table of known LEOs and successively pings the address of each respective LEO, adding the round trip response time (RTRT) to the table of known LEOs for said LEO.
  • RTRT round trip response time
  • the TC indexes its table of known LEOs and selects the address of the LEO with the shortest RTRT based on the assumption, for example, that the LEO is most proximate overhead among all LEOs known to the TC. In the event that multiple LEOs register the same RTRT value, the TC may simply select the address of the LEO most recently indexed.
  • FIG. 31 illustrates an exemplary Route Discovery Subprocess in more detail.
  • the subprocess begins at step 508 , in which the TC and LEO build a route between each other by exchanging 03 (I'm Alive! ping to client) and 04 packets and 05 and 06 (One-way confirmation ACK from 05) packets, respectively, where, for the purpose of authentication, the 04 packet from the LEO contains a seed that prompts the TC to perform a one-way transformation, which it returns in the 05 packet.
  • 03 I'm Alive! ping to client
  • 04 packets and 05 and 06 One-way confirmation ACK from 05
  • this route data contains a string representation of the tree maintained in the router memory of the ESS associated with the LEO.
  • the TC Upon receiving the 10 packet, the TC converts the payload data string of the route to the discovered ESS into its own in-memory tree; at step 510 , finds its own address in the tree; and counts the number of hops between its address and the address of the ESS at the top of the tree. Having obtained a temporary route to the LEO, at step 512 , the TC then updates the default gateway in its routing table with the address of the LEO. Immediately thereafter, the TC may issue a 12 packet with its address as the payload data to the address of the LEO. Upon receiving the 12 packet, the LEO may add the network of the address of the TC as a new network in its TCP/IP routing table. Finally, the TC and ESS then exchange payload data through the route at step 512 .
  • the TC, LEO, and/or ESS may employ an on-board operating system operable to manage packet routing by maintaining routing tables.
  • a Linux operating system may be used by configuring the system to maintain and manage Linux routing tables.
  • maintaining routing tables may obviate the need to include routing information within a packet header, as was described with respect other embodiments herein (see e.g., header 114 in FIG. 5 a ).
  • LEOs 416 a , 416 b , and 416 d each represent an in-view LEO, but only LEOs 416 a and 416 b , however, travel in TC 422 's local plane.
  • the “local plane” refers to the orbital path most closely aligned relative to the longitude associated with a given TC, while “remote plane” refers to all other orbital paths within the constellation.
  • the significance of a LEO's traveling in a local plane follows from the fact that a LEO in a TC's local plane has a predetermined, reliable TTL. As a result, once a TC has established a route through a local-plane LEO, it may preemptively execute a handoff as the LEO's TTL approaches expiration.
  • FIG. 32 depicts an exemplary Reliable TTL Process, which describes the procedure for determining whether a given LEO has a reliable TTL. For example, beginning at step 513 , a new LEO rises above the horizon and issues a 01 packet, thereafter receiving in return 02 packet from an in-view ESS. At a step 514 , the LEO then determines whether it received a 02 packet from an ESS. If not, the LEO has no ESS in view and the system may execute an Adjacent Plane Links Process, for example, as shown at 454 of FIG. 27 and described in more detail below. Otherwise, the LEO has a reliable route through which it may seek to obtain the address of a LEO by performing the LEO Beacon Subprocess.
  • the TC may issue a ping to the newly discovered LEO during the RTRT subprocess, thereby measuring the LEO's RTRT. If the measured RTRT falls within a defined RTTL time limit, then the TC knows the LEO is within the TC's local plane, and the system may perform an RTTL Handoff Process, for example, as shown at 452 of FIG. 27 . Alternatively, if the RTRT exceeds the defined RTTL time limit, then the LEO is in a remote plane and the TC may restart the process, for example, beginning at step 513 .
  • FIG. 33 depicts an exemplary Reliable TTL Handoff process, for example, as shown at 452 of FIG. 27 .
  • the TC has found a LEO transiting the horizon along a local orbital plane. Because the TC reliably knows the TTL of this LEO, it attempts to obtain a two-hop route through this LEO to an ESS and maintain the route until the predetermined reliable TTL approaches expiration, at which time the LEO will attempt to preemptively initiate a handoff to the next LEO rising above the horizon. Accordingly, at step 516 , the TC may delete from its TC's table of known LEOs the address of the LEO discovered during the route discovery process at step 508 . Next, at step 517 , the TC may attempt to find the route to an ESS through the address of the LEO discovered at step 515 by, for example, executing the above-described exemplary Route Discovery Subprocess.
  • the TC may then prepare for the next handoff, which the TC may preemptively initiate based on the approaching expiration of the predetermined reliable TTL.
  • the TC may delete from its table of known LEOs the address of the LEO discovered at step 517 .
  • exchange of payload data continues on the existing route and, at step 520 , the TC performs the exemplary Reliable TTL Route Process 450 .
  • the TC executes, in step 522 , a Route Discovery Subprocess to determine the address of the most recently discovered LEO.
  • the TC may then delete from its table of known LEOs the address of the LEO discovered most recently and, at a step 524 , the exchange of payload data continues on the route discovered at step 520 .
  • a new LEO rises above the horizon and performs a LEO beacon process.
  • the TC then buffers the address of the newly transiting LEO and pings the address of the LEO and measures the RTRT at step 526 .
  • the measured RTRT falls within the RTTL time limit
  • the transiting LEO is within a local plane, and the TC may preemptively initiate a handoff when the TTL approaches expiration. If the RTRT exceeds the defined RTTL time limit, however, the LEO is not in a local plane and the system returns to step 525 and waits for the next LEO to rise above the horizon.
  • a newly active TC joining the network acquires a route through a local-plane LEO.
  • the route from TC to ESS contains a total of two hops.
  • any given LEO has three ESSs in view: one to the north, to below it, and one to the south.
  • a second and third ESS provide redundancy.
  • the LEO client may attempt repeatedly to route to a neighboring LEO in an adjacent plane until it acquires a route to an ESS.
  • the TC, the LEDs, and the ESSs may, according to some embodiments, perform the exemplary steps outline below. Meanwhile, the TC may continuously seek a two-hop route by performing step 510 of the exemplary route discovery subprocess.
  • FIG. 34 outlines exemplary steps of an exemplary Adjacent Plane Links Process, for example, as shown at 454 of FIG. 27 .
  • the TC selects from its table of known LEOs the address of the LEO with the freshest time stamp then pings the address and measures the RTRT. If the measured RTRT falls within a defined “adjacent link time limit,” then the TC deletes the address from the table and repeats step 527 . If, on the other hand, the TC finds the table of known LEOs maximally indexed and therefore empty, then it may be an indication that a network breakdown has occurred (e.g., some LEOs in the constellation are not functioning properly). In such case, the TC may exit the Adjacent Plane Links Process, and the system may switch to survival mode, for example, by performing an alternate remote route process, for example as shown at 456 of FIG. 27 .
  • the TC has found an acceptable route through an adjacent-plane LEO, and the network may remain in normal mode.
  • the TC may execute a Route Discovery Subprocess and build a route to an ESS through the LEO of the selected address. Then, if during the Route Discovery Subprocess the TC determines that the number of hops to the ESS equals 2, the TC has discovered a local-plane ESS. In that event, the TC then stops looking for a route through an adjacent plane and instead branches to step 521 of the TTTL handoff process. If the TC does not determine that the number of hops equals 2, however, then at step 529 , the TC determines whether there was a failure during the Route Discovery Subprocess. If so, it is possible that the network breakdown remains unresolved, and the system may enter survival mode by performing an Alternate Remote Route Process 456 .
  • the wireless network system may be configured to implement a survival mode, which may implement the following exemplary logic to maintain a virtual circuit in the event that some LEOs and some ESSs become unavailable, such as in a global catastrophic event.
  • the network when the network enters survival mode by reaching an Alternate Remote Route Process, for example, as shown at 456 of FIG. 27 , it may operate according to a routing scheme at least somewhat similar to that as described above for a terrestrial network.
  • the TC In survival mode, the TC may not know the TTL of a given current route. As a result, a TC may not be able to predictably determine how long a route will persist and therefore may not be able to preemptively initiate LEO handoffs.
  • survival mode may be further defined by the fact that some LEOs and/or some ESSs are not operational.
  • the TC may obtain a multi-hop route through the surviving LEOs to the operational ESS by performing the exemplary Alternate Remote Route Process 456 of FIG. 27 .
  • the exemplary Alternate Remote Route Process shown at 456 of FIG. 27 for example, illustrated in detail in FIG. 35 , for example, beginning at step 530 , the TC issues an 11 (signal survival mode) packet containing a survival TTL value as payload data.
  • 11 signal survival mode
  • each LEO to receive the 11 packet repeats the packet recursively to neighboring LEOs until the TTL value expires.
  • the survival TTL value should be set with a long enough duration to allow the packet to traverse the entire constellation.
  • each surviving LEO issues a 01 packet.
  • LEOs with line-of-sight to an ESS will receive from the ESS a 02 packet and then exchange with the ESS 05 and 06 packets for authentication. With this accomplished, these LEOs have established a one-hop path to an ESS.
  • each LEO that did not receive a responsive 02 packet looks to find a route through a neighboring LEO. Accordingly, at step 534 , each such LEO may issue a 03 packet repeatedly until it receives an 04 packet from a neighboring LEO.
  • the LEO exchanges 05 and 06 packets with the neighboring LEO for authentication. If the neighboring LEO has an established multi-hop route to an ESS, then, at step 536 , the LEO adds itself to the neighboring LEO's multi-hop route by exchanging 09 and 10 packets with the neighboring LEO at step 537 . Otherwise, the LEO may loop back to step 534 and may retry, continuing to look for a route through a neighboring LEO.
  • each LEO continually eavesdrops on the payload data of successive 08 packets from ESSs, which are repeated by LEOs above the ESSs.
  • the LEO may opportunistically adopt the shorter route from the payload data of the 08 packet to an ESS by updating its default gateway with the newly discovered LEO address.
  • the LEO having just discovered a shorter route to an ESS may issue a 12 packet with its address as the payload data to the address of the newly discovered LEO.
  • the newly discovered LEO which presents a shorter route to an ESS, may add the network of the address of the discovering LEO as a new network in its TCP/IP routing table.
  • all TCs in the network may perform the following steps to establish a first optimal route to an ESS.
  • the TC iteratively executes a Route Discovery Subprocess until discovering and building a multi-LEO-hop route to a surviving ESS.
  • the TC finds a LEO with a route to an ESS, the TC at step 540 , adds the address of the LEO to its table of known LEDs.
  • the TC adds the address of said LEO to its TCP/IP routing table as its default gateway.
  • the TC may issue a 12 packet with its address as its payload data to the address of the newly discovered LEO.
  • the newly discovered LEO may then add the network of the address of said TC as a new network in its TCP/IP routing table.
  • the TC then exchange payload data with the ESS.
  • the TC eavesdrops on payload data of successively received 08 packets from ESSs (repeated by LEOs overhead) and attempts to discover a second optimal route—a shorter route through one of the LEOs to the address of an ESS.
  • the TC places other discovered routes of equal or greater number of hops (compared to the current route), along with an accompanying time stamp in a table of alternate routes.
  • the TC may in one aspect maintain the table of alternate routes as an ordered stack.
  • the TC When a TC suddenly loses its route, for example, as a result of a LEO dropping below the horizon, the TC, at step 545 , indexes its table and deletes routes with stale time stamps.
  • the TC may also sort the array of alternate routes in ascending order, according to the number of hops.
  • the TC may “pop” the “next best” route from the top of the stack.
  • the best route in some embodiments, may be defined with consideration of additional factors. As referred to herein, however, the best route may correspond to the path with the fewest hops.
  • the TC may then select the alternate route from the array and then return to step 540 .
  • the TC at step 545 may perform the exemplary RTRT Subprocess. If the TC successively executes the RTRT subprocess, then, at step 547 , it indexes its array of known LEOs and deletes any address of a LEO in the array with a stale time stamp and then, at step 548 , branches to step 521 of the Reliable TTL Handoff Process 452 of FIG. 27 and waits. Alternatively, if the RTRT subprocess fails, then the TC returns to step 540 .
  • the satellite 416 may receive uplink data transmissions from a terrestrial client on a repeater wireless interface, either of two satellite antennas.
  • the uplink and downlink frequencies may fall within the Ka-band, which is allocated internationally and capable of accommodating global broadband systems ranging from about 18 to about 40 GHz.
  • the satellite downlink frequencies may range from about 18.3 to about 18.8 GHz or from about 19.7 to about 20.2 GHz, while the uplink frequencies may transmit at about 30 GHz.
  • the client process may determine whether a packet is routed to an earth station server or to a neighboring satellite.
  • processor on-board the LEO may run the Linux operating system, which maintains routing tables as described above.
  • the software server program implemented on the earth station server and the client programs located on the LEO satellite and the terrestrial clients may be operable together via parallel processing to determine optimal routes by exchanging in-memory routing tree link information.
  • each LEO may include of two RF interfaces, one on an uplink frequency and one on a downlink frequency—non-overlapping.
  • the satellite required power output may range from, for example, about 50 to about 60 dbW, or from about 100 to about 1000 kW, for example, to overcome rain-induced attenuation associated with the high-frequencies transmissions in the Ka Band.
  • one or more mobile clients of a wireless network may be located on-board sub-orbital aircraft.
  • an aircraft may be equipped with a transceiver configured according to, for example, some embodiments of the present disclosure, and they may serve several desirable functions for facilitating broadband Internet access.
  • aircraft-based clients may serve as client routers for terrestrial clients, thereby permitting broadband Internet access to clients in locations where such service may not be otherwise available.
  • a wireless network path may include links between aircraft-based clients and LEO clients in order, for example, to reach an earth-station server.
  • aircraft-based clients may serve as an extension of a LEO constellation by participating in a constellation-wide mesh, for example, when clients of a LEO constellation operate in survival mode.
  • an aircraft-based transceiver may serve as a client router for a terrestrial client. This may be desirable because such example may make additional use of networking hardware in an aircraft equipped to provide passengers and/or crew with in-flight broadband Internet access (e.g., in-flight Wi-Fi access).
  • an aircraft may be outfitted with a transceiver and router to serve as a gateway to the Internet through an earth-station server.
  • Possible transmission technologies for providing such wireless transmission between the aircraft and a server on the ground may include, for example, WiMAX (e.g., based on the IEEE 802.16 standard), 4G (also known as 3GPP Long Term Evolution), and CDMA (EV-DO RevA and EV-DO RevC).
  • a terrestrial client may route communications through an overhead aircraft configured as a client repeater to the Internet through an earth-station server. This may be accomplished by additionally configuring the aircraft's on-board transceivers to operate in client mode, for example, as described above with reference to FIGS. 14-21 .
  • earth-station servers may be configured according to server processes, for example, as described above with reference to FIGS. 4-11 . In this manner, a transceiver on board the aircraft may act as a client router on behalf of terrestrial clients, for example, in rural areas where high-speed Internet access may not be available through cable or DSL (Digital Subscriber Line).
  • DSL Digital Subscriber Line
  • FIG. 36 illustrates an exemplary embodiment in which an aircraft-based client may serve as a router for a terrestrial client.
  • a terrestrial client 422 may acquire a two-hop path to an earth-station server 420 a through client network hardware located on board an aircraft 602 .
  • earth-station servers 420 a and 420 b may maintain in-memory tree link information about the known clients in the network.
  • the route may adapt (e.g., automatically) in order to maintain a virtual circuit between both the terrestrial client and earth-station server.
  • client 602 may come into range of earth-station server 420 b and replace its air-to-ground transmission link with a link to server 420 b .
  • client 422 may establish a two-hop transmission path through another aircraft-based client (not shown) as it passes within line of sight of overhead.
  • aircraft-based clients and LEO clients may together form a transmission link to an earth-station.
  • LEO clients, aircraft-based clients, and/or terrestrial clients may each be configured to operate in client mode according to, for example, the exemplary client processes described herein with reference to FIGS. 14-21 .
  • an aircraft-based client and a LEO client each may serve as nodes through which data transmissions may pass to reach an earth-station server.
  • data transmissions may be initiated from either terrestrial clients or from subscribers on-board an aircraft.
  • a terrestrial client 422 may exchange data packets with an earth-station server 420 along the three-hop route comprising, for example, links 604 (terrestrial client 422 to aircraft-based client at 602 ), 606 (aircraft-based client at 602 to LEO), and 608 (LEO to earth station server 420 ).
  • Such an exemplary transmission link may arise, for example, when an aircraft-based client does not have line of sight to an earth-station server, but is able to route indirectly through a LEO.
  • a subscriber on board an aircraft may exchange data packets with an earth station server along the two-hop route comprising, for example, links 606 (aircraft-based client at 602 to LEO) and 608 (LEO to earth station server 420 ).
  • aircraft-based clients may extend a distressed LEO constellation operating in survival mode.
  • an aircraft-based client router may be configured to operate as a client in survival mode, as described in FIGS. 27 and 35 .
  • aircraft-based clients may participate in a constellation-wide mesh, for example, when one of the LEOs or earth station servers becomes inoperable, such that a reliable two-hop link through one LEO is not available or is unreliable.
  • a two-hop link from terrestrial client 422 to earth station server 420 a is unavailable or unreliable.
  • clients receiving packets signaling survival mode may cause a large portion of the network (e.g., the entire network) to approach a mesh.
  • aircraft-based client 602 configured to operate in the same manner as a LEO client, may participate in the constellation-wide mesh by acting as a node between a second and third hop, 612 and 614 respectively, thereby forming a complete transmission path between the terrestrial client 422 and earth station server 420 b.
  • providing broadband Internet access to aircraft passengers and/or crew is not a necessary component of the aircraft-based routing embodiments. Rather, it is mentioned merely for the possibility of simultaneously providing broadband access to subscribers on-board an aircraft and to terrestrial clients using pre-existing aircraft-based networking transmission and routing hardware.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Astronomy & Astrophysics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A wireless network system can include an earth-station server configured to provide a gateway to a secondary network. The wireless network system can also include a plurality of clients, wherein each client comprises a client controller configured to implement a client process. The client process of at least one of the clients can select a transmission path to the earth-station server that is an indirect link to the earth-station server through at least one of the other clients. At least one of the clients can be aircraft-based.

Description

    CROSS REFERENCE TO RELATED APPLICATIONS
  • This application is a continuation of U.S. patent application Ser. No. 14/337,738 filed Jul. 22, 2014, which is a continuation of U.S. patent application Ser. No. 13/482,961 filed May 29, 2012, now U.S. Pat. No. 8,787,246, which is a continuation of U.S. patent application Ser. No. 12/364,769 filed Feb. 3, 2009, now U.S. Pat. No. 8,982,856. The subject matter of these related applications is incorporated herein by reference.
  • FIELD OF THE DISCLOSURE
  • This disclosure relates generally to communication networks and more particularly to wireless network systems.
  • BACKGROUND
  • There are many kinds of networks that can be used to couple computers together for data communication. For example, a simple local area network (LAN), such as Novell® network or Appleshare® network can be used to couple together the personal computer in an office. Often, one or more network “servers” or “hosts” will influence data flow within the network and access to certain network functions such as a central file repository, printer functions, Internet gateways, etc. Other local area networks operate on a peer-to-peer basis without the use of servers.
  • A wide area network (WAN) is sometimes referred to as a “networks of networks.” The Internet is a WAN that has, of late, become extremely popular. The origins of the Internet date back several decades to a government-sponsored military/business/research WAN that was designed to remain operational even in the event of a catastrophic loss of a large portion of the network. To accomplish this goal, robust protocols and systems were developed, which allowed a geographically distributed collection of computer systems to be connected by means of a network that would remain operational even if a large portion of the network were destroyed.
  • While the use of Internet has been prevalent for many years now, its use has been limited by the arcane and often difficult commands required to access the various resources of the network. To address this problem, a protocol known as the “World Wide Web” or “INWW” was developed to provide an easier and more user-friendly interface to the Internet. With the World Wide Web, an entity having a domain name creates a “web page” or simply “page” which can provide information and, to ever greater extent, some interactivity with the web page.
  • The Internet is based upon a transmission protocol known as “Transmission Control Protocol/Internet Protocol” (or “TCP/IP” for short), which sends packets of data between a host machine, e.g. a server computer on the Internet, and a client machine, e.g. a user's personal computer connected to the Internet. The VVW1N is an Internet interface protocol which is supported by the same TCP/IP transmission protocol. Intranets are private networks based on the Internet standards, and have become quite common for managing information and communication within an organization. Intranets, since they subscribe to Internet standards, can use the same web browser and web server software as used on the Internet. Internets are, in many cases, supplementing or replacing traditional local area network protocols.
  • Most, if not all, of the data communication links between the various machines of most networks area hard-wired. That is, client machines are typically coupled to a server and to other client machines by wires (such as twisted-pair wires), coaxial cables, fiber optic cables and the like. In some instances, some of the communication links can be wireless communication links such as microwave links, radio frequency (r.f.) links, etc., but this tends to be rare with most LANs.
  • The majority of so-called wireless networks are radio modems for data communication, although there are some IR networks available that work over very short distances, such as within a single large room. However networks spanning larger areas will predominately use radio modems. GRE America, Inc of Belmont, Calif. sells a number of spread-spectrum modems that can be used for the transmission of digitally encoded information. A number of wireless network services such as Ricochet® network services (Ricochet is a subsidiary of Metrocom, Inc of Los Gatos, Calif.) combine a radio modem with a portable personal computer to allow the personal computer to connect to the Internet. The Ricochet system operates by providing a large number of r.f. data transceivers within a given geographic area, that is often attached to telephone poles, and that are coupled to centralized server that serves as a gateway to the Internet.
  • The assumption made by the Ricochet system designers is that a given radio modem coupled to portable computer will be in radio contact with one, and only one transceiver of the network. A data “packet” sent by portable computer via the radio modem will be received by the transceiver and broadcast through the Ricochet network until it reaches a Wide Area Processor or WAP, where it is transmitted by twisted pair over the internet to a Ricochet server connected to the Internet. Packets destined for a particular personal computer are received by the server of the Ricochet system, and are transmitted from each of the transceivers with the expectation that the radio modem of the destination portable computer will receive the data packets from one of those transceivers.
  • It should be noted that wireless communication systems such as Ricochet system exhibit a number of drawbacks. For one, if the radio modem of the personal computer is not within transmission range of one of the transceivers of the Ricochet network, a connection cannot be made to the network. Furthermore, the Ricochet network can create a great deal of “packet duplication” or “pollution” as copies of a particular data packet are multiply repeated, rather than routed. This packet duplication can also occur if a radio modem of a particular personal computer is radio transmission range of two or more transceivers can each receive the data packets, and each proliferates copies of the data packet across the Ricochet network. While duplicate packets are ultimately discarded, such duplicate packets increase data congestion in the network and increases the work that must be performed by the server. In addition, since data packets are transmitted from all the transceivers of the Ricochet network, there may be packet duplication at the personal computer if it is in contact with more than one transceiver of the Ricochet network, and the bandwidth available from each transceiver is reduced since each transceiver is transceiving each client-destined data packet on the network. Also, since the data is transmitted to the Internet over twisted pair, there is a 28.8K baud bottleneck in the system, resulting in average system performance of even less than 28.8K baud. It is therefore apparent that prior art wireless networks of the Ricochet network type lack robustness (i.e. the ability to maintain communication with the network under adverse conditions) and exhibit a number of inefficiencies such as data packet proliferation.
  • Cellular telephone system operates using a number of transceivers, where each transceiver occupies a “cell.” As a mobile telephone moves from one cell to another, an elaborate and expensive land-based system causes the mobile telephone to “handed-off’ from the cell that it was previously in to the cell that is entering. As noted, the equipment and system used for the hand-off is expensive and, further, such hand-off sometimes fail, dropping the telephone connection. Furthermore, individual radios at a given cell can handle only one call at the time, which is inadequate for many computer network systems.
  • Amateur radio (“Ham”) operators have developed a peer-to-peer digital repeater system referred to as the AX.25 protocol. With this protocol, each peer repeats all data packets that it receives, resulting in rapid packet proliferation. In fact, with this protocol, so many packet collisions occur among the peers that the packets may never reach the intended peer.
  • Lastly there is abundant reporting in the literature, but it cannot be substantiated, that the U.S. military has a wireless communication system which allows digital information to be transmitted in a more robust and efficient manner. More specifically, it is suspected that the U.S. military has a system in which digital data can follow multiple paths to a server that may include one or more clients of the network. However, source code listings, or source code machine-readable form of these U.S. military systems remains secret and unavailable to the public. Some of the literature pertaining to this U.S. military technology is summarized below.
  • “Packet Radios Provide Link for Distributed Survivable Command Control Communications in Post-Attack Scenarios”, M. Frankel, Microwave Systems News 13:6 (June, 1983) pp. 80-108, discusses the SURAN (Survivable Radio Network) project and its relation to overall command and control communications (C3) development.
  • “Congestion Control Using Pacing in a Packet Radio Network”, N. Goweer and J. Jubin, Proceedings of Milcom 82, (New York: IEEE Press, 1985), pp. 23.1-23.6, describes a technique for pacing flow control used in the DARPA packet radio project.
  • “Current Packet Radio Network Protocols”, J. Jubin, Proceedings of Infocom 85 (New York: IEEE Press, 1985), pp. 86-92, is a systematic view of the various protocols currently used in the DARPA packet radio network. The article includes a discussion of packing, route calculation, maintenance of route and connectivity tables, acknowledgement schemes, and other mechanisms. The article also provides a discussion on how the various protocols interrelate and reinforce each other.
  • “The Organization of Computer Resources into a Packet Radio Network”, R. Kahn, IEEE Transactions on Communications COM-25.1 (January 1997), pp. 169178, is a prospectus for the second generation of the DARPA radio project. This led to the development of the DARPA Bay Area Packet Radio experimental work in the mid to late 1970's.
  • “Advances in Packet Radio Technology”, R. Kahn, S. Gronemeyer, J. Burchfiel, R. Kunzelman, Proceedings of the IEEE 66z:11 (November 1978), pp. 1468-1496 is a survey of packet radio technology in the second generation of the DARPA packet radio project.
  • “Survivable Protocols for Large Scale Packet Radio Networks”, G. Lauer, J. Wescott, J. Jubin, J. Tornow, IEEE Global Telecommunications Conference, 1984, held in Atlanta, Ga., November 1984 (New York: IEEE Press, 1984) pp. 468-471, describes the SURAN network with an emphasis on network organizations and management protocols.
  • “Multiple Control Stations in Packet Radio Networks,” W. MacgGegor, J. Wescott, M. Beeler, Proceedings of Milcom 82 (New York: IEEE Press, 1982) pp. 10.35, is a transitional paper that describes design considerations involved in converting the DARPA packet radio network from single to multistation operation while eliminating the additional step to a fully hierarchical design. It focuses on the self-organizing techniques that are necessary in the multistation environment.
  • “Future Directions in Packet Radio Technology”, N. Shacham, J. Tumow, Proceedings of IEEE Infocom 85 (New York: IEEE Press, 1985), pp. 93-98, discuss new research areas in packet radio, with some references to SURAN developments.
  • “Issues in Distributed Routing for Mobile Packet Radio Networks”, J. Westcott, IEEE Global Telecommunications Conference, 1982 (New York: IEEE Press 1982, pp. 233-238, studies the issues involved in the DARPA packet radio network, prior to availability of signal strength sensing from the radio receivers as a hardware capability on which to build. The paper describes issues that must be considered in evaluating the usability of an RF link and gives details of the alternate route mechanism used in the DARPA system to smooth temporary RF propagation problems that appear in a mobile node environment.
  • “A Distributed Routing Design for a Broadcast Environment”, J. Westcott, J. Jubin, Proceedings of Milcom 82 (New York IEEE Press, 1982), pp. 10.4-1-10.4.5, is a detailed study of the problems involved in connectivity and routing table management in stationless packet radio, including a discussion of algorithms—proposed for the DARPA packet radio network.
  • There is, therefore, a great deal of literature describing packet radio systems. The prior art does not disclose, however, a packet-based wireless computer network that is both robust and efficient, wherein each client of the network can be efficiently and effectively in communication with a multiplicity of other clients and servers of the network, greatly multiplying the number of link choices available and, if conditions change, or if a better link to a server becomes known to a client, where the link for a client can be updated and improved.
  • The present disclosure describes a wireless network system which may be particularly well adapted for connections to a wide area network such as an Intranet or the Internet. The wireless network system may include one or more servers which are coupled to the wide area network, and two or more clients capable of communicating with the server or with each other via radio modems. The communication in the wireless network system may take the form of digital data packets, which are not too dissimilar from the TCP/IP data packets used over the Internet. However, the data packets of the present disclosure may also include data routing information concerning the path or “link” from the source of the packet to the destination of the packet within the wireless network. The data packets may include a code indicating the type of packet being sent.
  • In operation, for example, a client of the wireless network system of the present disclosure may have either a direct or an indirect path to a server of the wireless network system. When in direct communication with the server, the client is said to be “1 hop” from the server. If the client cannot reliably communicate directly with the server, the client will communicate with a “neighbor” client which has its own path (“link”) to the server. Therefore, a client may be able to communicate with the server along a link that includes one or more other clients. If a client communicates with the server through one other client, it is said to be “2 hops” from the server, if the client communicates to the server through a series of two other clients, it is said to be “3 hops” from the server, etc. The process of the present disclosure may include an optimization process which minimizes the number of hops from the clients to the servers, on the theory that the fewer the number of hops, the better the performance of the network. Optimization process may also factor in traffic and transmission reliability of various links to determine the optimal path to the server.
  • Some wireless network systems described herein may include at least one server having controller and a server radio modem, and a plurality of clients each including a client controller and a client radio modem. The server controller may implement a server process that includes the controlling the server radio modem for the receipt and transmission of data packets from clients of the network. The client controller may implement a client process including the transmission and receipt of data packets from the server and from other clients. The client process of each of the clients may initiate, select, and/or maintain a radio transmission path (“link”) to the server. As noted previously, this radio transmission path to the server may be either a direct path to the server (1 hop) or an indirect path to the server (multi-hop) through one or more clients. The client process of a particular client may also constantly search for improved paths to the server.
  • Some methods for providing wireless network communication described herein may include providing a server implementing a server process, and providing a server implementing a server process, and providing a plurality of clients, each client implementing a client process. The server process may include receiving data packets via server radio modem, sending data packets via the server radio modem, performing a “gateway” function to another network, and/or performing housekeeping functions. The client process may include the sending and receiving of data packets via a client radio modem, maintaining a send/receive data buffer in digital memory, and/or selecting links to the server. Again, the client process may choose a “best” link to the server that may be either a direct path or an indirect path through one or more other clients.
  • Some exemplary servers described herein may provide a gateway between two networks, where at least one of the networks is a wireless network. The gateway function of the server may make any desired translations in digital packets being sent from one network to the other network. The server may include a radio modem capable of communicating with a first, wireless network according to some examples of the present disclosure, a network interface capable of communicating with the second network (which may or may not be wireless and, in fact, may be a wired TCP/IP protocol network), and a digital controller coupled to the radio modem and to the network interface. The digital controller passes data packets received from the first network that are destined for the second network to the second network, and passes data packets received from the second network that are destined for the first network to the first network, after performing any necessary translations to the data packets. The digital controller may further maintain a map of the links of the first network and may provide a map to the first network clients on request. By maintaining a map of the first network links, the server may be able to properly address packets received from either the first network or the second network to the appropriate client of the first network, and may allow the client of the network to maintain and upgrade their data communication paths to the server.
  • Some network clients for a wireless communication network described herein may include a radio modem capable of communicating with at least one server and at least one additional client, and a digital controller coupled to the radio modem to control the sending and receiving of data packets. The digital controller may be further operative to determine an optimal path to at least one server of wireless network. The optimal path can be either a direct path to the server or an indirect path to the server through at least one additional client.
  • The methods and systems of the described herein may provide a wireless network that is both robust and efficient. Since each client of the network can potentially be in communication with a multiplicity of other clients and servers of the network, there may be a great number of link choices available. If conditions change, or if a better link becomes known to a client, the link may be updated and improved.
  • These and other possible attributes of the exemplary systems and methods described herein may become apparent upon reading the following detailed description and studying the various figures and drawings.
  • SUMMARY OF THE DISCLOSURE
  • In the following description, certain aspects and embodiments will become evident. It should be understood that the aspects and embodiments, in their broadest sense, could be practiced without having one or more features of these aspects and embodiments. It should be understood that these aspects and embodiments are merely exemplary.
  • One aspect of the disclosure relates to a wireless network system. The wireless network system may include a source node having a first source wireless interface and a second source wireless interface, wherein the source node is configured to initiate a data transmission via the first source wireless interface. The wireless network system may also include a repeater node having a first repeater wireless interface and a second repeater wireless interface, wherein the repeater node is configured to receive the data transmission on one of the first repeater wireless interface and the second repeater wireless interface, and to repeat the data transmission on the other of the first repeater wireless interface and the second repeater wireless interface. The wireless network system may further include a destination node having a first destination wireless interface and a second destination wireless interface, wherein the destination node is configured to receive the data transmission on one of the first destination wireless interface and the second destination wireless interface.
  • According to another aspect, a method for routing data packets in a wireless network system may include initiating at a source node a data packet transmission via a first source wireless interface, receiving at a repeater node the data packet transmission on one of a first repeater wireless interface and a second repeater wireless interface. The method may further include repeating the data packet transmission on the other of the first repeater wireless interface and the second repeater wireless interface, and receiving the data packet transmission on one of a first destination wireless interface and a second destination wireless interface of a destination node.
  • According to a further aspect, a satellite-based, wireless network system may include an earth-station server configured to transmit data packets to a secondary network. The wireless network system may also include a first satellite client of a plurality of satellite clients and a terrestrial client configured to maintain a table of known satellites, wherein the table is operable to store an address for each satellite client known to the terrestrial client. At least one processor may be associated with at least one of the earth-station server, the first satellite client, and the terrestrial client, wherein the at least one processor is configured to establish a temporary route between the terrestrial client and the earth-station server via the first satellite client, ping a second satellite client, measure a response latency of the second satellite client, and determine, based on the measured response latency, whether the second satellite client has a reliable time-to-live. Further, if the second satellite client is determined to have the reliable time-to-live, the at least one processor may initiate a normal-mode handoff to the second satellite client. And, if the second satellite client is determined not to have the reliable time-to-live, the at least one processor may initiate a survival-mode handoff.
  • According to yet another aspect, a method for routing data packets in a satellite-based, wireless network may include maintaining at a terrestrial client a table of known satellites, wherein the table is operable to store an address for each known satellite client in the table. The method may also include establishing a temporary route between the terrestrial client and an earth-station server configured to transmit data packets to a secondary network through a first satellite client in a plurality of satellite clients. Further, the method may include pinging a second satellite client, measuring a response latency of the first satellite client, and determining, based on the measured response latency, whether the second satellite client has a predetermined reliable time-to-live. If the satellite client is determined to have the reliable time-to-live, the method may further include initiating a normal-mode handoff to the second satellite client. And, if the first satellite client is determined not to have the reliable time-to-live, the method may includes initiating a survival-mode handoff.
  • According to still a further aspect, a wireless network system may include a terrestrial client including a source wireless interface, wherein the terrestrial client is configured to initiate a data packet transmission via a source wireless interface. The wireless network system may also include a satellite client including an uplink interface and a downlink interface, the uplink interface operating at a first frequency and the downlink interface operating at a second frequency, the first and second frequencies being non-overlapping, wherein the satellite client is configured to receive the data packet transmission on the uplink interface and repeat the data packet transmission on the downlink interface. The wireless network system may further include an earth station server including a first destination wireless interface and a second destination wireless interface, wherein the earth station server is configured to receive the data packet transmission on one of the first destination wireless interface and the second destination wireless interface, repeat the data packet transmission on the other of the first destination wireless interface and the second destination wireless interface, and transmit the data packet transmission to a secondary network.
  • In yet another aspect, a method for routing data packets in a wireless network system may include initiating a data packet transmission via a source wireless interface associated with a terrestrial client. The method may further include receiving the data packet transmission on a first frequency at an uplink interface associated with a satellite client and repeating the data packet transmission on a second frequency at a downlink interface associated with the satellite client, wherein the first and second frequencies are non-overlapping. The method may also include receiving the data packet transmission on one of a first destination wireless interface and a second destination wireless interface associated with an earth-station server, repeating the data packet transmission on the other of the first destination wireless interface and the second destination wireless interface, and transmitting the data packet transmission to a secondary network.
  • In another aspect, a method for routing data packets in a wireless network system may include initiating a data packet transmission via a source wireless interface associated with a terrestrial client. The method may further include receiving the data packet transmission on a first frequency at an uplink interface associated with a satellite client and repeating the data packet transmission on a second frequency at a downlink interface associated with the satellite client, wherein the first and second frequencies are non-overlapping. The method may also include receiving the data packet transmission on one of a first destination wireless interface and a second destination wireless interface associated with an earth-station server, repeating the data packet transmission on the other of the first destination wireless interface and the second destination wireless interface, and transmitting the data packet transmission to a secondary network.
  • In a further aspect, a wireless network system may include an earth-station server configured to provide a gateway to a secondary network and a plurality of clients, each including a client controller implementing a client process, wherein the client process of at least one of the clients selects a transmission path to the earth-station server that is an indirect link to the earth-station server through at least one of the other clients, and wherein at least one of the clients is aircraft-based. In an additional aspect, a method for routing data packets in a wireless network may include configuring an earth-station server to provide a gateway to a secondary network. The method may also include providing a plurality of clients, wherein each of the clients implements a client process operable to select a transmission path to the earth-station server that is an indirect link to the earth-station server through at least one of the other clients, and wherein at least one of the clients is aircraft-based.
  • Additional objects and advantages of the disclosure will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the disclosed embodiments.
  • Aside from the structural and procedural arrangements set forth above, the embodiments could include a number of other arrangements, such as those explained hereinafter. It is to be understood that both the foregoing description and the following description are exemplary only.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The accompanying drawings, which are incorporated in and constitute a part of this description, illustrate several exemplary embodiments and together with the description, serve to explain the principles of the embodiments. In the drawings,
  • FIG. 1 is a pictorial representation of a wireless network system in accordance with the present invention;
  • FIG. 1 a illustrates a first tree structure of the data communication path or “links” of the wireless network system of FIG. 1;
  • FIG. 1 b illustrates a second tree structure illustrating optimized or “stabilized” data communication paths for the wireless network system of FIG. 1;
  • FIGS. 2 a-2 g, 2 h′-2 h″, and 2 i-2 o are used to describe a prototype of the wireless network system of FIG. 1, illustrating both the path connection and path optimization process;
  • FIG. 3 is a block diagram of a server, router, the first wireless network and the second network of FIG. 1;
  • FIG. 4 is a flow diagram of a server process operating on the server of FIG. 3;
  • FIG. 5 is a flow diagram of the “Process Packets Received From Client” step of FIG. 4;
  • FIG. 5 a illustrates a data packet processed by the process illustrated in FIG. 5;
  • FIG. 5 b is a flow diagram illustrating the process “Am Ion Route?” of FIG. 5;
  • FIG. 5 c is a flow diagram illustrating the process “Data?” of FIG. 5;
  • FIG. 6 is a flow diagram illustrating the “Process Intermodal Information” process of FIG. 5;
  • FIG. 6 a is a flow diagram illustrating the process “Client Authentic?” of FIG. 6;
  • FIG. 6 b is a flow diagram illustrating the process “Put New Client In Tree” of FIG. 6;
  • FIG. 7 is a flow diagram illustrating the function “ADDS ON(P,C)” of FIG. 6 b;
  • FIGS. 7 a and 7 b are used to illustrate the operation of the ADSON function of FIG. 7;
  • FIG. 8 is a flow diagram illustrating the “Delete Client From Tree” process of FIG. 6;
  • FIGS. 8 a-8 c illustrate the process of FIG. 8;
  • FIGS. 9 a-9 c illustrate the “Place Network Tree In Client Transmit Buffer” of FIG. 6;
  • FIG. 10 is a pictorial representation of the “Communicate with Network” process of FIG. 4;
  • FIG. 11 is a flow diagram of the process “Communicate With Network” of FIG. 4;
  • FIG. 12 is a block diagram of radio packet modem;
  • FIG. 13 illustrates a client, such as client A, B, C or D of FIG. 1;
  • FIG. 14 is a flow diagram of a client process running on the client of FIG. 13;
  • FIG. 15 is a flow diagram of the process “Radio Transmit and Receive Packet” of FIG. 14;
  • FIG. 16 is a flow diagram of the process “Perform Transmit/Receive Process” of FIG. 15;
  • FIG. 17 is a flow diagram of the process “Process Computer receive Packets” of FIG. 16;
  • FIG. 18 is a flow diagram of the process “Process Radio Received Packets” of FIG. 16;
  • FIGS. 18 a and 18 b are used to illustrate the process “Is It My Packet?” of FIG. 18;
  • FIG. 19 is used to illustrate the “Process Per Type Code” of FIG. 18;
  • FIG. 20 illustrates an initialization routine of the client process; and
  • FIGS. 21 a-21 d illustrate the process of FIG. 20;
  • FIG. 22 depicts an exemplary wireless network comprising transmission paths between a series of nodes in which each node implements an exemplary dual wireless interface;
  • FIG. 23 illustrates a block diagram of one possible configuration of a radio modem implementing an exemplary dual-wireless interface;
  • FIG. 24 depicts an exemplary LEO constellation;
  • FIG. 25 depicts an exemplary satellite-based wireless network;
  • FIG. 26 depicts a LEO satellite-based system operating in an exemplary normal mode;
  • FIG. 27 illustrates in flow chart form an exemplary overall satellite-based routing scheme;
  • FIG. 28 depicts an exemplary “Initiation Subprocess”;
  • FIG. 29 depicts an exemplary “LEO Beacon Subprocess”;
  • FIG. 30 depicts an exemplary “RTRT Subprocess”;
  • FIG. 31 depicts an exemplary “Route Discovery Subprocess”;
  • FIG. 32 depicts an exemplary “Reliable TTL Process”;
  • FIG. 33 depicts in detail an exemplary “Reliable TTL Handoff Process”;
  • FIG. 34 depicts an exemplary “Adjacent Plane Links Process”; and
  • FIG. 35 depicts an exemplary “Alternate Remote Route Process.”
  • FIG. 36 depicts an exemplary network in which an aircraft-based client may serve as a router for a terrestrial client.
  • FIG. 37 depicts an exemplary network in which aircraft-based clients and LEO clients may form a transmission link to an earth-station.
  • FIG. 38 depicts an exemplary network in which aircraft-based clients may extend a distressed LEO constellation operating in survival mode.
  • DESCRIPTION OF EMBODIMENTS
  • Reference will now be made in detail to exemplary embodiments. Wherever possible, the same reference numbers are used in the drawings and the description to refer to the same or like parts.
  • FIG. 1 illustrates an exemplary wireless network system 10. The wireless network system 10, which will also be referred to herein as a “first network”, is preferably in communication with a second network 12 via a digital communication bridge or router 14. The construction and operation of networks, such as second network 12, and bridges or routers, such as router 14, are well-known to those skilled in the art. It is preferred that the second network operates on the aforementioned TCP/IP protocols, i.e. the second network is the Internet or is a private Intranet. At times, herein, the second network will be referred to as simply the Internet, it being that other forms of a second network are also operable with the systems, apparatus, and process described herein. Again, the construction and operation of the Internet and Intranets are well-know to those skilled in the art. Likewise, routers, bridges, and other network devices such as hubs, gateways and Ethernet interfaces are well-known to those skilled in the art, and are available from a variety of sources including Cisco Systems, 3-Corn, Farillion, Asante, etc. In general, as a “network interface” may refer to any such device that allows a server of the wireless network system to communicate, directly and indirectly, with the second network.
  • The exemplary wireless network system 10 may include one or more servers 16, the single example of which is herein labeled S. It should be noted that the server 16, serves as a gateway in that it performs a translation service between the first network and the second network. For example, the data packets on the first network include links and data types that are only applicable to the first network. Therefore, such links and data types are removed from the data packets before they are transmitted to the second network which, as noted previously, preferably operates on a TCP/IP protocol. Conversely, data packets received from the second network are modified to include the links and data types before they are transmitted to the first network. Therefore, the data packets on the first or wireless network can be essentially “packages” or “envelopes” for TCP/IP data packets when they are destined for the Internet or received from the Internet. However, as will be discussed in greater detail subsequently, the data packets of the first network can be of types other than “data” types for TCP/IP formatted data. It should be noted that while only a single server S is shown in this example that, in most cases, multiple servers, each with their own gateway to the intemet, will be used in the first network.
  • The exemplary wireless network system 10 further includes a number of clients 18, each including a client machine 20 and a radio modem 22. The client machine 20 can be any form of digital processor, including a personal computer (PC), a computer workstation, a personal digital assistant (PDA), etc. The client machine may be a personal computer (PC) made to the Microsoft Windows/Intel microprocessor (“Wintel”) standard, or the Apple Macintosh standard. Wintel and Macintosh compatible computers are commercially available from a variety of vendors. Likewise, computer workstations and PDAs are available from a number of vendors. Radio modems, such as the radio modem 22, are further available from a number of vendors. At least some embodiments disclosed herein may be implemented using radio modems produced by GRE America, Inc. which operate on a spread spectrum technology, and which provide good receiver sensitivity and repeater capabilities. These GRE America, Inc. radio modems are commercially available under the Gina trademark and operate in the 2.4 gigahertz or 900 megahertz bands with support for the packetized data transmission. The Gina band radio modems further include error detection and correction, can operate in asynchronous and synchronous modes, and can support data speed from 300 to 64 kbps. Furthermore, the Gina radio modems can operate in a point-to-point or point-to-multipoint mode.
  • A server process, to be discussed in greater detail subsequently, may be implemented on the server 16, and a client process, also to be discussed in detail subsequently, operates on each of the clients 18. The client process operates, at least in part, on the client machine 20. However, in alternative embodiment, the client process can operate on the controller of the radio modem 22 of the client 18.
  • In the exemplary wireless network system 10 illustrated in FIG. 1, the client 18A is in “direct” radio communication with the server 16 as indicated by the radio communication link 26. This will be referred to herein as “direct” or “1-hop” or “line-of-sight’ connection with server 16. The client 18B, however, does not have a direct path or “link” to the server 16 due to an obstacle 24, such as a hill, large building, etc. Therefore, the client 18 communicates via a radio link 28 with client 22A which relays the data packets from client 18B to server 16. A client 18C has a direct line-of-sight to server 16, but is out of transmission range to the server 16. Therefore, the client 18C transmits its data packets by a radio link 30 to client 18B, from where is relayed to client 18A via link 28, for eventual relay to the server S via radio link 26.
  • As noted in FIG. 1, 18D is in direct communication with server 16 via radio communication link 32. If client 18C detects the transmissions of client 18D, it will note that client 18D has less “hops” to server 16 than does client 18B, and will switch its link from client 18B to client 18D. This process is a part of the “stabilization” or “optimization” process of the network 10.
  • It will therefore be appreciated that the exemplary wireless network system 10 may be constantly attempting to optimize itself for the “best” data transmission. In the exemplary embodiments described herein, this optimization looks solely to the number of hops between the client and the server for the sake of simplicity. However, other factors can also affect the quality of the data transmission. For example, the traffic, of data packets through a particular client modem may be large, such that is better to route the data from neighboring clients through other clients, even though there may be more hops involved with the alternative routing. Also, some radio links may be less robust or may be slower than other links, such that optimization may result in a routing of data around the less robust or slower links, even though it may increase the number of hops to the server 16. Therefore, although the present embodiment looks at only one single factor in its optimization process, it will be appreciated by those skilled in the art that multiple factors can be used to stabilize or optimize the exemplary wireless network system 10.
  • It should also be noted that the exemplary wireless network system 10 may be quite robust in that it may survive the loss of one or more clients in the system. For example, if the client 18A is lost due, for example, to a power or system failure, the data packets of client 18C can be routed through the client 18D, and the data packets for the client 18B can be routed through clients 18C. Therefore, the wireless network system 10 may be highly robust and highly survivable under a number of adverse conditions.
  • In addition, some embodiments described herein may permit mobile communication within the wireless network system 10. For example, if the client 18D is a portable computer and is moved around within the wireless network system 10, it will opportunistically change its data communication path as better links become available. For example, if the client 18D is moved close to the client 18B, it may use the client 18B as its link to server 16. Also, any routing through the client 18D from other clients (such as 18C in this example) will be updated and optimized as the data path for the client 18D changes.
  • It should be noted that, in general, the network may operate the best and may be the most suitable if the radio modems and their client/controllers are never turned off. It may therefore be desirable to not have and on/off switch on the radio modem, so that the clients are always participating in the network traffic distribution. However, even if a radio modem is turned off, the remaining clients will re-route through other clients, as will be discussed subsequently
  • In FIGS. 1 a and 1 b, two “tree” structures are shown illustrating the various links that were discussed, by way of example, with reference to FIG. 1. The tree structure is maintained in the server S, and is transmitted to any client that may request it.
  • In FIG. 1 a, a tree indicates that client 18A is linked to a server 16 by a link 26, client 18B is linked by link 28 to a client 18A and by link 26 to a server, and client 18C is linked by line 30 to client 18B, by link 28 to client 18A and by line 26 to server 16. The client 18 D is in direct communication with the server 16 via radio link 32. Therefore, clients 18A and 18D are both “1 hop” away from the server 16, client 18B is “2 hops” away from server 16, and client 18C is “3 hops” away from server 16.
  • In the scenario where client 18C realizes it has a better connection to server 16 through the client 18D, the link 30 to client 18B is no longer used, and a new radio link 34 to client 18D is established. This is illustrated in FIG. 1 b. Now clients 18A and 18B remain 1 hop clients, client 18B remains a 2 hop client, but client 18C is upgraded from a 3 hop client to a 2 hop client. Therefore, the data transmission efficiency of the network has been “stabilized” or “optimized.”
  • It should be noted that the term “link” is used to convey both the connection to an adjacent client as well as the entire path from the client to a server. It will therefore be understood that when speaking of a link to an adjacent client, that this also implicitly includes all necessary links from that adjacent client to the server, i.e. a link is the entire path description from a given client to a given server.
  • FIGS. 2 a-2 o, an exemplary wireless point-to-multipoint network is prototyped to facilitate a discussion of the theory and operation of the disclosed embodiments present invention. In FIG. 2 a, a network 36 with 60 potential “nodes” 001 through 060 is illustrated. As used herein, a “node” can either be a client or a server. The nodes 014 and 016 have been arbitrarily selected as servers for the purpose of this example. The nodes 014 and 016 are marking servers with the large black dot replacing the leading “0” of those numerals. For the purpose of this example, it is assumed that a node can only communicate with an immediate adjacent node. Of course, in actual operation, nodes may be able to communicate with more distant nodes than its immediate neighbor nodes.
  • It should be noted, that in the notes incorporated of FIGS. 2 b through 2 k the leading “0”s have been deleted from client numbers, e.g., client 005 is referred as client 5 in FIG. 2 b. This notation is used for clients with respect to clients and servers and the notation should not be confused with any other uses of the reference numerals 1 through 60 in this document.
  • FIG. 2 b, a first client is designated at node 005 (hereafter “client 005”). For the purposes of this example, the Yen or “E” symbol is positioned next to the client 005. As noted previously, for the purpose of this example, we will assume that any particular node is only in radio communication range of a node that is adjacent in a horizontal, vertical or diagonal direction, i.e., in an immediately adjacent “neighbor”. In this instance, client 005 detects that there is a radio contact with node 014, which is a server (hereafter “server 014”). This server 014 and the client 005 will build a routing path or “link” between each other. This is accomplished by client 0005 transmitting a “I Am Alive” packet seeking a route to a server. The server 014, being within a radio transmission range, will respond and will add the client 005 to its routing table as its “left son.” The meanings of the “routing table” and the “left son” will be described subsequently. The routing table of the server 014 is therefore 014(005), and the route from the client 005 to the server 014 is 005>014. Again, this notation will be discussed in greater detail subsequently.
  • The network 36 than has a second client 6 added as indicated by the “E” symbol next to node 006 in FIG. 2 c. Second client 006 makes radio contact with client 005 and builds a routing path or a “link” to a server 014 through the client 005. Server 014 updates its routing table accordingly. This is accomplished by client 006 issuing an “I Am Alive” packet seeking a client repeater route to a server. Client 005 will respond and add client 006 to its routing table as its left son. The updated routing table of the server 014 is therefore 014(005)006)). The route from the user client node 006 to the server 014 is 006>005>014.
  • In FIG. 2 d, a third client 007 is added to the network 36 as indicated by the “E” symbol next to node 007. Client 007 establishes contact with client 006 and finds a path through clients 006 and 005 to server 014. This is accomplished by client 007 issuing a “I Am Alive” packet seeking a client repeater route to server 014. Client 006 will respond and add client 007 to its routing table as its left son. The updated routing table of the server 014 is then: 014(005(006(007))). The route from client 007 to the server 014 is: 007>006>005>014.
  • In FIG. 2 e, another client 016 has been added at node 016 as indicated by the “El symbol. It should be noted that the client 016 can make radio contact with clients 005, 006, and 007. However, client 016 recognizes node 026 as being a server (hereafter “server 026”) and then connects directly to server 026. This is accomplished by client 016 transmitting a “I Am Alive” packet seeking a route to a server. The server 026 will respond and will add client 016 to its routing table and its left son. The updated routing table of server 026 is then 026(016). The routing from client 016 to the server 026 is 016>026.
  • In FIG. 2 f, a server routing table and a route for each client thus far in the example are illustrated. It should be noted that when client 016 came into existence, a shorter route was created for client 007 to a server, namely via client 016 to server 026. As noted in this figure, client 007 has made the adjustment to connect to server 026, thereby “stabilizing” or “optimizing” the network 26. Also, it should be noted that server 014 has deleted client 007 from its routing table, since client 007 is now using server 026 as its gateway to the Internet. This creates a universe of six nodes, of which two are servers and of which four are clients. The average “hop” distance from a client to a server is 1.5 hops. The remainder FIGS. 2 g-2 o further illustrate these concepts.
  • In FIG. 2 g, the network 36 illustrates an extreme example where 58 clients are connected to the two servers 014 and 026. FIGS. 2 h′ and 2 h″ show a fully “stabilized” or “optimized” network where the path or “link” from any client any client to a server is as short as possible, i.e. where there is few “hops” as possible. It should be noted that the optimization occurs dynamically during operation and without complex algorithms and look-up tables. As will be discussed in greater detail subsequently, the optimization occurs when clients “hear” transmission from other clients that have a better (i.e. shorter) path to a server.
  • FIG. 2 h′ shows the network as seen from the point of view of servers 014 and 026 and from the point of views of clients 001-client 031. In FIG. 2 h″, the network as seen from the point of view of clients 032-060, along with statistics for the overall network, are shown. In brief, in a universe of 60 nodes, of which two are servers and 58 are clients, the average hop distance from a client to a server is 2.36206897 hops.
  • In FIG. 2 i, the process of adding a new client 009 to the server is illustrated. The first time the client 009 came “alive” (i.e. became operational) it took five tries before node 009 found a client neighbor with a path to the server. The reason that it may take many tries to find a connection path is that multiple neighbors of client 009 are responding to the client 009 “I Am Alive” message via CSMA/CD (Carrier Sent Multiple Access/Collision Detection) protocol. The likelihood that any particular neighbor of client 009 will respond first is, essentially, random. Once client 009 hear from a neighbor that it does not have a path to a server, client 009 tells that neighbor not to respond to the next “I Am Alive” announcement from client 009. In consequence, client 009 keeps trying to find a path to the server until it succeeds. However, that path may not be the shortest path. In this example, the client 009 finds a path to the Internet server, resulting in updating of the routing table for the Internet server 014, as 014(005(006(007(008(009)))),004,003). The route or “link” from client 009 to the server is: 009>008>009>006>005>014.
  • In FIG. 2 j, a client 029 is finding a route to the server via one of its neighbors. It finds a route through 019, and is added to the routing table a client 019 as its left son. The routing table of server 014 is also updated, and the rout from user client 029 to the server is determined. However, this route is not an optimal route in that it includes a greater number of hops than necessary.
  • In FIG. 2 k, the “stabilization” or “optimization” process is illustrated. It was previously noted that the client 029 has a non-optimal path to a server. In order to improve this path client 029 will receive “help” from its neighbors starting with client 007. Client 007 currently has a route to server 014. Client 007 starts randomly probing its neighbors looking to a short route to a server. Client 007 finds a shorter route to client 026. Client 007 informs server 014 to drop client 007 from server 014's routing table, and client 007 informs server 026 to add client 007 to its routing table. Since client 029 was “downstream” from client 007, client 029 dramatically becomes switched to a route to server 026.
  • In FIG. 2/, this process is repeated for client 008. Notably, client 008 shortens its route to server 026 by 1 hop. Client 009 cannot improve its route to server 026.
  • In FIG. 2 m, client 018 shortens its route to server 027 to 2 hops. This is despite the fact that the route to client 007 and 008 are a relatively efficient 3 hop links. [0124] In FIG. 2 n, client 029 is optimizing its path. Client 029 eliminates 018 from its route by “leap frogging” past client 018 with the result of the shortest possible 3 hop route to server. Ultimately, therefore, client 029 route is improved from a 7 hop path to server 014 to the shortest possible 3 hop path to server 026. This result is dramatically accomplished with the efficiencies of clients 007, 008, and 018 also improving, and without the need for complex routing algorithms.
  • In FIG. 2 o, another example of individual dramatic routing is illustrated for client 044. This client node shortens its route from 3 to 2 hops by switching server destinations. Client 044 drops out of the server 014's routing table and gets added to server 026's routing table.
  • The advantage of prototyping the system in FIGS. 2 a-2 o is that further optimizations become apparent. For example, if a great deal of network traffic is going to a particular node, it may be desirable to place a “passive repeater” at that node. A passive repeater is not a client, per se, but, rather, is a transceiver that receives and rebroadcasts packets. The passive repeater therefore effectively extends the range the range of the transmitting clients, and reduces data bottlenecks in the system. A passive repeater is also used for clients with long links to a server in that it can shorten the link by effectively allowing to skip some intermediate links. The prototyping of the system is also useful in that it shows that placing servers near the center of the network reduces the average link length (i.e. reduces the average number of client hops) in the network.
  • In FIG. 3, a block diagram of the server 16 of FIG. 1 is illustrated. In this instance, the server 16 includes a computer system 38 and a number of peripherals coupled to the computer system. The computer system 38 can be a personal computer system, a computer workstation or a custom data processor capable of implementing the exemplary processes disclosed herein.
  • By way of example, the computer system 38 includes a microprocessor 42 that is coupled to a memory bus 44 and to an input/output (I/O) bus 46. Typically also coupled to the memory bus 44 are random access memory (RAM) 48 and read only memory (ROM) 50. The RAM 48 is usually volatile (i.e. its contents are lost when power is removed) and is used for temporarily or “scratch pad” memory. The ROM 50 is nonvolatile (i.e. its contents are not lost when power is removed), and typically includes the start-up instructions for the computer system 38. A number of peripherals are typically coupled to the I/O bus 46. For example a removable media drive 52 for a removable media 54 (such as a floppy disk, a Zip® disk, or a C/D ROM) is typically coupled to the I/O bus 46, as is a fixed or hard disk 56. Furthermore, a router 14 or bridge can be used to couple the I/O bus 46 to the Internet 12 as previously described. In addition, an RJ45 Ethernet interface 58 can be used to couple the computer system 38 to a local area network 60 and from there to the Internet 12 by a router 14, or the like, Also, a radio modem 62 (including a control section C, a radio section R, and an antenna 64 coupled to the radio section R) can be coupled to the I/O bus 46. The radio modem 62 can communicate with the network 10 including a number of nodes 66 by a wireless transmission of “radio link 68”. The assembly of the hardware of the server illustrate in FIG. 3 will be apparent to those skilled in the art.
  • In FIG. 4, an exemplary server process 70 of the present invention is implemented on the server 16. More particularly, the server process 70 can be implemented on computer system 38, within the control section of the radio modem 62, or partially in both of those places. In the embodiment shown, the majority of the server process 70 is implemented on the computer system 38. However it should be noted that the control section C of the radio modem 62 includes a microprocessor and memory and, with proper program instructions, can be made to implement the process 70 of FIG. 4, freeing the personal computer 38 for other tasks.
  • The server process 70 includes a server process control 72 and four subprocesses. More particularly, the subprocesses include a process 74 which processes received from clients, a process 76 which sends packets, a process 78 which communicates with the network, and a process 80 which performs housekeeping functions. Each of these processes will be discussed in greater detail subsequently.
  • In FIG. 5, the process “Process Packets Received From Clients” 74 of FIG. 4 is illustrated in greater detail. The process 74 begins at 82, and at step 84, the variable RETRY is set to 0. Next, a step 86 retrieves a packet from the client receive buffer, and a decision step 88 determines whether the path or “link” of the packet is same as the currently stored link in memory. If not, a step 90 updates the tree. If so, or after the updating of the tree in step 90, a decision step 92 determines whether it is “My Packet?” In other words, step 92 determines whether the packet being received by the server was intended for that server. If not, a decision step 94 determines whether that server is on route. If that server is on the route, but is not its packet, a decision step 96 determines whether the packet has already been repeated. If, not the packet is placed in the client transmit buffer. If decision step 94 determines that the server is not on the route, or the packet has already been repeated, or upon the completion of step 98, a decision step 100 looks for time-out. The time-out is provided by the server process control 72 such that the computer hardware resources on which process 70 are implemented can be shared among the four processes. More particularly, in most instances, the computer hardware resources are shared among the subprocesses 7478 in a “round-robin” fashion well-known to those skilled in the art. However, it should be noted that at times the strict round-robin scheduling is not adhered to, as will be discussed subsequently.
  • If step 100 determines that a time-out has occurred, the decision step 102 determines whether the retry number RETRY is greater than the allowed, namely NUMRETRY. In its preferred embodiment, the number of retries RETRY are set at, perhaps, 2 or 3 so that the server does not tie up its resources with endless retries of process. If RETRY is greater than the NUMRETRY, the process is as indicated at 103. Otherwise, a step 104 increments RETRY by 1. In the absence of a time-out and in the absence of the number of retries being used up, process control returns to step 86.
  • If step 92 determines that the packet is for that server, a step 106 determines whether the packet is a data type. If not, a step 108 process “internodal information.” If so, a step 110 places the data in a server transmit buffer. After the completion of steps 108 or 110, process control is returned to step 100 to determine if there is a time-out.
  • In FIG. 5 a, an exemplary “data packet” 112 is illustrated. As it will be appreciated by those skilled in the art, a data packet is an associated string of digital information that is transferred and processed as a unit. The data packet 112 shown includes a header 114, a type 116 and data 118. The data 118 can be standard TCP/IP data. The header 114 includes the source address, the address of all hops along the way (i.e. the “link” of the data packet), and the destination address. Hops (i.e. clients and servers) that already have been traversed (i.e. have already forwarded the data packet) are indicated with an asterisk (“*”) symbol. The type 116 is, in this implementation, a two-digit code indicating the type of the data packet 112, as well as will be discussed in greater detail subsequently. The data section 118 of the data packet 112 includes the data associated with that packet. The data according to some embodiments is in the range of 128-1024 bytes in length.
  • In FIGS. 5 b and 5 c, respectively, the decision steps 94 and 106, respectively, are illustrated with respect to the data packet architecture of FIG. 5 a. The decision step 94 (“Am I On Route?”) of FIG. 5 is simply determined by process 120 “My Address In The Header?”. If yes, the process of FIG. 5 branches to step 96, and if no, the process of FIG. 5 branches to step 100. In FIG. 5 c, the decision step 106 “Data?” simplifies to a process 122 “Is the Type Equal to 14?”. This is because, in the present invention, a type 14 has been arbitrarily chosen to indicate a data type. If yes, the process of FIG. 5 branches to step 100, and if no, the process of FIG. 5 branches to step 108.
  • In FIG. 6, the step 108 “Process Internodal Information” of FIG. 5 is explained in greater detail. The process 108 begins at 124 and, in a multi-branch decision step 126, the type of the data packet is determined. If the type is a “01”, a step 128 places an acknowledgement and a “code seed” in the client transmit buffer, and the process is completed at 130. Acknowledgements and “code seeds” will be discussed subsequently. If the type is a “07”, a step 132 receives the client request for the network tree, and the process places the network tree in the client transmit buffer in a step 134. The process is then completed at 130. If, however, the type is “13”, a step 136 deletes the client from the tree and a step 138 determines whether a flag has been set. If not, the process is completed at 130. If, the flag has been set as determined by step 138, a step 140 puts a new client in the tree and the process is then completed at 130.
  • If decision step 126 determines that the “type is “05” a step 142 determines whether the client is authentic. The authentication process, which will be discussed subsequently, keeps unauthorized clients from being added to the network. If the client is not authentic, the process is completed at 130 and the client is not allowed to connect to the server. If a step 142 determines that the client is authentic, a step 144 determines whether the client is already in the server tree. If yes, the flag is set in a step 146 and process control is turned over to step 136 to delete the client from the tree. Since the flag has been set, step 138 branches the process control to step 140 and the new client is placed in the tree, after which the process is completed at 130.
  • The addition and removal of nodes from trees are well known in those skilled in the art. For example, in the book, incorporated herein by reference, SNOBOL 4: Techniques and Applications, by Ralph E. Griswald, Department of Computer Science, University of Arizona, Prentiss-Hall, Inc.,® 1975, ISBN 0-13-853010-6, algorithms for placing and removing clients from trees are discussed.
  • FIG. 6 a illustrates the process 142 of FIG. 6 in greater detail. More particularly, the process 142 begins at 148 and, in a step 150, a “seed” is chosen on the fly. Next, in step 152, a “one way” function is performed using the seed and a known authentication algorithm, and a one-way result is stored. Next, found in step 154, the seed is “camouflaged” and in a step 156, places an acknowledgement code and camouflaged seed in the client transmit buffer. The process is then completed at 158.
  • The purpose of the process 142 is to prevent unauthorized “clients” from accessing the network. For example, hackers may be prevented from accessing the network unless they can crack the authentication process, which is nearly impossible.
  • Authentication techniques are well known to those skilled in the art. For example, the book, incorporated herein by reference, Algorithms in SNOBOL 4, by James F. Gimpel, Bell Telephone Laboratories, John Wiley & Sons, a Wiley Interscience Publication,® 1976 by Bell Telephone Labs, Inc., ISBN 0-471-30213-9, describes authentication techniques using one-way seeds. See, in particular pp. 348349 with back references. In brief, a “seed” is chosen “on the fly” such as by reading the system clock. The one-way function modifies the seed using an algorithm known to both the server and the clients. The one-way result, which in this instance is 4 bytes in length, is stored. The step 154 then “camouflages” the seed by dispersing the 4 bytes among perhaps 26 other bytes prior to transmitting the camouflaged seed. The receiving clients know which of the four bytes to use for their one-way function.
  • The process 140 “Place New Client In Tree” of FIG. 6 is illustrated in greater detail in FIG. 6 b. The process 140 begins at 160 and in a step 162, it is determined whether this is a “1 hop” client. If so, a decision step 164 determines whether it is a new client C. If so, the variable P is set to S in step 166 and the function “ADDSON” with the variables (P, C) is evoked in step 168. S, of course is the server or root of the tree. If step 164 determines that is not a new client C, or after the completion of the ADDSON function, the process ends at 170.
  • If step 162 determines that it is not a 1 hop client (i.e. C is a multi-hop client) a step 162 determines whether the parent P of client C is known to client C. If not, a step 174 determines the parent P from the header of client C. If the client C does know its parent, or after the completion of step 174, a step 176 receives parent P from client C. Next, in a step 178, the function ADDSON(P,C) is evoked, and the process is completed at 170.
  • In FIG. 7, the ADDSON(P,C) function is explained in greater detail. More particularly, function steps 168-178 begin at 180 and, in a step 182, the variables C, P are received. In this notation, the sting RSIB ( ) refers to a string of right siblings, and the notation LSON( ) refers to a string of left sons. A step 184 sets RISB(C)=LSON(P). A step 186 sets a string FATHER(C)=P and a step 188 sets the string LSON (P)=N2 is an in-memory pointer that points to the memory location of nodes. The string FATHER provides a pointer from a child C to its father, which in this case is P. The process is then completed as indicated at 190.
  • In FIGS. 7 a and 7 b, the ADDSON function is graphically illustrated. In FIG. 7 a, a parent 192 has left a son 194 and a right sibling 196. The parent 192 and left son 194 have mutual pointers to each other, while the right sibling 196 has only a pointer to the parent 192. The left son 194 also has a pointer to the right sibling 196. When ADSON function is evoked with the argument (P, C) C is added as the left son 198 and the pointer in the parent 192 is updated to point to the left son 198. The left son 198 has pointers to the parent and to the new right sibling 194. The new right sibling 194 still has a point to the older right sibling 196, and both siblings 194 and 196 have pointers to the parent 192. It should be noted, under all circumstances, that the parent is only directly aware of the left son, in that it only has a pointer to the left son.
  • In FIG. 8, the process 136 “Delete Client From Tree” is illustrated in flow-diagram form. The process 136 begins at 200 and in a step 202, it is determined whether the target is equal to the left son. The “target” is, of course, the client to be deleted. If the target is the left son, a step 204 determines if there are other siblings. If not, the left son is deleted in a step 206. If there are other siblings, a step 208 makes the next sibling the left son, and then the left son is deleted by step 206. The process is then completed at 210. If step 202 determines that the left target is not equal to the left son, the target is found in a step 212, and is then deleted in a step 214. A step 216 then changes the sibling pointers, and the process is completed at 210.
  • FIGS. 8 a-8 c are several scenarios used to illustrate the process of FIG. 8. Assume that there is a tree structure as illustrated in FIG. 8 a. If a node “A” (i.e. a client A) of FIG. 8 a “s=disappears” all nodes (clients) 218 that used client A as a path to the server P are dropped from the network as illustrated in FIG. 8 b. With reference again to FIG. 8 a, if the node C disappears, the sibling B will simply reset its pointer to point to sibling D without any loss of service to any of the nodes. The lost nodes 218 of FIG. 8 b will need to re-establish themselves into the network as previously described.
  • FIG. 9 a is a tree structure that will be used to illustrate the step 134 “Place Network Tree In Client Transmit Buffer” of FIG. 6. Since the tree structure 220 is a logical construct, it must be represented in a form suitable for digital transmission. This form is illustrated in FIG. 9 b as a string 222. With reference to both FIGS. 9 a and 9 b, the string 222 represents the tree on a top-to-bottom, left-to-right basis. Therefore the string 222 indicates for the parent X that its left son is 3 with a right sibling B. For the parent 3, there is a left son 9 with a right sibling Z. For the parent Z, there is a left son 8, a right sibling 5, and another right sibling Q. For the parent Q, there is a left son R. Therefore, the tree structure 220 has been completely and compactly represented by the notation of the string 222.
  • The converting of the trees to strings and the reverse is well known to those skilled in the art. In short, a left parenthesis in the string indicates that a left son follows, and a comma in the string indicates that a right sibling follows. For example, the aforementioned book SNOBOL 4: Techniques and Applications describe the process for converting trees to “prefix form” as described above, and vice versa. The aforementioned book ALGORITHMS IN SNOBOL 4 likewise describes the process.
  • While the tree structure 9 a is useful for representing and traversing a tree data structure, it is not well-adapted for rapid searching for particular nodes. For this purpose, the table of FIG. 9 c is created to implement fast searching and other housekeeping functions. In this illustration, the table of FIG. 9 c includes four columns The first column is the sequential element or “node number, a second column 226 is the node name, the third column 228 includes the time stamp of the creation of the node, and the fourth column includes the actual physical memory location of the node. In this way, a particular node can be searched by element number, node name, time stamp, or memory location without resorting to the time consuming recursive search algorithms otherwise typically used to search tree structures.
  • FIG. 10 is a pictorial representation of a portion of the server of FIG. 3 that has been simplified to explain steps 78 of FIG. 4 “Communicate With Network.” The exemplary wireless network system 10 may include a number of clients and, perhaps, other servers, each of which has its own IP address. The radio modems of those clients and servers communicate with radio modem 62 of the server which provides digital data to the serial port of a server computer or host 38. A router, bridge or other device is used to connect the server to a network, such as TCP/IP network 12. Of course the radio packet modem 62 and the server computer 38 can be considered part of the exemplary wireless network system 10 as described previously. The combination of the server and the router or the like performs a “gateway” function, in that it provides translation services between the two networks 10 and 12.
  • Referring back to FIG. 4 the step 76 “Send Packets” simply involves sending the data packets stored in the client transmit buffer to the network 10 through the radio modem 62. Likewise, and in a straightforward matter, the step 78 “Communicate With Network” simply forwards the data stored in the network transmit buffer to the network through the router 14 or through another route, such as the Ethernet interface 58. The “Send Packets” and “Communicate With Network” processes will be easily understood by those skilled in the art. Again, the server process control 72 allocates system resources among the processes 74-80 on a round-robin basis.
  • In FIG. 11, the exemplary housekeeping process 80 of FIG. 4 is illustrated in greater detail. Since the housekeeping function 80 is of generally less importance than the other function of process 70, it is possible that housekeeping function will be interrupted with a branch to one of function s 74, 76 and 78 of FIG. 4.
  • More particularly, in FIG. 11, the housekeeping function 80 of FIG. 4 is illustrated in greater detail. The process 80 begins at 232 and, in a decision step 234, it is determined whether a flag is set. If not, at step 236, the next element is equal to 1, i.e. it is picking the first element on the list. If step 234 determines that a flag is set, the process 80 knows that the housekeeping has been interrupted in the middle of the list and therefore the next element is set equal to the stored mark point as indicated in step 238. Next, a step 240 determines whether if the end of the table has been reached. If so, the process is completed at 242. If the of the end table has not been reached, the element retrieved in a step 244, and then in a step 246, it is determined whether the current time minus the time stamp is greater than a predetermined interval. If it is, a step 248 deletes the client from the tree and from the table. This step 248 is performed to ensure that a client node that has dropped out the network 10 without informing the server is deleted from the server tree at some point in time. A suitable interval may be 15 minutes, or any interval set by a network manager. Process control then returns to step 240.
  • If step 246 determines that a node (i.e., a client) corresponding to the next element has cheeked-in within the time INTERVAL, a step 250 determines whether there is a heavy traffic on the server. If not, process control is returned to step 240. If there is a heavy traffic, a step 252 marks the place in the table corresponding to the current element (i.e., the marked point in the list is stored in memory) and then a step 254 determines the traffic type. Process control then branches to process 256 if it is heavy network traffic, 258 if it is heavy outgoing packet traffic, and process 2600 if it is heavy incoming packet traffic.
  • In FIG. 12, a radio modem 62 (which can be similar to all of the radio modems described herein) is illustrated in block diagram form. Again, the radio modem 62 is commercially available from GRE America, Inc. as the Gina spread spectrum radio modem, models 6000N-5 or 8000N-5. Spread spectrum technology gives good reliability and some transmission security in that a 127-bit cyclical code must be known by both the transmitting and receiving node. However, for true data security, encryption techniques, well known to those skilled in the art, should be used. Gina modems do include the option of 64-bit built-in encryption as an option.
  • It should be further noted that the Gina radio modem hardware can be modified to incorporate the server process (or the client process for the client radio modem) of the present invention by storing program steps implementing those processes into a ROM or programmable ROM (PROM) 262 of the radio modem 62.
  • The radio modem 62 includes a microprocessor 264 coupled to a bus 268. The microprocessor is an Intel 80C188 microprocessor in the present example. The PROM 262 (which currently stores 512 Kbytes of code) is coupled to the bus, as in RAM 268, a serial interface 270 and an HDLC converter 272. Coupled to the HDLC 272 interface is a transceiver interface 274, and coupled to the transceiver interface 274 is a CSMA/CD unit 276. A transceiver unit 278 with an antenna 280 is coupled to the CSMA/CD unit 276.
  • The devices 272 and 276 are used for error correction and noise cancellation, as will be appreciated by those skilled in the art. The CSMA/CD detects if two packets have “collided” producing indecipherable noise. If so, no acknowledgement of the packets is sent by radio modem 62 and the senders of the two packets will wait a short random period before resending their packets. Since the waiting period is random, there is little likelihood that the packets will collide a second time. The HDLC performs a checksum on the received packets and, if the checksum fails, prevents the sending of the acknowledgement. This will cause the sending node to resend the packet after a random waiting period.
  • The currently used radio modems operate in the 902-908 MHZ frequency range at about 725 mW, and have an outdoor range of up to 12 miles, line-of-sight. These characteristics are a good compromise for a light to moderately dense network. If the network becomes very dense, it may be preferable to reduce the power, since this will reduce the number of clients that hear a given packet. Also, other frequency ranges are also suitable, such as the 2.404 to 2.478 GHz range.
  • The currently sold Gina spread spectrum radio models have their transmission (“baud”) rate artificially limited to 38.4 kHz. However, this artificial limit can be easily removed by a simple change to the program in PROM 262 to allow the modems to operate at 115.2 kHz, or nearly at full ISDN baud rates. At these baud rates, a single server can reasonably support three simultaneous WVVW browser sessions and a dozen e-mail sessions. This compares very favorably to cellular networks which, as noted previously, can only support one user at the time. This also compares very favorably to the RICOCHET system which, since is limited to 28.8K baud, is not very useful for VVWVV browsing.
  • In FIG. 13, an exemplary client 18 including a computer 20 and a radio modem 22 of FIG. 1 is illustrated in greater detail. Again, the client computer 20 can be any suitable form of digital processor including personal computer, work station, PDA, etc. A computer 20 includes a microprocessor 282, RAM 284, and ROM 286. The microprocessor is coupled to the RAM 284 and the ROM 286 by a memory bus 288. The microprocessor 282 is also coupled to an input/output (I/O) bus 290 to which a number of peripherals 292 may be attached, including the radio modem 22. As before, the radio modem 22 includes a control C portion and a radio R portion, where the control portion of the radio modem 22 is coupled to the I/O bus 290. With brief reference to FIG. 12, the control portion C is everything but the transceiver unit 278 and the antenna 280, and the radio portion R corresponds to the transceiver unit 278. Also, as before, the client process running on the client 18 can run on the computer 20, in the control C portion of the modem 22, or partially on both processors. The client 18 typically includes other peripherals 292 such as a removable media drive 294 receptive to removable media 296, (such as a floppy disk or a CD ROM) and to a hard disk drive 298. Those skilled in the design of computer system will readily understand how the hardware of client 18 is assembled and used.
  • In some embodiments, uninterruptible power supplies and Global Positioning Systems (GPS) may be added to the client 18. The uninterruptible power supplies ensure that the clients stay on the network, and the GPS can be used in conjunction with directional antennas (such as phased array antennas) attached to the radio modem 22 to direct the transmission to the desired next node in the link. This increases the efficiency of the system, and reduces “packet pollution” of the network. The GPS unit can be coupled to I/O bus 290, or can be incorporated into the radio modem 22.
  • In FIG. 14, an exemplary client process 300 is implemented in the hardware of client 18. Again, this process can run on the microprocessor 282, or it can be partially or wholly run on the microprocessor of the controller C of the radio modem 22. In this exemplary embodiment, the process 300 runs on the computer portion 20 of the client 18. The client process 30 includes a client process control 302, a process 304 for radio transmitting and receiving data packet, and a process 306 for maintaining a first-in-first-out (FIFO) buffer for send and receive data packets in RAM 284 for the computer 20.
  • In FIG. 15, the exemplary process 304 of FIG. 14 is described in greater detail. The process 304 begins at 308 and, in a step 310; it is determined whether the client is on the network. If not, the client needs to get on the network before it can send data to the server. This connection process begins at 312 to determine whether it is out of tries in trying to reach the server. If not, it sends a 01 packet in a step 314 and waits to receive a 02 packet from the server or another client in a step 316. If it does not receive a 02 packet in response to 01 packet process control is returned to step 312 until it runs out of server tries. When it does run out of server tries, process control is turned over to step 318 which determines whether it is out of client tries. If yes, this particular client cannot reach either a server or another client and the process terminates at 320 with a failure. If it is not out of client tries in step 318, a 03 packet is sent in a step 321 and the client waits to receive a 04 from another client in a step 322. If a 04 is not received, the process control is returned to a step 318 until they are out of client tries.
  • If a 02 is received in a step 316 or a 04 is received in a step 322, then the client is in communication with the server or a client, respectively. In either instance, a step 324 stores the “link”, i.e., the path to a server, whether it is direct to the server or through one or more intermediate clients. Next, in a step 326, a 05 is sent to the link and a step 328 determines whether a 06 is returned. If not, the process is terminated as indicated at 320. If a 06 has been received, then a 07 is sent to the link in a step 330, and a step 332 determines whether a 08 is returned. If not, a step 334 determines if they are out of tries, and if not, process control is returned to step 330 to send another 07 to the link. If after a certain number of tries, e.g., 3 tries, a 08 is received in response to 07 transmitted by the client, the process terminates with a failure at step 320. If a 08 is received as determined by step 332, a random check-in time is set in a step 336. A random check-in time is set so that not all clients will try to check in with the server at the same time. Preferably, the random times will equally distribute the check-in times for the various clients equally within the aforementioned period INTERVAL. Finally, at this point, the client is connected into the network and the transmit/receive process is accomplished in a step 338. Of course, if the client was on the network as determined by step 310, the step 338 can be performed directly. The step 338 will be performed until there is a time-out of the transmit/receive process due to the round-robin scheduling by the client process control 302 (see FIG. 14).
  • In FIG. 16, the process 338 “PerfomiTransmit/Receive” is illustrated in greater detail. The process 338 has a transmit/receive process control 340 and the three subprocesses 342, 344 and 346. Again, the time allocated to the various subprocesses on a round-robin basis.
  • The subprocess 342 is the check-in routine where the client is required to check in on a periodic basis with the server to avoid being dropped from the server's routing list. As noted previously, the check-in start time is essentially random, and is within a given period INTERVAL. More particularly, the subprocess 342 begins with a decision 348 as to whether it is the proper time to check-in. If not, process control is immediately returned to process control 340. If it is check-in time, a 07 is sent to the server. If a 08 is received from the server, all is well and process control is returned to process control 340. If the expected 08 is not received, decision step 354 determines if there are any more tries. Typically, at least three tries will be allowed. If there are more tries, process control is returned to step 350. If there aren't any more tries, a step 356 will authenticate and send an 11 to the left son of the client that the client is removing itself from the network. Authentication prevents the situation where a “promiscuous” spooler could masquerade as a client and transmit an “11” packet with downstream client addresses, thereby disconnecting those downstream clients from the network. The client then marks itself as being disconnected or “off’ of the network in a step 358, and a process control is returned to process control 340.
  • In FIG. 17, an exemplary process 344 “Computer Received Packets” is shown in flow diagram form. The process 344 begins at 360 and, in a step 362, the data is obtained from a buffer. Next, in a step 364, the header is added to the data including the link and the packet type “14” to indicate that this is a data-type data packet. Next, the data packet, complete with header, is transmitted in a step 366 and the process is completed at step 368.
  • FIG. 18 illustrates an exemplary process 346 “Process Radio Packets” of FIG. 16 in greater detail. The process 346 begins at 370 and, in a step 372, determines if the received packet is for it. If yes, a step 374 will process the packet per the code type, as will be discussed in greater detail subsequently. Then, a step 376 determines if the father node of the client has been marked. If not, a new, shorter link is created, since the packet was received without being relayed by the father node. If the father node has been marked, or after a new link has been created, the process terminates at 380.
  • If step 372 determines that it is not that client's packet, a step 382 determines if that client is on the route for the packet. If yes, a step 384 tests to see if the client is marked. If it is marked, it has already sent that packet and the process is completed at 380. If the client hasn't been marked, it marks itself in the header of the data packet and transmits the packet in a step 386. Process control is then given to step 376 to see if the client's link can be upgraded as discussed previously.
  • If step 382 determines that the packet is not for that client, and that the client is not part of the link, steps 388-392 still analyze the packet in process known as “pooning”. Since this client can hear this packet, there is an opportunity to upgrade its link. Step 388 determines whether the link to the last marked node plus one (i.e. the distance to the first unmarked node) is shorter than its own link. This is because this client is listening to the last marked node, and the number of hops through that last marked node is the number of hops of that last marked node plus one. If it is, the client's link is updated in a step 392 to this shorter link. If not, the alternative route is cached in case the client's current link becomes inoperative. Therefore, in the pooning process, the client listens to all packets to continuously and dynamically update its link to the best possible path.
  • In FIG. 18 a, an exemplary data packet 394 may include a header portion 396 including a link section 398 and a data type section 400, and a data portion 402. The link 398 indicates that the destination of this data packet is the node P. The two digit data type 400 indicates what type of data is being sent, and the data field 402 includes the actual data and is terminated within EOD (end of data) marker. This packet corresponds to the tree of FIG. 9 a. Since all upstream nodes (i.e. nodes Q, Z, 3, and X) are marked with asterisk (“*”), it is known that the data packet has passed through and has been marked by each of these nodes before reaching the node P. If, however, the data packet 394′ of FIG. 18 b is received where in only nodes X and 3 are marked, this means that the node 3 can hear the transmission of node (client) 3 directly. In this instance, there is no need to go through nodes Q and Z to reach server X. As a result, the new, upgraded link is from node P to node 3 to the server X. This is represented by the notation: X(3((P)).
  • The table of FIG. 19 is used to illustrate an exemplary process “Process Per type Code” step 384 of FIG. 18. The table of FIG. 19 includes tree columns 404, 406, and 408. The first column 404, lists the codes that can be received. These codes correspond to the 2 byte code 400 of the data packet 394 of FIG. 18 a. The second column 406 corresponds to the server responses to receiving such codes, and the third column 408 are the client responses to receiving the codes. We will now discuss each of the codes, in sequence.
  • When the server receives a 01 code its response is 02 code plus a one-way seed as discussed previously. Since 01 code is never intended for a client, it will ignore or “drop” the 01 coded data packets.
  • For the 02, 03 and 04 codes, the server will ignore or drop those data packets because these data packets are only intended for clients. If a client receives a 02, it responds with a 05 and a one-way response. In response to a 03, a client will send a 04 and a seed or a null. In response to a 04, the client will send a 05 and a one-way seed. Again, one-way seeds and responses to one-way seeds were discussed previously.
  • When a server receives a 05, if it has previously sent a 02 and if the 05 is authentic, then it will send a 06. Otherwise, it will drop the packet. When a client receives a 05, if it had previously sent a 04, and if the 05 is authentic, then it sends a 06. Otherwise, the client will drop the data packet. If the server receives a 06, it will drop the data packet. If a client receives a 06 after it sent a 05, then it will send a 07. Otherwise, it will drop the packet as well.
  • When a 07 is received from the server, it will immediately respond with a 08. Since 07 coded packets are never intended for clients, it will be dropped.
  • Data packets coded with an 08, 09, 10 or 11 are all dropped if received by a server. If a client receives a 08, it will update the tree or repeat the data. In response to a 09, a client will send a 10. In response to a 10, a client will update the tremor repeat the data. In response to a type 11, it sends an 11 to the left son with the address the departing node plus a 01 to reconnect to the network.
  • Data packets of type 12 and 86 are currently reserved. In response to a data packet type 13, a server will delete the sender. Since this is a server destination data packet only, if a client receives a data packet of type 13, it will drop the data packet.
  • Finally, if a server receives a data packet of type 14, it will send it to the network transmit buffer. If a client receives a data packet of type 14, it will send it to the computer transmit buffer.
  • FIG. 20 illustrates an initialization routine which connects the client CB to a server S through another client CA. The sequence is a s follows. As indicated by arrow a, client CB sends a 03 to client CA. In return, the client CA sends a 04 and a seed back to client CB as indicated by arrow b. Client CB then sends a 05 and a one-way response as indicated by arrow c to client CA, and client CA sends a 06 and an acknowledgement with a 05 to a client CD as indicated by arrow d. Then, client CB sends a 09 to client CA as indicated by arrow d. Then, client CB sends a 09 to a client CA as indicated by arrow e, and client CA sends a 10 and the link to the client CB as indicated by arrow f. Client CB then sends a 07 and the neighbor's addresses to the client CA as indicated by arrow g, and client CA relays the 07 and the neighbor's address to the server S as indicated by arrow g′. The server S, then sends a 08 and the tree to the client CA as indicated by arrow h, and the client CA relays the 08 and the tree to the client CB as indicated by arrow h′. At this point, the client CB has the link tree to the server S and the complete tree of the network in its memory.
  • FIGS. 21 a-21 d illustrate a portion of the server process which deals with determining a return path from a received data packet at a server. Assume, for example, the tree is known to the server is as illustrated in FIG. 21 a. this is the same tree as was illustrated in an example of FIGS. 9 a and 9 b. Then, assume that the server X receives the data packet from a client P as illustrated in FIG. 21 b. The simplest way of determining the reverse address is simply reverse the link section of the header portion of the data packet of FIG. 21 b to provide a return address of 21 c. However, if the part of the address of the header of the data packet of FIG. 21 b has been lost of corrupted during the transition process, the tree of FIG. 21 a can be used to reconstruct the return path. This is accomplished by jumping from parent to parent in reverse order as indicated to determine the return path. In this example, the reverse order parent jumping indicates that the original path to the server X was P>Q>Z>3>X, which, when reversed, gives us the proper reverse path, namely X(3(Z(Q(P)))). As will be appreciated by those skilled in the art, this type of reverse tree transversal is easily accomplished with a recursive function.
  • According to some exemplary embodiments, clients and servers may implement dual wireless interfaces to increase throughput between a source node and destination node. As described thus far, the client nodes and server nodes implement a single transceiver and interface, or a single-wireless interface. One inherent disadvantage of the single wireless interface may be a significant reduction in bandwidth per node in a transmission link. Specifically, transmitting data packets from a source node through one or more repeater nodes to a destination node may effectively reduce the bandwidth by one-half per node. As a consequence, for example, as applied to the widely used 802.11b interface, no more than three repeater nodes may be able to operate between a source node and a destination node without noticeable throughput loss to the destination node.
  • To minimize this possible limitation, servers and clients may, in some embodiments, implement dual wireless interfaces. Accordingly, at least some nodes may include a first source wireless interface and a second source wireless interface, one for receiving data packets and the other for simultaneously transmitting data packets. As indicated previously, a “node” as used herein refers to either to a client or a server. Where these nodes implement a hardware or software control that operates according to the conventions described below, this arrangement may allow a wireless network to achieve near 100% bandwidth through each repeater node. Accordingly, at least some examples of dual-wireless interfaces described herein may significantly reduce practical limits on the number of repeater nodes and, consequently, the number of hops between a source node and a destination node.
  • For example, FIG. 22 depicts an exemplary wireless network including transmission paths between a series of nodes in which at least some of the nodes (e.g., each node) implements a dual wireless interface. This exemplary system includes three clients 18 a, 18 b, and 18 c; a server 16; and two transmission paths 410 a and 410 b. Path 410 a carries data initiated at client 18 a and destined for server 16, while path 410 b carries data initiated at client 18 c and destined for server 16. Accordingly, with respect to the illustrated paths, 410 a and 410 b, clients 18 a and 18 b act as source nodes. And in each path, server 16 acts as a destination node. In addition, the first transmission path 410 a contains a repeater node, client 18 b, between the source and destination. Therefore, data packets traversing the path 410 a between source client 18 a and the destination server 16 have a two-hop route. And data packets traversing the path 410 b between client 18 c and the destination server 16 have a one-hop route.
  • To achieve near 100% throughput, for example, the network nodes may implement a controller configured to serve as a dispatcher in each node. To that end, the dispatcher may, in some embodiments, operate to route data packets according to the conventions described herein. One should note that any node in a wireless network system may, at times, act as a source, a repeater, and/or a destination node, depending on its function within a given transmission path. Thus, as used herein, a node acting as a source at a given time operates in “source mode,” a node acting as a repeater operates in “repeater mode,” and a node acting as a destination operates in “destination mode.” Further, because nodes may undergo frequent mode changes as data transmissions flow to and from network nodes, the control conventions described with reference to the example network of FIG. 22 should be viewed as applying to a particular “snapshot” in time.
  • In the case of a source node, for example, the controller may be configured, so that the dispatcher designates one of a node's wireless interfaces as the source from which it initiates all data transmissions. For example, in FIG. 22, source node 18 a has designated wireless interface 412 a as the source wireless interface. Accordingly, all data transmissions originating from the client 18 a, when acting in source mode, transmit from wireless interface 412 a of client 18 a. In this example, client 18 a initiates a data transmission from wireless interface 412 a to repeater client 18 b over the first hop along transmission path 410 a. Moreover, according to this convention, the dispatcher operates to ensure that all other data transmissions from client 18 a initiate from the same wireless interface 412 a, and the dispatcher correspondingly operates to ensure data transmissions do not initiate from the client's other wireless interface 412 b.
  • In the case of a repeater node, the controller may be configured so that the dispatcher allows the node to receive data packets on either of its two wireless interfaces and retransmit the data on the other of its two wireless interfaces. With reference again to FIG. 22, client 18 b acts as a repeater node, receiving incoming data packets from source client 18 a over the first hop of transmission path 410 a and retransmitting them to the destination node, server 16, on the second hop along transmission path 410 a. In this case, because repeater node, client 18 b, received data packets on its wireless interface 412 a, the dispatcher operates to retransmit the data packets on the other of client 18 b's wireless interfaces 412 b. It is important to note that the dispatcher routes the data in this manner, regardless of any designation the dispatcher has otherwise assigned to client 18 b's wireless interfaces 412 a and 412 b. In other words, as described above, the client 18 b's dispatcher may have assigned interface 412 b as the source wireless interface. That designation, however, applies only when the client 18 b acts in source mode. As a result, when wireless client 18 b operates in repeater mode, it repeats data transmissions on either of its wireless interfaces, which interface is determined as the wireless interface other than that on which the client received the transmission.
  • In the case of a destination node, the controller may be configured to allow a node to receive transmissions on either of a node's two wireless interfaces. Thus, the dispatcher may operate to allow a node acting in destination mode to receive data packets continuously on both of its wireless interfaces. For example, in FIG. 22, server 16 acts in destination mode, receiving two simultaneous and continuous data transmissions from two sources, client 18 b and client 18 c. On server 16's wireless interface 412 a, it receives a transmission initiated at client 18 c and transmitted along the one-hop path 410 b. Simultaneously, server 16 receives on its wireless interface 412 b a transmission from client 18 b along the second hop of path 410 a. In this manner, the destination node may maintain near 100% throughput.
  • FIG. 23 illustrates a block diagram of one possible configuration of a radio modem implementing a dual-wireless interface. This may be accomplished, in one respect, by modifying a radio modem at least similar to the radio modem 62 of the previously described client of FIG. 13 to resemble radio modem 62 a as shown in FIG. 23. The radio modem 62 a, illustrated in block diagram form, may incorporate a second transceiver unit 280 a, CSMA/CD 276 a, and transceiver interface 274 a. In this manner, the hardware may support the simultaneous receipt and transmission of data packets as described, by receiving incoming packets at a first transceiver unit 280 and retransmitting outgoing packets on a second transceiver unit 280 a. Further, the radio modem hardware may incorporate the controller by storing the logic of the above-described conventions into a ROM or programmable ROM (PROM) 262 of the radio modem.
  • In yet another aspect, the wireless network may comprise a satellite constellation in order to extend a wireless network and/or facilitate access to the Internet to remote users. As described herein, such an embodiment is referred to as a “satellite-based wireless network.” Such a system may be viewed as an extension into three dimensions of the terrestrial wireless network described above. In the described exemplary satellite-based system, data transmissions initiated on earth route through one or more satellites before making their way to a server located at earth (an “earth station server” or “ESS”) and passing into a secondary network, such as the Internet. Therefore, in the satellite-based system, satellites may operate in a client mode and may serve as repeater nodes of a transmission link. A satellite may be any communications device in the earth's atmosphere or orbit including, but not limited to, for example, a low-earth orbit satellite (LEO), mid-earth orbit satellites (MEO), a geosynchronous satellite (GEO), a zeppelin (e.g., a stationary zeppelin), a blimp, or a high-altitude balloon.
  • Extending the routing scheme described above for a terrestrial network, however, may require additional control due to the possible complications introduced by extending the network into three dimensions, e.g., by adding satellite clients to the network. These complications have made achieving, for example, TCP/IP capable routers on board satellites a significant hurdle for extending broadband wireless internet through the use of orbiting satellite routers and/or other conventional technologies. In one respect, using a constellation of LEO satellites to route data packets may advantageously avoid many latency-associated difficulties that arise in satellite implementations employing other types of satellites such as GEO satellites and MEO satellites, which require data packets to travel relatively greater distances. MEOs, for example, orbit between approximately 5,000 km and 10,000 km, and GEOs orbit at approximately 35,786 km above the earth's surface. While LEOs avoid many latency-related problems, however, they may introduce a host of other problems due to their orbital proximity to the earth's surface. Namely, LEOs' orbital proximity (within approximately 2,000 km of the earth's surface) causes them to travel with a greater degree of motion relative to clients located at the earth's surface (terrestrial clients). Therefore, wireless networks employing LEOs may need to account for additional mobility-related challenges to successfully implement a satellite-based broadband network using, for example, TCP/IP.
  • Accordingly, one practical challenge of achieving TCP/IP routing in a LEO constellation may be acquiring and maintaining a virtual circuit among, for example, a terrestrial client (“TC”), a LEO satellite, and earth station server (ESS). Significantly, the routing strategies implemented by the wireless network may greatly affect the overall performance of TCP communications carried across a satellite-based network. Accordingly, it may be desirable to provide a novel handoff scheme that enables TCP/IP routing on board a LEO satellite by providing a method that mitigates or overcomes at least some of the complexities of maintaining a virtual circuit from a TC and ESS through one or more LEO satellites.
  • The exemplary methods outlined below may accomplish this routing scheme via two operational modes, which are illustrated in FIG. 27: normal mode 446 and survival mode 448. Normal mode 446 may include a set of network processes that perform a data packet routing scheme when a requisite number of satellite-clients and earth station servers are operable, so that each of the TCs in the wireless network is able to build an optimal two-hop route to an ESS through an in-view LEO. Survival Mode 488, on the other hand, describes an optimal routing scheme adopted when, for example, a TC cannot find an optimal two-hop route to an ESS through an overhead LEO, but instead must revert to a constellation-wide mesh routing scheme to find an alternative optimal route through a plurality of LEO satellites. Several exemplary processes that may be implemented to achieve this desired operation are described in more detail below.
  • FIG. 24 and FIG. 25 depict an exemplary LEO constellation 413 that represents one possible arrangement for use in the described wireless network system. The illustrated constellation 413 may include, for example, seventy LEO satellites 416 traveling in polar orbit of the earth 414 at an escape velocity of approximately 17,000 miles per hour. The seventy satellites may be distributed among five orbital paths 418 collocated approximately five thousand miles apart at the equator. Accordingly, there are fourteen, approximately evenly distributed, satellites per orbital plane. Satellites travel along these planes in a longitudinal trajectory, moving from north to south over the horizon in one half orbit and from south to north in the other.
  • As illustrated in FIG. 25, the network may further include a number of ESSs 420 distributed on the earth's surface. As used herein, terms such as “earth,” “earth's surface,” “terrestrial,” “earth-based,” and similar terms, are used in a relative manner. For example, these terms are used to distinguish from altitudes associated with the satellites. Thus, these terms may not necessarily imply being attached to the ground or in a fixed position.
  • In the exemplary embodiment shown in FIG. 25, earth station servers may be collocated some five thousand miles apart. With this arrangement, the LEOs of this exemplary constellation have statistically three ESSs 420 in view at any given time. As used herein, a client or server is said to be “in view” when it is in communication range of another given client or server. Further, because each transition path consists of a single ESS 420, which serves as a destination node, second and third in-view ESSs 420 provide redundancy.
  • The following paragraphs explain in greater detail some exemplary systems and methods that may be used to support the above-described LEO handoffs while maintaining a substantially stable virtual circuit between the TC and ESS. These methods may comprise two operational modes: normal mode and survival mode. (See, e.g., FIG. 27.) In one aspect, a normal mode provides a novel handoff scheme that may be employed in an operational satellite-based wireless network. And, in another aspect, a survival mode provides countermeasures that may be desirable for maintaining a survivable network in the event that one or more clients or earth station servers is rendered inoperable, such as in the event of a global, catastrophic event. Together, these methods may address at least some of the complexities of extending a terrestrial network to a satellite-based wireless network.
  • FIG. 26 illustrates a LEO satellite-based system operating in an exemplary normal mode. According to this operational mode, the transmission path between the source node and destination node may contain a total of two hops and only one “satellite hop” through a satellite client. As shown in FIG. 26, an exemplary data communication initiates at a TC 422 acting in source mode. TC 422 may be a client located at earth and may be mobile or stationary. Data packets transmitted from TC 422 may ultimately seek a destination on a second network 424, such as the Internet. The second network may interface to the wireless network at a gateway of an ESS 420. For this reason, the ESS 420 may serve as the destination node in the transmission path from the TC 422. LEOs 416 travel overhead relative to the TC 422 in polar orbit. LEOs 416 a, 416 b, and 416 c orbit in a “local plane,” and LEOs 416 d and 416 e orbit in an “adjacent,” “remote” plane. Assuming an operational satellite constellation, such as the described exemplary LEO constellation, the TC 422 statistically will have three LEOs in view at any given time. For example, as shown in FIG. 26, local-plane LEOs 416 a and 416 b, and adjacent-plane LEO 416 d are located most proximately overhead the TC 422.
  • By the exemplary process described in detail below, the TC 422 will therefore build a route to the ESS 420 along a two-hop route comprising a first-hop 426 and a second-hop 428. For reasons described in more detail below, the TC will advantageously favor a route through a local-plane LEO over a remote-plane LEO due to the reliability and predictability of the local-plane LEO's time-to-live overhead. Accordingly, LEO 416 b receives data transmissions from the TC 422 on its uplink frequency over the first hop 426 in the transmission path and repeats it on its downlink frequency to the earth station server over the second link in transmission path 428. Because it may be assumed that the transmitted data packets contain TCP/IP structure, the earth station server need not perform any translation before passing the data packets on to a secondary network, for example, the Internet 424.
  • FIGS. 28-34 illustrate the described exemplary processes in chart form as a series of steps that take place in vertical, sequential order from top-to-bottom and execute at one or more TC, LEO, and ESS, as designated by vertical columns and according to the following description.
  • As used herein, a “mesh network” refers to a network that may allow for continuous connections and reconfiguration around broken or blocked paths by “hopping” from node to node until the destination is reached. In a terrestrial mesh network such as the exemplary ones described previously herein, for example, a route between a client and server and passing through one or more other clients will likely persist. In that case, alternative routes merely serve as an option to resolve the unlikely contingency that one or more nodes in the link between a source and destination becomes unavailable.
  • In contrast, LEO clients travel a great degree more with respect to the earth and, consequently, to terrestrial clients. As a result, each LEO remains overhead and in range of a terrestrial client for a limited time as it rises above the horizon and a short time later, falls below the opposite horizon, for example. This limited time a LEO spends in view above the horizon is hereafter referred to as a LEO's “time-to-live” (TTL). Because a satellite-based mesh contains routes through at least one LEO client, the TTL of each LEO repeater along the route introduces a necessary handoff. In this sense, a “handoff’ refers to replacing a LEO client in an existing route with another LEO client in order to maintain a virtual circuit between the source and destination nodes. Due to the frequency of such handoffs, route maintenance in a satellite-based mesh may be a relatively more complex process than the process associated with a terrestrial network.
  • In one aspect, therefore, meshing in a satellite-based wireless system may result in implementing a route discovery and maintenance process that differs from a routing scheme associated with a terrestrial mesh network. For example, if route discovery in a satellite-based network were to begin as with a terrestrial network, as described in the exemplary embodiments above, the satellite-based route discovery process might be much less stable than the terrestrial route discovery process. Assuming, as before, an ESS maintains an in-memory tree of all of the clients that it is serving, once a TC has discovered a LEO through which to route, via an exchange of 03 and 06 packets, respectively, the TC and LEO would exchange 09 and 10 packets. Upon receiving the 10 packet, the TC (a) converts the payload data string of said 10 packet into its own in-memory tree, (b) finds its own address in said tree, and (c) counts the number of hops between it and the address of the server at the top of said tree. At this point in time, however, the route through the LEO would be unreliable due to the uncertainty of the new LEO's TTL. Moreover, randomly discovering other LEOs as potential alternate routes as in a terrestrial network may exacerbate the problem by forcing handoffs to other LEOs with unpredictable TTLs, thus making the network functional, but possibly unstable—requiring an unpredictable number of handoffs.
  • Accordingly, the Initiation Subprocess of FIG. 28, begins a slower, but more stable, route discovery process initiated by a LEO. This exemplary subprocess is one of four underlying sub-processes that may be performed at particular steps within the major exemplary processes described below. By this subprocess, a LEO constantly searches and identifies in-view ESSs.
  • Table 1 below provides a description of the exemplary data packet types referred to in the following description.
  • TABLE 1
    Packet Description
    00 A beacon packet for a roll call from neighbor
    clients
    01 “I'm alive!” Ping to server
    02 Server ACK from 01 followed by one-way
    challenge
    03 “I'm Alive!” Ping to client(s)
    04 Client ACK from 03 followed by one-way
    challenge
    05 ACK followed by one-way response to Server
    or Client 04
    06 One-way confirmation ACK from 05 from
    Server or Client
    07 Ping to Server for route
    08 ACK from 07 followed by route data
    09 Ping to Client for route
    10 ACK from 09 followed by route data
    Figure US20150351000A1-20151203-P00899
    Figure US20150351000A1-20151203-P00899
    Figure US20150351000A1-20151203-P00899
    indicates data missing or illegible when filed
  • At a step 501, a LEO issues a 01 (I'm Alive!, ping) packet at short random intervals and receives in return a 02 (Server ACK from 01 followed by one-way challenge) from an in-view ESS. And, in a step 502, the ESS and LEO exchange 04 (Client ACK from 03 followed by one-way challenge) and 05 (ACK followed by one-way response to 04) packets for authentication.
  • According to the CSMA/CA protocol, multiple ESSs may receive the LEO-issued 01 packet, while only one ESS will respond with a 02 packet. In this respect, the ESSs may implement a variant of multi-homing by maintaining multiple potential routes, yet without transporting any payload data. These multiple routes would in that case respectively correspond to each LEO the ESS has sent a 02 packet. Therefore, after initiation, each one-hop route between a given LEO and ESS has exchanged no payload data (actual packet data that follows the packet header and identifies the source and destination of the packet) with a TC.
  • In another aspect, TCs in the wireless network may maintain a table of known LEOs including several fields of information relating to each LEO it identifies overhead. First among these fields, the array of known LEOs may store each known LEO's network IP address. According to some embodiments, these addresses correspond to static IP, IPv4, or IPv6 addresses assigned to each node (TC, LEO, and ESS). Other possible embodiments, however, may assign addresses using non-static protocols such as, e.g., network address translation (NAT) or dynamic host control protocol (DHCP). The TC may maintain these addresses in a table of known satellite clients located in transient or non-volatile memory using any of a variety of possible data structures well known in the art, including, for example, a stack, a queue, an array, or a hash table. In addition, the table of known LEOs may further comprise a time stamp field, which specifies the moment in time that the TC first identified and obtained the address of a LEO passing overhead, and a response latency time field, a measure indicative of a LEO's overhead proximity to the TC. The response latency of a satellite client may be, for example, a measured round trip response time (RTRT).
  • FIG. 29 illustrates an exemplary “LEO Beacon Subprocess,” another subprocess that may be implemented as part of the satellite-based route discovery process. By this subprocess, a TC discovers a LEO that has a one-hop route to an ESS and stores that LEO's address into its table of known LEOs. First, at a step 503, a LEO issues a 07 (ping to server for route) packet at short, random intervals. In response, an ESS with which the pinging LEO has a route responds with an 08 (ACK from 07 followed by route data). At a step 504, the LEO repeats the received 08 packet. And, finally, at a step 505, upon receiving the 08 packet, the TC reads the address contained in the 08 packet's payload data and enters the address in the TC's table of known LEOs along with a time stamp.
  • Accordingly, each execution of the LEO Beacon Subprocess creates an entry in a TC's table of known LEOs. When a TC's table of known LEO's is statistically full, the TC may then determine which, if any, address in the table represents a reliable temporary route through a LEO to an ESS. In this regard, a TC may treat its table of known LEOs as “statistically full” when, for example, it has identified a predetermined number of overhead, in-view LEDs. In the presently described exemplary embodiment operating in normal mode, a given TC expects three in-view LEOs during any given twenty-minute interval. Referring again to FIG. 26, for example, the TC 422 has three in-view LEOs 416 a and 416 b in its local plane, and 416 d, in its adjacent, remote plane. It should be noted, however, that the predetermined number of LEOs that renders the table of known LEOs as statistically full, serves primarily as a trigger for a TC to check whether any of its known LEOs has a reliable TTL. Accordingly, the TC may be configured, in the alternative, to treat its table of known LEOs as being statistically full at a lesser or greater number, as desired.
  • As described above, a TC will advantageously establish a two-hop route through a local-plane LEO for its property of having a predetermined, predictable reliable TTL. A TC may make this determination, in one aspect by performing the exemplary RTRT subprocess of FIG. 30. As illustrated in FIG. 30, at a step 506, the TC indexes its table of known LEOs and successively pings the address of each respective LEO, adding the round trip response time (RTRT) to the table of known LEOs for said LEO. In one aspect, the RTRT may be defined by the equation TRTRT=2D, wherein TRTRT represents round-trip-response time, D represents a distance between the first satellite and the terrestrial client, and c represents the speed of light. It is noted, however, that RTRT may represent only one appropriate measure. Other embodiments may employ other, equally appropriate measures that correspond to the transmission latency between a TC and LEO. Subsequently, at a step 507, the TC indexes its table of known LEOs and selects the address of the LEO with the shortest RTRT based on the assumption, for example, that the LEO is most proximate overhead among all LEOs known to the TC. In the event that multiple LEOs register the same RTRT value, the TC may simply select the address of the LEO most recently indexed.
  • Having selected the LEO most proximately overhead, the TC may next perform a Route Discovery subprocess to build a temporary route to the ESS with which the selected LEO has a one-hop route. For example, FIG. 31 illustrates an exemplary Route Discovery Subprocess in more detail. The subprocess begins at step 508, in which the TC and LEO build a route between each other by exchanging 03 (I'm Alive! ping to client) and 04 packets and 05 and 06 (One-way confirmation ACK from 05) packets, respectively, where, for the purpose of authentication, the 04 packet from the LEO contains a seed that prompts the TC to perform a one-way transformation, which it returns in the 05 packet. At step 509, the TC and LEO then exchange 09 (ping to client for route) and 10 (ACK from 09 followed by route data) packets, respectively. As previously described, this route data contains a string representation of the tree maintained in the router memory of the ESS associated with the LEO.
  • Upon receiving the 10 packet, the TC converts the payload data string of the route to the discovered ESS into its own in-memory tree; at step 510, finds its own address in the tree; and counts the number of hops between its address and the address of the ESS at the top of the tree. Having obtained a temporary route to the LEO, at step 512, the TC then updates the default gateway in its routing table with the address of the LEO. Immediately thereafter, the TC may issue a 12 packet with its address as the payload data to the address of the LEO. Upon receiving the 12 packet, the LEO may add the network of the address of the TC as a new network in its TCP/IP routing table. Finally, the TC and ESS then exchange payload data through the route at step 512.
  • It should be noted that in at least the satellite-based wireless and suborbital aircraft (see description below) embodiments, the TC, LEO, and/or ESS may employ an on-board operating system operable to manage packet routing by maintaining routing tables. In some embodiments, for example, a Linux operating system may be used by configuring the system to maintain and manage Linux routing tables. In such embodiments, therefore, maintaining routing tables may obviate the need to include routing information within a packet header, as was described with respect other embodiments herein (see e.g., header 114 in FIG. 5 a).
  • With a temporary route established, a TC may next attempt to discover a route through a LEO with a reliable TTL. When a newly-discovered LEO rises above the horizon, the TC does not know the LEO's longitude (whether said LEO is in a local orbital plane or a remote orbital plane). Referring back once again to FIG. 26, for example, LEOs 416 a, 416 b, and 416 d, each represent an in-view LEO, but only LEOs 416 a and 416 b, however, travel in TC 422's local plane. The “local plane” refers to the orbital path most closely aligned relative to the longitude associated with a given TC, while “remote plane” refers to all other orbital paths within the constellation. The significance of a LEO's traveling in a local plane follows from the fact that a LEO in a TC's local plane has a predetermined, reliable TTL. As a result, once a TC has established a route through a local-plane LEO, it may preemptively execute a handoff as the LEO's TTL approaches expiration.
  • FIG. 32 depicts an exemplary Reliable TTL Process, which describes the procedure for determining whether a given LEO has a reliable TTL. For example, beginning at step 513, a new LEO rises above the horizon and issues a 01 packet, thereafter receiving in return 02 packet from an in-view ESS. At a step 514, the LEO then determines whether it received a 02 packet from an ESS. If not, the LEO has no ESS in view and the system may execute an Adjacent Plane Links Process, for example, as shown at 454 of FIG. 27 and described in more detail below. Otherwise, the LEO has a reliable route through which it may seek to obtain the address of a LEO by performing the LEO Beacon Subprocess.
  • Still referring to FIG. 32, at step 515, the TC may issue a ping to the newly discovered LEO during the RTRT subprocess, thereby measuring the LEO's RTRT. If the measured RTRT falls within a defined RTTL time limit, then the TC knows the LEO is within the TC's local plane, and the system may perform an RTTL Handoff Process, for example, as shown at 452 of FIG. 27. Alternatively, if the RTRT exceeds the defined RTTL time limit, then the LEO is in a remote plane and the TC may restart the process, for example, beginning at step 513.
  • FIG. 33 depicts an exemplary Reliable TTL Handoff process, for example, as shown at 452 of FIG. 27. At this point, the TC has found a LEO transiting the horizon along a local orbital plane. Because the TC reliably knows the TTL of this LEO, it attempts to obtain a two-hop route through this LEO to an ESS and maintain the route until the predetermined reliable TTL approaches expiration, at which time the LEO will attempt to preemptively initiate a handoff to the next LEO rising above the horizon. Accordingly, at step 516, the TC may delete from its TC's table of known LEOs the address of the LEO discovered during the route discovery process at step 508. Next, at step 517, the TC may attempt to find the route to an ESS through the address of the LEO discovered at step 515 by, for example, executing the above-described exemplary Route Discovery Subprocess.
  • With the route through the TTL LEO established, the TC may then prepare for the next handoff, which the TC may preemptively initiate based on the approaching expiration of the predetermined reliable TTL. To prepare for the handoff, at step 518, the TC may delete from its table of known LEOs the address of the LEO discovered at step 517. Then, at step 519, exchange of payload data continues on the existing route and, at step 520, the TC performs the exemplary Reliable TTL Route Process 450.
  • When, at step 521, the TC determines the TTL of the existing route is approaching expiration, the TC executes, in step 522, a Route Discovery Subprocess to determine the address of the most recently discovered LEO. At step 523, the TC may then delete from its table of known LEOs the address of the LEO discovered most recently and, at a step 524, the exchange of payload data continues on the route discovered at step 520.
  • Still referring to FIG. 33 and with continuing reference to FIG. 27, at step 525, a new LEO rises above the horizon and performs a LEO beacon process. The TC then buffers the address of the newly transiting LEO and pings the address of the LEO and measures the RTRT at step 526. As before, if the measured RTRT falls within the RTTL time limit, the transiting LEO is within a local plane, and the TC may preemptively initiate a handoff when the TTL approaches expiration. If the RTRT exceeds the defined RTTL time limit, however, the LEO is not in a local plane and the system returns to step 525 and waits for the next LEO to rise above the horizon.
  • When operating in normal mode, a newly active TC joining the network acquires a route through a local-plane LEO. In this case, because the LEO has a one-hop route to an ESS, the route from TC to ESS contains a total of two hops. Furthermore, assuming all ESSs are operational, any given LEO has three ESSs in view: one to the north, to below it, and one to the south. A second and third ESS provide redundancy. In the unlikely event that all in-view ESSs of a LEO are inoperative, as may occur during a global, catastrophic event, for example, the LEO client may attempt repeatedly to route to a neighboring LEO in an adjacent plane until it acquires a route to an ESS. To accomplish this, the TC, the LEDs, and the ESSs may, according to some embodiments, perform the exemplary steps outline below. Meanwhile, the TC may continuously seek a two-hop route by performing step 510 of the exemplary route discovery subprocess.
  • FIG. 34 outlines exemplary steps of an exemplary Adjacent Plane Links Process, for example, as shown at 454 of FIG. 27. Beginning at step 527, the TC selects from its table of known LEOs the address of the LEO with the freshest time stamp then pings the address and measures the RTRT. If the measured RTRT falls within a defined “adjacent link time limit,” then the TC deletes the address from the table and repeats step 527. If, on the other hand, the TC finds the table of known LEOs maximally indexed and therefore empty, then it may be an indication that a network breakdown has occurred (e.g., some LEOs in the constellation are not functioning properly). In such case, the TC may exit the Adjacent Plane Links Process, and the system may switch to survival mode, for example, by performing an alternate remote route process, for example as shown at 456 of FIG. 27.
  • Otherwise, at step 528, the TC has found an acceptable route through an adjacent-plane LEO, and the network may remain in normal mode. In such case, the TC may execute a Route Discovery Subprocess and build a route to an ESS through the LEO of the selected address. Then, if during the Route Discovery Subprocess the TC determines that the number of hops to the ESS equals 2, the TC has discovered a local-plane ESS. In that event, the TC then stops looking for a route through an adjacent plane and instead branches to step 521 of the TTTL handoff process. If the TC does not determine that the number of hops equals 2, however, then at step 529, the TC determines whether there was a failure during the Route Discovery Subprocess. If so, it is possible that the network breakdown remains unresolved, and the system may enter survival mode by performing an Alternate Remote Route Process 456.
  • In still another, the wireless network system may be configured to implement a survival mode, which may implement the following exemplary logic to maintain a virtual circuit in the event that some LEOs and some ESSs become unavailable, such as in a global catastrophic event.
  • For example, when the network enters survival mode by reaching an Alternate Remote Route Process, for example, as shown at 456 of FIG. 27, it may operate according to a routing scheme at least somewhat similar to that as described above for a terrestrial network. In survival mode, the TC may not know the TTL of a given current route. As a result, a TC may not be able to predictably determine how long a route will persist and therefore may not be able to preemptively initiate LEO handoffs. Moreover, survival mode may be further defined by the fact that some LEOs and/or some ESSs are not operational. If, however, as few as a single, surviving ESS on earth remains operational, and a critical number of surviving LEOs remain operational, then the TC may obtain a multi-hop route through the surviving LEOs to the operational ESS by performing the exemplary Alternate Remote Route Process 456 of FIG. 27.
  • The exemplary Alternate Remote Route Process shown at 456 of FIG. 27, for example, illustrated in detail in FIG. 35, for example, beginning at step 530, the TC issues an 11 (signal survival mode) packet containing a survival TTL value as payload data. Next, at step 531, each LEO to receive the 11 packet repeats the packet recursively to neighboring LEOs until the TTL value expires. Upon expiration, all surviving LEOs in the constellation will have received the 11 packet. Accordingly, the survival TTL value should be set with a long enough duration to allow the packet to traverse the entire constellation. Then, at step 532, each surviving LEO issues a 01 packet. In response, at step 533, LEOs with line-of-sight to an ESS will receive from the ESS a 02 packet and then exchange with the ESS 05 and 06 packets for authentication. With this accomplished, these LEOs have established a one-hop path to an ESS.
  • Simultaneously, for example, each LEO that did not receive a responsive 02 packet (those without line of sight to an ESS) looks to find a route through a neighboring LEO. Accordingly, at step 534, each such LEO may issue a 03 packet repeatedly until it receives an 04 packet from a neighboring LEO. Upon receiving a responsive 04 packet from a neighboring LEO, at step 535, the LEO exchanges 05 and 06 packets with the neighboring LEO for authentication. If the neighboring LEO has an established multi-hop route to an ESS, then, at step 536, the LEO adds itself to the neighboring LEO's multi-hop route by exchanging 09 and 10 packets with the neighboring LEO at step 537. Otherwise, the LEO may loop back to step 534 and may retry, continuing to look for a route through a neighboring LEO.
  • At this point, the constellation of surviving LEOs and ESSs may approach a mesh. Meanwhile, at step 537, each LEO continually eavesdrops on the payload data of successive 08 packets from ESSs, which are repeated by LEOs above the ESSs. And, at step 538, if a LEO may find a shorter route to an ESS, the LEO may opportunistically adopt the shorter route from the payload data of the 08 packet to an ESS by updating its default gateway with the newly discovered LEO address. In this case, the LEO having just discovered a shorter route to an ESS may issue a 12 packet with its address as the payload data to the address of the newly discovered LEO. Upon receiving the 12 packet, the newly discovered LEO, which presents a shorter route to an ESS, may add the network of the address of the discovering LEO as a new network in its TCP/IP routing table.
  • Still referring to FIG. 35, in addition to all surviving LEOs receiving the 11 packet, which signals the network has entered survival mode, other TCs in the network receive the packet as well. Accordingly, all TCs in the network may perform the following steps to establish a first optimal route to an ESS. At step 539, the TC iteratively executes a Route Discovery Subprocess until discovering and building a multi-LEO-hop route to a surviving ESS. Once the TC finds a LEO with a route to an ESS, the TC at step 540, adds the address of the LEO to its table of known LEDs. Then, at step 541, the TC adds the address of said LEO to its TCP/IP routing table as its default gateway. Thereafter, the TC may issue a 12 packet with its address as its payload data to the address of the newly discovered LEO. Upon receiving the 12 packet at a step 542, the newly discovered LEO may then add the network of the address of said TC as a new network in its TCP/IP routing table. The TC then exchange payload data with the ESS.
  • At step 543, the TC eavesdrops on payload data of successively received 08 packets from ESSs (repeated by LEOs overhead) and attempts to discover a second optimal route—a shorter route through one of the LEOs to the address of an ESS. When the entire constellation of LEOs temporarily has optimized to the shortest routes to ESSs, the TC, at step 544, places other discovered routes of equal or greater number of hops (compared to the current route), along with an accompanying time stamp in a table of alternate routes. For example, the TC may in one aspect maintain the table of alternate routes as an ordered stack.
  • When a TC suddenly loses its route, for example, as a result of a LEO dropping below the horizon, the TC, at step 545, indexes its table and deletes routes with stale time stamps. The TC may also sort the array of alternate routes in ascending order, according to the number of hops. When implemented as an ordered stack, for example, the TC may “pop” the “next best” route from the top of the stack. As noted before, the best route, in some embodiments, may be defined with consideration of additional factors. As referred to herein, however, the best route may correspond to the path with the fewest hops. At step 545, the TC may then select the alternate route from the array and then return to step 540.
  • If, at any of steps 539 through 545, the TC receives a 08 packet with payload data indicating a two-hop route to an in-plane or adjacent-plane ESS, the TC at step 545 may perform the exemplary RTRT Subprocess. If the TC successively executes the RTRT subprocess, then, at step 547, it indexes its array of known LEOs and deletes any address of a LEO in the array with a stale time stamp and then, at step 548, branches to step 521 of the Reliable TTL Handoff Process 452 of FIG. 27 and waits. Alternatively, if the RTRT subprocess fails, then the TC returns to step 540.
  • Because a LEO may function as a repeater node in the network, it may in one aspect, advantageously implement the above-described dual wireless interface. The satellite 416 may receive uplink data transmissions from a terrestrial client on a repeater wireless interface, either of two satellite antennas. Preferably, the uplink and downlink frequencies may fall within the Ka-band, which is allocated internationally and capable of accommodating global broadband systems ranging from about 18 to about 40 GHz. For example, the satellite downlink frequencies may range from about 18.3 to about 18.8 GHz or from about 19.7 to about 20.2 GHz, while the uplink frequencies may transmit at about 30 GHz. By the exemplary methods described above, the client process may determine whether a packet is routed to an earth station server or to a neighboring satellite.
  • According to some embodiments processor on-board the LEO may run the Linux operating system, which maintains routing tables as described above. The software server program implemented on the earth station server and the client programs located on the LEO satellite and the terrestrial clients may be operable together via parallel processing to determine optimal routes by exchanging in-memory routing tree link information.
  • Transmissions to neighboring satellites may proceed over radio or laser intersatellite links (ISLs) 426. Further, each LEO may include of two RF interfaces, one on an uplink frequency and one on a downlink frequency—non-overlapping. The satellite required power output may range from, for example, about 50 to about 60 dbW, or from about 100 to about 1000 kW, for example, to overcome rain-induced attenuation associated with the high-frequencies transmissions in the Ka Band.
  • In still other embodiments, one or more mobile clients of a wireless network may be located on-board sub-orbital aircraft. For example, an aircraft may be equipped with a transceiver configured according to, for example, some embodiments of the present disclosure, and they may serve several desirable functions for facilitating broadband Internet access. For example, according to some embodiments, aircraft-based clients may serve as client routers for terrestrial clients, thereby permitting broadband Internet access to clients in locations where such service may not be otherwise available. In some embodiments, a wireless network path may include links between aircraft-based clients and LEO clients in order, for example, to reach an earth-station server. And, according to some embodiments, aircraft-based clients may serve as an extension of a LEO constellation by participating in a constellation-wide mesh, for example, when clients of a LEO constellation operate in survival mode.
  • According to a first exemplary embodiment, an aircraft-based transceiver may serve as a client router for a terrestrial client. This may be desirable because such example may make additional use of networking hardware in an aircraft equipped to provide passengers and/or crew with in-flight broadband Internet access (e.g., in-flight Wi-Fi access). In such embodiments, an aircraft may be outfitted with a transceiver and router to serve as a gateway to the Internet through an earth-station server. Possible transmission technologies for providing such wireless transmission between the aircraft and a server on the ground may include, for example, WiMAX (e.g., based on the IEEE 802.16 standard), 4G (also known as 3GPP Long Term Evolution), and CDMA (EV-DO RevA and EV-DO RevC).
  • To make additional use of the hardware in place for air-to-ground communications, a terrestrial client may route communications through an overhead aircraft configured as a client repeater to the Internet through an earth-station server. This may be accomplished by additionally configuring the aircraft's on-board transceivers to operate in client mode, for example, as described above with reference to FIGS. 14-21. Correspondingly, earth-station servers may be configured according to server processes, for example, as described above with reference to FIGS. 4-11. In this manner, a transceiver on board the aircraft may act as a client router on behalf of terrestrial clients, for example, in rural areas where high-speed Internet access may not be available through cable or DSL (Digital Subscriber Line).
  • FIG. 36 illustrates an exemplary embodiment in which an aircraft-based client may serve as a router for a terrestrial client. As shown, a terrestrial client 422 may acquire a two-hop path to an earth-station server 420 a through client network hardware located on board an aircraft 602. By, for example, the exemplary processes described herein, earth- station servers 420 a and 420 b may maintain in-memory tree link information about the known clients in the network. As the network topology changes due to, for example, an aircraft-based client moving out of range of a terrestrial client and/or an earth-station server, the route may adapt (e.g., automatically) in order to maintain a virtual circuit between both the terrestrial client and earth-station server.
  • As shown in FIG. 36, for example, as aircraft-based client 602 loses line of sight of earth station server 420 a, it may come into range of earth-station server 420 b and replace its air-to-ground transmission link with a link to server 420 b. Similarly, by the same client and server processes, for example, client 422 may establish a two-hop transmission path through another aircraft-based client (not shown) as it passes within line of sight of overhead.
  • According to some embodiments, for example, the exemplary embodiment shown in FIG. 37, aircraft-based clients and LEO clients may together form a transmission link to an earth-station. For example, LEO clients, aircraft-based clients, and/or terrestrial clients may each be configured to operate in client mode according to, for example, the exemplary client processes described herein with reference to FIGS. 14-21. Accordingly, an aircraft-based client and a LEO client each may serve as nodes through which data transmissions may pass to reach an earth-station server. Moreover, data transmissions may be initiated from either terrestrial clients or from subscribers on-board an aircraft.
  • As shown in this example, a terrestrial client 422 may exchange data packets with an earth-station server 420 along the three-hop route comprising, for example, links 604 (terrestrial client 422 to aircraft-based client at 602), 606 (aircraft-based client at 602 to LEO), and 608 (LEO to earth station server 420). Such an exemplary transmission link may arise, for example, when an aircraft-based client does not have line of sight to an earth-station server, but is able to route indirectly through a LEO. Similarly, a subscriber on board an aircraft may exchange data packets with an earth station server along the two-hop route comprising, for example, links 606 (aircraft-based client at 602 to LEO) and 608 (LEO to earth station server 420).
  • According to some embodiments, aircraft-based clients may extend a distressed LEO constellation operating in survival mode. For example, an aircraft-based client router may be configured to operate as a client in survival mode, as described in FIGS. 27 and 35. By serving as one or more links along a transmission path between a terrestrial client and an earth station server, aircraft-based clients may participate in a constellation-wide mesh, for example, when one of the LEOs or earth station servers becomes inoperable, such that a reliable two-hop link through one LEO is not available or is unreliable.
  • Referring to FIG. 38, for example, a two-hop link from terrestrial client 422 to earth station server 420 a is unavailable or unreliable. As described above with regard to survival mode in a LEO constellation, for example, clients receiving packets signaling survival mode may cause a large portion of the network (e.g., the entire network) to approach a mesh. In this exemplary case, aircraft-based client 602, configured to operate in the same manner as a LEO client, may participate in the constellation-wide mesh by acting as a node between a second and third hop, 612 and 614 respectively, thereby forming a complete transmission path between the terrestrial client 422 and earth station server 420 b.
  • It should be noted that providing broadband Internet access to aircraft passengers and/or crew is not a necessary component of the aircraft-based routing embodiments. Rather, it is mentioned merely for the possibility of simultaneously providing broadband access to subscribers on-board an aircraft and to terrestrial clients using pre-existing aircraft-based networking transmission and routing hardware.
  • Other embodiments will be apparent to those skilled in the art from consideration of the specification and practice of the exemplary embodiments disclosed herein. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the invention being indicated by the following claims. In particular, the exemplary satellite-based wireless network routing system described herein may apply to several possible configurations or constellations and does not imply any requisite number or arrangement of satellites. Furthermore, though this disclosure seeks to provide, among other things, improved methods and systems for routing TCP/IP data packets, it may equally apply to other transmission protocols.

Claims (12)

What is claimed is:
1. A wireless network system comprising:
an earth-station server configured to provide a gateway to a secondary network; and
a plurality of clients, each comprising a client controller configured to implement a client process,
wherein the client process of at least one of the clients selects a transmission path to the earth-station server that is an indirect link to the earth-station server through at least one of the other clients, and
wherein at least one of the clients is aircraft-based.
2. The system of claim 1, wherein the earth-station server comprises a digital controller configured to maintain a map of data packet transmission paths of the plurality of clients.
3. The system of claim 1, wherein the aircraft-based client and earth-station server are configured to perform wireless transmission of data using at least one of WiMAX, 4G, and CMDA.
4. The system of claim 1, wherein the client controller associated with the aircraft-based client is configured to simultaneously serve as an in-flight router.
5. The system of claim 1, wherein at least one of the clients comprises a satellite client.
6. The system of claim 5, wherein the client controller associated with the aircraft-based client is configured to extend a satellite constellation mesh.
7. A method for routing data packets in a wireless network, the method comprising:
configuring an earth-station server to provide a gateway to a secondary network;
providing a plurality of clients; and
implementing a client process operable via one or more of the plurality of clients to select a transmission path to the earth-station server that is an indirect link to the earth-station server through at least another of the plurality clients,
wherein at least one of the clients is aircraft-based.
8. The method of claim 7, wherein the earth station server comprises a digital controller, and wherein the method further comprises maintaining a map of data packet transmission paths of the plurality of clients via the digital controller.
9. The method of claim 7, further comprising transmitting data using at least one of WiMAX, 4G, and CMDA.
10. The method of claim 7, further comprising configuring the client controller associated with the aircraft-based client to simultaneously serve as an in-flight router.
11. The method of claim 7, further comprising configuring at least one of the clients as a satellite client.
12. The method of claim 11, further comprising configuring the client controller associated with the aircraft-based client to extend a satellite constellation mesh.
US14/820,687 2009-02-03 2015-08-07 Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods Abandoned US20150351000A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/820,687 US20150351000A1 (en) 2009-02-03 2015-08-07 Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US12/364,769 US8982856B2 (en) 1996-12-06 2009-02-03 Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods
US13/482,961 US8787246B2 (en) 2009-02-03 2012-05-29 Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods
US14/337,738 US20140334378A1 (en) 2009-02-03 2014-07-22 Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods
US14/820,687 US20150351000A1 (en) 2009-02-03 2015-08-07 Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US14/337,738 Continuation US20140334378A1 (en) 2009-02-03 2014-07-22 Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods

Publications (1)

Publication Number Publication Date
US20150351000A1 true US20150351000A1 (en) 2015-12-03

Family

ID=46828387

Family Applications (4)

Application Number Title Priority Date Filing Date
US12/364,769 Expired - Fee Related US8982856B2 (en) 1996-12-06 2009-02-03 Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods
US13/482,961 Active 2029-09-12 US8787246B2 (en) 2009-02-03 2012-05-29 Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods
US14/337,738 Abandoned US20140334378A1 (en) 2009-02-03 2014-07-22 Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods
US14/820,687 Abandoned US20150351000A1 (en) 2009-02-03 2015-08-07 Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods

Family Applications Before (3)

Application Number Title Priority Date Filing Date
US12/364,769 Expired - Fee Related US8982856B2 (en) 1996-12-06 2009-02-03 Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods
US13/482,961 Active 2029-09-12 US8787246B2 (en) 2009-02-03 2012-05-29 Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods
US14/337,738 Abandoned US20140334378A1 (en) 2009-02-03 2014-07-22 Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods

Country Status (1)

Country Link
US (4) US8982856B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110401923A (en) * 2019-04-19 2019-11-01 广州天链通信科技有限公司 A kind of method and VSAT terminal of VSAT terminal bridge and routing mode support simultaneously
CN113411860A (en) * 2016-06-22 2021-09-17 华为技术有限公司 Communication path changing method and device

Families Citing this family (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7444401B1 (en) 2002-11-18 2008-10-28 Arkion Systems Llc Method and apparatus for inexpensively monitoring and controlling remotely distributed appliances
US7412842B2 (en) 2004-04-27 2008-08-19 Emerson Climate Technologies, Inc. Compressor diagnostic and protection system
US7275377B2 (en) 2004-08-11 2007-10-02 Lawrence Kates Method and apparatus for monitoring refrigerant-cycle systems
WO2007131169A2 (en) * 2006-05-04 2007-11-15 Capstone Mobile Technologies, Llc System and method for remotely monitoring and controlling a water meter
US8690117B2 (en) 2006-05-04 2014-04-08 Capstone Metering Llc Water meter
US8590325B2 (en) 2006-07-19 2013-11-26 Emerson Climate Technologies, Inc. Protection and diagnostic module for a refrigeration system
US20080216494A1 (en) 2006-09-07 2008-09-11 Pham Hung M Compressor data module
US20090037142A1 (en) 2007-07-30 2009-02-05 Lawrence Kates Portable method and apparatus for monitoring refrigerant-cycle systems
US9140728B2 (en) 2007-11-02 2015-09-22 Emerson Climate Technologies, Inc. Compressor sensor module
CA2997878A1 (en) 2008-10-27 2010-05-06 Mueller International, Llc Infrastructure monitoring system and method
US8823509B2 (en) 2009-05-22 2014-09-02 Mueller International, Llc Infrastructure monitoring devices, systems, and methods
AU2011210731A1 (en) * 2010-01-29 2012-07-19 Elster Solutions, Llc High priority data reads for acquisition of real-time data in wireless mesh network
EP2375586B1 (en) * 2010-03-30 2016-12-07 Airbus DS GmbH Satellite communication system and method for transmitting data
US9397745B2 (en) * 2010-05-18 2016-07-19 Qualcomm Incorporated Hybrid satellite and mesh network system for aircraft and ship internet service
CA3116787C (en) 2010-06-16 2023-07-11 Mueller International, Llc Infrastructure monitoring devices, systems, and methods
CN103597292B (en) 2011-02-28 2016-05-18 艾默生电气公司 For the heating of building, surveillance and the supervision method of heating ventilation and air-conditioning HVAC system
US8833390B2 (en) 2011-05-31 2014-09-16 Mueller International, Llc Valve meter assembly and method
US8660134B2 (en) 2011-10-27 2014-02-25 Mueller International, Llc Systems and methods for time-based hailing of radio frequency devices
US8855569B2 (en) 2011-10-27 2014-10-07 Mueller International, Llc Systems and methods for dynamic squelching in radio frequency devices
US8733697B2 (en) 2012-01-09 2014-05-27 Google Inc. Altitude control via rotation of balloon to adjust balloon density
US20130201316A1 (en) 2012-01-09 2013-08-08 May Patents Ltd. System and method for server based control
US8634974B2 (en) 2012-01-09 2014-01-21 Google Inc. Using predicted movement to maintain optical-communication lock with nearby balloon
US8820678B2 (en) 2012-01-09 2014-09-02 Google Inc. Relative positioning of balloons with altitude control and wind data
US8718477B2 (en) * 2012-01-09 2014-05-06 Google Inc. Balloon network with free-space optical communication between super-node balloons and RF communication between super-node and sub-node balloons
US8964338B2 (en) 2012-01-11 2015-02-24 Emerson Climate Technologies, Inc. System and method for compressor motor protection
US9119179B1 (en) * 2012-06-06 2015-08-25 Bae Systems Information And Electronic Systems Integration Inc. Skypoint for mobile hotspots
US9033274B2 (en) 2012-07-11 2015-05-19 Google Inc. Balloon altitude control using density adjustment and/or volume adjustment
JP5288517B1 (en) * 2012-09-24 2013-09-11 独立行政法人情報通信研究機構 High-speed communication control system
US9310439B2 (en) 2012-09-25 2016-04-12 Emerson Climate Technologies, Inc. Compressor having a control and diagnostic module
WO2014047720A1 (en) * 2012-09-27 2014-04-03 Solar Ship Inc. Autonomous self-powered airborne communication and media station, and method of using it for displaying. broadcasting and relaying data
US8833696B1 (en) 2012-09-28 2014-09-16 Google Inc. Balloon envelope adapted to direct sunlight towards payload
US9088332B2 (en) * 2012-10-05 2015-07-21 Telefonaktiebolaget L M Ericsson (Publ) Mitigation of interference from a mobile relay node to heterogeneous networks
US8804228B1 (en) 2012-12-28 2014-08-12 Google Inc. Thermal regulation of balloon payload using electronic ink
US8812176B1 (en) 2012-12-31 2014-08-19 Google Inc. Collapsible envelope for descent of balloon with envelope still attached
WO2014144446A1 (en) 2013-03-15 2014-09-18 Emerson Electric Co. Hvac system remote monitoring and diagnosis
US9551504B2 (en) 2013-03-15 2017-01-24 Emerson Electric Co. HVAC system remote monitoring and diagnosis
CA3128758A1 (en) 2013-03-15 2014-09-25 Mueller International, Llc System for measuring properties of water in a water distribution system
US9803902B2 (en) 2013-03-15 2017-10-31 Emerson Climate Technologies, Inc. System for refrigerant charge verification using two condenser coil temperatures
US10320908B2 (en) * 2013-03-25 2019-06-11 Sita Information Networking Computing Ireland Limited In-flight computing device for aircraft cabin crew
CN106030221B (en) 2013-04-05 2018-12-07 艾默生环境优化技术有限公司 Heat pump system with refrigerant charging diagnostic function
US9174738B1 (en) 2013-04-14 2015-11-03 Google Inc. Drag disk, small
US9016634B1 (en) 2013-04-30 2015-04-28 Google Inc. Payload cut-down mechanism
US8998128B2 (en) 2013-05-28 2015-04-07 Google Inc. Umbrella valves to inflate bladder in balloon envelope
US9174720B1 (en) 2013-05-28 2015-11-03 Google Inc. Actuated umbrella valves to deflate bladder in balloon envelope
US10276921B2 (en) 2013-09-06 2019-04-30 Centurylink Intellectual Property Llc Radiating closures
CN104796339B (en) * 2014-01-17 2018-03-20 新华三技术有限公司 Quick flood process method and device
US10015720B2 (en) 2014-03-14 2018-07-03 GoTenna, Inc. System and method for digital communication between computing devices
US9369198B2 (en) * 2014-03-28 2016-06-14 Google Inc. Global communication network
US9494249B2 (en) 2014-05-09 2016-11-15 Mueller International, Llc Mechanical stop for actuator and orifice
US9565620B2 (en) 2014-09-02 2017-02-07 Mueller International, Llc Dynamic routing in a mesh network
WO2016040920A1 (en) * 2014-09-14 2016-03-17 Thompson Aerospace, Inc. Method and system for security and authentication of aircraft data transmissions
US9420620B2 (en) * 2014-09-30 2016-08-16 Honeywell International Inc. Systems and methods for aircraft on-ground determination
US9266599B1 (en) 2014-11-18 2016-02-23 Google Inc. Apparatus to lift and fill a balloon
US9479995B2 (en) * 2014-12-31 2016-10-25 Motorola Solutions, Inc. Methods and systems for maintaining routing tables in an ad-hoc wireless network
US9888274B2 (en) 2015-04-21 2018-02-06 Edge2020, Llc Price driven multimedia content reception
US10009093B2 (en) 2015-05-01 2018-06-26 Qualcomm Incorporated Handoff for satellite communication
US9888426B2 (en) 2015-05-01 2018-02-06 Qualcomm Incorporated Handoff for satellite communication
US11041839B2 (en) 2015-06-05 2021-06-22 Mueller International, Llc Distribution system monitoring
EP3363256B8 (en) 2015-10-13 2019-04-03 Signify Holding B.V. Unicast message routing using repeating nodes
US9537561B1 (en) * 2016-01-21 2017-01-03 Verizon Patent And Licensing Inc. Optimization of communications with UAVS using terrestrial cellular networks
US10118696B1 (en) 2016-03-31 2018-11-06 Steven M. Hoffberg Steerable rotating projectile
CN109075853B (en) * 2016-04-28 2019-09-10 高通股份有限公司 For the switching of satellite communication
CN107592153A (en) * 2016-07-06 2018-01-16 北京信威通信技术股份有限公司 A kind of method and device based on LEO mobile satellite communication system
US10954003B2 (en) * 2016-07-20 2021-03-23 Worldvu Satellites Limited Constellation configuration for constellations having a large number of LEO satellites
US10249103B2 (en) 2016-08-02 2019-04-02 Centurylink Intellectual Property Llc System and method for implementing added services for OBD2 smart vehicle connection
US10110272B2 (en) 2016-08-24 2018-10-23 Centurylink Intellectual Property Llc Wearable gesture control device and method
US10524185B2 (en) * 2016-09-17 2019-12-31 Hughes Network Systems, Llc Radio resource management and routing for fixed data circuits in an NGSO satellite data communications system
US9867112B1 (en) 2016-11-23 2018-01-09 Centurylink Intellectual Property Llc System and method for implementing combined broadband and wireless self-organizing network (SON)
US10222773B2 (en) 2016-12-23 2019-03-05 Centurylink Intellectual Property Llc System, apparatus, and method for implementing one or more internet of things (IoT) capable devices embedded within a roadway structure for performing various tasks
US10150471B2 (en) 2016-12-23 2018-12-11 Centurylink Intellectual Property Llc Smart vehicle apparatus, system, and method
US10193981B2 (en) 2016-12-23 2019-01-29 Centurylink Intellectual Property Llc Internet of things (IoT) self-organizing network
US9819410B1 (en) 2017-04-13 2017-11-14 QB Technology Partners, LLC Super speed satellite system (S4)
US9785886B1 (en) * 2017-04-17 2017-10-10 SparkCognition, Inc. Cooperative execution of a genetic algorithm with an efficient training algorithm for data-driven model creation
US10963790B2 (en) 2017-04-28 2021-03-30 SparkCognition, Inc. Pre-processing for data-driven model creation
CN108337673B (en) * 2017-07-03 2021-08-31 北京星桥恒远导航科技股份有限公司 Dynamic networking method based on Beidou second-generation user machine
US10902387B2 (en) * 2017-08-25 2021-01-26 The Boeing Company Aircraft digital event ledger
US10481600B2 (en) * 2017-09-15 2019-11-19 GM Global Technology Operations LLC Systems and methods for collaboration between autonomous vehicles
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
US11712637B1 (en) 2018-03-23 2023-08-01 Steven M. Hoffberg Steerable disk or ball
US11082324B2 (en) 2018-07-27 2021-08-03 goTenna Inc. Vine: zero-control routing using data packet inspection for wireless mesh networks
EP3935581A4 (en) 2019-03-04 2022-11-30 Iocurrents, Inc. Data compression and communication using machine learning
US10925114B1 (en) 2019-11-11 2021-02-16 Loon Llc Remote monitoring of geographically distributed assets using mobile platforms
CN111225302B (en) * 2020-02-18 2021-11-02 中国科学院空天信息创新研究院 Satellite receiving station monitoring system based on virtualization technology
US11725366B2 (en) 2020-07-16 2023-08-15 Mueller International, Llc Remote-operated flushing system
US20220173795A1 (en) * 2020-12-02 2022-06-02 Star Mesh LLC Satellite mesh systems and methods for creating radio routes between moving users
US11323537B1 (en) * 2021-09-15 2022-05-03 Cloudflare, Inc. Generating early hints informational responses at an intermediary server
CN114039655B (en) * 2021-12-08 2023-07-25 重庆邮电大学 Inter-satellite route survivability method based on link prediction and region division
CN115378863B (en) * 2022-05-18 2023-04-25 鹏城实验室 Space-based network topology design method based on average service performance and related equipment
CN115474289B (en) * 2022-08-16 2023-05-05 广州爱浦路网络技术有限公司 Resource management method, system, computer device and storage medium for world-wide integrated communication system
CN118101023A (en) * 2022-11-22 2024-05-28 大唐移动通信设备有限公司 Data transmission path determining and configuring method and device
US11937120B1 (en) 2023-04-06 2024-03-19 Clicknow Technologies Ltd. Method of regulating transmission of data-packets from a wireless terminal device (WTD) and WTD configured for same

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020058477A1 (en) * 2000-09-28 2002-05-16 Chapelle Michael De La Return link design for PSD limited mobile satellite communication systems
US20020058478A1 (en) * 2000-09-28 2002-05-16 De La Chapelle Michael Return link design for PSD limited mobile satellite communication systems
US6411806B1 (en) * 1995-11-30 2002-06-25 Mobile Satellite Ventures Lp Virtual network configuration and management system for satellite communications system
US20020087992A1 (en) * 2000-08-16 2002-07-04 Bengeult Greg A. Method and apparatus for bi-directional data services and live television programming to mobile platforms
US20040142658A1 (en) * 1992-03-06 2004-07-22 Mckenna Daniel Bernard System for integrating an airborne wireless cellular network with terrestrial wireless cellular networks and the public switched telephone network
US6850497B1 (en) * 1995-09-19 2005-02-01 Mobile Satellite Ventures, Lp Satellite trunked radio service system
US20080240029A1 (en) * 2007-03-30 2008-10-02 Livetv, Llc Aircraft communications system selectively allocating data communications channel capacity and associated methods
US20090100476A1 (en) * 2007-10-16 2009-04-16 Frisco Jeffrey A Aircraft in-flight entertainment system having a dual-beam antenna and associated methods
US20090096857A1 (en) * 2007-10-16 2009-04-16 Frisco Jeffrey A Aircraft in-flight entertainment system having a multi-beam phased array antenna and associated methods
US20090282469A1 (en) * 2008-05-07 2009-11-12 Michael Lynch Aircraft communications system using whitelists to control access and associated methods
US20100064327A1 (en) * 2008-09-11 2010-03-11 Lynch Michael J Aircraft communications system with video file library and associated methods
US20100189089A1 (en) * 2009-01-23 2010-07-29 Livetv, Llc Communications interface device for personal electronic devices (peds) operating on a general aviation aircraft and associated methods
US20140274367A1 (en) * 2013-03-15 2014-09-18 Nguyen Gaming Llc Authentication of mobile servers

Family Cites Families (778)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US553925A (en) * 1896-02-04 Edwin little
US3705385A (en) 1969-12-10 1972-12-05 Northern Illinois Gas Co Remote meter reading system
US3665475A (en) 1970-04-20 1972-05-23 Transcience Inc Radio signal initiated remote switching system
US3742142A (en) 1970-12-28 1973-06-26 Hunter Electronics Inc Remote meter reader system
US3848231A (en) 1970-12-31 1974-11-12 Baldwin Electronics Inc Alarm system utilizing pulse position modulation and dual conductor sensor
US3769965A (en) 1971-02-23 1973-11-06 Esb Inc Monitor apparatus for implanted pulse generator
US4025315A (en) 1971-05-19 1977-05-24 San Diego Gas & Electric Co. Method of odorizing liquid natural gas
US3723876A (en) 1971-06-21 1973-03-27 G Seaborn Emergency distress signaling system
US3768014A (en) 1972-01-28 1973-10-23 Gen Electric Cardiac pacemaker rate/interval computer system
GB1429467A (en) 1972-02-28 1976-03-24 Chubb Integrated Systems Ltd Access- or transactioncontrol equipment
US3885552A (en) 1972-11-16 1975-05-27 Pacemaker Diagnostic Clinic Of Cardiac function monitoring system and method for use in association with cardiac pacer apparatus
US3906460A (en) 1973-01-11 1975-09-16 Halpern John Wolfgang Proximity data transfer system with tamper proof portable data token
US3914692A (en) 1973-08-29 1975-10-21 Jr George C Seaborn Emergency communication system
US3925763A (en) 1973-09-13 1975-12-09 Romesh Tekchand Wadhwani Security system
US4083003A (en) 1973-11-05 1978-04-04 Products Of Information Technology, Inc. Vehicle location system
US3922492A (en) 1974-03-18 1975-11-25 James Ray Lumsden Remote meter reading transponder
SE391250B (en) 1974-11-26 1977-02-07 Saab Scania Ab SECURITY SYSTEM, INCLUDING A CENTRAL UNIT, SOMŸVIA A COMMUNICATION CHANNEL IS CONNECTED WITH SEVERAL LOCAL TERMINAL UNITS
GB1556186A (en) 1975-08-14 1979-11-21 Matsushita Electric Ind Co Ltd Automatic vending systems
US4135181A (en) 1976-01-30 1979-01-16 General Electric Company Automatic remote meter reading and control system
US4213119A (en) 1976-04-29 1980-07-15 Energy Optics, Inc. Remote meter reading system providing demand readings and load control from conventional KWH meters
US4058672A (en) 1976-11-10 1977-11-15 International Telephone And Telegraph Corporation Packet-switched data communications system
US4124839A (en) 1976-12-23 1978-11-07 Cohen Murray F Electro-optical method and system especially suited for remote meter reading
US4204195A (en) 1977-05-23 1980-05-20 General Electric Company Meter terminal unit for use in automatic remote meter reading and control system
US4277837A (en) 1977-12-30 1981-07-07 International Business Machines Corporation Personal portable terminal for financial transactions
JPS6019470B2 (en) 1978-01-27 1985-05-16 株式会社東芝 Ship position detection device
CA1118084A (en) 1979-06-22 1982-02-09 Edmund Szybicki Alternate routing for a telephone system
US4322842A (en) 1979-10-23 1982-03-30 Altran Electronics Broadcast system for distribution automation and remote metering
US4396915A (en) 1980-03-31 1983-08-02 General Electric Company Automatic meter reading and control system
US4396910A (en) 1980-05-02 1983-08-02 American District Telegraph Company Coded security switch
DE3022725A1 (en) 1980-06-18 1981-12-24 Licentia Patent-Verwaltungs-Gmbh, 6000 Frankfurt SERVICE INTEGRATED MESSAGE TRANSMISSION AND MEDIATION SYSTEM
US4399531A (en) 1980-09-29 1983-08-16 Rockwell International Corporation Distributed digital data communications network
US4417450A (en) 1980-10-17 1983-11-29 The Coca-Cola Company Energy management system for vending machines
US4354181A (en) 1980-11-03 1982-10-12 Gerber Products Company Vapor lamp indicating device
US4345116A (en) 1980-12-31 1982-08-17 Bell Telephone Laboratories, Incorporated Dynamic, non-hierarchical arrangement for routing traffic
US4446454A (en) 1981-01-21 1984-05-01 Pyle Ronald E Home security system
US4468656A (en) 1981-06-24 1984-08-28 Clifford Thomas J Emergency signalling unit and alarm system for rescuing endangered workers
US4446458A (en) 1981-09-14 1984-05-01 Donald Cook Monitoring and control system
US4707852A (en) 1981-10-09 1987-11-17 Systems And Support, Incorporated Utility usage data and event data acquisition system
US4406016A (en) 1981-11-27 1983-09-20 The United States Of America As Represented By The Secretary Of The Army VHF Sensor in-band radio relay
US4495496A (en) 1981-12-15 1985-01-22 Johnson Engineering Corp. Personnel monitoring and locating system
US4436957A (en) 1981-12-22 1984-03-13 International Telephone And Telegraph Corporation Telephone security system for cordless telephony
US4488152A (en) 1982-02-01 1984-12-11 Schlumberger Canada Limited Register position sensing and controlling apparatus
US4454414A (en) 1982-06-16 1984-06-12 Vericard Corporation Funds transfer system using optically coupled, portable modules
US4906828A (en) 1983-02-28 1990-03-06 Paperless Accounting, Inc. Electronic money purse and fund transfer system
US4551719A (en) 1983-03-07 1985-11-05 Cypher Systems Oil field lease management and security system and method therefor
US4782341A (en) 1983-07-01 1988-11-01 Rockwell International Corporation Meter data gathering and transmission system
JPS6039512A (en) 1983-08-12 1985-03-01 Mitsubishi Electric Corp Vibration measuring device
CH662665A5 (en) 1983-09-14 1987-10-15 Automaten Ag METHOD AND DEVICE FOR MONITORING SEVERAL GOODS SALES MACHINES.
JPS6064537A (en) 1983-09-19 1985-04-13 Nissan Motor Co Ltd On-vehicle radio transmitter using induced electromagnetic field as medium
JPS60261288A (en) 1984-06-08 1985-12-24 Meisei Electric Co Ltd Channel extension method of time division switch
US4670739A (en) 1984-12-14 1987-06-02 Kelly Jr Lawrence R Communication system especially useful as an incident location reporting security system
US4630035A (en) 1985-01-04 1986-12-16 Motorola, Inc. Alarm system having alarm transmitter indentification codes and acoustic ranging
US4669113A (en) 1985-04-26 1987-05-26 At&T Company Integrated network controller for a dynamic nonhierarchical routing switching network
US4692761A (en) 1985-06-21 1987-09-08 Robinton Products, Inc. Adaptive communication network and method
JPS6238035A (en) 1985-08-12 1987-02-19 Nissan Motor Co Ltd Thin plate type portable device
US4611198A (en) 1985-09-19 1986-09-09 Levinson Samuel H Security and communication system
US4665519A (en) 1985-11-04 1987-05-12 Electronic Systems Technology, Inc. Wireless computer modem
US4704724A (en) 1985-12-05 1987-11-03 Bell Communications Research, Inc. Routing of network traffic
CH673160A5 (en) 1986-02-10 1990-02-15 Landis & Gyr Ag
US4731810A (en) 1986-02-25 1988-03-15 Watkins Randy W Neighborhood home security system
US4799059A (en) 1986-03-14 1989-01-17 Enscan, Inc. Automatic/remote RF instrument monitoring system
JPS62254265A (en) 1986-04-28 1987-11-06 Hitachi Ltd Control system for automatic cash transaction machine
GB8614620D0 (en) 1986-06-16 1986-07-23 Schlumberger Electronics Uk Commodity metering systems
US5999094A (en) 1986-10-22 1999-12-07 Nilssen; Ole K. Combination telephone and smoke alarm system
JPH0815354B2 (en) 1986-10-30 1996-02-14 日本電気株式会社 Wireless telephone equipment
US4884132A (en) 1986-11-25 1989-11-28 Morris James A Personal security system
US4973957A (en) 1987-01-22 1990-11-27 Man Design Co., Ltd. Data collecting system
US4884123A (en) 1987-02-19 1989-11-28 Advanced Micro Devices, Inc. Contact plug and interconnect employing a barrier lining and a backfilled conductor material
US4792946A (en) 1987-04-07 1988-12-20 Spectrum Electronics, Inc. Wireless local area network for use in neighborhoods
US4999613A (en) 1987-04-21 1991-03-12 Guardian Technologies, Inc. Remote confinement system
JPH07121630B2 (en) 1987-05-30 1995-12-25 株式会社東芝 IC card
DE3883860T2 (en) 1987-06-16 1994-01-05 Casio Computer Co Ltd Name unit containing the transmission unit.
EP0309201B1 (en) 1987-09-22 1993-05-26 Hitachi Maxell Ltd. Method and system of communication for a non-contact ic card
US4918690A (en) 1987-11-10 1990-04-17 Echelon Systems Corp. Network and intelligent cell for providing sensing, bidirectional communications and control
US4800543A (en) 1987-12-03 1989-01-24 Ramtron Corporation Timepiece communication system
US4999607A (en) 1987-12-07 1991-03-12 Biotronics Enterprises, Inc. Monitoring system with improved alerting and locating
US4788721A (en) 1987-12-09 1988-11-29 Bell Communications Research, Inc. Routing of network traffic
US4814763A (en) 1987-12-14 1989-03-21 Motorola, Inc. Paging terminal apparatus with page forwarding capability and methodology thereof
FR2624749A1 (en) 1987-12-16 1989-06-23 Dana Dominique Control device for cardiac stimulators
US4918995A (en) 1988-01-04 1990-04-24 Gas Research Institute Electronic gas meter
US5088032A (en) 1988-01-29 1992-02-11 Cisco Systems, Inc. Method and apparatus for routing communications among computer networks
US4940976A (en) 1988-02-05 1990-07-10 Utilicom Inc. Automated remote water meter readout system
US4972504A (en) 1988-02-11 1990-11-20 A. C. Nielsen Company Marketing research system and method for obtaining retail data on a real time basis
US4849815A (en) 1988-03-02 1989-07-18 Jerry R. Iggulden Portable electronic office and components suitable therefor
US4829561A (en) 1988-03-25 1989-05-09 Tek Electronics Manufacturing Corporation Apparatus for optically coupling a terminal unit to the public telephone network through a pay telephone instrument and the like
US4856046A (en) 1988-04-08 1989-08-08 Jerry R. Iggulden Remote public telephone link
US4825457A (en) 1988-04-25 1989-04-25 Lebowitz Mayer M Cellular network data transmission system
US4987536A (en) 1988-05-12 1991-01-22 Codex Corporation Communication system for sending an identical routing tree to all connected nodes to establish a shortest route and transmitting messages thereafter
US5055851A (en) 1988-05-16 1991-10-08 Trackmobile, Inc. Vehicle location system
US5136285A (en) 1988-05-20 1992-08-04 Man Design Co., Ltd. Portable data transmitting/receiving apparatus
US4942393A (en) 1988-05-27 1990-07-17 Lectron Products, Inc. Passive keyless entry system
EP0345493B1 (en) 1988-06-08 1994-03-09 Landis & Gyr Technology Innovation AG Arrangement for the surveillance, control and regulation of a technical installation of a building automation system
US4857912A (en) 1988-07-27 1989-08-15 The United States Of America As Represented By The Secretary Of The Navy Intelligent security assessment system
US5204670A (en) 1988-08-29 1993-04-20 B. I. Incorporated Adaptable electric monitoring and identification system
US4952928A (en) 1988-08-29 1990-08-28 B. I. Incorporated Adaptable electronic monitoring and identification system
US4968978A (en) 1988-09-02 1990-11-06 Stolar, Inc. Long range multiple point wireless control and monitoring system
CA1317638C (en) 1988-09-09 1993-05-11 Stephen B. Meads Mobile pay telephone system
US4989230A (en) 1988-09-23 1991-01-29 Motorola, Inc. Cellular cordless telephone
US4912656A (en) 1988-09-26 1990-03-27 Harris Corporation Adaptive link assignment for a dynamic communication network
US4864559A (en) 1988-09-27 1989-09-05 Digital Equipment Corporation Method of multicast message distribution
US4918432A (en) 1988-09-27 1990-04-17 B. I. Incorporated House arrest monitoring system
AU633283B2 (en) 1988-10-15 1993-01-28 Schlumberger Industries A system for remote transfer and collection of data, particularly from meters
US4962496A (en) 1988-10-20 1990-10-09 Abb Power T & D Company Inc. Transmission of data via power lines
US4924462A (en) 1988-11-01 1990-05-08 Norand Corporation Multiterminal communication system and method
US4991008A (en) 1988-12-01 1991-02-05 Intec Video Systems, Inc. Automatic transaction surveillance system
US5726984A (en) 1989-01-31 1998-03-10 Norand Corporation Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US4993059A (en) 1989-02-08 1991-02-12 Cableguard, Inc. Alarm system utilizing wireless communication path
US5086391A (en) 1989-02-24 1992-02-04 Chambers Bryan R Remote controller for activating speech messages and for contacting emergency services
US4967366A (en) 1989-03-06 1990-10-30 Gilbarco Inc. Integrated gasoline dispenser and POS authorization system with unattached pin pad
GB8906213D0 (en) 1989-03-17 1989-05-04 Advanced Technology Ind Ltd Locating system
US5007052A (en) 1989-04-11 1991-04-09 Metricom, Inc. Method for routing packets by squelched flooding
US4968970A (en) 1989-04-26 1990-11-06 Schlumberger Industries, Inc. Method of and system for power line carrier communications
US5032833A (en) 1989-04-27 1991-07-16 Schlumberger Industries, Inc. Adaptive network routing for power line communications
US5170393A (en) 1989-05-18 1992-12-08 California Institute Of Technology Adaptive routing of messages in parallel and distributed processor systems
US4928299A (en) 1989-05-26 1990-05-22 Mars Incorporated Coin operated telephone operation monitoring switch mounting arrangement
JP2754745B2 (en) 1989-06-15 1998-05-20 株式会社日立製作所 Remote maintenance system for automatic teller machine
US5138615A (en) 1989-06-22 1992-08-11 Digital Equipment Corporation Reconfiguration system and method for high-speed mesh connected local area network
FR2648932B1 (en) 1989-06-23 1992-04-03 Parienti Raoul TRANSMISSION, INFORMATION AND DATA PROCESSING INPUT SYSTEM
US5200735A (en) 1989-07-11 1993-04-06 Hines Thomas N Weather protected portable security system for in-field use
US5239294A (en) 1989-07-12 1993-08-24 Motorola, Inc. Method and apparatus for authenication and protection of subscribers in telecommunication systems
US4973970A (en) 1989-07-14 1990-11-27 General Atomics Integrated automated system for waste site characterization
US5115433A (en) 1989-07-18 1992-05-19 Metricom, Inc. Method and system for routing packets in a packet communication network
US4939726A (en) 1989-07-18 1990-07-03 Metricom, Inc. Method for routing packets in a packet communication network
US5057814A (en) 1989-07-24 1991-10-15 Harley-Davidson, Inc. Electrical malfunction detection system
US5454024A (en) 1989-08-31 1995-09-26 Lebowitz; Mayer M. Cellular digital packet data (CDPD) network transmission system incorporating cellular link integrity monitoring
US5038372A (en) 1989-09-05 1991-08-06 Abb Power T & D Company, Inc. Systems for transmitting data via telephone lines
US4949077A (en) 1989-10-02 1990-08-14 Mbuthia David G Portable unit with smoke alarm, clock radio, compass, retractable table, and lamp
US4977612A (en) 1989-10-10 1990-12-11 Motorola, Inc. Channel selection in a multi-frequency radio data communication system
US4998095A (en) 1989-10-19 1991-03-05 Specific Cruise Systems, Inc. Emergency transmitter system
US5467082A (en) 1989-10-25 1995-11-14 Sanderson; Glenn A. Proximity actuator and reader for an electronic access system
US5193111A (en) 1989-12-04 1993-03-09 Abb Power T&D Company Automated data transmission system
ES2040012T3 (en) 1989-12-14 1993-10-01 Landis & Gyr Business Support Ag PROVISION FOR THE DETERMINATION OF VALUES OF ELECTRICAL MAGNITUDES, WHICH CAN BE DEDUCTED FROM MEASURING VALUES OF AT LEAST TWO ELECTRICAL MAGNITUDES OF ENTRY OF THE DISPOSITION.
US5289362A (en) 1989-12-15 1994-02-22 Johnson Service Company Energy control system
US4980907A (en) 1989-12-15 1990-12-25 Telefonaktiebolaget L M Ericsson Telecommunication combination comprising a telepoint and a portable radio terminal
GB2239571B (en) 1989-12-29 1994-08-03 Schlumberger Ind Ltd Transponder
US5265162A (en) 1990-01-16 1993-11-23 George Bush Portable pin card
US5130519A (en) 1990-01-16 1992-07-14 George Bush Portable pin card
US6389010B1 (en) 1995-10-05 2002-05-14 Intermec Ip Corp. Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US5553094A (en) 1990-02-15 1996-09-03 Iris Systems, Inc. Radio communication network for remote data generating stations
US5673252A (en) 1990-02-15 1997-09-30 Itron, Inc. Communications protocol for remote data generating stations
US5390245A (en) 1990-03-09 1995-02-14 Telefonaktiebolaget L M Ericsson Method of carrying out an authentication check between a base station and a mobile station in a mobile radio system
DE4008790A1 (en) 1990-03-19 1991-09-26 Albert Peitz CIRCUIT ARRANGEMENT FOR EXTERNAL TELEPHONE SWITCHING NETWORKS, PREFERABLY TELEPHONE TELEPHONE SWITCHING NETWORKS
FI88842C (en) 1990-03-22 1993-07-12 Nokia Mobile Phones Ltd Checking the card connection
US5079768A (en) 1990-03-23 1992-01-07 Metricom, Inc. Method for frequency sharing in frequency hopping communications network
US5130987A (en) 1990-03-23 1992-07-14 Metricom, Inc. Method for synchronizing a wide area network without global synchronizing
JPH04169917A (en) 1990-05-07 1992-06-17 Toshiba Corp Portable electronic apparatus
US5091713A (en) 1990-05-10 1992-02-25 Universal Automated Systems, Inc. Inventory, cash, security, and maintenance control apparatus and method for a plurality of remote vending machines
US5252967A (en) 1990-05-25 1993-10-12 Schlumberger Industries, Inc. Reader/programmer for two and three wire utility data communications system
US5243338A (en) 1990-05-25 1993-09-07 Schlumberger Industries, Inc. Two and three wire utility data communications system
US5155481A (en) 1990-05-25 1992-10-13 Schlumberger Industries, Inc. Two and three wire utility data communications system
US5321618A (en) 1990-05-29 1994-06-14 Lawrence Gessman Apparatus and method for remotely monitoring implanted cardioverter defibrillators
US5061997A (en) 1990-06-21 1991-10-29 Rensselaer Polytechnic Institute Control of visible conditions in a spatial environment
US5241410A (en) 1990-06-21 1993-08-31 Litephone Systems Ltd. Enhanced infrared-connected telephone system
US5117422A (en) 1990-07-09 1992-05-26 Itt Corporation Method for providing an efficient and adaptive management of message routing in a multi-platform and apparatus communication system
US5212645A (en) 1990-07-19 1993-05-18 General Electric Company Flexible real-time, multi-tasking architecture for tool condition monitoring
US5594786A (en) 1990-07-27 1997-01-14 Executone Information Systems, Inc. Patient care and communication system
US5822544A (en) 1990-07-27 1998-10-13 Executone Information Systems, Inc. Patient care and communication system
AT395224B (en) 1990-08-23 1992-10-27 Mikron Ges Fuer Integrierte Mi CONTACTLESS, INDUCTIVE DATA TRANSFER SYSTEM
CA2090608C (en) 1990-08-31 2000-01-11 James P. Welch Network for portable patient monitoring devices
US5251205A (en) 1990-09-04 1993-10-05 Digital Equipment Corporation Multiple protocol routing
GB2247761B (en) 1990-09-05 1994-10-26 Leslie Keith Davies Security systems
US5191192A (en) 1990-09-10 1993-03-02 Mitsubishi Denki Kabushiki Kaisha Non-contact type information card and communication system
DE59102422D1 (en) 1990-10-19 1994-09-08 Basf Ag Unsaturated cyclohexenone oxime ether.
US5917629A (en) 1990-10-29 1999-06-29 International Business Machines Corporation Transceiver for extending a CSMA/CD network for wireless communication
US5159592A (en) 1990-10-29 1992-10-27 International Business Machines Corporation Network address management for a wired network supporting wireless communication to a plurality of mobile users
KR100227055B1 (en) 1990-11-06 1999-10-15 로데릭 더블류 루이스 Dual mode electronic identification system and tag
US5131038A (en) 1990-11-07 1992-07-14 Motorola, Inc. Portable authentification system
US5177342A (en) 1990-11-09 1993-01-05 Visa International Service Association Transaction approval system
US5475689A (en) 1990-12-06 1995-12-12 Hughes Aircraft Company Cellular telephone with datagram and dispatch operation
US6215440B1 (en) 1990-12-07 2001-04-10 General Dynamics Government Systems Corporation Emitter identification from radio signals using keyclick algorithm
US5315645A (en) 1990-12-10 1994-05-24 Tek Electronics Manufacturing Corporation Communication apparatus utilizing digital optical signals
US5216502A (en) 1990-12-18 1993-06-01 Barry Katz Surveillance systems for automatically recording transactions
US5221838A (en) 1990-12-24 1993-06-22 Motorola, Inc. Electronic wallet
US5134650A (en) 1991-01-22 1992-07-28 Schlumberger Industries, Inc. Dial inbound meter interface unit (MIU) for automatic meter reading using no subscriber line access controller
US5265150A (en) 1991-01-30 1993-11-23 At&T Bell Laboratories Automatically configuring wireless PBX system
US5550358A (en) 1991-01-31 1996-08-27 Tait; Robert A. R. Non-contacting transaction system
FR2674390B1 (en) 1991-03-18 1994-06-17 Schlumberger Ind Sa DEVICE FOR TRANSMITTING DIGITAL INFORMATION ON A LINE OF AN ELECTRIC POWER NETWORK.
CA2040234C (en) 1991-04-11 2000-01-04 Steven Messenger Wireless coupling of devices to wired network
US6115393A (en) 1991-04-12 2000-09-05 Concord Communications, Inc. Network monitoring
US5235630A (en) 1991-04-17 1993-08-10 Telident, Incorporated Emergency call station identification system and method
US5940771A (en) 1991-05-13 1999-08-17 Norand Corporation Network supporting roaming, sleeping terminals
JP2846118B2 (en) 1991-05-13 1999-01-13 オムニポイント・コーポレイション Dual mode transmitter and receiver
US5394436A (en) 1991-10-01 1995-02-28 Norand Corporation Radio frequency local area network
US5285469A (en) 1991-06-03 1994-02-08 Omnipoint Data Corporation Spread spectrum wireless telephone system
JPH04360328A (en) 1991-06-06 1992-12-14 Sony Corp Mobile communication system
US5451929A (en) 1991-07-02 1995-09-19 Newtron Products Company Smoke alarm and air cleaning device
KR930012120B1 (en) 1991-07-03 1993-12-24 삼성전자 주식회사 Semicondcutor device and fabricating method thereof
IT1250199B (en) 1991-07-04 1995-04-03 Cselt Centro Studi Lab Telecom COHERENT OPTICAL COMMUNICATION SYSTEM WITH FREQUENCY MODULATION WITH CONTINUOUS VARIATION OF THE POLARIZATION
US5115224A (en) 1991-07-05 1992-05-19 Detection Systems, Inc. Personal security system network
US5162776A (en) 1991-07-09 1992-11-10 Lifeline Systems, Inc. Emergency service apparatus and method
US5239575A (en) 1991-07-09 1993-08-24 Schlumberger Industries, Inc. Telephone dial-inbound data acquisition system with demand reading capability
US5159317A (en) 1991-07-12 1992-10-27 Lifeline Systems, Inc. System and method for remote telephonic station actuation
US5305370A (en) 1991-09-04 1994-04-19 Lloyd Kearns Personal emergency response communications system
US5191326A (en) 1991-09-05 1993-03-02 Schlumberger Technology Corporation Communications protocol for digital telemetry system
US5673304A (en) 1991-09-23 1997-09-30 Ac Corporation Programmable emergency communication system including automatic dialer
JP3083187B2 (en) 1991-09-30 2000-09-04 富士通株式会社 Key management method of electronic wallet system
JP3124074B2 (en) 1991-09-30 2001-01-15 富士通株式会社 Information vending machine
US5504746A (en) 1991-10-01 1996-04-02 Norand Corporation Radio frequency local area network
US6084867A (en) 1991-10-01 2000-07-04 Intermec Ip Corp. Apparatus and method of routing data in a radio frequency local area network
EP0606396B1 (en) 1991-10-01 2002-06-12 Norand Corporation A radio frequency local area network
US5748619A (en) 1991-10-01 1998-05-05 Meier; Robert C. Communication network providing wireless and hard-wired dynamic routing
US5390206A (en) 1991-10-01 1995-02-14 American Standard Inc. Wireless communication system for air distribution system
HUT65528A (en) 1991-10-31 1994-06-28 Lee Electronic identifying system enabling automatized remote response
EP0611513B1 (en) 1991-11-08 1998-09-23 Electronic Data Systems Corporation Apparatus for detecting and preventing subscriber number cloning in a cellular mobile telephone system
IT1252388B (en) 1991-11-12 1995-06-12 Sviluppo Settori Impiego Srl PROPYLENE POLYMERS AND COPOLYMERS SEAMED WITH VINYL POLYBUTADIENE AND PREPARATION PROCEDURE
JP2690229B2 (en) 1991-11-26 1997-12-10 三菱電機株式会社 Non-contact IC card
CA2078195C (en) 1991-11-27 1999-03-09 Jack Kozik Arrangement for detecting fraudulently identified mobile stations in a cellular mobile telecommunications network
GB2262683A (en) 1991-12-20 1993-06-23 British Aerospace Space And Co Dialled digit handler
US5826195A (en) 1992-01-27 1998-10-20 Highwaymaster Communications, Inc. Data messaging in a communications network
US5502726A (en) 1992-01-31 1996-03-26 Nellcor Incorporated Serial layered medical network
US5334974A (en) 1992-02-06 1994-08-02 Simms James R Personal security system
US5319698A (en) 1992-02-11 1994-06-07 Boat Buddy Sentry, Ltd. Security system
DE4204983A1 (en) 1992-02-19 1993-08-26 Schloemann Siemag Ag UNIVERSAL ROLLING MILLS
US5365217A (en) 1992-02-20 1994-11-15 Frank J. Toner Personal security system apparatus and method
US5537029A (en) 1992-02-21 1996-07-16 Abb Power T&D Company Inc. Method and apparatus for electronic meter testing
US5231658A (en) 1992-02-25 1993-07-27 Vakis Eftechiou Telephone privacy device
GB9205977D0 (en) 1992-03-19 1992-04-29 Brown Boveri Kent Ltd Remote meter reading
US5974236A (en) 1992-03-25 1999-10-26 Aes Corporation Dynamically reconfigurable communications network and method
US5761083A (en) 1992-03-25 1998-06-02 Brown, Jr.; Robert J. Energy management and home automation system
CA2091851A1 (en) 1992-03-25 1993-09-26 Michael J. Sherman Link layered communications network and method
US5544036A (en) 1992-03-25 1996-08-06 Brown, Jr.; Robert J. Energy management and home automation system
US5289165A (en) 1992-03-26 1994-02-22 Belin William B Smoke alarm apparatus
US5224648A (en) 1992-03-27 1993-07-06 American Standard Inc. Two-way wireless HVAC system and thermostat
TW200624B (en) 1992-04-06 1993-02-21 American Telephone & Telegraph A universal authentication device for use over telephone lines
US5282204A (en) 1992-04-13 1994-01-25 Racotek, Inc. Apparatus and method for overlaying data on trunked radio
US5223844B1 (en) 1992-04-17 2000-01-25 Auto Trac Inc Vehicle tracking and security system
US5365551A (en) 1992-12-15 1994-11-15 Micron Technology, Inc. Data communication transceiver using identification protocol
US5452344A (en) 1992-05-29 1995-09-19 Datran Systems Corporation Communication over power lines
US5515419A (en) 1992-06-01 1996-05-07 Trackmobile Tracking system and method for tracking a movable object carrying a cellular phone unit, and integrated personal protection system incorporating the tracking system
US5568535A (en) 1992-06-01 1996-10-22 Trackmobile, Inc. Alarm system for enclosed area
IT1260524B (en) 1992-06-03 1996-04-09 PROCEDURE FOR CHECKING THE OPERATING STATE OF LAMPS OF A PUBLIC LIGHTING NETWORK
US5325429A (en) 1992-06-08 1994-06-28 Motorola, Inc. Apparatus for accepting and retaining an information card
US5418812A (en) 1992-06-26 1995-05-23 Symbol Technologies, Inc. Radio network initialization method and apparatus
US5442633A (en) 1992-07-08 1995-08-15 International Business Machines Corporation Shortcut network layer routing for mobile hosts
US5473322A (en) 1992-07-24 1995-12-05 Schlumberger Industries, Inc. Apparatus and method for sensing tampering with a utility meter
US5550535A (en) 1992-08-14 1996-08-27 Seiko Communications Holding N.V. Bank balance notification by wristwatch pager
US5319711A (en) 1992-08-19 1994-06-07 Gte Laboratories Incorporated Wireless device for verifying identification
US5383187A (en) 1992-09-18 1995-01-17 Hughes Aricraft Company Adaptive protocol for packet communications network and method
US5324925A (en) 1992-09-25 1994-06-28 Norand Corporation Hand-held data terminal and communicator
NL9201690A (en) 1992-09-30 1994-04-18 Hoogovens Groep Bv Branding powder and method suitable for marking a hot metal body.
US5388101A (en) 1992-10-26 1995-02-07 Eon Corporation Interactive nationwide data service communication system for stationary and mobile battery operated subscriber units
IT1257167B (en) 1992-10-27 1996-01-05 METHOD FOR IMPROVING THE MANAGEMENT OF DISTRIBUTION NETWORKS, IN PARTICULAR OF GAS, WATER, ELECTRICITY, HEAT.
US5345595A (en) 1992-11-12 1994-09-06 Coral Systems, Inc. Apparatus and method for detecting fraudulent telecommunication activity
US5442553A (en) 1992-11-16 1995-08-15 Motorola Wireless motor vehicle diagnostic and software upgrade system
US5354974A (en) 1992-11-24 1994-10-11 Base 10 Systems, Inc. Automatic teller system and method of operating same
FR2698510B1 (en) 1992-11-26 1994-12-23 Schlumberger Ind Sa Communication network.
US5424708A (en) 1992-12-14 1995-06-13 Honeywell Inc. System and method for transferring hub alarm service monitoring
US5465401A (en) 1992-12-15 1995-11-07 Texas Instruments Incorporated Communication system and methods for enhanced information transfer
US5467074A (en) 1992-12-18 1995-11-14 Detection Systems, Inc. Personal security system with transmitter test mode
US5371736A (en) 1992-12-21 1994-12-06 Abb Power T&D Company, Inc. Universal protocol programmable communications interface
US5323384A (en) 1992-12-23 1994-06-21 Motorola, Inc. Method for establishing communication between tasks of a limited number of repeaters in a communication system
EP0604777A1 (en) 1992-12-28 1994-07-06 Motorola, Inc. Data transmission device system and method
US6108614A (en) 1993-01-22 2000-08-22 Diablo Research Corporation System and method for serial communication between a central unit and a plurality of remote units
SE9300281D0 (en) 1993-01-29 1993-01-29 Siemens Elema Ab IMPLANTABLE MEDICAL DEVICE AND EXTRACORPORAL PROGRAMMING AND MONITORING DEVICE
US5347263A (en) 1993-02-05 1994-09-13 Gnuco Technology Corporation Electronic identifier apparatus and method utilizing a single chip microcontroller and an antenna coil
DE4304095B4 (en) 1993-02-11 2005-08-25 Philips Intellectual Property & Standards Gmbh mobile system
CA2155539C (en) 1993-02-12 2000-01-25 John T. Shincovich Remote automatic meter reading apparatus
JPH06261043A (en) 1993-03-05 1994-09-16 Hitachi Ltd Radio channel lan system and its control method
IT1261411B (en) 1993-03-12 1996-05-23 Texas Instruments Italia Spa METHOD AND CIRCUITRY FOR THE USE OF MEMORIES WITH DEFECTIVE LOCATIONS AND RELEVANT PRODUCTION EQUIPMENT.
US5343493A (en) 1993-03-16 1994-08-30 Hughes Aircraft Company Personal assistance system and method for use with a cellular communication system
US5631554A (en) 1993-03-26 1997-05-20 Schlumberger Industries, Inc. Electronic metering device including automatic service sensing
US5344068A (en) 1993-04-16 1994-09-06 Staefa Control System, Inc. Dynamically controlled environmental control system
US5625410A (en) 1993-04-21 1997-04-29 Kinywa Washino Video monitoring and conferencing system
US5796727A (en) 1993-04-30 1998-08-18 International Business Machines Corporation Wide-area wireless lan access
US5522089A (en) 1993-05-07 1996-05-28 Cordata, Inc. Personal digital assistant module adapted for initiating telephone communications through DTMF dialing
CN1124079A (en) 1993-05-07 1996-06-05 艾鲁奈克斯技术公司 Computer-to-telephone interface
US6970434B1 (en) 1995-06-07 2005-11-29 Broadcom Corporation Hierarchical communication system providing intelligent data, program and processing migration
US5445347A (en) 1993-05-13 1995-08-29 Hughes Aircraft Company Automated wireless preventive maintenance monitoring system for magnetic levitation (MAGLEV) trains and other vehicles
US5673305A (en) 1993-05-14 1997-09-30 Worldwide Notification Systems, Inc. Apparatus and method for tracking and reporting the location of a motor vehicle
DE4318441A1 (en) 1993-06-03 1994-12-08 Sel Alcatel Ag Emergency call system
US5438329A (en) 1993-06-04 1995-08-01 M & Fc Holding Company, Inc. Duplex bi-directional multi-mode remote instrument reading and telemetry system
US5513244A (en) 1993-06-08 1996-04-30 Joao; Raymond A. Remote-controlled anti-theft, theft reporting, or vehicle recovery system and method for motor vehicles
US6542077B2 (en) 1993-06-08 2003-04-01 Raymond Anthony Joao Monitoring apparatus for a vehicle and/or a premises
US5917405A (en) 1993-06-08 1999-06-29 Joao; Raymond Anthony Control apparatus and methods for vehicles
US6542076B1 (en) 1993-06-08 2003-04-01 Raymond Anthony Joao Control, monitoring and/or security apparatus and method
GB9312836D0 (en) 1993-06-22 1993-08-04 Schlumberger Ind Ltd Multipoint to point radiocommunications network
US5448230A (en) 1993-06-25 1995-09-05 Metscan, Incorporated Remote data acquisition and communication system
CA2124974C (en) 1993-06-28 1998-08-25 Kajamalai Gopalaswamy Ramakrishnan Method and apparatus for link metric assignment in shortest path networks
US5420910B1 (en) 1993-06-29 1998-02-17 Airtouch Communications Inc Method and apparatus for fraud control in cellular telephone systems utilizing rf signature comparison
AU7322694A (en) 1993-07-09 1995-02-06 Apple Computer, Inc. System and method for sending and responding to information requests in a communications network
US5838223A (en) 1993-07-12 1998-11-17 Hill-Rom, Inc. Patient/nurse call system
US5412192A (en) 1993-07-20 1995-05-02 American Express Company Radio frequency activated charge card
US5416475A (en) 1993-07-23 1995-05-16 Schlumberger Industries, Inc. Remote meter reading receptacle for pit lid mounting
US5439414A (en) 1993-07-26 1995-08-08 Landis & Gyr Powers, Inc. Networked fume hood monitoring system
US5440545A (en) 1993-08-02 1995-08-08 Motorola, Inc. Packet delivery system
US5528507A (en) 1993-08-11 1996-06-18 First Pacific Networks System for utility demand monitoring and control using a distribution network
US5416725A (en) 1993-08-18 1995-05-16 P.C. Sentry, Inc. Computer-based notification system having redundant sensor alarm determination and associated computer-implemented method for issuing notification of events
US5617084A (en) 1993-09-10 1997-04-01 Sears; Lawrence M. Apparatus for communicating utility usage-related information from a utility usage location to a utility usage registering device
US5493273A (en) 1993-09-28 1996-02-20 The United States Of America As Represented By The Secretary Of The Navy System for detecting perturbations in an environment using temporal sensor data
US5555100A (en) 1993-10-07 1996-09-10 Audiofax, Inc. Facsimile store and forward system with local interface translating DTMF signals into store and forward system commands
WO1995011566A1 (en) 1993-10-20 1995-04-27 Videoconferencing Systems, Inc. Adaptive videoconferencing system
US5451938A (en) 1993-10-22 1995-09-19 Schlumberger Industries, Inc. RF meter reading system
FI98686C (en) 1993-11-01 1998-07-22 Nokia Telecommunications Oy A method for controlling a subscriber station operating on a direct channel in a radio system and a radio system
WO1995012942A1 (en) 1993-11-04 1995-05-11 Norand Corporation A communication network providing wireless and hard-wired dynamic routing
CA2134510C (en) 1993-11-26 2003-01-28 Mark J. Plis Method and apparatus for executing a command in a plurality of electrical metering devices
US5548632A (en) 1993-11-30 1996-08-20 Lawrence Steelman Safe alert emergency alerting system for remotely located sites
FR2713421B1 (en) 1993-12-06 1996-01-19 Alcatel Business Systems Local radio transmission network.
US5484997A (en) 1993-12-07 1996-01-16 Haynes; George W. Identification card with RF downlink capability
US5530963A (en) 1993-12-16 1996-06-25 International Business Machines Corporation Method and system for maintaining routing between mobile workstations and selected network workstation using routing table within each router device in the network
US5412654A (en) 1994-01-10 1995-05-02 International Business Machines Corporation Highly dynamic destination-sequenced destination vector routing for mobile computers
US5555286A (en) 1994-01-31 1996-09-10 Tendler Technologies, Inc. Cellular phone based automatic emergency vessel/vehicle location system
US5867688A (en) 1994-02-14 1999-02-02 Reliable Transaction Processing, Inc. Data acquisition and retrieval system with wireless handheld user interface
US5517188A (en) 1994-02-24 1996-05-14 Carroll; Gary T. Programmable identification apparatus and method therefor
US5768684A (en) * 1994-03-04 1998-06-16 Motorola, Inc. Method and apparatus for bi-directional power control in a digital communication system
US5493287A (en) 1994-03-07 1996-02-20 Motorola, Inc. Method of remotely reading a group of meters
GB9404526D0 (en) 1994-03-09 1994-04-20 Huckstep Carl David Improvements in or relating to infant feeders and feeder accessories
NO941202L (en) 1994-03-30 1995-10-02 Oeystein Konsmo Method of monitoring and generating messages as well as equipment using the method
US5430729A (en) 1994-04-04 1995-07-04 Motorola, Inc. Method and apparatus for adaptive directed route randomization and distribution in a richly connected communication network
US5636216A (en) 1994-04-08 1997-06-03 Metricom, Inc. Method for translating internet protocol addresses to other distributed network addressing schemes
US5488608A (en) 1994-04-14 1996-01-30 Metricom, Inc. Method and system for routing packets in a packet communication network using locally constructed routing tables
US6329902B1 (en) 1994-04-20 2001-12-11 Cellco Partnership Wide area two-way paging using a mesh network with paging receivers
US5481259A (en) 1994-05-02 1996-01-02 Motorola, Inc. Method for reading a plurality of remote meters
FR2719730B1 (en) 1994-05-06 1996-05-31 France Telecom System for secure telephone transactions.
US5544322A (en) 1994-05-09 1996-08-06 International Business Machines Corporation System and method for policy-based inter-realm authentication within a distributed processing system
US5926103A (en) 1994-05-16 1999-07-20 Petite; T. David Personalized security system
US5714931A (en) 1994-05-16 1998-02-03 Petite; Thomas D. Personalized security system
JP3192318B2 (en) 1994-05-20 2001-07-23 松下電工株式会社 Wireless information transmission system
FR2720518B1 (en) 1994-05-26 1996-07-12 Inst Francais Du Petrole Seismic acquisition and transmission system with decentralization of functions.
US5467345A (en) 1994-05-31 1995-11-14 Motorola, Inc. Packet routing system and method therefor
US5528215A (en) 1994-05-31 1996-06-18 Landis & Gyr Powers, Inc. Building automation system having expansion modules
US5479400A (en) 1994-06-06 1995-12-26 Metricom, Inc. Transceiver sharing between access and backhaul in a wireless digital communication system
WO1995034138A1 (en) 1994-06-07 1995-12-14 Celsat America, Inc. Communications system
US5619192A (en) 1994-06-14 1997-04-08 Logicon, Inc. Apparatus and method for reading utility meters
US5555258A (en) 1994-06-17 1996-09-10 P. Stuckey McIntosh Home personal communication system
US5590038A (en) 1994-06-20 1996-12-31 Pitroda; Satyan G. Universal electronic transaction card including receipt storage and system and methods of conducting electronic transactions
US5668876A (en) 1994-06-24 1997-09-16 Telefonaktiebolaget Lm Ericsson User authentication method and apparatus
US5948040A (en) 1994-06-24 1999-09-07 Delorme Publishing Co. Travel reservation information and planning system
US5570084A (en) 1994-06-28 1996-10-29 Metricom, Inc. Method of loose source routing over disparate network types in a packet communication network
US5481532A (en) 1994-06-29 1996-01-02 General Electric Company Mobile telecommunications device and service
US5583914A (en) 1994-06-30 1996-12-10 Lucent Technologies Inc. Intelligent wireless signaling overlay for a telecommunication network
CA2154335C (en) 1994-07-21 2002-04-23 Tom Gray Integrated wired and wireless telecommunications system
US5702059A (en) 1994-07-26 1997-12-30 Meta Holding Corp. Extended working range dataform reader including fuzzy logic image control circuitry
CA2129199C (en) 1994-07-29 1999-07-20 Roger Y.M. Cheung Method and apparatus for bridging wireless lan to a wired lan
ATE188300T1 (en) 1994-08-04 2000-01-15 Landis & Gyr Tech Innovat DATA ARRANGEMENT FOR A DEVICE CONNECTABLE TO A COMMUNICATIONS NETWORK AND METHOD FOR GENERATING THE DATA ARRANGEMENT
US5445287A (en) 1994-08-12 1995-08-29 Recot, Inc. Co-dispensing snack food products and beverages from a vending machine
DE69512789T2 (en) 1994-08-12 2000-04-27 British Telecommunications P.L.C., London CONFIGURATION METHOD FOR A DATA MANAGEMENT SYSTEM
US5613620A (en) 1994-08-12 1997-03-25 Recot, Inc. Co-dispensing snack food products and beverages from a vending machine
US5798964A (en) 1994-08-29 1998-08-25 Toshiba Corporation FRAM, FRAM card, and card system using the same
US5629687A (en) 1994-08-29 1997-05-13 Emergency Technologies, Inc. Universal interface for remotely-monitored security systems
US5587705A (en) 1994-08-29 1996-12-24 Morris; Gary J. Multiple alert smoke detector
US5550359A (en) 1994-09-14 1996-08-27 Mikohn Gaming Corporation Time and attendance system and method therefor
US5604414A (en) 1994-09-15 1997-02-18 Landis & Gyr Energy Management Method and apparatus for adjusting overload compensation for a watthour meter
JPH0897821A (en) 1994-09-21 1996-04-12 Hitachi Ltd Method and equipment for radio data communication and system therefor
US6026095A (en) 1994-09-27 2000-02-15 3Com Corporation Method and apparatus for controlling latency and jitter in shared CSMA/CD (repeater) environment
US5490139A (en) 1994-09-28 1996-02-06 International Business Machines Corporation Mobility enabling access point architecture for wireless attachment to source routing networks
JP3525353B2 (en) 1994-09-28 2004-05-10 株式会社リコー Digital electronic still camera
ATE187824T1 (en) 1994-10-24 2000-01-15 Fisher Rosemount Systems Inc DEVICE THAT ALLOWS ACCESS TO FIELD DEVICES IN A DISTRIBUTED CONTROL SYSTEM
US6198390B1 (en) 1994-10-27 2001-03-06 Dan Schlager Self-locating remote monitoring systems
EP0713197A1 (en) 1994-11-15 1996-05-22 Landis & Gyr Technology Innovation AG Data carrier and corresponding read/write device
US5615227A (en) 1994-11-21 1997-03-25 Pole Zero Corporation Transmitting spread spectrum data with commercial radio
US5615277A (en) 1994-11-28 1997-03-25 Hoffman; Ned Tokenless security system for authorizing access to a secured computer system
US5613012A (en) 1994-11-28 1997-03-18 Smarttouch, Llc. Tokenless identification system for authorization of electronic transactions and electronic transmissions
US5628050A (en) 1994-12-09 1997-05-06 Scientific And Commercial Systems Corporation Disaster warning communications system
MY123040A (en) 1994-12-19 2006-05-31 Salbu Res And Dev Proprietary Ltd Multi-hop packet radio networks
FR2728424A1 (en) 1994-12-19 1996-06-21 Sgs Thomson Microelectronics REMOTE ELECTRIC METER SYSTEM
CA2139081C (en) 1994-12-23 1999-02-02 Alastair Gordon Unified messaging system and method
US5691974A (en) * 1995-01-04 1997-11-25 Qualcomm Incorporated Method and apparatus for using full spectrum transmitted power in a spread spectrum communication system for tracking individual recipient phase, time and energy
US5572438A (en) 1995-01-05 1996-11-05 Teco Energy Management Services Engery management and building automation system
US5573181A (en) 1995-01-06 1996-11-12 Landis & Gyr Powers, Inc. Global control of HVAC distribution system
US5706191A (en) 1995-01-19 1998-01-06 Gas Research Institute Appliance interface apparatus and automated residence management system
US5659300A (en) 1995-01-30 1997-08-19 Innovatec Corporation Meter for measuring volumetric consumption of a commodity
US5557320A (en) 1995-01-31 1996-09-17 Krebs; Mark Video mail delivery system
US5557748A (en) 1995-02-03 1996-09-17 Intel Corporation Dynamic network configuration
GB2297663A (en) 1995-02-03 1996-08-07 Gen Electric Co Plc Remote meter reading
JPH08279150A (en) 1995-02-09 1996-10-22 Shoei Insatsu Kk Identification card, production of this identification card and polyethylene terephthalate resin sheet spherulitized by substantially non-oriented heating used for the production
US6771981B1 (en) 2000-08-02 2004-08-03 Nokia Mobile Phones Ltd. Electronic device cover with embedded radio frequency (RF) transponder and methods of using same
FI99071C (en) 1995-02-15 1997-09-25 Nokia Mobile Phones Ltd Procedure for use of applications in a mobile telephone as well as a mobile telephone
DE69618886T2 (en) 1995-03-17 2002-09-19 Lucent Technologies Inc., Murray Hill COMMUNICATION SYSTEM FOR DETECTING AN UNLOCKED TERMINAL DEVICE
US5572528A (en) 1995-03-20 1996-11-05 Novell, Inc. Mobile networking method and apparatus
US5596722A (en) 1995-04-03 1997-01-21 Motorola, Inc. Packet routing system and method for achieving uniform link usage and minimizing link load
US5608721A (en) 1995-04-03 1997-03-04 Motorola, Inc. Communications network and method which implement diversified routing
US5701591A (en) 1995-04-07 1997-12-23 Telecommunications Equipment Corporation Multi-function interactive communications system with circularly/elliptically polarized signal transmission and reception
US5742509A (en) 1995-04-11 1998-04-21 Trimble Navigation Limited Personal tracking system integrated with base station
JPH08293830A (en) 1995-04-20 1996-11-05 Sony Corp Portable telephone set and display adapter
US5659303A (en) 1995-04-20 1997-08-19 Schlumberger Industries, Inc. Method and apparatus for transmitting monitor data
US5629875A (en) 1995-04-20 1997-05-13 Schlumberger Industries, Inc. Method and apparatus for interactively tuning frequency hopping transmitter
US5657389A (en) 1995-05-08 1997-08-12 Image Data, Llc Positive identification system and method
US5606361A (en) 1995-05-10 1997-02-25 Davidsohn; John Videophone interactive mailbox facility system and method of processing information
US5562537A (en) 1995-05-11 1996-10-08 Landis & Gyr Powers, Inc. Networked fume hood monitoring system
US6732077B1 (en) 1995-05-12 2004-05-04 Trimble Navigation Limited Speech recognizing GIS/GPS/AVL system
US5673259A (en) 1995-05-17 1997-09-30 Qualcomm Incorporated Random access communications channel for data services
US5544784A (en) 1995-05-26 1996-08-13 Motorola, Inc. Rechargeable battery vending machine
KR0163903B1 (en) 1995-06-05 1999-04-15 김광호 Electronic ballast of feedback control system
WO1996039788A1 (en) 1995-06-06 1996-12-12 Globalstar L.P. Satellite repeater diversity resource management system
US6484939B1 (en) 1995-06-06 2002-11-26 Dennis C. Blaeuer Self scanning and check out shopping cart-based electronic advertising system
US5682139A (en) 1995-06-07 1997-10-28 General Electric Company Railcar location using mutter networks and locomotive transmitter during transit
US5588005A (en) 1995-06-07 1996-12-24 General Electric Company Protocol and mechanism for primary and mutter mode communication for asset tracking
US5691980A (en) 1995-06-07 1997-11-25 General Electric Company Local communication network for power reduction and enhanced reliability in a multiple node tracking system
US5623495A (en) 1995-06-15 1997-04-22 Lucent Technologies Inc. Portable base station architecture for an AD-HOC ATM lan
US5757783A (en) 1995-06-15 1998-05-26 Lucent Technologies Inc. Method and apparatus for routing ATM cells in an AD-ATM LAN
US5822309A (en) * 1995-06-15 1998-10-13 Lucent Technologies Inc. Signaling and control architecture for an ad-hoc ATM LAN
US5704517A (en) 1995-06-23 1998-01-06 Triangle Telephone Company Enclosure for housing and displaying a public telephone and foodstuff vending machine
US5926101A (en) 1995-11-16 1999-07-20 Philips Electronics North America Corporation Method and apparatus for routing messages in a network of nodes with minimal resources
US5726644A (en) 1995-06-30 1998-03-10 Philips Electronics North America Corporation Lighting control system with packet hopping communication
US6327245B1 (en) 1995-06-30 2001-12-04 Philips Electronics North America Corporation Automatic channel switching for jamming avoidance in burst-mode packet data wireless communication networks
US5898733A (en) 1995-06-30 1999-04-27 Philips Electronics North America Corporation Packet hopping system with sliding frequency, and transciever for the system
US6513060B1 (en) 1998-08-27 2003-01-28 Internetseer.Com Corp. System and method for monitoring informational resources
EP1515392A3 (en) 1995-08-09 2005-06-29 Fractal Antenna Systems Inc. Fractal antennas, resonators and loading elements
US5640002A (en) 1995-08-15 1997-06-17 Ruppert; Jonathan Paul Portable RF ID tag and barcode reader
US6208266B1 (en) 1995-08-23 2001-03-27 Scientific Telemetry Corporation Remote data acquisition and processing system
DE29514059U1 (en) 1995-09-01 1995-11-02 Hsieh, Shou-Tun, An-Chung St., Tainan Glasses with headband
US5754111A (en) 1995-09-20 1998-05-19 Garcia; Alfredo Medical alerting system
US5991345A (en) * 1995-09-22 1999-11-23 Qualcomm Incorporated Method and apparatus for diversity enhancement using pseudo-multipath signals
US5590126A (en) 1995-09-27 1996-12-31 Lucent Technologies Inc. Method for call establishment and rerouting in mobile computing networks
US5953319A (en) 1995-09-29 1999-09-14 Amsc Subsidiary Corporation Wide area mobile communication networks with multiple routing mode options
DE69620533T2 (en) 1995-10-04 2002-10-02 Canon K.K., Tokio/Tokyo Image processing method
GB9520487D0 (en) 1995-10-06 1995-12-06 Cambridge Consultants Short range electromagnetic sensor
US5955718A (en) 1995-10-06 1999-09-21 Coin Acceptors, Inc. Integrated credit/information exchange module
US6122759A (en) 1995-10-10 2000-09-19 Lucent Technologies Inc. Method and apparatus for restoration of an ATM network
US5875185A (en) 1995-10-10 1999-02-23 Industrial Technology Research Inst. Seamless handoff for a wireless lan/wired lan internetworking
US5841764A (en) 1995-10-30 1998-11-24 Ericsson Inc. Method and apparatus for permitting a radio to originate and receive data messages in a data communications network
US6005884A (en) 1995-11-06 1999-12-21 Ems Technologies, Inc. Distributed architecture for a wireless data communications system
US5748103A (en) 1995-11-13 1998-05-05 Vitalcom, Inc. Two-way TDMA telemetry system with power conservation features
US5944659A (en) 1995-11-13 1999-08-31 Vitalcom Inc. Architecture for TDMA medical telemetry system
US5684800A (en) 1995-11-15 1997-11-04 Cabletron Systems, Inc. Method for establishing restricted broadcast groups in a switched network
US6401081B1 (en) 1995-11-20 2002-06-04 Schlumberger Resource Management Services, Inc. Modular object-based architecture for extensible master station software
US5870686A (en) 1995-12-13 1999-02-09 Ag-Chem Equipment Co., Inc. Intelligent Mobile product application control system
US5706976A (en) 1995-12-21 1998-01-13 Purkey; Jay Floyd Vending machine inventory control device
US5737318A (en) 1995-12-27 1998-04-07 Philips Electronics North America Corporation Method for initializing a wireless, packet-hopping network
TW313734B (en) 1996-01-05 1997-08-21 Motorola Inc System controlled asymmetrical automatic repeat request protocol method
US5757788A (en) 1996-01-11 1998-05-26 Matsushita Electric Ind. Digital radio communication system with efficient audio and non-audio data transmission
US5732074A (en) 1996-01-16 1998-03-24 Cellport Labs, Inc. Mobile portable wireless communication system
US5732078A (en) 1996-01-16 1998-03-24 Bell Communications Research, Inc. On-demand guaranteed bandwidth service for internet access points using supplemental user-allocatable bandwidth network
US5898369A (en) 1996-01-18 1999-04-27 Godwin; Paul K. Communicating hazardous condition detector
US5708223A (en) 1996-01-25 1998-01-13 Leer Manufacturing Limited Partnership Remote sensing ice merchandiser
US5845230A (en) 1996-01-30 1998-12-01 Skf Condition Monitoring Apparatus and method for the remote monitoring of machine condition
US6489884B1 (en) 1996-01-30 2002-12-03 Skf Condition Monitoring Apparatus and method for the remote monitoring of machine condition
US5892924A (en) 1996-01-31 1999-04-06 Ipsilon Networks, Inc. Method and apparatus for dynamically shifting between routing and switching packets in a transmission network
US5973756A (en) 1996-02-06 1999-10-26 Fca Corporation IR Transmitter with integral magnetic-stripe ATM type credit card reader & method therefor
US5726634A (en) 1996-02-06 1998-03-10 Hess; Oneida V. Smoke alarm with high and low pitched tones
US5781143A (en) 1996-02-06 1998-07-14 Rossin; John A. Auto-acquire of transmitter ID by receiver
US5736965A (en) 1996-02-07 1998-04-07 Lutron Electronics Co. Inc. Compact radio frequency transmitting and receiving antenna and control device employing same
US5848054A (en) 1996-02-07 1998-12-08 Lutron Electronics Co. Inc. Repeater for transmission system for controlling and determining the status of electrical devices from remote locations
US5905442A (en) 1996-02-07 1999-05-18 Lutron Electronics Co., Inc. Method and apparatus for controlling and determining the status of electrical devices from remote locations
US6195018B1 (en) 1996-02-07 2001-02-27 Cellnet Data Systems, Inc. Metering system
US5774052A (en) 1996-02-08 1998-06-30 Pacific Bank Technology, Inc. Monitoring and alerting system for buildings
US5745849A (en) 1996-02-09 1998-04-28 Digital Monitoring Products, Inc. Combination cordless telephone and premise-monitoring alarm system
US5856974A (en) 1996-02-13 1999-01-05 Novell, Inc. Internetwork address mapping gateway
GB9604092D0 (en) 1996-02-27 1996-05-01 Linburg Ltd Data carrying network
US5978364A (en) 1996-02-29 1999-11-02 Philips Electronics North America Corporation Method for routing data packets within a wireless, packet-hopping network and a wireless network for implementing the same
US5896097A (en) 1996-03-06 1999-04-20 Schlumberger Resource Management Services, Inc. System for utility meter communications using a single RF frequency
US5828044A (en) 1996-03-14 1998-10-27 Kookmin Credit Card Co., Ltd. Non-contacting type radio frequency recognizing credit card system
US6205143B1 (en) 1996-03-14 2001-03-20 Telefonaktiebolaget L M Ericsson System supporting variable bandwidth asynchronous transfer mode network access for wireline and wireless communications
US6078251A (en) 1996-03-27 2000-06-20 Intermec Ip Corporation Integrated multi-meter and wireless communication link
US6400819B1 (en) 1996-03-28 2002-06-04 Hitachi, Ltd. Method and apparatus for executing communication in real-time and data structure for real-time data communication
US5712619A (en) 1996-04-18 1998-01-27 Simkin; Alan C. Global positioning system personal alarm
US5883884A (en) 1996-04-22 1999-03-16 Roger F. Atkinson Wireless digital communication system having hierarchical wireless repeaters with autonomous hand-off
KR0174485B1 (en) 1996-04-30 1999-04-01 김광호 Infrared wireless communication system using telephone line and method thereof
US5884184A (en) 1996-05-01 1999-03-16 Sheffer; Eliezer Arie Supervised cellular reporting network
US5719564A (en) 1996-05-10 1998-02-17 Sears; Lawrence M. Utility meter reading system
US6181981B1 (en) 1996-05-15 2001-01-30 Marconi Communications Limited Apparatus and method for improved vending machine inventory maintenance
US5842976A (en) 1996-05-16 1998-12-01 Pyxis Corporation Dispensing, storage, control and inventory system with medication and treatment chart record
US5872773A (en) 1996-05-17 1999-02-16 Lucent Technologies Inc. Virtual trees routing protocol for an ATM-based mobile network
US6150936A (en) 1996-05-20 2000-11-21 Pittway Corporation Method and system for analyzing received signal strength
US5838237A (en) 1996-05-22 1998-11-17 Revell; Graeme Charles Personal alarm device
US5832057A (en) 1996-05-23 1998-11-03 Furman; Elliot M. Lockout device for preventing telephone eavesdropping from an extension device, and method
US5704046A (en) 1996-05-30 1997-12-30 Mastercard International Inc. System and method for conducting cashless transactions
JPH09326713A (en) 1996-06-05 1997-12-16 Sharp Corp Dual mode cellular telephone system
US5708655A (en) 1996-06-14 1998-01-13 Telefonaktiebolaget L M Ericsson Publ Method and apparatus for addressing a wireless communication station with a dynamically-assigned address
CA2179349C (en) 1996-06-18 2000-01-11 Roger Yiu Ming Cheung Method and apparatus for providing a 3-way connection between a mobile computing device, a stationary computing device and a computer network
US5801643A (en) 1996-06-20 1998-09-01 Northrop Grumman Corporation Remote utility meter reading system
US5771274A (en) 1996-06-21 1998-06-23 Mci Communications Corporation Topology-based fault analysis in telecommunications networks
US5892758A (en) 1996-07-11 1999-04-06 Qualcomm Incorporated Concentrated subscriber wireless remote telemetry system
US5748104A (en) 1996-07-11 1998-05-05 Qualcomm Incorporated Wireless remote telemetry system
US6075451A (en) 1996-07-15 2000-06-13 Lebowitz; Mayer M. RF cellular technology network transmission system for remote monitoring equipment
US5994892A (en) 1996-07-31 1999-11-30 Sacramento Municipal Utility District Integrated circuit design automatic utility meter: apparatus & method
US5941363A (en) 1996-07-31 1999-08-24 Proactive Vending Technology, Llc Vending data collection system
US6067017A (en) 1996-08-12 2000-05-23 Harris Corporation Emergency location system and method
IT1288972B1 (en) 1996-08-12 1998-09-25 Pro6Tec Srl REMOTE RECOGNITION AND READING SYSTEM OF METERS
US5815505A (en) 1996-08-13 1998-09-29 Advanced Micro Devices, Inc. Combined analog and digital communications device
US5644294A (en) 1996-08-13 1997-07-01 Ness; Ronald J. Rescue support apparatus
US6301514B1 (en) 1996-08-23 2001-10-09 Csi Technology, Inc. Method and apparatus for configuring and synchronizing a wireless machine monitoring and communication system
US5854994A (en) 1996-08-23 1998-12-29 Csi Technology, Inc. Vibration monitor and transmission system
US6188675B1 (en) 1996-08-23 2001-02-13 International Business Machines Corporation System and method for self-identifying and configuring the nodes of a network
US5907491A (en) 1996-08-23 1999-05-25 Csi Technology, Inc. Wireless machine monitoring and communication system
US6222812B1 (en) 1996-08-29 2001-04-24 Samsung Electronics Co., Ltd. Optical pickup using an optical phase plate
US5987011A (en) 1996-08-30 1999-11-16 Chai-Keong Toh Routing method for Ad-Hoc mobile networks
US5909429A (en) 1996-09-03 1999-06-01 Philips Electronics North America Corporation Method for installing a wireless network which transmits node addresses directly from a wireless installation device to the nodes without using the wireless network
US6246677B1 (en) 1996-09-06 2001-06-12 Innovatec Communications, Llc Automatic meter reading data communication system
US5862201A (en) 1996-09-12 1999-01-19 Simplex Time Recorder Company Redundant alarm monitoring system
JPH1097671A (en) 1996-09-20 1998-04-14 Media Maaketeingu Network:Kk Commodity sales management method and device for automatic vending machine
US5960074A (en) 1996-09-23 1999-09-28 Curtis Clark Mobile tele-computer network for motion picture, television and tv advertising production
US5966658A (en) 1996-09-26 1999-10-12 Highwaymaster Communications, Inc. Automated selection of a communication path
US6192282B1 (en) 1996-10-01 2001-02-20 Intelihome, Inc. Method and apparatus for improved building automation
US5726544A (en) 1996-10-01 1998-03-10 Hyundai Motor Company Speed control apparatus and method for electric car
FI104138B (en) 1996-10-02 1999-11-15 Nokia Mobile Phones Ltd A system for communicating a call and a mobile telephone
US6055561A (en) 1996-10-02 2000-04-25 International Business Machines Corporation Mapping of routing traffic to switching networks
US5880677A (en) 1996-10-15 1999-03-09 Lestician; Guy J. System for monitoring and controlling electrical consumption, including transceiver communicator control apparatus and alternating current control apparatus
US6054920A (en) 1996-10-15 2000-04-25 Interactive Technologies,Inc. Alarm system receiver supervisor
US6842430B1 (en) 1996-10-16 2005-01-11 Koninklijke Philips Electronics N.V. Method for configuring and routing data within a wireless multihop network and a wireless network for implementing the same
US6018659A (en) 1996-10-17 2000-01-25 The Boeing Company Airborne broadband communication network
US5946631A (en) 1996-10-17 1999-08-31 Philips Electronics North America Corporation Real-time CSMA method having the capability to adaptively vary cell sizes and a wireless network for implementing the same
AU736045B2 (en) 1996-10-22 2001-07-26 Abb Inc. Energy meter with power quality monitoring and diagnostic systems
US6005963A (en) 1996-10-23 1999-12-21 International Business Machines Corporation System and method for determining if a fingerprint image contains an image portion representing a partial fingerprint impression
US6150955A (en) 1996-10-28 2000-11-21 Tracy Corporation Ii Apparatus and method for transmitting data via a digital control channel of a digital wireless network
US6421731B1 (en) 1996-10-29 2002-07-16 Telxon Corporation Dynamic next hop routing protocol
JPH10143570A (en) 1996-11-15 1998-05-29 Susumu Miyake Electronic transfer method for individual information of credit card, and miniature ic card, adapter card, terminal adapter, slip issuing machine and portable terminal therefor
US5987331A (en) 1996-11-20 1999-11-16 Motorola, Inc. Communication system to communication system gateway method and apparatus
US6334117B1 (en) 1996-11-27 2001-12-25 Diebold, Incorporated Automated banking machine and system
US6175922B1 (en) 1996-12-04 2001-01-16 Esign, Inc. Electronic transaction systems and methods therefor
US6044062A (en) 1996-12-06 2000-03-28 Communique, Llc Wireless network system and method for providing same
US7054271B2 (en) 1996-12-06 2006-05-30 Ipco, Llc Wireless network system and method for providing same
US5873043A (en) 1996-12-18 1999-02-16 Cellemetry Llc System for communicating messages via a forward overhead control channel
US5907807A (en) 1996-12-18 1999-05-25 Lucent Technologies Inc. Dynamic learning of neighboring wireless cells
US5864772A (en) 1996-12-23 1999-01-26 Schlumberger Technology Corporation Apparatus, system and method to transmit and display acquired well data in near real time at a remote location
US5949799A (en) 1996-12-27 1999-09-07 Cypress Semiconductor Corp. Minimum-latency data mover with auto-segmentation and reassembly
US6178173B1 (en) 1996-12-30 2001-01-23 Paradyne Corporation System and method for communicating pre-connect information in a digital communication system
US5883886A (en) 1997-01-03 1999-03-16 Motorola, Inc. Utility meter readings on a reverse channel of a two-way paging system
US5905438A (en) 1997-01-10 1999-05-18 Micro Weiss Electronics Remote detecting system and method
US6286050B1 (en) 1997-01-27 2001-09-04 Alcatel Usa Sourcing, L.P. System and method for monitoring and management of telecommunications equipment using enhanced internet access
US5978578A (en) 1997-01-30 1999-11-02 Azarya; Arnon Openbus system for control automation networks
US6314169B1 (en) 1997-02-06 2001-11-06 Poweroasis, Inc. Power and telecommunications access vending machine
US6145738A (en) 1997-02-06 2000-11-14 Mr. Payroll Corporation Method and apparatus for automatic check cashing
US6900737B1 (en) 1997-02-12 2005-05-31 Elster Electricity, Llc Remote access to electronic meters using the short message service
US6396839B1 (en) 1997-02-12 2002-05-28 Abb Automation Inc. Remote access to electronic meters using a TCP/IP protocol suite
US6628764B1 (en) 1997-02-14 2003-09-30 Statsignal Systems, Inc. System for requesting service of a vending machine
US6618578B1 (en) 1997-02-14 2003-09-09 Statsignal Systems, Inc System and method for communicating with a remote communication unit via the public switched telephone network (PSTN)
US6233327B1 (en) 1997-02-14 2001-05-15 Statsignal Systems, Inc. Multi-function general purpose transceiver
US6430268B1 (en) 1997-09-20 2002-08-06 Statsignal Systems, Inc. Systems for requesting service of a vending machine
US7079810B2 (en) 1997-02-14 2006-07-18 Statsignal Ipc, Llc System and method for communicating with a remote communication unit via the public switched telephone network (PSTN)
US5926531A (en) 1997-02-14 1999-07-20 Statsignal Systems, Inc. Transmitter for accessing pay-type telephones
US5914671A (en) 1997-02-27 1999-06-22 Micron Communications, Inc. System and method for locating individuals and equipment, airline reservation system, communication system
US6181255B1 (en) 1997-02-27 2001-01-30 The Chamberlain Group, Inc. Multi-frequency radio frequency transmitter with code learning capability
US5897607A (en) 1997-02-28 1999-04-27 Jenney Systems Associates, Ltd. Automatic meter reading system
US5892690A (en) 1997-03-10 1999-04-06 Purechoice, Inc. Environment monitoring system
US6118269A (en) 1997-03-26 2000-09-12 Comverge Technologies, Inc. Electric meter tamper detection circuit for sensing electric meter removal
US6036086A (en) 1997-03-28 2000-03-14 Lucent Technologies Inc. Apparatus and method for initiating a telephone transaction using a scanner
US5978371A (en) 1997-03-31 1999-11-02 Abb Power T&D Company Inc. Communications module base repeater
US6073169A (en) 1997-04-08 2000-06-06 Abb Power T&D Company Inc. Automatic meter reading system employing common broadcast command channel
US5914656A (en) 1997-04-10 1999-06-22 Nexsys Comtech International, Inc. Environmental condition detector transmitter interface
AU6914598A (en) 1997-04-10 1998-10-30 Nexsys Commtech International Inc. Remote home monitoring system
US6035266A (en) 1997-04-16 2000-03-07 A.L. Air Data, Inc. Lamp monitoring and control system and method
US6359555B1 (en) 1997-04-16 2002-03-19 A.L. Airdata, Inc. Alarm monitoring and control system and method
US6073266A (en) 1997-04-16 2000-06-06 Ericsson, Inc. Cebus data link layer proxy
US6119076A (en) 1997-04-16 2000-09-12 A.L. Air Data, Inc. Lamp monitoring and control unit and method
US6212175B1 (en) 1997-04-22 2001-04-03 Telxon Corporation Method to sustain TCP connection
US5963650A (en) 1997-05-01 1999-10-05 Simionescu; Dan Method and apparatus for a customizable low power RF telemetry system with high performance reduced data rate
US6061604A (en) 1997-05-06 2000-05-09 Gas Research Institute RF base repeater for automated residence management system
US5949779A (en) 1997-05-08 1999-09-07 Ericsson, Inc. Multiprotocol adaptor for communication between CEBus devices and remote controllers over an ATM-based broadband access network
US6201962B1 (en) 1997-05-14 2001-03-13 Telxon Corporation Seamless roaming among multiple networks including seamless transitioning between multiple devices
US5907291A (en) 1997-06-05 1999-05-25 Vsm Technology Inc. Multi-patient monitoring apparatus and method
US5874903A (en) 1997-06-06 1999-02-23 Abb Power T & D Company Inc. RF repeater for automatic meter reading system
US5923269A (en) 1997-06-06 1999-07-13 Abb Power T&D Company Inc. Energy meter with multiple protocols for communication with local and wide area networks
GB2326002A (en) 1997-06-06 1998-12-09 Centrepoint Technology Limited Remote reading of meters and sensors
US5841118A (en) 1997-06-10 1998-11-24 Impro Technologies (Pty) Ltd. Remote control operating device for use with an electronic banking machine
US6064318A (en) 1997-06-11 2000-05-16 The Scientex Corporation Automated data acquisition and processing of traffic information in real-time system and method for same
US5852658A (en) 1997-06-12 1998-12-22 Knight; Nelson E. Remote meter reading system
US5914672A (en) 1997-06-13 1999-06-22 Whisper Communications Incorporated System for field installation of a remote meter interface
TW350555U (en) 1997-06-28 1999-01-11 Acer Peripherals Inc Chshier with automatic pop-up customer identification card mechanism
US5933073A (en) 1997-07-07 1999-08-03 Abb Power T&D Company Inc. Apparatus and methods for power network coupling
US6078888A (en) 1997-07-16 2000-06-20 Gilbarco Inc. Cryptography security for remote dispenser transactions
JP3141820B2 (en) 1997-07-18 2001-03-07 日本電気株式会社 Ad hoc local area network
US6431439B1 (en) 1997-07-24 2002-08-13 Personal Solutions Corporation System and method for the electronic storage and transmission of financial transactions
DE19732011A1 (en) 1997-07-25 1999-01-28 Abb Patent Gmbh Process for the location-transparent exchange of process data
US6028857A (en) 1997-07-25 2000-02-22 Massachusetts Institute Of Technology Self-organizing network
GB9715857D0 (en) 1997-07-29 1997-10-01 Philips Electronics Nv Wireless networked message routing
US6471087B1 (en) 1997-07-31 2002-10-29 Larry Shusterman Remote patient monitoring system with garment and automated medication dispenser
US6295291B1 (en) 1997-07-31 2001-09-25 Nortel Networks Limited Setup of new subscriber radiotelephone service using the internet
GB9716626D0 (en) 1997-08-07 1997-10-15 Philips Electronics Nv Wireless network
US6751196B1 (en) 1997-08-27 2004-06-15 Philips Electronics North America Corp. Apparatus and method for peer-to-peer link monitoring of a wireless network with centralized control
US6538577B1 (en) 1997-09-05 2003-03-25 Silver Springs Networks, Inc. Electronic electric meter for networked meter reading
US6574234B1 (en) 1997-09-05 2003-06-03 Amx Corporation Method and apparatus for controlling network devices
EP1019857A4 (en) 1997-09-11 2007-10-17 Elster Electricity Llc Automated meter reading system
US6199068B1 (en) 1997-09-11 2001-03-06 Abb Power T&D Company Inc. Mapping interface for a distributed server to translate between dissimilar file formats
US6088659A (en) 1997-09-11 2000-07-11 Abb Power T&D Company Inc. Automated meter reading system
SE9703327L (en) 1997-09-12 1999-03-13 Ericsson Telefon Ab L M Method and apparatus for data communication
AU9480798A (en) 1997-09-12 1999-03-29 Williams Wireless, Inc. Wide area remote telemetry
US6032197A (en) 1997-09-25 2000-02-29 Microsoft Corporation Data packet header compression for unidirectional transmission
US6574603B1 (en) 1997-09-26 2003-06-03 Gilbarco Inc. In-vehicle ordering
US6098879A (en) 1997-09-26 2000-08-08 Gilbarco, Inc. Fuel dispensing system providing customer preferences
US6073840A (en) 1997-09-26 2000-06-13 Gilbarco Inc. Fuel dispensing and retail system providing for transponder prepayment
US7027416B1 (en) 1997-10-01 2006-04-11 Honeywell, Inc. Multi tier wireless communication system
US6678255B1 (en) 1997-10-09 2004-01-13 Mci Communications Corporation Wireless data interface system for fixed point-to-point communications
US5986574A (en) 1997-10-16 1999-11-16 Peco Energy Company System and method for communication between remote locations
US6236332B1 (en) 1997-10-22 2001-05-22 Profile Systems, Llc Control and monitoring system
US6628965B1 (en) 1997-10-22 2003-09-30 Dynamic Mobile Data Systems, Inc. Computer method and system for management and control of wireless devices
US5997170A (en) 1997-11-03 1999-12-07 Ident, Inc. System and method for reporting vending status
US6112983A (en) 1997-11-10 2000-09-05 Diebold, Incorporated Enhanced network monitor system for automated banking machines
US5889468A (en) 1997-11-10 1999-03-30 Banga; William Robert Extra security smoke alarm system
US6038491A (en) 1997-11-26 2000-03-14 Mars, Incorporated Monitoring and reporting system using cellular carriers
US6305602B1 (en) 1997-12-01 2001-10-23 Diebold, Incorporated Light monitoring system and method for automated transaction machine
JPH11168427A (en) 1997-12-05 1999-06-22 Nec Corp Information collection system
US6311167B1 (en) 1997-12-22 2001-10-30 Motorola, Inc. Portable 2-way wireless financial messaging unit
US6243010B1 (en) 1998-01-08 2001-06-05 Pittway Corp. Adaptive console for augmenting wireless capability in security systems
JPH11205845A (en) 1998-01-14 1999-07-30 Locus:Kk Position specifying system
US6100816A (en) 1998-01-16 2000-08-08 Cellnet Data Systems, Inc. Utility meter adapter
FR2773904B1 (en) 1998-01-21 2000-02-25 Schlumberger Ind Sa METHOD FOR COMMUNICATING INFORMATION AND APPLICATION OF THIS METHOD TO A REMOTE METER-READING SYSTEM
US6021664A (en) 1998-01-29 2000-02-08 The United States Of America As Represented By The Secretary Of The Interior Automated groundwater monitoring system and method
KR100272677B1 (en) 1998-02-02 2001-04-02 양 윤 종 Automatic lubricant supplying system with being centrally managed
US5987421A (en) 1998-02-05 1999-11-16 Morfun Systems, Inc. Computerized system and method for locating individual members of discrete groups and for electronically registering and holding the ' groups position in waiting lines
US6031455A (en) 1998-02-09 2000-02-29 Motorola, Inc. Method and apparatus for monitoring environmental conditions in a communication system
US5969608A (en) 1998-02-23 1999-10-19 The United States Of America As Represented By The Secretary Of The Navy Magneto-inductive seismic fence
US6219409B1 (en) 1998-02-27 2001-04-17 Sharegate, Inc. Premises gateway and premises network interfaces for accessing subscriber premises equipment and communication networks using ring suppression
US6157824A (en) 1998-03-02 2000-12-05 Bailey; Kenneth S. Virtual credit card access device for mobile communications equipment
US6922558B2 (en) 1998-03-06 2005-07-26 Don Delp Integrated building control and information system with wireless networking
US6067030A (en) 1998-03-13 2000-05-23 At&T Corp. Method and apparatus for providing network infrastructure information for a network control center
US7349682B1 (en) 1998-06-12 2008-03-25 Sbc Properties, L.P. Home gateway system for automation and security
US6005759A (en) 1998-03-16 1999-12-21 Abb Power T&D Company Inc. Method and system for monitoring and controlling an electrical distribution network
US6133850A (en) 1998-03-16 2000-10-17 Motorola, Inc. Method and apparatus for reducing channel capacity required to report a billable consumption of a utility commodity
US6100817A (en) 1998-03-17 2000-08-08 Abb Power T&D Company Inc. Fixed network RF communications complaint with CEBus protocol
US8631093B2 (en) 1998-03-19 2014-01-14 Crane Merchandising Systems, Inc. Remote data acquisition, transmission and analysis system including handheld wireless equipment
US7181501B2 (en) 1998-03-19 2007-02-20 Isochron, Inc. Remote data acquisition, transmission and analysis system including handheld wireless equipment
US6457038B1 (en) 1998-03-19 2002-09-24 Isochron Data Corporation Wide area network operation's center that sends and receives data from vending machines
US6618709B1 (en) 1998-04-03 2003-09-09 Enerwise Global Technologies, Inc. Computer assisted and/or implemented process and architecture for web-based monitoring of energy related usage, and client accessibility therefor
GB2336272A (en) 1998-04-08 1999-10-13 Smoothing Investment Limited Remote reading of utility meters
US6121885A (en) 1998-04-10 2000-09-19 Masone; Reagan Combination smoke detector and severe weather warning device
US6778099B1 (en) 1998-05-01 2004-08-17 Elster Electricity, Llc Wireless area network communications module for utility meters
JPH11353573A (en) 1998-06-10 1999-12-24 Ntt Electornics Corp Radio remote meter-reading system
US6028522A (en) 1998-10-14 2000-02-22 Statsignal Systems, Inc. System for monitoring the light level around an ATM
US6914533B2 (en) 1998-06-22 2005-07-05 Statsignal Ipc Llc System and method for accessing residential monitoring devices
US6914893B2 (en) 1998-06-22 2005-07-05 Statsignal Ipc, Llc System and method for monitoring and controlling remote devices
US6218953B1 (en) 1998-10-14 2001-04-17 Statsignal Systems, Inc. System and method for monitoring the light level around an ATM
US6891838B1 (en) 1998-06-22 2005-05-10 Statsignal Ipc, Llc System and method for monitoring and controlling residential devices
US6437692B1 (en) 1998-06-22 2002-08-20 Statsignal Systems, Inc. System and method for monitoring and controlling remote devices
US6363422B1 (en) 1998-06-24 2002-03-26 Robert R. Hunter Multi-capability facilities monitoring and control intranet for facilities management system
US6735437B2 (en) * 1998-06-26 2004-05-11 Hughes Electronics Corporation Communication system employing reuse of satellite spectrum for terrestrial communication
US6128551A (en) 1998-07-02 2000-10-03 Megatronics International Corp. Method and apparatus for management of automated fuel delivery system
US6229439B1 (en) 1998-07-22 2001-05-08 Pittway Corporation System and method of filtering
US6317029B1 (en) 1998-08-07 2001-11-13 Aeroastro, Llc In situ remote sensing
US6424931B1 (en) 1998-08-07 2002-07-23 Input/Output, Inc. Remote access and control of a seismic acquisition system
US6130622A (en) 1998-08-10 2000-10-10 Trw Inc. System and method for remote convenience function control having a rekey security feature
GB2340520B (en) 1998-08-15 2000-11-01 Schlumberger Ltd Data acquisition apparatus
US6208247B1 (en) 1998-08-18 2001-03-27 Rockwell Science Center, Llc Wireless integrated sensor network using multiple relayed communications
US6121593A (en) 1998-08-19 2000-09-19 Duck Creek Energy, Inc. Home appliances provided with control systems which may be actuated from a remote location
US6304556B1 (en) 1998-08-24 2001-10-16 Cornell Research Foundation, Inc. Routing and mobility management protocols for ad-hoc networks
US6141347A (en) 1998-08-26 2000-10-31 Motorola, Inc. Wireless communication system incorporating multicast addressing and method for use
US6177883B1 (en) 1998-09-02 2001-01-23 Schlumberger Resource Management Services, Inc. Utility meter transponder exposed ground level antenna assembly
US6414605B1 (en) 1998-09-02 2002-07-02 Schlumberger Resource Management Services, Inc. Utility meter pit lid mounted antenna assembly and method
US6115580A (en) 1998-09-08 2000-09-05 Motorola, Inc. Communications network having adaptive network link optimization using wireless terrain awareness and method for use therein
US6271752B1 (en) 1998-10-02 2001-08-07 Lucent Technologies, Inc. Intelligent multi-access system
JP2000113590A (en) 1998-10-08 2000-04-21 Pioneer Electronic Corp Information recording device
US6218958B1 (en) 1998-10-08 2001-04-17 International Business Machines Corporation Integrated touch-skin notification system for wearable computing devices
US20020013679A1 (en) 1998-10-14 2002-01-31 Petite Thomas D. System and method for monitoring the light level in a lighted area
US7103511B2 (en) 1998-10-14 2006-09-05 Statsignal Ipc, Llc Wireless communication networks for providing remote monitoring of devices
WO2000023956A1 (en) 1998-10-22 2000-04-27 University Of Maryland Method and system for providing location dependent and personal identification information to a public safety answering point
US6424270B1 (en) 1998-10-30 2002-07-23 Schlumberger Resource Management Services, Inc. Utility meter interface unit
EP0999717A2 (en) 1998-11-05 2000-05-10 Caly, Inc. Broadband wireless mesh topology network
US6462644B1 (en) 1998-11-19 2002-10-08 The Coca-Cola Company Network of vending machines connected interactively to data-base building host
US6356205B1 (en) 1998-11-30 2002-03-12 General Electric Monitoring, diagnostic, and reporting system and process
US6393341B1 (en) 1998-12-07 2002-05-21 Abb Automation Inc. Architecture neutral device abstraction layer for interfacing devices and applications
AUPP776498A0 (en) 1998-12-17 1999-01-21 Portus Pty Ltd Local and remote monitoring using a standard web browser
US6366622B1 (en) 1998-12-18 2002-04-02 Silicon Wave, Inc. Apparatus and method for wireless communications
US6515586B1 (en) 1998-12-18 2003-02-04 Intel Corporation Tactile tracking systems and methods
US6246886B1 (en) 1998-12-21 2001-06-12 Bell Atlantic Mobile System and methods for controlling access to digital wireless network in a dual mode wireless system
US6560223B1 (en) 1998-12-23 2003-05-06 Nortel Networks Limited Wireless multi-site networking using signaling and voice-over-IP
US6405018B1 (en) 1999-01-11 2002-06-11 Metawave Communications Corporation Indoor distributed microcell
US6584080B1 (en) 1999-01-14 2003-06-24 Aero-Vision Technologies, Inc. Wireless burstable communications repeater
US6275166B1 (en) 1999-01-19 2001-08-14 Architron Systems, Inc. RF remote appliance control/monitoring system
US6060994A (en) 1999-01-20 2000-05-09 Tempa Communication Inc. Method for controlling united home security system
US6906636B1 (en) 1999-01-21 2005-06-14 Lucent Technologies Inc. Using paging or satellite paging to trigger remote devices
US6985454B1 (en) * 1999-01-26 2006-01-10 Globalstar L.P. ISP system using non-geosynchronous orbit satellites
US6351223B1 (en) 1999-02-01 2002-02-26 Midway Services, Inc. System and method for reading and transmitting water meter data utilizing RF signals
US6392692B1 (en) 1999-02-25 2002-05-21 David A. Monroe Network communication techniques for security surveillance and safety system
US6747557B1 (en) 1999-03-18 2004-06-08 Statsignal Systems, Inc. System and method for signaling a weather alert condition to a residential environment
US6023223A (en) 1999-03-18 2000-02-08 Baxter, Jr.; John Francis Early warning detection and notification network for environmental conditions
US20040183687A1 (en) 1999-03-18 2004-09-23 Petite Thomas D. System and method for signaling a weather alert condition to a residential environment
US7263073B2 (en) 1999-03-18 2007-08-28 Statsignal Ipc, Llc Systems and methods for enabling a mobile user to notify an automated monitoring system of an emergency situation
US7650425B2 (en) 1999-03-18 2010-01-19 Sipco, Llc System and method for controlling communication between a host computer and communication devices associated with remote devices in an automated monitoring system
US6215404B1 (en) 1999-03-24 2001-04-10 Fernando Morales Network audio-link fire alarm monitoring system and method
US6188354B1 (en) 1999-03-29 2001-02-13 Qualcomm Incorporated Method and apparatus for determining the location of a remote station in a CDMA communication network
US6416471B1 (en) 1999-04-15 2002-07-09 Nexan Limited Portable remote patient telemonitoring system
US6234111B1 (en) 1999-04-29 2001-05-22 Research Diets, Inc. Animal feeder, feeder mount, feeder monitor, and feeder monitoring network
US6380851B1 (en) 1999-05-12 2002-04-30 Schlumberger Resource Management Services, Inc. Processing and presenting information received from a plurality of remote sensors
US6477558B1 (en) 1999-05-17 2002-11-05 Schlumberger Resource Management Systems, Inc. System for performing load management
US6163276A (en) 1999-05-17 2000-12-19 Cellnet Data Systems, Inc. System for remote data collection
GB9912559D0 (en) 1999-05-28 1999-07-28 Fusion Meters Ltd Meter reader
WO2000074402A1 (en) 1999-05-28 2000-12-07 Afx Technology Group International, Inc. Wireless transceiver network employing node-to-node data messaging
US6181284B1 (en) 1999-05-28 2001-01-30 3 Com Corporation Antenna for portable computers
US6174205B1 (en) 1999-05-28 2001-01-16 3Com Corporation Communication card extension and adapter port
US7027773B1 (en) 1999-05-28 2006-04-11 Afx Technology Group International, Inc. On/off keying node-to-node messaging transceiver network with dynamic routing and configuring
US6519568B1 (en) 1999-06-15 2003-02-11 Schlumberger Technology Corporation System and method for electronic data delivery
US6167239A (en) 1999-06-25 2000-12-26 Harris Corporation Wireless spread spectrum ground link-based aircraft data communication system with airborne airline packet communications
US6173159B1 (en) 1999-06-25 2001-01-09 Harris Corporation Wireless spread spectrum ground link-based aircraft data communication system for updating flight management files
US6691173B2 (en) 1999-07-06 2004-02-10 Widcomm, Inc. Distributed management of an extended network containing short-range wireless links
AU5996400A (en) 1999-07-10 2001-01-30 Donald George Mackenzie Tie
US6421354B1 (en) 1999-08-18 2002-07-16 Phoenix Datacomm, Inc. System and method for retrieval of data from remote sensors using multiple communication channels
JP2003507825A (en) 1999-08-24 2003-02-25 デジターム リミテッド An interactive system for remotely reading utility meters
JP2001063425A (en) 1999-08-26 2001-03-13 Ikeda Bussan Co Ltd Seat for vehicle
US6608551B1 (en) 1999-09-13 2003-08-19 Intermec Ip Corp Low-cost radio replacement utilizing RFID technology
US6288641B1 (en) 1999-09-15 2001-09-11 Nokia Corporation Assembly, and associated method, for remotely monitoring a surveillance area
JP2001088401A (en) 1999-09-27 2001-04-03 Canon Inc Machinery for mechanizing office work
US6600726B1 (en) 1999-09-29 2003-07-29 Mobilian Corporation Multiple wireless communication protocol methods and apparatuses
US6259369B1 (en) 1999-09-30 2001-07-10 Moore North America, Inc. Low cost long distance RFID reading
US6826607B1 (en) 1999-10-06 2004-11-30 Sensoria Corporation Apparatus for internetworked hybrid wireless integrated network sensors (WINS)
US6735630B1 (en) 1999-10-06 2004-05-11 Sensoria Corporation Method for collecting data using compact internetworked wireless integrated network sensors (WINS)
US6859831B1 (en) 1999-10-06 2005-02-22 Sensoria Corporation Method and apparatus for internetworked wireless integrated network sensor (WINS) nodes
US7020701B1 (en) 1999-10-06 2006-03-28 Sensoria Corporation Method for collecting and processing data using internetworked wireless integrated network sensors (WINS)
US6832251B1 (en) 1999-10-06 2004-12-14 Sensoria Corporation Method and apparatus for distributed signal processing among internetworked wireless integrated network sensors (WINS)
US7904569B1 (en) 1999-10-06 2011-03-08 Gelvin David C Method for remote access of vehicle components
US6275707B1 (en) 1999-10-08 2001-08-14 Motorola, Inc. Method and apparatus for assigning location estimates from a first transceiver to a second transceiver
EP1096454A2 (en) 1999-10-27 2001-05-02 TRW Inc. Automatic meter reading system
EP1232568A4 (en) 1999-11-15 2005-04-27 Interlogix Inc Highly reliable power line communications system
US6704293B1 (en) * 1999-12-06 2004-03-09 Telefonaktiebolaget Lm Ericsson (Publ) Broadcast as a triggering mechanism for route discovery in ad-hoc networks
ATE290283T1 (en) * 1999-12-06 2005-03-15 Ericsson Telefon Ab L M METHOD AND ARRANGEMENTS IN A TELECOMMUNICATIONS NETWORK
JP2001166758A (en) 1999-12-09 2001-06-22 Seiko Epson Corp Presentation support system and projector system
US6246676B1 (en) 1999-12-13 2001-06-12 Motorola, Inc. Method and apparatus for implementing PN masks for a truncated M-sequence
US6687583B1 (en) 1999-12-15 2004-02-03 Yacht Watchman International Vessel monitoring system
KR100364078B1 (en) 1999-12-21 2002-12-12 주식회사 블루맥스 커뮤니케이션 System and method for wireless automatic meter reading
US7379981B2 (en) * 2000-01-31 2008-05-27 Kenneth W. Garrard Wireless communication enabled meter and network
US6415018B1 (en) 2000-02-08 2002-07-02 Lucent Technologies Inc. Telecommunication system and method for handling special number calls having geographic sensitivity
US6731201B1 (en) 2000-02-23 2004-05-04 Robert Shaw Controls Company Communications module and system
US6369769B1 (en) 2000-02-25 2002-04-09 Innovatec Communications, Llc Flush mounted pit lid antenna
US6678285B1 (en) 2000-03-02 2004-01-13 Advanced Micro Devices, Inc. Network appliance with simplified network transmitter
US6775258B1 (en) 2000-03-17 2004-08-10 Nokia Corporation Apparatus, and associated method, for routing packet data in an ad hoc, wireless communication system
US6671819B1 (en) 2000-04-06 2003-12-30 Bbnt Solutions Llc System and methods routing packets on alterate paths
JP2001309069A (en) 2000-04-26 2001-11-02 Ricoh Elemex Corp Radio meter read system to be started by pager
JP3986236B2 (en) 2000-05-08 2007-10-03 愛知時計電機株式会社 Wireless meter reading system
US6438575B1 (en) 2000-06-07 2002-08-20 Clickmarks, Inc. System, method, and article of manufacture for wireless enablement of the world wide web using a wireless gateway
EP1303999B1 (en) 2000-06-07 2009-09-09 Tyco Electronics Logistics AG Method and system for monitoring and controlling working components
JP2001357483A (en) 2000-06-12 2001-12-26 Omron Corp Radio equipment and radio meter reading system
JP2002007826A (en) 2000-06-19 2002-01-11 Nec Corp System and method of reservation
JP2002007672A (en) 2000-06-23 2002-01-11 Nec Corp Method and system for operating cyber type club
ES2170684B1 (en) 2000-07-19 2003-11-01 Automated Meter Reading System SYSTEM FOR THE ACQUISITION AND AUTOMATIC TRANSPORT OF WATER, GAS AND ELECTRICITY METER READINGS.
US7283580B2 (en) 2000-07-21 2007-10-16 Itron, Inc. Spread spectrum meter reading system utilizing low-speed/high-power frequency hopping
US7117239B1 (en) 2000-07-28 2006-10-03 Axeda Corporation Reporting the state of an apparatus to a remote computer
US6944662B2 (en) 2000-08-04 2005-09-13 Vinestone Corporation System and methods providing automatic distributed data retrieval, analysis and reporting services
JP4615105B2 (en) 2000-09-07 2011-01-19 ジーイー・メディカル・システムズ・グローバル・テクノロジー・カンパニー・エルエルシー Ultrasound imaging device
US6411889B1 (en) 2000-09-08 2002-06-25 Mitsubishi Denki Kabushiki Kaisha Integrated traffic monitoring assistance, and communications system
US7000001B2 (en) 2000-09-12 2006-02-14 Research In Motion Limited Bookmark beacon system and method
EP1348271A4 (en) 2000-10-06 2006-05-10 Cognio Inc Systems and methods for interference mitigation among multiple wlan protocols
US20020031101A1 (en) 2000-11-01 2002-03-14 Petite Thomas D. System and methods for interconnecting remote devices in an automated monitoring system
US6491828B1 (en) 2000-11-07 2002-12-10 General Electric Company Method and system to remotely monitor groundwater treatment
US7031738B2 (en) 2001-01-19 2006-04-18 Raze Technologies, Inc. Apparatus for reallocating communication resources to establish a priority call in a fixed wireless access communication system
FR2817110B1 (en) 2000-11-17 2005-04-22 Cahors App Elec TELERELEVE DEVICE FOR MEASURING DEVICES
US6476725B2 (en) 2000-11-30 2002-11-05 Compaq Information Technologies Group, L.P. Visual meter for providing a long-term indication of dynamic parameters
US7058050B2 (en) * 2000-12-01 2006-06-06 Telefonaktiebolaget L M Ericsson (Publ) Flexible inter-network communication scheduling
JP2002171354A (en) 2000-12-01 2002-06-14 Toyo Keiki Co Ltd Radio equipment for automatic meter-reading system
US6543690B2 (en) 2000-12-04 2003-04-08 Schlumberger Malco, Inc. Method and apparatus for communicating with a host
GB0030204D0 (en) 2000-12-12 2001-01-24 Secr Defence Reduced noise semiconductor photodetector
US6678514B2 (en) 2000-12-13 2004-01-13 Motorola, Inc. Mobile personal security monitoring service
US6804532B1 (en) 2000-12-22 2004-10-12 Cisco Technology, Inc. System and method for re-routing communications based on wireless communication link quality
FR2818784A1 (en) 2000-12-22 2002-06-28 Schlumberger Ind Sa RADIO FREQUENCY RECEIVER FOR COUNTERLIGHT OF COUNTERS AND METHOD OF TELERELEVE OF COUNTERS COMPRISING SUCH A RECEIVER
US20030046377A1 (en) 2000-12-27 2003-03-06 Wolfgang Daum Method and apparatus for appliance service diagnostics
US6950625B2 (en) * 2001-02-12 2005-09-27 Ico Services Limited Communications apparatus and method
US7233602B2 (en) 2001-03-22 2007-06-19 Oxford Semiconductor, Inc. Coordination architecture for wireless communication devices using multiple protocols
DE60229370D1 (en) 2001-03-30 2008-11-27 M & Fc Holding Llc IMPROVED WIRELESS PACKAGE DATA COMMUNICATION SYSTEM, METHOD AND APPARATUS WITH APPLICABILITY BOTH ON LARGE-NETWORK NETWORKS AND LOCAL NETWORKS
US6509722B2 (en) 2001-05-01 2003-01-21 Agere Systems Inc. Dynamic input stage biasing for low quiescent current amplifiers
EP1393022B1 (en) 2001-05-02 2011-04-06 Invensys Metering Systems/North America Inc. Add-on module for utility meters
AR033319A1 (en) 2001-05-04 2003-12-10 Invensys Metering Systems Nort PROVISION AND METHOD FOR COMMUNICATION AND CONTROL OF AUTOMATED METER READING
US20020169643A1 (en) 2001-05-11 2002-11-14 Statsignal Systems, Inc. System and method for remotely processing reservations
GB0111788D0 (en) 2001-05-15 2001-07-04 Rolls Royce Plc A combustion chamber
US7587017B2 (en) * 2001-05-17 2009-09-08 Ut-Battelle, Llc Carrier phase synchronization system for improved amplitude modulation and television broadcast reception
US7272121B2 (en) 2001-06-19 2007-09-18 Telcordia Technologies, Inc. Methods and apparatus for a modular wireless system
DE10133367C2 (en) 2001-07-10 2003-10-23 Horst Ziegler Consumer meter with a radio transmitter for radio transmission of meter reading information
US20030028632A1 (en) 2001-08-02 2003-02-06 Davis Thomas G. System and method of multicasting data messages
WO2004014056A1 (en) 2001-08-04 2004-02-12 Enikia Llc Power line communication system
US6671586B2 (en) 2001-08-15 2003-12-30 Statsignal Systems, Inc. System and method for controlling power demand over an integrated wireless network
NO314680B1 (en) 2001-08-16 2003-04-28 Wireless Reading Systems Asa Communication unit and meter reading unit with dynamic geographical routing
JP2005525003A (en) 2001-09-05 2005-08-18 ニューベリイ ネットワークス,インコーポレーテッド Location detection and location tracking in wireless networks
US7233781B2 (en) 2001-10-10 2007-06-19 Ochoa Optics Llc System and method for emergency notification content delivery
US7283904B2 (en) 2001-10-17 2007-10-16 Airbiquity, Inc. Multi-sensor fusion
US7480501B2 (en) 2001-10-24 2009-01-20 Statsignal Ipc, Llc System and method for transmitting an emergency message over an integrated wireless network
US7424527B2 (en) 2001-10-30 2008-09-09 Sipco, Llc System and method for transmitting pollution information over an integrated wireless network
US6888876B1 (en) 2001-12-21 2005-05-03 Elster Electricity, Llc Frequency hopping spread spectrum communications system
US20030134635A1 (en) * 2002-01-11 2003-07-17 Lane Daniel R. Intermediate frequency transponded payload implementation
US7301925B2 (en) 2002-03-08 2007-11-27 At Road, Inc. Combined LAN and WAN system for mobile resource management
AU2003218442A1 (en) 2002-04-01 2003-10-20 Scott D. Murdock Data communication system combining pay telephone and wireless access technologies
AU2003239577A1 (en) 2002-06-21 2004-01-06 Qualcomm Incorporated Wireless local area network repeater
US7474874B2 (en) * 2002-06-28 2009-01-06 Nokia Corporation Local browsing
US20040113810A1 (en) 2002-06-28 2004-06-17 Mason Robert T. Data collector for an automated meter reading system
US7408907B2 (en) 2002-09-11 2008-08-05 Cisco Technology, Inc. System and method for management of a shared frequency band using client-specific management techniques
AU2003288909A1 (en) 2002-09-20 2004-04-08 Racom Products, Inc. Method for wireless data system distribution and disseminating information for use with web base location information
US20040156318A1 (en) * 2002-12-23 2004-08-12 Johan Rune Bridging between a Bluetooth scatternet and an Ethernet LAN
TWI239165B (en) * 2002-12-27 2005-09-01 Ind Tech Res Inst Bluetooth network structure and method of processing the same
US20040133917A1 (en) 2003-01-07 2004-07-08 Schilling Donald L. Video on demand using MCMD and TDM or FDM
US7304587B2 (en) 2003-02-14 2007-12-04 Energy Technology Group, Inc. Automated meter reading system, communication and control network for automated meter reading, meter data collector program product, and associated methods
US7016688B2 (en) * 2003-02-24 2006-03-21 Qualcomm, Incorporated Forward link repeater delay watermarking system
US7194711B2 (en) 2004-01-28 2007-03-20 Gradient Design Automation Inc. Method and apparatus for full-chip thermal analysis of semiconductor chip designs
US8031650B2 (en) 2004-03-03 2011-10-04 Sipco, Llc System and method for monitoring remote devices with a dual-mode wireless communication protocol
US7756086B2 (en) 2004-03-03 2010-07-13 Sipco, Llc Method for communicating in dual-modes
JP4810437B2 (en) * 2004-12-21 2011-11-09 パナソニック株式会社 Wireless node power management method
WO2006081206A1 (en) 2005-01-25 2006-08-03 Sipco, Llc Wireless network protocol systems and methods
US7289062B2 (en) * 2005-02-15 2007-10-30 Wildblue Communications, Inc. Method and device for accurately pointing a satellite earth station antenna
US7667643B2 (en) * 2005-11-02 2010-02-23 Comtech Mobile Datacom Corporation Miniaturized satellite transceiver
US8169955B2 (en) * 2006-06-19 2012-05-01 Atc Technologies, Llc Systems and methods for orthogonal frequency division multiple access (OFDMA) communications over satellite links
EP1950893A1 (en) * 2007-01-24 2008-07-30 Siemens Aktiengesellschaft Method and system for allocating bandwidth
US8031646B2 (en) * 2007-05-15 2011-10-04 Atc Technologies, Llc Systems, methods and devices for reusing spectrum of another operator
DE102011113148B4 (en) * 2011-09-14 2017-03-09 Tesat-Spacecom Gmbh & Co.Kg System for communication between two communication platforms and associated objects

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040142658A1 (en) * 1992-03-06 2004-07-22 Mckenna Daniel Bernard System for integrating an airborne wireless cellular network with terrestrial wireless cellular networks and the public switched telephone network
US6850497B1 (en) * 1995-09-19 2005-02-01 Mobile Satellite Ventures, Lp Satellite trunked radio service system
US6411806B1 (en) * 1995-11-30 2002-06-25 Mobile Satellite Ventures Lp Virtual network configuration and management system for satellite communications system
US20020087992A1 (en) * 2000-08-16 2002-07-04 Bengeult Greg A. Method and apparatus for bi-directional data services and live television programming to mobile platforms
US20020058477A1 (en) * 2000-09-28 2002-05-16 Chapelle Michael De La Return link design for PSD limited mobile satellite communication systems
US20020058478A1 (en) * 2000-09-28 2002-05-16 De La Chapelle Michael Return link design for PSD limited mobile satellite communication systems
US20080240029A1 (en) * 2007-03-30 2008-10-02 Livetv, Llc Aircraft communications system selectively allocating data communications channel capacity and associated methods
US20090100476A1 (en) * 2007-10-16 2009-04-16 Frisco Jeffrey A Aircraft in-flight entertainment system having a dual-beam antenna and associated methods
US20090096857A1 (en) * 2007-10-16 2009-04-16 Frisco Jeffrey A Aircraft in-flight entertainment system having a multi-beam phased array antenna and associated methods
US20090282469A1 (en) * 2008-05-07 2009-11-12 Michael Lynch Aircraft communications system using whitelists to control access and associated methods
US20100064327A1 (en) * 2008-09-11 2010-03-11 Lynch Michael J Aircraft communications system with video file library and associated methods
US20100189089A1 (en) * 2009-01-23 2010-07-29 Livetv, Llc Communications interface device for personal electronic devices (peds) operating on a general aviation aircraft and associated methods
US20140274367A1 (en) * 2013-03-15 2014-09-18 Nguyen Gaming Llc Authentication of mobile servers

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113411860A (en) * 2016-06-22 2021-09-17 华为技术有限公司 Communication path changing method and device
CN110401923A (en) * 2019-04-19 2019-11-01 广州天链通信科技有限公司 A kind of method and VSAT terminal of VSAT terminal bridge and routing mode support simultaneously

Also Published As

Publication number Publication date
US20120236748A1 (en) 2012-09-20
US20100039984A1 (en) 2010-02-18
US8982856B2 (en) 2015-03-17
US8787246B2 (en) 2014-07-22
US20140334378A1 (en) 2014-11-13

Similar Documents

Publication Publication Date Title
US8787246B2 (en) Systems and methods for facilitating wireless network communication, satellite-based wireless network systems, and aircraft-based wireless network systems, and related methods
US8000314B2 (en) Wireless network system and method for providing same
US6249516B1 (en) Wireless network gateway and method for providing same
CN112106404B (en) Method and system for routing data through an IAB node in a 5G communication network
Hu et al. Satellite-based internet: a tutorial
EP3782337B1 (en) Maintaining and distributing state due to temporary failures in a shared bandwidth network
RU2316130C2 (en) Method and system for transmission of ip-packets by combining several radio communication channels for high speed data transmission
US20110149849A1 (en) Wireless black box communication systems and methods
US20070072604A1 (en) Method and system for a wireless multi-hop relay network
CN116916458A (en) Information transmission method and device
Henderson Networking over next-generation satellite systems
US20060245424A1 (en) Ultra-low latency packet transport in ad hoc networks
EP1616449A1 (en) Radio network assignment and access system
JP4704652B2 (en) Self-organizing network with decision engine
Chotikapong et al. Evaluation of TCP and Internet traffic via low Earth orbit satellites
Tian et al. Self-organising LEO small satellite constellation for 5G MTC and IoT applications
Zhang Internetworking and computing over satellite networks
Iapichino et al. Advanced hybrid satellite and terrestrial system architecture for emergency mobile communications
He et al. Towards Reliable Space-Ground Integrated Networks: From System-Level Design to Implementation
Hadjitheodosiou et al. Extending ip services to future space missions
Hadjitheodosiou et al. Communication support for future earth science space missions
Madni Routing in CubeSat Networks: Protocols, Architectures and Standards
Guerber et al. Air‐Ground Data Link Communications in Air Transport
Hadjitheodosiou et al. A case study on optimizing communications for constellation space missions
CN114884556A (en) Ground communication method based on satellite network

Legal Events

Date Code Title Description
AS Assignment

Owner name: IPCO, LLC, GEORGIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BROWNRIGG, EDWIN B.;REEL/FRAME:036434/0809

Effective date: 20130822

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: ROBBINS GELLER RUDMAN & DOWD LLP, CALIFORNIA

Free format text: SECURITY INTEREST;ASSIGNOR:IP CO., LLC;REEL/FRAME:051046/0698

Effective date: 20191114

AS Assignment

Owner name: IP CO., LLC, GEORGIA

Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:ROBBINS GELLER RUDMAN & DOWD LLP;REEL/FRAME:053411/0957

Effective date: 20200728